From 86ae1271a4f13e5e8e64c5f06ec0e694cf2dd34b Mon Sep 17 00:00:00 2001 From: crschnick Date: Tue, 26 Mar 2024 19:38:24 +0000 Subject: [PATCH] Rework image handling for browser --- .../io/xpipe/app/browser/BrowserComp.java | 10 ++-- .../io/xpipe/app/browser/BrowserEntry.java | 16 ++--- .../app/browser/BrowserFileListComp.java | 12 ++-- .../io/xpipe/app/browser/BrowserNavBar.java | 7 +-- .../app/browser/BrowserSelectionListComp.java | 2 +- .../xpipe/app/browser/BrowserWelcomeComp.java | 3 +- ...ype.java => BrowserIconDirectoryType.java} | 10 ++-- ...FileType.java => BrowserIconFileType.java} | 10 ++-- .../xpipe/app/browser/icon/BrowserIcons.java | 10 ++-- .../app/browser/icon/FileIconManager.java | 4 +- .../io/xpipe/app/comp/base/OsLogoComp.java | 4 +- .../app/comp/store/StoreCreationMenu.java | 2 +- .../xpipe/app/comp/store/StoreIntroComp.java | 4 +- .../store/StoreQuickAccessButtonComp.java | 8 +-- .../app/comp/store/StoreSectionMiniComp.java | 4 +- .../app/fxcomps/impl/DataStoreChoiceComp.java | 10 ++-- .../fxcomps/impl/DataStoreListChoiceComp.java | 4 +- .../app/fxcomps/impl/PrettyImageComp.java | 13 ++-- .../app/fxcomps/impl/PrettyImageHelper.java | 28 ++++----- .../java/io/xpipe/app/util/JfxHelper.java | 2 +- .../browser_icons/default_file-24.png | Bin 0 -> 305 bytes .../browser_icons/default_folder-24.png | Bin 0 -> 312 bytes .../default_folder_opened-24.png | Bin 0 -> 450 bytes .../browser_icons/default_root_folder-24.png | Bin 0 -> 626 bytes .../default_root_folder_opened-24.png | Bin 0 -> 714 bytes .../browser_icons/file_type_access-24.png | Bin 0 -> 886 bytes .../browser_icons/file_type_access2-24.png | Bin 0 -> 958 bytes .../file_type_actionscript-24.png | Bin 0 -> 931 bytes .../file_type_actionscript2-24.png | Bin 0 -> 838 bytes .../browser_icons/file_type_ada-24.png | Bin 0 -> 967 bytes .../browser_icons/file_type_advpl-24.png | Bin 0 -> 989 bytes .../file_type_affectscript-24.png | Bin 0 -> 581 bytes .../file_type_affinitydesigner-24.png | Bin 0 -> 1041 bytes .../file_type_affinityphoto-24.png | Bin 0 -> 1086 bytes .../file_type_affinitypublisher-24.png | Bin 0 -> 1062 bytes .../browser_icons/file_type_ai-24.png | Bin 0 -> 577 bytes .../browser_icons/file_type_ai2-24.png | Bin 0 -> 706 bytes .../browser_icons/file_type_al-24.png | Bin 0 -> 572 bytes .../browser_icons/file_type_al_dal-24.png | Bin 0 -> 556 bytes .../file_type_allcontributors-24.png | Bin 0 -> 1055 bytes .../browser_icons/file_type_angular-24.png | Bin 0 -> 905 bytes .../browser_icons/file_type_ansible-24.png | Bin 0 -> 710 bytes .../browser_icons/file_type_antlr-24.png | Bin 0 -> 1017 bytes .../browser_icons/file_type_anyscript-24.png | Bin 0 -> 706 bytes .../browser_icons/file_type_apache-24.png | Bin 0 -> 626 bytes .../browser_icons/file_type_apex-24.png | Bin 0 -> 793 bytes .../file_type_api_extractor-24.png | Bin 0 -> 1114 bytes .../browser_icons/file_type_apib-24.png | Bin 0 -> 866 bytes .../browser_icons/file_type_apib2-24.png | Bin 0 -> 802 bytes .../browser_icons/file_type_apl-24.png | Bin 0 -> 669 bytes .../file_type_applescript-24.png | Bin 0 -> 644 bytes .../browser_icons/file_type_appscript-24.png | Bin 0 -> 990 bytes .../browser_icons/file_type_appsemble-24.png | Bin 0 -> 498 bytes .../browser_icons/file_type_appveyor-24.png | Bin 0 -> 1000 bytes .../browser_icons/file_type_arduino-24.png | Bin 0 -> 1437 bytes .../browser_icons/file_type_asciidoc-24.png | Bin 0 -> 571 bytes .../browser_icons/file_type_asp-24.png | Bin 0 -> 689 bytes .../browser_icons/file_type_aspx-24.png | Bin 0 -> 1181 bytes .../browser_icons/file_type_assembly-24.png | Bin 0 -> 758 bytes .../browser_icons/file_type_astro-24.png | Bin 0 -> 726 bytes .../file_type_astroconfig-24.png | Bin 0 -> 957 bytes .../browser_icons/file_type_ats-24.png | Bin 0 -> 929 bytes .../browser_icons/file_type_audio-24.png | Bin 0 -> 557 bytes .../browser_icons/file_type_aurelia-24.png | Bin 0 -> 1316 bytes .../browser_icons/file_type_autohotkey-24.png | Bin 0 -> 706 bytes .../browser_icons/file_type_autoit-24.png | Bin 0 -> 1098 bytes .../browser_icons/file_type_avif-24.png | Bin 0 -> 608 bytes .../browser_icons/file_type_avro-24.png | Bin 0 -> 467 bytes .../browser_icons/file_type_awk-24.png | Bin 0 -> 707 bytes .../browser_icons/file_type_aws-24.png | Bin 0 -> 807 bytes .../browser_icons/file_type_azure-24.png | Bin 0 -> 889 bytes .../file_type_azurepipelines-24.png | Bin 0 -> 1011 bytes .../browser_icons/file_type_babel-24.png | Bin 0 -> 653 bytes .../browser_icons/file_type_babel2-24.png | Bin 0 -> 891 bytes .../browser_icons/file_type_ballerina-24.png | Bin 0 -> 606 bytes .../browser_icons/file_type_bat-24.png | Bin 0 -> 1177 bytes .../browser_icons/file_type_bats-24.png | Bin 0 -> 900 bytes .../browser_icons/file_type_bazaar-24.png | Bin 0 -> 1083 bytes .../browser_icons/file_type_bazel-24.png | Bin 0 -> 694 bytes .../file_type_bazel_ignore-24.png | Bin 0 -> 742 bytes .../file_type_bazel_version-24.png | Bin 0 -> 737 bytes .../browser_icons/file_type_befunge-24.png | Bin 0 -> 987 bytes .../browser_icons/file_type_bicep-24.png | Bin 0 -> 763 bytes .../browser_icons/file_type_biml-24.png | Bin 0 -> 774 bytes .../browser_icons/file_type_binary-24.png | Bin 0 -> 771 bytes .../file_type_bitbucketpipeline-24.png | Bin 0 -> 640 bytes .../browser_icons/file_type_bithound-24.png | Bin 0 -> 850 bytes .../browser_icons/file_type_blade-24.png | Bin 0 -> 1031 bytes .../browser_icons/file_type_blitzbasic-24.png | Bin 0 -> 366 bytes .../browser_icons/file_type_bolt-24.png | Bin 0 -> 430 bytes .../browser_icons/file_type_bosque-24.png | Bin 0 -> 621 bytes .../browser_icons/file_type_bower-24.png | Bin 0 -> 1141 bytes .../browser_icons/file_type_bower2-24.png | Bin 0 -> 1069 bytes .../file_type_browserslist-24.png | Bin 0 -> 1006 bytes .../browser_icons/file_type_buckbuild-24.png | Bin 0 -> 918 bytes .../browser_icons/file_type_bun-24.png | Bin 0 -> 1007 bytes .../browser_icons/file_type_bundler-24.png | Bin 0 -> 1320 bytes .../browser_icons/file_type_bunfig-24.png | Bin 0 -> 1142 bytes .../browser_icons/file_type_c-24.png | Bin 0 -> 677 bytes .../browser_icons/file_type_c2-24.png | Bin 0 -> 712 bytes .../browser_icons/file_type_c3-24.png | Bin 0 -> 1002 bytes .../browser_icons/file_type_c_al-24.png | Bin 0 -> 790 bytes .../browser_icons/file_type_cabal-24.png | Bin 0 -> 920 bytes .../browser_icons/file_type_caddy-24.png | Bin 0 -> 1101 bytes .../browser_icons/file_type_cake-24.png | Bin 0 -> 1091 bytes .../browser_icons/file_type_cakephp-24.png | Bin 0 -> 816 bytes .../browser_icons/file_type_capacitor-24.png | Bin 0 -> 861 bytes .../browser_icons/file_type_cargo-24.png | Bin 0 -> 1271 bytes .../browser_icons/file_type_casc-24.png | Bin 0 -> 1144 bytes .../browser_icons/file_type_cddl-24.png | Bin 0 -> 860 bytes .../browser_icons/file_type_cert-24.png | Bin 0 -> 876 bytes .../browser_icons/file_type_ceylon-24.png | Bin 0 -> 693 bytes .../browser_icons/file_type_cf-24.png | Bin 0 -> 603 bytes .../browser_icons/file_type_cf2-24.png | Bin 0 -> 794 bytes .../browser_icons/file_type_cfc-24.png | Bin 0 -> 1127 bytes .../browser_icons/file_type_cfc2-24.png | Bin 0 -> 884 bytes .../browser_icons/file_type_cfm-24.png | Bin 0 -> 1043 bytes .../browser_icons/file_type_cfm2-24.png | Bin 0 -> 908 bytes .../browser_icons/file_type_cheader-24.png | Bin 0 -> 389 bytes .../browser_icons/file_type_chef-24.png | Bin 0 -> 1380 bytes .../file_type_chef_cookbook-24.png | Bin 0 -> 979 bytes .../browser_icons/file_type_circleci-24.png | Bin 0 -> 890 bytes .../browser_icons/file_type_class-24.png | Bin 0 -> 763 bytes .../browser_icons/file_type_clojure-24.png | Bin 0 -> 1162 bytes .../file_type_clojurescript-24.png | Bin 0 -> 1069 bytes .../file_type_cloudfoundry-24.png | Bin 0 -> 986 bytes .../browser_icons/file_type_cmake-24.png | Bin 0 -> 965 bytes .../browser_icons/file_type_cobol-24.png | Bin 0 -> 675 bytes .../browser_icons/file_type_codacy-24.png | Bin 0 -> 829 bytes .../file_type_codeclimate-24.png | Bin 0 -> 727 bytes .../browser_icons/file_type_codecov-24.png | Bin 0 -> 822 bytes .../browser_icons/file_type_codekit-24.png | Bin 0 -> 603 bytes .../browser_icons/file_type_codeowners-24.png | Bin 0 -> 844 bytes .../browser_icons/file_type_codeql-24.png | Bin 0 -> 579 bytes .../browser_icons/file_type_coffeelint-24.png | Bin 0 -> 892 bytes .../file_type_coffeescript-24.png | Bin 0 -> 900 bytes .../browser_icons/file_type_commitizen-24.png | Bin 0 -> 948 bytes .../browser_icons/file_type_commitlint-24.png | Bin 0 -> 458 bytes .../browser_icons/file_type_compass-24.png | Bin 0 -> 886 bytes .../browser_icons/file_type_composer-24.png | Bin 0 -> 1459 bytes .../browser_icons/file_type_conan-24.png | Bin 0 -> 916 bytes .../browser_icons/file_type_conda-24.png | Bin 0 -> 1101 bytes .../browser_icons/file_type_config-24.png | Bin 0 -> 794 bytes .../browser_icons/file_type_confluence-24.png | Bin 0 -> 936 bytes .../browser_icons/file_type_coveralls-24.png | Bin 0 -> 791 bytes .../browser_icons/file_type_cpp-24.png | Bin 0 -> 665 bytes .../browser_icons/file_type_cpp2-24.png | Bin 0 -> 707 bytes .../browser_icons/file_type_cpp3-24.png | Bin 0 -> 1095 bytes .../browser_icons/file_type_cppheader-24.png | Bin 0 -> 551 bytes .../browser_icons/file_type_crowdin-24.png | Bin 0 -> 1082 bytes .../browser_icons/file_type_crystal-24.png | Bin 0 -> 687 bytes .../browser_icons/file_type_csharp-24.png | Bin 0 -> 748 bytes .../browser_icons/file_type_csharp2-24.png | Bin 0 -> 1112 bytes .../browser_icons/file_type_cspell-24.png | Bin 0 -> 444 bytes .../browser_icons/file_type_csproj-24.png | Bin 0 -> 1282 bytes .../browser_icons/file_type_css-24.png | Bin 0 -> 908 bytes .../browser_icons/file_type_csscomb-24.png | Bin 0 -> 891 bytes .../browser_icons/file_type_csslint-24.png | Bin 0 -> 1058 bytes .../browser_icons/file_type_cssmap-24.png | Bin 0 -> 1362 bytes .../browser_icons/file_type_cucumber-24.png | Bin 0 -> 1124 bytes .../browser_icons/file_type_cuda-24.png | Bin 0 -> 700 bytes .../browser_icons/file_type_cvs-24.png | Bin 0 -> 551 bytes .../browser_icons/file_type_cypress-24.png | Bin 0 -> 1312 bytes .../file_type_cypress_spec-24.png | Bin 0 -> 1204 bytes .../browser_icons/file_type_cython-24.png | Bin 0 -> 1072 bytes .../browser_icons/file_type_dal-24.png | Bin 0 -> 728 bytes .../browser_icons/file_type_darcs-24.png | Bin 0 -> 939 bytes .../browser_icons/file_type_dartlang-24.png | Bin 0 -> 779 bytes .../file_type_dartlang_generated-24.png | Bin 0 -> 751 bytes .../file_type_dartlang_ignore-24.png | Bin 0 -> 804 bytes .../browser_icons/file_type_datadog-24.png | Bin 0 -> 1285 bytes .../browser_icons/file_type_db-24.png | Bin 0 -> 937 bytes .../browser_icons/file_type_delphi-24.png | Bin 0 -> 1390 bytes .../browser_icons/file_type_deno-24.png | Bin 0 -> 1234 bytes .../browser_icons/file_type_dependabot-24.png | Bin 0 -> 749 bytes .../file_type_dependencies-24.png | Bin 0 -> 691 bytes .../file_type_devcontainer-24.png | Bin 0 -> 854 bytes .../browser_icons/file_type_dhall-24.png | Bin 0 -> 775 bytes .../browser_icons/file_type_diff-24.png | Bin 0 -> 331 bytes .../browser_icons/file_type_django-24.png | Bin 0 -> 595 bytes .../browser_icons/file_type_dlang-24.png | Bin 0 -> 1006 bytes .../browser_icons/file_type_docker-24.png | Bin 0 -> 807 bytes .../browser_icons/file_type_docker2-24.png | Bin 0 -> 682 bytes .../browser_icons/file_type_dockertest-24.png | Bin 0 -> 807 bytes .../file_type_dockertest2-24.png | Bin 0 -> 631 bytes .../browser_icons/file_type_docpad-24.png | Bin 0 -> 508 bytes .../browser_icons/file_type_docz-24.png | Bin 0 -> 820 bytes .../browser_icons/file_type_dojo-24.png | Bin 0 -> 961 bytes .../browser_icons/file_type_doppler-24.png | Bin 0 -> 863 bytes .../browser_icons/file_type_dotjs-24.png | Bin 0 -> 1124 bytes .../browser_icons/file_type_doxygen-24.png | Bin 0 -> 907 bytes .../browser_icons/file_type_drawio-24.png | Bin 0 -> 684 bytes .../browser_icons/file_type_drone-24.png | Bin 0 -> 741 bytes .../browser_icons/file_type_drools-24.png | Bin 0 -> 763 bytes .../browser_icons/file_type_dustjs-24.png | Bin 0 -> 1163 bytes .../browser_icons/file_type_dvc-24.png | Bin 0 -> 725 bytes .../browser_icons/file_type_dylan-24.png | Bin 0 -> 1119 bytes .../browser_icons/file_type_earthly-24.png | Bin 0 -> 905 bytes .../file_type_eas-metadata-24.png | Bin 0 -> 713 bytes .../browser_icons/file_type_edge-24.png | Bin 0 -> 414 bytes .../browser_icons/file_type_edge2-24.png | Bin 0 -> 441 bytes .../file_type_editorconfig-24.png | Bin 0 -> 1088 bytes .../browser_icons/file_type_eex-24.png | Bin 0 -> 805 bytes .../browser_icons/file_type_ejs-24.png | Bin 0 -> 828 bytes .../browser_icons/file_type_elastic-24.png | Bin 0 -> 917 bytes .../file_type_elasticbeanstalk-24.png | Bin 0 -> 596 bytes .../browser_icons/file_type_eleventy-24.png | Bin 0 -> 629 bytes .../browser_icons/file_type_eleventy2-24.png | Bin 0 -> 470 bytes .../browser_icons/file_type_elixir-24.png | Bin 0 -> 817 bytes .../browser_icons/file_type_elm-24.png | Bin 0 -> 702 bytes .../browser_icons/file_type_elm2-24.png | Bin 0 -> 580 bytes .../browser_icons/file_type_emacs-24.png | Bin 0 -> 1365 bytes .../browser_icons/file_type_ember-24.png | Bin 0 -> 1369 bytes .../browser_icons/file_type_ensime-24.png | Bin 0 -> 951 bytes .../browser_icons/file_type_eps-24.png | Bin 0 -> 841 bytes .../browser_icons/file_type_erb-24.png | Bin 0 -> 494 bytes .../browser_icons/file_type_erlang-24.png | Bin 0 -> 514 bytes .../browser_icons/file_type_erlang2-24.png | Bin 0 -> 620 bytes .../browser_icons/file_type_esbuild-24.png | Bin 0 -> 837 bytes .../browser_icons/file_type_eslint-24.png | Bin 0 -> 809 bytes .../browser_icons/file_type_eslint2-24.png | Bin 0 -> 1007 bytes .../browser_icons/file_type_esphome-24.png | Bin 0 -> 802 bytes .../browser_icons/file_type_excel-24.png | Bin 0 -> 751 bytes .../browser_icons/file_type_excel2-24.png | Bin 0 -> 936 bytes .../browser_icons/file_type_expo-24.png | Bin 0 -> 1053 bytes .../browser_icons/file_type_falcon-24.png | Bin 0 -> 898 bytes .../file_type_fantasticon-24.png | Bin 0 -> 650 bytes .../browser_icons/file_type_fauna-24.png | Bin 0 -> 696 bytes .../browser_icons/file_type_favicon-24.png | Bin 0 -> 715 bytes .../browser_icons/file_type_fbx-24.png | Bin 0 -> 711 bytes .../browser_icons/file_type_firebase-24.png | Bin 0 -> 752 bytes .../file_type_firebasehosting-24.png | Bin 0 -> 893 bytes .../browser_icons/file_type_firestore-24.png | Bin 0 -> 1176 bytes .../browser_icons/file_type_fitbit-24.png | Bin 0 -> 832 bytes .../browser_icons/file_type_fla-24.png | Bin 0 -> 806 bytes .../browser_icons/file_type_flareact-24.png | Bin 0 -> 765 bytes .../browser_icons/file_type_flash-24.png | Bin 0 -> 661 bytes .../browser_icons/file_type_floobits-24.png | Bin 0 -> 639 bytes .../browser_icons/file_type_flow-24.png | Bin 0 -> 962 bytes .../browser_icons/file_type_flutter-24.png | Bin 0 -> 668 bytes .../file_type_flutter_package-24.png | Bin 0 -> 1057 bytes .../browser_icons/file_type_font-24.png | Bin 0 -> 717 bytes .../browser_icons/file_type_formkit-24.png | Bin 0 -> 542 bytes .../browser_icons/file_type_fortran-24.png | Bin 0 -> 776 bytes .../browser_icons/file_type_fossa-24.png | Bin 0 -> 953 bytes .../browser_icons/file_type_fossil-24.png | Bin 0 -> 804 bytes .../browser_icons/file_type_freemarker-24.png | Bin 0 -> 736 bytes .../browser_icons/file_type_fsharp-24.png | Bin 0 -> 641 bytes .../browser_icons/file_type_fsharp2-24.png | Bin 0 -> 600 bytes .../browser_icons/file_type_fsproj-24.png | Bin 0 -> 1103 bytes .../browser_icons/file_type_fthtml-24.png | Bin 0 -> 522 bytes .../browser_icons/file_type_funding-24.png | Bin 0 -> 883 bytes .../browser_icons/file_type_fusebox-24.png | Bin 0 -> 1408 bytes .../browser_icons/file_type_galen-24.png | Bin 0 -> 759 bytes .../browser_icons/file_type_galen2-24.png | Bin 0 -> 974 bytes .../browser_icons/file_type_gamemaker-24.png | Bin 0 -> 740 bytes .../browser_icons/file_type_gamemaker2-24.png | Bin 0 -> 489 bytes .../file_type_gamemaker81-24.png | Bin 0 -> 1440 bytes .../browser_icons/file_type_gatsby-24.png | Bin 0 -> 1219 bytes .../browser_icons/file_type_gcloud-24.png | Bin 0 -> 853 bytes .../browser_icons/file_type_gcode-24.png | Bin 0 -> 856 bytes .../browser_icons/file_type_gdscript-24.png | Bin 0 -> 944 bytes .../browser_icons/file_type_genstat-24.png | Bin 0 -> 683 bytes .../browser_icons/file_type_git-24.png | Bin 0 -> 727 bytes .../browser_icons/file_type_git2-24.png | Bin 0 -> 669 bytes .../browser_icons/file_type_gitlab-24.png | Bin 0 -> 822 bytes .../browser_icons/file_type_gitpod-24.png | Bin 0 -> 936 bytes .../browser_icons/file_type_glide-24.png | Bin 0 -> 722 bytes .../browser_icons/file_type_glitter-24.png | Bin 0 -> 1195 bytes .../browser_icons/file_type_glsl-24.png | Bin 0 -> 689 bytes .../browser_icons/file_type_glyphs-24.png | Bin 0 -> 864 bytes .../browser_icons/file_type_gnu-24.png | Bin 0 -> 1464 bytes .../browser_icons/file_type_gnuplot-24.png | Bin 0 -> 1057 bytes .../browser_icons/file_type_go-24.png | Bin 0 -> 808 bytes .../browser_icons/file_type_go_aqua-24.png | Bin 0 -> 903 bytes .../browser_icons/file_type_go_black-24.png | Bin 0 -> 564 bytes .../browser_icons/file_type_go_fuchsia-24.png | Bin 0 -> 901 bytes .../browser_icons/file_type_go_gopher-24.png | Bin 0 -> 924 bytes .../file_type_go_lightblue-24.png | Bin 0 -> 887 bytes .../browser_icons/file_type_go_package-24.png | Bin 0 -> 977 bytes .../browser_icons/file_type_go_white-24.png | Bin 0 -> 579 bytes .../browser_icons/file_type_go_work-24.png | Bin 0 -> 779 bytes .../browser_icons/file_type_go_yellow-24.png | Bin 0 -> 779 bytes .../browser_icons/file_type_goctl-24.png | Bin 0 -> 1172 bytes .../browser_icons/file_type_godot-24.png | Bin 0 -> 935 bytes .../browser_icons/file_type_gradle-24.png | Bin 0 -> 809 bytes .../browser_icons/file_type_gradle2-24.png | Bin 0 -> 966 bytes .../browser_icons/file_type_graphql-24.png | Bin 0 -> 873 bytes .../file_type_graphql_config-24.png | Bin 0 -> 1120 bytes .../browser_icons/file_type_graphviz-24.png | Bin 0 -> 1387 bytes .../file_type_greenkeeper-24.png | Bin 0 -> 1167 bytes .../browser_icons/file_type_gridsome-24.png | Bin 0 -> 1033 bytes .../browser_icons/file_type_groovy-24.png | Bin 0 -> 759 bytes .../browser_icons/file_type_groovy2-24.png | Bin 0 -> 1117 bytes .../browser_icons/file_type_grunt-24.png | Bin 0 -> 1298 bytes .../browser_icons/file_type_gulp-24.png | Bin 0 -> 612 bytes .../browser_icons/file_type_haml-24.png | Bin 0 -> 1147 bytes .../browser_icons/file_type_handlebars-24.png | Bin 0 -> 476 bytes .../file_type_handlebars2-24.png | Bin 0 -> 796 bytes .../browser_icons/file_type_harbour-24.png | Bin 0 -> 822 bytes .../browser_icons/file_type_hardhat-24.png | Bin 0 -> 781 bytes .../browser_icons/file_type_hashicorp-24.png | Bin 0 -> 522 bytes .../browser_icons/file_type_haskell-24.png | Bin 0 -> 763 bytes .../browser_icons/file_type_haskell2-24.png | Bin 0 -> 776 bytes .../browser_icons/file_type_haxe-24.png | Bin 0 -> 927 bytes .../file_type_haxecheckstyle-24.png | Bin 0 -> 1064 bytes .../file_type_haxedevelop-24.png | Bin 0 -> 1141 bytes .../browser_icons/file_type_helix-24.png | Bin 0 -> 826 bytes .../browser_icons/file_type_helm-24.png | Bin 0 -> 994 bytes .../browser_icons/file_type_hjson-24.png | Bin 0 -> 530 bytes .../browser_icons/file_type_hlsl-24.png | Bin 0 -> 420 bytes .../file_type_homeassistant-24.png | Bin 0 -> 850 bytes .../browser_icons/file_type_horusec-24.png | Bin 0 -> 978 bytes .../browser_icons/file_type_host-24.png | Bin 0 -> 1241 bytes .../browser_icons/file_type_html-24.png | Bin 0 -> 866 bytes .../browser_icons/file_type_htmlhint-24.png | Bin 0 -> 765 bytes .../browser_icons/file_type_http-24.png | Bin 0 -> 1267 bytes .../browser_icons/file_type_hunspell-24.png | Bin 0 -> 780 bytes .../browser_icons/file_type_husky-24.png | Bin 0 -> 909 bytes .../browser_icons/file_type_hy-24.png | Bin 0 -> 1021 bytes .../browser_icons/file_type_hygen-24.png | Bin 0 -> 769 bytes .../browser_icons/file_type_hypr-24.png | Bin 0 -> 518 bytes .../browser_icons/file_type_icl-24.png | Bin 0 -> 746 bytes .../browser_icons/file_type_idris-24.png | Bin 0 -> 662 bytes .../browser_icons/file_type_idrisbin-24.png | Bin 0 -> 913 bytes .../browser_icons/file_type_idrispkg-24.png | Bin 0 -> 907 bytes .../browser_icons/file_type_image-24.png | Bin 0 -> 568 bytes .../browser_icons/file_type_imba-24.png | Bin 0 -> 660 bytes .../browser_icons/file_type_inc-24.png | Bin 0 -> 486 bytes .../browser_icons/file_type_infopath-24.png | Bin 0 -> 767 bytes .../browser_icons/file_type_informix-24.png | Bin 0 -> 989 bytes .../browser_icons/file_type_ini-24.png | Bin 0 -> 794 bytes .../browser_icons/file_type_ink-24.png | Bin 0 -> 1103 bytes .../browser_icons/file_type_innosetup-24.png | Bin 0 -> 1302 bytes .../browser_icons/file_type_io-24.png | Bin 0 -> 691 bytes .../browser_icons/file_type_iodine-24.png | Bin 0 -> 560 bytes .../browser_icons/file_type_ionic-24.png | Bin 0 -> 929 bytes .../browser_icons/file_type_jake-24.png | Bin 0 -> 806 bytes .../browser_icons/file_type_janet-24.png | Bin 0 -> 795 bytes .../browser_icons/file_type_jar-24.png | Bin 0 -> 830 bytes .../browser_icons/file_type_jasmine-24.png | Bin 0 -> 1290 bytes .../browser_icons/file_type_java-24.png | Bin 0 -> 836 bytes .../browser_icons/file_type_jbuilder-24.png | Bin 0 -> 610 bytes .../browser_icons/file_type_jekyll-24.png | Bin 0 -> 772 bytes .../browser_icons/file_type_jenkins-24.png | Bin 0 -> 1473 bytes .../browser_icons/file_type_jest-24.png | Bin 0 -> 1126 bytes .../file_type_jest_snapshot-24.png | Bin 0 -> 1137 bytes .../browser_icons/file_type_jinja-24.png | Bin 0 -> 1369 bytes .../browser_icons/file_type_jpm-24.png | Bin 0 -> 1030 bytes .../browser_icons/file_type_js-24.png | Bin 0 -> 634 bytes .../file_type_js_official-24.png | Bin 0 -> 582 bytes .../browser_icons/file_type_jsbeautify-24.png | Bin 0 -> 1450 bytes .../browser_icons/file_type_jsconfig-24.png | Bin 0 -> 763 bytes .../browser_icons/file_type_jscpd-24.png | Bin 0 -> 602 bytes .../browser_icons/file_type_jshint-24.png | Bin 0 -> 551 bytes .../browser_icons/file_type_jsmap-24.png | Bin 0 -> 1456 bytes .../browser_icons/file_type_json-24.png | Bin 0 -> 582 bytes .../browser_icons/file_type_json2-24.png | Bin 0 -> 1102 bytes .../browser_icons/file_type_json5-24.png | Bin 0 -> 643 bytes .../file_type_json_official-24.png | Bin 0 -> 965 bytes .../browser_icons/file_type_jsonld-24.png | Bin 0 -> 918 bytes .../browser_icons/file_type_jsonnet-24.png | Bin 0 -> 970 bytes .../browser_icons/file_type_jsp-24.png | Bin 0 -> 803 bytes .../browser_icons/file_type_jss-24.png | Bin 0 -> 699 bytes .../browser_icons/file_type_julia-24.png | Bin 0 -> 921 bytes .../browser_icons/file_type_julia2-24.png | Bin 0 -> 700 bytes .../browser_icons/file_type_jupyter-24.png | Bin 0 -> 718 bytes .../browser_icons/file_type_k-24.png | Bin 0 -> 528 bytes .../browser_icons/file_type_karma-24.png | Bin 0 -> 801 bytes .../browser_icons/file_type_key-24.png | Bin 0 -> 962 bytes .../browser_icons/file_type_kitchenci-24.png | Bin 0 -> 703 bytes .../browser_icons/file_type_kite-24.png | Bin 0 -> 691 bytes .../browser_icons/file_type_kivy-24.png | Bin 0 -> 902 bytes .../browser_icons/file_type_kos-24.png | Bin 0 -> 549 bytes .../browser_icons/file_type_kotlin-24.png | Bin 0 -> 524 bytes .../browser_icons/file_type_kusto-24.png | Bin 0 -> 954 bytes .../browser_icons/file_type_latino-24.png | Bin 0 -> 960 bytes .../browser_icons/file_type_layout-24.png | Bin 0 -> 564 bytes .../browser_icons/file_type_lerna-24.png | Bin 0 -> 1255 bytes .../browser_icons/file_type_less-24.png | Bin 0 -> 802 bytes .../browser_icons/file_type_lex-24.png | Bin 0 -> 771 bytes .../browser_icons/file_type_license-24.png | Bin 0 -> 921 bytes .../browser_icons/file_type_licensebat-24.png | Bin 0 -> 980 bytes .../file_type_light_actionscript2-24.png | Bin 0 -> 697 bytes .../browser_icons/file_type_light_ada-24.png | Bin 0 -> 828 bytes .../browser_icons/file_type_light_apl-24.png | Bin 0 -> 482 bytes .../file_type_light_babel-24.png | Bin 0 -> 644 bytes .../file_type_light_babel2-24.png | Bin 0 -> 868 bytes .../file_type_light_cabal-24.png | Bin 0 -> 924 bytes .../file_type_light_circleci-24.png | Bin 0 -> 883 bytes .../file_type_light_cloudfoundry-24.png | Bin 0 -> 1003 bytes .../file_type_light_codacy-24.png | Bin 0 -> 545 bytes .../file_type_light_codeclimate-24.png | Bin 0 -> 609 bytes .../file_type_light_codeowners-24.png | Bin 0 -> 860 bytes .../file_type_light_config-24.png | Bin 0 -> 796 bytes .../file_type_light_crystal-24.png | Bin 0 -> 502 bytes .../file_type_light_cypress-24.png | Bin 0 -> 1325 bytes .../file_type_light_cypress_spec-24.png | Bin 0 -> 1196 bytes .../browser_icons/file_type_light_db-24.png | Bin 0 -> 972 bytes .../browser_icons/file_type_light_deno-24.png | Bin 0 -> 1012 bytes .../file_type_light_dhall-24.png | Bin 0 -> 820 bytes .../file_type_light_docpad-24.png | Bin 0 -> 498 bytes .../file_type_light_drone-24.png | Bin 0 -> 757 bytes .../file_type_light_eas-metadata-24.png | Bin 0 -> 488 bytes .../file_type_light_eleventy-24.png | Bin 0 -> 637 bytes .../file_type_light_eleventy2-24.png | Bin 0 -> 438 bytes .../file_type_light_esphome-24.png | Bin 0 -> 592 bytes .../browser_icons/file_type_light_expo-24.png | Bin 0 -> 830 bytes .../file_type_light_firebasehosting-24.png | Bin 0 -> 941 bytes .../browser_icons/file_type_light_fla-24.png | Bin 0 -> 745 bytes .../browser_icons/file_type_light_font-24.png | Bin 0 -> 484 bytes .../file_type_light_gamemaker2-24.png | Bin 0 -> 316 bytes .../file_type_light_gradle-24.png | Bin 0 -> 704 bytes .../file_type_light_hashicorp-24.png | Bin 0 -> 503 bytes .../file_type_light_hjson-24.png | Bin 0 -> 478 bytes .../browser_icons/file_type_light_ini-24.png | Bin 0 -> 796 bytes .../browser_icons/file_type_light_io-24.png | Bin 0 -> 489 bytes .../browser_icons/file_type_light_js-24.png | Bin 0 -> 649 bytes .../file_type_light_jsconfig-24.png | Bin 0 -> 763 bytes .../file_type_light_jsmap-24.png | Bin 0 -> 1468 bytes .../browser_icons/file_type_light_json-24.png | Bin 0 -> 586 bytes .../file_type_light_json5-24.png | Bin 0 -> 637 bytes .../file_type_light_jsonld-24.png | Bin 0 -> 744 bytes .../browser_icons/file_type_light_kite-24.png | Bin 0 -> 695 bytes .../file_type_light_lerna-24.png | Bin 0 -> 1256 bytes .../file_type_light_mailing-24.png | Bin 0 -> 485 bytes .../browser_icons/file_type_light_mdx-24.png | Bin 0 -> 446 bytes .../file_type_light_mlang-24.png | Bin 0 -> 394 bytes .../file_type_light_mustache-24.png | Bin 0 -> 335 bytes .../browser_icons/file_type_light_next-24.png | Bin 0 -> 516 bytes .../browser_icons/file_type_light_nim-24.png | Bin 0 -> 672 bytes .../browser_icons/file_type_light_nx-24.png | Bin 0 -> 760 bytes .../file_type_light_objidconfig-24.png | Bin 0 -> 916 bytes .../file_type_light_openHAB-24.png | Bin 0 -> 915 bytes .../browser_icons/file_type_light_pcl-24.png | Bin 0 -> 652 bytes .../browser_icons/file_type_light_pnpm-24.png | Bin 0 -> 379 bytes .../file_type_light_prettier-24.png | Bin 0 -> 1003 bytes .../file_type_light_prisma-24.png | Bin 0 -> 759 bytes .../file_type_light_purescript-24.png | Bin 0 -> 364 bytes .../file_type_light_quasar-24.png | Bin 0 -> 1147 bytes .../file_type_light_razzle-24.png | Bin 0 -> 850 bytes .../file_type_light_rehype-24.png | Bin 0 -> 351 bytes .../file_type_light_remark-24.png | Bin 0 -> 370 bytes .../file_type_light_replit-24.png | Bin 0 -> 1044 bytes .../file_type_light_retext-24.png | Bin 0 -> 351 bytes .../browser_icons/file_type_light_rome-24.png | Bin 0 -> 810 bytes .../file_type_light_rubocop-24.png | Bin 0 -> 532 bytes .../browser_icons/file_type_light_rust-24.png | Bin 0 -> 925 bytes .../file_type_light_rust_toolchain-24.png | Bin 0 -> 845 bytes .../file_type_light_shaderlab-24.png | Bin 0 -> 949 bytes .../file_type_light_solidity-24.png | Bin 0 -> 547 bytes .../file_type_light_stylelint-24.png | Bin 0 -> 566 bytes .../file_type_light_stylus-24.png | Bin 0 -> 787 bytes .../file_type_light_symfony-24.png | Bin 0 -> 925 bytes .../file_type_light_systemd-24.png | Bin 0 -> 344 bytes .../file_type_light_systemverilog-24.png | Bin 0 -> 1166 bytes .../file_type_light_testcafe-24.png | Bin 0 -> 620 bytes .../file_type_light_testjs-24.png | Bin 0 -> 1204 bytes .../browser_icons/file_type_light_tex-24.png | Bin 0 -> 441 bytes .../browser_icons/file_type_light_todo-24.png | Bin 0 -> 521 bytes .../browser_icons/file_type_light_toit-24.png | Bin 0 -> 752 bytes .../browser_icons/file_type_light_toml-24.png | Bin 0 -> 416 bytes .../browser_icons/file_type_light_tree-24.png | Bin 0 -> 339 bytes .../file_type_light_turbo-24.png | Bin 0 -> 838 bytes .../file_type_light_unibeautify-24.png | Bin 0 -> 586 bytes .../browser_icons/file_type_light_vash-24.png | Bin 0 -> 1037 bytes .../browser_icons/file_type_light_vsix-24.png | Bin 0 -> 332 bytes .../file_type_light_vsixmanifest-24.png | Bin 0 -> 899 bytes .../browser_icons/file_type_light_xfl-24.png | Bin 0 -> 741 bytes .../browser_icons/file_type_light_yaml-24.png | Bin 0 -> 482 bytes .../browser_icons/file_type_light_zeit-24.png | Bin 0 -> 416 bytes .../browser_icons/file_type_lighthouse-24.png | Bin 0 -> 898 bytes .../browser_icons/file_type_lilypond-24.png | Bin 0 -> 1301 bytes .../browser_icons/file_type_lime-24.png | Bin 0 -> 1169 bytes .../file_type_lintstagedrc-24.png | Bin 0 -> 1544 bytes .../browser_icons/file_type_liquid-24.png | Bin 0 -> 755 bytes .../browser_icons/file_type_lisp-24.png | Bin 0 -> 743 bytes .../browser_icons/file_type_livescript-24.png | Bin 0 -> 665 bytes .../browser_icons/file_type_lnk-24.png | Bin 0 -> 717 bytes .../browser_icons/file_type_locale-24.png | Bin 0 -> 846 bytes .../browser_icons/file_type_log-24.png | Bin 0 -> 499 bytes .../browser_icons/file_type_lolcode-24.png | Bin 0 -> 944 bytes .../browser_icons/file_type_lsl-24.png | Bin 0 -> 1163 bytes .../browser_icons/file_type_lua-24.png | Bin 0 -> 1040 bytes .../browser_icons/file_type_luau-24.png | Bin 0 -> 729 bytes .../browser_icons/file_type_lync-24.png | Bin 0 -> 831 bytes .../browser_icons/file_type_mailing-24.png | Bin 0 -> 707 bytes .../browser_icons/file_type_manifest-24.png | Bin 0 -> 851 bytes .../file_type_manifest_bak-24.png | Bin 0 -> 1090 bytes .../file_type_manifest_skip-24.png | Bin 0 -> 855 bytes .../browser_icons/file_type_map-24.png | Bin 0 -> 1135 bytes .../browser_icons/file_type_mariadb-24.png | Bin 0 -> 682 bytes .../browser_icons/file_type_markdown-24.png | Bin 0 -> 567 bytes .../file_type_markdownlint-24.png | Bin 0 -> 800 bytes .../file_type_markdownlint_ignore-24.png | Bin 0 -> 784 bytes .../browser_icons/file_type_marko-24.png | Bin 0 -> 920 bytes .../browser_icons/file_type_markojs-24.png | Bin 0 -> 669 bytes .../browser_icons/file_type_master-co-24.png | Bin 0 -> 765 bytes .../browser_icons/file_type_matlab-24.png | Bin 0 -> 952 bytes .../browser_icons/file_type_maven-24.png | Bin 0 -> 932 bytes .../browser_icons/file_type_maxscript-24.png | Bin 0 -> 988 bytes .../browser_icons/file_type_maya-24.png | Bin 0 -> 1186 bytes .../browser_icons/file_type_mdx-24.png | Bin 0 -> 541 bytes .../browser_icons/file_type_mediawiki-24.png | Bin 0 -> 945 bytes .../browser_icons/file_type_mercurial-24.png | Bin 0 -> 1219 bytes .../browser_icons/file_type_meson-24.png | Bin 0 -> 823 bytes .../browser_icons/file_type_meteor-24.png | Bin 0 -> 1166 bytes .../browser_icons/file_type_mjml-24.png | Bin 0 -> 772 bytes .../browser_icons/file_type_mlang-24.png | Bin 0 -> 548 bytes .../browser_icons/file_type_mocha-24.png | Bin 0 -> 859 bytes .../browser_icons/file_type_modernizr-24.png | Bin 0 -> 437 bytes .../file_type_mojolicious-24.png | Bin 0 -> 530 bytes .../browser_icons/file_type_moleculer-24.png | Bin 0 -> 699 bytes .../browser_icons/file_type_mondoo-24.png | Bin 0 -> 625 bytes .../browser_icons/file_type_mongo-24.png | Bin 0 -> 610 bytes .../browser_icons/file_type_monotone-24.png | Bin 0 -> 1111 bytes .../browser_icons/file_type_motif-24.png | Bin 0 -> 1184 bytes .../browser_icons/file_type_mson-24.png | Bin 0 -> 785 bytes .../browser_icons/file_type_mustache-24.png | Bin 0 -> 442 bytes .../browser_icons/file_type_mysql-24.png | Bin 0 -> 712 bytes .../browser_icons/file_type_ndst-24.png | Bin 0 -> 947 bytes .../browser_icons/file_type_nearly-24.png | Bin 0 -> 625 bytes .../file_type_nest_adapter_js-24.png | Bin 0 -> 999 bytes .../file_type_nest_adapter_ts-24.png | Bin 0 -> 988 bytes .../file_type_nest_controller_js-24.png | Bin 0 -> 1002 bytes .../file_type_nest_controller_ts-24.png | Bin 0 -> 969 bytes .../file_type_nest_decorator_js-24.png | Bin 0 -> 953 bytes .../file_type_nest_decorator_ts-24.png | Bin 0 -> 1010 bytes .../file_type_nest_filter_js-24.png | Bin 0 -> 992 bytes .../file_type_nest_filter_ts-24.png | Bin 0 -> 997 bytes .../file_type_nest_gateway_js-24.png | Bin 0 -> 986 bytes .../file_type_nest_gateway_ts-24.png | Bin 0 -> 1017 bytes .../file_type_nest_guard_js-24.png | Bin 0 -> 1018 bytes .../file_type_nest_guard_ts-24.png | Bin 0 -> 993 bytes .../file_type_nest_interceptor_js-24.png | Bin 0 -> 1011 bytes .../file_type_nest_interceptor_ts-24.png | Bin 0 -> 1008 bytes .../file_type_nest_middleware_js-24.png | Bin 0 -> 934 bytes .../file_type_nest_middleware_ts-24.png | Bin 0 -> 959 bytes .../file_type_nest_module_js-24.png | Bin 0 -> 1021 bytes .../file_type_nest_module_ts-24.png | Bin 0 -> 1013 bytes .../file_type_nest_pipe_js-24.png | Bin 0 -> 1011 bytes .../file_type_nest_pipe_ts-24.png | Bin 0 -> 1011 bytes .../file_type_nest_service_js-24.png | Bin 0 -> 1026 bytes .../file_type_nest_service_ts-24.png | Bin 0 -> 1009 bytes .../browser_icons/file_type_nestjs-24.png | Bin 0 -> 842 bytes .../browser_icons/file_type_netlify-24.png | Bin 0 -> 987 bytes .../browser_icons/file_type_next-24.png | Bin 0 -> 759 bytes .../file_type_ng_component_css-24.png | Bin 0 -> 1124 bytes .../file_type_ng_component_dart-24.png | Bin 0 -> 1074 bytes .../file_type_ng_component_html-24.png | Bin 0 -> 1097 bytes .../file_type_ng_component_js-24.png | Bin 0 -> 1083 bytes .../file_type_ng_component_js2-24.png | Bin 0 -> 1102 bytes .../file_type_ng_component_less-24.png | Bin 0 -> 1118 bytes .../file_type_ng_component_sass-24.png | Bin 0 -> 1153 bytes .../file_type_ng_component_scss-24.png | Bin 0 -> 1155 bytes .../file_type_ng_component_ts-24.png | Bin 0 -> 1100 bytes .../file_type_ng_component_ts2-24.png | Bin 0 -> 1121 bytes .../file_type_ng_controller_js-24.png | Bin 0 -> 1291 bytes .../file_type_ng_controller_ts-24.png | Bin 0 -> 1312 bytes .../file_type_ng_directive_dart-24.png | Bin 0 -> 1090 bytes .../file_type_ng_directive_js-24.png | Bin 0 -> 1103 bytes .../file_type_ng_directive_js2-24.png | Bin 0 -> 1099 bytes .../file_type_ng_directive_ts-24.png | Bin 0 -> 1126 bytes .../file_type_ng_directive_ts2-24.png | Bin 0 -> 1079 bytes .../file_type_ng_guard_dart-24.png | Bin 0 -> 1064 bytes .../file_type_ng_guard_js-24.png | Bin 0 -> 1069 bytes .../file_type_ng_guard_ts-24.png | Bin 0 -> 1079 bytes .../file_type_ng_interceptor_dart-24.png | Bin 0 -> 1076 bytes .../file_type_ng_interceptor_js-24.png | Bin 0 -> 1084 bytes .../file_type_ng_interceptor_ts-24.png | Bin 0 -> 1091 bytes .../file_type_ng_module_dart-24.png | Bin 0 -> 1061 bytes .../file_type_ng_module_js-24.png | Bin 0 -> 1068 bytes .../file_type_ng_module_js2-24.png | Bin 0 -> 1096 bytes .../file_type_ng_module_ts-24.png | Bin 0 -> 1077 bytes .../file_type_ng_module_ts2-24.png | Bin 0 -> 1065 bytes .../file_type_ng_pipe_dart-24.png | Bin 0 -> 1051 bytes .../browser_icons/file_type_ng_pipe_js-24.png | Bin 0 -> 1040 bytes .../file_type_ng_pipe_js2-24.png | Bin 0 -> 1089 bytes .../browser_icons/file_type_ng_pipe_ts-24.png | Bin 0 -> 1057 bytes .../file_type_ng_pipe_ts2-24.png | Bin 0 -> 1088 bytes .../file_type_ng_routing_dart-24.png | Bin 0 -> 1045 bytes .../file_type_ng_routing_js-24.png | Bin 0 -> 1043 bytes .../file_type_ng_routing_js2-24.png | Bin 0 -> 1065 bytes .../file_type_ng_routing_ts-24.png | Bin 0 -> 1062 bytes .../file_type_ng_routing_ts2-24.png | Bin 0 -> 1063 bytes .../file_type_ng_service_dart-24.png | Bin 0 -> 1100 bytes .../file_type_ng_service_js-24.png | Bin 0 -> 1101 bytes .../file_type_ng_service_js2-24.png | Bin 0 -> 1104 bytes .../file_type_ng_service_ts-24.png | Bin 0 -> 1107 bytes .../file_type_ng_service_ts2-24.png | Bin 0 -> 1058 bytes .../file_type_ng_smart_component_dart-24.png | Bin 0 -> 1070 bytes .../file_type_ng_smart_component_js-24.png | Bin 0 -> 1098 bytes .../file_type_ng_smart_component_js2-24.png | Bin 0 -> 1125 bytes .../file_type_ng_smart_component_ts-24.png | Bin 0 -> 1126 bytes .../file_type_ng_smart_component_ts2-24.png | Bin 0 -> 1147 bytes .../file_type_ng_tailwind-24.png | Bin 0 -> 1090 bytes .../browser_icons/file_type_nginx-24.png | Bin 0 -> 759 bytes .../browser_icons/file_type_nim-24.png | Bin 0 -> 673 bytes .../browser_icons/file_type_nimble-24.png | Bin 0 -> 798 bytes .../browser_icons/file_type_ninja-24.png | Bin 0 -> 870 bytes .../browser_icons/file_type_nix-24.png | Bin 0 -> 1076 bytes .../browser_icons/file_type_njsproj-24.png | Bin 0 -> 1231 bytes .../browser_icons/file_type_noc-24.png | Bin 0 -> 523 bytes .../browser_icons/file_type_node-24.png | Bin 0 -> 997 bytes .../browser_icons/file_type_node2-24.png | Bin 0 -> 1289 bytes .../browser_icons/file_type_nodemon-24.png | Bin 0 -> 689 bytes .../browser_icons/file_type_npm-24.png | Bin 0 -> 448 bytes .../browser_icons/file_type_nsi-24.png | Bin 0 -> 1332 bytes .../browser_icons/file_type_nsri-24.png | Bin 0 -> 919 bytes .../file_type_nsri-integrity-24.png | Bin 0 -> 649 bytes .../browser_icons/file_type_nuget-24.png | Bin 0 -> 715 bytes .../browser_icons/file_type_numpy-24.png | Bin 0 -> 1001 bytes .../browser_icons/file_type_nunjucks-24.png | Bin 0 -> 635 bytes .../browser_icons/file_type_nuxt-24.png | Bin 0 -> 696 bytes .../browser_icons/file_type_nx-24.png | Bin 0 -> 714 bytes .../browser_icons/file_type_nyc-24.png | Bin 0 -> 772 bytes .../browser_icons/file_type_objectivec-24.png | Bin 0 -> 850 bytes .../file_type_objectivecpp-24.png | Bin 0 -> 813 bytes .../file_type_objidconfig-24.png | Bin 0 -> 772 bytes .../browser_icons/file_type_ocaml-24.png | Bin 0 -> 870 bytes .../browser_icons/file_type_ogone-24.png | Bin 0 -> 1207 bytes .../browser_icons/file_type_onenote-24.png | Bin 0 -> 891 bytes .../browser_icons/file_type_openHAB-24.png | Bin 0 -> 928 bytes .../browser_icons/file_type_opencl-24.png | Bin 0 -> 943 bytes .../browser_icons/file_type_openscad-24.png | Bin 0 -> 877 bytes .../browser_icons/file_type_org-24.png | Bin 0 -> 1038 bytes .../browser_icons/file_type_outlook-24.png | Bin 0 -> 644 bytes .../browser_icons/file_type_ovpn-24.png | Bin 0 -> 752 bytes .../browser_icons/file_type_package-24.png | Bin 0 -> 507 bytes .../browser_icons/file_type_paket-24.png | Bin 0 -> 860 bytes .../browser_icons/file_type_patch-24.png | Bin 0 -> 959 bytes .../browser_icons/file_type_pcl-24.png | Bin 0 -> 623 bytes .../browser_icons/file_type_pddl-24.png | Bin 0 -> 845 bytes .../file_type_pddl_happenings-24.png | Bin 0 -> 551 bytes .../browser_icons/file_type_pddl_plan-24.png | Bin 0 -> 305 bytes .../browser_icons/file_type_pdf-24.png | Bin 0 -> 901 bytes .../browser_icons/file_type_pdf2-24.png | Bin 0 -> 749 bytes .../browser_icons/file_type_peeky-24.png | Bin 0 -> 990 bytes .../browser_icons/file_type_perl-24.png | Bin 0 -> 1229 bytes .../browser_icons/file_type_perl2-24.png | Bin 0 -> 1190 bytes .../browser_icons/file_type_perl6-24.png | Bin 0 -> 2031 bytes .../browser_icons/file_type_pgsql-24.png | Bin 0 -> 1256 bytes .../browser_icons/file_type_photoshop-24.png | Bin 0 -> 646 bytes .../browser_icons/file_type_photoshop2-24.png | Bin 0 -> 828 bytes .../browser_icons/file_type_php-24.png | Bin 0 -> 955 bytes .../browser_icons/file_type_php2-24.png | Bin 0 -> 1042 bytes .../browser_icons/file_type_php3-24.png | Bin 0 -> 602 bytes .../browser_icons/file_type_phpcsfixer-24.png | Bin 0 -> 740 bytes .../browser_icons/file_type_phpstan-24.png | Bin 0 -> 1043 bytes .../browser_icons/file_type_phpunit-24.png | Bin 0 -> 945 bytes .../browser_icons/file_type_phraseapp-24.png | Bin 0 -> 1185 bytes .../browser_icons/file_type_pine-24.png | Bin 0 -> 651 bytes .../browser_icons/file_type_pip-24.png | Bin 0 -> 661 bytes .../browser_icons/file_type_pipeline-24.png | Bin 0 -> 567 bytes .../browser_icons/file_type_plantuml-24.png | Bin 0 -> 967 bytes .../browser_icons/file_type_platformio-24.png | Bin 0 -> 1006 bytes .../browser_icons/file_type_playwright-24.png | Bin 0 -> 919 bytes .../browser_icons/file_type_plsql-24.png | Bin 0 -> 588 bytes .../file_type_plsql_package-24.png | Bin 0 -> 968 bytes .../file_type_plsql_package_body-24.png | Bin 0 -> 962 bytes .../file_type_plsql_package_header-24.png | Bin 0 -> 995 bytes .../file_type_plsql_package_spec-24.png | Bin 0 -> 971 bytes .../browser_icons/file_type_pm2-24.png | Bin 0 -> 1189 bytes .../browser_icons/file_type_pnpm-24.png | Bin 0 -> 329 bytes .../browser_icons/file_type_poedit-24.png | Bin 0 -> 1274 bytes .../browser_icons/file_type_poetry-24.png | Bin 0 -> 914 bytes .../browser_icons/file_type_polymer-24.png | Bin 0 -> 1043 bytes .../browser_icons/file_type_pony-24.png | Bin 0 -> 738 bytes .../browser_icons/file_type_postcss-24.png | Bin 0 -> 1219 bytes .../file_type_postcssconfig-24.png | Bin 0 -> 1359 bytes .../browser_icons/file_type_powerpoint-24.png | Bin 0 -> 838 bytes .../file_type_powerpoint2-24.png | Bin 0 -> 717 bytes .../browser_icons/file_type_powershell-24.png | Bin 0 -> 775 bytes .../file_type_powershell2-24.png | Bin 0 -> 940 bytes .../file_type_powershell_format-24.png | Bin 0 -> 875 bytes .../file_type_powershell_psd-24.png | Bin 0 -> 818 bytes .../file_type_powershell_psd2-24.png | Bin 0 -> 892 bytes .../file_type_powershell_psm-24.png | Bin 0 -> 841 bytes .../file_type_powershell_psm2-24.png | Bin 0 -> 816 bytes .../file_type_powershell_types-24.png | Bin 0 -> 832 bytes .../browser_icons/file_type_preact-24.png | Bin 0 -> 958 bytes .../browser_icons/file_type_precommit-24.png | Bin 0 -> 908 bytes .../browser_icons/file_type_prettier-24.png | Bin 0 -> 1004 bytes .../browser_icons/file_type_prisma-24.png | Bin 0 -> 738 bytes .../file_type_processinglang-24.png | Bin 0 -> 615 bytes .../browser_icons/file_type_procfile-24.png | Bin 0 -> 583 bytes .../browser_icons/file_type_progress-24.png | Bin 0 -> 711 bytes .../browser_icons/file_type_prolog-24.png | Bin 0 -> 1511 bytes .../browser_icons/file_type_prometheus-24.png | Bin 0 -> 620 bytes .../browser_icons/file_type_protobuf-24.png | Bin 0 -> 951 bytes .../browser_icons/file_type_protractor-24.png | Bin 0 -> 982 bytes .../browser_icons/file_type_publisher-24.png | Bin 0 -> 811 bytes .../browser_icons/file_type_pug-24.png | Bin 0 -> 978 bytes .../browser_icons/file_type_pulumi-24.png | Bin 0 -> 1120 bytes .../browser_icons/file_type_puppet-24.png | Bin 0 -> 471 bytes .../browser_icons/file_type_purescript-24.png | Bin 0 -> 615 bytes .../browser_icons/file_type_pyret-24.png | Bin 0 -> 927 bytes .../browser_icons/file_type_python-24.png | Bin 0 -> 847 bytes .../browser_icons/file_type_pythowo-24.png | Bin 0 -> 739 bytes .../browser_icons/file_type_pytyped-24.png | Bin 0 -> 702 bytes .../browser_icons/file_type_pyup-24.png | Bin 0 -> 825 bytes .../browser_icons/file_type_q-24.png | Bin 0 -> 581 bytes .../browser_icons/file_type_qbs-24.png | Bin 0 -> 748 bytes .../browser_icons/file_type_qlikview-24.png | Bin 0 -> 1002 bytes .../browser_icons/file_type_qml-24.png | Bin 0 -> 678 bytes .../browser_icons/file_type_qmldir-24.png | Bin 0 -> 636 bytes .../browser_icons/file_type_qsharp-24.png | Bin 0 -> 847 bytes .../browser_icons/file_type_quasar-24.png | Bin 0 -> 1185 bytes .../browser_icons/file_type_r-24.png | Bin 0 -> 988 bytes .../browser_icons/file_type_racket-24.png | Bin 0 -> 1117 bytes .../browser_icons/file_type_rails-24.png | Bin 0 -> 1146 bytes .../browser_icons/file_type_rake-24.png | Bin 0 -> 1207 bytes .../browser_icons/file_type_raml-24.png | Bin 0 -> 636 bytes .../browser_icons/file_type_razor-24.png | Bin 0 -> 1052 bytes .../browser_icons/file_type_razzle-24.png | Bin 0 -> 831 bytes .../browser_icons/file_type_reactjs-24.png | Bin 0 -> 896 bytes .../file_type_reacttemplate-24.png | Bin 0 -> 1113 bytes .../browser_icons/file_type_reactts-24.png | Bin 0 -> 1037 bytes .../browser_icons/file_type_reason-24.png | Bin 0 -> 603 bytes .../browser_icons/file_type_red-24.png | Bin 0 -> 855 bytes .../browser_icons/file_type_registry-24.png | Bin 0 -> 719 bytes .../browser_icons/file_type_rego-24.png | Bin 0 -> 729 bytes .../browser_icons/file_type_rehype-24.png | Bin 0 -> 404 bytes .../browser_icons/file_type_remark-24.png | Bin 0 -> 428 bytes .../browser_icons/file_type_renovate-24.png | Bin 0 -> 1000 bytes .../browser_icons/file_type_replit-24.png | Bin 0 -> 872 bytes .../browser_icons/file_type_rescript-24.png | Bin 0 -> 755 bytes .../browser_icons/file_type_rest-24.png | Bin 0 -> 975 bytes .../browser_icons/file_type_retext-24.png | Bin 0 -> 393 bytes .../browser_icons/file_type_rexx-24.png | Bin 0 -> 598 bytes .../browser_icons/file_type_riot-24.png | Bin 0 -> 605 bytes .../browser_icons/file_type_rmd-24.png | Bin 0 -> 724 bytes .../file_type_robotframework-24.png | Bin 0 -> 815 bytes .../browser_icons/file_type_robots-24.png | Bin 0 -> 703 bytes .../browser_icons/file_type_rollup-24.png | Bin 0 -> 856 bytes .../browser_icons/file_type_rome-24.png | Bin 0 -> 818 bytes .../browser_icons/file_type_ron-24.png | Bin 0 -> 1053 bytes .../browser_icons/file_type_rproj-24.png | Bin 0 -> 869 bytes .../browser_icons/file_type_rspec-24.png | Bin 0 -> 1183 bytes .../browser_icons/file_type_rubocop-24.png | Bin 0 -> 765 bytes .../browser_icons/file_type_ruby-24.png | Bin 0 -> 1424 bytes .../browser_icons/file_type_rust-24.png | Bin 0 -> 1296 bytes .../file_type_rust_toolchain-24.png | Bin 0 -> 1751 bytes .../browser_icons/file_type_sails-24.png | Bin 0 -> 524 bytes .../browser_icons/file_type_saltstack-24.png | Bin 0 -> 881 bytes .../browser_icons/file_type_san-24.png | Bin 0 -> 922 bytes .../file_type_sapphire_framework_cli-24.png | Bin 0 -> 691 bytes .../browser_icons/file_type_sas-24.png | Bin 0 -> 1042 bytes .../browser_icons/file_type_sass-24.png | Bin 0 -> 881 bytes .../browser_icons/file_type_sbt-24.png | Bin 0 -> 716 bytes .../browser_icons/file_type_scala-24.png | Bin 0 -> 741 bytes .../browser_icons/file_type_scilab-24.png | Bin 0 -> 714 bytes .../browser_icons/file_type_script-24.png | Bin 0 -> 695 bytes .../browser_icons/file_type_scss-24.png | Bin 0 -> 935 bytes .../browser_icons/file_type_scss2-24.png | Bin 0 -> 1056 bytes .../browser_icons/file_type_sdlang-24.png | Bin 0 -> 895 bytes .../browser_icons/file_type_sentry-24.png | Bin 0 -> 988 bytes .../browser_icons/file_type_sequelize-24.png | Bin 0 -> 1129 bytes .../browser_icons/file_type_serverless-24.png | Bin 0 -> 538 bytes .../browser_icons/file_type_shaderlab-24.png | Bin 0 -> 898 bytes .../browser_icons/file_type_shell-24.png | Bin 0 -> 434 bytes .../browser_icons/file_type_shellcheck-24.png | Bin 0 -> 1608 bytes .../browser_icons/file_type_shuttle-24.png | Bin 0 -> 720 bytes .../file_type_silverstripe-24.png | Bin 0 -> 775 bytes .../browser_icons/file_type_siyuan-24.png | Bin 0 -> 639 bytes .../browser_icons/file_type_sketch-24.png | Bin 0 -> 782 bytes .../browser_icons/file_type_skipper-24.png | Bin 0 -> 631 bytes .../browser_icons/file_type_slang-24.png | Bin 0 -> 1076 bytes .../browser_icons/file_type_slashup-24.png | Bin 0 -> 761 bytes .../browser_icons/file_type_slice-24.png | Bin 0 -> 803 bytes .../browser_icons/file_type_slim-24.png | Bin 0 -> 1460 bytes .../browser_icons/file_type_sln-24.png | Bin 0 -> 1079 bytes .../browser_icons/file_type_sln2-24.png | Bin 0 -> 865 bytes .../browser_icons/file_type_smarty-24.png | Bin 0 -> 865 bytes .../browser_icons/file_type_snapcraft-24.png | Bin 0 -> 688 bytes .../browser_icons/file_type_snort-24.png | Bin 0 -> 706 bytes .../browser_icons/file_type_snyk-24.png | Bin 0 -> 928 bytes .../browser_icons/file_type_solidarity-24.png | Bin 0 -> 1103 bytes .../browser_icons/file_type_solidity-24.png | Bin 0 -> 737 bytes .../browser_icons/file_type_source-24.png | Bin 0 -> 794 bytes .../browser_icons/file_type_spacengine-24.png | Bin 0 -> 472 bytes .../browser_icons/file_type_sparql-24.png | Bin 0 -> 939 bytes .../browser_icons/file_type_sqf-24.png | Bin 0 -> 762 bytes .../browser_icons/file_type_sql-24.png | Bin 0 -> 877 bytes .../browser_icons/file_type_sqlite-24.png | Bin 0 -> 714 bytes .../browser_icons/file_type_squirrel-24.png | Bin 0 -> 847 bytes .../browser_icons/file_type_sss-24.png | Bin 0 -> 1000 bytes .../browser_icons/file_type_stan-24.png | Bin 0 -> 873 bytes .../browser_icons/file_type_stata-24.png | Bin 0 -> 745 bytes .../browser_icons/file_type_stencil-24.png | Bin 0 -> 528 bytes .../browser_icons/file_type_storyboard-24.png | Bin 0 -> 616 bytes .../browser_icons/file_type_storybook-24.png | Bin 0 -> 735 bytes .../browser_icons/file_type_stryker-24.png | Bin 0 -> 1095 bytes .../browser_icons/file_type_stylable-24.png | Bin 0 -> 1114 bytes .../browser_icons/file_type_style-24.png | Bin 0 -> 926 bytes .../browser_icons/file_type_styled-24.png | Bin 0 -> 1133 bytes .../browser_icons/file_type_stylelint-24.png | Bin 0 -> 882 bytes .../file_type_stylish_haskell-24.png | Bin 0 -> 760 bytes .../browser_icons/file_type_stylus-24.png | Bin 0 -> 771 bytes .../browser_icons/file_type_subversion-24.png | Bin 0 -> 650 bytes .../browser_icons/file_type_svelte-24.png | Bin 0 -> 914 bytes .../browser_icons/file_type_svg-24.png | Bin 0 -> 1244 bytes .../browser_icons/file_type_swagger-24.png | Bin 0 -> 1070 bytes .../browser_icons/file_type_swift-24.png | Bin 0 -> 829 bytes .../browser_icons/file_type_swig-24.png | Bin 0 -> 673 bytes .../browser_icons/file_type_symfony-24.png | Bin 0 -> 878 bytes .../browser_icons/file_type_systemd-24.png | Bin 0 -> 348 bytes .../file_type_systemverilog-24.png | Bin 0 -> 1323 bytes .../browser_icons/file_type_t4tt-24.png | Bin 0 -> 540 bytes .../browser_icons/file_type_tailwind-24.png | Bin 0 -> 647 bytes .../browser_icons/file_type_tauri-24.png | Bin 0 -> 1009 bytes .../browser_icons/file_type_tcl-24.png | Bin 0 -> 702 bytes .../browser_icons/file_type_teal-24.png | Bin 0 -> 594 bytes .../browser_icons/file_type_tera-24.png | Bin 0 -> 559 bytes .../browser_icons/file_type_terraform-24.png | Bin 0 -> 589 bytes .../browser_icons/file_type_test-24.png | Bin 0 -> 807 bytes .../browser_icons/file_type_testcafe-24.png | Bin 0 -> 621 bytes .../browser_icons/file_type_testjs-24.png | Bin 0 -> 1181 bytes .../browser_icons/file_type_testts-24.png | Bin 0 -> 1033 bytes .../browser_icons/file_type_tex-24.png | Bin 0 -> 613 bytes .../browser_icons/file_type_text-24.png | Bin 0 -> 540 bytes .../browser_icons/file_type_textile-24.png | Bin 0 -> 471 bytes .../browser_icons/file_type_tfs-24.png | Bin 0 -> 991 bytes .../browser_icons/file_type_tiltfile-24.png | Bin 0 -> 533 bytes .../browser_icons/file_type_todo-24.png | Bin 0 -> 642 bytes .../browser_icons/file_type_toit-24.png | Bin 0 -> 738 bytes .../browser_icons/file_type_toml-24.png | Bin 0 -> 435 bytes .../browser_icons/file_type_tox-24.png | Bin 0 -> 1364 bytes .../browser_icons/file_type_travis-24.png | Bin 0 -> 1517 bytes .../browser_icons/file_type_tree-24.png | Bin 0 -> 334 bytes .../browser_icons/file_type_tres-24.png | Bin 0 -> 952 bytes .../browser_icons/file_type_truffle-24.png | Bin 0 -> 1351 bytes .../browser_icons/file_type_trunk-24.png | Bin 0 -> 872 bytes .../browser_icons/file_type_tscn-24.png | Bin 0 -> 953 bytes .../browser_icons/file_type_tsconfig-24.png | Bin 0 -> 707 bytes .../file_type_tsconfig_official-24.png | Bin 0 -> 519 bytes .../browser_icons/file_type_tslint-24.png | Bin 0 -> 1062 bytes .../browser_icons/file_type_tt-24.png | Bin 0 -> 724 bytes .../browser_icons/file_type_ttcn-24.png | Bin 0 -> 744 bytes .../browser_icons/file_type_tuc-24.png | Bin 0 -> 950 bytes .../browser_icons/file_type_turbo-24.png | Bin 0 -> 938 bytes .../browser_icons/file_type_twig-24.png | Bin 0 -> 859 bytes .../browser_icons/file_type_typedoc-24.png | Bin 0 -> 734 bytes .../browser_icons/file_type_typescript-24.png | Bin 0 -> 564 bytes .../file_type_typescript_official-24.png | Bin 0 -> 660 bytes .../file_type_typescriptdef-24.png | Bin 0 -> 557 bytes .../file_type_typescriptdef_official-24.png | Bin 0 -> 663 bytes .../browser_icons/file_type_typo3-24.png | Bin 0 -> 655 bytes .../file_type_unibeautify-24.png | Bin 0 -> 918 bytes .../browser_icons/file_type_unison-24.png | Bin 0 -> 1060 bytes .../browser_icons/file_type_unlicense-24.png | Bin 0 -> 949 bytes .../browser_icons/file_type_vagrant-24.png | Bin 0 -> 1185 bytes .../browser_icons/file_type_vala-24.png | Bin 0 -> 967 bytes .../file_type_vanilla_extract-24.png | Bin 0 -> 1031 bytes .../browser_icons/file_type_vapi-24.png | Bin 0 -> 931 bytes .../browser_icons/file_type_vapor-24.png | Bin 0 -> 877 bytes .../browser_icons/file_type_vash-24.png | Bin 0 -> 1046 bytes .../browser_icons/file_type_vb-24.png | Bin 0 -> 622 bytes .../browser_icons/file_type_vba-24.png | Bin 0 -> 919 bytes .../browser_icons/file_type_vbhtml-24.png | Bin 0 -> 956 bytes .../browser_icons/file_type_vbproj-24.png | Bin 0 -> 1217 bytes .../browser_icons/file_type_vcxproj-24.png | Bin 0 -> 1205 bytes .../browser_icons/file_type_velocity-24.png | Bin 0 -> 730 bytes .../browser_icons/file_type_verilog-24.png | Bin 0 -> 1305 bytes .../browser_icons/file_type_vhdl-24.png | Bin 0 -> 685 bytes .../browser_icons/file_type_video-24.png | Bin 0 -> 791 bytes .../browser_icons/file_type_view-24.png | Bin 0 -> 896 bytes .../browser_icons/file_type_vim-24.png | Bin 0 -> 1322 bytes .../browser_icons/file_type_vite-24.png | Bin 0 -> 975 bytes .../browser_icons/file_type_vitest-24.png | Bin 0 -> 752 bytes .../browser_icons/file_type_vlang-24.png | Bin 0 -> 751 bytes .../browser_icons/file_type_volt-24.png | Bin 0 -> 521 bytes .../browser_icons/file_type_vscode-24.png | Bin 0 -> 820 bytes .../file_type_vscode-insiders-24.png | Bin 0 -> 777 bytes .../browser_icons/file_type_vscode2-24.png | Bin 0 -> 680 bytes .../browser_icons/file_type_vscode3-24.png | Bin 0 -> 649 bytes .../browser_icons/file_type_vsix-24.png | Bin 0 -> 307 bytes .../file_type_vsixmanifest-24.png | Bin 0 -> 875 bytes .../browser_icons/file_type_vue-24.png | Bin 0 -> 835 bytes .../browser_icons/file_type_vueconfig-24.png | Bin 0 -> 1051 bytes .../browser_icons/file_type_wallaby-24.png | Bin 0 -> 205 bytes .../browser_icons/file_type_wally-24.png | Bin 0 -> 1367 bytes .../browser_icons/file_type_wasm-24.png | Bin 0 -> 704 bytes .../file_type_watchmanconfig-24.png | Bin 0 -> 1164 bytes .../browser_icons/file_type_webpack-24.png | Bin 0 -> 990 bytes .../browser_icons/file_type_wenyan-24.png | Bin 0 -> 583 bytes .../browser_icons/file_type_wercker-24.png | Bin 0 -> 849 bytes .../browser_icons/file_type_wgsl-24.png | Bin 0 -> 587 bytes .../browser_icons/file_type_wikitext-24.png | Bin 0 -> 823 bytes .../browser_icons/file_type_windi-24.png | Bin 0 -> 945 bytes .../browser_icons/file_type_wolfram-24.png | Bin 0 -> 1090 bytes .../browser_icons/file_type_word-24.png | Bin 0 -> 745 bytes .../browser_icons/file_type_word2-24.png | Bin 0 -> 846 bytes .../browser_icons/file_type_wpml-24.png | Bin 0 -> 849 bytes .../browser_icons/file_type_wurst-24.png | Bin 0 -> 856 bytes .../browser_icons/file_type_wxml-24.png | Bin 0 -> 737 bytes .../browser_icons/file_type_wxss-24.png | Bin 0 -> 729 bytes .../browser_icons/file_type_xcode-24.png | Bin 0 -> 1103 bytes .../browser_icons/file_type_xfl-24.png | Bin 0 -> 814 bytes .../browser_icons/file_type_xib-24.png | Bin 0 -> 1027 bytes .../browser_icons/file_type_xliff-24.png | Bin 0 -> 431 bytes .../browser_icons/file_type_xmake-24.png | Bin 0 -> 989 bytes .../browser_icons/file_type_xml-24.png | Bin 0 -> 602 bytes .../browser_icons/file_type_xquery-24.png | Bin 0 -> 760 bytes .../browser_icons/file_type_xsl-24.png | Bin 0 -> 593 bytes .../browser_icons/file_type_yacc-24.png | Bin 0 -> 826 bytes .../browser_icons/file_type_yaml-24.png | Bin 0 -> 464 bytes .../browser_icons/file_type_yamllint-24.png | Bin 0 -> 673 bytes .../browser_icons/file_type_yandex-24.png | Bin 0 -> 592 bytes .../browser_icons/file_type_yang-24.png | Bin 0 -> 1005 bytes .../browser_icons/file_type_yarn-24.png | Bin 0 -> 664 bytes .../browser_icons/file_type_yeoman-24.png | Bin 0 -> 1556 bytes .../browser_icons/file_type_zeit-24.png | Bin 0 -> 514 bytes .../browser_icons/file_type_zig-24.png | Bin 0 -> 599 bytes .../browser_icons/file_type_zip-24.png | Bin 0 -> 667 bytes .../browser_icons/file_type_zip2-24.png | Bin 0 -> 1242 bytes .../browser_icons/folder_type_android-24.png | Bin 0 -> 630 bytes .../folder_type_android_opened-24.png | Bin 0 -> 781 bytes .../browser_icons/folder_type_api-24.png | Bin 0 -> 898 bytes .../folder_type_api_opened-24.png | Bin 0 -> 1034 bytes .../browser_icons/folder_type_app-24.png | Bin 0 -> 739 bytes .../folder_type_app_opened-24.png | Bin 0 -> 861 bytes .../browser_icons/folder_type_arangodb-24.png | Bin 0 -> 871 bytes .../folder_type_arangodb_opened-24.png | Bin 0 -> 986 bytes .../browser_icons/folder_type_asset-24.png | Bin 0 -> 796 bytes .../folder_type_asset_opened-24.png | Bin 0 -> 918 bytes .../browser_icons/folder_type_audio-24.png | Bin 0 -> 652 bytes .../folder_type_audio_opened-24.png | Bin 0 -> 789 bytes .../browser_icons/folder_type_aurelia-24.png | Bin 0 -> 1002 bytes .../folder_type_aurelia_opened-24.png | Bin 0 -> 1163 bytes .../browser_icons/folder_type_aws-24.png | Bin 0 -> 739 bytes .../folder_type_aws_opened-24.png | Bin 0 -> 884 bytes .../browser_icons/folder_type_azure-24.png | Bin 0 -> 801 bytes .../folder_type_azure_opened-24.png | Bin 0 -> 926 bytes .../folder_type_azurepipelines-24.png | Bin 0 -> 804 bytes .../folder_type_azurepipelines_opened-24.png | Bin 0 -> 923 bytes .../browser_icons/folder_type_binary-24.png | Bin 0 -> 748 bytes .../folder_type_binary_opened-24.png | Bin 0 -> 851 bytes .../browser_icons/folder_type_bloc-24.png | Bin 0 -> 706 bytes .../folder_type_bloc_opened-24.png | Bin 0 -> 788 bytes .../folder_type_blueprint-24.png | Bin 0 -> 874 bytes .../folder_type_blueprint_opened-24.png | Bin 0 -> 1026 bytes .../browser_icons/folder_type_bot-24.png | Bin 0 -> 644 bytes .../folder_type_bot_opened-24.png | Bin 0 -> 787 bytes .../browser_icons/folder_type_bower-24.png | Bin 0 -> 919 bytes .../folder_type_bower_opened-24.png | Bin 0 -> 1051 bytes .../folder_type_buildkite-24.png | Bin 0 -> 656 bytes .../folder_type_buildkite_opened-24.png | Bin 0 -> 783 bytes .../browser_icons/folder_type_cake-24.png | Bin 0 -> 893 bytes .../folder_type_cake_opened-24.png | Bin 0 -> 1021 bytes .../folder_type_certificate-24.png | Bin 0 -> 521 bytes .../folder_type_certificate_opened-24.png | Bin 0 -> 674 bytes .../browser_icons/folder_type_chef-24.png | Bin 0 -> 1086 bytes .../folder_type_chef_opened-24.png | Bin 0 -> 1248 bytes .../browser_icons/folder_type_circleci-24.png | Bin 0 -> 899 bytes .../folder_type_circleci_opened-24.png | Bin 0 -> 984 bytes .../browser_icons/folder_type_cli-24.png | Bin 0 -> 510 bytes .../folder_type_cli_opened-24.png | Bin 0 -> 619 bytes .../browser_icons/folder_type_client-24.png | Bin 0 -> 670 bytes .../folder_type_client_opened-24.png | Bin 0 -> 792 bytes .../browser_icons/folder_type_cmake-24.png | Bin 0 -> 800 bytes .../folder_type_cmake_opened-24.png | Bin 0 -> 973 bytes .../browser_icons/folder_type_common-24.png | Bin 0 -> 792 bytes .../folder_type_common_opened-24.png | Bin 0 -> 875 bytes .../folder_type_component-24.png | Bin 0 -> 891 bytes .../folder_type_component_opened-24.png | Bin 0 -> 1001 bytes .../browser_icons/folder_type_composer-24.png | Bin 0 -> 1007 bytes .../folder_type_composer_opened-24.png | Bin 0 -> 1138 bytes .../browser_icons/folder_type_config-24.png | Bin 0 -> 755 bytes .../folder_type_config_opened-24.png | Bin 0 -> 863 bytes .../folder_type_controller-24.png | Bin 0 -> 880 bytes .../folder_type_controller_opened-24.png | Bin 0 -> 1026 bytes .../browser_icons/folder_type_coverage-24.png | Bin 0 -> 689 bytes .../folder_type_coverage_opened-24.png | Bin 0 -> 797 bytes .../browser_icons/folder_type_css-24.png | Bin 0 -> 860 bytes .../folder_type_css_opened-24.png | Bin 0 -> 982 bytes .../browser_icons/folder_type_cubit-24.png | Bin 0 -> 789 bytes .../folder_type_cubit_opened-24.png | Bin 0 -> 881 bytes .../browser_icons/folder_type_cypress-24.png | Bin 0 -> 1018 bytes .../folder_type_cypress_opened-24.png | Bin 0 -> 1122 bytes .../browser_icons/folder_type_dapr-24.png | Bin 0 -> 484 bytes .../folder_type_dapr_opened-24.png | Bin 0 -> 639 bytes .../browser_icons/folder_type_datadog-24.png | Bin 0 -> 994 bytes .../folder_type_datadog_opened-24.png | Bin 0 -> 1123 bytes .../browser_icons/folder_type_db-24.png | Bin 0 -> 794 bytes .../folder_type_db_opened-24.png | Bin 0 -> 877 bytes .../browser_icons/folder_type_debian-24.png | Bin 0 -> 755 bytes .../folder_type_debian_opened-24.png | Bin 0 -> 904 bytes .../folder_type_dependabot-24.png | Bin 0 -> 763 bytes .../folder_type_dependabot_opened-24.png | Bin 0 -> 847 bytes .../folder_type_devcontainer-24.png | Bin 0 -> 790 bytes .../folder_type_devcontainer_opened-24.png | Bin 0 -> 905 bytes .../browser_icons/folder_type_dist-24.png | Bin 0 -> 780 bytes .../folder_type_dist_opened-24.png | Bin 0 -> 881 bytes .../browser_icons/folder_type_docker-24.png | Bin 0 -> 674 bytes .../folder_type_docker_opened-24.png | Bin 0 -> 812 bytes .../browser_icons/folder_type_docs-24.png | Bin 0 -> 705 bytes .../folder_type_docs_opened-24.png | Bin 0 -> 823 bytes .../browser_icons/folder_type_e2e-24.png | Bin 0 -> 705 bytes .../folder_type_e2e_opened-24.png | Bin 0 -> 851 bytes .../folder_type_elasticbeanstalk-24.png | Bin 0 -> 676 bytes ...folder_type_elasticbeanstalk_opened-24.png | Bin 0 -> 791 bytes .../browser_icons/folder_type_electron-24.png | Bin 0 -> 870 bytes .../folder_type_electron_opened-24.png | Bin 0 -> 977 bytes .../browser_icons/folder_type_expo-24.png | Bin 0 -> 864 bytes .../folder_type_expo_opened-24.png | Bin 0 -> 1000 bytes .../browser_icons/folder_type_favicon-24.png | Bin 0 -> 937 bytes .../folder_type_favicon_opened-24.png | Bin 0 -> 1021 bytes .../browser_icons/folder_type_flow-24.png | Bin 0 -> 845 bytes .../folder_type_flow_opened-24.png | Bin 0 -> 955 bytes .../browser_icons/folder_type_fonts-24.png | Bin 0 -> 761 bytes .../folder_type_fonts_opened-24.png | Bin 0 -> 873 bytes .../browser_icons/folder_type_gcp-24.png | Bin 0 -> 904 bytes .../folder_type_gcp_opened-24.png | Bin 0 -> 1006 bytes .../browser_icons/folder_type_git-24.png | Bin 0 -> 747 bytes .../folder_type_git_opened-24.png | Bin 0 -> 891 bytes .../browser_icons/folder_type_github-24.png | Bin 0 -> 823 bytes .../folder_type_github_opened-24.png | Bin 0 -> 907 bytes .../browser_icons/folder_type_gitlab-24.png | Bin 0 -> 782 bytes .../folder_type_gitlab_opened-24.png | Bin 0 -> 907 bytes .../browser_icons/folder_type_gradle-24.png | Bin 0 -> 806 bytes .../folder_type_gradle_opened-24.png | Bin 0 -> 839 bytes .../browser_icons/folder_type_graphql-24.png | Bin 0 -> 781 bytes .../folder_type_graphql_opened-24.png | Bin 0 -> 929 bytes .../browser_icons/folder_type_grunt-24.png | Bin 0 -> 959 bytes .../folder_type_grunt_opened-24.png | Bin 0 -> 1065 bytes .../browser_icons/folder_type_gulp-24.png | Bin 0 -> 581 bytes .../folder_type_gulp_opened-24.png | Bin 0 -> 731 bytes .../browser_icons/folder_type_haxelib-24.png | Bin 0 -> 873 bytes .../folder_type_haxelib_opened-24.png | Bin 0 -> 991 bytes .../browser_icons/folder_type_helper-24.png | Bin 0 -> 892 bytes .../folder_type_helper_opened-24.png | Bin 0 -> 1017 bytes .../browser_icons/folder_type_hook-24.png | Bin 0 -> 695 bytes .../folder_type_hook_opened-24.png | Bin 0 -> 787 bytes .../browser_icons/folder_type_husky-24.png | Bin 0 -> 785 bytes .../folder_type_husky_opened-24.png | Bin 0 -> 865 bytes .../browser_icons/folder_type_idea-24.png | Bin 0 -> 795 bytes .../folder_type_idea_opened-24.png | Bin 0 -> 927 bytes .../browser_icons/folder_type_images-24.png | Bin 0 -> 647 bytes .../folder_type_images_opened-24.png | Bin 0 -> 749 bytes .../browser_icons/folder_type_include-24.png | Bin 0 -> 663 bytes .../folder_type_include_opened-24.png | Bin 0 -> 755 bytes .../folder_type_interfaces-24.png | Bin 0 -> 801 bytes .../folder_type_interfaces_opened-24.png | Bin 0 -> 937 bytes .../browser_icons/folder_type_ios-24.png | Bin 0 -> 611 bytes .../folder_type_ios_opened-24.png | Bin 0 -> 695 bytes .../browser_icons/folder_type_js-24.png | Bin 0 -> 724 bytes .../folder_type_js_opened-24.png | Bin 0 -> 845 bytes .../browser_icons/folder_type_json-24.png | Bin 0 -> 691 bytes .../folder_type_json_official-24.png | Bin 0 -> 845 bytes .../folder_type_json_official_opened-24.png | Bin 0 -> 922 bytes .../folder_type_json_opened-24.png | Bin 0 -> 825 bytes .../folder_type_kubernetes-24.png | Bin 0 -> 1015 bytes .../folder_type_kubernetes_opened-24.png | Bin 0 -> 1130 bytes .../browser_icons/folder_type_less-24.png | Bin 0 -> 716 bytes .../folder_type_less_opened-24.png | Bin 0 -> 864 bytes .../browser_icons/folder_type_library-24.png | Bin 0 -> 793 bytes .../folder_type_library_opened-24.png | Bin 0 -> 969 bytes .../folder_type_light_cypress-24.png | Bin 0 -> 1027 bytes .../folder_type_light_cypress_opened-24.png | Bin 0 -> 1135 bytes .../folder_type_light_electron-24.png | Bin 0 -> 888 bytes .../folder_type_light_electron_opened-24.png | Bin 0 -> 1023 bytes .../folder_type_light_expo-24.png | Bin 0 -> 858 bytes .../folder_type_light_expo_opened-24.png | Bin 0 -> 999 bytes .../folder_type_light_fonts-24.png | Bin 0 -> 704 bytes .../folder_type_light_fonts_opened-24.png | Bin 0 -> 826 bytes .../folder_type_light_gradle-24.png | Bin 0 -> 813 bytes .../folder_type_light_gradle_opened-24.png | Bin 0 -> 948 bytes .../folder_type_light_meteor-24.png | Bin 0 -> 744 bytes .../folder_type_light_meteor_opened-24.png | Bin 0 -> 937 bytes .../folder_type_light_mysql-24.png | Bin 0 -> 703 bytes .../folder_type_light_mysql_opened-24.png | Bin 0 -> 845 bytes .../folder_type_light_node-24.png | Bin 0 -> 1018 bytes .../folder_type_light_node_opened-24.png | Bin 0 -> 1128 bytes .../folder_type_light_redux-24.png | Bin 0 -> 748 bytes .../folder_type_light_redux_opened-24.png | Bin 0 -> 927 bytes .../folder_type_light_sass-24.png | Bin 0 -> 903 bytes .../folder_type_light_sass_opened-24.png | Bin 0 -> 1024 bytes .../browser_icons/folder_type_linux-24.png | Bin 0 -> 817 bytes .../folder_type_linux_opened-24.png | Bin 0 -> 944 bytes .../browser_icons/folder_type_locale-24.png | Bin 0 -> 791 bytes .../folder_type_locale_opened-24.png | Bin 0 -> 940 bytes .../browser_icons/folder_type_log-24.png | Bin 0 -> 680 bytes .../folder_type_log_opened-24.png | Bin 0 -> 788 bytes .../browser_icons/folder_type_macos-24.png | Bin 0 -> 723 bytes .../folder_type_macos_opened-24.png | Bin 0 -> 839 bytes .../browser_icons/folder_type_mariadb-24.png | Bin 0 -> 727 bytes .../folder_type_mariadb_opened-24.png | Bin 0 -> 847 bytes .../browser_icons/folder_type_maven-24.png | Bin 0 -> 781 bytes .../folder_type_maven_opened-24.png | Bin 0 -> 910 bytes .../folder_type_memcached-24.png | Bin 0 -> 949 bytes .../folder_type_memcached_opened-24.png | Bin 0 -> 1072 bytes .../browser_icons/folder_type_meteor-24.png | Bin 0 -> 902 bytes .../folder_type_meteor_opened-24.png | Bin 0 -> 999 bytes .../folder_type_middleware-24.png | Bin 0 -> 719 bytes .../folder_type_middleware_opened-24.png | Bin 0 -> 839 bytes .../browser_icons/folder_type_minikube-24.png | Bin 0 -> 974 bytes .../folder_type_minikube_opened-24.png | Bin 0 -> 1112 bytes .../browser_icons/folder_type_mjml-24.png | Bin 0 -> 739 bytes .../folder_type_mjml_opened-24.png | Bin 0 -> 866 bytes .../browser_icons/folder_type_mock-24.png | Bin 0 -> 778 bytes .../folder_type_mock_opened-24.png | Bin 0 -> 924 bytes .../browser_icons/folder_type_model-24.png | Bin 0 -> 925 bytes .../folder_type_model_opened-24.png | Bin 0 -> 1056 bytes .../browser_icons/folder_type_module-24.png | Bin 0 -> 977 bytes .../folder_type_module_opened-24.png | Bin 0 -> 1087 bytes .../browser_icons/folder_type_mongodb-24.png | Bin 0 -> 578 bytes .../folder_type_mongodb_opened-24.png | Bin 0 -> 719 bytes .../browser_icons/folder_type_mysql-24.png | Bin 0 -> 713 bytes .../folder_type_mysql_opened-24.png | Bin 0 -> 846 bytes .../browser_icons/folder_type_next-24.png | Bin 0 -> 865 bytes .../folder_type_next_opened-24.png | Bin 0 -> 951 bytes .../browser_icons/folder_type_nginx-24.png | Bin 0 -> 756 bytes .../folder_type_nginx_opened-24.png | Bin 0 -> 840 bytes .../browser_icons/folder_type_nix-24.png | Bin 0 -> 930 bytes .../folder_type_nix_opened-24.png | Bin 0 -> 1055 bytes .../browser_icons/folder_type_node-24.png | Bin 0 -> 833 bytes .../folder_type_node_opened-24.png | Bin 0 -> 908 bytes .../folder_type_notification-24.png | Bin 0 -> 742 bytes .../folder_type_notification_opened-24.png | Bin 0 -> 877 bytes .../browser_icons/folder_type_nuget-24.png | Bin 0 -> 914 bytes .../folder_type_nuget_opened-24.png | Bin 0 -> 1031 bytes .../browser_icons/folder_type_nuxt-24.png | Bin 0 -> 702 bytes .../folder_type_nuxt_opened-24.png | Bin 0 -> 897 bytes .../browser_icons/folder_type_package-24.png | Bin 0 -> 607 bytes .../folder_type_package_opened-24.png | Bin 0 -> 716 bytes .../browser_icons/folder_type_paket-24.png | Bin 0 -> 823 bytes .../folder_type_paket_opened-24.png | Bin 0 -> 916 bytes .../browser_icons/folder_type_php-24.png | Bin 0 -> 779 bytes .../folder_type_php_opened-24.png | Bin 0 -> 924 bytes .../folder_type_platformio-24.png | Bin 0 -> 814 bytes .../folder_type_platformio_opened-24.png | Bin 0 -> 969 bytes .../browser_icons/folder_type_plugin-24.png | Bin 0 -> 639 bytes .../folder_type_plugin_opened-24.png | Bin 0 -> 742 bytes .../browser_icons/folder_type_prisma-24.png | Bin 0 -> 820 bytes .../folder_type_prisma_opened-24.png | Bin 0 -> 957 bytes .../browser_icons/folder_type_private-24.png | Bin 0 -> 816 bytes .../folder_type_private_opened-24.png | Bin 0 -> 967 bytes .../browser_icons/folder_type_public-24.png | Bin 0 -> 799 bytes .../folder_type_public_opened-24.png | Bin 0 -> 942 bytes .../browser_icons/folder_type_python-24.png | Bin 0 -> 741 bytes .../folder_type_python_opened-24.png | Bin 0 -> 892 bytes .../browser_icons/folder_type_ravendb-24.png | Bin 0 -> 827 bytes .../folder_type_ravendb_opened-24.png | Bin 0 -> 964 bytes .../browser_icons/folder_type_redis-24.png | Bin 0 -> 983 bytes .../folder_type_redis_opened-24.png | Bin 0 -> 1103 bytes .../browser_icons/folder_type_redux-24.png | Bin 0 -> 739 bytes .../folder_type_redux_opened-24.png | Bin 0 -> 873 bytes .../browser_icons/folder_type_route-24.png | Bin 0 -> 928 bytes .../folder_type_route_opened-24.png | Bin 0 -> 1065 bytes .../browser_icons/folder_type_sass-24.png | Bin 0 -> 820 bytes .../folder_type_sass_opened-24.png | Bin 0 -> 924 bytes .../browser_icons/folder_type_script-24.png | Bin 0 -> 733 bytes .../folder_type_script_opened-24.png | Bin 0 -> 847 bytes .../browser_icons/folder_type_server-24.png | Bin 0 -> 628 bytes .../folder_type_server_opened-24.png | Bin 0 -> 719 bytes .../browser_icons/folder_type_services-24.png | Bin 0 -> 862 bytes .../folder_type_services_opened-24.png | Bin 0 -> 1003 bytes .../browser_icons/folder_type_shared-24.png | Bin 0 -> 794 bytes .../folder_type_shared_opened-24.png | Bin 0 -> 877 bytes .../browser_icons/folder_type_src-24.png | Bin 0 -> 732 bytes .../folder_type_src_opened-24.png | Bin 0 -> 871 bytes .../browser_icons/folder_type_sso-24.png | Bin 0 -> 771 bytes .../folder_type_sso_opened-24.png | Bin 0 -> 893 bytes .../browser_icons/folder_type_story-24.png | Bin 0 -> 680 bytes .../folder_type_story_opened-24.png | Bin 0 -> 787 bytes .../browser_icons/folder_type_style-24.png | Bin 0 -> 857 bytes .../folder_type_style_opened-24.png | Bin 0 -> 968 bytes .../browser_icons/folder_type_tauri-24.png | Bin 0 -> 939 bytes .../folder_type_tauri_opened-24.png | Bin 0 -> 1046 bytes .../browser_icons/folder_type_temp-24.png | Bin 0 -> 837 bytes .../folder_type_temp_opened-24.png | Bin 0 -> 950 bytes .../browser_icons/folder_type_template-24.png | Bin 0 -> 701 bytes .../folder_type_template_opened-24.png | Bin 0 -> 811 bytes .../browser_icons/folder_type_test-24.png | Bin 0 -> 822 bytes .../folder_type_test_opened-24.png | Bin 0 -> 950 bytes .../browser_icons/folder_type_theme-24.png | Bin 0 -> 904 bytes .../folder_type_theme_opened-24.png | Bin 0 -> 1037 bytes .../browser_icons/folder_type_tools-24.png | Bin 0 -> 880 bytes .../folder_type_tools_opened-24.png | Bin 0 -> 1082 bytes .../browser_icons/folder_type_travis-24.png | Bin 0 -> 1073 bytes .../folder_type_travis_opened-24.png | Bin 0 -> 1179 bytes .../browser_icons/folder_type_trunk-24.png | Bin 0 -> 787 bytes .../folder_type_trunk_opened-24.png | Bin 0 -> 892 bytes .../folder_type_typescript-24.png | Bin 0 -> 766 bytes .../folder_type_typescript_opened-24.png | Bin 0 -> 956 bytes .../browser_icons/folder_type_typings-24.png | Bin 0 -> 776 bytes .../browser_icons/folder_type_typings2-24.png | Bin 0 -> 702 bytes .../folder_type_typings2_opened-24.png | Bin 0 -> 841 bytes .../folder_type_typings_opened-24.png | Bin 0 -> 933 bytes .../browser_icons/folder_type_vagrant-24.png | Bin 0 -> 940 bytes .../folder_type_vagrant_opened-24.png | Bin 0 -> 1029 bytes .../browser_icons/folder_type_video-24.png | Bin 0 -> 724 bytes .../folder_type_video_opened-24.png | Bin 0 -> 886 bytes .../browser_icons/folder_type_view-24.png | Bin 0 -> 813 bytes .../folder_type_view_opened-24.png | Bin 0 -> 916 bytes .../browser_icons/folder_type_vs-24.png | Bin 0 -> 778 bytes .../browser_icons/folder_type_vs2-24.png | Bin 0 -> 773 bytes .../folder_type_vs2_opened-24.png | Bin 0 -> 857 bytes .../folder_type_vs_opened-24.png | Bin 0 -> 915 bytes .../browser_icons/folder_type_vscode-24.png | Bin 0 -> 775 bytes .../browser_icons/folder_type_vscode2-24.png | Bin 0 -> 723 bytes .../folder_type_vscode2_opened-24.png | Bin 0 -> 823 bytes .../browser_icons/folder_type_vscode3-24.png | Bin 0 -> 739 bytes .../folder_type_vscode3_opened-24.png | Bin 0 -> 826 bytes .../folder_type_vscode_opened-24.png | Bin 0 -> 893 bytes .../folder_type_vscode_test-24.png | Bin 0 -> 825 bytes .../folder_type_vscode_test2-24.png | Bin 0 -> 790 bytes .../folder_type_vscode_test2_opened-24.png | Bin 0 -> 862 bytes .../folder_type_vscode_test3-24.png | Bin 0 -> 774 bytes .../folder_type_vscode_test3_opened-24.png | Bin 0 -> 841 bytes .../folder_type_vscode_test_opened-24.png | Bin 0 -> 914 bytes .../browser_icons/folder_type_webpack-24.png | Bin 0 -> 866 bytes .../folder_type_webpack_opened-24.png | Bin 0 -> 939 bytes .../browser_icons/folder_type_windows-24.png | Bin 0 -> 534 bytes .../folder_type_windows_opened-24.png | Bin 0 -> 650 bytes .../browser_icons/folder_type_www-24.png | Bin 0 -> 1016 bytes .../folder_type_www_opened-24.png | Bin 0 -> 1151 bytes .../browser_icons/folder_type_yarn-24.png | Bin 0 -> 514 bytes .../folder_type_yarn_opened-24.png | Bin 0 -> 644 bytes .../resources/img/connection_icon-dark.svg | 56 ------------------ .../app/resources/img/connection_icon.svg | 56 ------------------ .../io/xpipe/app/resources/img/db_icon.png | Bin 11533 -> 0 bytes .../io/xpipe/app/resources/img/file_icon.png | Bin 2756 -> 0 bytes .../xpipe/app/resources/img/folder_closed.svg | 43 -------------- .../xpipe/app/resources/img/folder_open.svg | 21 ------- .../ext/base/browser/FileTypeAction.java | 4 +- .../io/xpipe/ext/base/browser/JarAction.java | 6 +- .../xpipe/ext/base/browser/JavapAction.java | 6 +- .../xpipe/ext/base/browser/UnzipAction.java | 6 +- 1230 files changed, 89 insertions(+), 272 deletions(-) rename app/src/main/java/io/xpipe/app/browser/icon/{DirectoryType.java => BrowserIconDirectoryType.java} (92%) rename app/src/main/java/io/xpipe/app/browser/icon/{FileType.java => BrowserIconFileType.java} (90%) create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/default_file-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/default_folder-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/default_folder_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/default_root_folder-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/default_root_folder_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_access-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_access2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_actionscript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_actionscript2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ada-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_advpl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affectscript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affinitydesigner-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affinityphoto-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affinitypublisher-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ai-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ai2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_al-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_al_dal-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_allcontributors-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_angular-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ansible-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_antlr-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_anyscript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_apache-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_apex-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_api_extractor-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_apib-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_apib2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_apl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_applescript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_appscript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_appsemble-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_appveyor-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_arduino-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_asciidoc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_asp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_aspx-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_assembly-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_astro-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_astroconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ats-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_audio-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_aurelia-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_autohotkey-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_autoit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_avif-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_avro-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_awk-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_aws-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_azure-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_azurepipelines-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_babel-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_babel2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ballerina-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bat-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bats-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazaar-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazel-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazel_ignore-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazel_version-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_befunge-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bicep-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_biml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_binary-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bitbucketpipeline-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bithound-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_blade-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_blitzbasic-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bolt-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bosque-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bower-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bower2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_browserslist-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_buckbuild-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bun-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bundler-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bunfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c3-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c_al-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cabal-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_caddy-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cake-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cakephp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_capacitor-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cargo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_casc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cddl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cert-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ceylon-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cf-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cf2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfc2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfm-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfm2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cheader-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_chef-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_chef_cookbook-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_circleci-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_class-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_clojure-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_clojurescript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cloudfoundry-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cmake-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cobol-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codacy-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codeclimate-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codecov-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codekit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codeowners-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codeql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_coffeelint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_coffeescript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_commitizen-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_commitlint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_compass-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_composer-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_conan-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_conda-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_config-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_confluence-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_coveralls-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cpp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cpp2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cpp3-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cppheader-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_crowdin-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_crystal-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_csharp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_csharp2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cspell-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_csproj-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_css-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_csscomb-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_csslint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cssmap-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cucumber-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cuda-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cvs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cypress-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cypress_spec-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cython-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dal-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_darcs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dartlang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dartlang_generated-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dartlang_ignore-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_datadog-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_db-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_delphi-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_deno-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dependabot-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dependencies-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_devcontainer-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dhall-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_diff-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_django-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dlang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docker-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docker2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dockertest-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dockertest2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docpad-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docz-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dojo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_doppler-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dotjs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_doxygen-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_drawio-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_drone-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_drools-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dustjs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dvc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dylan-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_earthly-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eas-metadata-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_edge-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_edge2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_editorconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eex-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ejs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_elastic-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_elasticbeanstalk-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eleventy-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eleventy2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_elixir-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_elm-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_elm2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_emacs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ember-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ensime-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eps-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_erb-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_erlang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_erlang2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_esbuild-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eslint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eslint2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_esphome-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_excel-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_excel2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_expo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_falcon-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fantasticon-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fauna-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_favicon-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fbx-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_firebase-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_firebasehosting-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_firestore-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fitbit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fla-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flareact-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flash-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_floobits-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flow-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flutter-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flutter_package-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_font-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_formkit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fortran-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fossa-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fossil-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_freemarker-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fsharp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fsharp2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fsproj-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fthtml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_funding-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fusebox-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_galen-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_galen2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gamemaker-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gamemaker2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gamemaker81-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gatsby-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gcloud-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gcode-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gdscript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_genstat-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_git-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_git2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gitlab-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gitpod-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_glide-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_glitter-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_glsl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_glyphs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gnu-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gnuplot-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_aqua-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_black-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_fuchsia-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_gopher-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_lightblue-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_package-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_white-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_work-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_yellow-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_goctl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_godot-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gradle-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gradle2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_graphql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_graphql_config-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_graphviz-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_greenkeeper-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gridsome-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_groovy-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_groovy2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_grunt-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gulp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_handlebars-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_handlebars2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_harbour-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hardhat-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hashicorp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haskell-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haskell2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haxe-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haxecheckstyle-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haxedevelop-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_helix-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_helm-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hjson-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hlsl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_homeassistant-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_horusec-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_host-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_html-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_htmlhint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_http-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hunspell-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_husky-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hy-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hygen-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hypr-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_icl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_idris-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_idrisbin-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_idrispkg-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_image-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_imba-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_inc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_infopath-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_informix-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ini-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ink-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_innosetup-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_io-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_iodine-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ionic-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jake-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_janet-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jar-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jasmine-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_java-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jbuilder-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jekyll-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jenkins-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jest-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jest_snapshot-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jinja-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jpm-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_js_official-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsbeautify-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jscpd-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jshint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsmap-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_json-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_json2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_json5-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_json_official-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsonld-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsonnet-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jss-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_julia-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_julia2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jupyter-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_k-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_karma-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_key-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kitchenci-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kite-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kivy-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kos-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kotlin-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kusto-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_latino-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_layout-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lerna-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_less-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lex-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_license-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_licensebat-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_actionscript2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_ada-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_apl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_babel-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_babel2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_cabal-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_circleci-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_cloudfoundry-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_codacy-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_codeclimate-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_codeowners-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_config-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_crystal-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_cypress-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_cypress_spec-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_db-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_deno-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_dhall-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_docpad-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_drone-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_eas-metadata-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_eleventy-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_eleventy2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_esphome-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_expo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_firebasehosting-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_fla-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_font-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_gamemaker2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_gradle-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_hashicorp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_hjson-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_ini-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_io-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_jsconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_jsmap-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_json-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_json5-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_jsonld-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_kite-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_lerna-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_mailing-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_mdx-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_mlang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_mustache-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_next-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_nim-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_nx-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_objidconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_openHAB-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_pcl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_pnpm-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_prettier-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_prisma-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_purescript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_quasar-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_razzle-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_rehype-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_remark-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_replit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_retext-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_rome-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_rubocop-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_rust-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_rust_toolchain-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_shaderlab-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_solidity-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_stylelint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_stylus-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_symfony-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_systemd-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_systemverilog-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_testcafe-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_testjs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_tex-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_todo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_toit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_toml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_tree-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_turbo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_unibeautify-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_vash-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_vsix-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_vsixmanifest-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_xfl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_yaml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_zeit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lighthouse-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lilypond-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lime-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lintstagedrc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_liquid-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lisp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_livescript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lnk-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_locale-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_log-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lolcode-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lsl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lua-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_luau-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lync-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mailing-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_manifest-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_manifest_bak-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_manifest_skip-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_map-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mariadb-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_markdown-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_markdownlint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_markdownlint_ignore-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_marko-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_markojs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_master-co-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_matlab-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_maven-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_maxscript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_maya-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mdx-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mediawiki-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mercurial-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_meson-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_meteor-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mjml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mlang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mocha-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_modernizr-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mojolicious-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_moleculer-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mondoo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mongo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_monotone-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_motif-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mson-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mustache-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mysql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ndst-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nearly-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_adapter_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_adapter_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_controller_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_controller_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_decorator_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_decorator_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_filter_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_filter_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_gateway_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_gateway_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_guard_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_guard_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_interceptor_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_interceptor_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_middleware_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_middleware_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_module_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_module_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_pipe_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_pipe_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_service_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_service_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nestjs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_netlify-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_next-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_css-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_dart-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_html-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_js2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_less-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_sass-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_scss-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_ts2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_controller_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_controller_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_dart-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_js2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_ts2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_guard_dart-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_guard_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_guard_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_interceptor_dart-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_interceptor_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_interceptor_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_module_dart-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_module_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_module_js2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_module_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_module_ts2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_pipe_dart-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_pipe_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_pipe_js2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_pipe_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_pipe_ts2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_dart-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_js2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_ts2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_dart-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_js2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_ts2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_dart-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_js2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_ts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_ts2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_tailwind-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nginx-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nim-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nimble-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ninja-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nix-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_njsproj-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_noc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_node-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_node2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nodemon-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_npm-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nsi-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nsri-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nsri-integrity-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nuget-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_numpy-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nunjucks-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nuxt-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nx-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nyc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_objectivec-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_objectivecpp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_objidconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ocaml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ogone-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_onenote-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_openHAB-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_opencl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_openscad-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_org-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_outlook-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ovpn-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_package-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_paket-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_patch-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pcl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pddl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pddl_happenings-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pddl_plan-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pdf-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pdf2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_peeky-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_perl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_perl2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_perl6-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pgsql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_photoshop-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_photoshop2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_php-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_php2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_php3-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_phpcsfixer-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_phpstan-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_phpunit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_phraseapp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pine-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pip-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pipeline-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_plantuml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_platformio-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_playwright-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_plsql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_plsql_package-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_plsql_package_body-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_plsql_package_header-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_plsql_package_spec-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pm2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pnpm-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_poedit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_poetry-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_polymer-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pony-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_postcss-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_postcssconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powerpoint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powerpoint2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell_format-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell_psd-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell_psd2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell_psm-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell_psm2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell_types-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_preact-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_precommit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_prettier-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_prisma-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_processinglang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_procfile-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_progress-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_prolog-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_prometheus-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_protobuf-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_protractor-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_publisher-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pug-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pulumi-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_puppet-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_purescript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pyret-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_python-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pythowo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pytyped-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pyup-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_q-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_qbs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_qlikview-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_qml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_qmldir-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_qsharp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_quasar-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_r-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_racket-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rails-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rake-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_raml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_razor-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_razzle-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_reactjs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_reacttemplate-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_reactts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_reason-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_red-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_registry-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rego-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rehype-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_remark-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_renovate-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_replit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rescript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rest-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_retext-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rexx-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_riot-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rmd-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_robotframework-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_robots-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rollup-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rome-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ron-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rproj-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rspec-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rubocop-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ruby-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rust-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rust_toolchain-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sails-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_saltstack-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_san-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sapphire_framework_cli-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sas-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sass-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sbt-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_scala-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_scilab-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_script-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_scss-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_scss2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sdlang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sentry-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sequelize-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_serverless-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_shaderlab-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_shell-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_shellcheck-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_shuttle-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_silverstripe-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_siyuan-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sketch-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_skipper-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_slang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_slashup-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_slice-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_slim-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sln-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sln2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_smarty-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_snapcraft-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_snort-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_snyk-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_solidarity-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_solidity-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_source-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_spacengine-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sparql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sqf-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sqlite-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_squirrel-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sss-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stan-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stata-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stencil-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_storyboard-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_storybook-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stryker-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stylable-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_style-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_styled-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stylelint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stylish_haskell-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stylus-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_subversion-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_svelte-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_svg-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_swagger-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_swift-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_swig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_symfony-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_systemd-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_systemverilog-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_t4tt-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tailwind-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tauri-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tcl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_teal-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tera-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_terraform-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_test-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_testcafe-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_testjs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_testts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tex-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_text-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_textile-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tfs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tiltfile-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_todo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_toit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_toml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tox-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_travis-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tree-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tres-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_truffle-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_trunk-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tscn-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tsconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tsconfig_official-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tslint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tt-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ttcn-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tuc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_turbo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_twig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typedoc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescript_official-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescriptdef-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescriptdef_official-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typo3-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_unibeautify-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_unison-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_unlicense-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vagrant-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vala-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vanilla_extract-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vapi-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vapor-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vash-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vb-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vba-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vbhtml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vbproj-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vcxproj-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_velocity-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_verilog-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vhdl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_video-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_view-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vim-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vite-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vitest-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vlang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_volt-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vscode-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vscode-insiders-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vscode2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vscode3-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vsix-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vsixmanifest-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vue-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vueconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wallaby-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wally-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wasm-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_watchmanconfig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_webpack-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wenyan-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wercker-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wgsl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wikitext-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_windi-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wolfram-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_word-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_word2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wpml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wurst-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wxml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wxss-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xcode-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xfl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xib-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xliff-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xmake-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xquery-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xsl-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yacc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yaml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yamllint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yandex-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yang-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yarn-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yeoman-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_zeit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_zig-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_zip-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_zip2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_android-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_android_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_api-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_api_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_app-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_app_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_arangodb-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_arangodb_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_asset-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_asset_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_audio-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_audio_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aurelia-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aurelia_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aws-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aws_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_azure-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_azure_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_azurepipelines-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_azurepipelines_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_binary-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_binary_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bloc-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bloc_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_blueprint-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_blueprint_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bot-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bot_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bower-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bower_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_buildkite-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_buildkite_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cake-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cake_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_certificate-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_certificate_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_chef-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_chef_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_circleci-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_circleci_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cli-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cli_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_client-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_client_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cmake-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cmake_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_common-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_common_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_component-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_component_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_composer-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_composer_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_config-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_config_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_controller-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_controller_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_coverage-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_coverage_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_css-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_css_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cubit-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cubit_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cypress-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cypress_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dapr-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dapr_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_datadog-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_datadog_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_db-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_db_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_debian-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_debian_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dependabot-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dependabot_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_devcontainer-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_devcontainer_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dist-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dist_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docker-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docker_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docs_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_e2e-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_e2e_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_elasticbeanstalk-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_elasticbeanstalk_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_electron-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_electron_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_expo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_expo_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_favicon-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_favicon_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_flow-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_flow_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_fonts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_fonts_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gcp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gcp_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_git-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_git_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_github-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_github_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gitlab-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gitlab_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gradle-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gradle_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_graphql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_graphql_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_grunt-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_grunt_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gulp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gulp_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_haxelib-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_haxelib_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_helper-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_helper_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_hook-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_hook_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_husky-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_husky_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_idea-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_idea_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_images-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_images_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_include-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_include_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_interfaces-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_interfaces_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_ios-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_ios_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_js-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_js_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_json-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_json_official-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_json_official_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_json_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_kubernetes-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_kubernetes_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_less-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_less_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_library-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_library_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_cypress-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_cypress_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_electron-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_electron_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_expo-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_expo_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_fonts-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_fonts_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_gradle-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_gradle_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_meteor-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_meteor_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_mysql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_mysql_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_node-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_node_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_redux-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_redux_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_sass-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_sass_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_linux-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_linux_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_locale-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_locale_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_log-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_log_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_macos-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_macos_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mariadb-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mariadb_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_maven-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_maven_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_memcached-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_memcached_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_meteor-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_meteor_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_middleware-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_middleware_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_minikube-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_minikube_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mjml-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mjml_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mock-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mock_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_model-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_model_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_module-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_module_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mongodb-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mongodb_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mysql-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mysql_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_next-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_next_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nginx-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nginx_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nix-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nix_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_node-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_node_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_notification-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_notification_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuget-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuget_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuxt-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuxt_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_package-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_package_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_paket-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_paket_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_php-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_php_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_platformio-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_platformio_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_plugin-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_plugin_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_prisma-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_prisma_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_private-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_private_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_public-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_public_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_python-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_python_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_ravendb-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_ravendb_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_redis-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_redis_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_redux-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_redux_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_route-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_route_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_sass-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_sass_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_script-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_script_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_server-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_server_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_services-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_services_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_shared-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_shared_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_src-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_src_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_sso-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_sso_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_story-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_story_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_style-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_style_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_tauri-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_tauri_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_temp-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_temp_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_template-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_template_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_test-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_test_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_theme-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_theme_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_tools-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_tools_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_travis-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_travis_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_trunk-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_trunk_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typescript-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typescript_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typings-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typings2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typings2_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typings_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vagrant-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vagrant_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_video-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_video_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_view-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_view_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vs-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vs2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vs2_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vs_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode2_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode3-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode3_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test2-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test2_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test3-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test3_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_webpack-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_webpack_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_windows-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_windows_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_www-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_www_opened-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_yarn-24.png create mode 100644 app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_yarn_opened-24.png delete mode 100644 app/src/main/resources/io/xpipe/app/resources/img/connection_icon-dark.svg delete mode 100644 app/src/main/resources/io/xpipe/app/resources/img/connection_icon.svg delete mode 100644 app/src/main/resources/io/xpipe/app/resources/img/db_icon.png delete mode 100644 app/src/main/resources/io/xpipe/app/resources/img/file_icon.png delete mode 100644 app/src/main/resources/io/xpipe/app/resources/img/folder_closed.svg delete mode 100644 app/src/main/resources/io/xpipe/app/resources/img/folder_open.svg diff --git a/app/src/main/java/io/xpipe/app/browser/BrowserComp.java b/app/src/main/java/io/xpipe/app/browser/BrowserComp.java index 94e3e130..7a0e4320 100644 --- a/app/src/main/java/io/xpipe/app/browser/BrowserComp.java +++ b/app/src/main/java/io/xpipe/app/browser/BrowserComp.java @@ -3,9 +3,9 @@ package io.xpipe.app.browser; import atlantafx.base.controls.RingProgressIndicator; import atlantafx.base.controls.Spacer; import atlantafx.base.theme.Styles; -import io.xpipe.app.browser.icon.DirectoryType; +import io.xpipe.app.browser.icon.BrowserIconDirectoryType; import io.xpipe.app.browser.icon.FileIconManager; -import io.xpipe.app.browser.icon.FileType; +import io.xpipe.app.browser.icon.BrowserIconFileType; import io.xpipe.app.comp.base.MultiContentComp; import io.xpipe.app.comp.base.SideSplitPaneComp; import io.xpipe.app.core.AppLayoutModel; @@ -52,8 +52,8 @@ public class BrowserComp extends SimpleComp { @Override protected Region createSimple() { - FileType.loadDefinitions(); - DirectoryType.loadDefinitions(); + BrowserIconFileType.loadDefinitions(); + BrowserIconDirectoryType.loadDefinitions(); ThreadHelper.runAsync(() -> { FileIconManager.loadIfNecessary(); }); @@ -269,7 +269,7 @@ public class BrowserComp extends SimpleComp { .get() .getProvider() .getDisplayIconFileName(model.getEntry().getStore()); - var logo = PrettyImageHelper.ofFixedSquare(image, 16).createRegion(); + var logo = PrettyImageHelper.ofFixedSizeSquare(image, 16).createRegion(); tab.graphicProperty() .bind(Bindings.createObjectBinding( diff --git a/app/src/main/java/io/xpipe/app/browser/BrowserEntry.java b/app/src/main/java/io/xpipe/app/browser/BrowserEntry.java index bafc2e49..253f684c 100644 --- a/app/src/main/java/io/xpipe/app/browser/BrowserEntry.java +++ b/app/src/main/java/io/xpipe/app/browser/BrowserEntry.java @@ -1,7 +1,7 @@ package io.xpipe.app.browser; -import io.xpipe.app.browser.icon.DirectoryType; -import io.xpipe.app.browser.icon.FileType; +import io.xpipe.app.browser.icon.BrowserIconDirectoryType; +import io.xpipe.app.browser.icon.BrowserIconFileType; import io.xpipe.core.store.FileKind; import io.xpipe.core.store.FileNames; import io.xpipe.core.store.FileSystem; @@ -13,8 +13,8 @@ public class BrowserEntry { private final BrowserFileListModel model; private final FileSystem.FileEntry rawFileEntry; private final boolean synthetic; - private final FileType fileType; - private final DirectoryType directoryType; + private final BrowserIconFileType fileType; + private final BrowserIconDirectoryType directoryType; public BrowserEntry(FileSystem.FileEntry rawFileEntry, BrowserFileListModel model, boolean synthetic) { this.rawFileEntry = rawFileEntry; @@ -24,12 +24,12 @@ public class BrowserEntry { this.directoryType = directoryType(rawFileEntry); } - private static FileType fileType(FileSystem.FileEntry rawFileEntry) { + private static BrowserIconFileType fileType(FileSystem.FileEntry rawFileEntry) { if (rawFileEntry.getKind() == FileKind.DIRECTORY) { return null; } - for (var f : FileType.ALL) { + for (var f : BrowserIconFileType.ALL) { if (f.matches(rawFileEntry)) { return f; } @@ -38,12 +38,12 @@ public class BrowserEntry { return null; } - private static DirectoryType directoryType(FileSystem.FileEntry rawFileEntry) { + private static BrowserIconDirectoryType directoryType(FileSystem.FileEntry rawFileEntry) { if (rawFileEntry.getKind() != FileKind.DIRECTORY) { return null; } - for (var f : DirectoryType.ALL) { + for (var f : BrowserIconDirectoryType.ALL) { if (f.matches(rawFileEntry)) { return f; } diff --git a/app/src/main/java/io/xpipe/app/browser/BrowserFileListComp.java b/app/src/main/java/io/xpipe/app/browser/BrowserFileListComp.java index fa0b1b66..5ae5b5eb 100644 --- a/app/src/main/java/io/xpipe/app/browser/BrowserFileListComp.java +++ b/app/src/main/java/io/xpipe/app/browser/BrowserFileListComp.java @@ -8,7 +8,7 @@ import io.xpipe.app.comp.base.LazyTextFieldComp; import io.xpipe.app.fxcomps.SimpleComp; import io.xpipe.app.fxcomps.SimpleCompStructure; import io.xpipe.app.fxcomps.augment.ContextMenuAugment; -import io.xpipe.app.fxcomps.impl.PrettySvgComp; +import io.xpipe.app.fxcomps.impl.PrettyImageHelper; import io.xpipe.app.fxcomps.util.PlatformThread; import io.xpipe.app.util.BooleanScope; import io.xpipe.app.util.HumanReadableFormat; @@ -526,12 +526,13 @@ final class BrowserFileListComp extends SimpleComp { }; text.addListener(listener); - Node imageView = new PrettySvgComp(img, 24, 24).createRegion(); + Node imageView = PrettyImageHelper.ofFixedSize(img, 24, 24).createRegion(); HBox graphic = new HBox(imageView, new Spacer(7), quickAccess, new Spacer(3), textField); + graphic.setAlignment(Pos.CENTER_LEFT); HBox.setHgrow(textField, Priority.ALWAYS); graphic.setAlignment(Pos.CENTER_LEFT); setGraphic(graphic); @@ -550,8 +551,8 @@ final class BrowserFileListComp extends SimpleComp { // Don't set image as that would trigger image comp update // and cells are emptied on each change, leading to unnecessary changes // img.set(null); - - // Use opacity instead of visibility as visibility is kinda bugged with web views + + // Visibility seems to be bugged, so use opacity setOpacity(0.0); } else { var isParentLink = getTableRow() @@ -580,8 +581,7 @@ final class BrowserFileListComp extends SimpleComp { && (getTableRow().getItem().getRawFileEntry().isHidden() || fileName.startsWith(".")); getTableRow().pseudoClassStateChanged(HIDDEN, hidden); text.set(fileName); - - // Use opacity instead of visibility as visibility is kinda bugged with web views + // Visibility seems to be bugged, so use opacity setOpacity(1.0); } } diff --git a/app/src/main/java/io/xpipe/app/browser/BrowserNavBar.java b/app/src/main/java/io/xpipe/app/browser/BrowserNavBar.java index 1bbfa26e..f0bc7095 100644 --- a/app/src/main/java/io/xpipe/app/browser/BrowserNavBar.java +++ b/app/src/main/java/io/xpipe/app/browser/BrowserNavBar.java @@ -6,10 +6,7 @@ import io.xpipe.app.fxcomps.Comp; import io.xpipe.app.fxcomps.SimpleComp; import io.xpipe.app.fxcomps.SimpleCompStructure; import io.xpipe.app.fxcomps.augment.ContextMenuAugment; -import io.xpipe.app.fxcomps.impl.HorizontalComp; -import io.xpipe.app.fxcomps.impl.PrettyImageHelper; -import io.xpipe.app.fxcomps.impl.StackComp; -import io.xpipe.app.fxcomps.impl.TextFieldComp; +import io.xpipe.app.fxcomps.impl.*; import io.xpipe.app.fxcomps.util.SimpleChangeListener; import io.xpipe.app.util.BooleanScope; import io.xpipe.app.util.ThreadHelper; @@ -96,7 +93,7 @@ public class BrowserNavBar extends SimpleComp { : "home_icon.svg"; }, model.getCurrentPath()); - var breadcrumbsGraphic = PrettyImageHelper.ofSvg(graphic, 16, 16) + var breadcrumbsGraphic = new PrettySvgComp(graphic, 16, 16) .padding(new Insets(0, 0, 1, 0)) .styleClass("path-graphic") .createRegion(); diff --git a/app/src/main/java/io/xpipe/app/browser/BrowserSelectionListComp.java b/app/src/main/java/io/xpipe/app/browser/BrowserSelectionListComp.java index cc7265bf..cee9a506 100644 --- a/app/src/main/java/io/xpipe/app/browser/BrowserSelectionListComp.java +++ b/app/src/main/java/io/xpipe/app/browser/BrowserSelectionListComp.java @@ -52,7 +52,7 @@ public class BrowserSelectionListComp extends SimpleComp { protected Region createSimple() { var c = new ListBoxViewComp<>(list, list, entry -> { return Comp.of(() -> { - var wv = PrettyImageHelper.ofFixedSquare(FileIconManager.getFileIcon(entry, false), 20) + var wv = PrettyImageHelper.ofFixedSizeSquare(FileIconManager.getFileIcon(entry, false), 20) .createRegion(); var l = new Label(null, wv); l.setTextOverrun(OverrunStyle.CENTER_ELLIPSIS); diff --git a/app/src/main/java/io/xpipe/app/browser/BrowserWelcomeComp.java b/app/src/main/java/io/xpipe/app/browser/BrowserWelcomeComp.java index a08f0fe5..f9fe4910 100644 --- a/app/src/main/java/io/xpipe/app/browser/BrowserWelcomeComp.java +++ b/app/src/main/java/io/xpipe/app/browser/BrowserWelcomeComp.java @@ -9,6 +9,7 @@ import io.xpipe.app.fxcomps.Comp; import io.xpipe.app.fxcomps.SimpleComp; import io.xpipe.app.fxcomps.impl.LabelComp; import io.xpipe.app.fxcomps.impl.PrettyImageHelper; +import io.xpipe.app.fxcomps.impl.PrettySvgComp; import io.xpipe.app.fxcomps.util.BindingsHelper; import io.xpipe.app.storage.DataStorage; import io.xpipe.app.util.JfxHelper; @@ -42,7 +43,7 @@ public class BrowserWelcomeComp extends SimpleComp { var vbox = new VBox(welcome, new Spacer(4, Orientation.VERTICAL)); vbox.setAlignment(Pos.CENTER_LEFT); - var img = PrettyImageHelper.ofSvg(new SimpleStringProperty("Hips.svg"), 50, 75) + var img = new PrettySvgComp(new SimpleStringProperty("Hips.svg"), 50, 75) .padding(new Insets(5, 0, 0, 0)) .createRegion(); var hbox = new HBox(img, vbox); diff --git a/app/src/main/java/io/xpipe/app/browser/icon/DirectoryType.java b/app/src/main/java/io/xpipe/app/browser/icon/BrowserIconDirectoryType.java similarity index 92% rename from app/src/main/java/io/xpipe/app/browser/icon/DirectoryType.java rename to app/src/main/java/io/xpipe/app/browser/icon/BrowserIconDirectoryType.java index 0204e2cd..565b1baa 100644 --- a/app/src/main/java/io/xpipe/app/browser/icon/DirectoryType.java +++ b/app/src/main/java/io/xpipe/app/browser/icon/BrowserIconDirectoryType.java @@ -15,11 +15,11 @@ import java.util.List; import java.util.Set; import java.util.stream.Collectors; -public interface DirectoryType { +public interface BrowserIconDirectoryType { - List ALL = new ArrayList<>(); + List ALL = new ArrayList<>(); - static DirectoryType byId(String id) { + static BrowserIconDirectoryType byId(String id) { return ALL.stream() .filter(fileType -> fileType.getId().equals(id)) .findAny() @@ -27,7 +27,7 @@ public interface DirectoryType { } static void loadDefinitions() { - ALL.add(new DirectoryType() { + ALL.add(new BrowserIconDirectoryType() { @Override public String getId() { @@ -80,7 +80,7 @@ public interface DirectoryType { String getIcon(FileSystem.FileEntry entry, boolean open); - class Simple implements DirectoryType { + class Simple implements BrowserIconDirectoryType { @Getter private final String id; diff --git a/app/src/main/java/io/xpipe/app/browser/icon/FileType.java b/app/src/main/java/io/xpipe/app/browser/icon/BrowserIconFileType.java similarity index 90% rename from app/src/main/java/io/xpipe/app/browser/icon/FileType.java rename to app/src/main/java/io/xpipe/app/browser/icon/BrowserIconFileType.java index f6017aac..171ead23 100644 --- a/app/src/main/java/io/xpipe/app/browser/icon/FileType.java +++ b/app/src/main/java/io/xpipe/app/browser/icon/BrowserIconFileType.java @@ -12,11 +12,11 @@ import java.nio.file.Files; import java.util.*; import java.util.stream.Collectors; -public interface FileType { +public interface BrowserIconFileType { - List ALL = new ArrayList<>(); + List ALL = new ArrayList<>(); - static FileType byId(String id) { + static BrowserIconFileType byId(String id) { return ALL.stream() .filter(fileType -> fileType.getId().equals(id)) .findAny() @@ -47,7 +47,7 @@ public interface FileType { .collect(Collectors.toSet()); var darkIcon = split[2].trim(); var lightIcon = split.length > 3 ? split[3].trim() : darkIcon; - ALL.add(new FileType.Simple(id, lightIcon, darkIcon, filter)); + ALL.add(new BrowserIconFileType.Simple(id, lightIcon, darkIcon, filter)); } } }); @@ -60,7 +60,7 @@ public interface FileType { String getIcon(); @Getter - class Simple implements FileType { + class Simple implements BrowserIconFileType { private final String id; private final IconVariant icon; diff --git a/app/src/main/java/io/xpipe/app/browser/icon/BrowserIcons.java b/app/src/main/java/io/xpipe/app/browser/icon/BrowserIcons.java index b17b035e..a88d2dd6 100644 --- a/app/src/main/java/io/xpipe/app/browser/icon/BrowserIcons.java +++ b/app/src/main/java/io/xpipe/app/browser/icon/BrowserIcons.java @@ -7,18 +7,18 @@ import io.xpipe.core.store.FileSystem; public class BrowserIcons { public static Comp createDefaultFileIcon() { - return PrettyImageHelper.ofFixedSquare("default_file.svg", 22); + return PrettyImageHelper.ofFixedSizeSquare("default_file.svg", 22); } public static Comp createDefaultDirectoryIcon() { - return PrettyImageHelper.ofFixedSquare("default_folder.svg", 22); + return PrettyImageHelper.ofFixedSizeSquare("default_folder.svg", 22); } - public static Comp createIcon(FileType type) { - return PrettyImageHelper.ofFixedSquare(type.getIcon(), 22); + public static Comp createIcon(BrowserIconFileType type) { + return PrettyImageHelper.ofFixedSizeSquare(type.getIcon(), 22); } public static Comp createIcon(FileSystem.FileEntry entry) { - return PrettyImageHelper.ofFixedSquare(FileIconManager.getFileIcon(entry, false), 22); + return PrettyImageHelper.ofFixedSizeSquare(FileIconManager.getFileIcon(entry, false), 22); } } diff --git a/app/src/main/java/io/xpipe/app/browser/icon/FileIconManager.java b/app/src/main/java/io/xpipe/app/browser/icon/FileIconManager.java index fd5c74b1..56f03ea4 100644 --- a/app/src/main/java/io/xpipe/app/browser/icon/FileIconManager.java +++ b/app/src/main/java/io/xpipe/app/browser/icon/FileIconManager.java @@ -25,13 +25,13 @@ public class FileIconManager { var r = entry.resolved(); if (r.getKind() != FileKind.DIRECTORY) { - for (var f : FileType.ALL) { + for (var f : BrowserIconFileType.ALL) { if (f.matches(r)) { return getIconPath(f.getIcon()); } } } else { - for (var f : DirectoryType.ALL) { + for (var f : BrowserIconDirectoryType.ALL) { if (f.matches(r)) { return getIconPath(f.getIcon(r, open)); } diff --git a/app/src/main/java/io/xpipe/app/comp/base/OsLogoComp.java b/app/src/main/java/io/xpipe/app/comp/base/OsLogoComp.java index 4293638d..c608d08c 100644 --- a/app/src/main/java/io/xpipe/app/comp/base/OsLogoComp.java +++ b/app/src/main/java/io/xpipe/app/comp/base/OsLogoComp.java @@ -3,7 +3,7 @@ package io.xpipe.app.comp.base; import io.xpipe.app.comp.store.StoreEntryWrapper; import io.xpipe.app.core.AppResources; import io.xpipe.app.fxcomps.SimpleComp; -import io.xpipe.app.fxcomps.impl.PrettyImageHelper; +import io.xpipe.app.fxcomps.impl.PrettyImageComp; import io.xpipe.app.fxcomps.impl.StackComp; import io.xpipe.app.fxcomps.util.BindingsHelper; import io.xpipe.core.process.OsNameState; @@ -55,7 +55,7 @@ public class OsLogoComp extends SimpleComp { var hide = BindingsHelper.map(img, s -> s != null); return new StackComp(List.of( new SystemStateComp(state).hide(hide), - PrettyImageHelper.ofRasterized(img, 24, 24).visible(hide))) + new PrettyImageComp(img, 24, 24).visible(hide))) .createRegion(); } diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreCreationMenu.java b/app/src/main/java/io/xpipe/app/comp/store/StoreCreationMenu.java index b206ff88..da11e6bc 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreCreationMenu.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreCreationMenu.java @@ -82,7 +82,7 @@ public class StoreCreationMenu { }); sub.forEach(dataStoreProvider -> { var item = new MenuItem(dataStoreProvider.getDisplayName()); - item.setGraphic(PrettyImageHelper.ofFixedSmallSquare(dataStoreProvider.getDisplayIconFileName(null)) + item.setGraphic(PrettyImageHelper.ofFixedSizeSquare(dataStoreProvider.getDisplayIconFileName(null), 16) .createRegion()); item.setOnAction(event -> { StoreCreationComp.showCreation(dataStoreProvider, category); diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreIntroComp.java b/app/src/main/java/io/xpipe/app/comp/store/StoreIntroComp.java index e508b37f..511206df 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreIntroComp.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreIntroComp.java @@ -4,7 +4,7 @@ import atlantafx.base.theme.Styles; import io.xpipe.app.core.AppFont; import io.xpipe.app.core.AppI18n; import io.xpipe.app.fxcomps.SimpleComp; -import io.xpipe.app.fxcomps.impl.PrettyImageHelper; +import io.xpipe.app.fxcomps.impl.PrettySvgComp; import io.xpipe.app.storage.DataStorage; import io.xpipe.app.util.ScanAlert; import javafx.beans.property.SimpleStringProperty; @@ -35,7 +35,7 @@ public class StoreIntroComp extends SimpleComp { var scanPane = new StackPane(scanButton); scanPane.setAlignment(Pos.CENTER); - var img = PrettyImageHelper.ofSvg(new SimpleStringProperty("Wave.svg"), 80, 150) + var img = new PrettySvgComp(new SimpleStringProperty("Wave.svg"), 80, 150) .createRegion(); var text = new VBox(title, introDesc); text.setSpacing(5); diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreQuickAccessButtonComp.java b/app/src/main/java/io/xpipe/app/comp/store/StoreQuickAccessButtonComp.java index 737c88e5..07b9ed83 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreQuickAccessButtonComp.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreQuickAccessButtonComp.java @@ -62,9 +62,7 @@ public class StoreQuickAccessButtonComp extends SimpleComp { var graphic = w.getEntry().getProvider().getDisplayIconFileName(w.getEntry().getStore()); if (c.isEmpty()) { - var item = new MenuItem( - w.getName().getValue(), - PrettyImageHelper.ofFixedSquare(graphic, 16).createRegion()); + var item = new MenuItem(w.getName().getValue(), PrettyImageHelper.ofFixedSizeSquare(graphic, 16).createRegion()); item.setOnAction(event -> { action.accept(w); contextMenu.hide(); @@ -81,9 +79,7 @@ public class StoreQuickAccessButtonComp extends SimpleComp { items.add(recurse(contextMenu, sub)); } - var m = new Menu( - w.getName().getValue(), - PrettyImageHelper.ofFixedSquare(graphic, 16).createRegion()); + var m = new Menu(w.getName().getValue(), PrettyImageHelper.ofFixedSizeSquare(graphic, 16).createRegion()); m.getItems().setAll(items); m.setOnAction(event -> { if (event.getTarget() == m) { diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreSectionMiniComp.java b/app/src/main/java/io/xpipe/app/comp/store/StoreSectionMiniComp.java index 6ce3b859..226b9eec 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreSectionMiniComp.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreSectionMiniComp.java @@ -59,12 +59,12 @@ public class StoreSectionMiniComp extends Comp> { .apply(struc -> { var provider = section.getWrapper().getEntry().getProvider(); struc.get() - .setGraphic(PrettyImageHelper.ofFixedSmallSquare( + .setGraphic(PrettyImageHelper.ofFixedSizeSquare( provider != null ? provider.getDisplayIconFileName(section.getWrapper() .getEntry() .getStore()) - : null) + : null, 16) .createRegion()); }) .apply(struc -> { diff --git a/app/src/main/java/io/xpipe/app/fxcomps/impl/DataStoreChoiceComp.java b/app/src/main/java/io/xpipe/app/fxcomps/impl/DataStoreChoiceComp.java index 334e13c6..c9ffd5ba 100644 --- a/app/src/main/java/io/xpipe/app/fxcomps/impl/DataStoreChoiceComp.java +++ b/app/src/main/java/io/xpipe/app/fxcomps/impl/DataStoreChoiceComp.java @@ -186,12 +186,10 @@ public class DataStoreChoiceComp extends SimpleComp { button.apply(struc -> { struc.get().setMaxWidth(2000); struc.get().setAlignment(Pos.CENTER_LEFT); - Comp graphic = PrettyImageHelper.ofSvg( - Bindings.createStringBinding( - () -> { - if (selected.getValue() == null) { - return null; - } + Comp graphic = new PrettySvgComp(Bindings.createStringBinding(() -> { + if (selected.getValue() == null) { + return null; + } return selected.getValue() .get() diff --git a/app/src/main/java/io/xpipe/app/fxcomps/impl/DataStoreListChoiceComp.java b/app/src/main/java/io/xpipe/app/fxcomps/impl/DataStoreListChoiceComp.java index dffe8598..ce5084b6 100644 --- a/app/src/main/java/io/xpipe/app/fxcomps/impl/DataStoreListChoiceComp.java +++ b/app/src/main/java/io/xpipe/app/fxcomps/impl/DataStoreListChoiceComp.java @@ -41,8 +41,8 @@ public class DataStoreListChoiceComp extends SimpleComp { } var label = new LabelComp(t.get().getName()).apply(struc -> struc.get() - .setGraphic(PrettyImageHelper.ofFixedSmallSquare( - t.get().getProvider().getDisplayIconFileName(t.getStore())) + .setGraphic(PrettyImageHelper.ofFixedSizeSquare( + t.get().getProvider().getDisplayIconFileName(t.getStore()), 16) .createRegion())); var delete = new IconButtonComp("mdal-delete_outline", () -> { selectedList.remove(t); diff --git a/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageComp.java b/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageComp.java index 74ad4dde..83433c5f 100644 --- a/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageComp.java +++ b/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageComp.java @@ -23,7 +23,7 @@ public class PrettyImageComp extends SimpleComp { private final double width; private final double height; - PrettyImageComp(ObservableValue value, double width, double height) { + public PrettyImageComp(ObservableValue value, double width, double height) { this.value = value; this.width = width; this.height = height; @@ -74,13 +74,14 @@ public class PrettyImageComp extends SimpleComp { return null; } - if (AppImages.hasNormalImage(image.getValue())) { - return AppImages.image(image.getValue()); - } else if (AppImages.hasNormalImage(image.getValue().replace("-dark", ""))) { - return AppImages.image(image.getValue().replace("-dark", "")); + var value = image.getValue(); + if (AppImages.hasNormalImage(value)) { + return AppImages.image(value); + } else if (AppImages.hasNormalImage(value.replace("-dark", ""))) { + return AppImages.image(value.replace("-dark", "")); } else { TrackEvent.withWarn("Image file not found") - .tag("file", image.getValue()) + .tag("file", value) .handle(); return null; } diff --git a/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageHelper.java b/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageHelper.java index 1aaf75cb..8e979c07 100644 --- a/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageHelper.java +++ b/app/src/main/java/io/xpipe/app/fxcomps/impl/PrettyImageHelper.java @@ -2,6 +2,7 @@ package io.xpipe.app.fxcomps.impl; import io.xpipe.app.core.AppImages; import io.xpipe.app.fxcomps.Comp; +import io.xpipe.app.fxcomps.util.BindingsHelper; import io.xpipe.core.store.FileNames; import javafx.beans.property.SimpleStringProperty; import javafx.beans.value.ObservableValue; @@ -10,19 +11,19 @@ import java.util.Optional; public class PrettyImageHelper { - public static Optional> rasterizedIfExists(String img, int width, int height) { + private static Optional rasterizedImageIfExists(String img, int width, int height) { if (img != null && img.endsWith(".svg")) { var base = FileNames.getBaseName(img); var renderedName = base + "-" + height + ".png"; if (AppImages.hasNormalImage(base + "-" + height + ".png")) { - return Optional.of(new PrettyImageComp(new SimpleStringProperty(renderedName), width, height)); + return Optional.of(renderedName); } } return Optional.empty(); } - public static Comp ofFixedSquare(String img, int size) { + public static Comp ofFixedSizeSquare(String img, int size) { return ofFixedSize(img, size, size); } @@ -31,9 +32,9 @@ public class PrettyImageHelper { return new PrettyImageComp(new SimpleStringProperty(null), w, h); } - var rasterized = rasterizedIfExists(img, w, h); + var rasterized = rasterizedImageIfExists(img, w, h); if (rasterized.isPresent()) { - return rasterized.get(); + return new PrettyImageComp(new SimpleStringProperty(rasterized.get()), w, h); } else { return img.endsWith(".svg") ? new PrettySvgComp(new SimpleStringProperty(img), w, h) @@ -41,15 +42,14 @@ public class PrettyImageHelper { } } - public static Comp ofSvg(ObservableValue img, int w, int h) { - return new PrettySvgComp(img, w, h); - } + public static Comp ofFixedSize(ObservableValue img, int w, int h) { + if (img == null) { + return new PrettyImageComp(new SimpleStringProperty(null), w, h); + } - public static Comp ofRasterized(ObservableValue img, int w, int h) { - return new PrettyImageComp(img, w, h); - } - - public static Comp ofFixedSmallSquare(String img) { - return ofFixedSize(img, 16, 16); + var binding = BindingsHelper.map(img, s -> { + return rasterizedImageIfExists(s, w, h).orElse(s); + }); + return new PrettyImageComp(binding, w, h); } } diff --git a/app/src/main/java/io/xpipe/app/util/JfxHelper.java b/app/src/main/java/io/xpipe/app/util/JfxHelper.java index 292b77db..53e8a8d2 100644 --- a/app/src/main/java/io/xpipe/app/util/JfxHelper.java +++ b/app/src/main/java/io/xpipe/app/util/JfxHelper.java @@ -65,7 +65,7 @@ public class JfxHelper { } var size = 40; - var graphic = PrettyImageHelper.ofFixedSquare(image, size).createRegion(); + var graphic = PrettyImageHelper.ofFixedSizeSquare(image, size).createRegion(); var hbox = new HBox(graphic, text); hbox.setAlignment(Pos.CENTER_LEFT); diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/default_file-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/default_file-24.png new file mode 100644 index 0000000000000000000000000000000000000000..560a2b4281096b5be1ce9411359c0ed95be57a2a GIT binary patch literal 305 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjoCO|{#S9GGLLkg|>2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt=mJT^vI^I^Ry&&3jluz~Q}~ zq~ccf6HE$!3!~VHWsghCAHAE)$KsG`z_aC= ztP|tz1*+$+)KdPx5*!+fTlbO)+9TVBKNOATg(Sc`VDE&(RY4`Ws$#Ei!Qw w2BH*!zi&D`q>@*0q%laCf16`|ZTd%MVJ5p>>CZV%0DZ#X>FVdQ&MBb@0GBLq*8l(j literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/default_folder-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/default_folder-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9c06c78f6b576a1cc827e8c1c21ebc8be1f5effe GIT binary patch literal 312 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjoCO|{#S9GGLLkg|>2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt)GAT^vI^I+GJ5SebbxPF^f2 z$O`yd&vwkBChMQ^-_PY|V(MF4Lk{!%a*6&u{$c%;#>U3kjg5)+%*=NZiZBk+F6BGnGYIbfByfEpWoPcu+?I}!3k$WEr;$
nU>7FQq ztb;39OExfU-H`m}|D=cZk8QIg&Ybx1T;24HB&S22dW)@?*GJ@TX93!1!S-SSk7AeJyFtpk-WLCyEp6jlIK zbw-qt-e3P2HBv$CGY2ErC`E{7wmG=PBmzNhL96X&<|+Mf20SMz*omqxp&!N)6bgrR zfkZ9oL|_b&NlO5rqW&NR5!RSD1xf%k22)@1?U4bDLtGT(XM_dYXom;wIB zzYbPQQ6$*^guw2W^N^tR-FoLitcOwD22JJBb3xF^HX`jUd;2M$13;_TsLa*=6i(GL&9PGcxz{dBq4iI@ZFib?(%OmJUVIrhbTIg-?HY^QRht1jQ`kjU- z?`&anW&Yp^i0BG{o(d1+E)2LXcH#87cAi-L{2nS}G5`n_HY*wC;}$fzy<96f85>Jc zu8$0Gbojx9KW!2VGfva6<ufrS zth8Yqz}azCr{mF2CB0PxER8l;&p5dLx%C6mdaR^h|JX4~g4l97K#Q--12Dd^_}ug^ z2#NhZ#uT~oZ5QIpt4D*H^oA%iL6n&wIT4}{~{47Y{7o**Sqf>?e zCZ9jJX>*?Em#-=c((%~PVRe;%IHIX>b>`#Pp3LXBrOv?9*N2t;0-;!+iDM~_p#T5? M07*qoM6N<$f>n4Q`2YX_ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/default_root_folder_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/default_root_folder_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ee38d7179e817c9656c2ffea404faa957f683641 GIT binary patch literal 714 zcmV;*0yX`KP)CaZ!DwP7MiwC&7vg68 zCp5MWMob(CVK8xUvLpzlrGPE8R%l;ek3;*OEe++>n7H^&Uh=;0o^w9u-glA<|Mjn> z{v>JX?Sn@m+-Mdfl*UIwPvd&4#lJ?weuR5~2Y9WZP+yqyz^JY?9iU}^Lc1%72Ur*m zO<&!=9*a&s1{t+{9UvA7&jM$gBjjTBr6(2%zXNFZbPl+?e5Wc6&{o|2NiiLFHSR!D zV+a?37{YXBm0P6=*n>rUkE>KU({#cXPAP0G?|ebdp@3c>_bXST91;iS0h zNE^p{dTn1eO>&!SuYgN)0(99;V=oH}b^`f^QwS7LbMR7N8*+2uJD#yp<4V2A}Dva|4!{4mD@_q_g|Wd{}n)T{@Hbp*YCBwX&7WT w61NY_YvICCl39tpv|OoVtPWhB{B&5>FK5%!Y?toI>i_@%07*qoM6N<$g61Aaw*UYD literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_access-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_access-24.png new file mode 100644 index 0000000000000000000000000000000000000000..20f362415aceadbbb674ccbff7289a50bbd6d4ae GIT binary patch literal 886 zcmV-+1Bv{JP)>dBG-k58W8tfI$&&w;iSb^Hrv z2x|t{etqQLqJaFsxq}A2OJTZ@oWb;W4;&q`wN}jj_w3MHnxm?j;?w*AfNX8R$Upw{ zbYH`V9n^iW0-LS5G?5Def?|Q$u~9;=lurORH}$of&>m3H90&mSALh6D20%f`HZfzrz$)F;rb4VBvdS#sNS7~whQCYq@q{tZ*R3pck}n9 zE2t`>!t7X)(V0KVnsld36cLi-ylU5W%A?Pz?`Wqo`GS_-^)#&M!ihvtva}(`9gqyL zYwvFISFbaC;agOdrrz~*?b*d2XD>uCEzLgyh(sL-%J=&YBPt2-_7`6!@yx~eW+|hd z_ela!ab<}IEb)%1-p5y>cWx0ts6r_WnG7m;BGse9^X)geoSzd%qac9rmsj3jl5n-g zKb{3jqBsjfA7i3Npq5R8;vGStBj)CNK&D;bKTNz3@LOMLlEXb8McZF-g%{7 z>796`S0aei6deK?0ir;MX**2_ zkWwaqa4i4<@KL0*T_6rQ5EGIZu$A@QEh<7h=?Et%q#`6v(GlXBZ%Lhf>d%Y03J#Pf zq?E7MdS9y78)$o}f5;aKqG%e0^ev2JiuCMN^W#bXNIso@r+;Sb%o@Pm$?el=dvTy* z%F5^CV{gA3KmMsWF!1Z>SIR~J>&fMI_jxg67{PU8(U zB80#;O>X~{AU$&xBeh7dqa8(}0919*cj_pIFMdOyEpkUrQB~@j!#Ji%VQCpfRSCo* zbiVoueJ79dz~g&MwG|z>{XPPZ#4v6w(7ZQJYVt}sK+|a1-&57OmCLWzRw@YZ>B6|N zz#rd!N6Wr=)kc+6%w+lPvoF?n5bo|`VSJM0=r}u`K7<~;4Z@z`<({bxM zmXRYnpP-n@px+-L_*e(OpZ#(jKztX;v2p4ew}23YyLU5p=3FW7)^%bp^kZhTIHrZF zd(j%|@dg?JSiH1)rFQ@}Kh%n^Da3=l`)NIR0DzW#-DLowDEOP3s$P?oD^v%Bdv;UI zWH`O27il|mz402Y2m5eo8g{W*wJCsf9Bxj{aOHy&)d9s@%UpW@L!`a(_OGA6K&Wdc zjj;#|zf7#uENA$7;AK!0+4 gMX_sL`uALa1JsZ*qe&>1ApigX07*qoM6N<$g5Sl!SO5S3 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_actionscript-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_actionscript-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1776dea88731f54d9a3ed472ec070664f5d53fa7 GIT binary patch literal 931 zcmV;U16=%xP)OE8@`bFYhJCNoLFtaQ_}yC45^ z?z#655Ac6OT7yebv|EgKMR-#1=SSlB)^TBwSx9ejP#hR|%<6VcgyE5L`RDDDw_>Wl|0yw_4ODjT zEtReTq#8x9)e=O(teGq3^BGTSZ@KBY(aKVxm8=*=!{&ZWAawM%#A@$LO}bI1YPQ@aun1rknzw6CJG#7lw-82u zn|ioGrLQ`i27kSn&u8{6F5U*HOE50@mm_g}dcE;$fGG$CRu07R$`%L3e7+kHb-xX8 zDT=b-V~Ty_&IPa44s8hA0x&k2%|@-x6k;GXlgaFC6DUN{L9f;dz>l3la26miUIFGu z;&@J!GY;d8N8NG!G00D84St^vqYu}Hf!@Bpvmg_-bjOwHT>s1MHxO5ZpsMO?F-L&X zRM>wUmqDBtE)Nd&0SrMh8kb(vK!+XnsPoIkFnr{0sniAjD6r_dwu$C9{XPtL>_Gki zKbn|bOlz>{!YOqU0E0t57$pRozkVRXTq%OGV;hY4MfI)Edma86|ds-IB0{sO<*RI*;#{bHHlq$LyR-6B&I&0 z&dHfvF06}wU?7TI2ODyDB1olQc-Lg_!@c|O+_=+rgG9U6e?)yrOim^#{k&D+ zxpKLJaJXuwK`M9${HjBbyME`L9gjbA^X8(6l>kzyB)7$ZbhuClRBI#U(!}O90F0K) z=Uc*4o9pI5pkf44wMK5k!P3%opycp&F%0*71;PD9?uS`OPesv~ioFLc?5$K5wg~Kp znhG!B>@wtsY&M(SuE4!8+$GK@?kt<|qJaJTs|Wb6@DEo&Q*=eg+$jJ6002ovPDHLk FV1n}9vj_kH literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_actionscript2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_actionscript2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..31e890ddec4504079333e939868834325752ac9b GIT binary patch literal 838 zcmV-M1G)T(P)^5R3nvl?dkU%IY1#=f-LZMg9 zRcJ3l{)gtOm%Wl+)zS}Is>aY#QnT(({isTaX%@k+Xxun+a-rKey0dDQJ}?*WIrBU} z-t)f0!2c`>YxE5dHyX@`I}P#-J*|%8ZmySv8H~ug3K3D$yKTDhJ1pg=zLAl(qtWQt z#+CpKy6!uk&!u2PV}K~)%4*i^S(vjQ?|*q^bG9$~MTsx%D*81r>G@t;YeU0S0B|dv z?o_2`qp`WWlLx0h;@=ZzXuR6RlSnlaU7xZ1>Y*S&{kJTv=5+udqn_xoR>!#yVDjyF zPiC5x$Sb^m9i0hR6$US$;(qj&MjE13GY8|V6` zl;8U&Z={F!s|x3GkHGIL(h4Dm{KDv6RwC7uW~SNq$8VI*&XA2%Q~Ge4rGtmJynnR5 zeiE3>tp|qPgSq>e7qAd}o7tu~72|3AvU2SCSst7`$81x)z-aQT1R!f!{q_?*o-58I zPJr=`&o#bhL{0DF8;#E#8Vty)H?b|CEgH=LKWuCaq*AXN5fiVA{a61+)jE_)wPbC3 ztSuVN+#VXODYGP|s(*^eCiI%}9&(s!(&_J1tR6e7M*uu~wONe$@s{g;73SG7Kvf0g z163|28e)S03CHB^>ATq5$h>P=V@vpbm?Il!y6t zbBhchs?zjxGFb`GpG+P=v`!1;>}ChPAYUR}*=x-EYqgRyD4n3!!+fECw0w%!)!qPZ z;3@t*_09G*4u9KPM_DN(Qoj;u13 QiU0rr07*qoM6N<$f-MFJIrMAJxbv)Q@q3Q19EZIvW$h#Rxr-o5kp!E6ahOqzy* z=WWi+oZp-?!2dmlhliV&+Sk^rClPsX z(GdYa7>2z7J|cNE2!eiN%rlPTv;*iMc|=5p9LE_Jk+%ViiwLc?X#hVAo(cJQcj-JS z4aS)IT1{szkVqu%7m=^5wIJCA;67Ca$@!ygC{5dQPxMTUZ)tXZd+|WsrK2C7t&EK| zHGFcSlH2=e{8j*y3pz-pQeTtY2jFJ_djRwTD9^7B04Mvy>h#~TvoLbGbfEjw+x|E^ zbkMcufBo)MxK&jzEIJ|)v8uY4@+N?80C$nxPI6uHCLMhJ<+|gs z7|PRYb~J%H2s>SWse-JCT$!oN2WnxA*$tpWRe!hEHmPdDTI&M19l$*#zfsjXYti=Y z_m_j?pOwlNM}E{-5A7N}xbN^M1ucg+i;~xT@kBj}PIfVcK002ovPDHLkV1mMCwq5`L literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_advpl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_advpl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0313534fa222df817427afc1716c39dfabac9508 GIT binary patch literal 989 zcmV<310wv1P)gVxuN4CY?!x6tPO%d`!fRG%iHYS_?|Rg)Z7j zg}2B@-6(1+V$ecX(js;dCYcgHikq6uWGZUYrcsd=Oc7gZz)q$!_qdp^HCO)6HvTvn4!%?&+0|E~ez1BrUs_{V@EuYk7H zkS%~74f-3#zHy#PuNkm?Fuud8{RDXAb`A@1(O6!XJ<>aSTR`aGRF4?_9Js?JJEfw_ zVhJI%)-ZNc)%4Gec2CpzuZL=eN=K!`Hirwoo<_T5ZiSi`E7Qhsw ze_OFTQ^S3URe&wd34b7SR}y6FDsQ>E#^l?3Zg{w+^U(A?S+dU<(dQL*0T*s8Yy08{ zkrjZtqA-wI|0?L}=0LjP`c1Dqz|83GKY`=G@o;qV81UML_3|?CVFduumrwwiM|BQE zE6P@&K9C7ccSI+@$|>>9i_0@7Pxj|LX{tXW0xAPVfB=LJPqc{jozIJSD>>RbR9?2= zm%!t$HrIe@knyDd>?Dq3i-pi&>^V{S3?OHG51kw8x?}*1*0q-3M3#!fpPc@T!1XGh zcLV*P6X9Er9dH-KvQiuy&4!?``-*NViLjZfhMt>SH0_=!zHF(Fnx+zt#8*14Za40j(BOc&@! z2uto7%Em|EjNe(F%YCl#T>ec85sprs2W>%kBRSmrj;CeEF&*j7HWhXuvK#0Iav%$! z7xMp+Gy}gTM|vIv(eiSrjw6hU@^Gys!EtN?Qb20&-V^Ws(j3eJzQSqS;_^ENqTpKZ z^t!;&Kqft)usqC>akv>E4MP{{o`ZF7?>B(5~lHn&jKJPXp59O?Pm6Of0*_9^ml6~q;K6=7DD6+xbL6>@^^ zON>Ou-D=MZrz0BcRgq6on!F*a;&-gRm^>0WU0tYoWwtwCG@4A{b%FiB{WWBlLB{I* z_Py_%$X{N9HC*~C+oQ2ItELUnCQ+k^UCQOm_o;@nKe!LO|0Vtb=#fJp-_D6w00000 LNkvXXu0mjf<3Q90 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affectscript-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affectscript-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5701774def86466a79dafc57c8d74b2438b66d2b GIT binary patch literal 581 zcmV-L0=oT)P));1^HRtPVnBj` zRe1sjL6UM0C=4_~t6=*gpVtlGmsZuJBSE(g{1ik$=pcl`^Rhk-x~?5|*dD(DNrt3i TQLL|{00000NkvXXu0mjfbsPYH literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affinitydesigner-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affinitydesigner-24.png new file mode 100644 index 0000000000000000000000000000000000000000..20e26644855be4b3788bf8dfcd4f58d62d1df913 GIT binary patch literal 1041 zcmV+s1n&EZP)M8Ow9q|`z>2rafIB&{}Sn#@dQCi6Y6i%C30HvP-puw5Lbv`D4V~UZHV7*XtUGbjbC{q0pO$KBJCst?U zyj^wW6p&pnT&)X;ES&^005mw4T(u|BF2?~*a_rR|n+J$=)>d+oO!l<6L)fuq%t$(l zmNz#K(2N3_ElqyfeMA{+7QG1T2;=64@0+86Jk=)znw~831S1Xa}p)4O6>@9LLe;Vgl+r0r#z8j-Io0X7JY-?OBvpd?~iKmvZ zl2bU(CRzIRCTcnR72lCc@c0263EuiQVAUi`W$`268H7+L;#RD)LySb6^4K^~BL78z zKT)Oh*`H{ujv%nn#bA=D(srCEz;n1qpJ3ta=!)iwdf%x-BKlhZ;;|o9D%Ib3_-O)H zQND2(%-3c5bh zk#66Q<=dDgMJ&}!aB&)|s4&Y4v!YN{L3x7m1@RRs5Vk%vNFs0DMCJ?0c)b=qJuFB+2<}=Zf>!&aM3s1-{S3B~2(l+;v~5qU_iI+eNpn z_2pi)s$UaO%KH@OUPOl@cRvu$vN(2O&G-#jyl*#&L+QFs28i00000 LNkvXXu0mjfa0To< literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affinityphoto-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_affinityphoto-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2eb9ff0b74a965daf6eb7d084461fc504e6beb9a GIT binary patch literal 1086 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 Z#=j>#m@8%sgMR=3002ovPDHLkV1kR!_zVC5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_angular-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_angular-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2c9ec4f5b52a87f077406a4f52b1ae8e27e57b08 GIT binary patch literal 905 zcmV;419tq0P)&2ONJ3~`2&5s@*cR-cHfV@ZkV-<= zBp7w$f}Ijj(gZc8fEuG4P)vouBW# z&-uQa?_7Aw5=#w?u-+>vY@9-EPLepbnd|Y#2568s2yYRn77cB{$|wp6+6^~daON&W zA2smXgGT~HsHv71Eug!A=N2}kB#Hv17M2Wz=|K;<5yxv7JnaaGu%TQcUkA|zgmQrc zyX%=$CbxgQl=HR*%(xMk-RPqm8Tu8#wYX`V(6GZPRe)emJ3gfx0Va4&^fra~7AUm= zK#%16B;HUZzHMQAKtWwKiQoTpj1@4E9?SGVAx87w{=<%iaoK@4@`WNGngsyu2ym?} zCD8gRsj(O{V=-3k*^Z}dl_Nl+Z{z}uI2|ZFuovNWG5vWz<6rb6JZ{#!wb0Bx~Mn#Rx3RX>Xv1vH+U+D4?@$zpn|SB*?w~3z*Rf zX2)+adF~>vqC!gF+?5mXfO~&r0bbzx4Dg>VQc4OB&VNv)Ske0y<-Of#bFR_KK4=Fi zZAT1H)@Q_pU8BJ2^d!(!k9++(01Dc6LfcM?Ey2rPe3s(It+u`p@W0hC6EFg7N>74^ z+5wpU@&}UF{stgEUqyda1*KiPSliQK14zVF9>8L=c{f$z+ggjdo8Z>_pP=v0y=PJ8 z%3~DxDQS9zU_%`RwUs0WuFjW8$E=R_0$Q3ac(@aQMBh&f=2n@B`%HZE3jk$39hMz? z!)BJ~9{}MpNDYrM_32kkpFE#sp4Pvg^^v+0N6#h^hD4hR0TJ7ktrHF6CL5bI;$z_X zT&C#~WlADUAAB8Ruv+#XvNN82HP{V@dzyVZzU7)G+}aQIzmN%!h2RVc^12&M#RJYF{28 f^v)ACeOx^RuJik3Xk?cV00000NkvXXu0mjfCr_AL literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ansible-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ansible-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b4d1811cbab442d1fbab145fd78abbfb3d56ca13 GIT binary patch literal 710 zcmV;%0y+JOP)+STxE`7A#ma)fGR1Eo+kQ zQ4>N$X*5to6r)C=m7*aAI#OD__8u3t$z(EfTToAOHaG8i-up3g4*cgh(W34Qa2_}X z1b{7I9r*M&<|l!BzYPFgk9UaXX zYBX@#X>iA6kW40*MMQUWbgTn1J3G5pC=^zjT+=nD!2^@HSS+qqtJRWaSsQ@#_xHaL zk=o$k;I^UemeU~ZCydAAc@fb{shvutQi{c5j{ud==lAC3=1h-$+i7suPdGn6zo@nT z-qqD*XEK>35z(ns>fzYf*fXv5erIQA#i#bF)8K-aC>#zSYOU>THoMSRo1C0n7Ln@a z=4MeuB%MxYeIB{jX%GN*+`_4;siz_$!^6XGoa-YaBU?(TuOcG0ZNKv{Si&PxZeh7x z{%~+`u;F#OzP`S_-QC^SBJ#_!EO+m^>17aho+1zk)S}VotM2Y@-}ceg)}{vr2EMu0 zSO46IXI$cVowSiQaLy0jh~u{F5^%X0yb(jx$6~ASH6Yq5yb%`lk@?mDUZ(y-dA4V0 sedwR1J`#JWf8zzBmeBwmm@$DOP&P=}7Ua)B7YAlew~3dNsWI_l5y>(WU5v?g zX?CF(#%K(?Sd0tCU3h^LglyrC%sK?>29v>%7&`{WAe2FAOZ$CZ3~I|xU9)6QaxTt$ zp6B_!-^oc1JZ6b>OtXid_C$rOMyNcYq)njj2+56tA4kR?8K9e+jk}I}Z)>gJ2iz%a z6B^MG(t&e3`liBZ1N=v78$f?0!1J&T*EOxst;M~*p@#xyj?^90s4l><`I+3BJ0hed z7MuUO-UJd7sAGk_zg|kpB$Xeo+ow_8X64r6(x0|>Ua85y&{uCQ+j-RlkfD(m@1NcT z;6M7z7A@2_fZZglou@v^-?(vpaJCpwCcZ5Kec|TOD%%49u@Y(rN=!mn^0p0G-IZ>_ zp%ry6uxNFax{Un7K{GE^-DglJC@AgBF9D?s4^+H)l-dfpecMBjvm>4FATp+|_v(z}a?c7ZBPUR)_@v13<@wS6Gq_ zw#wau(wVzIHhX6#I_s}Th-G{8q3NwBPB#jx%?`K#q%$|qw$n2Znf&d!fcvjW zd={tM?9fxjL~-uSH50KR??r_r^hAAIKrN)?`}qt0091$ zy1hcF0l;QbmX21D`an^S&$}^5`b=FtLxWO_R$%oJ%0mM6T4MPF0DywN;qQ_90Eo%7 zs|8a+%V#(L3rqn3MLj-mz!BPw<~?Baf2zlUcLJH=s=~e@pE)}X`CF=YSYnncC3Gq1 nRfL?El4}Ls!+)lef2{f!15ZWW@!Mzo00000NkvXXu0mjf-`L&L literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_anyscript-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_anyscript-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e1362ff375c9f17dba9323e2e62500cc09c2e2ef GIT binary patch literal 706 zcmV;z0zLhSP)bh8bj7pg;q*C6eX z%#@0vPH7MbAw_}qY9=)@J%%J%>cND$8EpTjL))C$!NB7_r{{&=^L@V05Ax($bvlat z;SSs1xLWf}ZgSHbs6c54I=VS({m-CSELJfwF;V?@y&yM9I$E0!*US`+?Ig~7fEylv z9TtTr=SQCabh@jyIF_jj#YcN1?!ch}m9Nog^u_ndN#D2e@tWSs`pVdXd2pUj^Gh6{ z)B!`lw5S9Z%UoB7zKAPO1&}i42yp)zdu@!~OIglUuh$#(m6!hn4L3qh|mFQGm0&O&HM@p#I&yrk4I-uxx7J!)aisIWg9=L?B`Z)&ZLl zd8zOkVSg993UgcxtI!nj`qzS{GWD{!{}w8r6}{rK{l|bE3g-lLse|;!s*Y`N6ev#G zzjkNWNBcoOipnWXKL%)^Cxvk?D0)DkUEpCjG5RXg&kBg4E**6%(wbhoc2PhqMcY8b zqLk#`E)*Z@L*yAyqG~SY_HrB$M70x_DaB<<5uO@Z{09fMe2Hz3P^J-%vkV;sW$tQCczeM!AFTSsY#o8+~cBdXEI|)@Lyie`9A*3y}b2ZCJ_X@7r~VDRaldC9)|^R2;q;HaISVL1^qN(|!Ye~ref2XJ6&0O|$`C5${N_V9 zP?uvjnrnQB9n7*s5<+?JHy^4&=|tZVr!IzK2{|Jr`Wc9~nk(ax2o{ES7`#xz}zlP=lpQ`?>*)7%96>LM8!x zB_@lWz>P%UvU?GLp{zIV1rUdzD?xVK3KoX*TZnNM;1>)W2LKQ~-a1x#7l}ZRTW0{6 z460(ify0tt27w0>FwM^05AZF*8n;JfWQ~pJa%ju`UtuTCVL9Lb$ zy4sR&SN3CmB7ICDId}Qf*qcyvKY^(?I&7)^{HX1*2pDYDYLCLg+h!_LI6TsK(~KMp z0F`W3pWc0-f1@1FS5$Wrh2_-d>5U3JGnFnJjDq9Yz;?896oP-A-`E?gN4gZu!2kdN M07*qoM6N<$f;`U&;{X5v literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_apex-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_apex-24.png new file mode 100644 index 0000000000000000000000000000000000000000..97d0eb6b21d17cec4bd7b2cef9556de0f14e72a0 GIT binary patch literal 793 zcmV+!1LpjRP){LvcTkj^23%v+FmTesx~41p2}CvnL!fGdM)WMD zDKnD=fT9k^-m{y#w zVQLo7LUUN>3P;?jNw<%0%!$C*2|}OTkAa4nzzgR)tOpHE421$wx8b<(zPp!m^)JeY zh9oO4phCs8n4?4#=Ye*hZ<_pp{N#~`PP@*H?Hkvn~?)Aq#yYD`)-jTn|SGlFo10W*W&RdONo_6$@jR(AI z^~nT*y`ERx5l?dH?Rp(aRhre@w`=vsi8Dz~TU%a+8GidYlqDicDJ6i>+|_4n$V%(c zMe|R6!_&ychStiAirXS0=>YHi-!^gNy43qROJTwr%rq%ZM|WT_!t36CuZXzb^z?ZF z+-dW=X3GYkxzq1nTUlp$&fFIf$#)#PDc+j;0U7%$5)u(Hx`Ts-BI5E7L<&U2IllG- X-wO>XkoVMU00000NkvXXu0mjfNndJo literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_api_extractor-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_api_extractor-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1dbf2a2e0957638065cbcdd44aaf0dd04bc02a3a GIT binary patch literal 1114 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 Djin~K literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_applescript-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_applescript-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c0666b527564411e11d85cd486035d30c22171d4 GIT binary patch literal 644 zcmV-~0( zK~zYIwUj+*6j2m~&waBln^hrLC1@2Ce;QLLg6?ElEVSEV_3419mFX?SN>ba{SXc@)!K! zt^kU9n+^c61~)LH`?rxZ0YCPqzIxiEFZ z!bz+cUHDNK#43wMt)+qn+facZ#-zp++ZeT}F{C8cwDK{fWoDRRX5Rn0pnS{&Bkp@P z@4f#y_ndq0KM!u=KOp}{T=jW)hX^%_{&4oGFVC&yS|aM7cH&QnSjBeQ^bJM|CjqQ= zn|D9?iqDcCZ!6sTfrT|%)g69riBy%SljtuASlzd8mcv;`E-ah;qsYE<>rqe*S(h`+o32_g{#_=8RWfE&-y zxU0JWM73pMk_EW|Kx_be{bMk4@Jwe@-^F2mp1QDbA{wsxP){?RXf_Hjb|onZ2$!M; z6&+bKAU)*l6w$YUGL%p4ne5xLpR@|SDR;hUbmG^Q@_j`!iIc!4fLKzAB^6-Kae@Qj zS&k1y3{!jN}?w;1)i#${y3ZLa_|nm;D_#;hI0+L!;lISBDm< zLKQjkeBh7b9DVXm#N-D&{`3A!x_>#$gY>ZTf~a<~#{FC~c|11rh#D0E$e(@||Mf<% z?8LY2!R9q50Pye5e5^>VsE&EL5^J9O?5HgEW+(3VN)VxU<@cKZfxj^`>dUxQihSnf z>iw4i@TIn4WlOzu#!kB@asn4$ChE7}E0(q@Z{asnGbD|cXaR8zwpXRF%<3yh( z@7kky%m#+rgL_t<*#Hv_HMJu8opaYcjypAhnVMV@q`nW4KEILRa%qZeIV11gfUo~0Fu@RGl_&M7(6#m3H0z~{>mnP?udBbCgb*#ZjN#b9M` zp`$gQH}>Zfu5kc^sD8a>fFdc4$H5phHVa0*I@A^BhRccfY-5+XjG|1=Dhf=-ltBJ@ zGu$4W@YdNkQr^k@a&BMrnWj>W#X!xffJJ1+iU?iFP|Yg*ZN_Ru`-b)*{ZoW1B*TI($96q|Px|{IgA5_X!mxkp;L;wH) M07*qoM6N<$f|XU;{{R30 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_appsemble-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_appsemble-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d31e27ef684aece0a62a635925e39f8fda358703 GIT binary patch literal 498 zcmV)Io3(y4cNKr4}c* zI$C!ZMY=es_>rO}*TuxNwkZ_@_JIrUO-}Af2+0fW9`QGusz$2Bk}4)b7s7`+6ypv% z=BT{-SuyccEj8X?Xyc*}G2I z*84d~%H{lVd~*$Vkt(sIFx%isQxRp$>)zP*hBt{PP{j-+g*lH!g4uckgq|jB+_!GV z))BN2g-WOb5sIM-Y+Ev*Pb~=qo`L&-dT`m(O!CThj1h$+;I5Vx~Za!PhB{HHtIiBZ2$lO07*qoM6N<$g315b{r~^~ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_appveyor-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_appveyor-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1a58be39e6fc8c14a6b8c82006c006dd48124265 GIT binary patch literal 1000 zcmV>P)y`PK8BzI=+U@G)1&-tJK z|NEcs-0#984%rZDaH1R0yHKhXr4%A@l#J3By!rnH2B&Kw^9dryQG}|X?jW3|PJP3^ zaC+kcKi}Pp$Pd8Q|2pAnL{aK6ec{XH1+9`idIXVQAA%eph{*2@Mh}%2N*xTvUP4*F z0W}XnZjUtZDv{8il>+DEUOdThU`w^`2A76M7iKeNbqQgTI`w4nPS!_MoBY&?To*VR z@G`z{EB6lsn0b9Wi@gE9?DXSzS56p3h!y#;)PYjMP&5W?w_}@YG|u&GrnkjIPAM)e zX0R0O_8WLz!j0t|FAmR=$Xn$yw~2&0)&+iw?L@P#*b&b()G+XD3!z#USMO(e`)ZuO z(}mGAx;4J<+04OK4_{3r`0UnFr4v)0;;rDVf=98s?X?dAUWQ+2CsgYqWvUW#fTf(p zd)Mb#&RZM}c+s7fT`O=Fhu98aXu|2PCeC&@6HDa*xVVrmAumQEZ!x@-!SB}Cw#nt7 zAlvK$v>Q4XpKGH(=;Ow6j(4xm1CUn^y{qBV3+-vk0VG%e1!;|$C%kUv>z zh9>N4Fwg`p+)MGsNF0X&t*zMlAUm#z|S{xf& za3Tk#PObS^OJ10*Bby$l$|L6zXft%a=xCrn=;P3}dkoAZ9VWvhTCS5fJ2LAI0D9Y3 zK;8keP6DQa&mXU+Kj`D^)IZMTkVe$uB6+C*KqPnxI94tqz}GvPI1#SrZZgk_n+{(t zq*1)j!SIMZS@~K;LgzqU1DPtO&OF`BMv20Ah9z(GmD61Q2D|D%86r)7Ke{HD$QO3Wq W0z?;JO88#@0000Hs?hWS zgdmU_wx~fx2q8gLPz35jOPeSU0Tm&k5XH!CN&*74fXj!PqMAA}N$lOVz4qQacZP?x zW74E)`@l#?XQY|?|IImP?iu)!hq&nKwr#G;7r&#VxItjo8*HmUM8K#O3`UmUvAg^x zVE;crU!QVUtlkbhln#8a)%RNi$H5T-3q-~+9YuD0W@fAr=`+TfyY!=v9Qxk?4?IwC zrT0qO_rJ0@l}alqFB;^G){N9@l`uAYqmSO-!T$a67uVIliRV4x9c|BKdJ4&8Af-e| zg^&`VX1x#~=FjCwNj3-q9mhSob-~7XaNvdi1Q71mHXUxyq@ zo&#{&ikp(2=R2;0P?BWWU{m1ogF+jdvl*68*PB9f;#k(inp@hk+)`*`ov~ZXNkQ(+RE)o9~FkQG-kN(k`DIV zwuKdKIhJKJJay|9`q!=@5k}Cghp!@Y9e~q}LtN?mE+UG!=c;vla&nZP4IUvZ6kzxS zYyW(V$G&$XGp`+_R4CHDXffA6`4p!X6tHp3bI0E1SKq&x?~aVHZ>&nfb(58b?2X|C zXEs$?S2-*SXSlYvm%b;S#P8~+lu09`VrY7r2M@f+b6f9VvRV~*wy^9^M;IJAK@b}@ zcNY29SJ!jmqb6T;5^b*Yx%)k{mIybyv7I^?D+*K+ytOF3PsaPY71 zvVVAlTIW(QhK}KXuzAIDzOlX+&v7{P)?57M&3E`XmBMJvhbKqJLYGS@mnY9Q74O0F z-?}=AJuS%uLOEEi;mjFGrI6ViGSSj(%GO}x7&ASM8Tk}+gvqucT@SQotX9*bwc78) z-Q`=)DRL;d^V3tGjay^D8ieN|OC?l3k8qnn8*8kNA&wEsK^9BMj!sk%fHg$1X0$d@ z4IA8hezO}K7-r)&#YQ7sl}V+1A!hSu0c#P~f-zWQ&hys97_Ir_vr`pg>|OC=h(MlA@zX*3fyzh&e7kbfz zx2yb!lIq9BMGJG8WD=B|-)e31ikoIF#%fhPI##J-?T+x#^4{~rE&ynb`+mC8bKNJT z5LczsNhcY!q#fk|hA@ikWPPSOS+84b?SUv_7mt@uUP$KRk3PW8ojHYftx#gUl&aer r6Iu8GYmVxP@d2KGy76B%zRdACo4*=ZLiGM700000NkvXXu0mjf%oDvP literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_asciidoc-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_asciidoc-24.png new file mode 100644 index 0000000000000000000000000000000000000000..01839eeba0a324b7d0c561fd22b49e23712b0958 GIT binary patch literal 571 zcmV-B0>u4^P)g-8Tpl*q4iqXb!mn`BU2xaz`d$llG4S4G(;e^+cX97I=l{F+aNt6o zB>{Y=B?4ANthKCGu%voVHdaJ}=OXQGEC5v&Y3ihl2e|a~9(XN-GCJEiva{W>M+;0uy*$Vu+s*I%j*QY8~$4Bbqf@}iW2Co%Q(BdImyrF zCmio2(PHxyjSix}UCj-U8j6t`in$h=pSJ<<)m*{+^wl-bu|?tGUdn#OGuMx4eAQJM zdD_@KN?%*n7dQg;pG}b{?jl*Uw!0J4NJ^B(idx2%Ap?F9PN3X;!x zUR6dZ$d!EbTKa_XCX^Uj_^bZv%Sru&PtUog~hStm*L!JNt002ov JPDHLkV1jjH0LTCU literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_asp-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_asp-24.png new file mode 100644 index 0000000000000000000000000000000000000000..931c4a116d82f84af6f6399c5999b12619ff99c7 GIT binary patch literal 689 zcmV;i0#5yjP)ZpUYh9X2kO$L7! z9fG38LBz!$`UeFOg$`0WSW{4th(oJF6%9$+dhc<#pUq8LQFP6_eCM9;J@5P8!v{6g z@V}5Ho%G;Az`~JH60rx1{YyjZ5j}^n8RRwMoaJ=)4C#SGAiDujSwM7}9}73>JMi&$ z1}{){A&k-6)e1oJX^2oE3$nq(d_yT5Aym8p9IaBBV%6Gaj_+9TRf<2VM`>}>(887B z)c}M`9Y%Z}m;fB0k#KRpXS(RAxANsv6rj>T1ABp>`SLTT?WS&U4|zy$Y&*(5(~o$D zdnkp2D9^liRR$6@)r_m>bh>^0U$!>gUCGMTm*@Nv;wn+If0UO z*B87>JZ@JSpcczPv=h}Fh=q?VXJRKw4L$~Zv1gU{3;IeDZbQZNYuY zc>jDHj)L9+8ArH}(#EOo_lQ16$RL{ilUWTl{2P7( XL+QJF(Fr?%00000NkvXXu0mjfqSGw9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_aspx-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_aspx-24.png new file mode 100644 index 0000000000000000000000000000000000000000..cc8cf44e2949691c8e7f9faf687fcec1fcb1801c GIT binary patch literal 1181 zcmV;O1Y-M%P)vmEkmcome4|h$R&n?bef`~2_ZnD4+=(O;)5oJ2Qda; z^v#6C_|U|tiNQ;ZK8W=aG-^Qts4dM9DOHKF&{`yv4wPwO+PR-|_Vz*AFqEmq#Feb% zWbL)qzt6w^bq@T`CTya4{A)dR=7yStnI6~NVSW}?91ku2X`%yN3XK*m+`0cns@9*xCf5xC6^ z2J&{*&uKrujY7T+uOTmDB93@{(db* zm(OIhOlme%!K!K-Lx4oEJY=!G!H)noF7&bQmus9%+e9LfBCn{ZC<2rKEuDXc6y8C= z_LTN#lptt8_vIW@j-sG6J(qKsLf|O4Fy#R7TK{$88F$WsOuxY%G=2^5f>Z!U67b5Y zYn)9wjORRFK6Qg>H;WN;DbdTceEfH2% z+l0#uK7Xi|Lt7)18G^0#e)g^n@n}XIA37_0}~h}Pc#Olq;v5&}y=l`SbV z1eO%kmK*p@iQklr=R5$SwLS`-=3KHgO=iKPK>`Tz#=1|3UXQzkwT9<^7Z?L$Oym_F zu=D5`0Lg;KvC%Aji9FNy9=ic}TL9^4g%oHQ6^IE_E7L&)>wE&A&m`?S6qKg^hVBzN zMbMJe2TWWIV_6St)+h5Oij*OS0TAr(+qHB{v(Nbu;H4%-M{5l$LKZbXgO1i3I$CQG z0v=xCr=zuoXIBIPsPmUzI@!Oo`6}pNh30X9T3f{dx~>YoJfG%L#$(b^bPlIEcp-zM zGz~Wz9=?>N(vmC>l?D(1Ee8g7Bg9(*#x&GU$Atj&KMw*>TF(?#*^((o@mOPk-FH{c z#1n}GBO@clo1CoVeY74{S_Btc&U;m+Vr3A1+`fpGu#dWOgCDln@!+B|0;c4JH6c6= z<%Zy?=HktrMG?Tzw&pyhxkCt@iM!^umA(Q)X-G__@H`K#6;r7+v9UaBt0Y|)Qsh0w zt84wpLWXoYJ>&U&el|tZw!U+Cg@xPYARD!YO~EYZ^A?jzvMHG1+hh;}s4zU9S&(G0 z?UcOvG)1!ncBr>++4tA&xBIj9x=Gh4`ez0WHLUv#G_$;NSq!eT_u5Oyf!)pFN zzCkGT@qlT%i%L=Ny5PEsjkQov_p@YiosyeNqYn0pnCW-u1px-PjDUvXZr?-Ufz1 zNnjb&379@#13*3I*W;_bASOUG0ZYXMOnS9O;Gky`zyxrl3c$Hk7Bl4egTNlpTf8B8 zz%1zr00W?1fT?|@6HC6SV*p=(7O#{5^$OHW$VK7Y>hFj7PzTvF;9dlA#e-1%1P!gw zo+}IE+yF;GWD%TO@VdS{?&ga6VS2>#Du~=HOW-sBv%oW89J=$h4=>dx6IQN+HUvf& obS1sQyF(sihvYOAXZ{2I1R>zn9;*3!NB{r;07*qoM6N<$f}Fumg#Z8m literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_astro-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_astro-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8cd2d9e23a81aefeaf0f7bd49d59257089d1b90b GIT binary patch literal 726 zcmV;{0xA88P)(3I$20BBUUqAX)TcAzKoGl!av^Qagiq=oTU*b@3`h9l8ZU z8U8sL6iE;W(w{>GoiZZ21Yw5`NrfP}>pUK2Y-eX@*DdJM2g7{d`{#My=bevt;2$rm zB}f-Zv&7~SW1gQj&FV(EPE}wqxi-tPtx#u+B~QH-2&yVjjx1)+!{cY55bjez zQ-Gk1jq|n=Myfi!(-Y{h8#e9_mymnTO{78OoCUukLDd$4x`QbHPMK>pw3*ISL#Rlg z92sCY@X_w^0fLXMjzG0dF%Nt~G%LrRzfo{HsL&q$wk+e(L~k*~WA01xdbN zB#?C>r>hv_&xH0rBTzrPfDG`B1zrN^9GftXfsU`YiF%#^-+?yuv7>ectLu_&#-4^( zvw_3F7NC)x90IW0<=qUmlYEr%p(?oBZvn!sh+4iX;fsx_t6M#A9C6;wIUp_cbLBbHi~GDkY$Oj zB!ZO$Tb@b(vVlTElB+Q(zFYK@1_?qJe9{sQBO48nTeY_3(dFTL1t607*qo IM6N<$f=vH6jQ{`u literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_astroconfig-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_astroconfig-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c0fbab67001aa5c5f321f06e28bbb122fbe38341 GIT binary patch literal 957 zcmV;u148_XP)Cm zK~zYIwUu2=R96tke{&ab7r!coO<62T)M!i!8lz}jb%}}us3LWZ#!_lEYE3HjNfS+q zPkn0I#0Omy6YH8*<)slYtI>p{sHBAl9{dW4Rv?1XfJ-B2S?~1W?qz|66>NHvn|m{7 z&i^+vXYM)hKM$FRllpOyjC074g35Vb{%3&h#6z;&0p^Y|9RWQiLB3Cwp1Lxe1_E7@&nXD2`|ZF(wN;8pMi@4U@Fik=jj5_&&a@PSpZ(Rm+T6J8kz#3+ZXz$%m~%5KF+TNfurYc zG9# zS_eS$!8q8Iv$yC;md|awfB2$>tY?k1d-CXXF9lVU_Tmu$`I%ObQ==2dDVHgizAd%i z^kAK)r1w0UZkTT^2Q`@){?i8hzHjrIhA{yE5;PB^S^@M9Gj9f_)q5*{0P+CZJ*#-0 z{xJaEvlr8mvC7uUKO1WJHWuADBYN2cfD+qwZ_)Pqf8_346md8mrr`j6PBX(rMwBBM77U~R@x7htnIbMCzQc>rgX%uyAe5nb2>!2w7csy>(Sp fV!p5DdyRhq?tu)->5?W500000NkvXXu0mjf)D^N7 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ats-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ats-24.png new file mode 100644 index 0000000000000000000000000000000000000000..20e254d95b1c4fbeb86096722810a171c9cc9df2 GIT binary patch literal 929 zcmV;S177@zP)AxYFahKI*ZiCuhkT>LW?dGcWo`0f|*EK8YHn1T!=w* zRS^@Y7Q0YOQVUsR{OC%=n2lB%hEzdJgO*gO(xNe6lbAHE@BUr9$#f>k%p^h&Jl?(c zocsHqbKbjLxW#700;HyL&`z+2z(>MWw*dAd%$_q#%>OR|sre4?gAOw_1MBmIO-Xjj zx!|bT>AzMjAjS7dybo+HlwG!v83)ZyeY(`)mcttlOC;6+2iPEykQ$FHb>vhaHSLx3 z$RRNwF#EQM%>^&8>r43X7kKh6=!%6A zt%KtYHB7HhwCBrI53bF(1QTH{zz_07pBAa=nQ*aJxYK71Ix0G#oox7 z&(9ws68RU3hV4lhy9NiM(0d6MJOHDk)g%((#~&WP zhsnv?GV`IKt+{xov5WxN2&5Ih_#=cqQv)y8hvTbr03?%9lF4WesHG*Ir&%_fCBV19 z6f-wA@Zum;mcfZfp(+BA68Pp%cJ2O|jT`6kz|u$)rKKKV3M$WK1k8G_1wp*WI=*k` z@;`8F2h>)CyPl82M;Ga^Hi%Xh6bMtj5AEJ^(z)Xc*%jcNe@kVqg`L&qwBCPnLstv} zLGQ2d_0{46TW_CpPu%@>rmAe8)cC9d`f#@V$OeMcjbeCN5IkqqeSIqmgd*{mB#y1* zD+)I|V%Bp!doj<2)3jI82M`{XRoH}?4w`-Z`BKM<2hFVKGc&hcq7#@b0G^iUGE?13 za9Gu)zkeN6JO;krdshoy&ha}i0`uRQC9W4^+*11w$e>S?$Xy>u00000NkvXXu0mjf Do%OYr literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_audio-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_audio-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c45fd4751907026e2d4efc26dc5227fa49eed726 GIT binary patch literal 557 zcmV+|0@D47P)3G^pg787mk-POT59{T{g}WPH=V& z6AMKL*-`Aqw&hi(_{a{@MT`@>m{=e@Ag!aXpQRC1N{nD7jlUt>CvC<4BKWefyP5$1 zq$h>lnVal$Vf$7KP$)~eZA_z*RtqqYoAkN>Z7SmPO@IcyQ^oCMM+hIOKFed3{^H?m z6Ch3F72YkcFjoTbmT;Bq67gq#G#w&*#|xJ3!PpG;{J!~I4?Wi~)EZJhzwB=~UL5b6 z)PFQ}u#&EPrG65lq!J?>u2QMxewb`T+kNCjy@pfx);e`+5qEHp__!>f(C8Fl5T9D- v#Sy~k=13?1gXe^Ogc&WniC@as{4e|hwJL6jN)Ov600000NkvXXu0mjfj9T>I literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_aurelia-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_aurelia-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ab50a863af40810497d91d304adc2941613ee28c GIT binary patch literal 1316 zcmV+<1>5?GP)KR2MNkP5A{7#efv8wbgdl`i5+yu@1}YG1 zcvy(qYK)CsWM@0I>P#oy%BpJ($a1%PH$~?Hfjc;G8n!Zv~n&3!hhh zP!^5qK3-JAi)utYwf@_l1?ddI8Za0vWrz-TzG)n|X3&`o=c9`?4Xgf~FRn!w2N(8g zLs0GeI@MQRVghq+Q4ygeXH(gbu73>9=R<{<0`Sdm=gehL6)mlcgM8c1bkM3pk!hk~GHy*92ln2eHGdQKJhX;g z79`4@&rdwr>d-zVFj)zL60u=xVrVb|>Y}SjS1~ zZnPNI&MlX=5-=jx3cA{kj#w~2fD7=8jk0}1U3%&m2JW{EbBN&RnJ;SJKNja;@r0rj z%fC`$c;2*YtBsEV8R*K03br(p_XY_OzR=WXfPOq}BQw{n**&KuR?am73m@J*-iW#f zL?qnP@LZU_>PQqP(k?aUM+ZecZa>mv@q#eiB2K~i4NMNK&zy6d0DH5-cVrk-uYo7^BHYPW>Z325{iJ1 z&2fFfFZ^<6+WETSX>S{{_nc5D;k0X;Xq7;#Bt)cDiXs`V}!FOG=sAGN5+_E??T;ZedotBvR6XmNvAs?}%h1wj8bh z;AotKPFS9ur!85}mhA?nlOGy1yhtP`jh2>mtK&ETiNn6;-{|FBI`sggFdbh;SG z(9$^%Y;$fX@XDdt?T})oZ=0F7^iQh@h~G6}d@T%dSTj~wqZ+0ZR?KaTtw+zr+ID^o zYzNwQz;@^W2V&gz!*e6u&7xbZ%_$x5SNBUFES|Dx>RXoAU8NLCDTELRA&^o&sQ9V2)?%&27~^ZLH2`^@ zV~k-i7%bN7^)C`248s=yN-6)b16E2A1OZ_fQYw`wl}dzRNDu^GjC7&CQ?o^;?? zr`f?D+XG;H4}N9Q&dv@=lK8sQ>G-_eZUeBtzYoB0IAnKs_sI<(BPez-7!0_(yQACf zdeGzJW1k-#9RYB5cE)fxWOH+qg@pxwn~NO;uB9Tu!NCEIMuTRviPjn^B}tO7v9STb z&CQLsVr^}Wdc97iQt{{C;XP~7$;kGgU5)M_>2I3|u`YPA~hFn_kTwm3aK z31I-ugZy}jk?>WVZ?KP@dSy><5>(^_+VeNCFCegqf8 zosi-xh7f|$Xhf1Eu9M7fa+YP^q?Fv>-*a(sF$Vs-VXY<0vajAEfW5uFcS4BQLWqfe onZ}rr*821E^74mCh5j4y9X5E%$bZWzO8@`>07*qoM6N<$f=<3a-~a#s literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_autoit-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_autoit-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7a289ca8575b2cb1d8a9b761652275a3763c3451 GIT binary patch literal 1098 zcmV-Q1hxB#P)FdSfJ7$XemScXemF1CfXpfOUT)KZ!zCbdQ^ViV&-+ZX){ z`~!S#y*wH)BqqiuZK9IKwcNm~=huo%OBn z+k5T3)`BN&VlSX@IDAM5(ItfN07xm9rIdcR+x^G?76=A|m3F)RGH?m-m4Gb**Aj`u z)rN+K#GVBrkw~8qVib4|Af3rEAB+)ultuuqYCDY{CpJ|vLmn80@t)i5{^dUfqS5GE zz!+d#TTk-+)*?1-LRzrMtC`!QLins_g)qz`HJ&>+6yN;c)n6MNuXI+wJKf z;}cVC?jYW2Wtz&!>m3|!t_9dM45L5)CYHd`(vq(0`hCEAXFAB2KLn6cK9<}f5rX$m zKW~aWNF)-S=9^ea)OGzsz`GhtGJbQah}@>Boat@i{D}iNE6WRfQc6aD3=rK&1Nd}Z zzij%HZGZxN0C4@cIntTpw7m0L8v{K}^d0hY<&AD^np)sbXL5WuIcshU1tO712hf<# z?gOa}mxz6EZ)8Z*6U@!x9ie90gbit&_}47o$xX&?1o-CX zX;x!Ngb<9J>_jiO6~sg~QUFLP8!Q1S<*t8m;JA;LXSPl`eshZ0qcoe@9A8cRiIfso zRXOMS_7}wD{S67A0Vs;HETzOl{T*ih=M#yyvZb`L{wXvuO%PTRoiaZNk0XuBDW3*VNQ}n~&Qy53yM61u5k? z&b_0VZD` Qn*aa+07*qoM6N<$g0;NwG5`Po literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_avif-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_avif-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b9bd97a39aff4ef477280e0f5259895cb1731c2c GIT binary patch literal 608 zcmV-m0-ybfP)?qZCQf>CfWAKb+`-?`s+z6%%f z$YWJN`s)gp;*6ZdFJRbfXYWfS=v@(mlrL}sCG`%@rT>|)0lw(d2y_8&fsp3+>$(R( zhIV>V_v&Wmry`OVJ)KTQ0=552a2(hHYz5kYH$YJL0h)FF0l-cbonHuaZWPZpu-r-s zS4B{nf|-Q@d&<%YfgVEx`>S{MVC3 zbuS8}wdvt+xA)p-XLmmgU;agbz4$_ZxRjIrv1j!a0C=Zo zzqhtlJUwUn28TD4^I%`eBJuGG7mxO==Zsa;d2{H9AHdRFQi~c=0L_meRa;1uWp0000b#r1PP9#q%dMLRzeC33&FCz$*lV0eb^rZ0|V=(v+>V2Cv!7YpkvIz zJc~J@EA^B@3bhf19@c~%Qs5QFq>tFDQ1{<af z&xJP5Bc%N*_Z61hj@KIpTDeE%^M+Ubsg6ySK8etsA@wb`~lM_)=dZ9@m2!=bN1yK-+Luf6wNg!i8)hJy{JD9(~Oc_f5 zgO+wEIOInsOC4Gv&?Pwt)gh#zVl@y>p$Y9tus$7vK|)Q)#r6Zw^8J4Ac@1~ZbMTL2 zJEvz?RW+{bdJOml?Dqn^1*`!dW@l%QW@cuD)9DnzPhh+kz$+jFtO5ss=vc{K0G$~> z1EkDsV(r#&yWNMXs&{ z!!R5Gi9`a2!_h8Z1KtA>L0%olcgPmKYoyY`6M=H^99s0h*?LZnatf2q7>G zqqE%yyajHU1}c@xMxjvn4Y0DZ^0yHe@Z2;292bj44Ims2cbj3TQMM4Z|=tCMPE!O-xK!Mn^}n+wH_+ zF*Y|hsZ=Te9^eJgx-xr+z_70Ck8`=)u&(PaNs<^D8NuuIQmfS{6bdTv z8u)REJx|jQJOkbVTR_=rwF06qfO%>WTj{>w+eOW-aiC%GMq p$K#0tPXM1803ZrDE}Z(``2&*E#J5gmdJg~q002ovPDHLkV1k0KC~5!z literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_aws-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_aws-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b4547ac1aea033268905ea4609617f53f23fd59e GIT binary patch literal 807 zcmV+?1K9kDP)C5gdIhep3)^`UuWkc+N;NLg zmNP4XnzWy8$O7U?+c>&Fm(4&=oQ|nlhN-N@CED=jG+RWu11 z=>H7xG8JY348XFg;_i}&*;Z0u6o91qaPh}r16UkTM&yRdxzs> z0z^KZdy!OM);JS79=;fIEzbsbZ#~_90Y2G-qwA{{8?E;g_-c{SYRt|2lB|QIp=%6 z_W&RJlJzb-d#)d(Yi@5peqeX&p52-HJN5k~C!3w3jn6$jlzZMRhO-{Pie5rw_Z9yb zN5@xRBtHp|1c)4Cn*-${fPAwU+U#Oy-!Ge}+Cxz+O}|2Up#a8AZ5y-q@bFygh5;ol z_d!e+Y9Q*OI5G~}G=MQT1@L+|41j2!s-P%nTolG8lYq8v*C3V~lW1%Itv0Bhq!>UA zAd2OeuMxglXw1F_ir91T$?MG@3@CeXKgDEFt3Vad78FPR0%Mz&$=a5P_UjJ@P)t=G z1F8YU0FH;niGS8?G-Co>+es-v$9KPNrkZ0=1E>Pk3aAd27lLWVoLmzU@x=b2`P_Q} zA^9y-TeuRq+6PsL=MGuR`%S9wt*P|CUm}rwgEV!0h%|Fgtqi4H6cb3!luQkyqW$c{ z_DU4a0`x#4dA3MS%NM14XSx94mk(wqKz1ds8p+23BrA~SH#{qF6L907R11!Yw-yWmfuj0l)=_ z!Nl+|K0VTnh6+|^)F6O6sS0vGJl-N=x>q$faEo&=VX0A6<6(IzL{NOw%(6%K-ks`9 z0m3p*CGxDkUI^e7{)LumKmQ596*wNyx($o7GwH!+36PFkF+KGz8iU9fAU>t) zeIb;b7aRZD(B!M1UBl0#1<7_^HjcleTzc!*u0*x$c>WBCz=D6{f3f}puAw!~Y7q6d P00000NkvXXu0mjfXHk!x literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_azurepipelines-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_azurepipelines-24.png new file mode 100644 index 0000000000000000000000000000000000000000..63ce1ef2ad9ef83579545e6f8b9c0aa587f578ec GIT binary patch literal 1011 zcmV77XxtE^No}GVWYL`~7cOPt z#+}jVq6;O~#6^up(b|;;A+9iL71Kl%4KRRom@>l*ypMa23z+YLmPJqUPhQSB_x#`a z-*fMUyKL&93;Hk2oI2Xu^;t`6^u&I7E9va`%!dQ7ABf=0#hFM?@}A{r#7*8V*Z0EZ zYj2-Oxd$O=aTAvu$4MG1WuK!V77?}rja2z%_w$Yk9((2I!H%x@h*WBj>Jpyn?;sXY z6n(?gFL^SXJEB;-lcVpX_?e3{k?!M%zqA4+I9ho6kq)8}g#fKlhoON4g4)fIN(T>) zPAB5HkM2bf)rmKhc9X_dd>w7zI6K8k))I4wxt4;bFx3*Zh;!A79corQ;>2h_)Lx@6 zK&}WuXo)x#5j@{e*ai_nswEO5$?En?Ks0Tg-3@*#-~}*!J%=A!1n>jPWTdS)SiYssZbm@sETU~z_U3tkY!f#_^V|ux(r!N$Z^@O>_JbvBs z?ae%!g>^)1`A{`84e;()`Lpj$Ms5vb4Au%L zSN0_kD<7DEkxC=VWR4`CJeqy~+1bneujaDZAFLIMxg2Y&3lxJQ#!^NYHdUvIL^WzD za|K8ZPoF3hGegCVb!3n1{a&rxUf1b~!3As7$3{1w`@OD_h7Od&i|>4%D+ini*?002ovPDHLkV1mf=;86eo literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_babel-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_babel-24.png new file mode 100644 index 0000000000000000000000000000000000000000..914adc54489715de7723373f68dd096836fb7c54 GIT binary patch literal 653 zcmV;80&@L{P)M9hSTE-oSz zEm)jXkl2DcR6!A2mq63jl0rostVPqBd|%p__l}DV5e$Nxkl%LUo^$U#T%bjZ7SdRd z5HH`GgfiVA+l@FwZX!Dm0OhIPt8-w(*Gnq@)LxliCSz{TingnA2LQC&^V_WuQOHID>_lU~V=>tL>`eEhK#*VRKW5f5^^lnviR@#!; n#lM*~h0~e9KZ{$m`2YC{WoYp#6v32900000NkvXXu0mjfgH{{4 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_babel2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_babel2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b089ccff9bf1a35c882dcb0ada03e37a307967b2 GIT binary patch literal 891 zcmV->1BCpEP)I+~UuM$m$bcA>5WODWyV zqKhmF1-mHGJ|3fwgL4;q8#f=P}Q^<&!s-}ReBppApC`DD%hMk{{kyYARLqZsdj}+D7D5*n_9n1RgM4+p^gp* ziS7%L&CVw<(U-ao>;R^Kr4`CXt#vK6o38#gJ5liz6}wNil;D)$e;{&7z1bn2w?+A) zlw0AQ{V0kt=RHvD35wfs-h0zox8?HCtOi!2rc}$VC`Lt#CWqSVwcs8A1=MZ`ntvDx z=SOqN#wsyA3XMQdJdsI;4@WsFTI8KO4palDXTvA@QoCbfZk6CSpUvbuqTo=$qNn}4 zUlTYEWJ^V7)zw5EJ3-(zm+*R85=7 z{+|z%*G?5ifWHy>EJ$>BRRWjeg*}+awXZ?keIVwYd(&9c3UU-!1^PRX_m-2hZ|uuY zU<#k35(h@a+APALD328xM)h3KoW1rk;K&K4a__J6Qn(8|Q{fxqsZ%32^VRP1>l?3( zy$U#T0*7l8;RdRY1ip_qXL}a{oiiqK?|rKGl1u(~Fckls(}Q~&76rao@h^|8C@`zr R`{n=u002ovPDHLkV1i7LnOy(? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ballerina-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ballerina-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7ab7d0a365f3a85b1d8642cc3ad0220bddc84dd5 GIT binary patch literal 606 zcmV-k0-^nhP)FncSK2sy$j|LOI>WeT97z(gP045Uu0VfA2`V?qJ@Mv~x z#{+oj+{_@DgbE$wra40#5wUKkub;>tQ~jeUPebKCuHfs<(1G0GG<;M0>i? z0yxu3On=K{8US;zHW!S=S{P(hqiJ{eMvR@Wt*-9(>$9a&Qf*TJmH_JM>`<@JMpJlh z2^+PY&+l;EAi2FAPaGU{02(thvD)(TKCXLXc47W{psa=Ygq{EZ*R|%Z&R+{e^B}iv z-?{=|rh>0PMbs+PezjlYIA&}>s=WD7MDjqYm$QBALKpD8uhdi3f|toX80HiDibUjo zzd3-3wL2!(?hNjwTRSwyX|&z?inCW=arS^OQ5Qu92yFeG=+=nR69ObSGPMj72mGww z%zf%js+sIZgdY9zd#3XOj)9`z^p s{@7g>7yV z22I!)5nUNT7MK_kk{UzJwA9Q(14@eAN`MNTGNnP7VdlHe`?@JaF~HE^vpgp`zw^B3 z0RMC7VVi@4gYyl;*k)PQzOJsWn@1G6`|oM3Ur|bZDDUAMDduR|%dpPA2Uty9dre^w1C!X(9 zrD~&6wGj=6keCyNWttL;#dZh8AHGV(=y<> zKEkGnXI3sHBHA5~$NwUt9|648Fc1!hw^ggvf*%CUr_Nu(oVjsi(hG`)VVw4YVD**a zRO|2OFX8!B%c)+kPcZYljf_YEz{tqRJkRr9b6t03`A!X@2$|NF>+=(dC2wxt{PKcC zVo9d8rN|K6uGHW-&MMP1bNPHe*$}|YJDB+ZGpm~I!ZZz7rg1ix%eerM%jMjVX-um`dZh&SkJHOO#Trwrzh6 z;EjAf->sBd*wfSV{X+p}-lLQ{7>Ptyi^%TvPj}GmJ2o8GLnIu++;{|*X-YgE|42lp zwAL2@fQa^q$cjRtkm~B{x|z@Co3h#Lt^bVZZu0s3CIAPSx#+rXCo^lM6o*2g(^~6A zN~!J4yqAb7K@fcBdEQn4%Cf8@N~sJHb&JUQY&LuPUk&a?Ydux3*9Vz-TRa|rm6;DH zrM9@P`-9f{%OD6Y6VW-xaXO}^Z|)kOya6IYdrNZr!sNUgkw_!}aP5H&{+U9d(Cm5M z2O_dJo6SzoG&Gp`(}~H_&U51vSdnR)5(1B1nMf^fOQF3r^-W)2-#ZNf_h)Em=tTgB zYPFg_df{?9ol2I%ik1QJ0;SGe9-mygwqr>t7K_~hu(P+f_o#XtU?u_pA^;KU0KESG zeh&g)AP^A)Kn6hDV>bYR!-o&+WHPyD{919x#bOC7Gwqj@p=x7)7FVYdbCGFFAJJNG z@9XO;%?c0^8X6ipW!rXJu{1sJT4@>rpf%Zyw)BE>G#b6y+uOT_hp>9w>Nw6zN+~i7bS^ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bats-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bats-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3c46fafe1f70e98c61e273605ba52a22db9905cd GIT binary patch literal 900 zcmV-~1AF|5P)YGA8BR(xtUA(Gh})tSSD17~~v5Jw*`Io6uVY^%^|{ z^$>x>$x4)gdvVVFgJFSgHlry6QLlqdhT3pAwyt;g^fa4#x8}<4)A{|*`TaiU_dOhd zGZqE_5DW&dtgo*>WEiH3VVJZ~D2x*X@wKC)W9h#DCMG7h6h&FBR_oCI{yqoCaga)- z8KqJgsjaR3u23l6=ybYp#eh5{o6Sy)j*i};DC)=|tycT9x3~92Utiz*(*ij8g~?>f zb#`{%>*?t^VM}9U;}VYJA5Po+2mk;;E|+KP>gqfk&Yv_v5OhOB!&{wBNB=Vb06;7j z2Sp;$VcgWz6tAhNaa7Wr6~N(eE@m>B!JShnP01$~p zB#&3rA#gYxx6Eeq=efB#EkX!eUS1YBolavo9CkaM&R0I4PnAE*+J(>OQy6yQc@7ne z#m<|}=DRYP%rHGYoj?fjB9Vx6XJ>~C0H9K-h5_I~Q9vq{x^!@GP!s?FfDi(bB+ro~ zS$}+QYisN9->_P=y}hl@uLS}Dl(LIWtE;QZU@)i#V41+{^OZ0z#n>_V)GwA(Wq>Iu?uF1b`nW00^NA8jVKZ)z$Tb zWe>C2Y>yWf7KUk>#?)%Hn;?iU7=}@)RH}7zbFtK03q zc09kau~B8QSZw|M{W+`E`kK|Ea-`SmSwEs&F3%!_h5+CbpU?kQN$;|R5aI*^0mYdC a3iTUK3p_C`=*`^#0000NG~hq_#k&MkC^M61He{p>vXeOft%4 z6YHF8rO-?_7BduyI2=QQwTVIJ5;G>73!BhFw3bcKWpvW@dU`&86gz4Mt-*%3OGRP*2Gm}MX?+4;f}^v&pz6f1zuMfG4xu30^N&6Y zA%e| zoH2ph?_D>z<__je{a$ZU0RZ^kaSI${GYS5QUs#wAdD-#}vinG8pD!jrNIh4*LwPp` zGHSA3y)LO}Zs>dxL^#6W@TUQQ(%Add?;L7&|G{l8kvx5mu7Bh&f2=2jbVr&@OY&yD z-1xpjz61e=i9)kfze2Ze60T_(e!DmY0J!You&u#EOCFP!6+C6@ogWw1bV9l#rp>C= z7p7QuM~{F06GXyjwv2$qrj3~}*M^aC^G%rbaxm0+XmOEz+cTxMj=v|CFjca;JJkFd z%{hH8Jk`~AO(ZXeAUAUYYGrgz8EO>*Apy#bS7=eb#Q5x{0ZT&JSmc^gXCYH%4La`1 z6W&^~KJk|M0~7|Mhdy$@WM|ncwz`FQ7TimcJrI27MOF5BM|k3>J^mW|{1jX3JXG_5 zyviCyIc4c(Bmu{H}1-e@c9#_9r{%b7Ikttw#U=002ovPDHLkV1f;^ B05|{u literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazel-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazel-24.png new file mode 100644 index 0000000000000000000000000000000000000000..530fb1a96e506bbc32fdb197721db0828d386110 GIT binary patch literal 694 zcmV;n0!jUeP)gpz;2!NElw zN+%^?sUV`XHC!&HDoyXq4-%3lsIlq2ckk#K)DaJTyk1h@Mohj4!HN#g0cQV@m1M+|Q6C5UAi`Nh}ug z6mY4806=m(xo|e3zgEHhc#N$Bz=Wnr&s#|E$aQXIu4Xnh0Qi#sw$N;~j8SiJ&K=X- zohq2S(~R@psNREi$21FHZvg$Th{(ELCJ^+a%OoP)uc;&fTsZ3R91KWgaFs*`2Y`rVm%3$D5@6(Gt={02QstC7l+NXi z;`aFqlhn4#i7@Z7s^PLYlJp{MG-RFTIdp~Ov&0P{D z9^)wdC?{&Iw)Elwps`=yGTwcjWu7MvtWB7=lzouhJKljp0zg+ue0X@}B78t_8p*iu zA%Q6I7^}%7GPvimh71l!{-%E7k1t>9G>aR-T(jq literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazel_ignore-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazel_ignore-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d2c58bd439340c05555d0ee1fac901cda1be01f2 GIT binary patch literal 742 zcmV=jmIKPPL$^94BxP}GUEG*kv3YULwYh9-YpbQ}pzGqP zy0kT}cIsr8#z9C_(j*t58x<3YIT0|13MKEo4#4X@{QnVKt?%*oe*e$szu*7=-UI$u ze1pz@&p@yCpgzw)uhuu{?591KlZyVK8xL&F-R{#z+rGYbUDMMRzv=61Jf*ipF0@>6 z&)s&7l6n**_<4ivF{5aJR;4?lR;zA0OxhO{q0fbCc*n8ks72dml*{C3X>7fC^^A^j z&xfX{0x`T2l0*y_MnRFtYQe>c=T_4nW1;p2Mbpn}xHv4wVqs%u%=&C%L=a5hat?JK z?|wpqR}#xcHvzz`J!z=bS7i4PNOJN2c}X}Lxz{g zN#HUi&+06y%XcH|(P5Q2X0{_$e Y0v`N%gVqi#AOHXW07*qoM6N<$f(d_5PXGV_ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazel_version-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bazel_version-24.png new file mode 100644 index 0000000000000000000000000000000000000000..dfc51e5f1291b531ff6e4e2d8e469749177ecc8e GIT binary patch literal 737 zcmV<70v`Q|P)^XT*PH;tkn?DFi#=ez&&j0gVLcw4IK zI-4u=ez(`zT$$%>sj6EQ{`SSe>#3nj%E-G@ldqe~@`d>0%5}ru+A-OGS?PUVecNis zW`*zBU2@myasu$(9}0gO{8oJUY;VMf7nN-Gd5X3a0;JPvKJ*OSDXVF}Aq*ICb&L@s zu8vhi3y5%I#GQ1{Tj8RJ4Zz!4aiMhY&W9pg9sf{Z0>D$WwP3kDIVIEA(_g>uWY;4* z0I`{)&dBt#IGGHdOuWF8i5HO0EW7HQlCZ_4BLH@Q4A@DG!uX^RXUGSx#KLFThcNOZ z0&_vq8O5OmfQ6f76a1miZ4Cc&LFPAmu$A9Z+GO3LFiv71`p#8qEk$3SquE`kD) z0L)H_@u@I;>0j7gf_DrAs*gALy0m~ef;gh$%Ho4I;<~`9A}hoJ9L68^vON;mRpM&f znB%O?PRCr@7jqIg*T8Jtgh#SABsxBa4;gW=c$=#8;7U%}vEuCR?YR#9KW%hOhmXdP zUyWoPIMS#K6s1N{nJ$ZHF)VX*5{Nr)=>UW@IRfO)jWY1 T53JHv00000NkvXXu0mjf6wF~9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_befunge-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_befunge-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9d96ef21af974e6eb9523538c9c24fa691ecb4ee GIT binary patch literal 987 zcmV<110?*3P)Ar{T}w+#pCl3qzYtbag-Qe-C1;BDgTLC=x9j+e+ zkaA0)CwFd;O3S=+PUmpgVz76WgsYZJQzPbsHDsC^vGxXVPMk*|pQ8Pye0_y0Gagn`>$r0o>jw|uUeJ(p2IvXo#0{|4cisWOrK>6pA&b$NikvfWrxtN9 zXt-00$i_O(zM}~5UI1*r59IAXqjLAd?42r3U##W!{AS8O^YbR*#(Q995LF7Po)-vx z_6_zE(Lz!Ltn2q=x) z@+vmy?Z_fYFxabe{E&%+OxXK82h~>yd7nipBei7~17~$cV=8x2E+iBbX%D8*0cd^l z0qWX5;H^`F`GmsUj~+h%c9_nW&v5MIO8}%&DTarK%XcvJMK#^+2IpT~!(a6XhpS&J z=H?bunw~mI&hqoG7nx8}m9)D!ZaVlI2B1k=;g1HkXU zXynp90K9v=OifKOJv~i-e}8#{fiZvaY}gwAM30AD% zFwK1o4i2Je+Py}!8Mer=X8i@g`(OFkzrXO_+}w=Y?FQi2g)!>IX)Mbk7K;H8335{Y!0rr9A$(vFtU-64c$_9002ov JPDHLkV1hey)p`H` literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bicep-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bicep-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d75f29e3c69ac7a0b7b1a7a5f7a31365ec44bd3e GIT binary patch literal 763 zcmVm2nN(i`fm82`h-KM=dEDqYK|G6z3JI1&m}K7h;&{6n!8Rp~+r8?jqd zbcev30tFK)60lt98dW&~*s65b4+x^BI<`RP7M zFL(!y!-?Wm)Aj+xY*Hu(tpdt{3Xn?BGGI+UH-QODt@dbVO>{vAg~At1mUvw0GBIpK tW%E$$U8<|Avz7@|RXs^Wy;)4XC^C~U&U7F(Ic<7|Zs!6xp(x5z0O08+AwV)f2WDgdkWF!l5_(7S&cm#yH}i9l*V+jA*gkMy31Fr^iOBbBGSLqJT^s-mBj-NA z2D7FEzx5LX6;?=1 zNW|-_Fp{(d08nj&BH--2BLM&rjUhQa!IRP0-D)EgN!R72P43W5!K93Lyeg^JVQ_B& z@Z^?VvrnL^s*f{%!zo-uV-UlW0v`9-a5%henSh8m5p@%19!K`MJ?0_-$m}Y-pO!U0G!UW0x zM=nPEoJDFt1>$pH8@*t@5{Rkk?P4b0Lf*nYTc9Y)%wR!417!|h8T(5Xg3ljs9pA6N z{RJ#pGQb?eS*{B?jkN$_)qQ3|OP zP3v2p+wzq!sH$2;M4bS3XK{$XKOCT0Q50>h=JhPgAK&W=MqFZfi2wiq07*qoM6N<$ Ef;AdWy8r+H literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_binary-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_binary-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8ed5f11dbdf568b4d65f17d994f9e0e1da872b55 GIT binary patch literal 771 zcmV+e1N{7nP)0CLf{<24MAO1W ztAe01b)JhPXj-%hn;B1)Oik1I=gqid+zVv_kF;B z7V|%h`oJj&4iz7lx!*IBk1mdnFBGb9{ZkG(N1%;@H>-D-dQFq-QS397pXQyV){0+Iy>!385mbEVDh0^f|$Q}p-`F#ok zJY{87mf*)iCff|iUV;a6XTenbD!}oj84>H-QqT4d2pk1DPr(Drl3#YUg;WqwQd;_j zz$7i16S7rP=1XAl*BL&43n)9Nq~7rR_c#KyMx&-^avEffB5!sklb-+}Q&FJ+RSn?_ zh%&9LT5kuieMO-}Vgf)+@stn(jp3<#xS-4H&{_q2`W`v`s|%t}$R zK@^TS2CNuR^ayYQkQxyT5y&_O7`p#3AX^orx=(M~4gfBfd;~C0OT{RtSCo|V4HVCU z@?8XFZk62+03Gr8tcY}g=qBW0$H>SByB7A(G!+l8Q_j*3^#{b!;zm32S;_za002ovPDHLkV1h-a BP5}S_ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bitbucketpipeline-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bitbucketpipeline-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b47e6a3ce2b10645d48a812156a3b7c5b04fe54e GIT binary patch literal 640 zcmV-`0)PF9P)@Fm`ETV#T64Xw%x3Cd>0>xesd!GjP~L08ZcWlMYu^u%%EPcX&9s zDWAhMbw%Kw`%>_wWCGk*fCTTBhz1}DLjaxH`pXuSOa&N5b_D(`5kDH9;bSGBC&}UM z5(V2_mIzQDG7f!#t%l+;@VkkUQtG&SC;?@NGAQrEUY0jBb&>OIa7)fN2|Cw4jK;gW zA?A@7b37#g);Bkglr>uM6R(>f2oVbhU$=_lWc=*R?vS}!U_n$KuFX&@q($((g8%G(=Af(7d^YWT0Sf z#p3&v=ld0zgDPh1OVsdR$ci*hnE+sBHqwLI`fskic-w7iNW|i26pn(-3BS0hOVD4w zlK?FwgQ}o<1D1w@%3EN^pBRsiKu{I{(E9maHY!ye2t#G03cLgSO8#o(SttNtW$x}L zl;@KUgTI2c2H;5dVq*FOJabIbIbTPc|Wd@&x)s0wld9)mW zOrUz|w*W@%WdIdkgw+77^^+eFeiXYp*fE?Mo|q2>wE2SxU;s-^B|zV-W%Vf4f?W6f z)Tz>Zr8iI`bcxVBKyx&#&QwVw!VrdS0`|870BzaSeS>WITt8ABRwGv5tJqF2^YC3I cum84w0!ix-3hNPu3jhEB07*qoM6N<$f(;yn#{d8T literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_blade-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_blade-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d3fe04477a21d127d3a99b84840ed621d560a2c2 GIT binary patch literal 1031 zcmV+i1o-=jP)u!rAAzWC zu&oj`96aL115q!aCK4bX?V)tH6cgOe7EOo(Jy?P6%r>Rnwln|N1FmV8T`ZxA&u!-U zzt8V|-+wX#{2%ht_Om6YExj69T>4PTn2&0p2bw<# zeI)jKb5r}4PVlc%BNwJU#~OyA&T()ssI_wvjSw85V29_}uTXPTRz&h@^on}egJtfG2%X79qwngY%e+12~rG*bPMHb zt(=+@2=P0CcLS;?TC!umF7>85+DsbiLlHebKdWAB&F8Oso%S|})NHgSAenVfPIXwn z7z*$Cj%651^~ro$hmpo!P-4Mi`1bmr&;MC(`kMe0%m8>?0GEIUfYhiv0ie6oX?BD< zJR;GCKoonD!(;BUX}h{2{@m5=Bqr)o1fZX>cl(ZYs+hK)s`kB%xyN(NXR6=(j{TVL zSf{*%VM#?euh7zO>lnEl_5?sNO7`WY; zTQNgIpr7sjclYmZ4<=3etHf0LQU&aQYzBIbnJXEBfP)5$TacRf+mDb@>NKPXV6PJN zb(9ed;{xQy*1AWw=`F8OQl@1o0FoxCD!Kv`3GF{1aJBpZ1U~{oaJ3-7fI<^Of|AR zE}oa)xOp|0nt_O%N566d;4zwSt^7RxMfe_oyWDvAu(82=pyKv*R)N((nT1;wp{ODh zjj%GNAc9LBx0^maJ_dcQP0dH#(?AZmnv9O>lng%6Rnj~075^7} Y1MJFI752lop#T5?07*qoM6N<$f+=IT)&Kwi literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bosque-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bosque-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1f98ce2db65062c8dc57c9af7f5b27a10789f4f1 GIT binary patch literal 621 zcmV-z0+RiSP)CV4*x?HO}&g97%2J=n zrc#tgus8|;ol0L#W9`8jw%%=FXMZPbAXvf{_x`Ys*8tGLKNmo|(U$KnWBtuKmhLQJ`0_Bksu$Eq(241o z<)~n0{;CBywu8)A29wVw;a+kvJ2s1rw;Syi3&8a#02$N|XhyVndl9?ucX3=l#`gX; z=EmouvLY1%7-S$bnnA9R0|1n~5^5(kq^_jS1PF~tvBK2m)Nl7@@-v+_CZcLoaEn{& z7l80F&QH^l)}ZJUksbkI1c1ZU!~9TosL(>I@6_N(=awz)%}^%;(vUqbCKyp=weq38 zF!FT7(eIMpb#doGr<(oEqWmUbGP4^ul!zLv_|^HA_OIwW<|T_G#8RzGKj-`}fCvu)kBD+nGzV(6#uU7)+`=wwxe(dX?zy$OwRL&bRxix; zrmfXlYtx!;R>KwqYAaumHA)2UHXj7cOFnrGdVmLc3n$jYlv6EkOFi+*XR#Cd8>GKT1m^mU^ zUaoKLJTOwf33Om-aXFrzr3TgRy7u%ZpcDowID`wZg?S7XA3~_QnIpH;nA3MhldheULDgITyo6VI2 zcA=otggHr?jea-968!-{&61L;z>1CEcPxE&h7-MxVrcW&4co&zUp&8Ps+P}QnVw>2 z*|&^YAXRaWM3yo)^%%arhAAPI;%473un((;p`%cTX$S)IM8unLV(iN zTUFEC^x@`!l_9hS4T0`tx?=EjfzbS$@Z{!AXv?lR{qs>8n;Y4iIh(92fv?9l9|o*n zard+o<2|t~)gD#!`V~v^H9fuGvAonG(PT4dyIi{%~ZhHH|t&={Pg*rBM!grh+?sY^m@J$5KH@J3zh#Tz#r2)zSl z;^tvb2*wPLW;kR%4oZRNL8xCiby+ykCp4rQ>_SlaD%1ayyo#6B4s5dl6#Q~7>H*HU zfOJcdm#ncWJu+wBv}#$9lcl&A7J`=0pP_L2gsek=fI$+&M-;V9Th|b=Kw8{Qk7zs# zbb(;vU%z{@IW*#{s3}`e ze}9>(e(4!|91pi66c#Fvd&JWr?X(c{fxiXZKcpMQ?}+-a{?Mtdqb?c1Q{MZ{2X%E( zfuVBc_!9-tABKW2&9|b|VKH(-p>jZcu4{i%yZ>bGSpBHkSzA_83#@zO0gLskH7UuX zN6Yiz?T_LFx@1rpJ+JO?`_;d+3s@tQ`To3p+V)nTxgh?g{f1BWH1600000NkvXX Hu0mjfXbUHT literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bower2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bower2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4d4f23e36bb3bbaa46a68d3b6aed76bcca986da2 GIT binary patch literal 1069 zcmV+|1k(G7P) zK~zYI-IQBQTvZf?zrD|y3%7Dh0fDyMIy7jT5KJVgNl7H4wlhi_jL{fdA6nlGywtnc zH>rs+8r#OSiH&L0s*M7zFByQdL-Q5bz9896MLgj+8HEp6UH* zF<&(z107o`Q7SLPp`Q__yCbofj29n!+*Pf@dY^zd7K_hUbHA`uOTbgQJ$4q{wWTT~ z4_r^&cd%93?2jxKzs(@%DfLK;W&v3XqRs?t|=bVtH@I7Bw+g|Y9qPvIF@e+nODeEQ$5z053R7QVtju=i%dx=*Yb;m zw#h~Kvk!;Un|p>?ma zzIIH7LvJrYzRTVW|;Q`c5UuL(^}KZd%Hy=))E7O zN?gOv0br}FCi&$LKnNWpT5OH^ijCe&HPOyijE)}({_64v-JA?Lr(fN0dU$63nTp_A z#KpRF5?^=|gaFgT8uMXvw_|kuf_beEYa$4csh~bFob>cU2TG`Zp;qreX62In+EHZ2 z{EBEAGG`<9oQ>EY+6{np^H0KGpJ2B66jCT-!N5ZPtf3-~hwJQC;1;laCxMsJ9DSd_qQM8p+OOyakMcdOzcA|FIZ-VbPS}-NS^)Hkp76FRiN zSqUymMW;e#BV?+y93Q29b9wc<47gpV0&bU@I?|}DsR?x(q7gOm%Cjoqc7;YCyEkX` zR_CzfW`j=@q$$(h3Y3ZDb=Y^fm0ngMWZHTx|4qW)k1+?j<}<~?4DXeuyD|WntS!!p z8rm_SS}5L85;uy9I9gC*Ri~XD`0cI@;^Fs{J};CyK2M(p^@9-NXu9``_fENMG63*D nT9Pjvx^74@yV5`B|BJr?fvSVCx+2VS00000NkvXXu0mjfq(Acd literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_browserslist-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_browserslist-24.png new file mode 100644 index 0000000000000000000000000000000000000000..71d25c285dda8bc24d101ed490045f7843e66488 GIT binary patch literal 1006 zcmV1!7>Cy{bifeD^RtmOVkWfO}t>Ps?VkIH57;HocLW~t#ObkZD zi;2<1s7ZaOkf>=BV#GwEi7$OXE{c^>SCMSm21?T`=t37-SlY7N?e>fhd+A=&6BFb2 zbk2O=`Tyqs&72wdk3$$KQbSE^Q2ILH{^-y+nEn)wzQKPDP}iImrf5g;DzGw3*(iu3 zEXn;$RGkSL1}L|)2`Rn-wIVk5#qn`!sw^}-Qb_lAJ{;8+Hf<=1r9BAQD(d?B7X_%n z#vLGz0@~>TKa>72#f4_JyfVaron`#wy32*(8BTWBF&9>NytA}yE@8RV90ajTIDS2z z6%d&@rvMG0<&8`H^2ZcK1tvzX29XkUJyM%*k<0{i-g>#5j}ATP5T z5@`$C$K75A+|&H#p62G{9HUnw?Tv{8%mj4S)|AlpLTTb0^HBORHPWo50hppa)^pe3 zG|m^@{52j*?O;+IJkZLRSEUZy3HjU80gATpyh16kS7=GI%@#@)Vzoa{Xf73^+L8cj zsA&!G(4;?1>EkYX&)!*F9q9S0m!-=e#^tHU>kIKokC(qAuB+8xL*0Ud$WMfASq|%K z^KoCkX9(cCb&r*ftu$@xLRG%cz~wS}zW2rKty=&f%3>dV_~rxTj3*(OWC*GW*7iav+OiaZ=9o~*qodY(whK~7XhS%Pv5b#*}2q^xDb$I&eG0#{bC#t zJrzfE9rhd=<;Qb=Lx2ifZno4Fv9^CW!2tlDO9|h0uI9v-b?j}iAs1QeclTFjPAGLa z_P798qICftA>gt4LN1L3qRW&yswy>hZM!d1Y7EU92P7YM!wnnI<=L5lZu!}D7q2fw zU{;UsEVD@vo>xc-KXlcw^$BaLco5W+!qI;|-2otK&;Jf$cfLgin>Q7+Z@Z0&J7HGa z^LVdg1$&>1?6A(a?U}`ucqvgl%|YDB(4&ng{TN^m&nwKPNLlC6>r~is+3`$CdRw4X zIL-~ECbD0dBh4D2+pmLo4XDmiHiA+|(5#2Ws@~a51;#FYcVjJ5tVgNHr7y%dy1EeC civMf;1Bn4UJF3gjGZm=${O=+9t6@FD5!r zEQ+9bw{}fi9K)HUnq4TJ>7k>uUhG0IR8SaF9pc1J*>p}=yY8IxyB4IePx{fxTWLQL^UmaJMh|p+Ba_l2>j75CBl&1%-3B z%>5Dt@R}BGRXA5?dEGZUL2xtXw!ZPG>zminz=$)_{tbYgDZZqtH#sAnZ`Pb(qgqsr z2=oL3=ANqG`$go*T0Q>)7|Uv`t`&3lW-d?@Aj%owy28h?o)33iZoKOX;0V$m&lV1@ z6(Fdr3n=G0rv;M$n#J;GZl3#ny9Ogq0FEl}#xsSN0qVq?2aKw`xW8v~ODtPBps)w@ z&ou!{kkmvKup%>4TF)UEggOu$uNAJYH{I4Sp)*PabLi(ul-?ZJuvt9_udM7M2B9A?=5+%`f}f`o^Pn zI$vB0mtR$7X59&vC7Am_!Xk2J&$hFF4Gatz;5mSnp3zWqup#UD<_$!)ARJc9yygsc z{kJV^rchhWdC4A}D&la0Kiz!qe06tTr{my9D+3Nl^0kL$UPgM_#$g!2- z`_jjoe9_auPC-)TTt|NO>1)VN7kd%Sp}ha_)*rg7!(;uWMseNK2=@vmQO>0%YUQj7 zurv8I$gsjk4VOY)Cr%{&<+FIE5HZTM2=^GrA4OmYYu^nWjeEEhzcqbrWe?lu{b5ssTXP%5-*H* zMl($o&C({iFE_{C!N(=4Vm$r`=gSAk)5wpAflanVo zAOHV3&vWv?jRxa_U3cu%Xf!Q$o7L;E+q_zh=3C&t>p|=QJ}J!K(srTy%&33x4>5VE zOZ0Sp@6XTM?3QKuIAFUPft1Ft18OodEYAA6Bf8>U+Y4jy7!f5*G#bThwh)cZ)8_uY zxBA7JuzzNz4mbwHR?~I9Mx$}ny!=9IWa?sc;@>VY@Rv)BU381U@SkGfoJ-96`^C`T zZDQWvFG3T&v6r6P->%hae*|v7)&%!tSS%lPoM~Qn=N-3hiYQ?O0*yw?Y%svOtPM>0 z#>rZ5Bcdo6jEVQ|Id^`r=+P&A!QkxEz}b}qa!n@F=?mRI<=V5YY40^2k0ZYPo2g;6IkLeFDuEjXIpmw)?|U=z0Swg4fYJ?Ef)z#vg z@^jm!n^Ob|^6oML8CXj|AG#q@3&sx9XiK@qtq{Kc*lEjxMKA^ebJE|Vo zjWnnrauXXhG&&Xme300p?GG01Jp9Ag^}806SntT|TV#sujiLUUoIqtmMcJdk)~p{VLR70ze7QYrwgR?DFi@6%MUk;W}K zyjlAm#udl`c31BAs;YWu#UOC(`RaYHd4Iq7KX#ycUxzHqN0SMce-#pNc-z*(9W70t z7Oc-&Yf0BhGA4b~v*ne~^mx0^{tUbZh-=l98jbqSin5YlJ+78vb-FL5TXnimcw8;R z6=fyuMx)*hJhT!~y6<{1Rth-HX4BR+7K3TKT duwXY3{sUJ|l4qaUL^uEd002ovPDHLkV1jb$*Uta| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bundler-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_bundler-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2c33b0efa9ed05451e87905a4aa55118be3cabea GIT binary patch literal 1320 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�YoZdS zoNj6_v@kYq4^aZZxIn6&?(}S9-HGo*83d-u14^Q!qcRt3wVJfGk0nRPB_xC{5uY~J zojf!XkwZ}d0sI8)S5?R3mSOAq2yM)FGd5KLm4M?8Ce3U3ZU*xrA|j#==oO$UetBC{ zUDZC}mx`xN%t)f;9uoHvhY!p7MWst;LYs?Amu2nWAHER%Uw`Y1Gi(CsPXGV_07*qo IM6N<$f~1HV?f?J) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c-24.png new file mode 100644 index 0000000000000000000000000000000000000000..56c0ffdb209100e345d92b225d21877bfb758e0a GIT binary patch literal 677 zcmV;W0$TlvP)m^kg zJ?SV5&JLgjoK>LpAbHRih~A|!caK!c{JueVCW3xF3M7H$6*4|UWq@qr*3u1n(ossG zn66_C4^QK`g!ABMvZT zi31GB^PuU)ueZPi$Pv_hE~kavT~3E3q+GMGpJj@dsSQnVv419r;x-W0pk4##X`sRA zz#K3aIF7Z*veKr^f2<@>t=tBReIm`W(BCr;6M9XgW}4x6v7F-hMaJHas=EW@H8r%NdIIGJQhG^YK2L0DFxX)9z$Eb8BeRLv z$%B@7SE?4nF%KFBo_GOo4u$v z=g?^yHu4ul*U1u7oSr`Xx_gC^0m-A$ky1ndIoY`}N00000 LNkvXXu0mjf%S$(R literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3618e47c5ff2a9509411dfa2b90f5577bf126fbb GIT binary patch literal 712 zcmV;(0yq7MP)z)7XoNm!9Pe!r>WuHcnNjjA&;Oj?|J-vg@4-5U z>q>3gaW{nm!ojA5x$^tUC9^ZLR8kXs-zT++Vs*`^tUuOf0|Mf)F8vYWxy zxDmc&5~?J6>4QmHUWdqG`}F!rPB`EM&on@n+Esa<6P_bX7n$5RO*`uza_ zSB5b0EY88&Lg2VVs|P4WC~<^qKJlxdp2^{)-2h->#IggD0(uGC2e{ofW7 zhE<4Wp!FOgZNTqUz#o&GKf;5+Oa?7$OXKZwv@3{~vtV3{LKsC^oeZ>?USXa;{gxg# ubGjO&5-34b60ts0pvJj(@oQd;^@_ip^r?R668XUZ0000bzzFB5{=QO8lvK&L^e%qVj4eI znwl8XL|v$1(U|zbqDiUNz(Q*zX`+d3q^490LR;D*Obau>%wyg>=HtD4T@a?j43MF* z|J{4%-2d;Mb5HJtn=DakV%LcQQ)Qi2snL`L54SXJvi}#rfdg9JxBc{MLU0hM13)t+ zr2eqhpX_LAYI1KFaO8O3P9gYI!{(*p8io+!{g z8wlpFGJ^pgSYJ=W+7O1EXL?Ezj>I{4@hY~HD&#nJ(%Sp_?x#8de0h<5h30j)RrA=E zb@+@$#b8Lu-FMtVeQk)7XGgd;WdV?KlEh{rL1`EVfll(i&UpuIpYr?8O=dT>KS&OGaSoE{uyd@=?=!`cvAH#MS^;*Ye z!TNg}u@Z?JYmuiEW0N!7Q+F!>JGO5onV4l@cm#xCzN&BG(N+~0uc%NBX%hFmLVGwC$r z|6XSF(gh|aBOLANC6&(Pk_|&HGEb#5boKl~Bsz^{S$GPh;R9r<2rv_mc3rtRq-W#T z$8ltIoI{<*=s$O!tb6@d&blsV{vPH~=P@pghI9Yt90$ivYM=CfvhZ)wW!Ld_&(>th z`PQ+mjk>T@DG61XXbo1vE}k@CjcJaTRhX@B?s?(YB>@Zi{G0ApCpr7Yoa59i6)#kv zA{aB*RKBsVZP($#*oqI%XJ7sBj%`~XWYX!tQgOe(JQFm{j{WT~?O)ELgeUWaulla( z4%@QYUC)&OhT&6Ybyatbv|nv&Yb(63R|iu68@&Et;07*qoM6N<$f}Z2ymH+?% literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c_al-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_c_al-24.png new file mode 100644 index 0000000000000000000000000000000000000000..644da50e88d27f237dd4da755fc91e2b62179483 GIT binary patch literal 790 zcmV+x1L^#UP)CT5rGs$k=9K`U8NTVnIrmuKBy}p zggzkXu5MyoMBYiks!dI|(h8KIh-EQDkKbz_XXkyoX)@;~GZBKGyZ85;=l|nx|kVhQ3k?(2qky<1VAl_X;}p9Ep>oVoUV7^_Pec1765cI9j(9PuYllN zOA@euy8(ow>3VuxxeNlrL+7&+u(xa?!jbpW>6>~X_j__d{1Fs(>1b!>F7!~Hy}s#B3nF=rRd)bv0MMVcfP3u)(8NOk5(GsfJ(eDQ zRM`mv5r_vrb_ejf7R5Lzz1pq=X zR-T5A6G7eB+p3qf5886ax9tgyR2w5h)lw`#pr9ngR9upD03e7QNl+e3k$e)Nawc{F z{28Eme>(*LCUklD8H${q%6xCdahvY}T@&8L?BP$HbvM~133UM15mE3jBL2bp4c;CH UC!pb&C;$Ke07*qoM6N<$g5@Ptp#T5? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cabal-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cabal-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ef7d6f93ef3927e551109f79390763797f29431f GIT binary patch literal 920 zcmV;J184k+P)qC}V&wCJYL z#3wBxD55qW;KGGA8X1Iw?z$)~F0@Xup-q@(+NubCBvMOonl_nxj|($(W?tTm3Z-ZD z-v6BY|DSX3J?FwzHu*2Xy;qm5otRgzdPJ1us6eW~B6Ol0vB|M20! zmRAU*cKvi+%AdNm92@P5e+qn9PeGA~W}~xuDkph z6LcKpRUrN+tIxc@C7u`2zIs&vH>zhR`m)(bPyl;hAY3K)g}?S9!0`R+KSSh$dJ2MU zX)rC1Kv|>p49)CR)v;i-R`f!lATO-sqJ))zbLxI+gIC5yo=%T3Xnb?>3u7uyzmyLLlRR;*~gWnzG z=}e|_bO&b9xSyB@Ubm+c6`6Wo^ez6mIn|~r^4#!ndtli8s~4@mfBFeUz6^^OcxPl} z<0~uqYEDytfr0#OihLBBjLN~;nB5(=KJ-N^tu{6{4zw(1dR~Q-qMTCYq$=65vG(J& u7;0`&Z*Q)-DN3)XofdJXR@&ohZhrw_#}(%*+W;{D0000hJ{WyL8)E{PV4*6~X;YO#DQz0ewA1Nr&RlxV?CryJhF%7!O;}GS z|N8e@|JrAtec&!bETw68KyB6p)ksPJ&tiMHDzfc^T z$>WnR)`|F%4VrsYosfK^V9lK-oW-DmU7uBp3kwNtk$9JS0mv)gd_zxYD&~e>b+v=gG4}zSoV@=_Dax!c;`cYH*ZQ&6S8Ncx-NxjKTg6^gh9)q1bYIi zU%`CC6P#k*6-S}o@mCFUpz0tNH|E($&Yyb#T|IPURJvW zk?|3n1;rq^fA61aQ){jGO9RjZ)#-(aYdvhO@nIMSUA=#k*s^1hIDn(Dgk;_GTo?Qau-)8RnZbu>+z*Q!WqrV?oUn{BzxX1k4e3U<34UDpvp zaC1yRa06yvvXTVS?n)^J#(KFP?qk5}Vk~GP#ywfZtyqLXb&2ysI>GoLN|fD9pb<#< z%%VA<`Vx_=6@BNP#S(%_xhmSK z>y3L??tJB+*tKPe1K7x+#It>0TYaOk$N=DH-#cGM+b{YK{jikvcNPBuXws7d T(Fl&A00000NkvXXu0mjfEcFNC literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cake-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cake-24.png new file mode 100644 index 0000000000000000000000000000000000000000..31b7b7c6469ed67d8d96df613704a465ba96a705 GIT binary patch literal 1091 zcmV-J1ibr+P)xIOn$aefUeSEzlWw|*Y@CoJ`s?#>|9OT zuCuPYyPnx9#P8{F#Xp}6kXsKRRyvea^s==|vNUZwo=#&{{7XSeFVon)`$>bPZTit# zJnI1}mZ%RT&+g8otF=wCswpj-$q2z@hU$ibZeaR%b@AHdJE)xcdYRd^G%A*;!_8B+ zmOGylwVaU3i$Y$nN6<8M1{pyVG1oZ7{ZBmG*VDK6pw2t)HX0Had@-`CHOiJ~e?6VM z9^U(bCQ5?QUW+8lERO$-GC#{o$PYjws*p@3IdJGr@%?k7ukPvU{oz47j&(EGSEoDh z!s~CHJ2>=lb&bWu*mvKc$tGNPv}3DlM7G*k2}fx47WdkRN zLM)`KG1(nlJb#PFpKbw6W&2nJ=vBI38nE@;(&YgFI;s4v&8Zqee;g$gA!SNqG|3pO4vxKXiQcBUf|#|6eBNF%d?f$@2#1pR zyb;2|IMGm?gc2tmi;)T|sA`V+X;7P+sBbQ$Xz+9r4A0|qXv883uKt=HE(boTy`^O*%gR6HHVpuX&P`>`x$dZK|qLt`PtL002ov JPDHLkV1g(c{>%UX literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cakephp-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cakephp-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4b9a9fff37a566e976a953f3c5bd8843183280b3 GIT binary patch literal 816 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_casc-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_casc-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f718c12178f87a74f2fe4d367ca0eb104b256201 GIT binary patch literal 1144 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 b{=I$ygyPvqCTmE000000NkvXXu0mjf*FZFj literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cf-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cf-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9f9c76c516e6beb976f54ea0b64dd12c8cc659ee GIT binary patch literal 603 zcmV-h0;K(kP)hkNe1 zkY)*h&+9)tx}dee^gn@P`8GQO|DB2ee zS6TsR2n1eTx)=n&W`&`V(hiUgI^d9HYHR!)_ZA_9U}o+OV-ph`&CVutK7ba}=zi3f zGT*QQH7kpUU7a*HUZ$|%7)P8=PLy~7Xlrf3f69k!m(5pj{puC+-EMB*xySU(>)p5z zf?{tG<5N@I@98xJq^v+y6e`Qhn4EsO#~h&J)=e^OHp)s%X=`mU2k;aYU=xD*$h&=e zZ+Bv=U%nD~zi19%x7z{GwEb`I$-v+*&_aa4;SqCy=-L_pc{#a;1_vo6;KRpHY-k#1 zYN~L^#+_mcpzAu1`@`hrx_Qufms)={zKU{AmJ}ZfVA!SuFNOgK1?#zStqFkVqhri3 zM63ZMAwwgh?pxla41Z>8sN^%ISek$yiT947z(002ovPDHLkV1kme3WWdw literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cf2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cf2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..69a81330333cc558a6f42513f4f764975fb5a16a GIT binary patch literal 794 zcmV+#1LgdQP)&e_@7A9&-)aJkt+Co0-f`%^HLVocLzb)o&xAAyw@S`rb&G^8?w zPz=22Hi9T2g0hPg&Be_83%x35W2y6^O+4A=e!ebB+1yWO!!CL*-{*av=l$OAd*ihfUkz)YBG(M$eXrVEX_-wJLtTtQj-^{-+InX;` zLRCc-p}kb$t)?sQLjt^B?_QNgQyEAowyVK$9G<>-iL49_hDXOBVp*I!Q3HWMu-<2# z`GVd76SizkrgVD!J3k(3jZK#(*LXVGbdR6)z@XP*_bx3~-K(fQRvl!%5elV}*69w8 z-G1;$!z*Cb<3U0~0s!EfeF1O!`Xh8wSmBnj!Yw0FE~oRg*%QX@ZaMI0MUhZkxF7dB zyHHY81XW53j+E=e_PIP>RGd5$SP~`5WSIa47yzINHM=-xn+xo4I-Tr_!yzxp-wC)l z?8!`rd1x@ie8D~+ZN}dxC@RQ#1wauj?xpFSI64#cn`U0ErXmN~R_bYfy^8m8e7kccIyzi=Le5Zt`l00A9p z$2&lss=}w~Y4{0Quem&K3=Ny%Cj?KP_XKfk;JqSNC=8j<=k;M`)(Q}Uj}wz&b-Yht z`D#UOb{0e;mainXfY)#PAQ6kv-qH+1xgN(2m7v3XmT?C-oKDnTyAG?(hC>I6u`e$V z0Pxf8!o1xcQ5VxYSXf*{TW42L%{(#+^T=pK&HwSMh=zzOlCq51Pw3`&jio}^;?>54 YUjh)>L$lquRR91007*qoM6N<$f(iv@ivR!s literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfc-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfc-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e7115b812e8f73cb1a0245318af072369bdb6395 GIT binary patch literal 1127 zcmV-t1ep7YP)_n@?u+aqpTD1|K6fj!bhT7jTrM1&eXNG&v=i<$D+A>WrfwOoyFS+-8 z=X~d!?*g~k1OTSzxXp!b+pP>7x^Vd3IvEZDzyaZ*KANI=y<3e1G6l>kH_DhO1ls)(WpElthRu(e*6ayj(;)N2Dn zgS@}75iLzSHGTOK&tB*ug<=vXVMdWP4GdTQl=yz2u~FVU`kGdS35-onvi1&#`x+W# zY+{_RAL$74g*<*A7@(>^EFKCGffQpDhjT4Jd>~Pkz$-7ktc835Z@>4BpZ;f>VGvLR zsNYgAH8nLzecNqkFPtX;sDMEbNKJJTbMy1dbXNd~oAdC4+a-!3e3AOn#-}D21OWiz z&f2@s{`{c;0G?@WlVq|6XMXseho3v3yPBFLSyhcwUw?&9Po-9Mc@;$j&``fs0AOJ7 zFPIS`go8;om&3^DC^m1}jIr@?OioW>-=3$nb$5$&b$9cR!6D4fUPC-~w9OsAPTeVV^r>gUkat6+KiRs#Tp z88JKeF92Xuv{AhC;++@gJe>3J-U$HE2vNn|b#<7SnuO6nZ(?@i9+WFEz|7EpI~oV|y0PMmY%eSF!|kk1!nK9fPimU@^GMuN2BmRIP3(O}-o(8vgT`}+9kjveyG zt4HGH7XTmPfWfBmnUK#~<<9%nSj*oWXm;XQ>pclS$dLy9Ik&Tjlev6n;tfuLHoi zp`;?4U6RfdC-}+9le{O|i22Ms7P48WD%v|bEW5M>=bRJ@*KzE_P9FQ96N#`>B9} zwK7F!;=Kt8#)4*&bsm3bm&%(%AfL~dRn-g@E2`uQ*KcU>8UVm~gOZ|Dsz|JrYqX^l zye!)>(0aCd(MWht&?u%-(ibkjKqLrA3;>XZ3Q4aIuv`rZ6i0HcJXWINrT`8;yDxfb tS5x2ry1kA?bx~CEZ~LQvD`Qr){{YBdQ~}8hqbmRa002ovPDHLkV1h^t|9$`f literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfc2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfc2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b9762ab1d09e3e544065cdf6e28151df43637314 GIT binary patch literal 884 zcmV-)1B?8LP)+Mo0+8g87(_V8jw-YUyTOC5#at;X+7|xRYh#h6q7| z&1VoYL?XmwVu{pLwu^1Hj$n$WJ3ZYNMK>d=$AzeNwkjj>zdO(W|NNi#dEfUuFZ^Q& zy%FP#IWq-STo8+iR-@5cO_}$Lw{N}Ios$6U^-bxLs3{I7nqR&g>2kZL{L1{zJ0BG` zJ4?+=RWTsUE!w%|;ZFqufxzsMsj0c)M18XpY0zL2;s@hy@sOF3fvd%h%Pq5h)ryeL z<$OVf%}(;rVS*_;yDG@B^x~bH8@}^mPpf+T^ckwEQjl-qx$_k(^79xlK#RAnEyBDz zhL0E_noNu8_8dB$8nuAGqZ317V(9zkojZ6GFS>+;UaSQ^bolwu;YV*Uh%?gD9u=3C z8bVvt9aGaLaPW8uPSr*;0nCMK!$bY`ad8s>n*<=L z!mC!Xi)*)gEUGx(e6Q-MUC4uf9b_X5@&Gi4`BxK(zM<#~Ak%+Hv^<&&i>F-HH{d%Q*A zSe9#M z7aA$QTS@w)G;$VaAxZrx+Pgobjk-mNIvu+BcK#ptADhCy zqFp>|c4B*29eW2_jRt`JT5Uw!Ez5lD`h>^ZimWJDve!{lS4Y|P>pyu!?Vzo_osP~< zW=)?KO@`D@BoO%0GZ!uKOEAc_o444sW;Mx4dRk-!Sy8BMXpGR+Hagg~V;c)I=kvzr zqpr~rTL%E=FJIxviBqJE8jU$C3xodK5NvI0=e^$#Kvi`O=gO{9kZ)n*>Ow@}$2%6~ zMeEzB(8tAP+HYL4{okV^7W8_^1GQ3hP!)IosqsJ!?mx}_Eqn#$LImu)m5cNM0000< KMNUMnLSTXmo}#e; literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfm-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfm-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c178a6d437ddd98e7e01ce675da6757616ad39c3 GIT binary patch literal 1043 zcmV+u1nm2XP)<}O z;YD3UcvZ0evqm%15@TB0G{lq|Bb^&*@%VH_BAx05 zx}5N^wYe$Y-rBOkNN_CyjEGV|(OMPFz*WIl6;(k2->Q84`4^|UdwKwHvVM!e0vID2 zJ}-{g7*T6A_#|KuwIHe>i+*sjUqo`@CIpB?nXsw>$cXwGksuI7kQ`q^#x17+o=T?p zb@-x;U%rC%7u2B4&(AS*VMNlYlx7DK1ty}4qtCm6s;lhxN6WUbICB^+2Ds5Yv3)f(DY<%V1+#C&$ZBPh` z32+ZW(S65eS(=$)g z@xm@$SXf|UYU++WftXi52XOWGKcXS>t%|Qi(-sU=@L~xD&U3ve9bUN$Ksuc+&J$Qu zTN^JaDdEWR6M2&w784D?0GjQCiXsKqMkG+-RorZ8+{D?zA?e)vwwylqi#hqzIWu)F z9{p&^5+ipH1u4xpC);87t~M1Tvj6ZAIW}+#fVcK^nh@$+m2ej*g4H1UP)sw8k!=ES zPeW5zdu!{)_8l#c1pRHf7LRMpb%}W%zVDMtr-->8zADLN64!MFF{Dyy6euYz72hg} zM1uW?4*&RJZ*Twb(F3=(DXL-tQ4kEPR<06ItSVv*uImN)7s2&nQEf`f%CJ_&Du@WN zSPWxKl&zdewpJzDD+;ni;i8&k7GEKsf&yXJNG6w|SdLEynk{rYa|#_sT^T4wOY)xp zmlWtd@Kxopfq^ssfstqN_;h8CfTif8WIA~=IhkAzJ^|AiTQ=D3>~HeRzam#Db3On7 N002ovPDHLkV1nBi?J@uW literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfm2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cfm2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1ba06e46988c3dc848d23405f2832cef846d65c4 GIT binary patch literal 908 zcmV;719SX|P)RCX#)ykvm~k;R z9^!B@&dptUxG*tsY7{Y^;xWXPDI#cLn@3cT;Hr(L)U=cq+RqCFi?)S1jW_<1H*fNs z{&}9~%?s}tA)3SC4NM9J#c2a6;%;lx?B27xYWs#CE=Ck6{C3&Ic7Jd~xFgZ1PnQQL zN3Av2S zwBl&%KLGG`1%u^VroOLg&5jeYH=?HMrzBuS0O;{m{8HuJ^QDa7e? zxSu~KB_)|aXJ?;y0T6}m(;nzlRn^xu>^gD61fY&2V7pR7>5A{TV5_33xtU|9&#<7d zkcJyK8JC%XMw0r(8xu{OKYAqGq;W|RR)G8iI`E4;giw0eT81Vz~vGdl)umvgE$&1{RfgLlb?7x4Pp zskPTrU0a9W9{`}%UeCdbqXQC%_=^t53J0<0<9%#z~b|1a?C zj-3?DnnCfG^8ip3h2IaC6R(RS%Q_Z-$4)0LEv;BAW_-R5p1E91$Qswbfa9@4ce}BX zpEs@VwJCu8?|<+I0$i@C^*phF{4IMXK!G5dKxGSqehOPWYK&e#ts}$p2dlx zh$LxxZ7M;aVAf3Zvdof2-6P8X>{GU^Uxzt0m6FBZP`Yvjf8DtGDkqviR_16IK;!)f z(L(y5Pe|y#i-H5V_go88k>o%FEw0J}w@EtOp=DDG{w!i&_- zK~zYI?bJOh#bFo*@Zar7XW~1U3^MQmdW-{AWV^1g~w)P!ng jMW{*+asJgC`#E?4r+Y$auB5d;00000NkvXXu0mjfJ+7)_ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_chef-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_chef-24.png new file mode 100644 index 0000000000000000000000000000000000000000..28aaa52b7d1756b6bf278c959434453ec0c2976f GIT binary patch literal 1380 zcmV-q1)KVbP)GrPFol{WofCjwiINkvI;~(r54#WN+?TEf(SH55E7sRQ4Ep@ zkpeCOLJ)z-8bMI0MwF#tNhmu8v1PN<76xghFm0#9bUO3Det?n!B@h$NmzVe6dFQ-) z?_1z0Lmo#^MZ7ufQ`H*mg-Yz5L8%Ceo{Xt+os$Ka|I0wXNQkTqS!W3H9?-T?4&oNk z)xmJf@)k2LS3R*o)v}Z{Rox6E0sh;jHSeq^rlQDam(kA@?Xn7Sh@^qO0YnL04GC#6 z*{+hu8hDl@j}?(kfTi3Yv13j_uh^RbTY5b=VA!MbzyI>K=d)*H#A4a5qUC~NL_3Sd zHMUu6!%p>*HO8X7l+({DwE6NEG&Z=UBsdrk&$jOCXJ>1+bbpr(nA?EDH z#P5sX-<*#2a3gRINZ4H3Zr%24$ytC0*a(aPT0gM1a%7v5A0{SV9ty+@%xUIyEzKC6 zl^z!1Ke=bqrWycCJ$v5Z=vg9UmIb1=Exy?0Erc7Q{Em=0F%BbBhXZ z8=@D!?va0DRkx#K#w8Yw-;nz2E)W~Sd4zmdjeW?P;*NQMWp;tbx8w zt--xOn~cn?)cYg2i~YH4%SVmX3%o-8L!d(%9VV7gnt;?tp2^W1o`8!3tnv{39qO{-yw= z+C5&G%?8DbeHQMcdkpE>0lqaq=v z%G_`Ow2vnkex%T6p9vbN81bNKy&X3I27=CqyG1_OwaqDnYqh4OZ%r^PPlV2sk}l-} zO)MC>s5t;g5?C0X__s|={_xa>9eVdvKO4{jVF#*dO)Yi#j)(NsZ++y~w4H@qM(Fl7{Ist9I>T+UZ zN|UOIz^Bnp*Zlho8lq}x$}B}c2g1Bp!s+z|02o})ifR}*Kkk;;v(~{3; z0#PaqcVxTv)@wavP_-<%lc{oAAVP$l3ege>jBEChy8<9RbBYg$1ZW;!dvIar)9!>w z-`Kly6QZ3(TN~;%8bRfRa8~Sys~+;fZc)bxu-e(_-lf#EK${ mmKzc}ZO<+(c#`!`75@PsPy%LXQX+f+0000I09RICWAezQE*; zLi9AqWPkBjh1@O=0Hk>QXs3v0PLxeW*NCKgZTR{6xKk~p|t}m z+Kcjrx01_6x2>M73nc`Auqpq`T> zI@k`enns(v$b_EYy&rt^ceW5{)sV{`hDhObwW5sRR)VFpT^*p*#?Mm7=}X*n9^!*B zKL=wjZZ8(eOdjXK zxPd}2Jm}{-2T2BV7%oZ0vd@+M7bzhWF!fhOtlv)))mPY~I|!Kzn2}*X5(!9Ne=4$( z(GJ9Us~^O@Ikl_6CjM9|i`kUPE8(k@tAi{=9;QR% zF;t|_b|W?cr4R_{>Cn}MYo-u;OT3UM@zJk7a>WcDXO?##&oGe>asKB#UBN0(c4iQz z`&d%5ns(3^)zu?MLa5A9j?ex^+B3vx+JQIh;_M|qcNR+w^tef-^E~RD!ipVfSjYaz zvNmWA4Gfn=ISqtA%4z?Pyz@+e#QqjMP7S}|V0|^m`-3+S9v@b;x1qp}gI0^sVPyej z1n82BxT6NHwG1!ytg^2-3q~ha-(xgh%njdQV^?gRyZUpfHLbgb9_#B8f(SJ>V_Qk!I<+ZN-_Pzu(U=Id#j1FyG@H_x0dL_4Fl z-M$kXS3iNd@#%Wr<{;A1p6!lBTI7v0aPRx31ypVkl-PZeXKv4*|M;`7ldm0`ecCC; zl`QJE;b{c3#amE{(WX1fT-bj&dog~X>4g6a{{Rq7C6`avC(!@^002ovPDHLkV1hrH B)FS`@ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_circleci-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_circleci-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9e9c474fa27ffc146df06ef5982352ed58b7691c GIT binary patch literal 890 zcmV-=1BLvFP)@@ z_dM@;a}GRaNz01CK__y5)iy+45TR29tH^B;Jzts_zw*BUE8iS_((@mV31k#Ho0Ltf z@Tvb-*H@hW=waIcw}1F8L_Y)8x0mERQ75m&{6pjPmgQ})MlGBE+CvlWmd6KqmoeJmGFSTS~_eV z=mWH712>)d66M`GYvpUtm=7pq=c~h!)cze}%n@KqxJ6X!OGm(urTbldmAmf_WNrW(Y8jgFi{n3; zb^xl3R?GoZcs2IK&7D;xKZkpanx~+AM6C(kU4&m10Fi;rdjk1JjqONaUeqQQC-c`TF{iq~{(AAU)3e=2 z*cFDiq2Covd6W5>>Yx*@3g#}Jae7{yEkojMnqLqrDQ_}29Zu8%%8;3$yZ5l;h!x}+ zU_}$-X@x_6{NDS)H%I3i6}0)$U%LaxJ}*`}#n?bGHw}7zv5>povj1`GALq*v^6GrI QNB{r;07*qoM6N<$f;E<+f&c&j literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_class-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_class-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6899cf73e372c61339ab5535c35bf6660afc4938 GIT binary patch literal 763 zcmV8Ns2=%G#EIj2^xd9No0%7TES#90Z$oLVIQy{ zN>9xK^>UjfKab1WgGECz@G;oIa{~te=XKD(v{?b68}tLc(PnCmX;dG#rFu*{Vydsya$r;{mzC+R%;C&-&^Kv1&2&2{F1H?auQo}m_a=~oq^VHzgRv1aADf()G`|Ce7A2cr>g zrOT1A2hk?l5Do(cz#`zG6d_nq9(_@+6bjo>%7fiJ{A~chL@O165oSgzD9J12>kmnM zTSh>vjVfK@DbNSZq0FnWK_GzA9_XUyw*m1c_A6}k41Md%csV#lPN88h$|fV^TFYpT z!>i@%S})_qW(fs47|sY7yFj_)(yK6Jlm}`Uv@k1{B!+}4Rt&`sl%*`CMhRIVAl!+gqP(Fm@<78UZ1GFa2ey{r3;A(vu~!d>Tps1cy<5)002ovPDHLkV1gHWQ1bu) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_clojure-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_clojure-24.png new file mode 100644 index 0000000000000000000000000000000000000000..69489df6681858265df18d452263676f60971a46 GIT binary patch literal 1162 zcmV;51aDK8O3pM^t{3|G(60M;io*xa+yDEY zbAIQX@0{1Y>1=gL8}rV#MPL zo7F%?aVAQs9^feOnTUk%I|HRu18}0__H@aa)=9eiW>IR9p+J>0iyaL%>Z&Y#!1E$< zWl4Zis&O_PKmP5H!-kfwz&%sfN_}-UP0!iqGL5?3B68}U0HxHHNK7?<{JqZ*n7K<_ z!N6FAa5TOoq|%Yeq211~B~!men@I|wl(GOf#{AJzt0e#%$5ov6fo6IpuaTEoz&7_D6pH>a z;dHw~fI=&*a|wFF968y~cp#R7>}zyTU!A>AL_S&!=$(lKDn7jQI$r-R3_2rkKXDvy zv;|-2H+B@i$EnK(1|}BDvY`^nZ4uu3%1b1f$-^aCyz@$FkBC$O=#tLY02N=hAHwUu z1;A6TM#8#L+9ppjFxSnM$rIF-r}spAFNE)!*!oCb>g@NwLX1vD-AbvIDFCp(Z|Vl! zqnA^Pk2$x~>0fAwYyKZ7wuR8^NRv*FV)Ghn+L>o?4q&You;TW3N1Bo&*UfPFkJNW0 z9wH)Rl;)=cM*QH&H>S1Ys6Pha&;mp>Dk3`6qRDb+H!vHUqRO6LCI#qpq&0jpOT8B0 z%Qe{+j8vS#X%B@acLIn|pZ6l?MvhQg6e7#G;H=1+m=$e2g?R>mAuXV@a(Qi9WUc*Y zsk80?pxp8((|1P*#zq*5bg<5~5N@4IxTu+UXMu^eZVSLwE#P{-+2JkEt4S%I_k4#% zIar^!lhwJ~=$URwCcJGGz~bc1jh|9vDdCr~qudPs1n79y{w^y_s}O-+-yHs#7Z_uCC#WDTqm*#ny^lY;5EA8hz0vbyl` z`*vPixM|+`3tH#@$UvJ3aIDRD&ULouSnBy$EM?Yeo~hbHeeu(Mz)K=>ak0)lcXIMh znt-O^nL94eWH(cDqlgGrla0z{YbdZd|0J<8KNpeNfAh2C(oe!_NGyGO(#8k;Dk9hK c$NquJ-*%0Vea=mW761SM07*qoM6N<$g78QxhX4Qo literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_clojurescript-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_clojurescript-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9b26f45c72f129022ddcb57c236fc89281257182 GIT binary patch literal 1069 zcmV+|1k(G7P) zK~zYI)srZb&l1i=_3>5IN#f&xV={xGDp{5Tj4(-0#;1SLgj1e8Q; zu_cm*mWHGWn3&WT4N*fPAWS>c&OO@)7&3IG)K~V~ zxoh3E&f5Fr9Jtp@CL`bGyTN2EkEZC15i5+eD#V8jg2H1$VcK)lt0oU1KwKbYk?BaY_<D*n8`TSF?uo}Rsc^_+jR^uH@ zxHY4dm75xQ1_FO6 z@(6&5hLz zbd@L-V2W-gr^zV|Uma)Qc-BP4O2ap9WGLpg`4JWf3}h*{hwL9SKc@Yjb2&M(68NsR zy!`@jA&YN%sy(sB?V2Gzbp?h1THHt{(3$0wF#Tm!aRRAKS6+hk&mO%lqK%;L=e@CD zp^l`ucGVHDG4N;j?eSP_OK(tB;)rejde`D>c?keCB|9ZRO|dW8sLFZ~?ikpulX5=a zS|v24rwO4XFyh5?k-W>Uu|HZa*i)c~gUR7d>mogOz3*RhyNgxX2duI}q}7cK| z>w)MTW9=~@iBkVSIP`tZti)(8C+4>KgG^r`@F@@$PhM(iSa@!{)`Txw^FZZ&*81a$ zYyi?gzft-4Y{xcL_z0K}gcRMMNfqt*cIR_f3h7MxWF9!PqBLEUi6Zi(h_v^$Z$nj9 nqT25>>5c>Ll7A-CxVP&+4r_M~7Wj+900000NkvXXu0mjflBM*% literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cloudfoundry-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cloudfoundry-24.png new file mode 100644 index 0000000000000000000000000000000000000000..82c5ab9f30241d53d829d9d969ce44514587d8e1 GIT binary patch literal 986 zcmV<0110>4P) zb;ku&JuyE&e`0iWG}yF2I-Rb`<#K05q@%Po2~3sNFO&wVdM*}=y_HU@hgo+#x zP(?1(dBu}W6DJP<=YXZ<<>l=|Lqmo2EK^RvS{pCHuV!5LhZWUtLeGAoo_$$;yO*Lp zw&IvGuIqja%m5EZB9VRNSY-u7ae*rlF*O?``cs{^mt{`%SZX5jL=JO7DF zH3$KWF|`r|HnahVlm@G_4g58XvPCZI0JsjIs`1u^({t+EGxs{MBYWmX7Jyevx!0=} zh(@D71Gj*k`F#F^25;$I_3Rb(i>Pl2{orz8OWk|9T<$}l8Ms*}6voT3D)vD#nd}0F zfr2q+_v~Yb9~Ht0L@>~@>-KP9jF|)?s@j#wWKM79iEv$aL{*OijjHJ=h zZ*QFMYngT&=Mx|T9IFK1Pyis4$$SQM01W_mc2T`x5kOVzfDYGnk8Z@+RJ8St&$gv5 zP2E3pHLCheySuv^>+9$Z!}ipZA$s(RJ;{a31X z07xQ{xFjMkt=S8JJAeXD0?wMVyI~kMXS3PA)`Kb)SslmuI0%A+z%`&jMBeA$X9Kt` zB1ctqRz$V~i{;=OIk+c!dwc6eWnmDH0Y&P$FdPt|;Y&KsK!9V<&8Rnhm z_dM_aWq|)v8OHN^Kh(^Az7h7bcx2>!)jYst6bd4k(q%9jlAo6;Bvz55ro{UdrYw_K-Y^# zEOzt~=QcRE(Uem@01OJk#9mVD3MdrLmnrSZbM6Fy5CCK-&7F-#cTKS)Kvj!|q6|H9 z&n+7bs#8iSD5V$)hbNv@)g4dNj(|epTv-s(eSx^eZ8W45BZPnuf~+j(&M-FluK=oA zG-P?;61Qw{Yh!yjx3MCmv>*Yc6vs5}ot;u_3rMA2oAiY(mK66p_f~m(=e6sICCUUY~T`c;AM&18&*S z_4?dYg)zoxo+lFbH>FUN-Zyi(t|__z26}vd!@c!zxWh;5w=Y~!3zo%GrfI^C$5#XK z0Q5{UIdM|gx6EP-K+|5Ca=l2O#cgnB-H)I6YIQ{4aqZ(@7EVu(elP#f`s?@QU!!Ks@@y|5EHB?3TwOH? zArM6o!Ldz;!$)e(<`;9#X0t0m)5foe;^8xXe93%pW7-wujx>|G<*Q= z_U(I6tC3dzvw@oOxn7%h*FsCrIeI!74o8_JwZ5#?Znh;D=%JP54d;XD;}Ags0N(cQ zH?{M452Q7r{>I&W_5ImFIXsvh3ck4L6;70HZMUcqEiJIMR6#CI_T)4 zphA)tC?Yxq@dHIgv|6FXt)WB3A_xYxG@&8)IOOF+X_EH_xBj<#&pH3!J@?%AU|Ii7 zvE+6}GC=^W)P7FfX$K%`udh!NPo_iZP5AUW!T_)Zn8R=sA2%tSOHK!%B(I zwfVsp0sP!Xh&$#0Tk-K8)Zo`~RA#H@r*5tA2I&5>0d)7$LD>h)V-H<*I_)IiHVkgB z$Vzn~@)C%&$ecpSBJ?AiCTV2?P1ECvFzP=EoCP{v9HkGT4*)ga02%}0=>w=f0@k@O zuBZg$fi^@A1D~83s1UXLt7#*dAgcF0npboIl{1KZfJz6JeFW$N#sSFv+zV`UY4{42 zCx}LXUX&&9^??4eFmjKu{{gG_%EYO3}4X9IDbkV^-Dy$M91ms9t z699~k8dT3wz8-)c$6}9nKq%kg7=?+YhpYQ`Yz)ky8bl`RfF1ye<6klC1ha!w^xj{w z)eG-x3vEYAcbfqk|0>ef^pg9()@~+XW`GdLXN<4V46v-0`U9*us!MgSE3p6o002ov JPDHLkV1kSV9>)Lx literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codacy-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codacy-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1d92d3eb7d3960fabc463af55964ffdb4c5ee419 GIT binary patch literal 829 zcmV-D1H$}?P)YP*syA|;Dboj0e8&V=#hg}xUkcwk`Wzvq7c zoI7{Uh36r%EIZ)6KkL1}RB4Ngiz9=~4K^ECSXgLO_uX#yLlLs;rK%@;c~XC9x7&w5H8b}x#e2@xrvwnQRwp$5+f zfde?_mV+QT33P!Qz=;aJ9%d%0`je_!d42s~;69bS)K3?Hm6erkYin!gfH~lGGkYbD zL!dXLVy{ zy8uD}@BJka`LY~ailXS)77hNc88o1*AP9m-wWQr!gafR9Xc74X$_fAv%mcTJqFCN4 zJq*L6d7d8u=8B@|Y?|o3A0HOpYPI(C)1PS-s=6Ea0yrZg$DMOagTTG_Z-~fk;6@mR zpG{6q{$7o(?;Xq`%cb4)K5&59rDx`N}mSqR0rl#%zsOo9pI$*%hz%Nl0y;c7CkAWSv zseg&c+s?V~>%0vHRU}EWz1eKu2gYl1H;SULG+zSVEcFK>^1gG<_i{EpGDk*6#LTV& z5BrUmOLJdDF0QVwzSa*uP?Vka)ih1tOVjkzN+0yl|KH;u@%JyCtn@^(00000NkvXX Hu0mjf>Y{(> literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codeclimate-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codeclimate-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9025730cfb3a9746bcb7746294e54dcdc98aa189 GIT binary patch literal 727 zcmV;|0x127P)-0SAKxrL{TvaN-vy+7k-3hAKC{ZU4-Z~EXUgB_I5FM=xkFXP9XGLo&S5D^Zee2 z7v2N>V^IJgQL-8U8iBK2^J9aq#Kl2F2&#olr>HO_LCDZ}`i}v$NQA~K7NjOig$Ia} zlJLM@kFui$=0EgopNesCV+A+Z0>yyuB%IlO+MR$_iXEo&W$;n@_`3R*a458=#cSI8QJb;+`3~ z3{UReLW*?V$^fgW92ZWN^44lDnxM}+0PQgYCa2x_Jn;o8T_Ji0hB(i5DOaohG1#jox zpFY&tTM$@S;5E_as4+S11_1n+_dtL090p#$=!TMw=n(se~ z>xow4??Xd#`-&epySo1eo} zK~zYIwUkRplu;OlpYJ%0I(Bh37N*WWqeNl5B8l1*xoFX%=*Flq5d^hp69f@PVV6a< zXqmLAMujkl7DZ7+mqoN_5hX<0{Qsz!Mj4d18J+)Yp(AM{&Xm2Y!#VGHpO5cc;6F>U zG1*qc!c1%gSs|zZ1LARC1wOXL{t4hz*6l>iDbRIuSl)`t`3gIFM?kX%*jA)i%tRZo z9r&W?4WshJ)l?6FF^kGv+-(98V7bC$GvV$Fbhmw<7Z9%q`_&^aLDndGIe)C^Y-wNf zNTx!1%Jvkx-h$JLo&Y*MUbCs}!>w;~0+chx33WXb*eWUq19mi;u`#pcgzD>no51rx ztg2Qxy^9rh)gvJFpb*q1m5 z^r}c>MnHFE!&=bQ2+h?U?a5pL)gA3gM6Lm=CbK5xNe@!WW&u>i#u1bRh3QTXM5unVZUqgHUypMqZxo~+)1Do@biD0HeGRe$unN(lt zVIQzfl)Kr6=L8tbA1MdCI(0i19FUfZdggci1z^;duz{a~%=LBu8(`{n-vf5oR>WFx z06+@U1f+~f-Hum;{n_lv>6!w>gLS)Aq!sugB9{c7dWW!A3`B=B`Ex$xfZck>Rks%S zs;XCA)pv;^cT280^GZRSsskJ2mGuV}JUkcu0>|tQpKa1d0000007*qoM6N<$f@vOj AC;$Ke literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codekit-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codekit-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b734e80ca93ebccf122f44efc0734ef30e2a9259 GIT binary patch literal 603 zcmV-h0;K(kP)3jlL|jiyEifE=lsB7Dc`KzWU=8{O7O?^Ui?Bz=K`?2M_?C{zh&C zSHKM*G3^Gp1Wt~HzW}};0PnXIaBd2J1^hk&9=2b=g~`hA!F}JC!C)Y^ZA-COl+kD; z^?E%{61x+dh-2yXdJ;ydRFYb)rux3`M@hZ`nJB^4A^3PamUKET`FviM%Vm<}GD`4O zPwI3!3NoEeC6~*oF~@OaKA)@cX0y33__7Z_Gld@^d8iBC9RoL%ywL?80I621Dme%O z$!4>O&(n2XS*=!TUb$Spa}TMVKmbHU87<4gvXU!FDwR@sBEovT4u?d~dmFB()oQ8L z%x1HLN94M$EEWq95!q}u;(4Av{#qA2(kGfo65s-y?(gu@VFLy=Mx$i`HAW z+f|auWFnbNMjXeHAP5w^(P%^+pC2VSVOterC3>ki0KX-sQ~*2$e(q25JWu-lzSy=c zg+f7w!=Y3vmAGQ}JPsbl#V*mbOzZHMN$@bv*;YkU_$~0v6dpzfc+d7l#DTBbUTEx@ pn|}JIz!UC%`X7PM$FBOH#~-LEFIzvNYQz8l002ovPDHLkV1h7u2N?hW literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codeowners-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_codeowners-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e5b0b578dd56407a7b949e85855a1b2a4432f8b9 GIT binary patch literal 844 zcmV-S1GD^zP)GDvfKu40!xKL;iq!B z{B&qQtyasGN+nlStHAp}323S6k0P>cjQQJITUFJnh`a$j1a64P^7i)j&z|Q!&IANO z@TIDL4(tc+0Y8Yy^7Qm{C?d9hGrsS?Eg~Nzn<)bw;QJ_wPI#Ud^#E2@Rwj%we*sri zb>4BDKSe}$_=3-DZEfw%IF642=S1YaN~LlGz&uMuWM4A;)^*)Kb`u<6YHI3kv)Q}= zV683uzizT!_QqZsR;a4t`+ikK#yXwOwV9cjC&Ty+oq_NBXGLTQxH>jA_T8|4-Txp4 zu-2wRMdWbTbSh0VK0a=`WAy-l&E&a{bX)2gUrQ52QB(j>)%E}&ilX~~HO9Q2=Il7m zRp4%-J(B@AkYvyr0C=AF2)GSQXJi1N02><{Sx2}6Y!wQHTLXZE{0nfT(P-qK1JK#o z*;GJM(W~8eQxCuxGY=Ho?e?*>03z}Ya6awY2*dE5B!kO6KK(-9_pbv^6h&`&p7$^# zlOC(pYPn*u_^XJ#+-x=vbzkKJM^aT!0;3}%BMbFkt$RXf(f1eltxUSn2 zk*cb`o6F@E>h=0)R$x_?)z#InMC7E1eC9aL@BNz0h7$zAQB_@3)jP(Rk1Lf*qwjr5 zRWAWEs(RXW-HT~)p4-vFFg$3jT?8gXM8!K@~42R>U=XW{?LpS~P_4QY_wzfV5Ud!k6i<6U+4~F%9q4qDb W)g}iGbB2BZ00002oO5s^BGX-YeEuA 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 A4FCWD literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_compass-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_compass-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e3e40cf339196bf8775dfbce6d290a581b9b50aa GIT binary patch literal 886 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 qcJN*2^u?KDXTQ99_&|)94`2OjwLX~+yt367 zaJ1|O(e*nY+xmbcah+I~GsKh@#?0Zo$qCodg6fg8<3njX@HhF5>}_)=0Cfq3dtJ8q zsgcPv=cqU{uIZcskDT&00Q3g2ew>ATiUB)Iq@HQtdu4K-BUXa%Z-&gyO`ZX95JW`; z(Wp$-IL3dBF>sa$mt4+WStP{W01Pce0W|uExh|n(cS&Xq+(2|>2r?^j*1NDL^KrdBL|Ztsh`3K>*dod&~%pd-vE(DwMrSpCGzvUxHn5b-_>hzFVJXf)J6yfD2;AQ169 z4+xT4#@21%UlX$^BF7rOP&YKV(yr2pMI&107-29TQl!3}NvJw72SGCMU*W)lC6{)= zWl!rMzz&!IEe>R+aL8Hj{C+b6HynsRy|-%SMhNwRw5dW6_sqKWTVK`uXsw9@VG3r= zLz0aNWpb@1>J)%+GjL#mgWr-EBS#!lnm+;XoM3K&ro!sx9b4B#AYLE0*`@aZ*apIr z3_b$ldu+ozv?c-oKui-LjC9rxd>jo9z7O!rAiPxmx%ZAW5r7h>!MMGm%~uNmo9)3S z0y;=gM^*bS&q@G)li#R_cwY>Jecx1sJ-e3Xm;I&{t-d#zuwQCd;rY7n$Nf!yBPTcc zA%I5#oYCMmm&A}}k;6*wA)==NYzH9BkA7)${(8gU`!#VMLu?>I3XH1~)O$YI|4X`@HIIJ)s(heW Tp7x9(00000NkvXXu0mjfOlA8h literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_config-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_config-24.png new file mode 100644 index 0000000000000000000000000000000000000000..82bec09c0f56ad3edd9294a0fc372f35e88e3f98 GIT binary patch literal 794 zcmV+#1LgdQP)40kpyj< z(M6#swJO4TV?~jpwvC{m7Hu-ZK!_p=XWl(6#&pJcchbObcfWJa_nmX!z3;*%L#hQ+ zDK)$5UmaFYHF+fVq%@Yv&a@e|i~Zd#Z~n_*Bs?<8kukti z<+-tXF45ckAxg)08H8w~Aa%=24;am4XLo}x0XLR8L}*tdZNSD1M8&R|&jTHb%2m-F zE*;}E5Ncepid>AkW6Kzxnrl?6XN#;FgwyD{O%@P_Kz{-hu)&3R>nAALB1Nwu+R7@i z5!9mG{M)aOKL(sxnPBAUt9>>M-%{mNDKcr)25Kmv(hD4`V)#4nZ`nQAS-)7EATK{K zdaaMOPDYT4WLNCbN`09a-k!<=8@ddvQdrBW zwe#hg%ScbW#&jVW=HMJp2+g2thPBAlv z(&s4H7(`wsTuCKG_ zE6J{=t5Ja}e^aUY+Lh<>%N27PsPb(MRRA3Xy-4weTg_eja+JXN;8^8_C%gdKfPxBr z1M%j20K>uTXB8a-e3XyYvvV$;e{MrMn>&D*?E~@HbQvE^cZlbCU*;O0rBY)5rL$@H Y0|4*y&i94Y1ONa407*qoM6N<$g2JF=cmMzZ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_confluence-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_confluence-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c00a606cf8a39b4e8ae3c8d92387d12f8f814005 GIT binary patch literal 936 zcmV;Z16TZsP)MOi=iKvs z=ey_k;{yK&>*|j}s~RFLj0Ig3I8>f;=H z=ImbjHh;+gR`mU_WR41btol5Q-XbaxQSiLaEWV;3V?@|HF+hWLxx5hoU{(Kx#dAe$ zXVqOIxzS#)p)_$ z60F%D%Ot^eB0LJ9Ga^cE=_O0;r!-BESz<>g4=z91Zn#{6&Y^fL0;mDn zM$#O>9HJC%Hf3otGMCH_h`U%h=Kns}KqRS1#fSBHWcXeWlUPy7@74UmETk-TkI~H4cQ2 zl6^-QvjdU4_}!c?qe%1-LT>OD@&jJ?Let_iCw-85!=GkuksX_+i=SzuN{i5 z6gUWArJKRi^m~^@UB8y;TBAAuxN*n1``wZk%=`gMQ<&NLDES(Ub|<+60B}b+mMi%_ z58D}uJ@m`a^wDyfnCiLFD=Y8Jic@CWSJ;47I z6d?ZgF#dp>^VNlY<>gy9On_2SFl)8sZ-_v9c6JDWbZWOB-4KE0AWj27?6OX$YU^Ie z11(N6T5UebwCB)X*3cL99hYiY_nMb6_5tI)BvO_Ii0hn>Feubed#3t(3pET zN+@E>2qod3Kon2`*tN!)Fz6$7E=_u-rClw%Qy!L>CfGe=*&Gs?&| zH73aAWrPqH;9>L)21Dqg#dLqVwkFp(ZrSDwx$Hpdr?6uuC16N#LVSG3>KgBE8SL*r zH}k&X>|AH_K|Tx-2p6I*-OvWbZ8s5@vsj@}SpUZGz9MB}Vl_8re(cRTBN8o&Vq$9( z;^l>&$h`^xz@l+5!&}`o?+72OuA260g0G;xm@EX`IcvZYiIpM5z52{OW7Vunz&0D5 z29SuAT&ha$iMv-Z5_!3#h7Ak1{JDkQo~dnW3gzQr`3k2Kl_dm70?Tp{Md#aO8Cg~V zp(m6o)vIN>!p=G7BAq{f#KFZ$7>BLrS!+kXCmw;P!@9gYmcWrC*b-@qzH)1vl}O+2 zl*_9KA@n!osbO?fw~&-_d+OzrOy}fe7JxcFv;V}0Q<>@7N0n_u#&6w5qiGKxPOqN` z`P|j{pyTdMoxZ(2#Akt)in1L;Bi}2{X0yZ>ykX#L!I$1%pI102rG9;->+K0h`~pBD V^lVb~IXVCU002ovPDHLkV1jt>YzY7W literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cpp-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cpp-24.png new file mode 100644 index 0000000000000000000000000000000000000000..849377fcccfacb3e90a536a397a9e44cd09e9cad GIT binary patch literal 665 zcmV;K0%rY*P)FGB|Mo(AP&P|hj0)bYAf6X|AOz)E~ak6 zRuBoRgPv-RAPDr32(df~b%+skDCmb3ICAd!blAQ&$r0O8e4n1@{eGVJ`}y^G;1CBM zvLBfmnz^LLj9~QyVhrdPgjb(_eVuofot=6Dyw#nDgR{qed*q4201AizS{9WX?f&*f z;AcYtbHTahV!^HmoT<|Dz!q={I9iYKKLMUXX;P7jxxBMl8oiSp&jBn17d+p$K3{Dq zv~1TKAOMMxM2EMiAAu%d%OjkZ)%w*1Mzh%o#ln- zXfhBVL?njlb>IR3s=diT{DY|63unisP5GSkh-+dMTPvUulrLH3$8JRkJ+%f$mZImA zS7v)C$%d#r4rj+A73rzd=XkrCJBo;`Mlxgl?i>SPj9GIDQMvYDc)GJzNKs`IA#IIa z+avU05z>ObsHO!#QAq_7>%h4(DLF(#;Y{=`z*KO`?=N^m1^-TZVsWDIpHta`-LK;Q z&`hrtv%=rnP=WWA#z_?4c1c@f&tr8}vT+-?vg4~NG6H;a!xg#}x>0=fnC`m+7pZ|% zD^10aMSBI>6gG{Lx1!G?OVQVYXrp0=IH33gQnA2NnEiv?00000NkvXXu0mjfl_)2$ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cpp2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cpp2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9752869f51dbbeecca7b065d6b636cb0a3caa727 GIT binary patch literal 707 zcmV;!0zCbRP)`v0Dp40s2dH>Jzy!^l5Ux$QN z9O;d)b4w#4+YoO7^*-YEeEEBWj{XA}m>{h{osXRaafwC;$aMeQm_cVYhE5Lv7pev* zVhYtRTggaOBmjMV63u%8rK8Dy&|%7ilLq#>wexKkvEJS5w7A` zlNH(nItJ=7yiY#vGtpQBneN%3iFBsh!JEOcUIy|d9T|tn-oF4chilyiAYqSyWO2+<2wP-tp^^Nx zUxDKB{xgUuIrCw)3~MJjVZQ~MeEe&)rXBavcc1tPL>>V#gfZ|eoGb6E8^rBagl7RY zGpO7LodAg;+6=V#YL-Fz$ff!!8x*^E0D-4D49j@ZOg>e%W~FygGUFMvQGGdheLVI2rM*@S(Rb=|slg?^o$*NbkY>&l!){&(+r zK7Qx2yVn{28BkU4Sr2>)RNN-zvXH!6UtQ7suK<+|o|Qt%k3p=P=>;Yw1#Lo#Hyd6q z|9M70Wkcs;#T4&IK_#GM#xzCXD%3%OFBBt@l+!o}j!NX)Uso;fod%e&qXn3oSyg1$ zd2(eD_up;DqNdUlNy+)Yg0yt_@C9R2D5jJ*yS*c?w7MT{1kf^KJF=TED=DD*u~Kx) zlwq)_f>rkvQc*UK{U@(+p>G_3zL6kjuUwm(r)jl7BUv`g%WUGZ>r}6w+T2J=5{8*x z>zcy$^`*?QN{)NFIp+DDu^SN#)6AR9$(&${o?7KX*HX=I#*;MtIKa8y5CAL63V3l% z35lf1=f^Iy?^MSWaHetsbWLG-*{y*ZTL(DT8%(d;dxNz14)MeJEBHf^^mD7G5YGbT z1Qgk=Xi92BlcuEeYA78W2!v?+^D2RG1Vsowdww+*RpHAMztL2)mK_J$_``eaBhLvi zvW}ntg5zP%c3$9SEQYD)=PJvooB)3~fsvGGsz6l)HW6h1@iUlaYJ5eEvEiX*bPh+@ zdGHs6NKN|Sp6`hpCe8v|x|fm*kT6WzGd$nD zQI17R*_rMC(>46NUMyV{O$`GBp;CvU%@Ox_Sly zSm2mXd`>>9qDCik(iQV7HmE0l`t@o5*jRe19&do=)=SuJI`=MiVww0ZA~A!5Cp~Pd z{f>@qZyFehL?IfHC3iX8!)Ke@rdR~9qNZup$oP!|{nv+<$gF>vrYe-V>_`dMd_jz4 zmfr%3oeTS&4#(E6x-G5K_8?Q`HHWr({i9#_M+5V7#k1vf6b6bHI9}`8x9xCtY{m;` z>Gq~w{XXA&!B99aSG>Sxi!XL9th-eI!p__E_{S@At^2e#IM`R$H|VX5L}Lnou3OF0 z;-Z#ChIsDGH!nqJs-N|xzxwqS*LW=Wfnk_hUg5mAJfCdz&9?TA>Tg6fe+jEXJTw3R N002ovPDHLkV1flH5vKqE literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cppheader-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cppheader-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4865c96aaf077effb8ef5ee0ed0dd749641be4d8 GIT binary patch literal 551 zcmV+?0@(eDP)}Rd909K|~5Joq|It4Mv29nB3!%Cw-|^hde~+Z#;bGeCM2dxNyL~MgW!3 zN-l80pwIe7=}Bq3p9T&fE1h)eYy>U4)z9KT4bmiagP=FCG_jP~Zf>4;UdK(ou4Zm+ z=H*PIUj~Eqoz1s`(az$bi*pk=TPR1RT={iOpZ;xV$hY^e^>u6|qs&zDkG38+-SrUlG!ZSGD0kzz> zLno$RPd8&hbSZoRT<~Jd84-{N4jXI1N!cg?su`>b5;s)iq43=0xZ5x0xW<$G~@ z?*#r&9XVJ>EGlEQL~j|ZAr>91??1s`(7lk=-gx(-uKc2*bou`c0)Up;$H0PPKI`{< p3GJ-zxR#r5Tl;g`%^Z*pKLFz}mZ$Y~kEH+r002ovPDHLkV1isk?`{A9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_crowdin-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_crowdin-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7b4baa51f714953442156d885c499fe3b2c5b081 GIT binary patch literal 1082 zcmV-A1jYM_P)6HkWQnE1E+@C0PTPQU?)(BY*4w9{vf3b6yVTyyt!2=Xriz5M+~pySngu z`Fpm{XTLvtfZO@6!xnpNZia596%=z$`I3+YhAc+J!C9P0&2WY=gdQ{o2Zy$8gIt!N zwia4?;p%4@qZb%ZNkGcY@3w$SBuT~+iaC-gjgd`&Ed-`5p@Kr-vZdJ9d#c8|ZV@!J z7nE?Njsqy2s}TXcA%Uwy5`T=!#Epn-A>ayubu)$_B%(|q!Zk*=rgWE=_#>;mYu%Zt zZJ%!+h|UYnT=Equi8cUt%+o=8a3R&RauYDS1S)o`%QLMrMD zNd$((#H68`hsQ*NBhbgV81x@Xj4rr?lkItHG^GV^9@&wzCawf!&BxU%av87-0Im&7 z{Lqr@jK$@9dtOWvH{z%=O)3gaDl?hH7&v<3308O4^mt(JUWoY)baG`|LUe1Kt=Bk% zX%Pa0a&+HoE6xMB003b_;qYnmw-rw)w`uOZQ6KCBv)PaL_$>&qOtZY0YBbUC3j&xSuc{LnU5B7)T zm$UH2GrMHM{24AiQ#gG924;Aaarz$)sTc>AMypffWp2n|jEOy}@pZ0orHC)RQ zXwuyRfaZ#MSsaXL)677q)e&k80PZhzX;RTA;RwAwVW^+BZuZ<;`EbtponPd<`O=5^ ztNu+ef0m8E`RV{X4FFOR_8*H2BTkR*+mYt6Bx`c%%-eHaptaNPj@f9;PNgxXc>TA# z!-2&*m=~PBxTa7-`niTo00@ps9BxcZST@_S`(@7s)7G}f;#BGg=Ge+G+Hqg#sl zt))ivkH4tV?^|bDIFjN<1ppXvg1^_s@T8p7IeG{@5H;|l6H_gx4opoi1;0fwm!@9} z)((Zm79*}oYzL+zXu`0yGy7i|Xv#!v<6MmH+DDo7O464RhfO{E66uKWRRTopCCz+tMz)_?^hUSgnv`j?_&fd!!R1@ ziW7n7c~`P<5%~dp0A9v%e6v=o&5Fp;xFv|l<8-;$heuJg4pab3RV@**=I7^kMI`BW zwr%@5Fgs45s>{IZ0YMZ+FM!X!?>C#xW-w~-)YMcUhI}fNHh65Bw34kKJx}ao8wT6;)jt)|QQkv<3tsqJRaIM@e>e zcJ2b#@(4(+^yCzY$Y$?xlw>(49N=V4q}{sEEI V@I*JC@ml}@002ovPDHLkV1j?AJaqs7 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_csharp-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_csharp-24.png new file mode 100644 index 0000000000000000000000000000000000000000..48725399b5239d83809efbfd000a19e2c7edca1a GIT binary patch literal 748 zcmV9P^3+kq!dO-<)2Y!-f1y!#)(F)mf{cIgM03K-|w7zI2U%b?Irnw z^*wb>inah12!hHNVAyUOdxoF@4V@@v@kbe!Hy0f0 z3LU_ce4?u7vq8oXaaKjrJrzy;nR8noMD zWp+4LwU}7ht8gVk#4*Ljt4PR&0~7)EE*#)sdab3|3K||Xl%!TyW&uC2Xw*4AY`y)M zuRnBPf(5|}NLGr-01#F6Ttb|4g7%_3RXn!~NX!pf6ceXRN;YDK38t?_wqo2)98IZcUe2nU+FPwZb6-wdd@KQxAVY8Mnd zF5yO~r}iq)Wrt&3CY^-tT1QCXW(KZ|`)s_H^zj=v>+hKzg{sZSgVy-G9gY>I969BN z-q_(-KvY{@!ecue3)pS3yIBK-p>>3|20MdCwyeR+8p<@nX8;FTM41-Mx7^RNa}esO zi-Tse8Wl&cjkL!n0h&9i_bmB$T`#XZ+S`AzKeeTKUW4?gzb1FO(-{g-3Yb8m*ca(Y zPx9X?+Zek&KIEVmfUi0BFf+{M%$YN1`v5b;43wg=>*<{J zul4_X|9kH&xW*x^wD7UIvQ$k;sSrpaN%u9Le74p5zX;gvcDef|$4((hM}eIA^kpOt zdz}8dR(q@dp9LPQ-+r$U;sfCJE0pws^ycZO&z}5O0uME8FE$ME9&pcc3y6`3P9*u& zrpmJ&%L?phD9_goszKTV$O|z=R>;fD2Lxm8F|@Fj$R&VNLN*;}-rGF5NMPQMCLm>D zS8hfwj~DNx^yZCNOcnsNu!dvkM;gzc!0C1-3i#QjBLSILuDmAN{f=HpmfEgggB0NAjm zl;^j+M92v7X?p{PW)KXjtj#T=*ZF%K&yoUG#mZf4N~8aueE(6D9H4WsgTF2h)9<{% z#)7*!wyU1c+8cOk(_Y>=^ETi1wJa}?laY%e&p}~B$1&`PVnHp4XV$~mgmWGbN9|kq zzpOx{I1&<|YAPdBBZR{`8J3KgU`Ry>K|l*2gdiAF<9g%ndL$;j6HyV9tWbFUt@Muc z;`X`ls$QHPCxtn;kZH>z)0TxKNo1#IBTF)wwydk~K+`qO4gNq`;oL($R9=lYFiUe! z6A}{l6>a1FM{58K2l5CSYpjKC9c^T4rf%m!vL2@?Qjvt_2^VApkV7D)n+s;LZ&4{*WxCw*go zPLv9R7AWK9K!W8+)D!ainFy8-gAn1?oYIu5> zGd-tCv!+w9su0CA=cpP|Ira0`?ECT=dPaNVto4WdA~iYHeyL@wGtMG_k|S$Nd_nEF z+wZAsIk1nT+(5%qFj)J~3n;QkUyr@zCG!VbP7Mmv@B`R#;_zt*5GI ea;3f3H2wjvr>Kr1u2YWy0000$+K`l+|uXr_+NQ z>%8plV0CT}kWg11M==`*z-+;_)+MFXa7P2B+>uc^1D1NNED^TqRpw$gjsc*x&H)|p zA1EOPIRFDdM8bpvAbw#ZZ17k01Ns5|0RJz_=ktwdGl)oFYN zJQYuM#r0mhnX8Y=J2{SYod+p7U}$JG1GcAAaRu{1#%$@9#UabyoJ`u^2@oh`iZ}n@ zlK&>a5P1$A>@%AuFuX&c79zjqnQ{RBGhMy7cM1z*v*^g0G9=aRTuH>2$1Ssh;<6XA mcAfK%*i80sa*r&73_{qLw2W__$gxfYp)q zz`LSj4N@s9bmSa;)Pz)X#z<9B4+EwrS&Ra3M|30u>k;aAsZp7BJN908w#=MqMNvwh zRQzv%M`)02sIzn&PJPDS-!qXCl{H#XCEqgcAQ=o zxh@`Hxn*5~kg^Og_S9PBd+G)a3%~TC2Ar{l|{Fe*Hs%}+_;2jABh6P}X z2*UP?wQB4MdUvOICJ1a<<^zE zCIAde9MUy^OR^|Fzg@F`+dkSl+5pgMw0xNKF+)S+0LVU=LA=>U+PD>@e7S@aTN=qj z=O(zEEj14Sir4RduC=M%ME8;0Sdc#_Ft0qv_t=#R1cFGT1%I7C4reWQJMZyxeHCAv zE~5F5W=_;r@|&v`fCCpxsBZjKpD`&b>H$EHI8q#3wfoK5Q&+!FKX#=8Z;dw_rfp<+ z@JM;5^{&vHbabg*T)TA*twx6;1YU|4I*m{F#VTI-c#!2VoBHB)y+*a_OaS z0hkdxn->PhpZ`34*Tno;h0f0w6?3n#lh}}0HcihZNN*(GY-8i}%>Yb~oyqD6YwrWP zI<*IcWD8Q6Qg|iTZpW^w5P98o6@a+VVF)PB+`qC?DC)GE)eX**#b-Hp<3|=3FQl=( zfzs+jEG}LMz|OPVdADTMeL&H5yR*QNo9X!v3DBr?dq=10MoQ@mP*9V1M!IE!e~4dO zkRgb8vkje>jxhgl;>|Vy%t4Wi9BA$Jh&7N zgvDcY+D6}w<+gMJbp3cfd<1FZRsb;GlEAAm^Xn1p>CHI6&~GxbI&q`hkyP4OT*W3<6@Hg2Dn^iDY=k$B**_~P5DFl zyjdS%9bjF0e8&&fr}m!Pp}N(GxMxD~k$ sA*TXifD2?blD$&Mtwy8q)}!YC2}V4mSqv=&%K!iX07*qoM6N<$f~DY4yZ`_I literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_css-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_css-24.png new file mode 100644 index 0000000000000000000000000000000000000000..852480fee27c2c1a28c9211cdb3df8f71945ea8f GIT binary patch literal 908 zcmV;719SX|P)lQ#NJ^n@d=CJU*@oH#7=~*}ZGJU2dt{=k zul%9J`bwU@YSe1xZ7A<=oyi04*8qlTcKwv60K9j@i^Wg}AT-Ra0XqS%&y4fqNM8t$ z9?gVouh;8bdt#$p55OjuQyl<+z(V_gWUt9jnQftDsU5M9ZPoDrkgf!fG{zZ}b7e(4-%!xPksZ5+q9P&+o z1fjR+pv~EkbfSl7#NUU}Z9Pr`hvQ5R z$NByED1$?(#wh|cFImt*p4@cHMzjI|0k#eR7aqLi*bn_ojVC!iktEX}ZC1TxJ3O%* z7XS5+E|@{+9)$oJVSzpXP;xvTE*E*YTto=ipN_Np@B}YQHQIMgx)S{@0ED(e(SX*l zY*na~YE7GRCC>T=)%6N)wT|&k0Hyy#hy-u~NVL0aWe2C^C#`SPz^~?$fX4`NH&k!9 z)1BCpEP)W-sY!JsV$i?AO{^+^NxFQJDtf$KSuT``whJuTx#eo4w%9GzHkhgbC?F z*twu`aL?fjm;O`0+^NxFWBQt~ViPXJjq6&}9WNdGZf3pyj#^at;Q65rc%ATNB7!i9 zbvgXm*jWGiGyUDbcHGUTI_$i}U^7%-B>X|8?O4-=ZM$As_&m!b^%PJ!vF9;&$=dK$ z!ha=fnRHS36*ATcFDm`X`{p00eo?vl!$41X>g%-gdD1QcmM1Jmc!BT=>2<=MHF#Cz zHivu*_bpAh0)9~u>x5q?e2KIIgBjpK8Lzn7x$&&>vxvy1Z&02b8FWn>a0dTH8JCG< zr01ZPG*}I^e5CyYm9rCBrL^vJ3@A^I3?`L!JOO@DX)A;;0-lSoq_jNguEG99luswJ z-%8EahJahRZEgJ&Q@PO=W$;3zEfCg6wH!mzzLa}^A}cMndo2O8C--ho>g~7?UM1pX zg)8X;REwnLm0lx#&13vzJgaQLTLNZJ?%giF0k0D_Px=zzc@610)goa9(i}*F)%f0l zZz~I%o#lXt$nU3Lc$A1!ggw&Sb0U=q|AVvwVN`lSX-kBg2471tp6!O;3L)) z0(RMhp4oT)_V~>J5s_W5PrXUn+l{GMM6mmnzN#=Pd_dKyA^v45AC6DY&Gv$~1c->7 z@4s-6u&a$$J;4x*psj$B43YJSqx-Yce6P4j+ceEGNn<-7`cjbsX-|`0Bt0Sfv*@FjAAbYE4iTmizH|Td?967hcfF20H}v8=&kQ|v&*6Ky{so8MIU;*n RS6To7002ovPDHLkV1l7vuZjQw literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_csslint-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_csslint-24.png new file mode 100644 index 0000000000000000000000000000000000000000..42dded915385079aad90299bd16344712f0e2cee GIT binary patch literal 1058 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cypress-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_cypress-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8f98315550d34aacc1562fdd931799e11d40f96a GIT binary patch literal 1312 zcmV+*1>gFKP)Sa*#*)~R7RF8JIP7j zoSgUff1h*S^Bnk(O}4&`+Q6H!rY!z8MD@9n8Mm#FR z6RujU6FK!8MdjcjQF5?OiZH}f&kI*-)p@0d-VMCb-y-xY(w_;Q>+$&+!uG@GqU2zm zq>9n4eimPyRr}_6@FMnyl@LAWdNEej@tzy}B+kGH>7Al{8h|7NA{oICX%caA| z8SUu($5PHU&)9908Wo0>rm%_8F{S5^dnW-xW)qC7v$sqB0K=`{1z$=^O2TTjVzpX{ zjg1AMxVV_y+}y|DNl8hRmzQ(-tK&o%7n4wu^A3-GAjPAcG(*ACs2isSnD%%9*s^5{ z+qP{BLL^CI_wL=8&1OnVODQWW!{hM)P+wn<(P-qv`V(9~ah8OYrbXvJK57CkgaAY) z>Wj5025t{t1|T~-n;koL(An8ZettfMg@yF?_Off&F1ot9h=_>5VzB_A*XuEx%^W#$ z1OVsR5tLCH!s8aL44y!ftWQQJ!*la407XSb1Ofr}?%j*e=fmgo(a_L9AP~Us_cJ^^ zjLl}Fqoacj8#dteda>K>0Jz8Q@X+N(9ji;3a*ogRKp=$zAZDgsCX*q=lQ)1QNdUCB zw_`GyFquqPtya3byK%eSGda_KeD@}iBoPv9virL8SA-z)xi|p&`ub2P6x7w#p;RhS ztJO3$HDR~gQLEJ)J9do8$w``H+WPmDa@G{uGMOV!{HD$H8sIlSd>O26f70G)C3oxewqLZm8z)vU}Ip9<7<&o zlJ`u3&6_uibLY+l%cckq6S^gdA~HE%LZMjoRQRlE<6^3}e)d7&lk;}*)}C4sV~BeU zE|<&2$x}U|rKLpxLMD@mutkv~RHq5ZB)dGfgdpT|3Nq38S4lGp#*nu>Md>o;vA zGdqjK#6*lnBjpwgMFoYlwY4!aG6F#0!NXet-@|o6h;Qcd=3AK&F?xONslgV5z*Kfct%q;!?*Zu_Y WL<#v$WB5V<0000Y3dE--yY++n0unF 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 N002ovPDHLkV1g0{!43cb literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dartlang-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dartlang-24.png new file mode 100644 index 0000000000000000000000000000000000000000..22dd945b007a5cc401ef10182b1a107b8e126acd GIT binary patch literal 779 zcmV+m1N8ifP)le zK~zYIwbf5Z6mb*>@b8=5+1W*QCnU1fmBKyf{&83HU{Dxomo1`*2$h0B@StGl3du`B zhCxB56m|$~D+v079Xe)R(}>DL_%DhumsH4|o!NOEbT@a`8Aq~re1G`--fw0Y;6Dd# zrn&tU%j8l|rgZVyy#|`wGN6Z9_&%zhW}p{934jTW)W)IxMc@7zXn&om2XF&GeO}2D zVmB(Zy;m%Bu#(;-R{M3)nyBtdjaAVJ9K zWu5ljIUv5Z4D47)V>;0*`ezPg%4qxJK`N5mukmj2`G0(I?!A`|)mKvk5LBmv$)z_SU&0nnq0)`1fR zKw?Sn0;3WDw3PC9B!kozUY9|L#2ojx-a42C{AX_O0CRVyLrbP|M+oqSg6{G?HI@-T z2xWn^rk@2MX8}bi93h}2ROK#?0y&7ZBYo5IQx@`c}+NyuwMQ2FSRRDDWrnyAh&S&qw{4*fe+ulZ`ZWC}Q z)QSbsqZ*5+IvU`~n?&k(gr&)4cnP4T5}@n^WxaNT9p6BAzh-f-d5invkb^|!#c@h9%3Dc-A z1Bp;AK@GjI8~e%vhMJobU>E=Z*YyhqTbPC;GD|Tb8VC=HAq7Cy%Fhb~>{|!O4X1=K zll7u@OOR2gv9kaevG(s)3YP+h=lLb4Y?0m)#8>Lz-w8DTEP!OtEsm&ImYqrp+l&iA z0ln{gMv4(OVhnovMHfcc=|mWinVaWY2SxC%?|nahrA zL>&PnDyBejce3Ff9Gji~K#a8m81-CPno&rWok}`Z<+w^-a@Wk%ME6{_tGYUIXEOj1 zLDXjq$H^?m1_aunC+-9AHiH0wZKZ3XCW!>pJbpC^;7S|-5y5s$Lx}X0B3xDyJ-){u z0x>?E{OQi?O5tK05QxsD24CMTE=5id$QT^!SHO)}_XFeMTI7#btkk2i{-wUod4Tp- h@~tZQG0uJ4s^6tI$$@MOhb;gA002ovPDHLkV1gX5PVWE! literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dartlang_ignore-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dartlang_ignore-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8ab5186e1f1064cc243bef6c7ace3bd3234cc50f GIT binary patch literal 804 zcmV+<1Ka$GP)IJ4cm-fjIY3DViI>USqF8yUf)hA_=OOUI(#7#0 zVhU;v(`alDwY+r=Xh@E{{$m#gFHx)lw7SPZWZ-z;6 zRntHq$PN$(RTJp>{?w7PD}$_cqja6(IU(B*pn8K)0q>4l5C~hh)Cdg2X6Dj!f(r-( zpm}FJ@OgT0YOKJ)Mk$j75CDKbnwsw*5ENfXjQOJ(mrhs{=97Ir@xyt*fqRFx6VVl` zLd~iL9Rz}07ZPKEH9!ms=Ke#gW z3cH#~!8v%>{^kP=qX{Nnt2wpg2dDtzmBrouaM|rDI?2NwgQLUAfn%Gcs{5<0jtEfd z6e$*rF1iL-+T`IL0Vtld9Rh+}D_1%>aRgipwTu(dwbcN?vJ+oeiuxmy09|FsJWjm! zbZG&rsAr<@CIOe-fK0-LwqWAH%9x`AOKtUuPQbk73SeNw9&`MotyF6;(Rue%UmC>t i%GKpmjJbKD5MIy%3WC0000Ta zK~zYIy_IWhlVudgf6v?Q*2_w}t)<=CaZT4T&?zzr3&x1yVhqs_BoZ*0iXz777cYq+ znF%3L688xsO4tX?G=L~q4Pqb?7z)cKtlVMk*t)`4*~VJB^?l#R4_iCNHeyWld^+!W z&h!62|8t)AJn$cz__rJ1d~#csmaurFBD^TFR6%&r32zUs{_ep%<75CemAi`2bgw~b zUZheg(Y=6IBD{)Vnl^|F1Bw8F6v*M@9snjLcx_I@`-%S3m_0D&qOPM?*I%ON(@Rg2AQew9cm1j0Qj0YZe4P*&wqSH3gXs2Bw5kj{to z&molYt%_XhqxEDL%luQAQQ=73INxIiT(#6HwbbgFgQp#-%Md`tBDYa73#KLE<9;K_T-#ik|3RjjFJeW61polQQsr_vXCR6}&Oh!V%7yv_q8o`rY zNI9H;D}0a0^*#(nh5G}k44@&Ujww@yz^H1WwDh|5$GOlLW#^}7Fj=z!*tMmZy7kBD zi3|YX^jWD`u&@TtC-CenBpFS6(J=D>5y7ch=#Y$q2$} zr}1DL2e$g@Dk= zB|+CD`?j8A!Ezr?pA}PnHjM|`*tMk@|9mH%*ZOeJ$VW}-e7y5{?9M!-E;-t8<@T=6 zn>-T|Jg5LbO6c!N;`CVwUx-mWdkRa|`nh?zm+F^iVk^uYv$^?LC&_y$2a*iIm=fu7 zv~ zo1W%QBo2VXZRYN+1P@!o<|g)h(Za@+hX}RCPz=H%r6``TL<0ds#CAzj163~LhPrAL zgCN$G;LtZgmcL$(t`2wT?2&d_j&)*pnz(Q}3Jm|*0J^H@8VtfYA;Iq5tF*T&zwcVI z*6&TvBZu2W`9gQ<&!5AZP(<#%Sdwoyon_$e;5an}9y4ZJwlHKF(z9v&gQIKmM$?h@ z+z5fL8f49E@2V}=aLP(a400000NkvXXu0mjf07YR) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_db-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_db-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1e1ee5fc3c7a6c1d79c4465cd9a85a9a4b7fbf79 GIT binary patch literal 937 zcmV;a16KTrP)Mqr#m3^Amr0r{nL39_KwAM-vQx?tJa?M4#5$#Z$;c|YIx znePldWJ#}qayi_rvlLf82qSl zdak|MF@rD+)2j{VHB?_kC<0r$K>tEHrtsM#8T*Orx{aO&eh|GRmYex}HUOBLn{#&V zeCBCYdCVFe1u#}tMD+TlOTYX!J3AW#l*>_04O{lBb9AA1H(f1KftFmB>EEvn# zIKERU6be-U-}eU{XJEt{c3Z16BFvzSqjIS5!o&ybd8x$GMim8=ae;BQ`eqE^^y3Fn zy)~7IQLwEW>bkS-xb}uc=Yc;H#w~EGI_VE%?U(J%jv<#yOIy=@_H~f`z&>De7wBzZ z5%k-}s`=RSCT{jLSPa6w#+qw)f0$CKlVgLE45nnyytmM0N)Rv zREO>Ra_))syhH|~&Wsv;&;KDhg=z^g$556tQu}FYYU?jScSgl^jS8)k86WX7GdP?suNnd+R51y-&%ICH@Au(Pci}s!pmHik=a9p2 zG+lSzK=ftcdBEucje%3Be9_3nA9=33($l~{5xLf}m#1C#DnO}pc5^0Ef0h(GY)n6Z zarm1im+SS+dC%K@8{qpe+-_pCqp&v{uID8)h-JUA=3PIC0+bTwp9O82UvE_ge?E9{ ztOhVYzr1N^s5+AFU!CxeM;?MlgB&V{fsGB+XkC;|KoOycn!`9S^k@}7i0-USRR;jD za^E`;(ONq%5weLnigGov*_sAg)k#-0wnuv!2Ov}x=q z6x@r6$Gy&fck<*DCU(Y+Fshi5wL`XIl@;s6r(c|${JrNT9;W^UQ-xDLccse`00000 LNkvXXu0mjfq~Er# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_delphi-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_delphi-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e86efdd68ba0274f4d1b6433a3bf341ebadcd3cf GIT binary patch literal 1390 zcmV-!1(EuRP)3Nty>z$T7Pjn`OD)n`K|u%@F^WWuVhoAb7&J;0(ZpzsCdNb` z^hsZgF9a}J#RN=1BN1bQDZxu1D55Br6hW%JL6>&B+wFGG_FVSN_|Uje!AMN}C-ZP7 zGv9Ci-#0k}|8t4USyXDfX0eFWTrWdrQ$=Wjug*zR{un!a@aO*w7+`iZer@t)5sI$U zb+yez!f4Y3ArL`;c3iOS0TBdSTrd7s`q&=(vH{uFg)2$Kcc^4CEfRI$xnNI#>q4ah zN`Ym8X@F8_$IED`A4`9~|Eqrm47SdHOgA;XFVd-yc3nh%6z%%})T~>J2!~K3dHf^C zFq%?$hYq712d$K+dVAM4X9qw2M?gq;@_ial~>I;3)W7$3*Fx}DhSyD0DdhKAQ) z0id|KgZM-DA(Kh8>rmX(L3!(Tbh+$Esc)TI%pd$q)4b4gw=uOtHl;%T&@fCm7>$ig zd*d|_0{4$z0K8MbVJ%&POeO)aJHMu|Z3nts28a-d?WbwIx{Ypk3Sg`~@siavBV8HI zqb4SpzW#A^#YfpT$`7y>F9fZbIQbiidsd@;pX`RsjD7eK+Vd{-q{WTppTp+uDHa`F zcH@B2JZE-r_AEv$&fNDm;`a4p)YRaf>Ovt9mIX>7l_K}qZpQb1I~n*zrMs^$jkZ-g z*w-*)QBa?ltqP+kAksFE-0n`M-@S^$7rTfoU5b&K3H8$vLVya0pF9f1`Q#3EU92x; z>%RE31-F#)CnP{c%Eex(M0q%i>pG;KdK~3f82hS|=vDI&SGGe#5@8r1CF++S2rXYh z{J#6~&=(EgGErJz2Ot4_$D2_e%uwp>!|og4+$TGke(MUPJqGDn5Q!qB1m7drvkTEY z5A&wmu;#WOZhBYbqyk@oOeGI=G3vXWc$jx3UCpbz;T$Cj3W#Wwf9pj<>SW^P#A%R zM#PW%kOIt;KOwV&7$X@>-$5ioK&T2(wGHTF{rEx*RxNUcIBGi{qlGePjZQWp7B5GH z!iaBoPo8Yq&8TP$<6J+HbG=v{Akr^JxLmsUH9x3I!JoM?Ffl&aAFSa67 zfK?blCsXL*EP)PzGr`1@uj0&{cZsVBx~7(qOpc=Cb+0MqeysukJk5Juzi09M0DKSQ z(|4))p_AZ)EtK!PgVOD*D89J~$|WY&zK9=hm?~~s1U0oBIeZ#di_L${R{@qiw$b&2 zz5|E*C%YXTL01&^cgOMaHp=y>WO9hTpTo2i?xGvdiyH<(LnD1Bdg$-Z_qcYU3aI`n zo&cvK;DPSm-2VEyNOZ}9CbZVfUe%5;B!L%DDSMcI9HBItLs$IjtqJOr8||+%FYYM_t`=fw8?VnP^#b?HpQW)e|xVNP&_jgd+sfV7PyXBZp3s87%ZjL$6t1 zEFSv1);~U(8z3Bs)jx~S&lr(#YvYUrv3L}zHTJkocBp{w2dA|b@3?kh^M$rt7GO$8 w@%VhDh($ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_deno-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_deno-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8ddace27d42266bdf9e32ddc932d6947c1820dd4 GIT binary patch literal 1234 zcmV;@1TFiCP)@)XtX7rPX7*k0|cHveag|JM=2{S z1E8<3k8n7Qi1?IJU+44rsA-z*Zv-$5<6{x|1@IPPBO@a;H8rtn)hYmvA3siacelM~ ze0+TU;^N}ZhGF#lCtzY?q67F|DYbg{?%h0p{u}^@!@O}huf!^7ok)~uNl5nn78WB>mBT)%#OxvT+LSXiLDyPMm$Z`+x@ zvWK}`F1U5;)lIKB-iSva&Klp%4`n6>Q(W z-4-`Z6Q|QjLqkKo%jNnK_|_IsN{L|@v9`80b@S#;H83!shK7dJ)vH(4rcIj^u;lUi zeCp!Gi^?zzWf+F)>grObPMs?Fv63E`rm3e=srB>o^LRWS+S}Wysi|S_-o2QnX@5v# zV-Ce9lONas%d)miPEOL<*=dUn4i56{*|UaN5KFsXwEaT(j7>2Q= zvB_kT8#iv0#70L)$>;N2x^xMEef#z?Jw1(5>Rr3ZBI3}reLcn4mp-_E3PXWFsRZ0NlNMm!_sBTrL+Pk}L*9 z0kYXFsZiM9XAbm$O1 zpKn<}p${VRM<$aQD8y}m-|v4RBA)UPlP6C|BoaiU(c&_cSVctz zzzg8>wzjsvmH+@YZ{8eHN_|#m!@Z5{X1;Zf+(J2$W2hh|ts1Lw|pNPDDP{ zb$z&4bIBZrLZKg(QXc^`nM{V()>gb;FV)r6?Ao=9^73+OYirRojgF2E1_uW@dGh2# zr_-tas)_d)h`Re%Y6_GE1_ln<{ris_<#qD;-fbXiRss{Xi|BK~xR=o6;Qev8B wgHq~45qSp?%d+O2PG>Y24F0y#{n+a07*qoM6N<$f&pw<7ytkO literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dependabot-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dependabot-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b4dde6643746dcc06223ac1ddc047d465670bd0c GIT binary patch literal 749 zcmVl+yx<5(NYm6C@_u*;!#>VIc<`y@fxOq6JzQH8g+( z3@y@VVPcF0F(Jy4NPvUF5Mlv|7?mGy;dXDwg5z%YxIK>mZ?!YuJKy_$vorI-9zzt( zjK(xolw1Qy$-l4ZIdANmfVX9)##F3+0p|cDOsYa@GP+O3b|w&wX^IHm5|W32Hz#Te z$y3v>-KX=!`nCnMw#nL*RQd&+E#yJMl&Z*x(N*=OIDxF|M}Sr+xeXiD7=Z`8I<{sH zC=S;x@e3Y;<3jQ{U-B2%53~5Jg3A@b+>l2K?xpK9G8-hYU^}kMmZA_vKde_Ljeut0RrA^vca)sekW4Y9`&Oe5&%7EF*2(o zWrn7va}7BKBmw&$sVwy|e7nresRK3bv&83Z2T2mx{B*6=rxkw({ROzL0=f9HVmijU zAz4|o{=3dqp#NqVfYCXfj(0z4=$K>vkBM$b+TSj6wevfJW6KV1K6u;$nz~W;k&wol zud571!h}N}EC~xsCJp65A{Rpr?zRNp$5*L1bdYe!!^pj|%)BC?>qhAot{bvjB+%`F zfsrNGMY-6*wdJzi1JR3=S4iK5nS~_JKm4M^SNI&Pu3JpcJKnk!LiA>}Y|x@p^%Bu1 zp|WWEPJ9!BX0y9;cyq#G&*-W8Y?3%51$Tj>8cG_bkUU8x1E=lDVYi-ZX*C%yt4H(2 zT{qb1t{%5Y)TgUSy1BM|TAf?+f)&`|ZJDV_sa7A7y0q&FRVb02w@f>tF-?`hMu3z^ f3>Dk-_Zb*QQ=Ol0s4ZpO%rs__gUXw<0NnIyR^z~z ziUC2cuHRWOTFU6hQu(g&wMAiThOmels{%yjPY32sl(y;+W<4f#0(ch9m0KLD%t6GTgst=aEoCDpU#8piuJ2${U_1 zFEr~Uy>QuGSD`kPy8)C2MCDIAT&o!w027ii4AcWN2Ft?IpiMK2Ng4p!3iCaAD}Ogs zfi6B>zwB8!YhrZ%_TizOM9s>8c~x1<1MJ1EL)OfiS>k!Mj`S;za@SbkEE>wz@wo&C29^5O zWAsv%)>>hkXl|KdKPbJ`QyD4lozuhOvcIg|pz}2MoHL*AnVCCt;6Iy6CduV#-Dqej zMd1QKu*5cBOh3B%@}C9rs+%){Y0End)G1M{O*mP2tChO6)CgX9*LQt3X@Q)&lUoJd z3#|HEg#ZZewW$tReVv1`AtTn2Rd-^apzkFO50zP9Xt|$N+qO486kqv0AU$b#w9RTm z)km%*ERa{-oMA6n@tRaBPi*g;&dlP8JLl&hVvB-l%R5qqS5;Ne*w_&3cF+9$)v@pq z7Enr^P6=LF&f$YixLhkSjo71L1iaO z8Xg|Sy*i)v_7>99Ln4!tAMigP!R1;>byaynIDi&%08D^o1?ANWcE%=6TVJuPFL*pP ztaj()_m5)RHX|bea&vR2uiwUx?=yV(_$f|6DY-lI-tP--5i+${C4T=XfxtLLMTJyU zYzDx#ZM-9Sm~S zdy{mB1KYOa=800n5OLA6>srTwb&*L8yLQmfupOW88Qnd%5s}3f8V!eu>4)BR5OEI# zuEZwJ2j>|a9HP57c{qR)E{4Yo1Gne+(mC6Fg`yxTS*euZz@*ceS+ej{L_K!dHErb> z^n+xiLX5Ckt+mG*=z6l?h`Qrb1D!)690L+IkH5hYIT8tnMH-IF(^h3@=>gnH!Y4&I zFx~Hc8XJgfH~>~(=b+P>S&Wi%0uz4#zd<S?U8>2Z0hb`QPX#fBK07*qoM6N<$f=b7R-~a#s literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dhall-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dhall-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3e314522e727a6db5b6dab8b04497100d6c57ae3 GIT binary patch literal 775 zcmV+i1Ni)jP)YTE6+-_j|L<&cc5#NniYc8fT^jeb#rrb7gY68c+$D!oUIh@5%L(BN-ur7Y`qnseZI%IW z&g}#CCIAMlwO`8Ra<*73ZmH2TYxqx&jg4&!0mhgE3E==c0IJn$hpOIB0Wg_NrUm|- z=k0X>EdZ+eNmb7QIOi?^JJ)J3#x#aINSI`$c9+ZLO~#leYwfgiu1iGjl5i7v?eo5|Q>|8;0LI71n~X7o^@cLW%!B}A%v2o!z+UftkjZ3*RdsV6Z;;JqUxt8OF82y} zU#F>CL{0;TQw;OCt*z~Q2oMn!k$VXZ-$kSWxR@dwpnv5d{Ltp-=Whca;@l$Ao6qMv zfCnkUpHwQ9k+8RR#W{COL?(gtk)|6WGNh`b#NVks{&StaOXSrN%CQbi;t=~sV^b2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt(q^T^vI^I-gGQ=dB%DEyFU)?_Y`0Q*0`^H_) zH%@SDbGUv{Tkh~76=}1jZ1NITVi~tQ&R;wtDX*W9D_FofWpVhQXVG!ZrQKW;cpBy& zJU4O9>7e;rPq=V%=)`E&m3Cia(Xh(Yd9jeUcR~M|C)FxzEJC#xaGZ?Wl=<(0ncF!* ziJ6;zoqv!Wf0U=cOe(X+B+*YXLTSg6jgQidS5=)9PRQR7tkS;e%Kf>Ha&nwqD-Qf+ Zeb->2d{w^oqzurH44$rjF6*2UngCgsfI9#H literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_django-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_django-24.png new file mode 100644 index 0000000000000000000000000000000000000000..669817ce960fe85ce58435269a8e8ea8b5dc276a GIT binary patch literal 595 zcmV-Z0<8UsP))bpgmY+%SxLFHhg7t)*~V0H~)?-|Krf#bW`6HD)bygPqeAtOjV=A{mbn z!;w|YJ-gj+&b{)|(U?6-H}e$60a`jZ^142Om~0%ttRQLJ;CxJerUAhHNCX%g8}pTX zaYWb!uz8>wy;=gk8uk|XcTv?{O@Lwn@n5o;=HMaAPppP!@9YodcSfcUf2BSr>L7`- zQ>ETee!S_?{KDBQu^ac_fZX)my<0Z955T_2RShgvXcwROhx50N&y)`ux{0wPz+HNN h>gxNo)Y%XKe*ldEo)eQ5qGA95002ovPDHLkV1m}{3W)#! literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dlang-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dlang-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e1037f923cf5ff0ba7ea21d883733f94aff4d2bb GIT binary patch literal 1006 zcmVuM zEs7fv1UFfzyY31VMF>>f6ef{~jww+FACO05n`s;~={)c292a*Uw=+|yketnY-}%n@ z|IRu0yLW&+HUfaJPENd_G@jZ`VRqI0`Nf~pIslL+FGFx;Hvy!{2LRG)H$}VIo&)p; zHsNrYG{g4$oJy%zTvx{w(p8zkVJfL`rd>uRm|*{}}*4Ggq%gNYjqaotiFNm2w+EDFzUHNO55@jAT4DmW-#y zkh=KRt=tdk+@aHFCyD3)MDp3sXS11)uJncv4sF=w(n%1t0Ys>=X4_t0xO}lJAcXq+ ztI7!Q;EOY*;pv$tNvWYgJU%{h=G@-^N&uoD+Mjy;&B=vJZ)7)a%su0;tov+*t^Cq2 zDZlIXjX7w+V0HS-tMmJgK0XEDF#z)bhUy{O6Bl01Z~e6RfK>AqvB*QF(=yjILpNW$ z@SHH;sk*0!xu$#RPK1A3&_XhhaF?`{-tuNN{O zzMnD++x=YuaBOxhjoJ?ZfRu`nQZW@Zl14NNj20M|6RLH2&SwC$^|8Ry&kVMGLm_yD%eBm#fi zO;AJNe-}W$5xK5F1RWoXhJb(lhy{orKrCqhA9vgr5%{s~1t`_}Lu5sy$lHq|Qozj) cy}hvi0C2uuX#D&?PXGV_07*qoM6N<$f`!@I#Q*>R literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docker-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docker-24.png new file mode 100644 index 0000000000000000000000000000000000000000..75c0c5a884482aaf6d211bed651b7fee8fe1ca4d GIT binary patch literal 807 zcmV+?1K9kDP)Rzc5e3P+=thE07u_1+RX1IR zfkXsai*;cKDky_eNu{DfC@{%f#l>-Sch;Gmng8#?17#XsL{~m{Ki~JgFYovLz!qEl zS4z%Z?Jm0cT=!jUzrWcT;cvyt%1SXpk{v5=)s>hL_ZHiQ$uB9JH6VX0&Lr(P{h_)= zo-92q%Pkk=m|Z#&`urBE9M;$N?!MAFwC`+N?WPixRi5(L#Q3g7i{=;(H>h0#b0va_ zA`FKcl<>*rCmVg1iRpod!ASs|zSm!(tA*WYgUc5R@gp4_#)b(vyHPq4XdRyP9lM;L zmW2c{0b_C)lo8~oWx-0%E*YvnKP=~Z+m=Td7n_fpNf`;L<6E?T`5Dn~$!Wpgho6 zP8mHQMHSezD2NgU)1nZgb0E43qJ+WgF^JJQ*fn+gp}M9j#amXjV45^CH4e$t(OGRpek1DV{sQ>_8nStd=0SFHQ0z*?V zr7oc0$&FT<8oI{|0viYhJHs!f-}r)wGF^O%%unSV)|AKI!YbrL87dA@|bt-s$Y38q>AjEW+IX#0fW;E0O*pi zWr64hh+zPXL0|^;jy$VgPkdd2p~u1Liac+{!Tk-dPULxrP2lk(2L2D_-{ozpp0_{Bq>A9ICB#yZv>YIo>@rNlu6T(YG*u%*PB{T$SC*)QgO< lq4vQCcSkpx-(rh@$4`cx7bs?fgDC(2002ovPDHLkV1jMpYDEA5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docker2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docker2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..819f52a3dc79a116af2fd3b62666dc125185fbb4 GIT binary patch literal 682 zcmV;b0#*HqP)T11N$MG==$iXc@t608LmLN_&5i!R)Vh#*C9 zr)UChqTo(kXuv=TDyRz=QX8d6MQR{_jW4y)r|J8>E)q;kUTnJ02eX+wXU?2EGeDa* z0D#a^|Ap5pU#H*wOxf>cN7p0eT3V&+w()^Z-{pOFugz@gU5^28G}&`M6FB6tP6?7O zcUd@dNg>-zO2VfV6_Tb=gWz`72@?h}>3-3Y>;6aiX(FPRX^DO*I;BOG5`scRM9xV5 ze1jmAy^2sqL^wD2-vpjWZp^pIJS1!S-grtvqM$-l2%@6nhfG*1Y3Q~fu6Aka9Gy-i}Ns>0vKhQQL*|=b(|dOv&^E~;O4ck>wXbRaV9KnG{kB$fct7=rGj zm~uDW9DqTKuMubW<_;e7Th915@&ohBD*tqGH3N>)Aoc-_o2j(4O`9@*0P{x&%;rl1 QFaQ7m07*qoM6N<$f?VJ#UH||9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dockertest-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dockertest-24.png new file mode 100644 index 0000000000000000000000000000000000000000..08f863a2c139a4d430246ab912461b66fe167893 GIT binary patch literal 807 zcmV+?1K9kDP)wkkT&C5E_QVcfdWn4o)O zj0;@I!bB28uwsDJ0BW!i(HO;q6vZf!wvtJYQ(0GLDu@i@Qh;^V&2 zrAkUrJS!Rz)EnUA1uQZgW$$fB**8a0rxP;5CTw<`;y$si{+xXs5WC&R0{@_-JUTO z*F@ulKp_Mw!+-*ic_H3WSX7@#JfXo0=Uu<+4 z(1gH~k?H9yEUSC^pnWQlIPk-f*Ha@&Mu(!^D$cSV6-`DV(A$Tg*Q+e*_4A+1=>vn? lZCBk7JI8;wpCrk~@g3TD3Xj5$oXr3L002ovPDHLkV1j!DabW-e literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dockertest2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dockertest2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..491958be2ee47bb4a5e619c2a6b6782b619b6b3e GIT binary patch literal 631 zcmV--0*L*IP)ZV?0t(WSp3 z@-Hw@T9bqz=rny0=fOkL^E}SAr0L__vmei=OUc~kT-2?-;d}Y~c>mz@g&ukU$U*qW z)YO-~nHhb{@4x%c1-2ko(KHbe$*JmtKiPG+E1H9Y6TZ>WhfbkTaSaT3*uHj1hy3b9zQp3N?v&F5193Pc1>*Wrl{Zxk?xA=Bb~XL9nb zh)8*UURn~YtcZw6d0|0BL<;fv>)(4iJTgEUo}HtJR63^U+KVr$H2?34s<-edm*gCUSrV(AYlC^ zIlzl%@ML_|unvtoL^()0zz z1kHeZ(qQm7vY=L!fo#xQG7(KLL9810&!& Ri=F@g002ovPDHLkV1oAVBai?9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docpad-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_docpad-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9a70806e455ae8eb1d0e7e4b05ca9d3b724f8827 GIT binary patch literal 508 zcmVeBn832ML`k4 z>S)XZ-Bi+KaFGnU=-?(ei2p!AlXo0iw6=LgofPsLzkBXE=YAI^O!$B4wreNWvy~eF zy=-}@*IrKk#wRX1h@$AQ?S+1}GO%4GGC;qu(Bs;{C=NGmrVVSS)7CuzjT66mdUgMB zSh{VfY#VnBFNy*Li@;IfGcYabY%Gz^agh*`OIEsyRfPj=cF)e7^3(&Z2iG{RzD@v_2$X~rO`15UH=pR+`~(; zqt`hc34{m9`NrEH0fJc|LL`D~HmUNx*RhjmR63N*H+GeZ0gMMi1oH?u0K75WEix07 zfs5NlYa3trQlJGJ^|N{nGmrcp;w$B}@u?`F_oQA$G$dWNeG6-;e4+VpoOW|X!q8d; yR*Ou3X(hcg+)w73?S7|zoZt_?b8o_gf0Xa!GlNT#qxKvC0000Mc{ zK~zYI?UY+cR8bU$zvj%0GdZTAVkuUmrJ06^r9w$iL6;XLBdmNVu!o?CDACI7r9et3 z3VN}E9*T&x8ztSq!NSa%4DU51UdhNgXUaw$=bY)GG|F>ktmpo>eb(Clx7ONwANa2T zn&BsA1>*nGPXStiLBD{+goWj+va@z%Wu#dGIm%wI-sABYPoKL$Uham`rslSxwvNuC z-rm7$0D84eG0}7LD$2{E0-5{p@kRX1OM5eM)>yaMY;tEUPcyZ3I1T~YfFP5>0MOgp zPgqze07Fi3DnL;%2tGzf$7r;-o_YA>Y4y*LG?AkU0FY&w>f1FeOHV~n6kfi1qtb$p zx1VLcmp2Ep>_KHl^4qVa@?VS!Rme7yTKP5+}1^64uUKxYO zwK+aI%pMs!Q;L{n`erd3^Zj<<^~#i#9%p>qs~RsU+Kc0zgUa*gvCbA)7-cT-DM1Xo z$CLqS7c@?)A+-@18+$JJL^6+erbhWBjBn1`)>(Az1EoNeuP9+>nA zJbpy+|X++nn?h+ClOn6czTQ;o2?H;AL>{Ki;eSns_d-}-9 z&Ee?b{gc5^HKL^{NfhqfM#Bp`8`rOyc0m(>aA3j2M@e)U zn_Jo`*qZlSa?_g@5*Eb)@S&?4>-^a10b=Gx?OwZj8Wr6V6G|K%3+;n=BPvN_REUDK4+a%!T~v%~QZ#A{Zq>9&jNLtF&&)Y9KFCT))`*sh z5B{HqZ@&5c<^luoKJRoc78kqzD+9l5qI1r)GC}b-7Yh8#{}(~-WEOH|7&$_S!x!?W z@A?U9q&E?yToeLOh}Y?xJ=a;3>6Rr$m5L0t)En9bNBCBiP{|b93pTa+3O80b-*Co4wO}5fmoq0aDSn9L;JRsp5|l^ z8VbKWVS@U%&bxHrc?kiR#*R}ren6bA;u0MT%N}4Rx}9}0(gFZ5<+~amHHJgwil0#Iy%hQs!3Z2 zLen|IbtZz3hQeotw+H%ky%EXMY-HmUGrZ-_hNi~hn-CyS6FnWG7=wi2@`yJ80I)up z*B}PX(ko@TKW|#UAj8tlkGW3$T&KV_+HD!em)%Rg|8?k^27iOo#>Z7CK!OC@s})3= z*W6gPDy2Z&3Mo9M)dNDCo1AKAt3u=fY8skGkEO??gR_EAr5OX&3Q`LRRx$}D;|aEB z5=?+#dtAZx1DM3?f>(nqrC@ONl)V6W{MbOwTKHME9>h{KMz!JXxwP+!EN*RAlc>1F5IBr}pV^=7{vx6pcw$uWHkGCdc#73HS1_*jRKn<{6EZ z@-ND2y%kGUe`v?ug~$I2f)MCm%h-LpmwtuSRmUAZFaAp-+ jou8`rUzhPdZ#T~Xv9?aHM!}yH00000NkvXXu0mjfEhV?_ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_doppler-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_doppler-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5b822c5622476141737946c4461e191e6f9e4cdb GIT binary patch literal 863 zcmV-l1EBngP)~Cs7F`N^yrYF2Z}nJ+jYJ=U*B8s zABO<$e#3hmJQq=j1cQL6Ab^Mh6;uf#AVpn^(A5;WwCDEf^G}~q{zm{$JKc4!zlg-a z2-i&#M3{*Bo*F=eiPVBjB-RzIRKLtEpIy{=HUL;S?guLQt4It|+qefwePC){qRDG8 z=asG>UVCZ&S|1Q?a%D;1jhMd)0^zLk`HTk$(Kjb`j`jHPkKNA2j|0gGM*2S)2 z^Ki-PH4=He4RFi>^62fEirU!wx*sj(Yy>g!{qM@U4Un7z9z1ts_}!KX04~3ywJ=bln}(^Gpvi56xOT&UeXsf9ET70lWY?N% zz(kp<___zM9zQyI!RF9dK7H=w@YI1P7UN^8KL?SWFZw~QJ`0=AvsUZL5cXdowfoP*!u;j_vJ_i z$*8FcPZ~DA?bie}$~MS+Fa@Yw1cBu4+fh-!S^Mx*Lm+qXNlh|i>#Zxxx;h1jrlBmd zCJSmI^rx99%Uf!EvVN=H?{A3iB&&fWyR;KjZ4FboUu$wxuVGiPvipyCkwuk0VDmQh zoV8YKBTG)Lp1jF-^X6IBnX!HH`**8VW<&*$OFAR@_fWp@*?YUbtVi<`;aG@f%zy?0 p;J-rga~TeP`esQRvl{0H=EMPbtIuz}|(~W)>sICE~u@ zxk*Y71TeHaORy;5 z-0voq_X{VoWxegn&0yVdI{5X*q~D5=T%=K*ireS6HCd6(jZS^Y;?w=@k&i0{smDkX`bWG~W3$0CM~zWcg87%Op5hVUP^P4> z{4*Y8rt|vQC5)>gTQs|eCWG$bX?>vKhs?nR0Aq|8rQZP#6`oUdqQ zRB`QgKz-ao03~xzBB}^GLMoiq8QI;46wPu=GIJr7eLuJm4HlL#Ci-2U~+c>9UbC*-;+CLTWVj!3dhbC zJplTKJ^F^d1!sM>zsOWhWA6E$idz>HW*>ltA*lEd2=pheBYs1z>QHKKbFoO@$K1fo zwq|?YZ{Xq%x4R0^xidZy37fYO#y2!N>A5179ePuvb9Hr{l>iVU9~>3Y)g1r_+M*X5 z>*T}wm}*{CYoA}Hd8s97|NKa;6-z|aPT-r)cK7r7%>|b^mEwyXO-{bO#j#qF_IU#{ zi#aP{ptULV*Xotlu8obB0lv!R+#{8m`_6-|-dv|PaKmop`kDfwUv zrp6Xu+2+`rPshJo%xB4w*>$O~R*QZQkwZYdVk>8mFA@3ZKwEflDUW3h{Zrj0f|K83 qqY{BqqtVHlt9$l{znt8M9{&PXjh{8*(W!F)0000k&)< literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_doxygen-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_doxygen-24.png new file mode 100644 index 0000000000000000000000000000000000000000..515251bf16c60c041ed23b6e9a72d1394bf6c6e6 GIT binary patch literal 907 zcmV;619bd}P)B8#3FbuqVx_EC!ajY;@&*t3o zbI*6~z30LU76FJRzp6K??-qxxdC*&6|2h%td$<}vz}Fv$NM~_aeeFK1KHq-u=I-OC zO9faf%nPIPLp1sI=g$EkeS&_0a1iA%%C&qz(cVa+BU}m~@T5c3B*$aNlX*Lm=r}64 zBfw5zlNkFzTK%k4&FyO*7YvYU!Gan}J5c1XGD zSrs7iW8yWG0|40f(;6B@%f>~513f{VeGBv#k0Gr!&fvC^0k&=S;D1KS$ELt|rwRqE zv3NWuVt-SpBZ20U0jjdgUtU-1pJ3j7`%+aJAl3BoRUieRu)Smeu*ugqz}o5;xEuQ8Jac~4YgDxArN+}) zrr+{*t#ffLV!C~E(K7TIOFm7-V;4~FiP2Euid;*FY{T@@>Y_$6_bqFFubT2Eq%68X z=2~_C@Hv15GJAoS{p^!B;-6drsCIsCM0neEr3Lbz=o#{=GqOHFZUmw3>BroBo}y*s$-)H@{acjp h@}^>6DYf>h%BB<-oEhEV_j002ovPDHLkV1oHduMz+N literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_drawio-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_drawio-24.png new file mode 100644 index 0000000000000000000000000000000000000000..22cad0fd74b248659139021e554c293a91e3d44e GIT binary patch literal 684 zcmV;d0#p5oP)Ml6gsc0PvE?Ja< zI8+3O5(EWtDCpt`NCiQJf{JypR#Vd?jY;mi*P&@7zP!FRq-T2X+;jfFbI$#MZ8iar zo1{xAc@cr#6jg&Ojhb#7V^IPqEiWU)L{r281Sm^}K;5(ejIlyZ6R+61rVNa89>-h-EY4bUqG|X1Mq)U8Z*xxtiGPY$^UnI zRf+sus`{IsOA*?A0A%eepL;nS3^4N#Sb6)9Le~EdmKNTzc;`ZJ`S|QXB<9i*Rhtsn z6hH`FstbuV4iShVR7NCSb=S3|W3XCkAW@Ch`jFA4eJkR|@W*!CD-Bn-75fXialD?{ SETvlj0000ushen-SB+wM%cixE|+(&8`SIdLtXm4 zWZU*ft@S$qOSWwul)o&Wp&wQ2k0+{2v1Va9wv=M5>|C)p$HUqLe!4dEQRPads%B#vI2P7Ln`W0RXre z)oXhP#bPl>@@3=z^8j?S)3k_WBD7mdsfi64G)=}y&a~^Y4W7qhvC%{#u@+5qB>TR9 z2S5(M=PtrEl2T55JEp)|i XPnqYb*%O{U00000NkvXXu0mjff=@vj literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_drools-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_drools-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2a54edd1c749efa47de293172f062185a6d8bc11 GIT binary patch literal 763 zcmVT4J&Pjn4b<@ zYlQsWW4OIO&fN)eoUL>Ub{Mb0#~mIcXMf-TANPrm*A`r#ciP8&5!Ae94EL1=yq}GA z-b0_|H<`$F0PL2BYG_XBYMqsyJ~ia_?n#}%zk8vtY;WQ;EcY2mC93TLnQ0p+@>nn}3NJr6IFb3~w+CD1EAPTvQ- z;>~j`MVsUBAo#YEV719$1ZUrG<`Ty1^l@%(wQgJg{4mZ*Mecz-0-Xdd18)y7(<)&8 tIsjmVY002ovPDHLkV1nh7O>qDK literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dustjs-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dustjs-24.png new file mode 100644 index 0000000000000000000000000000000000000000..63abf9f94a9b05cf297b184e8fbdc01d39ae1609 GIT binary patch literal 1163 zcmV;61a$j}P)@FD;}&_!X)y-c*-)%*eN8vYFc zI1KJbs%D&8&rdJ>*98DR?XOdwQ}4BXccD`8X@8w^#X&)sV#X?&FTGvKU2OhRPbOUe zUIPH*nMdu+&7V|nuu|?UotZBn002fz3d;}aDA+e!QQp-OFUZlx<8H3>i6PO$#m(z0 zZMO_60@kR|e^rIqH(85K(xnNP%-2g=z^68*bm({TnQip|prh;_KAWkl!h{X!Bx>5m zVM7`KR21y2SQz>(I?8q|#Vr6}CcV4?LI|X8P3SQDK3i^uni?&GW{R0DhHCdpolF=} zd*H9WriW#&)LYKW{O~sn-n5iJ)sR&byy04T9H_mnG5)%2AL;@C)th;o9NOSmE&@~6 z4X=38I=D}^4Sz%g=E#3QF+B}HgTb=a>!y~$Th%sw)x0u^vd_=jky()x{FecMyAL}_ z7#vN);OKn(OyqA?k>9$=?$eLlqYBygxG%f9V$p0bQ!XqL0HF4GQZO}gobdoarp!sN zz4YOHBG0&rqfTEIH4mwhFar^ zswyuwOUP*>dF{6<`O`PWY)92nT-$QPGC9>90AS)@oZlNi0|3W5r&PgzYoP@IfaXDM zOlm*17qpj;2i)Ayr^bjU%4xIq$}?6t=YYA3c3VMsbfm`sfD!sB*Wu$!@vB1iB@(y{ z032sLGwK{*#t5Iy)EP}V3$Y@dyY$7P4v08TqTm${8`275Kq=a@kes^@J47}vuc;Yx zcC)Y>WWLl#JK_8p9nd@~FJg1{<$4qZiro34IkQAG?3*curU;4ak z7lhp@Yuw>7#$Cwo>g2ML@(_S?M6kfn#~f!o{Nb%J#;&GJoB+UdxV6D+yL15nbQJ7k z%Ukpqmb;SPrItapsBjhet-8VKudvu2qeNLAns^X2Eq}PBDux)n2Oj%;DBmn$))W!@uLfXExXW dYvliF{0(}U;vl7ybHV@s002ovPDHLkV1kO*9&G>s literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dvc-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dvc-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0a3383b58e1e0860b6c75f0adbd9a0205462bbcc GIT binary patch literal 725 zcmV;`0xJE9P)MC8(h@KBk=czSE+{7bZe2{jKi#-+TV&p8J3eHuzTr zU`uOPiDF$^6h%Qk0`Bi`54x!mYqeyp%5=<*`btsGAesbX0zC?~&c-*77Yb}`?W|I$ zT-5}99_js=H+=f&k7fGB^w8NkeFo}UHBZ##Z0K&ctjn!8lB^1zT`X7`0< z9Uh5(vC?2$vy*iN}ToZvOY%Pz!chE9m zfL`t2?q@RGvTTSE5H5sa6i-{R(Q_JY0VtGf(Vp;Nnx5QkjFn_Y1mk6|NMJ~XMwCc| z9F$~$+}?0^>K8`=Fb&KCar=yx))YtEi9ba?3;GBV6^lF-d^&HqoJ}3$D=wKtl$u}w z%md~7$L8<)aU22S0Vjf|)671bVsCqea9dyp$Q2Y+0GP0c1QLPq-yiKsSGFhxi-mLs zcyHQhnaWKc2B<3pHyxMS}3covRmJ=B(c z2(eB1KLJsj0``P+%}EpM&0RP3h40SS6%E|{@5UQ!uqM9%2#)K^@J?!;00000NkvXX Hu0mjfKNCTw literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dylan-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_dylan-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a520ea226b6d2e65706f72b84a5d2586b778eadb GIT binary patch literal 1119 zcmV-l1fctgP)Z%s#xG*BAeeSOO~x75K~g zu=`DQ!voN$xF&J&DV-&zWiTejC0^R0J807;(~OJ^!67;WTqK&GAz(D-DkM2anTWGUQioweMO@hjerXH0iFeH)^j3jr7ms))Ec*b(Nz<)TKOfT-I9Y12xiuubEDp#R*Jd6&Z z9)tRzeemWJ5u2(5(GIpSNV&|RYy#f8o<@6g2TmPxH%G-WedWdU<_A{?cF)6hEVa&Y zE@yH7XLt%63rwNfzen|?yAW&|5Pp0aWFMv7oGM~@?aMFFc>q}mQ;P`-DIHWRw z7+M}6!mn@iCb!<(OKk@aKDipGJyXopYgH_@n3sDJKhCy_)yg-i){s5?(|;02y0v^*LWxbiT*3T6|gvslK?|F zuaJPm&Gscw^rsUXLTM^u=A*KUZ?>r$9y(Lg98d``g5FUsSBXwOq3IW)Xa<6H0~I)0 l6F<+xAlk;onnV7N>mROo9wGj1?ehQt002ovPDHLkV1mj%>tp}` literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_earthly-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_earthly-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c55e9e6dd467981fb35f0ba518bd89e2b720de10 GIT binary patch literal 905 zcmV;419tq0P)f?13<41yNe%8! zGrChTOaLKW2s19t6ZksujM& zz-OJbTEf~=N%nq-4>|+~fS9vCe$m~yvV0>&-n|~(|664ui@ME6^Db|kn&)_T~6NUTJJ8uU^a_*=y5$PW55O!iTW{hun$T6lL(^cT2T2c-wI1>25cwLQ zRv_!zbT}In!n-me~Y@M7wA>h?W%eWnAvhy-XF{IP9QQ1t2N4@7GX_T zu(z4EoziH-6uCHng6jy0N`sPyMdSo9FxJThZn7PNHH(WA2?};Q_fjsYwN}n}z*Odm z=ASObqH^JS-GS*~L_Ud#BO+gj$X|#k5q|ftdy1Jzb4@{?n8T+pd+|X<6+l(8#T2J2 zXYe9zmis6-{U|m^NWJMZ7Bhj%U>M$?H(C#57QdetQKe%1$R+|$L2CSwywY9_lnu4L fom=*vF9q-~wQeZiJvg0-00000NkvXXu0mjfU&5P< literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eas-metadata-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eas-metadata-24.png new file mode 100644 index 0000000000000000000000000000000000000000..928073894b99a892644734db63dd81efc6d18af3 GIT binary patch literal 713 zcmV;)0yh1LP)x zK~zYI)s;PK6j2n0pL0zH#0@bPLByo6Fq_@Y+>J!=2Z%y`z&3)QO|Y{NNu_Az2SE@O zBU;)7to;XRTqJupcNB{hK}0N~=A%ixIW{w}th>o1rqI(|<~{GnxpM{v{`Zo+MCaUq zF{T8twYBBP$H#vhSb+C_IE3&H7)+tBs(RL1`*}C5$rBJlc-3MKaNHR4GLLrG0O#B! zaK0T^)r-w$^TJ;R%+1Xm0`7O~tLnp)v%i3mk&!DvWd}-JEEX^C^YinE3x&cb z;N(sQz!z0LZLQtt)a-hLLZNV@-CR|l125XBCxGkSe0n;8s%o0e=FwI&Rb5+IS()zZ z>ys#o)`3EcWI$Doh-|le2|&GG?~kJB0dT6@Bzvr-&CSi56B83ZdjO&+x(ZAJuMa5T zQWQlWfk!<6s@g9ii*X!Jr_Yik$!NJ;PFhusMq?1bTKg@-GH$6<`XC|-;GDCn+7Dfp zoFvI;2*G>rhg)$GnGunhHttXe!6!*F+Q}G=Vk#y2*=X%o^x)kg?}!ca5e)% z2z}{!$2qr>!qyn`7Sbg*8jT|&au*otG{s&^RhNO=*4m980Bh}rb8bDo2>`~JXO&8& zk;l+`UkxE#%brDKHICyANMBJ(xYeSmCrPrHcVh2-vsf%n0B166VPWA-wOaKCAcU|A zXxjUws#CREE#wWT)oMXRrhrVd-P_x{2I*H6$MF*IG;Kb%*1pecp4HgcSY1S(WFF;m vdHD~L_r9d6xqd>ON>z>bzO-NczgfQlL_PKsFdctn00000NkvXXu0mjfbEQE| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_edge-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_edge-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f9758e8aacf605e5fef65944fb59ab4b3d6bbda1 GIT binary patch literal 414 zcmV;P0b%}$P))&5q2?Pn z)Wr-%Y;xxiBMM2bB~GQk^|^=Vy*us&=FB`~6}))6YtGo^EKRF!xN-IHR^)fB02cPe zk;BZ_$)^wCqErBYK7b@Z=@cv>gqMi40kzF$fResLlSw+@`}%c%m}-yb+ZD^7Iom%0 z!cm^q^qtb1i})O59n=ZsDnR_TF>8S?=zRTD8iaGdnd{AVmqfUaIT9T8`2VAHhT}yKn$o zblHUulsO=upyvVM$5xCYFh3E%n~v8nubbm)t%LHh#Mwju$tpk-pk3QO$6OKl7c;d& z-edqYH(Z!@!Ah9W;LbBHToLRQXvv7D<|IR2A+&`U{r>~U3A)+E jD{@|{gQ6_LO`LoJX6#*Rl2qbs00000NkvXXu0mjfsW`d? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_editorconfig-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_editorconfig-24.png new file mode 100644 index 0000000000000000000000000000000000000000..28029639e53039803de82985ecbfb1c67b5923bf GIT binary patch literal 1088 zcmV-G1i$-NGQ1bB;-ukCXGUn`Wyny5rdP zhZhdd`=0-g=lQ>f1MnXU+rwD}0N?9RQHqjS&FQk|cREo6T~62jF>Ltgfz} z_~6W$$q+^Tz$X$spGb&&A|XaYp+}XKm8Z63K$7J97K^0^MNvEu2n79p|8i|@?S6tF zh@D!E$K%T_&CT2!hYlTu=RR7wT)yuUn{6_a$xNa7qE@SA7Z(?Cr_*_)x3{-NsZ*X2 z$>nmvU@*Yg*ce)0UytbZ`j;CT8V+VMnar(g*QPq!+l_e>@662I=C(F_I-PcIp<)2!Jr2M4EDS68F4SS&s;Ffd8ebdn@hKhiXvj6@<&>gww5S}c~)^XJap zPsL(OYr&xR;%O%xnHIhoDu*Swlo!M-jA08g=0stBS z-U5I}g)#vEIAFC}A4s{H`PJ9g_kbXX_JZTsE)2uob-Ue^6yt0*n=_eA?&9L&6Oz0E z01yOeV;Dw_qUaNyPNzl?={0#sQq?iNz8FHgWqv>sJZ3U7fvCYj*VPRnb zXqtXX)AZx@_4V&Lj=Lk(v=AV#7XYB_*>eN{(*MNtf7S0p4PLdFb-#H40000lu;DN|L1$mH#4c=a~LThH&Q}Eh2$!bcD0a72#SI!2U`V#p^{)ru`DPG zqoA!tBow%df-oW}U9<~&h>0ar4vydRp3`D{C1Z>>K?e@pd%5TTJLmgXqWwdwA!1FZ(Ep# z<2dyN1>8Q<*;C_vZ1lYVF-{@G{;r;L*JA|%^d+xU)VQB7i3$J#LQtsVPny5zohS$( z=FZ%x@V|#yF+czasH16w{Zwz)`CFxb1?X!ZsEYeD#{$I=U?mMOn%wd7=+Cc@TU#IK zTLwhD#g3RaYcdM}f~?6RxHyn`b+Ac$IRXf62~h6OofcLrov#lI9`@N2M~07|da`Li zZ`)vfd60@L<_!z8mI&hh)ZwQ`TZT3T5a3XWnuo}`-f2xPBLpZ`sl;e&YhB&|Lj}9T zY=fD=LSST5iH3kRDAu5$Apk*vpo9#MxI3p-uEUT7wMqzzR{2@0X~|Mq@;2+Q5TLQz zn>T=o93|O~e+!~j!Sto5|E>i8g2*H85CbN56LRgeAY*?_xfZO~+wLe&kKb|qGDOdE2L*b}PAq}vSb!6*p43+5ik*0bm)fZXc6;XrOI@6JiKOa39uX&6aB@eW;O?oSI+{DSk|O# jxMTfyy5{q#|EKW_h(bbIUH9HB00000NkvXXu0mjfnrmmv literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ejs-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ejs-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c5dedbc248a4526870d8066cefda1e8eae2deae7 GIT binary patch literal 828 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 P00000NkvXXu0mjfy=@J> literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eleventy2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eleventy2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1ab3abb48e738d00096be3cc9f715dcf03e1bbb1 GIT binary patch literal 470 zcmV;{0V)28P)CzXe9jw4H6CxN})?NHMg}kG_(amMbHopt&PoXL2I-G{SOXu zuT#|0TtXsh=)0$-CuZ+GALJB%;0}lLz29^0Pna`>R8*o~uctlFTMpuEHv3j66xvaG z5mCmNr6A7ba=m;$-&au+(&_XW@DhxEzrPpPsWIjRXa%F)Zr1?ZFtOHp9XO3M9H-G} ztO4g?xnCG1gjFfJ1BTE-`26es^87 z)?TGjk-8rkWA;VlI*C>RSZgP@qY3n4<}FObPe3QKz!+T-xo{k(GNnMkCve&6bXI}T zE9?R&rJk*|2ZO=jwpy)z0BEfvT}9+oM2pNy(M^11WziX8RAJCP~3v?7}O{z zN<{wwK@52CCVB}-;u6Izs0TMXV=_rk%sA=ke$T^f3ZwMI2o_y*Q~m1uy{cE;!2e{) z*ZRU&xLb=AL>0R**%9_YXEc8+-F~`HF_Nrq=lDdH?|`Fl4`c ze>eT*Yn%NgjeI`ezNCO;*U1x~KH8hSf`_@8ITT!f-H8JiTbBgTpFG!Of3Qz!-va?K zT4VB)&4rx1dr1JFKTltBGEUfN17ZR(VJe-0Gw1XjJ9s7bSAhQBvn?5WdZ(}TFL7fu zCdMb?-)#H#u3b09q5;`iHnm3$<1A@zMxfU+G;3@n!{ vJH5Qyt_^e~6dGT!7DfiH9dm-@|5N(`Ap-1cUSxL<00000NkvXXu0mjf0ZC|y literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_elm-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_elm-24.png new file mode 100644 index 0000000000000000000000000000000000000000..094ea019ce43e66ddedef6d82d4c065097700743 GIT binary patch literal 702 zcmV;v0zv(WP)1Rhp;;QHqCBO&U=)phCrhwctUd2hW1y zL3?e%4XevE%BXZhBx20?>&YE z{&SG(;@-lMAPDnV-k_L_Cm-wsNVjPo!)!R* zdP}HgUv~+obLLj&9rCYiQ{RB^1>IFDHkn!YEveNz4LAC@GL7oZL{9(!?tH2-nyok` zU;EoIj0c~Ha}McH+x5rA(%zADX7r&}qHR%)k>vt3^1O7uB6<+Lap7O%O8Z@&vf85l1}H<-i-(V0IxBK zJ&kGXMARy^#PNIyu-760NKltYB3%ccek%-2WwL&=ce3Outew3adwA4J66-VjA3Tv-3KIrzHP=j_3)f1N+^LHo z?75K32Ty)Uj;rB-@sLg7YRPKx^rZ5`-#e7^jsdlBqY7-n)e`!fy@~L{ccC+QtzbiN zwdB>dD{_P%{%7!N!KUC=5)J?u*doLO=QvlV*$cHTDbq^G|MQUtQ2q2TO~(caLC0p{ k>R=3u;{ji|9xTiF1NgNDg{U8u8~^|S07*qoM6N<$g1iqqGynhq literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_elm2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_elm2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f6a07f7ed68069fc4c431d9f2727b5ce0c4c8877 GIT binary patch literal 580 zcmV-K0=xZ*P)XfuY|+%ew>&%m zzBd%H5LGuN#x;R24Y}ylxg*|f%v++R@3~7_iGLmOZX<|a4ldL7SkBd1!dZT{_QP_- zZKY^eg0xUsui%t~=2W@8u zClQP+54|A%P1B1v*gF&KUKn$IRzZ27mD^>o=hg0HPF_Xj$}ED^wvdt(@NtwO&@B?{ z1Xb{35@-2C;6n-y)mzjApGboEb&GLnEc(0*uc}~H_)#UQ+m?lABnDp=oD_Z}sTlmU z;I!~sNee)bU1D~>;f2mDahCU^v@agA|3r6X@JO)5e}GTIkln8zUk~TOYK-50vIdo+ SpYf6a0000&Ung$BBEv;pHfu-H}- zLHAr&S)fdH*i{k&W;$0$MMtCgcq)?5WTU=rf_T5kOW0x zsIK;+z99sEK*x$TZ(1B? z#aTgcXevUpoT#ewz~i<<3JJHz4x3GZs&Z6Rd58%RBcN(gW35g19=vA_wlCYgIkarS zK5uoY2Sk7b);(K;M_10VP$UVlku1_<1!OY@V$lrFpXencYl7s&hDL7PNcQ)2zkIag zlam0T76oi>$D7`&kjE-yF(%2sZRtSglIef6_^etL6C;T*<(HUd~Yjshl;m$uEvI~bu19nK|)$si+nO%PMuv}M2sz{9P^l9YVK0rvbGX@`!qQdccw^UUw&B&q%%(6%At9&Xxd5DYmq#I9Zq;TXA|N`D!cV9B&~qh5kv~RZ6vR}mBta1zTrzNjF;a+G z0;b6K=aQL3Ngxn}B!uVt@XC&*;L1dW2YM4Yw*MO4?oR=dAO&U+LjtPc;F3cT47uER zQp)_`ltta0U718YhRLJWHO#Web6FE#?P;akk<>J=C5l)s0Gr972o7~Jk7Z(`tNX%T zmcSt#62^GCM;HPSM6KrsC_PpH0BE|3wVP_$oJu!1V^i;tASi-aq{WPaL^hx5YDTl1 z@uR)?(ECk+imKyfmEj;HLDLkhSX+tZPgXE*aO%CwXHDd@CWIjY38Z2<@INJ_x(0Q006c=vg>e7!^0bGs?Mf+94aqCS*07AraE?Gw4|ng~T;x=z3na#dxA$IcyHLAmd85J=$Vn^mDFciE zf6&R?ejSR!(RN~hBCVrH^ku;%gES2K_13xecw%V#J>R0@*jV>&xznMaoLAe}Xj7fc zu5f6Y3d$3Vl(24!l}VvoZj62z{_#q}7+QDs&jZove0TMO&e+9Njkl>K8IRT!3Ym~Y zahD*+fE=Jm4pnd~OVgyTk+x_@vhBE;PH#HZzdvy&-{1D+jq~2FQ=Qre8rSQcT8Yoe zT@DarHlNC8#CSZD&sVQ=qaag4F5WnKCnNr)8$IbUJfqxik0g3t;WSyMB+~Kj-)5 z|DBv1;D0G1$|s^qBGOIpDu`$&5p5@;!U=wLY;+(X_uWt^G`?#xi%mAdBaWYa=GJ_`7${rHt%*~%MfQYzq z%N(PSUjPVWzT5ci*YBZHLLde(0%+m^Z7LQoYe0H>Hb4N+Dmu%v=hWYK1I6XM;4oiZ zZ5bGb-O+^+M>|A;Aww^qc(w)tXCML+2?Yufcv2SD*6#q+21O`aRLvM`yKevyWw)I8 z!MXpVCcgE#t;oyEM<5VD>&1(>bg>0$k;9l@gxvfBL?aSB1KpTkT7k!(Y4k3ysmYkk zn^r`$d)u>{Nl_GPZf+(bqLZgj)Bf#iX=lSq>a|!X7z|QhUmuyfx~O*bDr#$M`*S)L zpCLoD;=u}>Gnr6ZSBI{yE`0fU6V{g-QJ$lN>D)OG5!`M!#(h4lTat&Ws;Wn)15HU7;h|zZDsr+RMZ@^w$}oiV5@co@5pee6iA6fp>}WcrNlw`~ znI}$(RFro(<60&Ncwx^zTxe;5-F^#7Y#cYE5va6UsFT95J8alcT>xWgA^grBSg)S0 zyMOU_6d7}RDdHuHcu5I+DC)D*Q=1y-jaOeHC1j(JyNl{;*U-MbFH$_PpHIDoXmGU)UMWENzBa}~fi`meXZxL}P(tI-^RF1d*@ zW|=X7h!%vs4zpHo;QtH>q$B`A4ezJ#A>kTE)`8CeC5A*?2B0E1?F2c@d3v6m=N1;t zSP^5alZfU>erJz=s8gSrHy3K10gQ`?_E{mMW^=X_-bK z9GXK!8H_OxF!MW*y05ir`_3OlEI0zmV@KFGh)CNtP&@`rWi==|2E*)p@!l!JI7$18peA%=|?(ebA%PJOxd9MK@BM@e%1Drz|v_bCgLCUt> z5Dhs{qzLpKPONzBb*M;yDiUL|wfhi&>M3_XL~HzqKRge{k?^AO1~D@S5%V9&`S@G-nh!!%_yC|%L+&X?R%0qTjtm8(ddfuW=#Xnl4 zp1;r}+bm0%E-4syI*dYU#;ELc~fN8EF}P+Pfl-Q@q^ bzpuXmu|a6BK?J0Y00000NkvXXu0mjfTp4rx literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ensime-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ensime-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8cf87143bc827846b432d2ac9a298a4727cd8d73 GIT binary patch literal 951 zcmV;o14#UdP)B; zJJ;iA zkje)&S61-J>IUAeuW|Xc>w*0LIb~Q`wv6|JwOsr=z^8vqjtoyug$uU~aC!W@KY?hl zX-)t73V-kB`}`Z5D$5=% zz`s%So_4Vi4wO^D>ZYBGk^`t)5jE43cLXXoIqO4IfJE283Q+g zcS0sGG?SGd2q*<|v$M0pol+4c>;|fwTpV;uL4PKt4+M_)P8TgJKbY=#s~mNY;A8Y1(;PL8Fh%s04GGNH+@Gxyb3Vc+Fq+gzXt3CJa?TWt|00=_0@Stz^#s5 zkLAQVJ5Rmuh>>IR+wZ9&<6;SL+-Kj}p-!Gm6#)QlZ`)O!v8}FB1|lHWu9x87?W#(2 z)E6I|+w2OJ=!iUQ3Ecu66t-&tGZ$chLCetN9Uhv$UC-9k=ItA_+jUrZJk<^WLDbix zWv~C#(2u1&7WHIKZrS>xWiNYQc|0}d+I3J8*E!u?HT>n+!r4nua?AF})cW>k|5MX@ Z)jtBnDSBjFfolK&002ovPDHLkV1l+gxd8wG literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eps-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eps-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b24af4b49a83f34bfe04da3218d2997dcee6b757 GIT binary patch literal 841 zcmV-P1GfB$P)rTPmXZVW8kYTWAoapT4W z6BfE61a~9|36z$Zso+fK&OI)qwXZ1<^&~elIj`@W`<-)v|11<{I6FIA2Cycj?9m57 z(D`rMTCElbLGZCyEPfdZu(GnUe+3PBt$mhl8)>bN$$;3`iPnV0u z;_iUcYPGtd5V(C(I`O-;I6ofSUQ`TxYXrkW007BkGB!Cm`E`GPe{LiI z04PMDD~7U01Utt9Z?`Y;s%i}QMj{b-p2wc&aV!>#kB^UUA08g2Lji;Y#uT7B6-Dh* zV*SGpT>6alB^|r9!47m?PusRlwr!JTSp=ZaY&OdP5Cs5L(+*0Di^ttT&p)%TX_|>k zVD9d3-ODTb$`AhdP2_SHL^J~c%nYL5!3-T!$8k29`F%UE|9hRzw(UoyQt4AD2a!kw zL^N;!pkA*Jwe|Y}BS;1i8my`+T-WVM76uR<)j{_bGc$r9fMr>bQo{2*5D|1;A5~*G zK)WgcI5{~15kXNDn5GFK1YFm}(a{l@8T0e=1LSrJy$L|QUPm^YMLZsd5CXpMgPCEP zCLG5>qtO_+u4@6hNiLVmAR+`o0N?jJAVLV_ayis$wH{802+?TtW*xMTqA1XH9a733 z5a0LVc^&}3ah$)KB2`sknr2TYLI_AH!OU=7_vTlmD9X?g)pZ^De7@6(@B3)AT8PKv zC=?2vtG!hR{oNRbf!WzvFf)V@Fbt!Ivu?TdCU=7@EG$4uiCiu>U~iK=au3>-he;xl zfTn3kr_&&!p^x2-H@PkSNh*~}M?XwL0h-O`j;g9}0Q3O$gNE5G%laOc`=81$yzE(O Tj}1CW00000NkvXXu0mjfKyh#4 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_erb-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_erb-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3570f7835488dfdc1e26ccc1aee27864998c1de2 GIT binary patch literal 494 zcmV!cY{3|5F+#7oD&n<)(4#L*U5Z?%-x{GSQL20o-&V#kk7iW*7`J5)+*C z5nMp%XcKY4V2=Yui?;N(g@3!rx!>1&dTtA>I25P2mK7qSxO+0S3_PCL{jMqtw=_dn zXwqheA-UxYfSjO~6@oD7Fhek*NsOoPYT5y~I9o*ud`~VI)NqEqQWbE+>Mu2&82Aw= z67UW)3{ zU^*>t_Uj=`Q+@w*Z$W%h*Yxwmf}pm*G}R4f)Ffcnt1Tyycqf<~FvDO%bJmtk=i|-? zpQUVRdNqN-TQHuhfIAw0o%(O1KLk|bNP_QyLhFk*5m1qB*TS0|5vg~QMj$0gD~OZ? ze@z+p0LF1FSGnBw(O~c*B{;VGEdZ@Jg0Rd97*wchI;R0Lr~v#T{+xh|@ck^3D*RCa kfPgN5i*(@mc+A!38+!(-t&{~r>i_@%07*qoM6N<$f}~#3egFUf literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_erlang-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_erlang-24.png new file mode 100644 index 0000000000000000000000000000000000000000..eac267fe530e7dfdf4d9cd007b01bb3d3e357918 GIT binary patch literal 514 zcmV+d0{#7oP)ck*s+$giMg$#P zRZ3|RI|<@a>SP?8jUqu%n*X}wrH|J?`ouK{F5JsK_Z-fJCYpFJ1RzIdP9Y1Fm6p*d ze%yqKIr={;@hQ-D!5n(zkHVaFKD8xi{|iS;pRH3co;#0(HD5fujr^CGlH%F_f7*~Y==Q-idM`zaMeKE0`ne)4UdyAhQ}UY z(`Asb*sm^yaq^WIb_DpzzxOIoP-JA1;bT4JEX{v5Bl+$xlSRF2HJM{z%F@|j;H zU}%@&4^^JJ{t_!qlfMgc7Qs|8-+-!t+Xji7XyT1{24Ayr`R_pu0ssI207*qoM6N<$ Ef|o+qkN^Mx literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_erlang2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_erlang2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4838afe4cf1fc748c3ce2a3c75c9458dd904f875 GIT binary patch literal 620 zcmV-y0+aoTP)r@+^TFPM$m>zFx2 z`Nh#SzB_k|VTVl)!{6@^GjGk@#BIH}nn5YX4MiObHz$K?iVwqy^d5#k-!%jn7#J9s zV3Pcr@(l9fj#$0`3|d8D46J)YT=(=bNH`iYFfcO0T`g{Jz~Hi{k3p+A9Ip2N z-+v6x_nt-QWnf@nVBuu{z%4KF_tlZh4ELAp`lJ}+h7sdDN>U82`zA1afBu%~>*H6< zyecw(*@bvfij@EV{xO`)>K9;OU}R(AWdDHGwWDAZkPHBGrjQr1;&n#=0000GIN8Ilgs6$;gD?bN3&Vxw!j_5P+h`MM4{0fw4=jkN);_SH zr4r<(y%L2~preHNER&*8P;+z~O=nJvJJ&ncx#Af4tDvp_&*ECA)GjA0P2C%eagNd>0*@*QN(800@6hRl0F292c0kw^Z2O} zd3@Nrp@hIksQ?BJ0S8DTfjw7yulHfCtky@lh1)WY>Wl!il6$hku^6 zQ_-aId(CXp?GaSBsEkb7Lj@#}DD=u1A0%HfkD~r86ySECM;i+eL=zX-z>0r1vl`##i|8_AAq+7wS7H-nfxPl_g z@N@Ay^gmr9R^0=KS&^f$g8v6S`og;CqtyOWfB08!{njx z4scp^9vFg61eZk?AN7>!O(yafMsgit{qZ;u?&n%CTuWPo9Ofbly+Cr9_&EesBAZX4 zy8DEj!GVXnNNxjZ`;^Tf=pu?vedb{cn8b$3Kq1HU(f8vLc}#@Uf28pj&6^T8daI`4 P00000NkvXXu0mjfvU7nx literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eslint-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eslint-24.png new file mode 100644 index 0000000000000000000000000000000000000000..877b5bdfcf3e76aa086723e8315f2fcb80e13db7 GIT binary patch literal 809 zcmV+^1J?YBP)6qsWLMlfm+VXMeLz@#5Y7P+`li-LYY z7C}%3?V4RSis2%4Hdgbdq9QFKf|7nA3RyO9-f1z@_8H~AEIl2=CoX@e= zZzNTfvhB4%IGZD#>Dv4g)CZ!?h+KDsp4p<>dgC>{uDq>EI4ek1rZr)2Pds?zw+1^l zMZL+dG6GZpV}LGRHg+`}-ksEXav_KYRZ>`3c&wwN_^n2a`+?{#gfqZmg!j|Nx0U^| zZ4-{sW@LR64O9qnr+C_05ix^T>gt+|=LGfsfz@C<0*XK`M$Fn)ttXa)>I0U#w=%7FU^i-AYSss$7Z7O$5{4>R z*Bz^V?wY_jPuA%uSds@0un5#DSFFgEWalqi6!H%>0Ne9`{#A7i>!YEJfq|O$AK@w4 zcrym;%}rro_&?%fX=chmqimps)Qxl~@e<@=9?&Qlk6kfa6fJ4y%twxx!I%cv{4D?fNEge7FpRFul<hJ*4t*yMQ2`?K~vMsf~i*(4-hIH;RMiSi*y*4 zvY10V!U4eJAU*x!wJPu4-D>4ENOxCbiwtJ3%ja~N&s8EK_LiRb=0P_r=g*`&Rucue nMAoTNzFctNaxVC+{z^Xpb&~>53C5p800000NkvXXu0mjfjw@{* literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eslint2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_eslint2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..009614d0fc203de0386f72f45561da0ccae9bdf4 GIT binary patch literal 1007 zcmV{*B08skQG_n<`M~pX(AY^(G6IfQJ5o3tPjQ)-+Y=*vqzKG zCu4L=c-O~045N_@rf!k3xdf(T53Z5Sxr`~s%D{5l_0R3?{rONXYZnS=H1V69%9(A9KYIo;a@R`Mo;Pan{7{vBT-Sj0<;1)qTU$0 z`s~O5$e^!p!rNdP2LuiRhk=$g!bHJ)r)T!YHf=E2eKCsgGBDr|`5Hpo0_!En@*iok z%lQ*yGtayOO4c=asr%asHl)b-jPihlyR{8;+rBI=l-TxMhZBq zgwsCD{>=Sz@5hE$=3v)_*Fb#&)FCV>#TYPBGSgq5xiL_)jcnQgVBm?#eHyAR6Dmzs dmf-&ae*wkvUnWbB|8W2S002ovPDHLkV1l@1;q3qb literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_esphome-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_esphome-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c063b412a738b5e5465af9e67947bad4701ba1d6 GIT binary patch literal 802 zcmV+-1Ks?IP)(WiDcI{fVDv=>5 z7j0d%Ez$_0MFbT>kVdpHMIxj|K9O{}Ua#*T930G~l)fGq z7`R&)&}cM{%Gsu)^~lJ`rOC<3J7Z&GZu726ZG zdqN0*7MZWCtS~q@NWETXeSMw9#l_+VA%y2__u9S(+yy?l$Q)p1W`^0>*}^6P!1j-l z%92KatG1`RiO0vsPt6}7%QA+ChtCZt0Z4kn_7Knpf}~%&iC0%w|HbX^@3XzVT^wM$ zDyiJz67X9$@!{bi%gf7u<2E-p&ow{WU_;V+C#=WzwQl0Qy*=jU<_ZnF1_004?ge%_ zAxC|EebxWuR1^?ne9!i$XD?1pPR7^P)`oyGAlpYFgr1a=0VD<6N0KU%NGY92D%n2D zvaC1DvTvYxn@&l3LDHn{JjVEDO6gVLu(JS%JKSqP#rBuLElFRZ8g{Ngvt13S5`;K}zXe;EVf(bUTFbKJXUs?L+O8AwwJ%*$ zarpwS=n@44SAaMJMKM!MjpKU{^XBpxt?5QO8e5sY@{q2!PD~BcsEJw-#D{|xI^V}P0jHQMnBjjfkjm!J9fj25@=7AHczzm68N~jZ8NPUooVm)) zXZLyjewv})^O$p((`b^CM_X8Bs;gxI;*fF5xkD!r;KA$1+?c$_sr^Se(6KL?!nuk? z+e9T~XQ0ODt8qqOJ_0qe-#*ecd^-Ai;*jOHLN2-=C}p1`!Z_3td0eAdu}F&5)l4ie zN?lnX6E59dS;{P+7J@?@==|catrokZ8_`oC&Ir5^5%6;k|3faR@erg?7Wj01W(Am7 zf1lCQ^%iNS( hSTnrwKk4t^!A~CSWWURss*nHx002ovPDHLkV1m(?UA_PS literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_excel2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_excel2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9e5eb04e4fe209926161ee08bb010256a6337e80 GIT binary patch literal 936 zcmV;Z16TZsP)&;J2^bBUv}tS%%+M-~;HIPtQM65^2#E`^s8C(#qC%`) zL{X$0jbIQL(M4RS3k})`rd5kY2rbkJS{kc@+B8^68>V#9Y5vTccaNLCWHK{NCzT%f z;Jy2O=YHqB^WJ@Mi$m5TZhpDzZpZOE1Zkh_A04bE$1Pt-Kc5cG)HSs@j!h{hiP$z# zNhxdrTYs%4AE?Pd0NP&J(Pfnv5$;841baRIFI0PrYUOHBY= zu&%stJ<|C05rcFCZ&o~_8YAj>bX%j@(1L#NN7xe(bNEA1LU}<2s?4CqNT}$bD5nap z`PrcF2SnUBhdjG1tZJ|>6v0VZ=n6o4P++IP$+tVWX7sI26jGN)bjjquun>)h_B3bGk%F2^+lOCU=sm6nOm`Eg+V-8$KLHvFq}Ec zvENQ|VK&Q44?S7YB*?1>&l=o>AiV*MhT^LlgxwGaz8K)+u@S5)Z+-nC*{eAsZn#vI zv%cKp8tt0;Cw8vro8|z2#vc5)R9G>CZ2mIePMlb}KXUpwM@}Cvm(?3bGes*Cn>Jj1 z+6tL~*m(KGR@~)nZ}zCL3gaUBw~8#H{1OlmC+sbn2q- zrAk^1Nt8|3a{S5u(VDtn(@(#3-|mDBEv6hLdA9%XM{CKwW$_=WZanK&2G=J50000< KMNUMnLSTY72)hFS literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_expo-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_expo-24.png new file mode 100644 index 0000000000000000000000000000000000000000..81134b7a4ec324ebdbdb4d2ce5f520aa8f2a24d0 GIT binary patch literal 1053 zcmV+&1mgRNP)b(qM@Nq;-W#g;ZlTCPbsv zm^LOTrZJ5gn?`@OCNydjn_3JKs9QIZ#a1wsB~q|Nl$L}l`vJ3`vomx3VIkXPwiMDI zzCZ7I&->haW^#c4pC~z0>uuRz=GpqdqhG9d@A>q7@rRjdC3yN&V5ad2cl&ZZbs8_#S_#20OU)R|9%93&}{q)Je zbk{fGB$XoPPT9oHxpx7uuL|(;eoxJFhm-bBT$hcFyFFqgOta%Xgwlq40d$GuDJj^- zzE*5yjr*E-s0wAYTm+~uE~e~?0k1arp5J#+cpLy&j=*B&+?v+_Qccm>&53d}M`W{6 zrqJSlY2!nTuy9t>z-M0Vla}TaTDzr4=ij+!?lUQj=;T=FSVwP0;GTdDjQ15=bIJ|? zm>83>DVKr8%IP_dh>}Ft##pWF*dDy!mU>KmJjP=}geL_ca_~dO*)*15jED#D(3|)uU&8;Vj2)I2L>#d-leNZ;q?|DjBCklhvVU}=7_4c z&KNCL)|Qf{W6qokz%>{J08Ia>h=cu6Y%gWk84Sc1iO|$Lh&sKV7TGV#)tR|+yC4wy z*M#&|Z021rD75fLpJ^7%zw}8scP0d)gG?ztjzIs2(;gWhI-sOY>^QB?a5y!PO-{`ey$IVGas%_*q z#!Yn%Kt6zqK_#Mm5kK-pKypY{MqP^Y#4&M*s^qE8pG`Zvht`iS)Uz+7ebsX@>?$y` zET4qg_#glPCDqkC+{v*=i{GGg+$466ZW6Sa*(P9l%`-)>seiU6JCCUJNm>ded6bH+7fM$1Ehs>+i2 z^{WB^!1!;{@&3z^f6A*2^O^vPpO|oPaWSqKaL#V}{Ysy7rM^kXjVs+EgtYVwn|8Nea8M()WIi}i)>?}AOmA=erd6~1CHB@J{82DzFa;D$d=q*% z+<7YVlhUa=OJ|CU3gr6}H;dRunC_|wPs;3Q+=U;ur6@)b-6q}Yq0^wtuuefoBzJfH zVD{XCBl>pxmeq<%UxC^Hfem}vf%W%fPKCcF`hicQkZu5BcX3xPQJE#jw zX^b|(g!A^qy0PJ|I8shtAuOfeyxAcq zf5A26-m{%Vm3(D;0?YSrdfg)zdAFrwbbKUwCUIEk4Tml%jWc+mYM#c8hW5(rU^JKb zSVQfNH66_D-`v$2gohhm$>z$U@!6+PbJ`AMC&ObKA4a6A1S+O0_zqS^P^i%V3*qs^ z5aLl_2FQXHK+}R5XUurRK7i#m)j7 zfYU*J`~lmU`D4MRk0q0#)EXbionFddxosWoZi!skt%&QxXuGt3;DrNb?-5*PKafhwIWWJPtm*_xrx@d%t_I z!;;p&Az%h@*i_d57J!w%U>*=Qk9qob?6zs={c`sk?3e}&4!B0COwLi6oa1TuvdNue zD*H>18GG>%NglDRxgCt*Ft5|9J^uoi|a?Oqq7w`TI@t2cB$e!+OVOndQz$ukGf(CBrzKYof4$vHFy zKnDA}C^IyH-5P2Ti9|>w61d&g?p0M4kH=$S-s|V_%}(K)o!ZhU!+JDXmPNf@7eWY; z&1NmJbGe*Ir_&a8=>3A25KCf0ED0oO;D`pgXfs8lQIg3dhGCG;=c(0d+gdkZ&}y}a z$K%9eF^a{a$pe7^sZ45@!639+eBhF#S~4xg96y=e;zyZyX7KEvzC zG=AsCQ&BFL(RCeN*SBw=Jh+9Ly^HJE5tCgF9Oa~UoD04%XGag4-0%0JC<=P!B$1GPJ_@uNKl kWWZ}v@h0%hrdnI;H~6IX1x?!9_W%F@07*qoM6N<$g3u=`DF6Tf literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fauna-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fauna-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e9929e81efa9bd8f33a1fb07d81af37a8832dbbc GIT binary patch literal 696 zcmV;p0!RIcP)qp-AfcS%UxEzs~9ZFGt{1yMl}ln2R65O|5C zYXqJ0(xE^I!4ynqcT_a7pg&;H#SW%LvFz@=9omI)cXs{5+H;zD-uL@G-^=&S!2eX> z^i(~lr<}}HFe8&W)Dp2?9c!Dd-jV>VkT`Ir!brwL(ZtcR2TTrymO(xMep?w2L=)%A z8t_kQW*>HlG7yX=9>ih;M)?91)A1&%-1)q?|K(ce5{(Xf1EADS8ocjPy_27r1R z8|S^-YyVtS)o$Q`d!Ga3k=DuKkeTlnoIy^NHNT&$l2VaAY<7w0CE#$e{&Xs{t13OyqoHRYx~YIb#JVo%qdfbE zh~8iJRrh}yY)F<`Uos#ZjqlB6TaN?M@GW{0000wEvB7QBs=z>61nyk4P@)DEqE-cMBNw$Q`Vb`- zMG1-P1dDPJxe6SnaES!?8fNq zCU&YHmFg(3B@fd)dLQ@82fXz)^6P8po$as|1bYx4xI)v=O{BH0ZjIx8gT(s=%QgS= z3v2EX_M4fo9w>13-JXAiv$Rkb9%jz+BKG`jiG%Aak*d0;*2FkC9`V7+zk!L-jEVpZjvQ3i_U4O+En6t4;SjtcUkt zPr?~gG&yLh>jW4^Z2`l;INC%0+iGB`SnxoT{carZtqm_~boGYD7MtvQXcBPMoi0}+ znbZZ x@}ne>*l?chrkW5q)(E(U?};tzc_Ubn_80e>{Qu|=Z!Q1;002ovPDHLkV1kS7Nv;3@ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fbx-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fbx-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3bc460500ac0f399498853dc0060c414e48a528f GIT binary patch literal 711 zcmV;&0yzDNP)OCZKLLWY)Sh5EFlZ zVWC@B!penTiAFK8i5L?>A+!{w?Q}XbE{I?|Gn6*?F7LhPea@M4?p*lK5)GYBrxSE_ zU72&UB0I5_I(|SO5^D^hoXNbp#02jyr&$*Vm-W*_ZQln_zBbQBKSz!Q1 zMwW@`LsjP_E|5ws`dLVU=Huh{S^KfU`p+AC=0S4YnV>B>Fes!x!*NtXq3ZR%*`Repjj#;~jmQ&ZM~ zl?4K1IYe7q9st{c)$bt&1~=(XW^s7M#Kdwvb{sg>3Y2O?f~Uw&ot@C4dKw9Q!?@}( z4+gZUTWDGVA@F@cak`1y<1jRE#R z!bQ`H=&|3N=nj+5AOEN5EpQirhupgPwmHCG4GiuO(Fz=EFJRkWam8H}@s#OlvtDR@ zfUcWFwB3JRtgxMuN3*Vq66002ovPDHLkV1ic7KW6{{ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_firebase-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_firebase-24.png new file mode 100644 index 0000000000000000000000000000000000000000..986121b1af0558c23c3677d06488f2521b701866 GIT binary patch literal 752 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 KMNUMnLSTXxpLM1H literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fla-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fla-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1ea87216108e81787c80a1e01fa44cb7c41ab31b GIT binary patch literal 806 zcmV+>1KIqEP)hnvRZ2<~b!7a2RuIg*d;VP{6EowCF9!052k)MH&-tBm-n;k0 zD$9CJXrzCe%RgUkpkVsmZaw+4)1LKmNb=mU4IXTwG`MrXrR&P8qgHFoz6Q{6b-PE- zv{fK&mdt|m&KrX#KbK+{G_ld)n(~dKR(p7_4UnR}Z_=p++k+rKip9)LCrq|U=nya) z+`sS;t^u#0F@6PVjW#*Or1A~>toEc15V|DwvIyBaM-xC@(o+D8->@)eVydKLA35Qw zb`7oX1t9CoW`s_*8O0RRy9)f&xjv@&i_o#w1Kdhpe7e}8P8H3$JYZLVFNIw(lm*!x z51bCNZ~RqD=8K!I-v#cr#%ZMgy~Sj^#2*ae!ovHBfJTLel5x>scS0Zb{I|O(n=jFB z6d7YnCqmK~Mo7^nTHB?S_tN~s3;(ASVAGEt1CvW9io7y}2z|ddCcAnrQ(ZrDH)*&s zn)2#w%B$yA1>k`(=6iK~RR9n^lk7b3fp!dT0ceg4>`x<=Z&O~q<9X$}cJ%LA5kNaD z1EAqp@B`Silg0sp`w?V&C0%kXbK~-g0LeKBG>SERV(7jCqp51FV024{OhSs~!8NRT{aSWpaP+EcZlL2Fr9f`Gu1+uk3Go|7nZYuLH zZ_)G09?-hj*Zdj4Y7bwS_|?!jL8Y5|87;E9ONZmlXa6l);A|3uncJfR`w<}aHK$S$ zkI}x-%K-~FRNF0Ow;MCSOq=cIv-`kz0BN}ZGuztS*?*uciPz-XjM?9B1Vr?Q6Sf5B k?E%=oG1*^l@3#W|4^U4aJl%hi0RR9107*qoM6N<$f`a3FLjV8( literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flareact-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flareact-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f1dcd61ffd2550b0ab75d8ab40073b2cefe23340 GIT binary patch literal 765 zcmV3wYsOTt^5|mH`;l@zfM2jTaM6`?+{lutMgcL1W)S{qT zME(U42tmJz%FuKZ6eJM^W&~+zh((jm%$w8V&FG9XIx`EQ1DD6;o%{Ws@ArP;!v9u! z=U{y~{iZzdLmM&Pl@%e-zGE%;k!KheD~G@<3H;vaMo2vcZA7Rnhd_#gKRjCtiI+et zD8M*%zt>4yZ=w`}Wi8UzhaHYStZT(O(yM`=)jcJRUyOj6=rxS%#G41ttn>P`=Ts>K zOIoDQFYd)~H*HJ$quCvx+RGH(vj0N7ECL<6T1}7`0UB~Zbuj?|!&tjdI?jA6gjLug zBj@m3!y;S2x{xEY53OrQq+bUwM@v$muWr`ilAnR9LQ~I;Eh!RXL&Qh>(O?dV_yEMm2JoU=n0Gl$*``tmAhke{7<)ndYd?4( zp1+XV|D7GdGQ#J2S^DQ!NbY8OY2qxcPB0eVKBa2q>>&xPM_)uJdagPz*20(HS zYzndA_6F9)unzoHm^Dp^pF4R*k*RLZn%M(&`cVYEX(@=e5_%91f*?gG^y1w^Jrr7dvJ{JW zP-sO;p%Q{xk5O zO#rNQ_jOxR9`pxIMS|a_!?XyIA1J&l#OjU_A()VLfUGZkzm0F{_=GEF#|2;_uK|-W zG(`TS#($~B`Wpd=Ebu4f5~#Tg)D)w7lVreWB$MnK%8)#9oQ+41DZkDJasv}IOTP2W zX?ka_6W@~p;QR9z%6x4B6}jzi??1(n`8ybi1gcyc7uX{37YLGzwl;cZrycUr;u4?c z?(*wPQK>xT1UhmFq%NGNwW|w&_4~_wn3&QYwB58}PY^{eg<$WcVW+bnZ`bG;$|z;6 zoIpkHF3{e8k{yS79c<6!IMTFOKYT1yrmhL}(+mbbB2byMl$P{*G2042BmIJI+D!jisj#aHjl1Ioicu>{SSKf?XX7lAMEqRkNZLCVM zL~(J6ayG}tvlYy(EzQ=bUs%r>1UrIqHb*&|3sqOt^X(MyzeQn5{w)b3*G}*^a?MI96=q3YzIC2qcVuR~wUHJC<@bA|4u|6 z8Drk&^ZBE|9j8u-$R*&u!?JN4Um2Ca1Moa=64;lrUBHx5>H)C25mn?eFbDixXV%(s zsZ`2rX0X14B^Qdwn^vpUkD_P}2vZyYr+~-6RLTxyv)S{&e6?EL4cxWXPFQQ7voPeDx{9J` z0hn~gGASYz;F!aTz?6twbJ%pd-M;6IGO*Tm22jY_GagJa3w%k@k}+l;(j{-EcDwx& zc;z%JT5CT8%TC!jYi%3^!9iopp&$q*y4~(~82-@)Q%sA<5yvF4*3OEEPLWbdU2QZP z5%BT1bbn*;C)H}TAW4!>z@8NKec#VFo6S|XZsdrDsnu%rf!nN&Y8m*NB*~er_S?}m Z)-S{5v0U)R-E;r|002ovPDHLkV1gZfC&&N* literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flow-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flow-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3a60d71fef25de3c60b6ea668fd19631194370ac GIT binary patch literal 962 zcmV;z13mnSP)dst?A-s$juL5enwX2c=Mi z(jxs2D%b}>A1p{gs9-F$1XF9&#)x79_Lm4^NYq5LX|?-nc6NSTAF63~XJfa)2k+xO zcg|(iN=238QW`6y=Se)2h!OeTRYVN(A903sAQLBW~B_rUYO^TCr* zdGhP*>U^PqIQ)yHPPUDpX-8>k-iD#UZ<$7tkNi&8fh#LNmicgy#gC(SF1UXqE)zfn zP;-jp>FFW`|3yUmhE$tHdn!xA-44;)9w*w>OLX(?bi9(Hb^APq5ymjUh=Li+6{uh} zqAoriq9z3WK+Cxu@wNdMaop6tgeEmt2~`wpIBN__+f zgB1ZgpCD`BgQ#mGzI>sq-Uz?T==%rcHGZwDg4GDZ>59$d!!GIPE>RSVoNZIG73oAT zag16yDk@MDG-0tDtqN8ouopH0a7*8_+|dWO9-QLMO&Q$cwVT!PZV1R@{Hew`kK$Dn zRU;uT0M6wJlvP6Wb)GrA#Mr(bT(^wx)a*j=B@Z#F#sH~8bfW~osgZd)^BM_rE6VR@ z;J!RF-!)RK4XiaqlL&{A8fClX2xmSw$mR05PMXH1I9s=zM#HTe0FWJ=#piXv4+MQL z#?-V<$#SvF?X+}kkbS`k`d0uzcJc+n5kLhiaZJwr07cs+?`~5k2cN%b06>N~gT@h% zAX0WhT)YI9<)gG0)aVn#)koHRXcfo~K2cY;gn@Z{=X(I6Mhj-V8xL6gIZIRbIW#fV k2ZOD$YkaAmy#LAi3#3Ci^?*w4rT_o{07*qoM6N<$f|-WEj{pDw literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flutter-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_flutter-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b2ba157339eb5852fe991f1de634e745adbda00c GIT binary patch literal 668 zcmV;N0%QG&P)bfdM63k3z~R9Xve+_gJbM(RQoyKr6q0UszX z6pOg9LMTQQEukR+L0tKQA_~EMlRhlc(ay|0ZX8J_lj(G#XE*0?e&2b_y%+e;Mp2T+ z7Nn*8%O3O%w#MET`{;-J8H)n1Y)FQf&-jF|7y4+v+Oee$TsTPl;5Q0~)uh)MS|A86 zgqy{by5g6|&B94=s}URs(ZMETxmQT>1rSLjfj~Ineqn$og5ZGy{{jv)*uf@ad0-3# zkEOPjt-+^_6rZ0W(qZ6r0%76CJ2_4)*Fc^EMJkD(Jn`xnt+}q6lUz2@K{4qKf)9O= z6M%jRAc@)`m6hU=YB=E8LGcJx;>0J3@VTnRhc5i+8!-Sq2O#MwprRCyH&ZC}nBCgv9awpF<$sjS@Yovl}c;6RA$n&Ytrar8F; z2V9>v&E-;Nwx?uUrvU^Cgt|?;3$jNXodrR?f#wpSoKwEFvh2q2ft$LTvw2>?L**+*TrZRLq@$P*G0xwt-)zT1?5E8;lT zJb?Z%B9R{b_Oa<*PFxSw1%$L|C!ZrTz7d5R$$kU!DGb`KiL*Wc0000RO^5TU`#bX`~+?LU_L(|j!B?UWEs()Ex!aktj9*+WG{F=zORBALKitlpP zKQ5HeZo>Xhz~i1EK$#P+ldAN1`1<#;^a`T$ zYq6Dc4Z^xmcT1%nJKP}RPG{4@dzw}9@=n@(U?<_-0b7E)FKqbxr(mGVpNO zr=`ssY<$i{G$hX%AJJg-lN81Ltk>nFCPZk}BWJ&;=&cjKEeHazU@kNv*YpS80DRaqVD>l&&n=6CISw8KbR}$}@`F@kgEC~isZjZAw(Lq?wvd!q?A@dkBD$MitE=PDVKg zUJ4AL(vB0I+fG2Gm{DPx)$7DmB{35ooE>4ZWIgwreY6;z=-4^AIWR3)QJ5kvWO@>S zfJy?gHh)gpWYYTZLJvaZ)3@a=abdXSB%Im?3nn>+|2T z@Ay^p4OO&9&bw;d(4)StYH^X>zIP~Pp0bk%In#3)+ZOCSyOz$=Rj&A~F)Gx;m4bzp zdDR=pC8GA5Y>lnMD)Kvi=Rg&jP_)!v@PH{va;SYNjXA3EkF&pNmMw=GnM(fsbBLa< z=FhbMPB-jds%nM7zRjmN62B$KpH3C2;-|Y;8vCEQA^@g(pDLH82>e&zYzd#1ymixo bNr1lq233U*F1)};00000NkvXXu0mjfBANPW literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_font-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_font-24.png new file mode 100644 index 0000000000000000000000000000000000000000..41288c662e023275bf141505ab9002f4ac30db23 GIT binary patch literal 717 zcmV;;0y6!HP)Llo>)J4>`T9F8%1dQ+IL4|;w90VN#QApZ^caKX_Vr)9pu|06PoO3?TcfOAUo3XLO z^Sq=nrtg1dIBPXUWC{@A;Ccz9Rin1K0SJXcdy~new;qB}tA?sx0e%5kYsc3!99k&I zX0zMF;qW)$Ebt7dM5EDNJv}{zW~}e~`>nMjBGLwYDV0i31_lPoYbpqb!xu&5qwBge zzzbkYwOT#jjLYS6H>|Z8U{qB{RP|vz9-nQ*{6mmVryW%tx7OYRP}Tdje?nDP@YB=N zVO5<32!%qY9mg4}wFdL~{MMEP?d|PnL?l>TT$};u@9%#LEC9QG-#=Q%rBbN?c&DoG zfuGfCbr?{9rKP2vb=+!adKn11y1E`4W9qdSfVFl4cwH|>qtVeyrE=X`YeZyLRp&+I zSP%r^RTX%imjn(0FM+4^Cn9qIB68dq(^HzBg~%tl%n8jK||Q zySux8*Ngdl{#ChLz5uiVmw?GcA~7f;L%?m3$T?uP zaX3INe^X1xj4_=eQa|y-nM`I|E|(hyjsOHf@IX~htytuF-ng~)bIt3NF(%zeV2pVL zoUEk@U_n*;fh=$!7K;^C^%hV8P}PXzI8%)lJ-60=YLHlIBoL81K@d#+<*noVC=?2J z6N$tyP%IXUA38cZc35loS!?HedwWZ4#>R+0)lm5>-hUWn00000NkvXXu0mjfI#xGp literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_formkit-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_formkit-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0beb9f7a1c6f8f06579061bb09195945a7e6dada GIT binary patch literal 542 zcmV+(0^$9MP)%f@MJsMBhPt zj%CwjGC>_joYAvEU!0rJGu{5s(451m?^M-)3O-o^s2wg$>5Ul-Fe9979BBUPr3ioz zAg5`0+ChK;)!|d1H~^l3T$GQgh`1d910>Q6CW-?Hz@4lO(Yy*qhVC6xf2^yEyB#GLSM zcrVU)a6qe`E|)hXb`yt{d>hmEUk_OUy-U=pPKWiWjDYCV0B@uxpnkRd57QWc=;~X|BJZ831uP607Er4^X>anUc8~EbgP+F^0v?xy=ob_c|?U zN3mN1zcH?F7x($@-U2Z5-lwTPW12#{-wRYUO>ee*UjC*-O<&JyA02qUU9DnN(rnY2 zrM5TY%=W`CN1IU(X1AI^Gt-rfGNzHXz{!706$AlfdC6S>bp>n7phJBFoUt!iDGg@y go>A^Cm%TIVKfRJtgy_JPRsaA107*qoM6N<$g8W|Vx&QzG literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fortran-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fortran-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0bde3d3540b799d619cd6e8b59af63f3c374dea9 GIT binary patch literal 776 zcmV+j1NZ!iP)fsctmOPcagzQ=K#ds>W6-f`|Y3I2EIe2?G#zVDoKVUHz} zHv%BT@Ey>nz9m!UIfGe>#Ecg zJ#HE73o_Uj#O2B2Ui;NV#JkQx`ri&4vS?P7>I-F5oj!z)++AVnf zE@Vvd=EX-s6SJnirhr&XHx0T}S4G2<%k1~NkP^m6e*Ql|>N4fN5Q6+dpJ8t%G;a#f z%nW)Gz?bKtwBj(u#|vd zMg}IB|Gi9MNgmz|ihe literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fossa-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fossa-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5a981d025a17966323ecbc1370f2bb33373f15ce GIT binary patch literal 953 zcmV;q14jIbP)38{A3sOhR)E-dUDG_3X9Z%+;Qm zjFF*aJ#Y9JvrR|`Wg^xuc%0-y2#yLWa2%DX z2lBSNiisCB@O1t-#L*lH+*GwX6_|H2QXn6lKEYMRW>&R_XEPb zg?I`vfLR{{8_JqNes<Kx4ok#;1f@5^P>U8#|iPBPA;+73Xs2vIWpVpdo0X#TL&NikEFrRdYq{ z#Y7wc8iDhestb@_%rw^*{U4QOP?5`DG>{nw)&R9e^A?$omh`St+{F)0k%*CN{+X5+ z=Js7hF6?OE^1%4Namz9w#2TDD1>%UzrftpX&m?&%YFP%#c`T;boFW`xwr8+p57L3C+U$jfZ5*=HGU=rgTp4_nVpT z=gni@3_N3#USfkF$eYH!h(rssKIJLg8sEF~g?z=Li9-gXY(_Y1%wz)Ob`2V`bM{aO|wWpznSrk8s`|dF#%s^J0IJpMTdF$LA?L&C>FJj`RnTs8 zW_CqY53KdSIOj4Va(KH05m_mfN`JS`ekb)Pirnbv=!%(L&*$@tg+igfudi<*Ns_Zs z6kXaF9|XZiW;Pc^(WBPgmg9PMb~e*&Hup?SO#I=TTLA6?MdzH~Y&ILL?uEyus%g*j z4ms!Qs`}5minam-L2yz;UUbe~21bBmX6B2?9Uz-dr*91p4}a5WG=`ES`Ha;c^0cb{ zuu*HX6DMWiMozn9D9o2(AQP1bSgtLh%$L@Jf~ iZgO(+w@$Io&He*!!v~3%c#duW0000z-`DVV(qj5HjZRjcR0Eod9grMTvHr`2CW#b{8)@w~L>XWdoAm z9uaT5Rg!aNyAkp|LOuk*bRV{3?KRPkEC8{#+ayzidpo!qK7++95GSag!uRF?mU5G| z?g0J32%7Yh&0YdA3@VPMT_dg1I8+GmAUQ`sUnn1Nd8&$Pa~Z`^q`E-BJBJaD11J7~ z_ICwQ)?atf)csNidZ-mC7s2|BGworl@8|AdW1=3k4M5@Cu4Ak(g%Mc=)r=75nYc1rLZQlx z0WC<*63{=`4x}T$p@Xfu(!*Qwcy5sdV|^(uzS{??2~a5WQ%P-2N&*f5Or;8lg57c8 zDR2mP<^ce`;d>b24WyXLwKrmfH*jax3uv_j-tbo&C$LjB2(%!0LfE@hK$N$aKe7<* zz+IHm`MY8S^)|f0(+D|-Vugm<*7762?MfrKXDB2rL+7$q->;T|q$FW?}=lS@YwRYFuG%Kp;U-S#f7un8R S9dZx=00008Xzm6RHTv1(|gM5%&`)7qLAMCqc7`V-vQO~GxU-H03i zf`S%Q5XNFZ5-hkf(jq})q-d?U6U0E0aqb)!QkhBbOs49l?{emx=ecL@of%-KhvF8V znSPdp6n(XxRB~Tp<95Na+&FzAPEmGdzLTX~1W}TR$G&&sSn9DW9RWcUTqy5mGki0vx%9)W z67CX`mb(|;r?xyIU5LT0YN8?lpg1|W?s{Z_vF5vXNVwjTGQ=GM?&_LP&Q->Ua1Vgt zTT+<~b?(ijqicZ)wky%Y@m8{9tqyd32}}@I;(F>y7@UCD()2DAb0@y~ncA;u)NyTe zr%r2D{^}n2nM0)nh-xN+OSG zw1n-wZN_lP%2cBmE#Cv3gn*}2MWY4laJ^N3tUp?Da&VoL8UXW0X1c$}+!*~Zl5WK5 b-TC00000NkvXXu0mjfuYo6F literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fsharp2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fsharp2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fccbfa0b673ac418b4d28acd1f8a7b9e9dd33c59 GIT binary patch literal 600 zcmV-e0;m0nP)EfA3wcRa+FIsB{Sg&!rSn7aepEBo|7ZJ2;Ahn_#O$1h1o%iUdS( zbhC?t6dTRvAe9OiYNftuK!!%A@n^35kVA8m95--G$`Wmd*eWKe#5L z;dOc;@_eUhD4Gk=CByR502&LjA-ZIS!KJ7!)@#e7FII<|hOv*3{U{i4bfi#9O29z{ zL^VEAC?(nGFE5WL%Iyq3B0Pu^0^eG(hQXZgwD-H*+2XsBqhJ?07L_ z--Y%&kYRVOFG{TNzKQFGy%qyoXL@EP?<#VqlSt8F3XfYd_i6|%j9E|~Tl+wFNo zy`s&C^b7DT%7{v_6?>VJ=Kxaq(mcqRDig(wJ(tRVcm!Ng;YKlS-|J!^Yl~CqtGg~y zM0)ICckuiC38Ok_g|$i*z-$a$Z-{^E@IYAqEe0#+hbz(i?Zu%QP}`~d<4gWKSEQEt mP=n@EfLLHvx_{Zj|AwC;2C-lHf7VC<0000?%??OaF~XYaL3TpMuXhY3c*?{l+aoHlUrN=AfjVd=;Q!9 zm&;aL|1ojdKW-o&D+W1$Y9e%i`x2^%QMb^>bVTsS8rPGs|Z&gFja1 zHWUMFcQlj;DLVmsq}OV*PV7Bd`(0)Ib5GgQl0tVA(4s$HdAqXL2pQ^;y5l9lQbmaG zYjRyJKsAsY>C0Z3b$QQc+pr{9O7BJ-GXcO86$K>?r*{0Hs7e^HB6wX!k(bw&^)#N| zx!96m$)At>jsy_|13^FYoL z`(0f}AA;kEQ#}^vx z_cA=-Wl5sSu>w1*QZ?4ytID=KDzE61zfR+Bk%`8 zoWJG=ASFQqAtZ5(`b3&!b$_tQna0kgDF7T^sk3>JjiJ8b zu8d6mrMMH!SP$sBekFSA`R?L%zq(Gfn}+#_qKKg+yY0lP()_lv*VbHsIF87wsU%xf z61CW2Uv_Oix5Lp`Vq!i%GSK&BJM9K1fL$}5?nUnNjeUTWwX*@>Tivd2oX=D={s!gb VT5jSI|7QRI002ovPDHLkV1iYc6fgh) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fthtml-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fthtml-24.png new file mode 100644 index 0000000000000000000000000000000000000000..76b5c115360b70ee36c464ae0c093aa08687fd53 GIT binary patch literal 522 zcmV+l0`>igP)zdLJ3Nt&!Hnxw(2q)ZtUQzIULG?XclCs>;wh##-W^M}N^$#{4*;opv+k4LJH+QaP;IT^v84A(}g9SuCs*q^a z{o>)AfQ|*IWrG=mmVwz`&wu_ZDfykID`V)JzxJN1wr3p%&Kz-T@o(+;$h_uH4Hwe==!j6n4y3HQuLWi zZe)O~1R%-=dC)Hp{OjdZshXd72NMS*0K{Cc+~|`HPxL8(TJ~t)gHtiy``(3WZ3gsP zTo5)yyrp*HDvAMq;b#OyEi1~V=~&qG3kOHNfLfS-ZMv?aT=dJ0d_-c@bIFYkz_`2u zV+>jCggX$o4xB>$WUci?I;O1prk+iI`sW_|rQ@x!0Jj}NC73PwoGFf&oysTC^~L|RA{#g##gnej##v8bzxibX~c z#n_Fur5ezClL;tB!T8<3K&XYfX{z4%(N=80f)OVqF*EP!Vs1tqGnweFJ@Atgt zeJ|(2e?6pJp*NMOnKC*WjAp~nq`N6UUXO0L5O^5Q&V3yUG(|n^RDx7#)SNr{{^s3x@0B_gHDzY0B>-YUccwl|}yWJxIR*{sQ+2)(~Bc?I#B<97OL_{SJ z1+D?J5$mcNuK4EHR07eMlZeEfL>=%Y&<`|9cE+)HCg@FNYC@y>2Oz5Xr46oqxAd;P z@bDFZH2|Vqj}BI^FMS(tTgM`d+yU}I&CiRtcE1G>daYjoAr&r`ngd98Q(mz401Bw8 z**o6D$Im2x1-%4J$yveAi&vzU&MAze_e(`Zv9qODVIL~{;~iUnE7yncJAh*50t5lX zFo*yu)5{8h1}D)rQ61iRh+(iefr#Am%gZVnRE|#p#41c;0aRtHZv!uZ<({2c{ISk` zNq3147zh}1y9lW5ZW=;y00B*ZEI=(Q4G1DE3>+QH7Xfjn^|`3nfU4@rzNGuvWX&J8cCHZQ1fZze^V>K7^Bw>o=C)i$IR;dz zW!>`Z&XtwSJ-c(IzdEWAJsNkCJ#W{oQbDZ#(E(9T0b$^V*P3ZAYhI|`@OyuZolSgG z+B5FDR#ZH@vrUk%{lpK|gVlR#yPJjp{@QS1>hQFYZ&CdUKva%L-7R|s(MbWu;(?vn zBxt*T!bd8)U5zzjiM9g^fUF{^2B+m*Igbee0G{2o5KIT~358u$&?!F~^2zzGeQyGJ zWdMx*xkh#`p6W-|Iohu7RS-D~cea9{oZ;$MGxBpV$J5{m!;002ov JPDHLkV1oOokPQF; literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fusebox-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_fusebox-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e691c64a11d8d1155f24c70c0e60e86b187043d4 GIT binary patch literal 1408 zcmV-`1%LX9P)3fVPwP^UkopM z(D-6zd{ERer`s|x%~WQV1`VtPQ)OoD5Ud7e)Lv`L=xr1_wK>8u~DZk@%!}4 z`JMCqA_#)Kd-rbWb!tSfN@#6uT}co`mqMXfTU}jU znwgm?4TVC~y?ggu6h)1YBzgS8g$obf2+-2fvb?mkv`Z?LZc?k&B{G?8>FDSv#>U3L zaUAmU^3d4Wh`PEu&@}CvoSgLd{r($XulMMsOP6L|2xx6>EmJC$-30{&4QjP|d47I= z!T9(%tX3;xvDiyHluD&&XlQ^&qX9)xbJNq)4+4R}u-EH7YBrnaQ-J;Z_glKUx|&@s z7lww0K+`k;AQFi{5Ci}KP1E3cK6Oqc5&!^(VZd=5mMvR`tu5P7Q(c1}zVG|u?rKr?w!up2wD3|A?;B9M^_{Ba4%I}ME9G4DY7{;5Nwa@3n-o1OVZrwVx zx3|M+G{R^!Vt9BM<9|8v+4fdcE-wTCIK2@Z8+m|FYUEg1l#eAj5(EMPc41+GN&|$$ zVNdb_3kwTD5Cm*C8*DZkRRbG|d9YEGjC(`Sa&-_3BleJ9iFtyB&7B9aU9T=sxf@0N~RT zc5n$E(rgL3HkM$kT8?*da5|lc#Nq&etPC+a8jH~Rp$hM0J+(147Nh6a7~=6403;GgFc1hZ0Ho1q6eg1i zwY9a_vu6*qS}g#er>7_NpriZhQINM7@h3b^jgg4P6ZopB6eY53cv$v%KqL|g`u+ZR zB9TCLb~XTDVqyZ_-Q8HVY86(jSb=A?GGLN_@kEXP`xX|wV4o38PzbXDTDwK?t6o94*fXe`19t0-rnBt zlKC(EuJw97QC3!VR;$%&91cg`;NW2D!#i^NC#c<_$NWZL#J zk5_Iqym(Z6k_V;HR|%^%fEX(o?T|MIr6^&N$uXfdy`VB zJfhd@YX%1gXGoIl>g($pc~#wO0|20-qa%akxHg~9H(;??*f*(tYx)<+7gz8;3pq3Z O0000=QcDJpK%x&Mi_xonPH~WAc4$74r z`pE7zE!E9L<;I)&HzDx~PV(O`R>4{j>(KjDDEqHvsDYH8{P_}}48eWMQmoN>U>rS$rfSsi4+PZtAc z!hHZ>!bG`r1k)k}Y);GiS`0v|$@wH8Lf7kUN%eaXFm8G~~1qXmPw}S~G5!xtZD?D}krviD=}|nec0L`orAP>W`dH zh*|WUZv!BY1E|Pc&+I@Od$%z6c_nd@Swx!pU$z$tADGj8fQ$lg8*{qA%;J}+#c!+4 zo1ZRb@x1BLD_^m2M#dd{`nvLcW?{()b2B)aOJs0f^IKI;;G`}v8D9S* zFIf(o!2womC5~shfYR$vYP8+~(3pkDName9nblgY;h3tHpb;W~#+|xQ)#BXW3Ga008)g#@#{Bu`AV8 p6*Xpg1`?9&Pj7nZXD-f;#$Q;<9QrUC;fVkM002ovPDHLkV1f$pS+D>A literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_galen2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_galen2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..27311b40b58090a2f15cae24bce0671476f9d811 GIT binary patch literal 974 zcmV;<12O!GP)}$)dkU(WYq<5Tc3JN3Zo25PFa6>c9#FRQP*0ucv0KzK?h-z@DCA0?-PPjT1 z9~e8cz0(QD2%=F3&qnxL_^z|}8PDp*hll{ryrCVLys&gGCF9@1r8A@Mx;2dt#71_% zC`>c9 z(>2{vWAC!Mt`#c7ss~LoguGGq({6f^X@M;Rvrxc^xAAN}=cyM2|1ss-#2o-!b5<1t zqkT8t+?HEI9kiRKN^h-V$1Dm6m{Dg_^_+)82mwhFEAE`bqPl8H{RS1g=GgETNn(>Tqp@L>FmjT{^v7XcBB;P zA_XycT)F!6u3dsr`}Nni6`pL^`(SJw^k0^3%0-@q(b z=G`GN?=0UrU<@bSz^odXOlOuw_DitN4vx79_)8w%9 zM{tJ#pg8mbv}c$X*uBdo7y~4exwI4xvvpp^QI_daPX&iCDO?%~4!So9$P z$#iQJ*RKNzjfTgz4~&VR0KG4E*GcF`^9A37A7e`*HESw;XCl$kKfaKG0mvGEb$|{B z=!jZIFAT-c19<6X*M{z3fR5z82TLQ%HaZ%P25$Ci&rtlD>hvM!?Es)>D1I4e%cZ|v zWWA5>5$G$BMdPX*2H9PtvA;bwaA)2Q00P7VzU0y=bpj*c6>*0M{h$W?i$Ov(C`+B z^!R<*4gkECr@>@X0xHXerSS@ zs^_oo-FUM(Qp_v6!##t0l87A1=PD$P$}lE;XG2pj!u=w8ufUkXB~@wb*qOSzpg}U- z8V%g+2Z}Zc@IwhVIqEzF8gkfY7ugn|uYo!s<5yHRoZR~GE0h@#K%%98T!hml@O4+6 zT}9%cnqPqYJuR>Bf1SzyE^7cVxufwW$SuGE88v!ERcB0vcWXaY-%i9*A5jWhq$&ry zpY2^YP5FmNrdy*v*(Fmo&P44`yDE?Wf=p*Dm6;YrF20D@J60S3g2=ajc?|!@B8Wf! WYwEHhT|j>T0000UYl=wUT6>%%Fz*%s<#wEkNROEffREB%i(YL1(x$r*S$hXs>oGHT0lWo7?vVIFRtf+>mSyisDFdMV zTOMvj09ZKb0eFq%PXOHhNC5bDA|fFtz-%TMV`2wLv+JB|5RnBipJdw`I02FURPx$z f&NVg-m_NrC0W;D2oyrA)00000NkvXXu0mjfVKm5& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gamemaker81-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gamemaker81-24.png new file mode 100644 index 0000000000000000000000000000000000000000..732f882eb7d9752ae43f8ab4bb5c083cddb1b913 GIT binary patch literal 1440 zcmV;R1z-A!P)WBq$~(Br=18F=1uE!iIEgu)$~vEnBt#*>0jeDT7CEomI|{(5`?K@eJ3uU@^hy}f5Jo6S~X@7_JT zVzJoSbe?}Kk)kMUWo1>P*Xt>!lp?vZbEb<;jf)p4ic(ttY||=^n`>`1Jy-k$$Fl_hK&du*x##xv z{ogpVS&})EQVjr*o14>rcl2(1+wtRXO%Sl#?XBClfAad+*l0W&jZ(MURdD_0Mg7+Y zUJ`g6n?G5Knx+Ll{rLA0zgJ%wi%A5~Lc_y14!B$+69v|-TffKccDF>MQLD+6>2Pbne{h$TOR*`o6wPyG2pl zffPq2dtm2zT}~(zv;u(7H=6zOhPhq5j;#ZLUEey69o+d_15K!w6)#p^-1cSXQ$H># zIlcIW*~-!H9GSy?E?aABD{(l^_94x#8~|_}S7k6742q%v03=BYl-D9iHANh_865n6 z$BAW{N(BHI4N8fe!YMa;e;sI4z2PA<1Fd>~-ff?6Ot4yQbzZOM7y$JF0h7s;FDI10 z1QLmapUJ$_=nmc?XF9~OBsl;$yKh#m-!#9w<<;gG%gaQf<6%i2*B|brD_q+^F?N}Me}$(XJlF4o9w~Wo}QkK0E8JcW*p4T&0Q7>$irC{ zer|1(Esx_#LXkBc0G$8j&a>x_dlXjB2EI5_H3$fx8a$dL7*$nC#u1Ta*$>XdPe%&dK$NJOF@5rp-=|^&R+TQRC{)gqNq?56_O-f z0dO+aMM-3pm(QL8(BXmZjDm&FC%SDmw)V+V<1hP+}!wqDQF13*H7 zbLd=o(V0`Hbjcou!{I9c{6N|)TDhuqkIibS?C<->T`e zsMc<`?`9ZgUdlJ6qN0LYt=6%aEQJWez--Ji5@32qM+X-UhmQsVft3I>OoDU)uq?YW zD=X_mLdYBdT09;-EbShN(__GU)gF*8=F8Okl#eR#o+f@$vC-gTe3) zr8FQ((%S&WVzC$i6!JWu6!1|>2NXq70pw0b{wV0u1K>FBBS8?_IgWD@LR3OXAAoo9 ukRR8C5nd7pFs z=lpWcoA*4x3pTQw;36*4X_Y*YF`^=ry#&AxhFJhz)kf{Z=LTq0RbmEmo`7iq?A<{& z2!;yLinZdqp#tkO12n3tGywGgBHThs=6$8YX>QXYuvr}eoPz~>q>M63-mB@F70DvX#mGJxTe)MWYL~MYL^M*jRY& zgj}-6$M56gb(2oW$f89Sf8)U^8vsz3*q6VN4DxgJQ`VC zihDUUA##7vo&N!N$_Qggo@DnZbfx;_w&sVOMRi%PMI8vf_51{c0RSHW7ziO?;0t*s zo`BkG%Wf+vp`D-nl#y1R({yKiU_Q-TjVgoYDPO^{Ykk&rdjcbb?*>r9O)*BmZ8}7k z|2Pv^oY7#?mFklL7>a5$kM0DyUhNZRSyL-=wX1Fx~Y~9wB3WbN_N20s#OH7~Ftrqox;t z2>@q(06a*$m8+l zVX?nRTK=0l%vT~9)|Kj$+kYQ4dV^3to%~eyPS|+=+{kdxY$^aSkV=3s4*&p$?*WVg z5SN^8v|G&f1+l+KTHbOd!bc(;(v|3wwnO{^#a&;voEGv0)aUEmW(q(Az$6u}{opG5 z#Inmxsd=3et`&fgFXRmr*JZI#g)DAk)wWiYQEysbwZ)vhklu6TtytAi&+I^qG9=#A zKR^D}2hH53ZF3(08{ya+Ro&;>y#fIDx~>Hv1YlJh3ch{vd}=^=bU<|B+YJ*NtJc`F z7t(t|qGaJs-`<}X?0%%g)@rvgM&7UK(lmM2^LpVpJJG?pJ^+9aEKo|99S%<6C1s2f zF1yl@*S0;d+m)G5!16so+iZk^R1mPM)kf{QH^Hu#J^*Nyl?fb=stA~zFh;;IMJW5b h(va8tEcq|g{sZ=w%H0e+IynFU002ovPDHLkV1fcLHZ=eM literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gcloud-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gcloud-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ac25d1288aec2c6e399f12f9e37dc34ad99413d1 GIT binary patch literal 853 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 D*u^xY literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gitlab-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gitlab-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d078fdf6710aed36fbeaae134138e7fad0097a3d GIT binary patch literal 822 zcmV-61Ihe}P)eo} zK~zYI#gyMqlUEqWKhNRq+qb2NAPfb6R3wzP+r_f0Ib%een(bm)fEl+aDBf(h#CuJ4 zwVT~W9f<&A~a_vp>#!#tDhSK;Z`NIP073#(k~6#AWH;V zKC(pG-#l-?kx$nF)|!8yu)aCcu6SX~{H%~)t$LTru3c!~ZE?KHZmjYGN>ikozgZ>p zl#X7D*HZf!p;o1Hf1%18z~s#h*f2KB7hm=BxUWFaa$R#7^K0bF zqsh&FHAiIOY;42}a}8D3?g4jSWqoZ*jZiXntPD!WXBnH>zzobSmoURMdO##{Vb&1Ar>&*dsEOY5)KL07*qoM6N<$f*?SD Af&c&j literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gitpod-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gitpod-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fdf293797b234aae7311ed212a7cd0a9ae5df213 GIT binary patch literal 936 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_black-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_black-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b4a0da365751896fb35400320802a6481bd77946 GIT binary patch literal 564 zcmV-40?Yl0P)7{QLF?T+aMN} zVj~t7T4@jqK}0l=xPai2C_E$L@+{6=-_3cOf57`-;G8qx%$f7unM)5nbik4hzJ82h zFRJ*0g)aGqu^j{W`acB>;WFk?FWGNQVs*yfh%0!T@!#QO6x|X#Fr5YE_5>?~e*kk` z_;<04Bx5zI9>N2RlrFE~4c4G9&Ng5vzTpm5mG}#IAGr#QO0wP)l5N4wOtSM>9s%1h zh5I;%eVGDtI8wX-d+@sCuVD}lm0njkFGf%$e7T*;q}s0;2Q$uiA?2~mu|5Kh>-;_H zc-rD3p-P!IQNgCL0zdFU>Y`I^68$NyU$)_lX8TY5n3X)0%H zSoyq$7x?sIHc>uf2h%HO{n6w#bZ#HX6mTMU>6w2qZXIU z;)Lv1l?N9X#!gAz8N6y&U0@{meNou+F8m&PXvSafI;zBr!b;Ep0000K9? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_fuchsia-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_fuchsia-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c3c5ad06dfff2955448a58223255274837d7115b GIT binary patch literal 901 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_white-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_white-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d51b7d28e7e7b42e9d6ddbd838519eef46d0baf0 GIT binary patch literal 579 zcmV-J0=)f+P)X4ZAbHjH52|60Zv`U-wG9^g~Kf5w$O=~|;hn9^Qv zu{HCjF}Du?9Gg}Q_M;E|XcXXgOy*Tpbss13qv&76OpW2a6|)fx;z^~rj9ci*%mIw! z1#V`e>JH4|{K^V&tT0``mcZG(y6Wuj?t$eN*Ge1>xBxed{D6jz+i$Z_?;8M+& zlzP|V{Cf&+xGS2`9;k4?Qc7PmQ*^aOX#Z5&A6qa7i}$bHDWwJ$E1jEhBoA^oBD!+_ zjfmKr+utH$M{b|M#+1@hG5EDgdp;s2A|e9A#ggA(FxPtVu&6&S-pA0J`Ry1j>bL*d zY6fAV0G2UrZM+|0k7mNETEGYVF8asiR96j;Vpe-SwHohpSXzgFDTi&1G-LhD+Mjp| z7mx~m2(M~P8n~>us%kG{%?tH#4##v#X|i^9tNgyqr-+zJDZOvUchpg>{sN3KXaI)A RxHJF&002ovPDHLkV1n*i{tN&B literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_work-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_work-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d0e2ce4be93df1b1084d401b5e72bdedde618869 GIT binary patch literal 779 zcmV+m1N8ifP)le zK~zYI?Uc<+lu;CipL6d>hCxjb8EHBnRxm~sLJ*X+iGqqK+C&fp>cT~YK|~a-To?pN z6hyQT+_aKv<07P8S+p2JNFB$I0x?Sp&CzD=X))v5b=2t}@LAn+?~n64=iK|gu+BOq zkhKo9j}SE+%qi7C#ya|?j&G%sX_`v1?7;FvqKy65OjB%ja1&?&ws=Pl=rWG0Qpc}A z|CyaGL>q7csPgn*f%|5hPB}()g_)+=>m09uScwKcnhcGSU^Y9a4YMOHAm=6jPjvGd)CjY#bSdchV+D8bbZME#GxTUqg;Ho9$i2GqE$Fz|M zqZsDA{SBI8A5~Zt+EH3iT7c1@bK!en3=R5$vSKf1xbB5B{N$4XaPWS4Q9Q#^8H)1M zY@!=O0{-2dW7+-Gx-d_4k_rHwU~4YLBb3XYrc)aDBZaXTH$oCf_{EWbQI+`5Tj(;% zZ3hF8Hz+U%d;#Ks^*ZmjhDM2yF#sYsBU~i^jReywbQ2f}^q6^?B*wT3S0MjqC{O|H zS!SfXwaRIUkXcHYPZT9-avT!nMWHL7lnTuf<(wo~1PDcWZX8Dy-m#J~;F_J_h{T!l zid~7Osmwa+5ll!)ON^n_bb)@9NX}6Yh|Mu9bqti!ud~jo`~~%?;~?5D-FN^1002ov JPDHLkV1m&(RmuPW literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_yellow-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_go_yellow-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d0e2ce4be93df1b1084d401b5e72bdedde618869 GIT binary patch literal 779 zcmV+m1N8ifP)le zK~zYI?Uc<+lu;CipL6d>hCxjb8EHBnRxm~sLJ*X+iGqqK+C&fp>cT~YK|~a-To?pN z6hyQT+_aKv<07P8S+p2JNFB$I0x?Sp&CzD=X))v5b=2t}@LAn+?~n64=iK|gu+BOq zkhKo9j}SE+%qi7C#ya|?j&G%sX_`v1?7;FvqKy65OjB%ja1&?&ws=Pl=rWG0Qpc}A z|CyaGL>q7csPgn*f%|5hPB}()g_)+=>m09uScwKcnhcGSU^Y9a4YMOHAm=6jPjvGd)CjY#bSdchV+D8bbZME#GxTUqg;Ho9$i2GqE$Fz|M zqZsDA{SBI8A5~Zt+EH3iT7c1@bK!en3=R5$vSKf1xbB5B{N$4XaPWS4Q9Q#^8H)1M zY@!=O0{-2dW7+-Gx-d_4k_rHwU~4YLBb3XYrc)aDBZaXTH$oCf_{EWbQI+`5Tj(;% zZ3hF8Hz+U%d;#Ks^*ZmjhDM2yF#sYsBU~i^jReywbQ2f}^q6^?B*wT3S0MjqC{O|H zS!SfXwaRIUkXcHYPZT9-avT!nMWHL7lnTuf<(wo~1PDcWZX8Dy-m#J~;F_J_h{T!l zid~7Osmwa+5ll!)ON^n_bb)@9NX}6Yh|Mu9bqti!ud~jo`~~%?;~?5D-FN^1002ov JPDHLkV1m&(RmuPW literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_goctl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_goctl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ca8ef2a7a6a5131767661a8e46cf7becf6483416 GIT binary patch literal 1172 zcmV;F1Z(?=P)p1D8X2x6`SxXF^UD6R1FQG zMl*@=5q_jnpcxx%3lf#oRBDVBDD|gC8m(Zk@@Op>6k#YR&zU>-9)HSkMZsS`SbzJR zwe~t^od>Xi4XguNYa*lDDcbntb}q}&04-@GvFH8Vy2W_xV2VKz_&{RGTJg5=8CRV_8YTr;z`bxUIrRkSv`NV#nJc*0F-nev3q6m?+O4IV+Wz|8h1n zJIWpd(Pw@Q=n>I7HPIem4u78Wm6%B8Cjp?Kv%K6VqyBGB0HAPn^}}i-01(B+E}tB@ zA_0O~ki~4{95xlt)4c!mL`Jt$1aN$HlNIeU_~5@0WN$#cx@KH<695!;R-6F%8-6)w zDPa-~PV1DS?C8v0R()8=*!;M|$9-Y5-Z}J6^-prnEdaoQJ3&TYqASfMshbyeR-6U+ z;d|wDpwYK!Iic%nB9YQGrBfnW_SK(>4Ymy|$cu3V3fpN-MXF^h6t4JVBf!2eBc3U` zTp0ua#hn%A!mhFgl@Y-4t}D$Y5db)yPByfAqK|+F)lqR^lz<2T0g1*q6eK)_+CJCC z@ujI_IZ^4uNv1^2#G)IQMmi90w0mqpkxQ|L7{iCd7b)Jb8QZPfAjzKTMQO>AW8e23 zyJw~d;Q0XD>X-?z0|+qdOejvwL+jv$ug8BIK6E^#Y>&g1{)_8ov(N3BMz$>-;Q?k{ zs^y{3&qun*qz#25dJoPGeDu9W(40;QPpSn}5B0pGu}=Zt2~O?m3!q^dypVj@d&B+X zg;&!mA8mW4&1=?&Z6%QIxh(~^Vhqvq%O6qiR6l;69Ythtg*no+#-qk5FWu>|@I<1AiX!T)J#=8GFx}?8*d`KG7`D@t5UUuNZ zx%Zs&{ho8r{R0oXNF`%B7JJrlocDl^ytUi6ojUb5K&q>&vC5clP|bMO4#(2z`PDGo zN(8Rs{HV|fP-RRX@P3)T8IjFyA%Uj*B2d-Kh%^?b`?KBMZx!{mD|{-5DW7C}dVI(w9 zMfHtHDm7XnINja-l!aM^b$0`J7jg|_o{x@>o;LsQ~FU@e2&? z+{xulFY)>0&*XOOpt`Uk>7~QmHS&!sH~qy>Ai>26??J#*MkT zf?CeDIdFGBD^(7F1bZ6(2j_baSNE51ufC-=lc-lAW{~%Ws&Y}7mBIBr@@H{Ua z%VaLP#nNklepP)3u%h~@!dAy|lGfS`fG6@n0B!&*saga53hNMg*Q$mL{G%d4RHqR6 znCj{&;GzNeY0H+sfImfKyTE=Gc~L|TTWiC>9B^B#&3mfDp6W0nFDqOUk$Iz<6F8zG z+pM)m1fBrAD>XHLl(q;;Z_&sdefb^LjEKwwtqOY!1hlCy?`47p3EDSoKU`+r3002ov JPDHLkV1ihPv%mlV literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gradle-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gradle-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8eb8a53dcc53992a56131eb0470d0bad3e302ad7 GIT binary patch literal 809 zcmV+^1J?YBP)8;$g32Ijo8HtI|rcF?Zt|D4QKN3a@ z4TS_NXk1vds6`18gbQJK_c>5lO+TB6N|<>y`DW&xHa_vc7@;wJL# znM|fCo6WXPPEI~hN{#xyf5*1%f)K(2@Ih;x6+%RTWtN=DWU6wx+*l+M*;i9jGqYNJ z%q(2jZ6>0_0DNX<-}g_2!{HWY{wSq7=^d`??luhLt`K4@ z5C;G$<+Rqib8&?6c>FwoLEE+q3nEfVog|{KrfH4>fa|(jnfVeke>V){a$Q~Bx7FeT z0LO7o10c(?dY6z&spOvoRsu5%$8maG*X>x$Rm?i?0ien?P)c1TqGzUQK3>cT03f2h z0LIG^cN`}M08+{&;&TQ7wlnjmatw&59l*d!d~j%_wblTjlsX9D1T)VN(Hkk{MF2>r z(+yhduG#k=(P;E+EEf9(V3%cCuU9e%BKjhP*p^DAHZyaZX__sTWwinL>^M#{0F+9l z3%OjbLrU4MwI237uL}T}xpK7$1ppL_#TP_$CKL+Y2GC1H3;>?z4Ffo$lo}zTd%+!8 nmNm}Io0L+wQ0DH|@$c{(XWTi~hk;;O00000NkvXXu0mjf`XXb< literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gradle2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gradle2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f6ec08da234263f16c182079aa3f2928f6c853fd GIT binary patch literal 966 zcmV;%13CPOP)Ho03DL2cd&aD6{>e$lV*n&Ge}TSQMPSXg zW6hUzwH;iaxMoEC>G=JqP6BnnCw-j@&w0u2`*xwF&<1MZ1jvJ~S3r1zWM+JWz=>2# zBx`a%0(ZC}6}3Bi6HC8bxA(5Lc0|6TGL0pK7Lu7|d_k7Ya+i-B6{g<#sR)JINA;u-KYXKFVuS&Sl3jYKsuRvv1rM#b_@|H6ZJ>zsN zUUe}k;OQ#$X|FLw2F9X2BHU2+LtphJ=FS@cF@+y|MYou|IqG@Y9V4Kr0P?RX)_=I> z^pD4$MdUq2-YI|fM(`c9{;}9JaIfpGh~@6y#}_UGaNt0QhRcV_e-RcWjc|%&rU2kf zM7Nq%`5EO_w?1bhTjEZ~OuljsL{6gmk?Td&FzAh@d?hE{Z-bc?UIULD&=IF&CJ(-o z9KUJ)G;q;Z_tdd;Y;O>u-<)&t+d=%7;qO+=+g{(-fXAb|jFoSIEpF&yIJ{}MkJ_!byKH@I~uSZ)-V!Z07*qoM6N<$f^+-1JOBUy literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_graphql-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_graphql-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4acfd9b8b8aa0b695c95fcd69fc619bc16be0f34 GIT binary patch literal 873 zcmV-v1D5=WP)iaf9KA01|@=&wledy6-65HZ6PF8TU#4KN{m)F6k#K&&qPQFVWuI1 z#KO`BK_ZA)`6{jWs?LnG^_4ErPG7xuEc!;v^y6*(SNGj}e&>JBxi9y^f0p1jYIfi3Dp@tT+pvU9-%mBwE_X`CBSAsobhX5kgDw1MJxSsqqZo`nVBwuBcRJc ziajW$&?LzAC|lqAHc%RZDGFyr>3s8v(r_<7cY~}44uGsvh+P4?74iaf z&j)D_6Mm7;w~s=gB}vzlPA=!?7-R@k2|CX!Y`TGC7BzdnP+$ujbZ~bLK+bl7!@roM z7Bxo|P6$%a-x8hI%g@Rj1A!L6_C9|p<{rQVx^@YAqm*s0v#}BC-YHxUVAlgU=v|=C zTeb!BD#su~&0ED(DttGX)fTblR?baRbd$rFL;oILANGEQ>J+DoOR0GdvPzNf23a}c z!6!+495lX^B)(<%*v43r#HFFwoCjmw6M8PY&e0dvw| z>IeUF|4L|ZfgOsT>}Px$q)4m>+9Sm74VOGCi`s_@X^$D%AW3{VFj0{sF1ly5rm9lZ9ZEbmHa20|dJum((v9|OUu0ImU|U@KZ)LTy{WxhF;D_9q8W0X-#X zyT2N=2t>RchYXYhe;Wh|+_7<=3bFv`5X1lv$Ko8CO5Kkk)6x)3QM5^rEiT$2P^4&+ zq33=!=Fb@vv$fme(_(PTqD+p28CLc{v~Ls*T-UM`H0n)12bx@*Jtfq2j>P+ZGE>A;ibTBTv|7}b`Qd!O zXdt%+VYmHKzTf0t?7BQcj|}R3My~kZ*nieZCH z7tu!Hfe;^rQbb8GkpvSGL2Mc|MU4#)g<4w*SP;8yN}-wpy)50!93OVKw7X4M6P>3s z=lst3X3k`0;C~*Htgw%L>0z831rxIHADvH~KbbsxvH->TiJ%)nP%@SSZzYpwB@fV& zdp1uen|I$9`Dk2d(7ggHfO%2(O@&qqc{d;L)uaJ!G&*unw~N86S9mBhh16}J>jZWv zctMXTmI}IFpi!Y7IN`_f;bZjq`}T;O~v!nCL^)j839wrH4c;jMFnIZiI4f!c}PURIJ>XVd%Y~H#BM@oRpdnXJCDqY z*Ukt~R0Qi|fz86p;RJz*BWf+`*gAi)Nwr)6!3;^LmvGT~Ip`B~r$L@`Q?)+kZ#>nO zA&$FWDma0aKw5mRecYH(y6rIN*!8sF)?FS?Xxdv8ZA+FS+rvoNw3RsgFDbG%Zl}$n z@`EE_%7dv^St!G@Kq~=q1NIi+)FhyfgNqIP2&4c`8)i{22PWe;_V_w~tDD~)PO*vr z?0)n8GwZr)A|N@}u`S;-SUO7ptPlexRXSkGYii)}XmJ3$Ap3#-SUl&<9g1uNfzB;1 z01Ceva)C5P`YgF~+D2utG;+rIr-wgZ-B96!X*W6C0{j|n$Q2+};EW-yqJZjWzioQ* z?anQ(*)e_38#x{M+*kv05@h19<(ao)vEGX87ml>FJQ#sb>*;Y@KSPBs=3e`Q;Y*aU zU-`;ZU(!Ds&>Az0O$H*C^oX(+q$f%U#wR5W7(!|V-5}_OP}j(EMP9U9x~g)`%9D0W mSEISIjP?O0000H^O!7kksQi9$!*l;;}PxX6Br|cyL;f z;_!f!^|bfW*8YBL{r1v^2OI*hu(0rbRrUVwOGN7VeE#M80?y4XZ8oe)h6oM7LjhP^ zUgqlCf5+e2#Hy0a=6Lk8C-D+Z_$s&p5fs;`f10#XV3hG&wukeY*12OCfKY{sg{lSr?z&Vek=b{E zSZkJwg^Gn#Pd~LrgRLN>s!-MKd_(U~Z~znt5CR|sLWI_?UM{~g%50{UY% z>IxM#)OFhf6~pvD#^^Zl6kE{*>*Y-nn|JVf3ardbGchrN*V9ib5ho@F7yS=GN1{Lu z?P_y8xp?Lio`TmF5EN}4GH(nqju(h$l&DkRJ z^YeJg6d(L^oU21Is>v$(HBZUNI!Fn)0a^w3Jk;+v0HPqG7zBf&HY8#U5jToKF+fC= zu+bpmM9AbjSy?QxOAU#ziC7?jz6+^ko!vOmD4ARbs>=MiaaR9ui335-LhR?Diy*Ur4`jg&9e`?xY!IQY zuu}2yycEj~!{pc~Lrq9eWE0X-~LB#9~z`3=K2+$I~1<@i@CuNj`n@ zX?{BLJw6ye@7x_)i;QdmTfp4MlWYXFHJ_<-Z&AE7#?*x|f|^fTS2q!q2#SN^7$K8w z=l!u!*5+rqa`sL37Y^ga3*LtlS^&cWj}r_*Gz?J6QK_x1HXJ)IY>7*>Cuy4>AwLF{L_En@ox-fDo@L*E^7b)002ovPDHLkV1j)3moWeU literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_greenkeeper-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_greenkeeper-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a6c02a93084478aefad7961813e86b4c66c8efd5 GIT binary patch literal 1167 zcmV;A1aSL_P)RzGKi{**z2qJlbWvtmHzu{I$h^>P4h5CXURV;Vo2C?mwrTD~ZzOuU zDWv(nmZg;nBAOUd%&n-@EzJ~EYS{}EX&~B#)DpM(JpXSOd-m+b2@*u->hL?i^ZlOh z_jk_kz<)e+CrKq8O+`w1hU9wyY+WHl=f0}g)cvms<{YTci^a3*z)u;zwKyB>UMolu zG0U@nBE+FsPW-K-^Ao*e;e@e*L@FRjZAQWOhY^o9W+TK(xyT)dp#Cl*7fXu4S#T&K(l(jX~AngXgzUUCv$bMdCXXoM#2XCvO zyrZEcn5CB5CH4%04`k|>p<|7hPnNwG`D05jj8>9SFyMJO2HI%67yEalY~bE>N>?fw zJ)09^sZ>bqHd>U9Uj_Psi8f1vsLgl({3DCE^^H&vi)YnE_&wuhp^aUY8y~vX6MqnK zB%M+gi-p#kA+>!Nc*nJ#_yb)P8zvjJ3crro*AueqZn4NjPXu%qFiBZ@7vb*eM86{5 zA6=)6e6zE=I?<0XWW9ql*^)3zMi7*AG!=m^M4}47$<%@jv9#b;=)pA>4wWLA&Woy% zyXUqwJ_-;62xhv(Y0R=T=+?6K#zmOVgr|F8XLl+JuM%@ok?#kJ5i?5L8<)#og!N>a zsu;Y_Vg~SiEPa-Vz@I?&U`a4lz(VkH&>YY!CmwtA96)(n)7nV>Ty_hn6%-#PESHEI z1nwJA1MK7&E{wM|O>h!XFc?h91&C8dg+P4tCMyWr8H+%d4Fy0SkOTA~_S(K%(o5hK zGMneNH~a-5X}d-CTBEHhxDgy>Te_SfFsbuG^`O&0nXHwamCZW<%Gw&6 zjiyQbgjEv}S<*#Yg^1U>Dw?+dlpbmLL1;Vpi~}=6GPNmV(Lh(!RG9++k;3tz+o3av zT5xM7X14%!5dAph3+D&c^dVN^@y9n`7-kXJKCFRT3v86WT!-G9q^ljBUzb#lpz?GH=!lj+w&!29o7eVf5ev{vcY+V zEkY-|PURm4m^=ILO5=QsL&@B%lt`I@wo`+(D&PI{25~dD=;-`JZ-g2!&&bpR6M*qR z5Yz*ZNJJzO5srF++B9fvz!_EoOQq=L!9FyC0N_Mr^GTUqNEN_yz@?#Dc*@{BlBNvX z_N&b@MJ$oLqqAbuH^VW<{LxC=8fGhKGiHyiY>6sxvFu$0lD29rzLVK6$T2)EMfIb> zZ%Y7B*|svLN8@UNDx{w=r;G*a6^zHsLQEAL%y)n5a9i$(VE8EiWc4FaEH+b4fBMpu hkW8K(yo&$p_y;X0&Khag^Zoz;002ovPDHLkV1h)k8=wFH literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gridsome-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_gridsome-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7d34477861a7cfb546e769c5fa185ca1dd213497 GIT binary patch literal 1033 zcmV+k1or!hP)l*X!MzOBclh!!T!N zzMnJa92mIFCiNV8@T(8oifZrjfg5~?r;>c^{dM8Ow4S?eyp5ULRyP{2i_^dhA?Ph8 zfDy%taJJdr3A}vKfXBY?c_3BR2cgvnL;(>H5kwR*+*^-0fT?vn(YIzcMz#vHN?F*9 zoxK=cSubGB3ugVY_P&tDUQrsP5;ZEwHX&{jg!hUx`Wirl$vb>rzKIT!-1 zJ}4o8j~oe}&aK%6JL(l2_XVTZNSE=n#`C#86uh6YHT(RDixr2e8W`los+A5gHP>TbDK$6-q;|PfPNTn8eeuxQOy;5O?Tb!3fRp*rM_XF1Jl8e+Gdwa}3n=)w zDlyVw3?vzvfc7~XHrT)2nT;98)z%8mCOF%GvsX<&HJJYxnCk#yh;pvaqX>TlJS4>vYyl?=PEDD>j}@ zUbc89O18>1G%z~prwRbTh^(>>tOI9p(ilFyz5Bfh|0g~%_fl&_*MU+RAi@fAIX?!_ zth&-V2CS_>rlo12ul0l6)bYe8y|ttrqkRaID^B59p-@&QB9nM2_2Xqm_TX7RAPAe`0G7CTo3?oM{jPPM(tLWL}M9J z0+r^V6o*qn;VkEc1DG&^@pA{3c7I*1_n-e@-@II}&BUy=I$)iaie65ewO}(s((FLA zI=sD6;>=p{3jzT4JiTm3(k!=Hr%SDsqt+?bD(9L&eJG#QU7(8w{PlPL_1Z^2Ur4L2 zPk&nPo6|&?UL28*FdCA=Q2Lp8-F@tx<%jFJe_8EcxI}?zE?1cw00000NkvXXu0mjf D-wo@& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_groovy-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_groovy-24.png new file mode 100644 index 0000000000000000000000000000000000000000..45b7b41cddbf290ba3d2786537b56d0c561820e7 GIT binary patch literal 759 zcmVjV;qb_2e2g+ML-KBP*Y05(iSM~^?pAWV+at1m^ks--pluWzj=8NIOLH3 ziqq+oJ3Bi~2bnpLSZi#)DN0fiz~Dazc)i|c##lcQ4TVCX1)tB?P=Ee%ABm#e7X9{S zY;0_5KLO%iO`p$a=bYaqq9)FHIv$TtxG(qJSL>U41e0VJh{|egCByUc^XzW{1OOc! z9pyS>U6n0o@*p9zJTZEeh$5VGKY(>2Drl$Lni*qBlWbP9-=oFNl|&K1G=M51;tZI! zRn-P9Hg$bDI#X%n^P}VA<7*-S#A2~rZB0#9I$~|N+K=_GMZYEioCc5rAac&%Zzkgx zaw|*28;O{!nA?2KIX^)}0N?;nYSHZWI)Ar+V>Q9D@x>3}a5(vUgY7sR4zsGNL%+(m zL{!HZGYNvw!#TfBBn}vc{zR6Qa|}%4h7o3rDMVyf6y9aFa>0ttS?zW?wzK1mH90d_mXsY5;!@0073= z!$P5OqvE9NN^N_W4}b(9yS27DvXxGKGOJ~0iKx_CeO!~Q)`5H`Gbspy-!P2mPOm+` zXlZFF?QnZq8@l_hF})B;&CR@+efRu9E;4yXNhhApeGG&|rDRzYMVL!9HMg4Z!qD#p zgTc&BuU$6)0GG>kw8GIcC@GdediKl9k&%(uUOKniU0K%X>=lS#OwCQ-3WY-Py>z>9 pI-T;qgxm0VJeGsb9CFD1_z68*0;Q`4dI|sl002ovPDHLkV1mpOO8Ec) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_groovy2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_groovy2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e8c9e11e17f22db6861f7f11750631611e330acc GIT binary patch literal 1117 zcmV-j1fu(iP)$PkqM{Fk8XtlloMR)jt0qoAb-n`wK_df&F)z!Vx+S;lBKy`Js z&gv+yGMARQ>g(%`TLx&F_A)a!hr{6~0Ki}{JZ-cWIkWAByOvU^<}Cw==rDj>A}Ry` zTUpfs5~3JHdA994_iqW{@pwD{)D;d{0FZS@<)drN$fX@Jot_mCg@H#V(6A>|U z6aWKo0I&cUl1qtgv$y`}nHs$Qb}$$mT+{sv006OAY@w*2;9CGM0yqO855NEbGk_9B zQQl-`dm@oIsj6xcfJ#J{n0Y3hTu#hQjK9;@*EjdCOAZ7AGj6xr2H-d|9|CYx2ysP9 zX=7$Psp=7<(Wob(x=2yNsinnX0CxbyOeT{Vz{Ey=(H$wJySKM@`the4%b00@R#ukI zV9hz@*w=!)@sWMm_WbPluic3M=2wX*%*@Hvy`u+Y603Vbz9PC{aXJC4`>-_oQD?fe1yfSB&Jh3=C*%k~2 z-)H8$&d$!%hB{c$gU#Zocmx2_$>c!z`!oH?>G5N#sxI6Zy?vs*<<&+or-hWyy4~*g z0G!C!<$VBfdg@=vb-G?kOpSN_-uBhm()`@x?d|Pz(P(rzGI-;xelAXyk{ymBPh;(T zJa+AuixVBd^oHH$Vu$(q&z)aq z(xFU7P17orEZu2h`C4~(_t5={09Ni86!mm!De-PkPfzGxf5s(CDO0MTXVw!3R_>U| jpl{acbhGQlK9Kh(B9e@?93$)x00000NkvXXu0mjf$-EA2 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_grunt-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_grunt-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6fc9e6ea90849b4a81463c44ebcb02d43cfab0a5 GIT binary patch literal 1298 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 a2Jjc8KN4QaTo5Y&0000eo} zK~zYI?Uc()R8btqzvrHN@7y~x<>-hxh=n%25lj&@5uyjuCX3KjK33Hq;HJl7Hqj!t zEusf%i(Sp8YTY8T&KC!;r%P@DXcDm>LCJH(&OVHuott}=&I8y~c>#_- zf4u;%0{~Af|CA22X;hed3e?yXwh?f0Lgs=$1fT$bNJP^_bIGNLPXsJkq?py`1!((1 zHy}{X0@H)3m;F=br%{TGq12q}b{1ImrZCxR9DV*u1~#AkUg^c;z!w!@>*_87nB4#{2D^d)o~S)T9n!Vujl|(D2LPm2CPC=hPc{SK zGl21&uK@7I(v1s1Hg5+20N;!%$D?-uF`aq)AW2q&y3^%O6GC)!c2bOtunph*l>iX2 zPRIbDxB8k1=Zzo;kauHoqB<{C)s)5b`nDlkd2O6C7Bj-p7eI>&jI4ha%uRr62jr9V zmaIo+ytZLAaM6&p>Lt~oq$Hb>kdz1`lz|W?fT#o>V$pAs?DEcYU`1jp1{Zo*wXrw= zWQC@~WF8^$U~=mA;)WaG2k6A!)0e+GJnhw~2(3;o>y?>U)@i1dIMvj+tdLdNo{Y)% zq(N;oNo5rP7?Cov;G#5bWXeoqNkRINFZl6G!7HXW`?^5HO+v^$A$Wuc#0dfCLPQUx zg1jlZkZt`npXF5gvt^WJWhEZ&35D`Kh&w8*-_XJh`%4?V0{{R307*qoM6N<$f+>e^ A_W%F@ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hardhat-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hardhat-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2da6dd5a8b6b6aef75eba7c863fd0ca2e6ea8174 GIT binary patch literal 781 zcmV+o1M>WdP)}0cUmOQ{@eHIEqC5k}{^$$>@l~#gU$o!}p!rG;3D zf{h3YY9~s3p%767jZu^!YKlB|V>WSjXXYLockwYBEd(1+bq;6l?>oOU+zbEXUx)nZ zhdMP>#HR>WNZf>UUVr~r09x9$5@R2sEd8l9h4HpY{_5++&YPCPBlzVP?Z=b&%as&y zfNos;SW834RCi`t>7+U+jTTmki?4}zYw~?N0J4is2|NY2R|+@Z{nkPGRmW;v{16xj za>b|Li{HLG!`R!lG{7dX!&=_GdQpJBARtMu3iJZ_?R|cuSF1UWofzZtjUJ*XZL_)z zt(;d~mum@_l_f`k0RTi2Ys2-8-sv;rym`C8)Qr!q2OViHfN(j}grW3rKF0>hOH1MJ_| z%a)CE9Ns^HXEn`20Bu64bl?|&h;04An$1Lw-1iM5&t_S*qK&RX%=m{4)~4wLgb`XB zN&#r^4*>Dq_w|v3%enuk#Orqd)poCY>=r48GpKR(EXL~>W7}Jg_XnYF9#{Vu zyZDgbb7$BCsLxNFM07BT=5Wyh>LP+{FF~%z@1HBBUinCUegd&R#>=+bAioxM$AMu1 z_&mC#D@oh|5g7zF0DVB0^>cV(C&s4UUR?5pxH>};RRE@ePYTabePXS-nD3vPZaJQg z;7{eUJ$~H}@uC8Pn8bzv&L&k9CHBiv5LLS?3zITP)Jp4r{M+~nLJRO&-V_qi00000 LNkvXXu0mjfKdWbf literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hashicorp-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hashicorp-24.png new file mode 100644 index 0000000000000000000000000000000000000000..05d1078ee8773270a87e9be80bcc8a72182297a8 GIT binary patch literal 522 zcmV+l0`>igP)aG}z-O~Lhuh2T?&XC1u<+*1d;dTG?CcJl2dH&*EE$ifwKBa! z1;iKCWndp@CR0t|P`#&K=x5QWGwMhGVIi4YNb>8I9H`gTO<)JOQDQB%tgo&%P8CqE zs1Jb;z=7900>fd;rWv#O;Xq zs!pjl3ml|qbDegI?nK0v+E8BtZ-8qR1llM%Vr#%`Kg4APQcS3SPU8O|a5sA@q34%8 z2vl+K0(hUrO<-xz0(%j$4xs)lD{$5=+6C_SD(LS|2w#BdhZxYbe8=1R9{0(b-*6$z-9)d#@m4)SB*IWXC)xuMpxc)P@XaDrWRypu2Y4kF?( z8GbKv1GIqEhOV M07*qoM6N<$g5k~J-~a#s literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haskell-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haskell-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5028993590f5565bfc62a29ca38129b36da17e43 GIT binary patch literal 763 zcmVtLb*};tvMi`@Qdd-}n2y zc@NmYdV>IF0qkDPM|*xJzTe2t599#|IbpRG<@+DKn~Ke^wE%f1xmZ>Bp-`iRU%r(R z>zb;!4YvIeUNRS}3}fM-A<6SAePmeefO7_3#9rQg#Y{Id66xZXxv8%J_hq8EX9DJH z0FPI*NM4T2OG+KOY97F%RSJ<9NLi@{pQO|~R%wE`Kc#S!&k)a+%OM2DmsQ{a{bLOv z)J&$VCPOtJ=B&W*n^(XHI@2Vx9rnq}Rj_l=X>iY^fze8EJ%A?fifyA4z<8E|y6ToH zW}NkO+PSqTxE+k+nY_@Qkw$`Vn-Wd~m|ImrV`ZzR!yG{7e#8s5l=cENk;#oQLDbFQ zQ2<0h?Rz$lR_JosCZDOeak{4JSp{@8)di4ijlpb(6-m9uVAq-i+jL@JI5K_ga94ju z75BXLo1+hgBhyP2q%EqeZm9z3jK`Ww#l^v528Yw#6Suob{IWO)zuahb>P9 zK}l(sAn0bGV1k$E(q_=5gEucl5lOV|?9R;V;Osd53E3`PdN9oI_vZ1wzwd|NJoq2~ zIs{;9KP_T&qLMVqoEPAvYOHpr4pOyHv(2AwonYzj1lq_*Q5F#P0jRKmtDT8j^Ule# z%gG8(R$d=!@{Y?0K{WyfpeIj3jh+L108tK0k^wO10S#;0KNb>$)jBYhMb8J`AaXxu zZrBgJ&%k8NZf@yzYHu|H65mXF;epkA|T5z(`?9>TPmigVK^2sj; z$TVbX6MyVnzg(1~{4()ePo9E`_7S22Z8NqRP?3HjRMPROF*TSfr@LKK`c_VE{*-=X zhSng8L{?DUtL#-6RyChNCnDQQjv#moyx0nny;)L|!8LKEJ4BT<_!FM^T_Bwx%|J#i z8TZQOY|_%%&3XvrH+4`&bl8cYH(^rGt9BqIa}%^B+?E2YejDzDr;kU@^$RnWF{czx z$3Ljbbs)dN!PG&Hp?WzIQ$|JoW>orPWySEFF~*GB33Cbfx}}5gnm!>yC;7nhABtED zv9rx9G6uX16CGtQIGxa6dnnf?qq6$t;sycZnp?Vx#`OcgUlQgnP(kz45_4hapu70} znKJ>bxKeVire>V(<;C?5B1BWI98vUQ?4+Z%*gJr}N=AgCU02;jfWR(ZfoS+;j4_is zvhmWG2#v~9z=D-wrzIY#1dmz$+voS?$`2v}XIRGQnpstDPj8r2D~Jj-Ve42WX(@A_ zO`{+;By4Ya-n6VX1HkDjzH(>Ny%NZF0M+2$>dlMbr3azjJq80_gdFXy zNN%Mdl&ZH}jkUB=53V4zY?DYaY3s(iNt!jYGw=I854$^?O}f(+^c@D?%=>=7@B7~H z9`HX80)TY6_?9xwQjuQ(sRaNi2?O6oXFDr-fcREn+5+!`)Bph3GOvVfsTb-;E;VmE z05C84)7%KZ(6;jk^*##Hq=J?#;j{F|Xo*SZqtl(ne(>Jy=tQ78r-Tde^c!ymO?eQM z^r4$krieG~Cjfea)PebQ%_MF1$bTB#I7Lr^(2*Oh6T^0=Q07{@!!p&yjTdkL#058x0Hv3O=_l@?T@Y zb0oU$T4ZIRKObyz1*>ZD)7bD)5}`Z&?1w7=V2=1j#Pr?R@cohspEH5p5KD_g%mYhR zwk(Ye9*P8{W!O9wJ5nGm_c4st%#_>$ApZicycYf-f17t<>7!=~bPKPjr#ArrPTn3{ z(t~SE=K(+rPVKz+@~ej{FqoHhcQl)iBRK#E04m6ovYE@~{p?{-PrjLS>Jbe=ytyeY zb9mFA0q+4jvguN?a&mHMqtOkr_z)dhIRqb7$q0D&6ACc2qGCQ6v`FB%X-6M+`z1N> zOcKa8Kn@rj*O1?X(T816LSgO-idWZ{^J4##@elI=vOvd3IdcF2002ovPDHLkV1m*0 Bp?d%T literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haxecheckstyle-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_haxecheckstyle-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0cdc559069a6f3612d70363db1acf83f08219082 GIT binary patch literal 1064 zcmV+@1lRkCP)N{8$QYSWsOOOij_m5aUkWU<`@TL{_>n z#;E8Df*OfGi3ubkiAxPpi?kqWXrNLNXa}U=(4U#QSg>PgX#qxpZNaA4wPXVGiJ61eiJzo9B)!q4@J73d$ zepI7k4S;d(m+4P$=?nn;+_=T{B|a2GPDAab%8$mb>V@%6{Vp7e_R40WLU+{?o0IK2 zMr(Z8M*du)R<8yt7%?Y+-J-mQ)5EB40#K2+fC+%9D^|O+iAX)wMDn;scG913DTdSA z^Y0{2xbICzJZzViJMu$zxKcy`0G3c@#l4ydR^8N9W8<^o95AnH*8UFM0?<4&0c`cr zJ@`V_<$N!IA$#%$z%Xd*Tqe#0rL*~XAnaw>tOdoS+!~*;T{zZHJ)ly+nG`^{XvfQ% zwug<#L`2FZV7~z%$3B_q{O!f3c1@U+TZ5%*DxOg}jpyS^5g7ofBS)ZzFhsW(zdb~A zHl0hlJ$D5F5V2RL`QPp=ek;TWda(Y`#r!=1q>h|R+oKGdRh0&=LnNVzz?ts5-JAmG zC@UqQ9g>Q>fViT3PENTC!D651`FjTVg4v;2yHG5xl8U?U1ks$Fa_18dqRc|HIlFoO zV|NAUC@ZBP%dZ#j1i48Z(4;POvAlUN4z~JqD5Z^ZNVzzG1T02$V48w)vRVI&7B`Q#-Xp!Ycq(Z|{}G^5SF+S!47IcxD1nJf4jGkp0tNv4j3< zkR+1%iX4cw@WGs~G9!~(Kjq&|wNU4FqO8_&F6xLe`d?5p0hslfBG*7vV#Xgk)_6qeQ%WO&z08#1qV{BTpur56PBOhZF* z+HC#WD1(Ts0Qt7Q`^-lG7n_%LD7q6k0yNoB+v__29=x)#amIM$_J?E1t+hQp*;@eV zb&ZXP`x51Ij65gkzWT1dPqeKqxRf3E)EgZ`&48d!g!yE9ZBI}3Qgg#554#Zk4CPr= z-k*1@?_jy(DF>G~JTx~}yG1d_=6C(|N2#-P^O7fx*txlk9$41b7fr?0)UecA+Qdj_ i{jXOznRm}|@!p%6euyi5$;mmn z|Np!Hd)_^B&cJ{C7=WIWnWti&bd`J+$6!QJfGCcRPOtUtH8(iM)Y6jq)QxnWA+X`1nU$%Zt-1a8&6#KSjrm1n&>t;^4C>wr%ptm_bn^rs|R_ zm*ZREKt~Jj4P;5g40jiNCi2Bf5rj68FEU@SBw~gS2D7~JObfoP?BQF{vVbQT*91SL zw#GPDCky14eO`E^fp3R%L|C9@ z8`I0|Xs7{|V9!XP3t%pHz z!ZP)uUew-P%Y%(^dQXornp@^@|Fty&t`qcYE6U;iYb!8-QfX+d#yG>b7qudQ z(7h|kjj1KhXYzdZ(yr)m{CItqKPDD={pnUrI1f|!E+7wCFB1%aKinOf0<|}hBDDOARL*-85)_U;LD0{dapZJjaBpGo{H!@2C#-eh&!}00000NkvXX Hu0mjf6I&$b literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_helix-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_helix-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fa8653f545f3fbe0325cf01212740a8be2a9c1a7 GIT binary patch literal 826 zcmV-A1I7G_P)?>2 zK~zYIwUtds6k!<0fA8#UA0WCPng~Tg9U@RVbn1gBFi6;9XJrp1MR@4r;7K}YkVp_z zCodHpqQDNDvuheeNR*d?4h1S0g_xQI+3xJB2XklU?XY94?#^mTFATgq&;R-VpZU+c z&kO%~3D-=*sKq7(W-pPd9~%`=Tr-k82)YsK7viZ7V$<6Jh^LOA8@o3zpvWhH0hEEb ziCQ*>o@xgM5qu+ITwjlXyF~!8OaRrs0bBvRd6^kZrJiU-YI6bru~Y@Bcnq9zB0sRL z6DXc)@Qk9BCrg#PTLchKH=v4(MCF@LVfxfpaDrtxrb;VlMhh~id3(bBbSSqggF(MM^Ekq&z6-y zYYB}RUU)8%H5)+$QH2IP%10IZ1_zv%dqp%bMZ&m^P^J-beC4A|lStnsRQ?OWkW*W? znykcMB(^#m>5f@Oh~Lh}T%9Vk2u2<7F$U%;36)<%Pj(lzC=&dh8yoT@2oU03L7N5i zxq~$h1d-^B_@ZIKuumW3)}-wSE-3wdYb;FvaaUH{%>G~{kTl#Dbs7*jW5&z_-xHh`}0Df)n+7{n&y8r+H07*qoM6N<$ Eg8xTXl>h($ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_helm-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_helm-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7efe3f842ee2970001149ab2220bde96c523c9ec GIT binary patch literal 994 zcmV<810DQ{P)WaWEw;MYKhX zw$|eD>_m4*I@hym0gTz9M$dK)=N|^x^~OZZOXv3jcdD{Jo*D1$_k93H$tSzt5pB`^eH1pQ5KjI|BrnxOBf$UdO89HsAypDeA;!54#7QGFBG zA)*7Q9M}@QvT1rWnV1<(dc}pyGS$2)rvUnz@J^| z+~X?pfE&Gjq~O0YZvZ5S#(Edw{z|$g4^pXmfEP*7y6d!G&6`P+PO5?E@fvYV_rq(d0hY zRy`5kLunV)xWb6L$hPUXlLrlU2-woNuJ~lVY1|gw+3~nH^6~Ck+{@%ndFk=*Yw?~# z`9#m5d?Ji1^vk?(BzY-ZTK*8xYqjY4w_YgJJM5bNWU(AI5ffWW&wn2O0PFQgFh5dp Q9RL6T07*qoM6N<$f}$VRHvj+t literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hjson-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hjson-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7795c3b6e3162133793dc34c3071cc4069b7d589 GIT binary patch literal 530 zcmV+t0`2{YP)-JTn##yg^)34$P$bldxA^VnfmkM6ToxiGdtmSsI4^geRKBZ4cSrLhfawc0l` zD@oeFZhiic6W2!vH2}&Z;ar*Nenhp~#qe&2q^F%uX9oDpi*S~JD%eSrs$k~@(`I&8 z$(tvz_YdloYlhZ@on^WA{Fkn2b&BEFh;mUPdHagZqqFARL$H-m4}CV$<}~5 zU;y;Nazj}G9i)tseX)Xjz!_mzS?)dXjdOn*^D|yOt(>-cw9U)t;`q%cO!ynV0~|h% Ud2iBl9{>OV07*qoM6N<$f{g+RDlEw8)ZYdDc*=f*j+yw5%$3F&b{}{oO|aD9dz(s5L3iz7LOBOh#_Jk z@ef(Oi&!MKh)rUcs3qM%GlQ?heHPCXK~#yQ#K*GwM#}w7-)Ukw@sa%Gu2+t{fD`oN zBd%KsdtPbKk5N=8zL%+JD$FP7BYu|4_7euXsN#y4YbVSn2>eRCg26WX*3peR_K3+= z!hC`TMXg*ux9f`H55+3xQj@dKF?b5&>B)`|YvmL6Bh~IQ-KR(0%M1>2sl1jtZc==Y z{Y-b1@+&<4g9F@Vq6@6yH_j7(z!{D)g9dgez7f6u=}uqJdCcS zlmgfijxM*k)$h_e;BmCdCXi%mCU5NJqv(~Z(PPbO{VfJBk%ij+PU_o zQ%Ha|pc-KHY=iAZCa=deO>Yyp3L4jk(7^uA2?7%Klm#daN$&K!bbe0f+Jh(SJGSS2 zfMf2or zXv^rFw1J2lQ9uJ-04oX%98YuN=@iZV9xDoFehXFklB<0#C!S6*U4EkS`L*uBuAuF%8~g6G3uS7i8l zXZyDN7b$GUchEPfIP`FW=sc4r!-Acq7H8H52^n9ISL1T$T z+-MC{C=`Scq_ijnO`%}z%(xIrF<`_js#IueUWyirO*1ngO=IWJ`?<(OCX<<@SbA3X zo_o&kyXPG4g*$9kxydDB`)*%SB`-Dg>C!H=>0F&FXA>Hugp*jKJ*_e^5b zLoI)YXL8Z(9zpxENCSxv0J1ydPZMYh#+Q{LP7T1AIia}FAP{v34l*%O#MA+dRm3ew z40!3uk8?X8h!E&7aMPr-s{k}3blE#~!H=Y-_5&w@S96KBBZ1s(B;`M4PAG21Ru3oA zlJieQzfl;s?hv2zPB7Rs3ey|ervu>$7 zmxw)6f)_!K#DE!(0~@QlSaJWZ&5gPF8wZfREC@Ts3Fl_xo5j2GT_*ado&g{jcP-c( zPF@<%cE-*io{Xe?w`PmV;%^z2G2<7BS4xff;g+O7oLdOC0LLrBuK}1jpM;Z_#usT8 zR9|}e3}m}Nez({9R-?!KCgNG=16+-#0v3pIY6P(RrL<+3&h*A^9yG)iP&raPayIb2c1&>qwsf^ zGc|>mvLPz$T3vu)R|3;#h#rIcB>UP8X)ye)e{nTofVqx%w20aT-`52M1UF39E#vi; zqBuGbk=J9RczthI5Hc@mm$obv)Q6cptb@)~F4Lo<4WoP%p3{ zAUHMs?EUwyp&d{vBG*j=8%)|8J$>$aT>yZWnmR5tXz*|-)bQi%j@Z^(%95smcW|6T zK)b*PnjER6Qx^a* zlW5)M;2dS~iGh>&R^nb3Wu_^$T{-=drWbc8NX7Yz%C~`IOxlK$I zR?A-#@E>UV_E2u!pU=xtA#%5$vQbL6ntMm>Uy;#X#29=~r2qf`07*qoM6N<$g2uYL Ae*gdg literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_host-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_host-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fa4aba9b26d3f6be9bfff7eb93c856adf809e0fe GIT binary patch literal 1241 zcmV;~1Sb25P)r%tm4-?S*p^D$nKJFP^Xkl_s4b=YZz!QB8AWuW-2?Q&Y2qL)C<%VbZBAgM;Teol22*Ic~^nt+>hF1`VMAkMuO-^SLoh!7oEa?(6NMGneP<;Zgput}D`3A{-wrE~zH2 z1EiFW^XDh-NfoVkwry_nXA1_>o@Y~gglZ3f55#DU_Qv?J6FZ$~VUcsIQOG&=5wdPCD1OQPec@=?q%Q zz_v~7QVz}M#jUESNGt?SMOi$jH+?iYaAxFWXHVC2gBRiqk4@9w6arz8&6gfap*8{pc1kH=3J!jX+h zQ&At#%A%rd+5~E9_%o3sHkW6OPi0GIgoaR%LP6)`NSt4@Me=$X1%&=~2txX?ms;kvjol4m>S>II6#@H;dTtQ8F{{0cZZHx9nYv#d7No9sXgzZi^nj&r>&aak4O*n4fNK42{42 z`rf0Bjp0nRp>^F{Wy7bGvNOaly$kkXptQVZ|3mu=OpFcbG+d5G_kRSy)G{Br^Z^WM2$oDbt>nMlM*qB* z+w?Zcz(4pcO$Fpd0KxJ_U25R~ZHDx|xscneO%)ee)iCJ?xQ!D-))&(ZWNf_9VV@Y7 zf|)c5GjM2V+1=|TjUeNbZ2Rg)Zc~}qJ>+|B?gG)>9};`97uO&kFQ=U*f{avh8`(Kr z16%DtQeaG_7@)Y&r5&b^|02F}X~326@8pg&vpsD8=!-O%CYm;;LyG}Ue2Aq-)LqRZ z_rKo4noj_T(ju3RoPZ3l^bFJWAPWJpD}^QR(@9Kl<~#%e+NkG%JeRTbKEyq2Z8^IG zY$Gb}q64j|r;whJDLh{SAUJuN;Qd)-q=Jm>qWs<|${&7~n60$H3`^qD$}7&IgW#B&#M$4}yp z&LH~_C5~MHruauS;@Z!|_ira46_EY{Zwg4S`nv$SSVI?UaP2Zw#tDv|V6D2H`1d>5 zO1p1gQUlo=win}ssFN2C4G&@`R=Zz=FJoGe3oZK?zU4 sGu3nDQ>LQjApU;Ow|_Ub-t|Aof7Nk8HSd)KF8}}l07*qoM6N<$g8#RgaR2}S literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_htmlhint-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_htmlhint-24.png new file mode 100644 index 0000000000000000000000000000000000000000..39ad759ccaa0201856c3fe9d4e52dbd4807f0b9b GIT binary patch literal 765 zcmV6j2YGZOX}jPu^p!e+7>UDU38HW$uwKAz{C3+wpjA%9w! ziiY-rjfiD%^Yg^iYI$a@CNl?vC9823y{6D^U9-4WkAe=;P1W0M*6%=MF%X~b`jt;M z1q1lzv%r7~i$D-DU4bW4i8URh8_Tz*qTXHW`!fh<5S=TiDr?RFj#}Ffd`4-)+R6Ed z*OzXp-u9b=FOeOavQpHka2{}hVT|c6q)0(hQEvvw2I7ejK=N?N!`e=u8L&WK)^WPG zkA7Tm0Wwm2O3+I{Mywp!@_ag8NI5_{>g@+A5U%86--Wa!Bb6hFJOVB{zMTVZ8h|2` z9T4O;VAbeoDq8h0-ROl14X{cpkX_0YJ^Zm+FO-aU_YsK$qC!u0$sNkCD2L_aIbEQw zfB|g}#AkYQ{A{dzV@bwcKzI>&nm7WGj8wKE(gRqO0TI7@OMG@dSL3c65E%WG1lrP# zCXp6$`D4?`Wj8w%mhO=7E znwSXGm9BjMHU=whFjiH2Rp2|L2mECQWkMB<*T1w!5))7j~0vD#)1V9Ahd7ev~PS2!bC)5GleO zh#)fjG8LzSLuH8Ku7_xp6Zwa&h#j!NH@_KLRMF8-M!c^0%F9x;BIN zGWn8*Xf%YXBx7B71eR&TuqjFv6@QGRaC4>zfn`C8{ygW!#Xd`Qogq1Y@0pC6$H4lDzh7DcY8AvrmR&Zr-~JyFywf~mPO zLSeCMg@0{4n~6`kbuy;?JVQj|3hqrE8g%=O( zMk>9CFTaZ;UC^MLHe|JiqHJK~W)4@!Qt(8^AUxa;uHzK^J*UyS={$y0V`ys;eTGq3 zbH|sx*FYb8ZG6Ufytfsz**q>?%^{nw;^e7elq3~pS%Xy7k{0xITs3vWBv(LktB$2mz%|1kW&@LV0p@^rNZ+u;XB#U*W3Ni84aBw} zaI7Q8LrtP9^2z$x-G>%ldvHJF@w5bZ(qS{auRh7P3^WEkXyhqOApsR5F!(7D?!K)6 zYBDNalbR22SZ~e_PEG(WyJ*i#pTB8x{-gCVf*M-8TVdM-nl*vO)n9{UZP!jM%{x}R z)UTh(vD1@mmbe*NJR{VgRGlm~UhE<2cArGvVD7YZ_ zePwj#N`3$U;0c0dMqzUmQN_cWqiyaPas)27;c&}0K=NZUln9!uFF{vAxYlqV67d!D z4{*7ScqDjA03QfKyy!?w z&JY4ouIN_%^JNaDPDkL-TQ(<;08HsJo-oxJzS1&X@O#?-OTPfN4*%DVDIPQc0000< KMNUMnLSTYoZ&=Cz literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_husky-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_husky-24.png new file mode 100644 index 0000000000000000000000000000000000000000..826ac718ccd7ec53bd83486040bf9bef9ed9db59 GIT binary patch literal 909 zcmV;819JR{P)41&q<`Mbp12Xf%>XV&QS=?j-@`Dx zucOep*W);TPgO5F=XUiBAbH#7=H^cTP_Ngk-uqW4CntTnM^#5f+c2# zGQuH}f8}zyJb;aAwYpI*m(LUmg?gb-I1S)DfZZg=0Sv3^M~z0~1?Sw=UT1Kxh@1iN zsH)zPEQKezgXH5RUm^JnfZYHb$??9vzR$Xuw*ky-Z!*en0X&_gC(=D4vLGTS0T_Tc z0ek`AXsm`zYYHDi7bpawWBqB!u z+zH^K_x>z^;Z*&@t#4I*7l74jwW}mcBO@b^Tn``so&@kR$#Vb>0LZ24RaHG6$MODT ze;CK{NmZQya65pjVra``n8c}hgySJk(H)Dn@*XBEw6^Foj2C>D!5MMMGI4M4Z@ zEr5tLvZ5de_Vfy{Gkny9L;RJ*lo0`I*QB>%X|N`i2RnmFReWgkyVn1 zGG4!Q0yyUa07vKN=iefEisbhqatnZn|HO}N001=r&jJ`tW<)c4rxRdlY3UMxH&its zIp)280KlJd96!Idw)W-f>T28?cv?6&H+O3g1Rnr60^sz*!opZ5z>UN;Z_(o7;;$m| jkeS^tBH_O^|6k&7$2?4@`xC%q00000NkvXXu0mjfXBnJ9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hy-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hy-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7f5bb16b691806935abbd31bcf731c337297d0a7 GIT binary patch literal 1021 zcmV zE+{P81DsoxplV-JxgvGPiFC?a5@<72YDOfdjT2w?{+5j=vMUDt-WW8oA5%Fw(z6A6 z>jc&T!}69iQ#()^wi7OL4LQw6><3J!*u*12$t{2t3R1PL8|D40F-FG>z6c3N2E?^TdFXC7Rv0kcy8web@5pJOEvQp1TRg4 z&a5shM%jBs5d*-Y;Au8QhYTJA7LZ>A$^dPMdq^LYSvn{gm>L*ZTtSe$Q}&Xwu)-CN~m?4SoTV3km9j zWqlzn5x$=T>AbyM0>d`|$T$o3O6-*S$HtD|6`YAdu}#SbOD=#d9o1hA9tMhlYvY3_ zMphDZbU3is67daUH-JyLJ^=Y>sjFR;>84Gi6{QQnbg=MK83#g_r(!qr2&%@XpC!Jj ze;IllNElrC;e5|`024zeFJsm!tQ|*r>f7r_L0f@2Ok;>@Ad`tWL0-f+Iifo5KqJC- z$35hFX;KN$jSMZn!5=G1yoCwO&P)#VOy?80kiGO0{()x>kP>{B4a`_UKj4Wym;pWn zgy}_K-XiPFFCM!FRHj?%%ybsGEv(DTYw5Adl5oR&bIxfCvQmSzV0+kW8^6%|$!Y`z z08wUsxS%k36>PJi?rab4g>25jd&oWtDgYuwhsV|^eop~Fs$ zJeZ(~tSfLpG4TsE0b_!@F)rII-L~`L0b4q>zyj)%OqxFL^m*oeXXY*Nk3qH*@9sap zN_u<1f4(N2?;5{xlODdGD*EX&ejzV8D7JkQHrz^106i9s5aQaH}m2@Qfkdyk?hG3W;w z1I{^Gt(L|$o6Wuj_cSm~6T`#98rSRfu)eZi01yHh6NC^@N|WdIk=anrA>KZK ziDg}xNSS0HLDphkDTOc$!5BjrhVXqKj4=>GGCfCd4)5MmIBPY8kB{m4X5o91K~yAD zP+KLkZ95r;VZd=5*tV^eM~Db-y0_7zpFzj;eNn&?`*iIqkou!7J$h01&mOs)DdINN zYBdz7f#B90X#Hp2lu!|j+h4BNlMDdBx;QeAY#k9^X-10ZVCdErS>fGqa< literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hypr-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_hypr-24.png new file mode 100644 index 0000000000000000000000000000000000000000..893f793cb49d624f926a572f1966071a9ad3f0c3 GIT binary patch literal 518 zcmV+h0{Q)kP)fH@(H55fw2vLm<(&C`e zUTX^N+P~1^6od!S7CjB7`0Mb_?!L?Mz?awip5*}?9%5#Rwvd7go0en-_e4a;JrjS0 z2#{w0OQvx`OGHEmm~n%-aS3OGqm#H{z%G1hz)pN3U^hMzZ~`9$Xd7!FqzPcrP8T7-zj+#Nu%zl1cb{zTN_*`$a{$nk&%92_XoD!;oYd%faBp z9wp=;ud1h(0<}gD=Qs{2QA9)#z%Y#AUlO2HRMiv1zz=l|LbXN|H}wTX1OaQ31kUd_ zghy@yoEJ3hcxvF|ljHmN-Qx-*Sw<)vHU*DX=tW-BjwS;77Z-eZS;bQ;gG4e3mSv{{ zCWcU2E-1?3;0yq_<@H?qEfI5jJl}K6W5ZBdtyC)Sc6o;L3!*!Oh*#jD=Kufz07*qo IM6N<$f=5%_UjP6A literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_icl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_icl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..05e777d6b73bede85c33fab53c47b99da46f58ca GIT binary patch literal 746 zcmVY~W9AP_>Z$ZiUM+^C3J5EArvcvlczb)6K5 zf<;|K+C_n&HtpJc)VVnTmc*N&ZEUvxuaW@TRM!VRU3<#9Ud8-4Ibt8mUENBa8`h zr?ahb;x|G6M1=0c$)eN}M z8h<2$=i3@0Lb#$FL~>;B!Vro|%P_>?hsRCa=>%k1Z1n`dO7D?Z8lAF~GChWcQQ{}= za_%1v{LFW=Tp2(E8{X~P)gQaMnpXh~fX=qY2@zV7ra843C?|9{z!!hXzTw-fdp$(G z9&~y-YAJnvyO!1B;NT0NjqNiH^EFWPrxFn!3Ho+NYxCspbt7|Qd;66&hr^+_!(*|{ zo!ac&JmbM2aXXPE&`J+yhUXLjq?9@ekVx2!z8qp{Da^vs5|cAC%!e15e*b|)JkGtl zw^)fp(kC#C%3N7F1*Q-Iuq>1Of)f1xQWnDDoq9MF!n7=E&eh?_a{!>U%IbbkK}So| ztiS`yvba!x3Afurd?SjoZIqqhQ#gcHn%cVa_)8A~^j>Xi9?F%q=RfS}=`oI-s%bTZ z%fN|*ZC6dbd+W0k39744<0~$<)&Q_j2{}RGTn|m^($wy?qIqf?oKVbb0_(^*-o{ zuo{s@G+e8`sQJ}{!1|Ky4rcwuS#9XtN&%AylucpYL|9;q4IN^o4jVDOO}IPim8Wm| z^)sHGx&qwGviJ=^MUMzPj&ji7s+i8~EL!gSg4KBdpp&==GepFu!I1K-OQJ6){f$jzV+X?&=Hz9sr-){KVxy zc|-5uR|Q_buo^kyiykDY<34 z8uLbBdc?2n70}f@v9_ria~3d0%xIM2@d2Bf6vUAOlCh0y0w`xbxT3}1r@2S7qN#@w0IIfi>F!&B2|R#CKh^# zJrpyETks+xD0r}~1(Bjqsfx4|JyaHo?Lh?>-Oi>Gm2J97W|Mgz52BQH-JJ~u|EHJt zdH?T^|MPyp|E)4uWdg5Xzoc1I8wy6uyxFdC?|g|y^OgeuJ_LIz>mN{?3#Hb~#k4+q zsiJ}mX7i8jat7AVCWF((q<;PpXXx2o&hW;wz2;;ZfVEUnKu6>H8MUm8y7uQ`ws6mQ zduBp}tzjnl!huo*Slt?0B`#x*^@thmA6QtOvUjQJE`oNIF+m*QOJ(d82SXN$^UitYNTB;)Kr z^`(hi;jX#3{#lvL830kWjbUUtfU|Jo^;~ebs6Hn!oS<(Xn*DjI;^xPC+S^%%_u(=V z!-d;>U9(e>W6J>+m4bx1;F-|%e>ystUj-0m{eRj~b@T6ru76omT=Rb=fWK}J?dW7R zmsh9DlfYYR`ro ze!nXBfmX&^(PY&P_L;7pGlq|Cl2e|m=W1SlTi*#n*S`X+(oT1sxXu%b9BOxZTfLlp zRMa|+Bu!Q8xQg{~seN^NMF}e2ngG}+q9=+pZV0kZlq;U=oDt~mi@p62j}=g zf7(O-3Rth5?!6@%&Cm^=2OS4I;2O$pSaP7)jxO{C0C>X-?kADCvH0ru0M)_OcbbHC nB-X6XccNGMV>azxw^V-uuFgd&k*5tc00000NkvXXu0mjfn@zR; literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_idrispkg-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_idrispkg-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a11c8983266780441c233efe971fe01325ac516f GIT binary patch literal 907 zcmV;619bd}P)JJBO({9&B`_u&0*?%1X@FqBy++d$Nd@@lhpXpZT zEOn?LeQy5F(M<2At7+d4g|u?&_DuhMqnX^6W9`{<-2lu|hXOj>sC=NtWYu$yNAA#u z@uWO0!nVlI-_s4?x-FXO4+qkeTTMzTSw1~58&^v`>q61=sX`JzJjvQ#^~_nX-q`*K zKmWSy3J%Q1)ua}`tHye^%}mJ)_e|6-$71dK0OMSl13BODvv+i=;2&F51Y1ZdZ>8DH zPE_|#`$IR(H7Xw#*_s6qRmWNeIsr0^H=gyw^`iQKKrTgJe*Eh9mr7oKtgY=`MR*-9 zFr6D(({9;aiX7?$xNay&E|`m;%?x@8yn?g03|ngNMR4kZUJ3U1%Hjm5AR=CPr3Qskr%WgFL+&JH~49xyT*bptMKDm|q06<=Bs&_^tBO ziU5(D-;2l#z|&UbsDWWcZxQ7|(6@1%=Oxtv6$TwEXU7^pezlLIgAHY(;asXeaflUTdjioIrpbOe-o)`h?p5q%>SYASZ7kd%)&#;mbz-6_JC zAO{6TM7W5^x61+;wZi~b<+DEo3Q(xUUlfw^5fr~rk6%@oOU1Nxk##!)tk@QSh&GqX z6R~$4OyZ9h-`UxwwffgUie&`AS|_(C#Q=;aS3Xw|u?$`V?gRjcyx;_|N$ahR#>;F| zSg%%2Pc+LHOK!L?X~Zw}x%p9ROm3AlPd-+wmX`$pc&;bBnN;Q$EI8?}-J$AiMHmsw hQ5xyY{22d_<9Fa?LKPC>GT8tC002ovPDHLkV1m^qrxE}F literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_image-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_image-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8bec9808af7c7f731a777ef1aed7f77bc8d22747 GIT binary patch literal 568 zcmV-80>}M{P)j_BNs_5L|8=tE3LQ`|F#s{>pJYAhs%TpuhZ()5Q~x!4%z zcB~J8>)Ls)MpNDZ0jcmfIe{wNoAU`thZ<(p%s9q!x$_dbKU^7b-x#5*A>wKdu<>b^ z87)QJA9CD>eSRJ$$4~5nV-Na6t@H$=?3VUj%|Dk*Y#+You0H6Rb58o0YBqWH?X5fD zRq+cqUg!Q<{ck-#cvmsU36SKm>^0A?yhw_CUH#5V8ib6F27G*Uo-!@5A%`ettiA-xqeVK>+;Y z$pJ)P0A5A&BFvyNrRaoZtWO;+t(jaPu=?MEu0*1Fxy}0qIJeDS8ThQ|nB`)$aO~9N zjsyUKT+UNkUAT`*9I$M1GYGFOF~jr6BRNNcfA}*W`+&zNCmfzJCBksaLiy!%G+MS5 z0H7+qY%(UwL*TG85kFOVP@0;1&fs9Bv0#HhF6Swh7q5#D2M#*1D131n6U&DpKWqh? zBoa;g+dMIl+X^8Ei8+h);C%3O$(djazH};LxpYWXuK;_t+Y^;rh2HR!CdbVqBQF1u z11Hr~`c{4_QT?M>)2Mzo zVrDJm9>~S&u%tX?Ju}zWx3W30Ib~h^eDR~Bk-sY4Bth>)Qjv$;FGmWK=;PuH&ruK?2Wu@ ul(G9QS0T`a@)gmWt$P=amTby*al~KB*2y$KMh5->0000@P)ONYKhq3yG{_BBeOFHz{AW=hdF5XC`| zAVHjjd%HA6Y1DgDrT=yg=ltKj=Oza(EU_C51_MtBaj)BKS=MK}-G0{w^!xo=%d$QU z4k(2X51mfu?NC86D;Y%*tJUhLv+w)Zwrwe;Uc)ft5X3S#?IER*%+a0$a1?SbKni&o z4u?0p$;>y<(PFV6Ns^zqTrT6fZc$2kWdv{>hvjmKQfekscRv`U7D=bYMI5AN`)W@h@yz~daVU8{!Ei3F}i^fAdX|k<1tc7?Vch)x7+Oj zy>!{_?xOFVlgk`5Z;;mz}@ivec9^B+BD cf9yBY7qX*|v;=au&;S4c07*qoM6N<$f(07T*#H0l literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_infopath-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_infopath-24.png new file mode 100644 index 0000000000000000000000000000000000000000..647bdf1114f664e4c439eda957249fec3cf754e3 GIT binary patch literal 767 zcmVN#4~>K^In#N>GFrMG1DSF2bB$ zNf})vbrBg>QW}I&5UHe#tRyG{U13u*KZaZC_U}TcqT6wfZt8&phxd8U^ZcLpyyw8b z4xvRJ&s1YpNW~}xDM)ETU;@?)A%q+He* zN-{5;$}KXN?mV;|=a_5NwWGDKialz^)i>%_Wm!soppOYZ91#=FgmaQX+YkxKYvUC~ z*$wbl3|!;myXvnrJ$5==ynp$LwuZO)y@`ezm>JP>5givSjVh zLjdUOwv&^;EpP)Z2qADfTx`rpV#k4O03KMHrpW~xsQHqG=4a?1A<{GZq;>*74&HL# z7d!8oy8!rU`{lDYs1bQF`FjfIm`mU`>6*@8q7NPA_6+PkDddt)c21pTYnkd{bsZ9!UyPIpABFDL`I+r#LfgS+LAzAMhDV_LmIZBf(p=c6y~ytWP6 zM)RsVRGU_>04Pka35`bHmJ%aiz*kBk3M{Q704&X*d(IoJ3=Bo3O xXVNdnPKLRRxJ8N(q<}DjjK<>`3^43}fIp2?*kDJ)#eo0-002ovPDHLkV1hs;SmXcz literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_informix-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_informix-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a490c5729fcb5c56fc0cbf51ca103e1260c07e73 GIT binary patch literal 989 zcmV<310wv1P)(-`LG~Ym!tYSrvepX3X)25&tebxO4np3liO#T@ud%oj~mxfN5bv zF0$j>k2R9MMm%2 z^XOhDJC~yk-Ervz;dH4qUv~%EQLUBQvUjfi*jjF}dnhrN9n?4w?X4S{p-i zhF*5^FZ?yU>t_HSzLYA@&Tq;U@QM~~ws~V!^^S9gLA}71;^s7EW}Px^khdNatr(RU z6T(jA%gg$Bcl+WM1=_6w+SIP6DxFKj%XqwlUH? zb0xuZz%k%Aj1k0V7!x?AnCF+ojbknHcE(`9$n*P~tO1 zth85ycocXY@d*(>k)TfAdJMJ!x5;p3t{ZqImu~1WMGHtz7VF2xR%t4glN#8HC$VQs7~mOrwd~%wx&g@sDlG_40kpyj< z(M6#swJO4TV?~jpwvC{m7Hu-ZK!_p=XWl(6#&pJcchbObcfWJa_nmX!z3;*%L#hQ+ zDK)$5UmaFYHF+fVq%@Yv&a@e|i~Zd#Z~n_*Bs?<8kukti z<+-tXF45ckAxg)08H8w~Aa%=24;am4XLo}x0XLR8L}*tdZNSD1M8&R|&jTHb%2m-F zE*;}E5Ncepid>AkW6Kzxnrl?6XN#;FgwyD{O%@P_Kz{-hu)&3R>nAALB1Nwu+R7@i z5!9mG{M)aOKL(sxnPBAUt9>>M-%{mNDKcr)25Kmv(hD4`V)#4nZ`nQAS-)7EATK{K zdaaMOPDYT4WLNCbN`09a-k!<=8@ddvQdrBW zwe#hg%ScbW#&jVW=HMJp2+g2thPBAlv z(&s4H7(`wsTuCKG_ zE6J{=t5Ja}e^aUY+Lh<>%N27PsPb(MRRA3Xy-4weTg_eja+JXN;8^8_C%gdKfPxBr z1M%j20K>uTXB8a-e3XyYvvV$;e{MrMn>&D*?E~@HbQvE^cZlbCU*;O0rBY)5rL$@H Y0|4*y&i94Y1ONa407*qoM6N<$g2JF=cmMzZ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ink-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ink-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d7b74cba5692e5fbd2e088497d4480bfd0f553a4 GIT binary patch literal 1103 zcmV-V1hD&wP)=VZV} zvJgZ;p{+Yf)7ph7T?ko-LXCnzr`QO2s7h+_s;F2%vVjFmPyHX+2%fa5L66BgB4f0>byF_Bc@}O|Z6OBe$TwFv-`Qhf~rpFeLQhxfT>`zZm zSz20RdwUzN*GqeQJ9~S3=P>bjoTH;7{C!F_xE?DJv@@EiH}V z;bBHbM##_4M@q@7SFaF4pp>%D3=a?EbUHaWI6x_d5F+0ekWvbOU@(Zo;o#AuM=UQd z)7I8TPfrg81qI~h=Hhm{>Fw>s?RJxynTeE=-Q8WDJb6NGZ7r*-t5j4}Af-fWoni|p zrFH{ltSklw22e^dJw46n=qLbVV`E4u0hpYeq@$yQuC6W)4-Wxo zYHC6$g<%+`-Q-)hZUv;2o40S@=H|_RzMoJi#N)@0i9{k?zy5EF666ktgY@)to<4nQ zli#>;gOZXGq?AFA$MeUzhvN79zcEcy_x1JZ)YMelo12@pX_~sTv-4d1A|D(a)TU`_ z(=@x!y#oLt#CJ-mKWl1gxOeZKEj&Fvjb&MsmX`7+YiMY|>-D0P+Kk0w-zVbsS5aPG z9$r{j=nz88Jbd`@nh=7uwKW4X6GF6CRaO0ZmhZxWGdDL^ zrM3PMDAZaL2n1MLTVro;kCc=Yva_=(FE6LKxELV>z=qcPi<+96#n-u#&g7}7DVNjf z^Z`DgFbV7>FcOVMe`soIy6_G!9r^&zo;~vzhH(eT1BBLk$1sc+b#--tw>ke#?Qco; VJ-{OkUmpMf002ovPDHLkV1l92{Qm#| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_innosetup-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_innosetup-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0318375480c3e7d28e243059211f520c0142bd35 GIT binary patch literal 1302 zcmV+x1?l>UP)en7HpwVKq#g3w(WLzW_Mh$61z zP%c`oRmdMVbz>XB-p@IFxctuu9$oZ^76^V7h{h-Sf+19|pFsi%*Rd%TEv$T=LT&&( z)7NYo`NcHUp1C`M=}YGXBGK=|iIguGjpGYNP<;VpML`rroIwRxc>`l0L$1GC^m4s83gyKm8u>^rg3~wlmHxNYe`tYdQHBt#d zKr5H*no{Dv-E^GNhv4L!@nzNXX)u;xPRg}GOqU;upgf)5l}@uB9v^GTyYTGacqQQo>0+C z#7&UWkbLf_jkDLR-2CC1CBKg#kTq?FqIy}mU^d}+l7lT7Jer28NW^?1Nxy_o5iyDm zJ-UtKfG7)8OKIlMe;9CwpjPbu@kj_*Fj9diSFKv~6l2Cup!VQNe6b{wB%w+WR7FMw zWh#OaSF<*Sl8dfe#M7sFclkUdQ5@m+o`ZGeL04{w1vO7b=gyqQZ%0p3EZ=r+Mnt*u z0;Z_(*7hG*wqXmcmpiXtIu0XxaG*=C=xRSNG*jJ)spiE!E!Omw%b=33T^RuW*#aOqkmQ2nV1axmuuyudqn53JV ztH=`R{;XTjOM+?SDC7o^Jqm&(;<{d}vWzHzTP~rt{lTmXjTNir(>su3!}f3KGHhI6 z-=R9waozoJZ4Rnu&-q}@vyVUKk!8-db>th*wJ8V^k}QKTxJ?|}M$x+|SzQ zW-_h%9?o6vWYd>F@$02Df@z><2kf@ap4A_(UA1#qfu?yz`!p4R^)D^-$3g-3`1y9B z=w^x8F3GY%0*zTy#xt$@q2WH(9;)M;h6|jy($7F|55-bG-Q5>?d&m2)?HbCF0gQs# zYZgmriU-vr^X3cl?zqN}wOnA=fd)?Wm~`~?4KKU)Os1x_c5~g0xdOn(FTNfV@WRJRV`olzXeD zP8gl?fJ<*C$GP?{jh3!|hAD2Rxwd$_!fvtRovk}l zR>7ItpUr8blgZYPUVrg40Mi$a1$h#V5JhzRaolE(?Y(*@EB_zy7n1H1bRX1uYXATM M07*qoM6N<$f<>!&WB>pF literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_io-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_io-24.png new file mode 100644 index 0000000000000000000000000000000000000000..dd85678d0728a4ed5f68e730746b871cdbc37bb2 GIT binary patch literal 691 zcmV;k0!;mhP)1rM!?Q1IeKp%-aUC@Z=%zlSDa8q#)=T>4K&{|usR4VOp7;0J_wScwVoG|WdN6*$pJu#NSWkPCX-pwTAvtYuxn_oZ2zuUz5>Vr0LiOS6y5WEe?3i$YEDjL%;K;h2!b^LFC3Ihk|Y4q?LpDWe^jg0 z@1sN{KMvK!v<6ux|GAS$DYY?#4yHAToqTd9k+t@yTZ_nMDg%RYrDt@ zpb^LMxpKMuw+}r45RuSYdv~BDzl<<>6Gc(c7;}Z>Spdg-3)~cu_tx6yv$L}w(kys? Z#Xs~f&`l(IEkFPO002ovPDHLkV1j?JCs6mPgi<2lbI4*)7I9$$o@A*D(F7G{TFp<(TTNs)a)G2yDJQBHjJj@%CK;#A8u!vIU3$ZM zwCcpaNIGb*J}+Fg%`SnMg2mbie#x6~U&a|@ZrW;xO*V)1V2!;Y@8!&SUAERFBP|;a zXmb>N@T5AyxO-l?Teh~}xiEMwDmtR90o|^I^JDsD4OFtVGC^EIv-WV_tX*89c7pZr zU+|9z7R;74+MEdsW-Ag@)Mz;u%Np&eOXj_E(w+4Q3VsO0bU3TUAyI*%f~Y`~OxZiD zvFZ`c7DM@OCBFe|pli3Ami{z@w+QAr!7=^%O^fp7R=CMxJra?-7`%o+%Y{;hdpg4d zB?HWaY=pyO$xh>bIk3B$;&L&-uK|FVdU`wb?Gu`C8=K>~4FKEIfdfFHBJ`FRF90wD z!)|RdAlk*%im@meGwx0Y4gmdaWRH&N^~Iu7!=whH=ecS^tC;w(1G2?d`n6J!?dQ_7 zoI-FND-byUFxeUT?AGsDR0QyTlf}2h47nS?)n7YcCJ!zOu$|MA6@NF zV6-ON^$UJ84#cwFj^Inz4gdxU=Be~--;j3WN@$*5<2a(0AnMX-z2ZU|?$5fC~WyW(G%`=&` z?%r=#y(d;R2o~Aq({k%{;Z3LHW&lVY2tRT6eIJ}{iSgA+X^le2i#@TK-^zg-&vGQ- z$el`Q1AQIAA+KKY$!zWB!27Ih0n=4T*WX6A zA7{!(9{|jgxdkMsmVmiTYLo!m0Ur0YSC0J6{C} literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jake-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jake-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c507fc3416d60ef834b86e21d3d7d5ce6712bfb1 GIT binary patch literal 806 zcmV+>1KIqEP)Zoh+IrMw%ECHW+Pu3lgg+Qwn{}t23P$7f3~<1-Hss-Q4@#-TCM+dJ@}=uv3_@~dAg5vcnXpX ze}fl=l8k&wk5Uxb-y9CX@cTa^iS}9yvev`M$Ozlnb|6ksq-QCUMJy^{@#`{PzFz?2 zpb_x#U>OI5eg3x7y}ho#b`Y`cQ6U)M2m)vd2LS-4Y2rwCJ7UprbCKe97 zezlkux6Tm&aDMb;&#{hYF4< zXu5&f7jNKla`5qF&tQ)Wa&9?2w-?O>vcjNJA8!Q?CR*Qw{ zifLYonUuEe z00430^2KZ{D){TgAuB3mRfA>Oxx6GNMKOEzb|Ue-UW^;L*bAS(OgK3%-r#nT9LoS$ z@1iIx$QLBDq$+P!&4`O@;;nm$iaKj*!9Z)RFQTE7Vm8b2D9R$3$$2px$;2r;$NNQkAi#-?HK4`|X2 zv0xgpun<8*BSb`^Oetyoh@z4PiI(>LI2L0jZ~Ep{+l24x-h0mde(t&NoeTe15*6r4 z(_jcqB|_t(42kezY@D7=*Z4MVKsL=1g(tw$zZ`H>g$_SXYu!agrUZDopV?lVE`^4_ zmXc(tEQ`ualmq~X>gz~AFwaU_ z@f|0ANn%c^uoVgLMV?Ou03dcUVK*G`N`z)b0>)o-jZGB*U@omOC0;&pd6l;1yu%gr z-fqM9ChsuyJ*Vde?!Y6w??Wzbs9h3Iv$-Fo=-qglW}W(Ot^fU#Yg8@|!SiyS-87xP zySZ)`iQ$KDNxa-EQDma<1MvMXZ(^Yx0eM4xxqS60Wv+0m?kXQbfcgxB0+-yu>}38R z(R_ht9vsWhL)Y-LlH)r3uEQJ5I#DL(vYJwFRJTG)SvgzkGYsYzLq}P)hmpjyyE*Us zJ~`)H_`lZ8Q|u0-GyfLg!;x(T7+0!5Iu!_KYwjpyj-w086Jh zYM|M1dDe^4DUhfiVK|I8>7|E!fHbS;&HM-ty&^#_!>wpouuhM1Js;m z73G8FJjb3oM+TU|&>O}Z>IMMyqx`V=4(r#uiN%C31b%zed(Dnli{tEh-oJL)S{sA{ zwAxIg2ycjy?~LPppZl=)cKvzg0B*gAKceceD5VEIS8cwoU`e% z+R~FRquPeD25caxDz1nsnEL=C{Jg%iF#T0uU&&f)E}7)q)Ie8b*sXx7v=3%l{;t(w zvpYJnS?AHaJ)L>KeQ=`Zue!3|tz~pHR#DhF1|)$hfmKx^3ULuBqB>DbtbSUVuX@QB zXXUej6F+VV0ML=mI?=0cRlf30F|od@!YxJDb2jzhpM0SKt?BW@M$M?eY#>rZ@lo9; zU@$@VRDaKvEdi{x<|ik4R01g(!)&hq&0ktS%Iq?(96m&5{-yFu3IG5A07*qo IM6N<$f(IUY*#H0l literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jasmine-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jasmine-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a4c7b0c662cc0f2ab929dd6e5f8f87c99a73d777 GIT binary patch literal 1290 zcmV+l1@-!gP)^~3I#f*{0%`|-}5 zbLN~oa|dp4$h8Vw*EPOIGr<@pBiteox2oq<kn6EWYO!(8Zrln0zMJDW8)JWGyg?k`?`yOF~Aw| z`j!ZyE2HjtAhRYAo_o2KkwExK6*a~C+zZ9~ihEG|Ja7RR+tt*_H$1nqutW?JrMV1dhbf~#3xzNIVf|1o1KKo?KN@7 z5z`D{jGeH$!Treq*n~WoWYfd$UN`1A@=WRgBLscLB;*TA-{VfgyjyL1yE~l1@HiLVLp^?6<1beU1hr{?JIpL`tJ;zpEuYCdJg=Z;?%KBqi^@bp`82#%$u7lE#YX z%9?^J98Ek0@-SeGk|9={6u@k(nNk`JE+0GMo_Sq^f-&}o{#&G|)CR)M zKrTW>X=AVoAQA{Y1~ibgZa-qSikcSadqDo0>_q3pkMPycKwBo&p-yMaTPf|TS~(R|i59y$SQ@s)OZc)43Xd)f5rChvb;)6@$N| zA^7bT37~&mZv!%b9)&uE56hY=j;CeU&#QM@{`fghRhKHdAmv1_h|Vu*to(E!-W5Nb zl#-8taRbulfi?xNz-@4GHUX!B7fPFgUtf;(pI>Hnrzt`yx{PRGoI=(q06;?Z?Cf){)_=)6KGJ@-f0IIW4N@&X@H8=T~U4?03yxp>3{OrLBorW zw}xLOtji!B{IquIzHPP64kF1$^79n{6I1ypNO+mKlohwUyQH`?5ehY?x$b#Yoa?SG zzmdutsG>Og^-%iQSyg^G&GSwX(aj*?fdK#(L(vHUs#q^dV*!1^0HS<`psN6YpbrUJ z|8rHR2hdX;y{$|`kz>ws7Cs0d_ghRiP8$FKx+-@yiDE&A+4&xzTcrNe$+I$ZDJ#<0 zlKng1lv`9%=M+MJUh-wH*&73Zh-se%E3v$zGWs^!I097ijb*hz+4@LivNlid$HlQ96#e^uqqJ0J0-)oGKNNw910Uhe9+O_@HsNa7y zBJBjsCexB(bH>V^s_2WUZrTZ8ow;iZz2DD-6M-uNfUU+UV8&@ceE>-i#z`rxs<|M1 zVdxQCW(~OH6^Ug%>8>an_$vVLqw~3WpY5UHP>$^(#A)uQjw5?VQ~3e|N@^~i1R)=w zcYuCXMVLuf2x!2S_`%7?4-AMjx2MZkYy+4^*>|6Hm^~vUbxt9CtR~iZsx%7HzN8<2 z^lSLGy30!gRa8>bRtKUeKxc*g=eCbQfqrG!UTC&8<|h2Gu!NO044?CeX%SS0MfkNJ zvWKr9-7%E1qT=JN;ZVX_!bJJLP&Scd5>Yw;C=genaX97Vs)SlRo)ZuT|{+ zkPz}Y` literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jbuilder-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jbuilder-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fa305a9b5b5b8602c7b35a91880e64d8af427ca8 GIT binary patch literal 610 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 Dj}juc literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jinja-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jinja-24.png new file mode 100644 index 0000000000000000000000000000000000000000..aeae281ab559754a0cdf5f9b13c41ee3682fa15a GIT binary patch literal 1369 zcmV-f1*ZCmP)10+BJBmgANo90Z9u{N8rc#^TEVO8yT&9YigTUK?65CA|- zh^C~bwZiv%$OJ&&7mI!SSt4=YO55(&2+12#ilVA&D!@vLQkBxQs+3`bQ>w}`jKL=a zQc46t03if|AV7z0=N}y(KQi6-4=u6nodhT_07z?E3k!nOvO?inS6yAJU<{N}D2f6~ zDJZ2Ngn&$RD5V6OfKx&cFPAaRb)Ai4V_&V#X17dEPbx++Yjh z4c+_P&`@nw)7I>1YkPakl`A`@InFMX(z9KWNc+mMvF>G~quWl^)_$N+D#i?hdW0{?&B=Y6Ca9EhY{5@@Lv$hTl4Ec-=4~D}tj@Q-2W~b9dk5WCa zs&s@g)D{Y;_B=o0dG_X^q4#Fn_KsU70037}2qZe~{us}#)ZpEIaOTapjNNnG>aN(E) zYH!E6kzm|3R~)shce1*U<=O0^Jf+2=q6kOR<{Xbip46rEX5{nF?w&U<)_M7|8}qyi z165VgoMCJ@Zkp@*LLq(0`1nA(>%L3?_d1te|3r($U!%THq?Gj`&i9rSC9Dfk6aejs z$2a8+W4%Mj^Q>I9Rn8A4L!nDoO;fpIS<_$QfTlIA;czTAHDwqF z%Z!m>!_dEIZGC0Tvb6SWwwyDJxu;^WhLoZ_=2HqTB@RrP@=~Z&a{F~XRO5NtEk{HE z{sZUTovBp*PRIGYplO>knr1yTIQV04H2Pp5WwJe&`*?mb`Qq}CkrOs!p~I2L+9jz} zPjfzh_Pa#l@vsmlD-G!6!cmm0O=)I+p|JC^X^#4Y$o4|v-2!8yj-sRi6nPNPaZO8( zt7=LJfvdW1Q%b)PQc4rZ-PQn75*h@G1ZISMUnu}OfO~Y`XCeru08o4>i5~=1=e)={ zhcBfrIam2#cf_nTP;RgR(qmb>4%F0i9E(I=I8j~Qao#kwjIM7y9||=@eV>PY8-AI}idJ zlF99NXS0U{a21@N36)BsBbOUloXLy|A<&slUwa~%JXu#NIgPIS)9rUaX?dJ6ZJz6X z65%|uIFl)OlwP~T^Q?N;HCjAx&=-PaDZN^z^cT)KMj7)9j2%rYO2}obrqbZ1Ta+}- zr5RvqN3qxiVERM@BLr{&zysP3M5BA6ocEbR?C&?tha1afUSBGG`M`e%SedzjwCLJ}NK~VV((bs6C(0yaz9i}P zWQ!|(Lq>GQJ207QiLwMKSQ0{Lj~SH-BT3TfG*hx9eAQLJhv$lTbiGbct2QDv28glM;PESjLMHUE%GmEF(ic5qL@EHJeMKRX zVg!jm0%kRylvpb%aaIzeEmRe%Na3d>H-oB|;t7N_-q_a5sq<#^pr7f0#5WT}4+R+a zDGZNGCiP>&_4CO;U1UfTd3@1jhpUR1IFAG=iCv$c%7vd;l zeePkNEDut5w21Z>uG8-xX2Lte+GR^=@4rMKWM%*RcXF)mEQe03bPVkgSGs?kcggcY zvh!0(j&9_|hy8qfA%^;D6-7}v+A_+H(hMYF8onQ)t;a^&K$W<3adf^q5p61ly4=_k zy|nk6Y5buG_v946dAwBQTj(2cGk9&7%VR1fj#*^L8mUf1fLyvNh4NKaKKm&ffT!MF zj7t#xknF&j{tWN!I?J11C*luiR1^ql zQ8dxnsT&6r*>i}E(m1}Wm3<$m430kimrG=_t%V1V>|sY)HO09%P)rI99qWKrLnD&u z%abU$BZlvO2~+c03un0RW($hWPF=Wq4)XSyTJ|3I;Tl&E+#m6=a{zY7W|{3gFEbn~ z4d!o=cE{(&0h!J`NvYv$2OzUn$4i6vR07*qoM6N<$g8!=9 A0{{R3 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..51a675afbff796a05a3211112c23e3d9aa0b5940 GIT binary patch literal 634 zcmV-=0)_pFP)s5OK0o+a#L$;!?rd_mUc4j)RG`wN=`V_H5sK&-a}3z1%PCU`g%9w*uO-Aq89*3V8R`&UIzGD8Q9m+h{lDT1$6)dUOKW%i6Q^v%KOe%lE)j( zhk`;&ydCsZWO|`erh8ikL3zIi8f_i#5s&v{TmkuxxN6yQeN~vv8mQTIz-YFEPq~LG zK5$p1%mW)-ExsiKw_7t|od9qR-42Rgsva%hv21y9J^rRgWNAM%;~IcqH*l*v*7YHn zOW%;6PHx)(AepU>o9sMLX_fY3x*pc`dU3wLXWIq<$szx7GIH~hT?9(4^6}Vr-Q29f zAAdzNxh_=(5|*D`-ZkXkPe$%A#&oMYvY|n(=p7E`yeCUVuK*CvrVj!M0F%A|1jY2} zFt+r*)`%uFeXJ9J-0Tmay+MhUn!mS5!om{IFoq2q4T@et=xDp&bnI1&c?K*e$c2f8 zk)W7<7nF3wApfh);s?W{PN?tJ6cLH<9ka}@c752u>R43Q+cJLqIC%O*G UF+OUrZ2$lO07*qoM6N<$g8QKvRR910 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_js_official-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_js_official-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8cea37c863d7ed557a5789ba58f34a28a1b4c367 GIT binary patch literal 582 zcmV-M0=fN(P)saOhrNHMmSza*#@UNP*c8B@!X`gdvbQYEpboOr&T$d?6BVEAH zdgt9E8dG$%9%JO;31;WxoIR~mSdjYWi~%LZIsnseVqCp!qovu7uK#*3$(bBoWMp*KBF#*8IqNHW`d4!9N0lXjg5dtn$W&w~eRZ7MmOMdbq!pvNp^7;Vk zz<0AL2Y~Gz#ggBo!4)FkA^5hH{GM$td-{OU#||pXcbJ)rlWo&zZp@~)D;I!!y~n9K zZ!kK(%UZysraFsux1HPWRDcE$Su7c}dNNVk{oJxIg9aoA`d~vXlN8cpY2fel9p&ww U#^Ebs1ONa407*qoM6N<$g1|BZ>;M1& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsbeautify-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsbeautify-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c74986845c7b337b9e29b54e7256cd9c4c4333ca GIT binary patch literal 1450 zcmV;b1y%ZqP)vb|=freMX|pu?)GGPswgX=3CgK_Dc8{WZ2E zF?H7`HF3+z)bRlL=>zOsarF_6T@(~8W(CH>fy8830Qa?RWB&*Y$JwyyF7^soq5QXw8#-?$Ktl z(zrwl00Q;_f8>1al~cviBR{N4t=s#Yt{zinGC6|Q0DLy;swkXHRY&*5rMvXTW6 zy{lwFtX=3;^|uXiE97w+iXdR&Lc-VGu8z}PuJ11maEAei049ReYOP^W*#$*Ti8Szh7gshjgBHHk}Wq70aahqy(;`rE9qH+-kU7 zE*b#T=>@wIU#~7DC<*|yQG&?Dtpi5AeMWKsFvWv#=FbaSmY&McO!2GdEh+U6_wROJ z{p~{%07UWM@~46z?w9#E_;_K)*eGZK@bq0fX8q>l)r#yAbI5KTmiGMV%klOy@iC*S zK|4fK{LBehY!IZK-ICy~^6oL+Y@UoumPz7_3Ebb!H{E^Lj{$ffkX$oMRkz3}U%Vz& zm6fEBP@#y3n$cd%k&nVj)5%2ie>sYJ5*XtJ=(Eo`lQt-Usvnmb1wBL@JLl%#2hlbbyGLK=toFAudjn*D-^ z%Y$C$h7MJ|d{a$2t`RJiB94Qr^_3q=a~SoSs8^Yy=L9f#< zh&a^dXl@+hzj|QE6X1{BaIR>v`L^5O@u}o92><}NuB)F9ovmw$_<4jz?O}I&V?(k+5+6NJ zRZ8Ny&eqGJQF}Pz=P`8dXfxMy?aWMEkAqxkF51DG3pWCw_T=iCqF-iZZfqj}iZvH* zocJ>3k0N>O7EXm4(9Ta$>>>c7=`MHF1-PCxhG0NbeK~WP26K?@E@d9qfIG7N1VsUAV zg9u(?;$<;zYJh~qXf#GP69%Mh0NVk@Q21NyPygdUYf6G5Fv`1q`JV56PtN%cENfYR zlYXKg87Zrp7${%!Cr0KoF+)BRa04Bl4YBh8Hl7k^;;~sSor(=Gcj0RUov0Mh)evR7Iv{6|>L)wVi7P zJ9Citp1`*la7V*|hq7U|`Jw_mg*uR!!UQ}b8k`*Tl_f3fwp2wX=HeIJBB_WbL}&$2 zC=#K~?I;*B!{yg?xYD)c004JYEGQ}`fZ_fhhxlr4U-ff(<&8Jdrf|=Pwk^5rf?M=E zq&oUk!@FPfjW#6>Bdty&F3IVVvTfeyw}3ra?qBvG0l3K710ASw-XFYsIW3M|sx;*C z#g5^r@s$68OUx@x_4Veg79~Tz_2!`O#bn6W2$1+v;m?>Os$(;O6^9aelb_v=ZN13_E|%xrQAh^A34FwZDFA0eL_QaH2F{*k9M4yKFYH2CuOG@eURRl_KQ!ExgIgay8*Y#rny8wQ1&fl(0V49|{>-twh2nTSNQu@@g ztdms)1OTelY8gN|P=5sAH-P;WvRj<}nnW z!29XJ{p`*SOxnO?LD0sn4X~T+a={Gm*u&_TPj(&;o(sZ?Z7sK9X?OsCVxLB?2e zK`xiObTBS+f`h*Y*mL)m3Ne@ggBkGzJL(S1tL9PyO2YsAGeN)K2j_gL;4lV*!Fhp{ ovOOM;U-x>wwFpjWuQM!^f7-2-wY_ivhVtNe*QWu#TXcji^+6w+HOZ`tGDdvlm#+r4CT|^fK z%}7X4XT)*P+l5UbZ5nKtE($r@`=0Y~-uJ>kmH;T1%WsrYZvzb$;;>XI9jyQ;HGc=Z z4-%l1`T!hhL5AL^C%_ZnKLD&OJLvm9wOWlxBtoH30HD|Fad!3<#~BfgK4WX^C8qiO zj_Z z&CNAJ2n@sc;Zk=p9z62-c?;XVq*AG%)WVobE&lm@K4Ux{v$wZTC=|l?{hy7N2JGy- zrrC^R+m~pXhH08)G8q6Y%OW0+({8t!OeW~M&iZ;9DO1Y>G)=>@HnFVDd*7v$NGTtR pSOA334%F=q0+JBoFvz?=>N{hHnn*pE*s1^k002ovPDHLkV1j5{@jn0n literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsmap-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsmap-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d9a923c2f6d99f328c5be1073f8095c7b839561a GIT binary patch literal 1456 zcmV;h1yA~kP)f6+n_+}9EsF(W1*9xe1SBO!OvC~PWD6KD8p5J6$W|jr zL=mG60i%G#M7FR5Q6Ov;f?x&8CPF(iENy2B2y|xNES-7Z^#^vCVk*SM@87%ce)pVv z&bI;o^Pop1FoRT|s~32O?f&tN@j38kd3)0*NiHb_w1lKy_eIssUd|JdRiY6(CmaC}Bto z8Oag0E`f^-42Z;%$65oBfuD(KKt^7}c|a?Mgym6BhvDftDTz2>w?{Q*yyHUNBD}qSGL9GPn&fItV~dgsTAJVE6&_lOTO1Sleg09yp`sI#vJ_$mm?Z z;(?Y7Qhm;vP_>es^1|nQE#gr=ZsCu|F{jz+=An9=>q9m6Va?y68hcLI>$t*vpS%PB zs@L8V%pO~pz^yb36-eZ7P5%cXb3HZh4*<6OhMNEa;TokN1ptY91E@@&Cj^-oh&>Vj z93vuAdPD-9ARYPwfbM=Za*~YP^!Ax}2r~sE9*4O(7H{IAjX{<#9?CYi&z75P7Sfoh zhzODDXYFjqd`$!nwAqVUL4vUQoE|KsKvh2j9A=@U-#PiU%D)R|RMj(~A*A z13*QOFu>Y1SC>Nsyi*q3bL5w%RfGHMmvqb17390+<@fynkm0U9M}R9-W6wz$CG#aF z6r?1(;WF!WEhPgWNfPS;z+hz4y-@PZ;3ECBd2eO}<}VHIP3r&<;B}H-njQ9b*i6u# zV?jj(^i#c#YXB&c&=Q?oa*Du|ai)a_wr0&(voR_Gz^6;v4u7Vn@oaq{dGm5ja#M;y zs#goIW({u;i*f)@2$sGj;3PD9#p?EVw7UIyHCMG=&G{QP$Ce@?&mP!Ee|$x`dNtm} zm@>}nnmg0h`|z=*sY3@D#dsr4jTQh+4Vo7>z) z%2SEipREb^nmERC2!QG4pPD19t%Ul3z_W!qZQBnq$>ZY_1_L&)S`%8?sZU@_FpMj) z7{g>F=ylw-^(*s+%l!7DyT_NkpIMklFm~*X1$%atEl>9_=r-+)21g7rUfzE=-lceu zA+v*BmX238h0gw-yftK?!CBBnXWF_uTEA%7z2esD0|2tJ&}L$(W&dw`+s9R}gB#8( zyzz^ydu8)%8-hM(cK|eUsBy(NpSSVf`9opV>)`9B?7Xrpv$|xMX*%#2uL=O@p06u$ zDbj#Ym~YkHPVB6$MP2%Ts}=Sh-HekmGbpn$sCg=@659a;0pKrWBTDU<1x)S$0000< KMNUMnLSTZEnVU}l literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_json-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_json-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f4fcafcb8d9a7a773c20cdc0643a04aa7661f7f7 GIT binary patch literal 582 zcmV-M0=fN(P)|J}H&aGB&@80w7YE}!E`X7zDt!>}8ZSQP8?AvEmzF|Lo z>YdHKvmZy_Hn++=rfgUw#dDOq3NJO#t^#PGZ53Vt_ljEbBD#ThHuJsoO|-v%>$P__ zE4w$>Ks(fdrWier-UvAcn)-p-QozaT#tMLdpB>cECsCA8`mcQGm6d^^BW*< zG_EZLgoGOaf(~KE!ojuK*-HQ#M zDsy&k=`AnbzHC6ObMi|yx5ktz5wp@mi~0Hp;WV@~GsW(UJC8cg!J8k;YK zD*(BUPL~4Kw|{0p2qJTzeU*ZdIuOpET?`N*2zY_DSb(5w0$ybP1eI^8(n0jm(4_-a zecRmn-YK*Bp1m(34^;IbBA?1UrT+ti>?3?pbYBcRm75!O6g>bwn;-{OzDq6CAODKM Uw8%V2eE_KB>Ga)3%Vh7F?u-#~93u||Gj}Ke5w#E6Xzo%cm z_xt;Pf4|?k=U(`)ho}YKpNs9pSVs&rQ&;zjY@1Kk;^l8Pw%~eC3AlrBKMQo+{jQQ@ zRRYVmVsT@v2?Ga#PHSbg?xEc|zB-`Oz(HfIiRIZxIyW?M9cv#DFh(4b@!Ro+&g3r- zGYE7g=VknM+`!8~z_mPkD>+r&8B26w38lg7qIdV6~VOG`^%i7nTf09OcM|BDrw7>M73!QgvJsfgB^ zg@uKcnVA`PYHI2=rPPp8s;IT5r>BQPq2P-|BF8}71!Dhbke_Sa3u2q&xaUHl(2&-e zTrNi{mGS}~0vAr4IB`yEeM~7ub8|CNO7i*q9%t440@$8Uv<}uZ$R(Q3V9a@g794;79uJt#AV8`v3Knwy0J{``!p|xJrT9;3|yOcyC zkr$OxjE#+9j6n#oaQC>kHFvgtqc-Rl->YB!1QR6!!?gHB%kIN5ojvDIj?zX3=rvVy(vBQTC z-?J>spH8ROw;>jHZ1aBvybj`0rCRkxL)-&+=dEwDp-^ale}Dh)_4W0oor=Z9MY|*p zWQ;NU$1gT!*K0GCdes*VvjpH-DSC&8hbP(-F41zlQm^_93~2;l zxlaSXmf(SbfhAz7W>=ooogmg~E28R;wlvq;?J?#@zz5tCuILSPCFg7DKKQw{%@t-6 zcoZnEBA!t3$?L)u&x1Gx+%R=Tr)JlH>-9Lm4U9M`T=86``2QpR0HCZBT+793onRFanLl7NI$4Fp?Tf2qbU%R|G-i=F|{Di*PR= z*!*Lw<6?0xF_PG13q~0>Ir00_63-P*y)9dcDNs@GLFpx9|v`U&P5w-#Q z^W&pD9+&W@fL3=OY~(71dOLubeFI36B$(NedcEEcY|S|j&FpO1ghef|ZNmh>4q&xf ztu6t$`wH;ATCLWBT{-83q*T%yNypY3=JM$ilQ5h6)gbEX105i(O&}N1;fL@0MG?IS;yT2teDy2+KNU; zM;`!pBpsceo^H=?vNwcqd~$NqC5=n^B}}%d!sOeU@bx z-Ti>OKQ*%-lJ)^Z{Q3+pfV%+hUX_HIEoWKQ;qFLU*kF*R=}e_kIq&Whz|h#(*c>od z*zFe}E_tFuz^jpwk@*n9t$b}WjpEujt<`Gp+`Ze~laeNzLeewfl$puQ0?-ph(c8c2 d(L@t}#!nJK-}dgR{(t}g002ovPDHLkV1mM`DBb`7 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_json_official-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_json_official-24.png new file mode 100644 index 0000000000000000000000000000000000000000..38ccd929a01a876c5dfb8e5d65107c53e6833ad7 GIT binary patch literal 965 zcmV;$13LVPP)ip$A*M<&>)+ zz4Wk93SKM~3r6vhOWRWw?0OL!@@L7q8wXZn96=1@s_X9TOb&5|=j$3RB_9m$&Exmy zd*6KT4e*xZ+*v^Jc>Dt)#1$fXkD1STp657@v*fyN{{I;0x~_lA%-;ziJ|rSAGs3Y} zs~y<3{j6LrkGrn>6M*V}G5EwVjC;)7DT{_~${fW206HTBB6?rW#&um8 zxDVik%5H0GD>Abea;nvTowGz_ptj%P;h_u+R3-pqv)O=%f{^1lPCZyuqUZ7l^E~fZ zH2}P;5|hbff|>P@lgVUM$a-WzL^*XAN_?X(n5KC>oI{V*rK7005Zzmp638MF4*S=$e_C`OLDc zKZxjpZQB?g9!8;1Q1L&9ljt@b7#QHj#>Pj?oGO({7#|;3NdVxbQmLKx_V(uW^>yTO zxq6tV06qfX0n$~G&1Svs?(StG`nsv9Nnc%ERofK+w4I$D%eHN7Z*SKVF9GO-)Yivt z({wt$AcVNa%;mwsL1(-|8Z)2FAWZ;pAPpfJJe;(=00000NkvXXu0mjfVZgqZ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsonld-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsonld-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d325f4fa838d4e1df5e97479cc96f783dc1d985d GIT binary patch literal 918 zcmV;H18Mw;P)$HF2CQoA>=rz1#P`Pk&sC-R-WVKg0K5 zpU?Ao-p}iKzC3*4s{Z$q!a&u*#0|!0C!!AlKf8^wwWZ8ZF zn0Z9i_Yqx#>Mrni7A?HGJyQ8-$BhBa45Jc5^hZSYg}UMoUIBpRg0{O&&3$g;vnLDR zYoG3U{ngEPPu#ZH9``zf+uWw;;EeJbfQsDpuKS+smX0l$Y}4PtgBP5U{~y zXl*s&hQ$5hy0&EiRdtCq#;51>gwqFd4p0$!e)3S%aTZ;^lp9{`(g0Plr|g#8aps%* zlFNr)*|6g4nn?Bcq562*h(0If*$3Q#*g6r`fqv&}8soQfE`V{<)|1ZREt3GoN}ohX=C`ViAinrI66%iY zb%{jyZ$Q>arwH|;90l29-6?k8&{%ftY--jX2$yFYW-nR4VhJiWbL&f1-U4hY`1zL1J(_+|#azW89FttXt3?m<}ti67Rg{=H;?2qkdKijy6 z!);X|$8tg6bsL*snp-n(i!O!I${@o;2eu)k$(ZN;WHzCx8Z z?fMT!%z5iuEt`>I>z%(v?qUT%W!^6Yz#WJV-n688@P)UJqdFVaJBsBN2aJw-z>MOT z-0R`dec%^_Cl++ZZ=tu>Dm0`9Vn@_7w}Y%# zPnT6}3M9qT%>b6j5C04R#P?qYDfcZ-g}u~pu_;ntJaft&h<++jvuZk!aTVRFusgLO s+Fxq&d0KSfzyiCwJ#xi{tNO3{6N3Xfm<`KU4gdfE07*qoM6N<$g5)m2WB>pF literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsonnet-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsonnet-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3546b3fc9682375168c4b71b16b3f2b1be9cdacc GIT binary patch literal 970 zcmV;*12z1KP)iZ9g_U9c^yh_#8l--(!ie}FVf!l+rj~@oo+JvTL`rm2>eIZ zbx@y>);{LbkTG{a>*=R3wG*KHv#s!M41wHEN9ZTJAPZ7o@7jhbyXIjI5CHRg_Jm)w z3o|Qt?MwrLFi#kz$2iU*prkr%%5pgd4fEmY`4aWmhi`Rsir(1$bM-4KovM#=uDE1|4m;{H_IzlGcc($ z953e286wBK@3x2$t2P)j*!$TPc63~x9$URa=cR@k9Qyr4A`xP-7;DPl`G@{tv-egZ zK**br+XI=26j=jtBR&1x+y6VJY2tC104($Q={y%DF?O5GFiq=jyrXB_L zaItpHBZeqlT*HS?Cct`B9DZ&R%w0h0f0(B*)yp~anE-%}=CcT~bAgZ)g6$k_{?R&E zcptPkegUc(#Em&yD+W=bk@lvOcBv2m*-GR@9f||9fCf+;K$~30k;d*~3A11N04?EK sq}T|`hZF*(Mo`*Cj)bCfntw0j4xG9Sih>==^8f$<07*qoM6N<$f~8l!WB>pF literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsp-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jsp-24.png new file mode 100644 index 0000000000000000000000000000000000000000..542093750eb57d62aed80a924096aef937965365 GIT binary patch literal 803 zcmV+;1Kj+HP)FL{Nl<6{!V97iv-2!t`tmQ^D{8BHHmd^M5Vsl-g)!ZhBY$KmYr_&-@=V@IOi` zuo7!)BIA_GZ|$&6ap`q^Rh%;I09C|fbYBA5O<&Toe+KBSrAb=jZc6M;{rc0O`v82K zJOF3PaWv~jYI8f);u0MnlNt}z44gYWhQ>F0y4T^tSJGs#yud&Q2@Vhpuv3ZO(SU3MhE{Ip!eM}MJfRp9EzGxUtDpL zgT11y1d_*p^R23K4X}vCTfJzfei~BKqJcT&QDQwVK<_PFpuVXGvQdo>H@1JoH-#fTwj0h0hz?k`b!S3= zR_A4^6?zD`fbTW6zg5p$J<=ng(0gWPEdDJlT$YVbdJSVrh3k}U7_w#5zYk<|}o z%`aK8LM>+_$gE#YdfeXh?AY%U3sBCYb4L(46?6u~K;5}kxI#pEsxAT__?U}#=6xAH<{MaM z9wh%7@2@|>0u28$AU{W6f9qPrk)=8-UNB~SDg-)y)-(WGjU3C+iVF<1woj3@YY>y!4Zya| zdNgWW)fYy~tIs)V%$=T1vu76Fl6j~?t`g3n41`R%*2cQnmsBfzDC-&5@hG_S>H->E^agp7(wmqGK7V%bXXt*H-9EtM;kM6f0hJG|li@}j_3##+O& zCYPiG5K;nC))ygCGzeM#eFVa43J0*ND3C&W6Fnzp9xabicKHB+i2)Fb0=W5ZolXyx zy`X)-_v3|cBJ__yN{5@%gId%1qF~{*zFwWlJZ2|fYGvUj6Der?RuuU7CH>NVi4uiq zm)NzvzdKH~-5sp}fMUBfKQQn>4-aKYdtf5?b`H+-c!C^f*Ec=4`U<)2CtL43F7JGu z$R@qK4$VXctcTDRU5WOoFeGjEJ2<8ZwZVT5v&~*J?qEssm{BSlJ vGDRn|(JYxWF8L?6pZxB$fT%d5&nw;mkz!#2(b@R300000NkvXXu0mjfgTS11 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_julia2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_julia2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..73355f68b6dc7c22c16bee69d0a98cf79be2536b GIT binary patch literal 700 zcmV;t0z>_YP)SyXQt4^MOd36!%YOKv}jpLI~Nf_5eRO>MT8X@ zMBu_u2&IBrL>NU@AVe)PnF*o9MaC4QIsNg!)23(&#{ylIXLs*;_ndnl2Ux>DkHAU= z+6ML>X*{%LB-y?R6T?%_e&@|f4Gc_E*a=sY*trzX{Ng~z>!L`^IqbpSAL&U<6cSA) zlMTM_XNI;V8fQxUimNSNaM$w=uY4|+IeKN^aKQ`Kmj_RjL<1M1j=5AwJRXmCS!-Wx z4TqcE;-aC=Cf3(Evi)O~v+?4(4UxhAV|N?!-#ht*4~%C$JDJPjNg)H0jwDQZ-kh@8 zM;4~UH49G{z1)};9J`o(TkwnO>guAoT<#!%uaa_-Y5`oXtgQSpJw1IAz>G1bMpCz= zR+7G?`gA(o6OYH+B{h=_NE%D0(*pqXONvTMOLs`RN%B2_-6T7$wSBX*v)N!UI7+gD zstXN;)@Rw1SU z;JR)KK-lxVNs>+ZoKs*1B&{TbLLn20L;{}Y6*TZX?-a>1lG;c*0QUdU0Kh{4t=8He z-}j4`yFgNeBuKVON{~OZv!sEf#Z)SFK9NX#u+}z^yd`NAzzoSLNehx*k?bP*X?}kG zdNdl%SZgato|AN&%WBq0D(ZDUeZ}fp8?zn ig+kX>LwpVY3BCap-}E6F4&}E10000~ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jupyter-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_jupyter-24.png new file mode 100644 index 0000000000000000000000000000000000000000..cfc846909e12b265227a17b39be7cebd7001ca7c GIT binary patch literal 718 zcmV;<0x|uGP)1k$bt|Zn;@MGx)gbd7D3cOh$uuyg+vg-+^7zVAZ)SI zAQ4~RoW=S20L&9aYGJ(!pk(Q#E;MP$4LURYe}?%q?G$;=D%4-5=kO9b4<1s(%O z)@eSA5c_H5c3t>Wa?RTnFLZTv9W}VSHnHh=7+rN-+B z$G>d|07wMg7epCB83i57O77*}hhLV8eaV2UMa1S+)$1r3r(^k;gl1OC0v2vH)Y>a6 z`cb`G9sWGARs+S-P@6rOp6L|jV0C!%URiUZ*W=NfuFA~>7b_WXwP-umR?hy{zof;W zyHP`JTlz*V`dv-MQ)DYP*|H>3D>K9CK;z-f1}jK1=xMhs>5x%!g?nqh$*F+nvZ7B= z9Ta4&Ds5g%G@dE;t=w@RTFuF6QEq_N{Muz&_l4q#4FLd&fTvf`K0pMPRdpJX??4ij z{UTbg(2x(AUNz=a?W6cqaZcGE&T_zg#y}KkTE}8kct)0Zvi{5-%l~(1-u68M*si-07*qoM6N<$f=_5a Aq5uE@ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_k-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_k-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f6ce0662d2e44d12288d52ebdeaf29ef9273eef1 GIT binary patch literal 528 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kos-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kos-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4867cb87bcfe5a23b089ec1c7438b79681af1b94 GIT binary patch literal 549 zcmV+=0^0qFP)V^E~Ih7uvM>?~xY$3&2PN zeH(Zk7n!lS0q4BlUrXJ0vs&B)2wE6i1s*lfmt%uqbnd#dvIu&t-m8IJiU++G22Js! z(ikd>K)hU4xM#|f8}UqXL2#{f5p)=&JJ#|&4CXrazXF`_f9!Qvw`u?`+bb_B`6Y)7K zCWxlR0Klqy6Cw+W6coa^Idnc(nVIOn4DjxAl{?ex02u4~fGUtp?HbNRrT+agAAY;w zPlRDuG{!uxmqtXY0G{Wq*&DNWgFRgWxstpPe6iLW;qCozvDWk>8)IDBPgQfOnzPn+ zvNXAS&>^=#*HdZx0^cnY%_o=r(_hrc1SkaTKI8Utzi!%;Q^45<`VR0ZsiOI8D7A4^ nlYJ)eS6P{;{C)a1ZH|nedfkhl{@;s*00000NkvXXu0mjfg4y`4 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kotlin-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_kotlin-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d3b750ddbaed2a00e35d78470892a50c28b90bc5 GIT binary patch literal 524 zcmV+n0`vWeP)PDbpD(H0c7)v|A090cTXsZj8i@uH5U=z>HEVnx;wBk=LM7DYmJ0I)x$)j|q3~JuasA0+)H9iQn$~&iVg- z_k6kVKbHXDt;q(Y_R3yEkJkx*V?Ya*x}#gf$IrA5=>U8fz0J89fQ#ke)jmOYi;iz! z@jG>1oqH>)78sJw^kU=#;9NQQ@wP2^omVIHXyq<=tw(oyx#P5i#0{^If_IKK@OJk> zBK4I8;kyMzByKo>VJYU8v)s?-NUv=cgclaLByRYAuTIQg1;D41Y2FomM;myf>mVJ0M^Hdjg@(Vfg0pP_PKEtES>xHG0C@0T=-tc; zBX(~oNM_bp+%UNLAnUBfFctHEXIb1Z$gJmfFhnVVUC(^}>+lox;)LC6LQw6|Xsq#a zpsIq|r446pDh0sxjB)jg7n`3h_=3^t?m#>h`+7Ll83VX-x^?jOk~M0dS9>(-efhP# z9DIz!bv^(GzL`_pU1qM}ibkiq136)gp+vt>)@Szo`%}UGTZ?MMUQ5nW%q*^RZ{6U} z)lDbAX()d9-DG7=E$tE{Cfofvj8Py2q;d0bbY zrSxQK+6oT&%02GB!b+jtW`UdcWn9z0o?DpK$Yt842Nw)r?QgEp*0|!7% z=$h8o7reIQ1{IS?8~*TbX;N@Q6XMuFbZQ}SfTe|j`aImz_k8&3{bKNPFCjkD(UX|&I^>>@%ytgOQ%~(L2X;M1& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_latino-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_latino-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6cdfcac7cd34ea2f2bf3f4e8759516cb3eee93db GIT binary patch literal 960 zcmV;x13&zUP)kQyaX%F0B$Ap`>$+9^V(v4EvataLtrPN(zkaluDQ>6EsCv-;=e z-rw(?cXNR|99|ouJwtWwRMB@!p(Eq3wiIr=008QGQqf`=ufu``Z}}JKXqa3y@xV|x zmMg9g1@_E^&b6c01vNdx@t|CM9F|$ZIt1Sb_(6VK+o6iEH}@qxdJU!cAE{W==4RvA z7pyc|C{^#pEB6&|YEbp<$$MP4{0M>PB@TdUGC)2Oly_yeue&sJuh+eQlfaJvT|y+> z7kMz5ql?}74*$Z;edhYKONO3Asv6)a5VaH%mKdApAMFZt_wKmy^Z6-+jKBnnQ?{_x ze{VK?mVoy1mX>q*yZ`;cSo;fzG=bBgJ)}Tgfc((gy2tyD*BkXS`S^F!2Nl?uaGL%}Y)~|ZPyDRo{ez?EAmgSjW^E zm5y4|7Je$yn-uj@&2AnEMw7XT>jZXb|rnzUm}5iB4gAY#W)E0%KlmJI+3 ipip;wVkv?uL%y1XBfk0h?%{wLXEYq%cVlbqggRB0hx>6p<`$BeG!h z4NQ~5poBErT8N3wA|#3%W$(Q+$Ku|^KV&zqd%-5ZYR)}pe&5_P!weki0Lkv)=FH5f zr+Ypqm0=7u@I5Jo)kfpR)*j&6boI1Tw+4(3wcK0+pIoHp9yOXD6u_ywT$DM0!C0Dx zDnJAv!iX7N;9EhAV~0Wz%B7oR?#FT(xC?9{{E&DA0d`zh*`um=+tQ9A>GJMxUQ zdkT?DS<+q+mD~9EDgZ%RGQY7r5CGu{Cf5OolNFp!V%*PiQX@{*QORTKz`lV0*CH%D z0k;Bx_wR}LLU372)W5~Eh2$~*-9G@>#)VA)%H0@_cTm5XPwPpvF!>5UFT0m!cCR)&wI;~tVayFX z0Zd@&og9{FZmxQ=l<0*b9vn&C>&MMz&!c;&-}D1mDU>>8W>i7n|7 z_W?j_$bI-MhL+tl;B!1wZ~zr$oTN{iV_fv`QiGH%1po)=cqn?)O=>gBWi6=@73%zo zacY4B;d+1p$PtL6o z)CETxWS1LIUK*h}f1RD-zy$|}3HhfUxiUaHue;=G%*g4D1zp3GWO)Sts3en>cxD9u zWFE%$2(4C7cO*HYU{i=HWWTyhNJMsb3T^s@hp)Z{(1q-Kd*jE@cy^K2?>3`1B50#I zA5lnobpF*$3YB@Y8UGQ%-zvB*LJAUai-O-#V3bkn+zI3l8Ssjfx!es$2=KmK;5;`8 zPVxIdR1MIh?vY5t5}2*cAPR(A0jqIv8LO{%&^Kdowz;nJP9z(R@pHcr@Q+mNRZy^8Xwq- z*<+r;ftEE`!^LuF0lBSN*$w5Kw@qp*tN* zk--nt|F)YjKL_L=1d6{0_)LM7GUCY;d6&2zW%9#NZODcd5+`#6zLX75OX!iR*i?TM z#YGGq9E3~m*OuJ_cHjWL&9YY9#;D6QkPQKF5iZRU_N4<8M3ed;T$yoyFd#ev=yxtY zj*vbB0F&_ZnXAh~(>1SXJr*yBE|V3ZSs@+j(iVxEBJ)m#JRd>RfUMCG%*xUb!TIK4 zxPg`#WPlU>)dxtJ=R}v9==_#K1{=7;R5nNFQ3|dzm-Cm99PiNXy^CV~z8*_Y%MguH z3o*K9{VPC0!NHvobSXkEN0Kj|#hx82t!_hNv{6ZN(qYh)91P8JfS$nDtwz!niE7ot z@)}IN?H>Vd>1_$oY$I6{iFPVDvjGds0bnKSniBBG8ReI|iE68*YCZs{(_y91rbI=9 zIa#|eRL;I3;8kpIR8Or+9Iu&$;|XYt!uq^b3-6MLCzYfjDz#mmTC&ynsRZ(VbRHK? zCfvxXYqSL`Qa7r3zYqEm&sC&FUbkLJg`)Zh7OI)t|SC94F?C Rs0082002ovPDHLkV1i4sL2Cd2 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_less-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_less-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9e1b38ef599f1a047642234984c5e6b15f19e13f GIT binary patch literal 802 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_ada-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_ada-24.png new file mode 100644 index 0000000000000000000000000000000000000000..02252d394f3c0d50b8096f87292b8b881c1493d2 GIT binary patch literal 828 zcmV-C1H=4@P)-zki*an0RB%wI&#&iP|DKaMDtgQmDqFSg=LKh)Tc;rISt^ICJjA zIxQ$wu_}R52O=W2gVKkk_-I8G6D7tsB-eygG~VQ9uMSR9PA~V?UZVs5(cXLgd;RNi z&f4%Apyj`e_7Vg-U!_27W?5iSN*N)gf-EC7~NDDW7FB<(0iNDDLo zpHwK&B54^g1Ni)T8PZyB>fD03M>QOGqb&tE=l@R(!LPF0N}t<;MX{_-0NDuy$ewzkWHta z#+neqDKo>}w@Z3|(%|lCUSm{Mf2XdsYoL(7eJ`Ke_pC0vJ|Ci{#<-#5^61dEQHYO?(2awzz8J}WmXl?jP|OUC6AkCZCq44KJ-N#?)Jr*6>TIvDp{i7?pr0T zlypeakh|}8_g#|q1DAmBf$zqj{E`92A^I3q=YZO%FjyDa%n0cJCy)}sjR41hr@$6T zn<$5rQ0?;Gra0uZc zFb9|h#FE|w-ZiuS!qeZT|8;BCV4PWbgY1@(+K{tnxi7Dl@mUh>X4WO?rldhhJ!bZ` znH>SPPH;Yw^phk9+XJktM4%L!NdAp9V&DMK1-zX$yvVrj2gWAWvw%)XKS;`&nFDvy z#(c*B literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_apl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_apl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ee4aa2f94ed4ebd2c9de8a5fda77dbb2afb889ff GIT binary patch literal 482 zcmV<80UiE{P)EZ)hiNwaj+AjV9OTZ=&8^KcSl3MW5iiM_;5Gw@> z3j+z325bcpAtDGWsHnxxa%V5sT~~L-4-R~1=J0)I&b>3dGPH)M8NTCNt;E}Lj!Sgb z!e9}1Ar`7F-i@os;0ArwH24vT7h<(q;sdzNFu28FH4HX0#0#V?cH`G>)u}EYaxhT(JE6P7rD&By9k-$)f!3W8x_R*LnRR4g%XUTuQhMkO> zKlmAVcQAbvnsFexQ2k*&eFEsgbyz#Zo5!5sE4l(-!d{7H_OTpzJHC|bz6B?tqf5Mt z_Oea@9k>YVr)Vp6f~lxrPJUG7a432FS}+-J#$W!e{CEmD!FZGpMSK`dQT{*T6PU$O zx|4YiKM9q_Tw46S;^+9eagAP*5uM><+BJnyOb0%LUuEh~V}s)mrBEk-M_?VhW$IrB Y_rax-)k2I*pa1{>07*qoM6N<$f=DgUg8%>k literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_babel-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_babel-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6b760cb972336829342c197ff22e75a832a6d7ea GIT binary patch literal 644 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 JPDHLkV1jrupO63m literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_cloudfoundry-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_cloudfoundry-24.png new file mode 100644 index 0000000000000000000000000000000000000000..32b3a6ed3a37e0a5738712fc53c9ca89b557df1f GIT binary patch literal 1003 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 ipTMucZ||%6KgZuXBu$u3q?1+v0000Mc{ zK~zYIwUs+)6j2n0zjG%NqU$1NB@sm|viR2Mf`uZa$?Q(R5X691irR>RU|}T|f?#JM zK2WjnQOI_I%w`O!BBB_Kh~Oi^Mu-|>lc;P~a*vI>ZYDdEMetNJXa4j3_uRP;_|GBr zh&<2Rsj6F4wZ#}C*4nQP4Gkmx{r&F%{U?Ktj*diAQ`1@CxT>y;kbMx58;L~XdOn{o z)otLqZl~io_f@qe3Yl$ zrvR#&7Lg~O=ee;RAEH z@E{5f{4AA9H^YWiaDb)O+J~7;X2}ABVzGD*NJYR=)vH58L*GK_)*8~ysZ{F7JcHie zUI#c41qZ$~Ha1?WkzZL$EFvf88B9-4?*UfD7~JXW>znEB?q2S??#8NoLxg^p=Xq-@ z2Eg_hIOTmXJ3H$cV{X-9z}(zid$nM7oI!a2j^liB9OnQ)Hk&;ItcfZRk=BZVh(xWN zvUpP_lUZV|P5Hh*mCNN016Sf|j4=X#r)YAK4jP-Ao7V!kuDcbu%_8TRwRWOnpsFK_ z7+{RqrmC~Xm^`p-5xH7xN8!&DC6meLGcz+&#Owp0*BJ9lRX4_H$}u`PIQX}Nd_G?i zk-ISkpMh3YJz57G5xG`=uIyxE%w=FIq9!*mFwhCSsDuA{a&q#1`K7XY#>U2q>2&%H zaG1~!6p@c@ZEfFyQ-qG{P<&U_{lmk<6P4Pq!t=ais(Op)LoX_RsOrHW2nMQ?3n1g; zRVuc5Cp^FZwoFQfI^}0SVT6c>IL9a4Ew#Ro=zr{?X_+*sPEF3 yuCA^f*4lOvX#wV}wG)oxjQGC)p^p0h8@~bL#`GsinH{G90000ddu+cC55 zq4G;Jds`-dF~()p^Ye!ElyKvhT6U-AN206v)6)4DJbSq9b* zmG;Kt@z+_s4S;^X|0>3K&&+NB`_8$$Wm$f%6NC_2z>1mO0iLL8IUEkZ9XsYpDT-n_ o#`tI|dr%Zb`=5o+nREIa02T~^;Ig4c7XSbN07*qoM6N<$g8W&6VodF4AZr}SMiJc9vUDX_Q6Ti=K5P|6 z^g}^GGK(5p=txnhlryaiLXaTHAZlS{q0OlGYvGK{j5DL<))y|^d%p8M?|aU@_rRK# zk>o3SyG=0SE9o zQ}JtQ%;e2}UqiE^J*$8xrH-oi?LhA!fO~NiZO`4p48lE8h7eIztwuNv6la+&M$9>2 z5E5Hd~4h(f-h><$B#2&r(qv7y{j#pv=q_ zI35!-!z!9)U>u3;t*`EGg?``kIqhKabAXjqP#$*43#oqhdb^%zoo?L zR=5MqC9c~=@gFy>m^rJkGdW*iJQbeJ08G3K_?qH*d17j|DH;x)nJaKgj9p+y!l9Pw zBD+zAtEu4(ay=85^&M2y2I^3rr3cVq)GVBwq6dJ3=^(i=5`NmYA_D+VZJ*W^U_7&uvpL!yx}`!L@Hr28T9iv$ZL29899Hm|`u+aG$$9G}B6R}W6-3aF n2rrG}diZ+a$+zVgYs#y?tQzOJP)yjd(XX|W8LGO)DIT>?6ueauD#Cw!@sV99%8Rx9u2f`*w2NG z;~P%GzDA2(2~>{Y+uw@Tp2ZeJ9h;q5sI-r>?k5-gnqPjnIDxf27~l5NmkOO9|fq00004q&qCzXUF`$SDE_?>X7ZAE|FQV_@R$VB#v~=T6 zT90c&K)A^3~ z8{>^1?e?ZoZSM2;-T?%vnbd%^ik!QrBKHA&5UfVl)&YsE{aFsf<>9`HwO`84Elv!; z`v&kH0FkGtJ_i(76}SRWC=^14Ge%@>Vn8#F--+s*1op5Q$IlX29g*tET&_6N>n#8T zsvjp$@Hcs12QWcU6V(NQuj{SWHYC64VU;na(O30&UqfUT)epnoR1&PWTHC08LZk-F zW6X2`0EnyrHGu_^?|&eGLJPo%*uDNz2hJ&+H~s#h5_|?2sNO9*cVp;bdc6h^0P#kr zGdiFnfEx2FS$0QO#&nX^@XlNuzeePxh};y_sL+bU8)^>K4&=hZYk{~`Sb Xw!x@i;|YG=00000NkvXXu0mjfw2~M| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_eleventy2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_eleventy2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2e8e0ee4f8030cddf5d4495f3b11cb48b2937faf GIT binary patch literal 438 zcmV;n0ZIOeP)`>SKZ(}eP}5lJouWS0dK*BOimhE1k=>ACkyaEfq10a4?pHu!%sL{Mz)T(UwzX@< z`zxRw42Z2=jg2`KxBzA+8K+UyiH+$gk!xVCN@oEQt-B&}RHrdOY|MuD{1uZOW?fe65Y$c5lD@E`huoEAR zU?D+7u<(Uq5e+C3HEAS17S;#47H1B74ZC+2w9E&W-JLu0&3tp_%rcJ-sCIZigdPmw z7+zxs*5f0N<2`z@3iYtfq6U=`@^!e5g?Ntd_=(;4g%@Z9`KIt2#~{|?h^Vd|4&qgi zZo_1de~k)vg>3}O!uJr~gu=x|1qbjp0y3WAMpOvj&>vMdqPT3UL?OLl8^IHd<>0+o zFegC`XG;{8;czG{ZP9;0F~LUcjAy7r+-6+TY+qYshX*)?{ZdbVbRZv>CS?$haK4>$ zRyrH9Gb3%#HTZ&2=`v2?UBr%J zOZeT9hGZ<%pP_tJOiKR&72L-K+ze$~aSa!7H++ub3eMqi3GZJRD5&g<&#Go?v#m#S e3bSn<-Qf>@R9<^r`?JRY0000P)vx9_z zAt83?pr`5}K~NAn5)_hlYV>w-6A`kt*=pkQt!Df4?)`NzV~lOGXcQMGK=r4H=VTikAd>d`b}jHV&jUzZfgg0Kz9flG9SZk+12f98FqR5?xiLNPx#!4P zR!xv_xEA4uawj)#ckpLDg`q^WsOwtmcZOc>vh9 z&Ft(fBO@b>j*gPeX0a?Q=#t>O-zIqGja!Sq%|3YAy60UG5oaqL5e~Lj09aU9pin5V zva&)xpJ#1tt+4~N)?dL6x2RFyzn^b@;l;!|(PrZnE_B;P;bABye39 z&+{5bXC@~nUkgp}?>cqq_j>&Ft&1y*eurnvmyI-O)4JK4zIzTRH%7Gy7ZLf?b=}t+ zj7KKeQtIx^z#-pOk&g4FpB2dX_;^!mYwOEEKVW;FH#apk_3Iv(k6(WSKPjQ9K#|t+ P00000NkvXXu0mjfE4Z=& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_fla-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_fla-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bf0b645dc78955806263953f218ec68c512c7385 GIT binary patch literal 745 zcmVXOjzxO-$9N1upUm#Ln z->RnDQ*5ErmFBC9qmu(G`2c{nZ*FwOJ(L~jTh!>VExm;bCr}07kA&x}nBrsFHp zJv>Q3Y)*NZfNQ@z?sY=w{SLZ@n>tg>gJr2_w|3OEuPNZ&OmH>RqLCzQx8Re#dj7l% za|)Xbti1slyxP*x1j{{G4JXTBPY@o&;eApWv%vv|lEOACKmXWNj<+%uZ38~9DzM7} z5vVlaaH;q9C(2=G34HW%;D-Q!>BzWi5KEJd0eF+3^{K5rAk4WQKe}9eB$+7?U#lr; z0U4hB09?)vL>lT&Arw6ae(-Jb|3c9M9VPH6ES#&@Ac4-HHoE8!rG;?eX=V b{VV(dimcBi44m0800000NkvXXu0mjfYa&Qs literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_font-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_font-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a793b7a8384fc8b6d6512544a8269dc18f0375df GIT binary patch literal 484 zcmVz(X#;_d;-d=R@TI`|^``E$F0^Cl#!U&$C;yek4@GkB%k}3xB@P@;-inX}E zKPz|{zT;8I-Ql=_(iHCoeueE0>SSkD^}hs<@g)Leuo{jJPH|_kfJ!{UQScfwgi^V9 zfkRATI!<}mo}c3OV-BCuj`>t|NZOG`3%W3h<&^#h?%^SB<7@cN;Vycxj`2JXK7lc8 z$?aj4Y`@=x?taLxQ@rueHOun@G~o{>3nb5M(^gc`6Y>(O(Ti`P`+%2e=V$mE#sj&l zHi13aE%}W>d`js)O4@Xc71TgU1ZcpmRKPvS=48+)w{4sF886?K%&Z&%~~-dbtK^c0000)Fo$ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_gamemaker2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_gamemaker2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ef2ee620c362520ecddde1d90b066fb1149c89aa GIT binary patch literal 316 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjoCO|{#S9GGLLkg|>2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt(4#T^vI^I?qnE<~w8{z}ntn ze8KUD$b|y7K9=x@b$^^170NvpC`?;(LM?l}?nf2z!Y4ED9*X<1dCCDL@fx-{jn*4Z zvDTMsuUx{vUG;QK!Dg-A6pnS1rW`oRxVmw9@_)87Tc=(>AQr*gf5Wfsfm)!D=A9H_ zCC=7v)yMMfwV4fve%Ud&pLEO=_kI80Zi!W=i|PcAD@;G)wybvk#B@u*@!`$&4YAid z=W-f!t-K+Ae{$mf6|WdgSpDQGHqE>+J!NK=+a%UJ?<>JNnRYu4%?avWC*lM26oaR$ KpUXO@geCxV8hgzE literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_gradle-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_gradle-24.png new file mode 100644 index 0000000000000000000000000000000000000000..20e7111bfb58c1d88ac8daf7cad921170d3a4182 GIT binary patch literal 704 zcmV;x0zdtUP)Lo zK~zYI?UPGL)KL`1f8QOSXc)N22nCBG5^_X_nn6OOO}I&0v}h9rwJ2y8w25%nB50F~ zBHOeHG^l71h*>!!VdEZM?YX0wOF{Y!bNd|5FHW%(W=X=}-tm1z||AHhG zj@6r41CkT81^tQJGqn}7hhq`J9XX8y5#XpwN^>kV)B(#)P+ObF$W%VXS)+7zPW@J| zt}Y^({7f{OANtN+LlN(_jluZS#RV#BY8=5qL>;Ic0ApO@v0?2#q{}1|FXoTAaP$P| zJlJvH-+jR?#OAZOc5zr|Y@Jv=`|N1YeDx$;iAbh ze8|)&XjC|M&meBHtr(2}UjAX)Qzj}Za$I&%i?CLMtDu5e^V~PAG$YZ3lhu3EHJ~_? zM$i-VCw2ff=ZIYP+DpIz&`HGE>FofsCNpk;He|HtdQ%HfG%x;G07n3ulOR+XZ7}Kj zY@am&Zw13%?vSvCKOUMfE~ouLU;Ji9nrVS>?2$qBypgX!0n2;NBi`Iz2D-X3H`9aL zca=Lg^>P^`i{XoRu8!WWb_dtq8V&UYPyL}c+>_#9eG!56;C^HT$CWj7%n6E)(KvQ(H8Rl9Sxa0`r0*@TpF(M>D`b9MXGNup} zkrho|?ZT%sa`8Dqmla8qD(wG|JV}Ikdv*wU7Rl=~vRyGTW)o!8*U&rE+XANLRc`VHxxetJRB2d(kx!U~>YhjuEsn z<*G0cyxQ!v@i=xs>uuQj5F={EN`v-TqOGW00uVJ0B5`12BEr0?4mj`|pja^D)6a&! zLB$an!z~dFt!%K~eQ+p^g4`{Y;d*Ww=q*=pqVwV*$1xwM@l^q1qKqS2Fd}C}Iag!t zAJ@1|6Qij`55N)g3t<7JG1wq|Q&0Q{6{-8-SkDDj@x^kF#xuKtMF$|C_2*on9ih5u zgwb{60OUsohaB(&%q)vaEH|9_1QqHN!~TpwyxNLB4|2GwK346AzFao*qBLJqo*La7 z;HYTlH-)N{FjqM*3xuNGXI1200L@7ozcJDgV94({A8#oO0)(U82SMI~)CKSqL?xQb zX4V{4IF<;b=4Id>VIIS=eAb`y0P38=!e6u9){UNuJ`G3XDU@+__$jKVQN04PEpUg@ z=(;qND_E%_o(2*Yk3)|#YZK;+PUFa z&vjI8Z_KdVm>S9448p9hDZ23oNia(`%q{>w*3ApRRg`P2>kU=MYR3LYb0numb3gVQ&x#xS%_nyl=_wv7t1=NDv?^fd8);x@x zVSS)m1XsG1sA?1yY~pQL-{}@X&tJq2YM#IePCJ2T@iEAq3fyhH!#)}jr)pf~WQ1ha?LVE5r}F2O|5e_*!)_pK~0hu~V!kJ{i46T3f`pdR$$ zHn@?*KFKAh1$_{=DscD8;&KQ+B=$?cKQU8y66`~)M?kx4I)sD7{|WPWidQ&J{Lj-} zcIxCA%?8Wq9i7bNvM? f*vQ=QKQw*<-U)P>koZEl00000NkvXXu0mjfszlxM literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ad383c3fb8b87d717e5534bcd78b3fefa0f500b8 GIT binary patch literal 649 zcmV;40(Sk0P)@rBpJF`b#W1;gCc_d2cn<|&USDR ziYS6~bW>U@dE=0RRHdoK!Gd29RFamscSmX)7&rspea)r6y%h`r|@eNqE}t9lGm}$mWBZUCS4egmKHh` z&I-H>zxP&+xn3{ew_DLi?dvpuC@x247Ms#jcO#{R1TYPtNal|KeVW*9{qBd(?-~Hm zTvsa)2T_Mdiz*9z6oInKCK+XVj)GoA7pf!X)Fqz3wfas!k zQDHbN+W~qMYR!T1NY!5c`+mndTdXmsJ&_I#DqRP{3| j&rP~8@~dx6|AD>(yG+b2V;Pjr00000NkvXXu0mjf;Zq>? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_jsconfig-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_jsconfig-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d510f4004d35920600e7ff92514f62a1efe69ee2 GIT binary patch literal 763 zcmVFb)0R`Hvbvvck08 zOqSuXoN&)BebEn`)sC4LB|N(Mm;k|Xp;!JuA_nA%O1&2;pJJ_dS}I?D{gXfKh-AT| zxT+i;Ugm=w^Zl$|?^gK{y}KwUV*o%_)suQbHYxNy^Q-A|6@`PEfAmhgraKxvQJU&a zJEEV3;U`zLBYdsXU;E8SQbP<#Tnnbm)8t;?6kMn$AIN@jSGifewPd<%fyDxVJI0I2d2z>myboy^U7mS;Zg zSEU9>8mHT8vroR5D7}2r;t;Smruk)%at5l1AF$VfHHw_~A{DKk%AH?y(*fXc>l9{% zZPO%xLeu|cdv4v~$@03S)ZQGjqD^%x7I%&Uh@k3Z2k@Su7rIPf`Y`;mt?Ft82!1#F z6s|n**8>pO!ttNAXtq?M@QI z&p--5OO(u#!mhETt_!9sc@7vmgpg)4&;;N}xAK{fGEgZ9vjN^^<~v?{Cctppr!vzz z+2kqK>}xj&NVmxPx$Xd#K)?+k-8!kXR5m$-C2TU>j>(;p2u}EnLp5!DpO}3NxP{^@xTLpKDloVU$r; zspoB26ythWXQ&5%@uUojQC=Amuc()AwKRS2)Ek!0h`JJTG+mDQhD-abV|d-EEi?)o z8#=CSSr+$g#qm+xayFSKI@AvVV8f!Aa=k#~#?yAbv3~>`PK`aM?flM+C|5{9fW%cv z&|4jYNrXpWPJ3qg0d>R+)@UMN<@Tym1y_9ACZ&XbGIEeLX;^}F6VTq|_ERx|&pV=n zo(AY96Ouv&D@qSnETnV+NEU(u05(OkHTwL;*$#E_+IjtJ*6yr69a8Xg&>qvkDm~wR z7#8Ve5YoVSNq1@w08l`0HWFi%Py&ml_gUxKKIGl6kJn28ux&-$y@sD7d1wajE z6Z~m~0E02(=L;U!=H>A@`_>Q4e04&v1#>t2xv$kP@J4p8Awy##U;o>EAZL{v1@RI| zNXLII^{v`^uugk>TJL-Swnt9_aZx=jsCsN*d{TJeaK1+>t1>QH35PcysQV&e=I=+m zt${M1&aj0M6dAp{zcP!`!&iQJr|9$dVp9y0@q^pz)dt%lQij{)17{n(Q__0eK6A-C zJZrStb3k;MbnaS9)75*vy6iEL@kxViwj+6sRUhTnW>~rde7d{BEURukboZe-c2uHm zV9wac2sK=iP8NDS) zTl1d#ssI4{KDE5~%26BmN|c6a*pV6@VfNWztad3UmntbfE2c2ar5S zL`t!U2&F=yj|4~w+KA1L?Mty5tz$;X5S}QLC1{%t{ zq?ftmO{hO}$!qVDUe(^z1lqkF0rM&xgaQ;f0OmDaZZ!hv_u6IZcPId~^nPzQ187|s zp~3;23?KGshW9`w#;mDUAAJBam+X6& z9Az$E4K4mR8?Sno{PHgT`tSPq1dx|6`oDlOqaa1SM-iXKo8Bb@{SaRXuKjWGs&~o2 zr}5_GCmNeT1XW`@K;&U16yUvG0U|ZFBQiey)G3N=_7gzhawuTrjmUpY?oHo=*2(aA zs+3YB66hJY>rl|)h(gsA#k?KgzH>jYug0C zc3>@vqGbS8T?M{JQPc!>hME&V3cLZ1Z8QknwJgiFt(yXP?@ybV1Fpt#Jl&zWJ-|8O zLx^jEy94-~FLcgb5s^#4nK+Jbv{uvrRzzf1m+4;u)!g|oFcyrTA!*C750xDIRvT8%8_#RGQ?xF0ls`^hW7rZi3afv+NR z)65PQi^Wmk9&j1B0MvrXZD7$kcTz;=RJD|*=|@0CWVt1pH)sH4SvCl~&$8^Isvc0) zr@#+jA27kM$M6EU3!tiznIR%8S(Xi|DrVMbGf2~Pu23kPSJi1?qEe|W01LSWz5ogB zI0U?!nwnbl-rovqn`8;u@%_%nV2 XKS;4sSw4F_00000NkvXXu0mjf#itT` literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_jsonld-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_jsonld-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fde4fbe8a7f4ba1777ffb9a4bb4e4b094acc4832 GIT binary patch literal 744 zcmVP)xdDtTy`IQG09623tz8BF)t%L)d5<$4sjpL9o(WCJeZm@E zA84y65rPts4~%=|SCn=Pcn<6Y@?sg(0HeSu;6QTG1)DQJYeRFVk52;u04*?K*{AUI0T*x|I30Z3thaRf!oDvfQE`&p8g@qy;mF(!q{uWG zoKa7-706ZtBTS?$CfBq|cX~#J#!)205_ui8TusV3XyQixiiI`bM}h^tU&pEkTg%P@ z$xLoiJ#df&u&H=QVii+d-ootCYvVT``lQ|Mktr^Z)LoZ10qIItXV#dvNUEzJwnRgl2wT&HXDS1pCs7pC$IeH$9{xD>Nu1X7OhkI7-qiNAOd_~@;|f; zu$ToSZ54NANLvYFy9~*k;r2a#V7Ds2Nt7mvVnvj|(`mRRiuV~fNt~yRhxvfxZv?aW aC;S3jLCLK#`zm<=0000U^yBLP-#zd5KId?M;2+DY#njY2 zxU;dXFIV`Q`cW@Hsu|kW53TvtAk#n#5VM$(d^Vn`6;O2o)4u5KXOhp#HdwKHqnFBrFZ`=SF+2@-4n1n_ ziXL#8%1+Rt=dDFKAlI}5CJq!+MyLyWx+Op4V*2+5Uv zQvz7A$>E-82LTzN$T#kis*wz&4lnk1X=QwO;k95ThLiy{gbx!TQseAVOv|UtFm8RODyksa!~& zD}1ix6L{|&9^k_w_aWR4Rt>NKNj_0e`w^y4bso=EQR}*Wk#JAc db@~3Eegh(DzOe>>Eg=8^002ovPDHLkV1hkFGrRx* literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_lerna-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_lerna-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ffc5c6f381119fcea76cc86e63d1e369570be122 GIT binary patch literal 1256 zcmVP)C5?yy6Qc_@E|d)+ zUZOEkj3kOIj1j{^LzI}HMn#a;LNREg#Y?L~rP^8wl)vA1#)Z%ngm?+Qt8->@=E=-E z2mWV;iv_2#dPbhc^c2m7{{>LNtWyffiqfP;eepo|Wd|JR%WP~?R}`Jwue7>+e{4N6 zGCw}IYC%y_Jz+3w>mHM=x;Y=KLxHwm{}JF?)=eJA{Bn=!G0B<)H(qHq{<|MI1ZZ;7 z^c2qH=GK}|YIAbmaJfxm^@Rc?&RLR{g**~R(n*qN-YcNkF5y2+Emi96jjR%o=lRRPnHjyYZ| z*LcjY6)Nw{UVdVX)hraM2D(9Wkyrc)Wu=?G=^xs*5+nXgQvZ!9JT57sGsJJ{7R%bpg=r@!%X$6rP?-RqZDhWZ&@-u%V6 zSa)nWQtplISXNTV*d0WLi(=u&gRH?#j{zTo3X-}EO5J?wD66TS==0nAIG7FtrqTGj zT;)?)FwjX$FKn;{q3Tu?w+USzOg~wSJ5#q^hE^lSN^BSU3NblN!$vcIRA`>0fuY2^ zPi6;y(a4Xsn6;(Iwz>T03@wSoIT5~!;&kThcg2s$vV9pU%S_86eh)FOiiwAg^p(Bk zG*yC+R?zI9vaLIZ*YvCuEZG=6&XjAB%S%9ga_<1%7hIQS+Dk}k9mPA75)AS9=YOTfZ;8=#v6|# zzt^Q3C3b_ysa}8d2bz0+WPeYk>L(IyWlny_q)^v))LXtTQ{6R)!$Qk*D$JS?YO|i$ z`t3zKc!%dc!;|&6Z&IYq(99fRc(x(>^EnT9nY1sL>FC+Vqe9f(0bUKRc|=`zVF#Bq zX8~(+pR;A?5@~Vv$Jg50^%1X+QO^Vhj~rm@@k`bGPg=@`q?UEFFKf|%qdx#P4ed2) S{XgOW0000R#6zo@sGYnlHib{MTy{6;^5$Bh`5AvLk)pLD1w{+f}>l3xM)*@_*X=K zfCz#_!;6Zj*-&XDf;yaY<8r-koa;-{4<5MZ;hgX9IXw5A!#`F_;=E3bp+Ao6_=q3P z7SM&lqwo1Y3-K=)uqJeBCKo&_p2BFN8Kp~$4wY~O)=PL!r-aN2YFlfaz282^NiRZW*O%E`LH|U7-PK4`aPUzVR z&NEH?HFY=A)4aUBqmz;tRaPS{~M@$zA9Xnz$Pmci>U{-V@&BJHngXj(y?m b+^((wiFBL@X#1Q)00000NkvXXu0mjfQ~%e? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_mdx-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_mdx-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3fdd623a0c8a188673863cf519a0957abbf9f333 GIT binary patch literal 446 zcmV;v0YUzWP))5v>X0pe-)q6ofjpMMFfbL3gnws3~Y@ zscR7}4T+0R(IyCv4i0Vxm2zLP)6jk4@Fqq3`(4iYJ->6F=lr3fqT+u!g5gw%?;VdX z4W!!lj=^GH>y7g`Q!)#}Wv#&ei^!_5DTH(}2@h!l}gkId1>! zO3ht&Vvyy*>-?>2G5RD}=%2Bg1{5L77{Uw8CA|z6O5W!o-14KjXG$;<`7C(SoYpQD zr2%j71sfPEoqi50xYVm3_Ua7wTh8IEXxmSt>7S$l2bje(jAAqCJ;f_L#zox41is}R zSBht8+PNQowMD=dnNV>U& oqb0*SjvW$o@(`_}qT(<70)^dBKgQ=ZdjJ3c07*qoM6N<$g4@G2^Ai&6=E=rBRof(cEb6iB)0kg%e$U!P)sr;68khu@(xpqj(pm5oZR)V%^Q6O>Bwj}|;%q>zQ0Ok>zl`iNw32ua z7twyAB+$(G=-wsz0{Et_)!c6{(->Y)oWlb*pK?JYKnQE o)7z4tg+)vTyD2}gL;Nz{0lfxZnfqZd^#A|>07*qoM6N<$f|yyK)&Kwi literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_mustache-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_mustache-24.png new file mode 100644 index 0000000000000000000000000000000000000000..728a4bbc5a0bcab707969bd4f6882fbd05f02710 GIT binary patch literal 335 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 Z>_1A9g3>ErUdI3c002ovPDHLkV1kfo%g6u# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_prisma-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_prisma-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5189da219fbff2a043d9c9b534a25b7c50f1eb12 GIT binary patch literal 759 zcmVVDVGE&J3}jH! z&q9O<_pRFGs8qWMV@AJC1VukY(IOE9olzrazSF|L@#nKKt+PAtz2|-IJqPZEe;n3k zHv5{Q_1-=EW4}uGy&b;Dy*su#0#l2g#zZJxC^M6&-C)H z`j~Iq0HuLwBX9{o;JQG1rewN(n*ecRjP|lLuiO(=y)Q@y^)c_30lvV128| z^f80g2Ne5Dr_XK);A?2E!f`LJ%K~MrnY07 z0{C}KcOV>CC6CYA{onG1+2qi75gv<5XTgAyK(y8oxv^STNUiJOnA-|1rNP$21pzE^ zdIZW=>ykI%{7BpV?}3C-bM=pa@<2EYoLqOK%IJDJfCzUG&Qye2>NW(Z;kcVg&SSX( z(jx=Iz;HHet+~a@7KuIrey%woe4S1{9diQ!7^NGyP}bD8+ZB*b4SoQ+Ru?Po?OBW| zdtgvt%&45t*Vp_98U4}ilj_qT4NEuB^#=@45o)Q+W<3#bq6)RDvZ4cPKOEbhGr>r^ zgATLsf~q>pfLP4(f60U#u_B@x$!0kS`c5$kqjEE2_rJ=w6I{X<3_k#_02t(mBTk*D zi746%lmjnSB;j##iAj6tvzw1Apt_;CEK^kUR)o3*X(QV p?_ADv$_S}+Dwu@0Q;6w*jo;{S*^dRy+k^lB002ovPDHLkV1mB+TIc`( literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_purescript-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_purescript-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7a6eff30c27d9483b9496f30eb4e942795bd2973 GIT binary patch literal 364 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjoCO|{#S9GGLLkg|>2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt(@2T^vI^I^SM4^lEk#XnT0v zZG(@3(zUW}p0k}eBy^4nb8yKWIwagO=MeXihCpwBg@eo;EG*iBf+F2_mHy;Siaq$Q zK5^FFnfZ2QX)9NrOp$&2KgZyJb=B4Gt)i{EbGZ3d*F0jS=w!GlVm+_YfGrl z+7~_%50{46M~R159Fm*&w0>Jo)uCcuuP(1lZ|ij{f1c(4dd%U)rCpOFfq}r_>FVdQ I&MBb@0Hn2)OaK4? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_quasar-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_quasar-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f958fe8c37b2841a68af16fceebbb838c3d614d8 GIT binary patch literal 1147 zcmV->1cdvEP)%C2B1U~P6 zzvs{Q`TxLeCRvn}r)yCj0G0$lGbmrvC};maK(9uK(vH#!)B+0306D+`!oW|!QKB57 zPX1avfTtS~dQe=HlPG;u@F{h29e{B)Nw5xK7tjLCVz842`TV~D2DJ(09bgP)FLC)f z0PR9q9Y{?Qmv#UKv<5hVP=~UIxb)u|z|)PuDDWOp+6o@$dDnnw@VY=u?key))nGkG zP@cx1t~e5-Ak?c7gdSjwC~cv*`v_nLQPl$$kV1LZdVX^(RPNLTnr7&b`zUAF4~*i| z&5(u{WQIX~4o}kz=<+h#iJ7+JTekBup1y{sil@^I=^9uOHf`suX*(LS-4D!&Giln6 zUuHYo7|~^TI)|qn3nNfkQBD$vrIZXBJdKB7NnNAq=-omfE96{vZ9sEh34?iugrE|naUn~ zeKXLONry+MVgkqngIVa14m`bFToTiEzOZa3G4F&GahpurQPXzRiaNUky(feEoGGcN zre#$mPd+F9zRXumPn8r60Hm zbdsW*roiJOvLcm_WzrSHco*7%SAy>+Fqp>YG_Z!4Ox~DePtOCxETx0XTm-5E&hH4P zfGMu?HrwT!aD}tl&oPeb3)%kJEXpw;!BXxd!6AgL#ANlqYj7NBAwd+UtH+lmg%3)v@IKem`u!R)&5tHpeJ;}u5 z<_`B6-_QwxB|g%SOME9~)5}Ycw-9=$VuE#&1)x{UC}%x6b|JI?NtB($OO4+eAP*8I$9{x; zzzQHseyGZTW#m`+d4!_~T{OtwH#4)?qkj*=gOncquZYRyqV#Vk{R4Y|f1%s^1&ROw N002ovPDHLkV1nfi3W@*# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_razzle-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_razzle-24.png new file mode 100644 index 0000000000000000000000000000000000000000..aeacab23cddfce73d910e075bee20a98991f9515 GIT binary patch literal 850 zcmV-Y1FigtP)sME5A*`hv*0f^i2+X&86sjWGRaR z$5sj)Tjj2{qs8xDp6^oro2V|<_2AI`dzWkJeR`6wBYhL53Xl7S)SM(`>D8R(7JVJ* zqo?B}Jsqbo=FTL=ko(K{SY~ZcmC~(dB^Ql`uo<&D-^63^69V7h6M)5l4ItZIQ)n^Q z)JbXizjQn5^?2KE?F+}1Km+x$htGXC@eQ_$?zJDD>t5)z4`(s%RHrY8!&6KT1xyjMLJ!|GNr)j zI_p{5&?%g?=Y*W?i0N)jIYA8Ja8M}Uy+hC4(QtrFTNQKHHd49#IH|_M8er958K}{H z_t?YF@9wk#BqSt~SG?iQw3?K!O0YMtak;E{?OR*S|4U%36U^)U%aKkk&&jA`S4 c)9}BIZ#q5))NW-f)c^nh07*qoM6N<$f>X(iuK)l5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_rehype-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_rehype-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a158c1f8bb0c50b12ab7fae68c37e2df8a821c3a GIT binary patch literal 351 zcmV-l0igbgP)n3A(dE|Rz&NZG=CVS0m2 z9F9G~SD_Tg?d^WIYDnxCyjSd3sys%%!F%do4hh|s_+zoQCN7XQy$uQFCH^tWw4gv5u#bmKWN~bXu%Y;}g}KF|TEkys!WO002ovPDHLkV1g(tj~V~~ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_remark-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_remark-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d06957f81ad915704db870e3024c65175c89397f GIT binary patch literal 370 zcmV-&0ge8NP)NP)*jacA3p=qDgp{^6mLgbK2^Q&0Wg$r+c?ljs zA&np^kz_4g;gP&pr4io0nVD~P_uJW}p`oFu7Q-0Nq%;)cU7F1f0vDUp=?!+VjZ^Gl z3nLt(g(GaBhZDTjx|K1eGK5|kXx_gOn%I!+m5Dq~Ee z7i_@%07*qoM6N<$f?3>`H2?qr literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_replit-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_replit-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c0affd09cc5cc0c927e4cbf8458f383240a1ce14 GIT binary patch literal 1044 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 XjgPm2B#aJi^zNn}> z(S=|i6mj8FnV_inC@p4DVv-4=$mH6GGt;8trqqfVoXpJ4cU(AkoXJcd3HI#1bN=7? zf9HP==YyMU@_!}jABy+cR%EPnOC;6 za$N+2!#mtS^g=QHzp;Aep|w{->=p*lsL=Q%~` znyhMm!zRMMTxRaWdf&#_=m)BNebG-JZ>V5>rq^9HHNdLoBC4gD@E>M2;!ltj$rdCO{;X1=uu&=K6bh|Ur_s_Wwo;%`ibg_ILM4%< zV56WC%|uiPv9fFop}2Qq=DvI0*i80IUUJ_#?|$Ds=iGB1Ym9aO@y!X$2ENC5J&C|J zJjG{p3*Qes$0huX2sVrnxPl}2jbDZDUEbfv+lXL&3;8~r&g-4UDZgSluTM&mR?!y0 z4eT9y?_edbds0*b`$oK~kwg(3%g->jX3|fZIiJIx8c`<@IE(Lr@3xfp64O#$MiAYi z1GuFb;XLjHd#Z?1^ac+LTMzeEL*6C;*ZeCgT-Cg)yC)I&AmtlgV4?8u$4zV=C(?#Z zcz}Zy-*qhF{3HU@({MbKFG{0iCfYo1RKQYY&pdYI_YSs8gRg2XG*j4d8!iCZpb@Gxl=*kFZ@}agA_CJCiiBj|)&kEa=G*!Erby>iZ)d;|S zqm4E=J!#+#(8uM7q)p(Plvh$e4A1;2e9Y^+T7Ed=u4xZPaY*x*xgyo@oY6=}5EXfV lzEr&B!2c3o#&E1H{sQv{ODiXwpn?DZ002ovPDHLkV1n#T^vM7K literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_stylelint-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_stylelint-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5b282748338babd50b1857eae93e65afe9d6df94 GIT binary patch literal 566 zcmV-60?GY}P)~?cqLns+&q5=J-~$wF#J@m6>p(hfj8)iH)Fx#riH%^u z2iVxy1O+WDQm7zCK?OkrLV~##a~8(&?z$^!^n-z!bH498bI+Z*m;ViW@g5aMuoJ7g z@K*+BBs80&2$v4EQx%(#QN5xJ>CGwt_w zBK5l}#%1izIA?JF55U!6j;F38eN^2jrdTro8dZgV7P|= z5nDP5PGhkUOm!(x_P>&jZ&!>Lf^Qgz+-9te`2fBa-0?q|!)nYF!sC&DQcegdc~&4{XYE8zNTW36^y-S>C0< zA}->&)RvPtidWKCvnd^bb5ZQCaUpg(AsypGF|Q)GB)BbI!bXf)+*vAfSckXL4{2W% zSl^4V_N&(cr=ma;FY%xkQOCDmgV)lNe8&AgbpJSh0>g`u=Y8j1kpKVy07*qoM6N<$ Ef=w0uM*si- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_stylus-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_stylus-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2a1a77aab52a2e1724881cfb52b0a8a7930ee423 GIT binary patch literal 787 zcmV+u1MK{XP)e%;TS(F|cO0|f?=jdUBnVJtQMHZ5!+Eu0o6vnzszS{X!t z-4rc@5G+B^LXr`|g@Q<4T!?h%j&52MV;WA)U1iM}bMN)L=XK+vnP!T~UHUA~%Xyx~ z%M17U-{bFAFf=suLZwn!H#0Ny%TjaqZ-Rk=fh5ba)yv4oVvJ*wHZJ%79|Oa~!;h59 z2l+Vx4 z9}FS9C8-0v4IBWT177mp*MW=9x!)wMk1<|vHk-dL2&8EmfOSAak~6cl-EQ}oq;G-m zN~Ka2*bTISKb>>m0Pn^a-;wk_P?z+BnY}VOIr-sIJ9rgX?VNko%=Sn+=A0V^dXpsi z+|1r^&V2>!jxl};i~Q%*@>bke)ry=G_z}Fb~(oQb6;QIjb^ji3INq=wcmUHwR7$xGxNYIppbM< z(v+Fan%QCC3rS;Ub`uzFwOS=$&N)Yn5lIgL{oec7?RH-W2mm33UBHhq#_hn_cDsEv zNs?(vJ0$G@egZ;IPtX2Zt=3`%IDjNcjsRDICh%psT;3HzC?w^QJ^^wwdu^q1_{*VX zS+-TuS~EM{Xf$qRS$0TL0B!-NCMG7vS1Ml+Sj?T^dP!&M^?LKa$nSHHa2uG>2v0_9 R>q7tl002ovPDHLkV1iU{Yt;Y% literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_symfony-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_symfony-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b588b37f3798b616e0f1743960abebd80e6454cd GIT binary patch literal 925 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_todo-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_todo-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6d2e618c97f5e7b4247803464ced93d1fd150cef GIT binary patch literal 521 zcmV+k0`~ohP)?mHk>ni$qrE+@<-?mouS{_fUH)^qoRNm>iXy`!;d6{ImMLF14wAP+GW#0JS?j3?jLqDbHrE*1V~JQ_n9VeA&o;X=9}#+830A3-z&SXHm-dE9{& zjtqGlk!&z~j_-EZBACT>9M6GG2AiCWKAz`CkYuaCK;8HGG96$dg1O@pG%FH5!d9)rQB`2MPhXe5rVJ zW@ct(tJd?p&}uIC(13x7OlEw|fnm6+JX&2`>fg>)t~UG_ut9IA8n=LhwZUM|HUkIp zx#al^kV+-|6=56x#6K6;)PD&_NoAQaUH zK~zYI?Uk)g#6T2i8FN|`#k0$hIF3h3oi0ek{Fx&f%F%D4<)WP>ogZ_8cV`vN%5vVEX&9S)G^ z`6I9gc(XLEdjXcVfICOV1bA6x^Z|Te+Yu0~Gx`7qII-#-VA`IqfCtNa`z_$es;3s< z47lj&UCMU}ZK44%00uz+m)zAW@MN9;9B>Vce~@1dn5F40!25iD(EjJYRgxs*APg^^ z0JIxPDJ8D2R7y$RG?TReAIf%zE@g~y+Q*Bm63Og4A4=E$jr0MJhfuiMzek|}0000< KMNUMnLSTY-V5@=v literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_tree-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_tree-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0fb12e40fe91e7188caab0fc4d47882866c76df4 GIT binary patch literal 339 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjoCO|{#S9GGLLkg|>2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&AOk#I978-h-%hsWI^-bGdOs(q zBaExdHDKZo<|gxiH99uS*Q$SzFmn^(buxIwDq@^0ZXhMpE67u~;qJNLGir4{@UD9M z?8pnrr6!w189EYbET4C+@4i_!I*d-MpaC+;T8}FZS&)Bhy^XXzX8!_{|A9EG9 zJZVW;_2jv|B}eC)dpeS(M?*TKK1B2t9)8dAf70QKolkabsOX-&wY-EOVbV;tSK7yp ivsjr(H+){XCm=81&c8yX(p3`ZR|Zd4KbLh*2~7Zb1B+b% literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_turbo-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_turbo-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f8d37262e1ff18993826cb62af666bb5fcbff220 GIT binary patch literal 838 zcmV-M1G)T(P)_xC){ z%kSkTuha^txF=R+p*OLtnmg3iW4ZZ6tNWBaj}+Lj(6&Zs+lh& zUB$t;cRqow4fgBURr}g=7)D=1{wXYi#T-L5%RJbG8(j8p8#?B|oNd6|T@RM_#EZpp z^fs%Y4ebqn%z>M3uxI6(OQ4FA4gTg?Fzd0bW?wOLb#)KLBB7ksZdbDzeAZy^!t-YO z+=fT-c|-o&nurSPkmdZ;gc~fu3D;i9tN8o6*m>MpKh(7+J}8xAR79Guf(bl^;|;Nb zYiDx?o7CE~Vkn9co((>fQow?Fsu)Etw%~EBGSi|F9K=41*THSMH}O}YVsAb6zx?dF zhhovyuzhOEHwz2yI{i}meqMpj!Pt-`6Q>8#@wqTi9E|QPvmXy-nT@CV)3L_IWo2*orl}^#x3pBdQ;dEJcHkbzL9}+8R#@kV#o?eB_c}y`Az_IBwed2M85hE-NqljK(u$larvKb2&lcJO?{0a-nOtVpbrI?afkfjAl ztgQS6va&J~b{10;nVrVGHN;}DIOlTbbl*GgNRe;dy5~I4`F_vyea<=j16YK$nPqwlpKK7x(cNopJ6nmgRCf z@G1VU#V8(OASFw8I1gX(O}Ic^LO*Wd3SP#%O&E%?E_}x&Oh%3`MWwwzo(pz&m6>P%^ z96-BpqK5EZgJ(OB8qQ%Zj+)-I8t!7JV8;fb(I?}YRWp%iIE+2XTpR8r)nvGUBh8X$ zIEF#LY#cEC0En@E9B)KYnL(smsAdf7aZ0#Uo!Egjc!*cOE0CcB+p#*Xd55P$Q~xf0 Y0Q<*LNHnqi#Q*>R07*qoM6N<$f?xIdkN^Mx literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_vash-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_vash-24.png new file mode 100644 index 0000000000000000000000000000000000000000..92d3d46d333cb75f7bd13f6524c87a974ce9b080 GIT binary patch literal 1037 zcmV+o1oHcdP)<0on$rIwloT6fPqZ5OP4WS(y3 z{AYeMXYL%h+D+yYXjjTQ#X)SY+;^i_pb zzJx5@8q6iRWcIR@)~JeiW7JrhDV7 zY^2X9vIiKn#%+_P;j{k%b+_F2!{3E7 zJ6G(w<1Yc*MdZ;inRyTLbBJ_&hZ=1Ju>xNN$xMe!C$@_5)iyc!vFogVSdDbJs>;2< zfy;I<)t$K2s(vr%yEZlW1c3IeU*Wtv3~UCb00%4v=>Tm7PKT+14f#&uM}dS*4%{e$ z0+>=j2+sm8P<;XNvvA&h3T#r5eRi~VahMudf=CPK2B1QO{(r004}g`~-uigKR|Kdc zs(Qa7?b1AS4!~7cJqK(=c|DfQyj2)-n9Otn2lIjQRUwC0h5>?zo5}#$u61_+*BSN4 z0Q7i6HSiQLX)F9|b7uvz5g@Qpu>%eC(oELsGJrAB4FEm}MgZJot_iqC(NCmtXuLGF zDgwG0_+7RPohjx}bL~u5lVt!=vlPG!698(sJ@1#{xwU6|>(&A_s?tB}z|#m2s6SZ- z06z^N-dE%kvnXGT{52O~RCdmMepBq~cteQjW1xM78O{RuAQ%M*yxt5TqQB+^zW7H# zetS`Q8bFLcUGTff-18u-5nd_P7Z)vzmVM{s&k2O>Kt~W{k2n`QugLCfSNvOV>9G+F zKH@+jPSn(7I}@9X(LIXp2Hp&lgU3n%vlh*z;|CRXS>x77)9~4uC!ifzUbqQF-caRd zLEk9}9amw0EICl>D+lP8>sGqJj{s?_H9Mp^?ez18rIF3GVyJe`_gA(I{s@puC+<Ra0Kj!69#GK_723mG>`7@oQ8wg-*kzws*AZ%(_}+GQo0ZG0syAF?_6Vi^r8qmftbP>fuDd0AcjzbvKCk(Du--y=J5pq zidFWkUlB!7QsFKYy2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt(q_T^vI^IV?9SP_s_738pJF(*N$1QOkC|t4_!X39 zPYHK%ioJetYcJ~tUsKEHPOtr|&hjXDocgiu&g{SH3HMiXE6g{3@M7=!T~48^4>I2S zty5I^=Jwo0!aNICFHQ|QAh63SD#Vmwbs(eiRD0_`)js(`6HE8!&3eY+J?p?3zQ0i} zWe#6Ia@PIsc2U_f$K7@^^DW-qxCxg|GlbgO&nwliv&--~UH{~LfJuwki?#ntI~RFf cG@Y$?l|3lu*EeSspeGqTUHx3vIVCg!0F_yUb^rhX literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_vsixmanifest-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_vsixmanifest-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c76e201cdd85c56c373fd7cacb60fd788edb10fe GIT binary patch literal 899 zcmV-}1AP36P) zK~zYIwN*<@6HydBZ)QqqX`vs$AVNZwpNJ5Js08F265VJF5|1Wi zL{`MajfN;9I21*V&i<4a;UV)l>k5(hGcX07KoK9Tyvp&dXl1dvO7dx!H*C zaoPdUC`@y6v#{)3jQGF4k73F-JPpWPGQ%*I@{?z(GEBL3;g~Ta%bS>_z3p4^_`{gC zPOExNa7K99g$LkXT*&8nKJ?_*XGqit=6Rmnd;T_$vgBK=Fae$^l!2D>wY5uaJ=PQw z^gf`3G;PFCDhiy)?%h-X00<#Cap5wwhSa#-iK2jIrvnqwE+OU9#_|;o2`QEL$l9J!#*<&05BCF z>euLvr#8b**+%f`^^34O4s3H&P?4^M*FrFWN!u_)L6GEdK&TVe|DlrR^R7&&1$`MI z$QtHfc1(;6O}g##c?XX-HVeU^*XQ$g0T>I{+|I{G%xtF2!&d{lH^%OF_vf@(t?}~& Zz#sdUERP9tDZl^#002ovPDHLkV1lczo2vi- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_xfl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_xfl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4cb7cc038a8eb9809d332c43f69f0ed25d442f16 GIT binary patch literal 741 zcmVEx@rU^fnXskVkJu%MpUFwox2ousY}r%>{ge;OXr}d zTLfOB@+6dr7m2b6LKGqhOvU`~y6f!B>oD5xx{kY9eqmsEZ{GX#dpgt66W7>~Etm2oPNKYyLx<(0it4J`uZ~Xk z<|s%VtUf2IFESky4wM>@P>8!wY(NT#7}*4~E*u|M-qr}Vs?!q>wp|$+8(8zN`#g=i zv&y|Wr9Yu`&M1RP<@U60swQHJc`BTG^Y}odDK9~Lk?_ri{Xt<-JtdoA!G(E+5`*C3 zfDGKPuc?LA9&Cic6{W-wCLQIdC7cgK_mc8HsT{I$@5b55tP_M)v=R8eA%P2=2nl-v z%DgL_414wq#lnQMxsvq=0GN)9x&~cqMgu4l8r~)Nb4@=c(?L%c)9=f9N*4f-q4BRk zXQm@s6S;^`@ErKTx5@tt1rs#yfLB$*wbE@OXtBJhJX7SmUH*;WNJx0H2)hHYFW`|h zTSC`PcwQwus(|Q@EfQ3kP#=W8gfeVHYskAgZI;p)6rL?8h6s1cbJZ0@5VK&~fw~|} zI?x(QCz^7Um&?$-1hs+O_3S&znP|0yN)sMdc;T)>xdD=q%~dbC0GXqaSAi+e5`r7Q zplM8r{ZwoqW(k^S$OVkC+b2i@Lhx|e(JIh+dx1qJ^d0qk{Z($Rz%8SDHiJsDxAMC|22gFj*c!HHt|+{= z-<`>_d~`D@+L#@~Nnj4x24k@_>NXCgE~_@HKvm)>c=t~UVq8=fdXF8kh`Q2wKT;f3H)UJ}6m1LBT)d YJ6&y-`UKs|TL1t607*qoM6N<$g1?B(!vFvP literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_zeit-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_light_zeit-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8c731ac27a6baee44082abfe9afa4c942991c2cf GIT binary patch literal 416 zcmV;R0bl-!P)H zK~zYI<&sTG#4s3!pH9;@WNfu7$5m0#jYm)r7hYtb-*IzxYwI)dN}4=I5>ZxcTFZ}AJP({n5s0Y{E!tdjsQz$>uw8wD4DE;wJbd;|C_ z6-uZ z%R;a8y#zc0Yi-vwiK3{ANgT&pd7i(SCows(l?x&0_xp9M3L%c?Z?FzL0J2H!d0yRL z&mg6oN-4L;N0t0cUoQ#(0000< KMNUMnLSTZQ2CRbs literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lighthouse-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lighthouse-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9d461059fba72607219925db8f70365510151624 GIT binary patch literal 898 zcmV-|1AY97P)X{IGiNYcYK+9_<%VC6GI^|2WDpd z9r3ZXTQjqP_VPR1Q)K5$amc3l_Q!T!|8!qPSB!8`2UQA_=(%^*RMiGDK4gPAFp*f+ zed28AV9B+Dt|+p3Kj}F?y@e5SZ;k*(n*0;^S^Y!-PuH1? z&4mw-KD#ZI3kGv}FWI~wE%PNq=4pDv4HUGOBo82Jer{bBBvYqv z_ZB$~^a7ZMi>pm+%fTtx1Zp(z?VhGSagNgY-`H{L)r!(%7Ad-(8#auN#ndyP1i&bh zdZN5sHV1IE34l|w0SJ3DtdGCVy5sNAdgbTES6DEgU-{|o7m1c1D*>Y9HEx3zZ;IN~ z1+LXJGST{6RgT9j&U+d1R(WOtbVa2J`9H?8Pn63}8|MF%MIYq~%uWnZsK$)7SDh-sT6~Is$EygYE z{NF;montUE%9Fyn@D9`hgcA=$ngF0ubs^{}HhAJm#h&6gs}=kZ+R1EsZ#( zHjdpcJH6AL1zmdQf%+?e>h zSD*O&#&U|fKYL_VeAlQa-IM}01C2`YZzVu9XAFZQg8Dj?=97~rjS@$}estG?!piXh z3?!SpKla1(pAEwAL_Qey&(%#Ga2gVQhU3ZFnH77+4>rdD*7r+;Vd~u?YU#gx4|gxF Y1NLMsDAquw{Qv*}07*qoM6N<$g0usoTmS$7 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lilypond-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lilypond-24.png new file mode 100644 index 0000000000000000000000000000000000000000..564bb98c8c78e9b9be6950e5ebe8e5afb5dbaa43 GIT binary patch literal 1301 zcmV+w1?u{VP)i)5az?RiiDfw6R4bR8+ihQN*n7%5`1X3%jsq_w)hSf@sw=CY`tW z&&>B_zM22P|J1~%hP-*(yDQ)S@PlLj8K|hJXzJS6D=SA`EuepO(I4m9`U%CekVvF7D$Z@(`T z@cYq-5{@MWsH#d|PY>nUxtPo*&i&OW?m7HLL4SAe@=!Qbjv!=p-f?vu+Pi-(5Pl$m zEh8iC>*Gh-ZK){<0I^t%8y7AU@C9&rJuH}C7|&HzRqO5Py=Jo~$KPDe+sb(GNfLQn zE_Z$H*+0g7K@bpwgV@X-p3VIPowo?B@(zN~g-VPC6-(*$^x^mWxb1WfUA}sG^CYRq zJ39`3RIJF#E?q>g*CL|t_E1r>5TjCs*w%vJjv@G*2$lxio@My^ycAX}LDFft=DeaQ zs3=@NZ$-%u=TFvpCv~vno88YCET-B-t0}49*+G#th57jf2!a!#w*x#n@M@t?i`dhI zM)I+2;UaD}TqH9mo2tq!gt`XpvQgJiwR@Xs5SqScY+YT6QI>qs)b39*s9 zp>UY*_aDMywvdovM7AVO*dC3fnI50Ppf7YQJ`|6NDE_m(Q|xv;lFEht9;)l>@%aM) zL?cnMb8;{k4G7}ogW$Q_-3Fr{?M8j;m-%Imom#zC4PI1H**EA++{nhKD0aNfS?+$KC6{RMYr#oZxC*r`7`z z7}@N&rKYCZmu`9C*V&5;9rwo`WlBVe)*m}lclyxDwZOfx_X*+!gTY{PZPS5}FAz?U zQ=-+7WYEN- zsu~ImDt?d8<8gOiY^l3?q_e|y5*T_A$dkw*0b@7D2SlHs_UYN*-=)IaKnb1~00000 LNkvXXu0mjf4UvOM literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lime-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lime-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f9f80653dbce107bddef48a8be2d3c691095357a GIT binary patch literal 1169 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lisp-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lisp-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a23988776e7ff49127b70b11af6fc94b611bef61 GIT binary patch literal 743 zcmV?P)($dmpU2R>Cm=l?A1M~CK0`ZatV~`1a_Y`mh@K%x-_$;v=%!kqKKN^&L_cU;F zg~DmfDQ@pz5KNmyaIoaN?~8tBNI_5zCGKa$wH@l&b<0_i*bTrFAZs+*1>h!*gFvUK z?jFr@4`nTYC6^Vuct@86e%s3)YxeP*W!%Q=kRlKq>1?5jo?9Fr27Wg&q`)ayS>*2aN$t!@ES1&JQM* zbHGoa2bG(cc)aAfwBl4(*X39_jr3}>2g1Yop{_DaQ_06LQW?=){YOEQjv?#~C& z^=6`r3;>F)nLdg28qoU}PFaL=xjB1Ys2_+W4XSvWWxb8PH7ZhRtQmqR7w|6qJ6^^A Zk6(vj^F*hl4G#bS002ovPDHLkV1m#1J9z*A literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_livescript-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_livescript-24.png new file mode 100644 index 0000000000000000000000000000000000000000..342e27c32a479c311457e7e7a4ccb98ba645e079 GIT binary patch literal 665 zcmV;K0%rY*P)ig97+{*tZ79QBA8;q;?L45McX9zI}YYTOj>eH+IKpfbH4XE-}x?F*knm% zB9?H^Bie#8Kbww^HwtK419=ss9bpO>k0l;;IYmC_!{S+9p<^a}D$|pCxJMu#ea}L! zlkQcU50VdWu|nRCx2Y5F%I&P0BZzsPcgzt?@sNr&4WP!lZHzsf?I>(hv0gi#-R0PY zA={WImB(uX0!oD_(AJ%FbG_Fecli1071bj#R|GkVa7R?X+nz3MC_s?of{dx~3=vie z%PW4Zp%vLq=z>2* z4u|{7i=XzH8%*%EEwC~kOP4Mg4GLJ zf-o9Ox})p$S{8dVsljYufWTSMgP=);Y_0y~U!es*4tj%r;FYNLO{m^^rJ5rq*c-$W z?q#4AWD(e}!mU8#6ulR~QZ2v%gaJ`5&7@D>4P?BA1fVD3o>n+h%Jc)xrTPz)>3WP+ z^ue2v_*fHwLKNZf8htJ6n3(oy0i2ZtqH@2(xGUIA>gj?crdw^y5#`0CphdkSZi@E z2lI<7xLOHdiCmjqT9R=ky?%K@(W)icL<4rYJC`(wequ~O+z4*zb+iB^8nCs^s4Ka* zkirE#uZqp(0{;3B30zKdB9PlZGF@?lJkew=P9a$RW1jnw z2>K7e(1YR0qDQ+{biY)rs<=TxTCoAcAkYc?1gxU?bN*Q&;CM96NZAbvils=#((KFS zXvqmW5Zow=-&WVK(ZFQ`kF{iH#SMyOAmmD>fpMTKZ}-O1JaTQW8^M9BMO*88X3B0* ztcfP-fqLLHf}0qgdtqJxShbu7zC|+JHf0{zS6Y&EZO-^*&U&_J#f&2v2n=u(C$(gD zypgSbxhv__l8hs13l5PCYMWQ1O|10Gwd9UgJT3Oh`UVA6Ez*y`s`I$!mxo{oLwjJr zwkhTaa}YSHCC5th9BdNswUV8_aut1AGM7;7EqDo=-C8oG6=#cQ179mg5f_Gw7{&-8 zfHn+QVree?69D|ao+3<-fCU31u@uSW>ZIz^h8uMWs-ZZXYa_%L5+3cB&KZ=d(lI%FhF@III|uuDZ=AX<_DA&OCqHb z!-D!MiB}ag>)C*esqi#mQR*F~v342B@h^1uC8$~wrqHLcsL<~W*sM!py@IPl+!fsVD)z=4D6I znm_ia02kVY0i69?#%C@+E$_TP(r=hkS*~5>XLWUmTo0A2A|E7Ik=QE0SoA&k|O2Q!M1S5@AFJJX>8l>)ph-<+t>@T YpDNe{XM3h(sQ>@~07*qoM6N<$f_tccp#T5? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_log-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_log-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3799f32d73260aad32d4fda2aae4c5fde48e9f86 GIT binary patch literal 499 zcmVPACN_40 zSoi=676ApZ$sgW37TFjjo9q>~%&G3&-8tVGW)~)kkpOT@7B%H$o!u^Z+Cf;Z;@Cv^ zNXS0J42RGMC@n;v5ve9(uUe#q1?T~UPmp`o-F_l~nyfKJX8`!Ey17Or*GnQNh~|Lp zh?rFh?j(*i3|M!ii1#XSM*e`hyr41%fHS8UeI;^&UlMJM2o^Pgu7HMx>)%%V^7;V0 zcMwXsV8dSf1KMtfX$$~wG})p{q7$S|8LNu`WK!qUbeXsv^kr;`JdN>yg4-DsU;RVH z3lO1UK+Tj9vH)0jiKMa^Ek<@L?-bm@{{Y6F{oDto=nrt_7!7wIsqOB=r~2 prAeUkbmS_=$X6BW6}&Ao}Bni2hi_ z4HXHfh@c|4eTa$*;)aO0;99lfS~cb+jWpY9ni)Up^3vwT77;vuGxyFp_sqRB!2gb& z6{u^eg54-i|Au_`IBA8m#=lD-m^$FY0Ut~)RTyFv-&JE?cq6d&mKq9W_V@>HGRiY_ zkch+Y8CQR7pWm^6hX=Nw`y3$KM`GB>nTwZJG%v0rlu}7{nFcH%NQK^Md(Sq`I&y8c z$?Z6F^I(fT91d?hJj;8=A}hPcE?QZAb;HtI=|n7+(KKenBN_z;msJ;~A|WyI@=@uG zJ*RzEhwCwb5g9FcTl=O?y0BvA{ie-8Z(9|- z{c&)3eNUCy0$DvEgvbC8 zdU6+@`Y9N*U^$+i2xPhW6DXk$LjnA_Kf9+K)NDbd?HS6a&IO3>djNPo0p6IP2)-MlkB*5@NqzI-h__+QN;(1;DOMC|!JRpf% S2POpo0000TlT{eU|IayZ*LLM~bZjLITtLSp)r7ciD@+L)-%gA-Zo~`W0=*C;iC&nP z7>!FX20tz!!LP(9#>Aio6#T(ES)`vo&vxWUPzv*w9olQU1Y|i%f^z>Ne{Cz&( zj{y7tF6z4O9T*reMVZ7d03U@yp|h_ZIez~e$G*K605ZAEqXw%N|J2=U0AT-#lijZe z`Zg90wY0Q!{$maR%ah4u2LO}<>2mzwhUJSlzl~JE}sPeli`_MzdqsoIxzXlm&Zo(mgOxT6w+`RX27l4c2zR3 zSb?(4EC3LcUiH=SkF$ochX}<#Nt5Cer`>iSoy#qm$Ys9UcdXA_&ZjaUpU(jRGj7wQ z?5}gr^8@0SB7j6bn>V&KHq>t*kVqN%CvORmN~LBsAyN!#dT#6Hcc1F)yd*S?72;Xb z+|CShdwYAFh$76Yu@Zm)pslTKty1cFW|l~KeqQ>L# z+MTY2-p+NG7Bww@yw;&d#^U3@+JtuCv)&i}0`P1&99~um&;Y=)tac*WOjP{6mnW`9 z3+t6c1So}M?8Y2PM8`hd_EK-{*wn;92CN#_yte^7Sg}RS++V50a?78yXrm0;t%_Qe~#6DIWR#u-##MV9(ASBR-#R6A|qt zqJ7b5bg(qH*b~3sztA+zJ^=UJLNPf2(*WuLd=L(YcLGpl0YGscZ)Rq1p}IN96heGo dn8E+M{swZHz25*iq3Hks002ovPDHLkV1jpD6%hac literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lua-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_lua-24.png new file mode 100644 index 0000000000000000000000000000000000000000..18305bb01bbde466295f50c9b12ff1e5fe1157b1 GIT binary patch literal 1040 zcmV+r1n>KaP)M^@zbjY%@WRs7^}Po&8uHZ|tWB*j6N$vEHn-`r zM2ca+v19u;>5d<72Iv7fpjGqevYJ}4TPang*QeOw`g$JRy}PtYH$R_8pZOG^y1F_p zB8}?=u~^LL>+AbR<2wK{nG~s1btK8jlRt9j&fl!AD#piWxp3iTVCn?Wz8(VvO%5_K zfDFKi6D>?mK45C<(KdpanMGP#zm4L~Xdj+sS$lwG(@)!bDO`o9lV{JiW7{VC_SMqe z-NM0xuQE2)#rXI~G&QBSoiz-jupW7(Qh5>rY!4a8WM0NF4B~N{`uZfrVwr(~pSg8w zfy0Mi4`2@i5~Y+EE=`??)avz(C;~q!sHw35IC`{^?(P3D2<~Tqapp`ri;D#o7FL*>d&0SMow%;Y{rk(L(={wFuhHCGM>1K(=;*Wy z<|TkqsZ5P) zK~zYI#gt7*R8bVie|O%LGc}>%DB}oy47JdLEK*P_YI+LNqNNpn5JIhm+PAD|5p5Gp zrGkOl)S~ni(f6W=AfXnD3FQYOrD8M8ytyszn{l2q<2H)F=E?U;J<=$Et)?vOK`Wn;22{fMP1L#hJ3m_a&wnu~IMB4R+4zZ98=$9TOhnxbo z`=BHvf-$vXrVO`j#Ri&5vdJl6VhQ{as}4bUHe)#?Be?-d=jlnwl<;;=HA{;`d6(+g zQzTS@uO5IBZM~?po^oEqvjGFL9Lauw@)C%dYS^9oDdv}0$-f;S2m`K=55|{PCfsOH z-?nPUh>^@rW({uz2aHJCMO#+hP)yGkQei;CQ054`$1GV#WyP>8O zu8hLy1Q!&@4iCKc0R+i~kon{h8I|e(1dtG}-}*H-c5O~_Xg(PgyWM#u zPXNtUJN-i=oZJ{nZF~RaXQ!U#d>@wEzVoP&GUd^?%NTLF@E&xejOy(lIbBQ`6c< zO=}N;r`y})FOq|Ur5Zad(mlCwvT&VCirL@BBk)nl*x); zc3mod*=ZL9B7%H0%WE>CL*~s^Q`OST=YB^T`D?nyy`H^A3KsIrhm>>Xl=koa@u@`( z-#Yq+G3X?a@tSP)Xvj`Fo6!9HU}f^$6P7Fl%E>do{<{Ex3uX(D>Z&yg&<~x)CS7N$ zh4Tj*+h|D+plR&8GtoU(;fn(!intU(F^#TGL60bR{t5K|(hr-`=|rAFL?{3N002ov JPDHLkV1mQ1e!u_# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mailing-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mailing-24.png new file mode 100644 index 0000000000000000000000000000000000000000..28665c32fdca907690f68f4117f6698d501ddfe9 GIT binary patch literal 707 zcmV;!0zCbRP)=6)`=)aKQfw)7kC{m%Eh=bp=Zz&=a5F)b`C z9Bwok!y?iT03x!ONF?423=I6-6QEkH_K~~?;4**%Teh13UXq;feSc}kfJ&uuUPKB2 zk}-$;uBsQ)>2$GcK)GDbs_G1Y-k9)pt*Gj7I-P#Ibwjr<6bc1LRiE!58~_ekYo8U1 zMK>0ZN~Q7u&g>w3qcoXJUWf$%=rDCFRgDLTh`(C^fJ`g^@vmlEkvtX)5Rq@Y1pxRO z3m{qE1E8Zes)MOL06J~Dof=LlMX{~+b`~DOF z%+JqXwbqUScyElk3jnoR?JUVV0B#y%zC;3oAUHzuwTRS6J{6G+$t$Yb0`RNdZa;J! zr-$S%lCFq&04A-qpH=lbfWFn$)zQsY*D-@22(FPF-!OL`CD^I1B|PiZm^(sU#7xO%Lcvfvsv8 z)W%$hU`ANuBBPM39G!0w2^C4TD2Sp!#;lyl(Rtj{MyKmz@>+Rz=kY(kbGRSp0&{F+ zbflCO09Ke569sHGTjQT<)Jc9d0GC++GsExq7ufCg6J`Mb0A1Ie0D{RxLWorWZUX=j z9hXv$78VwsH4TWxVlSLd=l5iQ?(XieqA14D8Nc7J*zNXHQ-(>_WVS{`C#94Z=L|4r zbyCXHa|r-|oknNcZ!nX!-s?!MDBE?8h!_CA^as+jmo6RxaA9)otO3PtPiNoz53ci9 z>KlCC8@0|oo+C`S3?^B3v^s3HSpE&bz;*&a;F@B$$H71z00OanI6N}&SAfkmHJ16I zP?{PQi&$r)Cf`{1Js4Cn)3w2tHuuiBL3?|{Fo8NI1PNI>qa&bOM_A{##^z&F z|Ii}yUjt@ukr>^tf^)#w&OpSFnefbAwymLxlAX_?i=y`ShT$m%36-jD?CI&5?uQet zyLvsW>ujAShjn>5@g)lv4Axdv_DwrMVqhVjBwJ?L;w*gb4`Ai;Y#b^t!2_SfvsbU7 zC;}-KOU9I8jSe&4BBI`8%>kfxpPQb(>|0%spZh7rYKfHZC`P8H<*#46=3|DI7G~ym df71VV`vqgd1lrZ1gwFr~002ovPDHLkV1f_xd5Zu5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_manifest_bak-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_manifest_bak-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3288c1e2c23931883d8dc5792e16e634b64f150d GIT binary patch literal 1090 zcmV-I1ikx-P)cRD?mW-= zKHuk@=bY~Y57|__W18k`z}iKFl^QB5D{EaS#+c>T1C@&<5D|jG;4^-||DDAW0N{CE z1#oXZkfv!*0LKB8Qg554X_c3kzrSb#$8mnCsHhm7kD#-&Gpy@+{L;Q)FsS?e{ylRp zGv6T(YD%g1Ow;`Ep%FywfN7e0{}(}1pgVuS(&}%9h3jD$48v_pm~iihRK>?9e1k;x z`RNO*3_a;E;=O9QC<_3&zkeqpEYXy=$|uVoID?k+mkJC$=?9=TVp)+ZKmSBmN8prW z*-u{T`2OJKV3&-I+#R3tM7uGiN}2<~*JIe(gVqjIMk0}nSQi}$nAw`hkHA_`$BrLu ze%Y~|)F|XCupUrKDR$TI8V})16L1x>xuJSf`+sJjAs+*49oId1;;WXAY}<)1>r=5y ziU`iwu)Qi-^#O(`b@Y?A?vw@J;EVRIbvSIdBbIgY>ti*xZP%y;;#*IgT489$vhu3U z!;h|By(Tr?dt<>2bXU~?TK{i-hHcyNTaISv2a7kBHZDzHzE9vTfa`k7vLi-s&*hcV zVX|#O0uc%UoQU-qaV=vQzC*P;->k|nDn7EMcKe>kb8~0({?O3vb|9iqg>wjO53X5y zT~nZ|K|wJ<(X*vv1x3ZbuX$`*XiG{<2SG}rkj%1*sw@Eyz|eJfX*i_@xC5-5Ly)8a znqG*gCZH&~ynp?Mr}M@_)ADq+_t!LFB$nu{o7ewV(Ux~ySD*BScLFPbv4kbcPx0PG z(G>G1C&s1Y+f&>Ng#ZYRgg)poyY`Cb9k?|(u&XO@W_LV3J@b)IfmD$G`P5Vzs-A0X zK4*eZeeuk9*T%;}|Naw-%>KUKmj1q8hXiVnSFphbl0luGw@sB&A|j1np6kvU4gEQ3 zkd*C+$`-{%1-@w5418tT#_{Z&oIfNZXB`m2wwn`9@_ZkTrfJ&#!$;10-b}rTS!3Of ziF>~EBv-_zPz?>$@@*ygoPKjZsST%4@)#*$Chf&UNjl_Yna@E0zyg4 z(nJJ>I@C~I-U73RXZE2Z)hkxn{f3{J^Qj*tb@(x7W<$`g`f=V*$lbe(T%pZC|r za0^ZT9BXT9(?`?SY!l=aP$eLlOqa4BkjOw*UYD literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_manifest_skip-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_manifest_skip-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a138b0ae74877b443014392c12c875026835bcde GIT binary patch literal 855 zcmV-d1E~CoP)N-092&{Ut#w>et?0G4I>fp9vLrfFk2yG29+eEj^yyHBflis*^@o6BeJi2 zNkt!r%N36mk?=QY35WG$Q;#=!(9mJBaQO;G7fwi-JAL_TzjIfvPwx@HQYxh?drmHM z{ADbwUVYo)bnQ~`4Zt)liJGxa`56J4h?#CKKfiD3(yHo>#WQCgOzY1C$U-A0&nP)C zaeA==uxYyWzX5baJ084kY!m>~vO2Aq@uFEu=^`noFRov$t>2FZE?$^xp#V^SpIHMm z5mR*$Z~gv_hFdr7EzQkayYpuRBugnpqn_o1oD(Uot?gmGq`tAE?O$iJSu1ZbLeEB>CRDcVhN*}$F0 zz}t~_07j2+v!-GZwRa32K7Wa>YvkJP1u4ZQwSQhj9wo*sC6xnntT)4RwWk0ZR#nRV zXD`N1Eh>DUn`4hw%qyjz(^)ia^7wZJ&c2baQEWg-+@JP%#C4{w&aq~}g7!>#ah(b@ h46rau0Aev7{{goi-gSvTYG5W&YXDnc1InzO!0-`R1pCPDPOdfy+< z`#yhu-^UC5$HgTP0viY8QPMWju@V4e8kJoCxoB_pUlXJTVkJJ8A2j-}5bOikE4YUM z8pO+>;sRmaffC+%Z8ao7^nwB#2=+{?#7q-ZR@z8~}iHtmh~IG!G^}mE0t0 z8_nn5w%V@Fg?HJ)MpG`aQ`9jt+X07b06$vHrJyqeev#7-7t*^;gURRqk)UbNYcb;+ z4z9Vax@!nVFR~1`sS3&&&l5~`#40`S%|l*eAtoPDY9Ll3mRurrQ{oRGe-_+U z8TS}C7MgN@DvVtKFaw=}uQIbxC8#qZ-k~fmxJL=P>({UV^Ye_pcQ9h3~m}q;!S$12|F` zCQ~`@$F1KzeQ(}TF7ZNB&MN@T4mlWfP|aEIy_UhcXXcYgu58YEBhYL*1^`VtuSVdd z)=iyP3OFlF8eJ^^f{=gnovRGC>Dun!MU1r!*KNoXm}wJ$Z*Dm#7CT~cNdjTgh~fpk z9?5?k2xcHwL0Wx_eN#QeYpHCa;4td}AeBuN=)jW{YEs!m+5G)@P{1E~2NE3t-6Fzq znn2N#4uB#VrWe?9aG1$EkZF|S@^mzFG=MZ`6IVs9Zjbildx7%cPX>UdT;gH4&=>8o zuCsaEpm$irXn_OQFKXU500QFzDwdK@u#%V=FYGxfE~!6Ha4y=Lg>ZjrAh|LCnU9MU zHw1gH+l!Ehkcc#V*$^(cZ+-Ey@JO&}7eme>1D}nhL9HYK7dur zXa~L!UHJK00!Y3${TL{})*R%mbe~y>TlC5Fy1hv03hkG$58$sxoR{)i002ovPDHLkV1lDu B|Kb1u literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mariadb-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mariadb-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8b670f6baf103caf8c10bdccdb7f24bb29d8b570 GIT binary patch literal 682 zcmV;b0#*HqP)8w*Rfl=YX%vNjnD8c7n_A4zD?OSFXv`Ct#Vmr5xj zqKBwngo)crFFi%X$VSm0qYOb5$?5*UG%d+lOUOjFb5BpAv>Rsgsr; zYx(D+TD7K1uhCkfKA~F&$G16H2gd0wL;`+(HM-5Nrc=#(`C#&kOdKYH(HY=lT8^Xu z;p~}Yw?D9e zkbL?#e=ctII(YNK`rVlPJ=yIKE@l2&pm&~bI9J2B>a>gRBtFIZ0I;Rp%C5-b7DQ6y zI%4In9^c9BDJxnmXABsapk2RiSzfTqYq09ozTGBLzr{ezRT~LksL93RDTYLfJXnF? z3bEIHx^ZX+cfNKT$B|`zOn8J&W7r@6W5K>-lMgQ+5RQrpM20eCD4-QokQwlGmf=a1 zK3D2d6jU8-@?EIm70UtOSxkmw6M7#2SJHd0f1EPDXH5k-qlOYBB{xG zX9Y1ZFcx|*_e4|Zna{|wLBa-|M9Mgh8Dmq-c&9-SUL`2K6w2I$3XK4?0I^`G<3r8_ z{5-Fb)YyO0uGWvG86FSO_=_Z8Kl-wLBfSa*tSADx578p@~e=E<^(T%9jHa+Z*pY%ejhhEOVU>1|R*7Tg!ixpV!H|+9jqf Q6aWAK07*qoM6N<$f_@b;761SM literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_markdown-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_markdown-24.png new file mode 100644 index 0000000000000000000000000000000000000000..cf6d41fd9efc9fef86833cce2b94e44df3cce044 GIT binary patch literal 567 zcmV-70?7S|P)pJaH~t9PL3AG{&^LVii7{+q>xt!br)P}(oWJbJ}eFn&JLjo zr6N@c4z(hbq-h52Ai6myxQfss_}+1_57YP3YT*qcJ=;C!e&^i72mAQ%VE|=+WJq$u znHpQP7S!6E{IAg!a57}?vT@fSas?m`0Lhl`)mpEz@W1VQ;|AjZ`J`C($IgI;F#8b9 zHJ|)`G;-15j)!7>w%%&Qe98B281$1)#uB57f==$!|c^2bgX?y;bf zGcI@U8{8696zXWNHmQJa%^B6HiP4i0ng@494ngpO?8S}PU3H$Nh~0{U|UGh`dNtCC*i!@O@O?AC+1)+1B2 z2po*LoN@F1d~@@!8UO@~E8l=~0Hxw+N8VpaJ08nDPJs002ovPDHLk FV1jUl1c?9u literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_markdownlint-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_markdownlint-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b49f32fb28d27e9cb34443b6b861973da2ac195d GIT binary patch literal 800 zcmV+*1K<3KP)ei)KL`0fA`IlAC=jvO|)>Kv&au<(U`)xFi6Otz#7ZkM+8NwP*EdMjUPea zB5>6roDle|y`-hE{!PTZ-gvL86P%WYq`o~}BjdDe&O0FWc9dv_vW z9I=9YP?h7FAAgVNAnVC3UN)*Z ztJAEZ)$eUv<(Bs3=02TYTuAExfX?vP3l|i}<_b@A42=H*5H->hi7X0CDYPpD9oB;i z_eJDe;Mv<)f_Dmts3<@%Jo>#S5?OSLcZH&_t#Sr%=HjZ_+!>0#OeWJh$b`rJqY;dr zO%jQ#YEyUrSlC&+6#)fMNqyw5zOf-i8i5!hm(n!{$0M)%EE)LjaCGom)6t?Q&&Ow+ zIZ;t{Iv6P_Z5u8wuTI3no+C9Qp0Yq%U#m#hJQ>av1&z_#|4CDW>b=bxB=F8t`evlK ztT~fF3Vc%&0pIlGmOhv&wHS(=yz`@_VAyk{#$alEQxk#2**U;)ae1{7TLmC!)ksNc zn{RruV@m=_D++9|u7ELGi*j$x1=Io^|9fl`zUfIpq&?Zi+8RaLohw}@kg&O3;f=6P zVAWGa=$Yiy_>D304;v+1K^gl_`RQiLWNK^1qA#G%Wfm_3szly0$JNT efWlW%&i?~iaSn9}l5C*>0000m8uYd314130_iy36dcK)S9p4c^}_2wGJbd)Cn~(XuYPb7R%iZ6y|+U!-{-!6>n|sX>FOT@Ia|F?7Vb7Sc4RkJPpfbr@E~%a90Q{Wx2VFY_0826 zDm(yv1t1_rYIlS?0ig4u63wst<)(PfnVS6xFx}ALF|BME@VIBi>b(&FH8i__vub87 z|3MZ@KzM2SiR6r?>YQJ4K%}dsO;uVIP@#1=6o^d56BD~KaBNYu#CAnhCHR+Df(k)k z!lAJ@OvMu-FzQS(6;B9&z^L6WX<*0Pt8pn5CfJHOUZl1>#Qa{3`F%GlCYZ;J-!~TX zdsSk7-)qn#ipE4`vl8MeYKqELgq&%Kb{i`91jfqyr4&N8Uaq7i()kBVF#|0$0+ss! O0000GAVrpVc#FBVv z)TpT^wYP?Y0r6sEjK+A;Hj1GAQlu55sism=Q3Ms(!tT=Dg;`Z zFWWl#@Y8RKgz5lnVd{y!;~({}^_fj4`r3VYZo$o~Zx)>;FW?sUt*)sxZ(W#(xL8co z&AVn<-j@8-an)>0H5(HX=+zBQXYJswPk!zS21*VFf>CDt@tGuv;_H5{B7CrI`f&S| z7I8R`6Nf$K`n6q7E~Gxu(vGpO7TynwXr^8?7fy!b$>Yi2zTMQKhtB>Lif6w>EnzLssFQ{q+WyTn%anHo1 z`E@O-@rvGydJ>7cLXnZ~iw`{V!`yP}#koR~YBL_2b}GYeFo+Y7?&kdyBNTW+^I-E- zg%8a>Yi;TXHVvAt)aCit)@9H+w9ru#l-3GQC~`==b9ecx0Q^+eQ|G0}+DiVU*b#CX zO4UwZdKthwM=vl0ph{P~Z}NLZz6MaCb37j32jBvX<@~Foi|Vgr@(Z8<96f5sq2buZ zm#|V?=A_%;rv(ulx7OY`=&#e|Q9uo|TPFt*4VuZteV+OvHWN zlu_Zul|Z9CIn;CO9mQIx+@)#iZQ}FxiQyCLLcZs-KcYeFj;hK|#m;F)8qal9&u%5x z52?v4n9Ep75w1-QRy9qZj}H4PWdidhp+Li(S4I-+LLPc>_uNuCb1augv6xth7M3%8 zTgd?y%X!0#+fwfai?`c8XU=;^s%^R~t|@9rb*;+R-C&j5x_|t2d8tqbXeb(b{Nhu$ ze6V)CFhH|~Gk~D$k2-s*N@v9ILFqle)nShXLcV>fvU=u?m zB4HueXdywOu!RH*Q>4(wDnB5Fg(R?Zk44_b$tJ0^+*8fD=e~14-W#BY9{v^V4%BM3 zQ8Rl_(j=8;b|p!Y768=i^%0UEqUMrD%xo6GNdO>uJ4uq2s-JZiFtaxRf+PaybN9Cu zty$3m$z^w+moy-0z}=gY_Id7`peTwJN!KDR0fgAuth*199PQQsJOgkYz-a)G^dif$ zM+XWNMR88j_e!^8?!FXrygIF-_VyfrpOr2C9vmEe z0028XJ15zFme{?x4FCdwnVA{y?Dh~CfZ_NZNS<}~ zp^ip!2*6hZfGo?tNt%n|g*?yiA7Q$O{{H?&Nyj2xFU#^Ofa9^@jV#Mv?X3s^NEX<= zAdp;WG#W>Bj-n{eNE(Z@G_xrH_ab+a*Q;X!0MazwG_(0mT++Lv3P@VS-xv5)QoZ9P z>3Qb`0f+p_d7f_pH~|3eK0ZA?Jzv!ujmAZHZ^g48Nj{OZ7Mp6NX?mHY4opzNU6NZQ zw?YWx-J-kS1n>#Ks-#Itw*Y(wuxe%#Rr4Nt_&@jq!VUR%-TB_$00000NkvXXu0mjf Dw5B0k literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_master-co-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_master-co-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6c68299358a1448ad5ebe373c9f3083a2441147a GIT binary patch literal 765 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 KMNUMnLSTYpp}cSa literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_maya-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_maya-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a005d8086ef5ad98c394ae2f46f16589aa056b22 GIT binary patch literal 1186 zcmV;T1YP@yP)T2cfR#b8fD z6!cIaJ@ilzk<~+pMIuy4{>zGFl(DeMaWqHA@jCaO{b#M!!?}0nHk09FE!gLrht2m} z-}=sG1ON9T0C;ZizPoR&_N-&Jc|^Q`m~SGZer6hd`rc(L{!O6#@$L;hCGP6ZO6cMe z=4KhXnGrcV{PpSwjyVAM;OLQ6&n{oNtx|SCxdHcYR%eSpucIY3)cfG&F zOg>D;5Hlzg35;Mi@yq$qR{?&f+wH8Ag2LCxgd-Y5`)3#XF|XhGy$$>UXev5~|%$g}|UNhylZwCk~L>yuPlk z+7v*U0VbT8tgjinI(axq3sN`(<6%~{`8`$F<^Zq)((&o3 zlcO;u`g0LVUyT1Pz9-?^%m8GDTFno1_zvKh?Hk$01&~Lv%MoDStEF#hX5Y~ zLX3zpJ-&6%o}SJvTNXg%Q4$5D06-PKHhGTJI!P6kQfV|-#T1~GfpGzeW~)zL8viU0 z9*yS8qp#wsf5Lftid0H1VG;#G{ECyVWmT{mIyyVJp3*dc9k()oaq)eG(onCf8%U9$b&~7 z{L=Y-y@OMoivXhUA*KmxW>NCtphme%XF4F~iY%BxS@u1L)c1#@cXA(x+DCQ!&HY&` zT&Pa6h8>@tA4<}%k$Dmc1nQ>=&lrABj1x%U9kgBdUk zRj}%t_3hh7;ead&oDaylJDi0G4QU1-%fOjKM)XA%f7>>y>cYO> zK@uG+TYRJVab3}U9#2@gv_fOV3S$5t!w`Whe*vh-18;MT!ucb!1@RP_ncrN?7bezBu>#$d%se zyHgvI!ubH{u2ihqeanF>o(=>$J?Hnc_gN_eiGX$50RS8w7#PMiiWP8qJXY_)I)qr9 z_TnyUI$(!6XU-qylR=|a>v{o{(hv1Yd9}s(n}Ldpn0WlUJN!@AUll6r;BG?J+W-In07*qoM6N<$f_3aD A6aWAK literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mdx-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mdx-24.png new file mode 100644 index 0000000000000000000000000000000000000000..596e7b1108086fa14e69497bfb69351d1dffda8c GIT binary patch literal 541 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 Bh9Lj| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_meteor-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_meteor-24.png new file mode 100644 index 0000000000000000000000000000000000000000..95c84595de41b5c83c0e55aefae876b8d94681ba GIT binary patch literal 1166 zcmV;91abR`P)TR7DiW|7Y&ryA`oZ3Z_P--4FU;h=HIFN@B7kLM++6A8l_452!JQXv7du z5_rL?h{0%x+8RGV5&~+vmfgDx1nWn)@?bOs(AY#;cJH=WB{YT#Jg~R-&hY^^0YhsE z;{R!KX3qaNlQT01_&>w|-70SZ0I+T0u3UN7t%3jm++?zD#55ncI(BUBTJ>gqMQso( z7B73%>TuaGI%=`GLqp0)dwcw5A=l_sIz7+T^=E2zIb+)mWy5%+Hh;#p8*Umhs_S>V zy8cpsG8qDZ;kLGWUDI3*T)7Y>U4M`}JH_-aS9HxHH<_#hfTn!@H_5yw8i~9$+}av$ zIdI@t5d=TEhOrd@;^FX#k&`E_T8+-GSaJJ|02RO=Nv9VAK%!6>l|pofH0|R-+n(KA zC=4>u5!W!fisR#?sOsT{bLTeyqU(2DR1~F_H!WaUvFNLSTe7Sa1C+>ShggU=W_jNJ zl5I!gx!eyz%HG(VIiCPPP_4cl26o6$NF$>2Wz$^oPr!8_Sjn~{qFQ~ja^XVvvSQJ% zSk}WVNxKa@FoL&u4yihE?M#{fIdmo2So`pv%ymSJ}m$MMlW4*S%`03)7;*)cyT|7HVEdg z|K9m_0PhlW!98)J?T^OBHDDf)%y|+b9?$1b{VSlkzJBhc?~eiKs~kVR4-*qd0Bi#A zg{$k2#T;h~fNlaln|Jo?n%gd4wh1@}=G~_aV?Hp0MpL$|MT!s?1K(drz`81PN0{h2 z051c0JnA?-uC9MXL{9;D0YrP4`O%o;^b)``>SQI$N(m{)nYo3Cp7%8^rFz~b23`cw z#>&J*S2Pmo0bl{x7;~JRwcHu~h>2|WAc&R-V2pshA;ZF|l(IQdD2(2S-?S>FQY`>5Xxm!Z gvKIYk#y6_J00be-o8!XQuK)l507*qoM6N<$f@07YQ2+n{ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mjml-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mjml-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fe1ba63b17a595d7bab34ca71a76ceb999686fec GIT binary patch literal 772 zcmV+f1N;1mP)5ZSG(JGE5EmoCM-fF(VJxEYfhbt$-(YL2jYLS) z7!cM6;m>3`N5i+yx%sm#n8&@N^lS;qta_;$^@4$C2{O^+5L$Ncr zQpIVmr!leeV&=tx;otia<9HVap8YaFkF|Tz=WjQG%_+>4fJ1)oV6Pr%%SJZ7iLwbm z;f5d0-zoWg;s8Wn#)Fh_fQ-T^4FVIz@$M?T;(B}NjqCt$0L0qaDdAO6mgaF+&{I~Das%arQ(XIC6BzOQ@SYS3akUm6Xj>#UUS{jqPOW{_ z(DGoYx>-4j0EYd>t68seepju1eR? z1S);g;18GL%=Pl1ilVh!S_E?h)kM|p%09aF5Y|>z;2sR~VUw zvGn@6LC5+f>d=X>;BQT;#3J%28#VVzKA!+Yd)F;f+0YjWJ^1PN|80m>iHb<`OWNl3!GjiKUH(IjJD{2s+(XKp3d6|e99^OR=)Vf_G-dj4cF4!GU`0000Jm>jc&V4RiV66Wwo;NI& zN|{_PH!~a#Cwsl#VWChMo@ScOX13q&&sl3-yWKualEnTIP^;Be0Ne%ulDqkQez{(+ zuS&WLU^ZpDl8SL07fGsIE?>!Jvqb>cB~7MGN7C~V;|Dwf@Gynmk?crX3a(6Uklb|6 zeF88aVkA8<#;gNC6qsL=v?S@Rq?;r+0Cc>=cbs!?0L-V%4FLB6biGTgH5!de0FVg; zOiOxcjJY*3s@3Wa$&YC}0br5ji#U!~MogtrsYFrqK5eH4gTYk*+o26k06g;zW6U0a zFP`<&IrrFSTCLUxl0Q6a0SG)1$$ewYw}5}()t`+qNB%rX5-X`O>Lpzc21xoI*b0)4 zz4~j20nqa<5d{MP{5m5*UVU;#fIV%50{*JT0T&=30|1gtypL6F<&5X7&wAC1;)v5?eyFjsGA*GcF7NTK;Nd>B`BDmyAKa@Dq;-w! zpc_20`}9NiNG&BwyriH=dit6{9vv#4wJ4tn1{22kM3$`CJha3JV*fzU(0Z(-V5=PQ z(vgL&Y?BdBU$umlv39j~`vKm+c|}_G0xVhcsX9;`i-v$&ObLbM$FF*a?Lc_ld0OHC zEzce>B{dCu%?&zQ>{>J=tdwq7Zg{PRAA(Zo1X8oGqoo0-<28d`H}|ic(&Pb1MUCjH zS|pvSr)cLPRDIm2VgbL8n^hGA1OAx#Q4CaOZ=U zbKz2CFi4!yM3NKIl<4Ym()q5HX<74VfB7_me`ssMJasyqj@Pm7 zpr+67i~QUerf?K^!bU zcjuDeS4$XEyDr>$i0r%-!#Hp3kEyPzfZw$1F%29PQ9QvoaTs^d+mDotZ{S25MU70m lP~^V99+^X9yhH!L$9F(eA+wx$4i5kT002ovPDHLkV1mEplP&-N literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_modernizr-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_modernizr-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f5548b26ee2ade4527b8accc318d4b682c22ef30 GIT binary patch literal 437 zcmV;m0ZRUfP);&WfX}bJMT8&n@Sl2|{&q7-6Ax z6vEw(0*r`ho+#Vxy8T$uZ-jKou4Gzf0H73GOJb4)Xt-_^@%&s~Dp}wNniHsLEUHRD zRSJmYd#nyH`#83qXbTL2hO6m;3LseD7jT(c4q9a^=#}HdoSId(f^UIp$SXGNepKTx fd+)t>>f`eTnig0@i$08u00000NkvXXu0mjfA1}D~ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mojolicious-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mojolicious-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1700ef3edcd3149bbc668a4ccd1bbec25962b422 GIT binary patch literal 530 zcmV+t0`2{YP)2%rxQktgOrfJG#GLde#E9G+e0(iWO z|FqF)DA~gEJgL{~vRbXK)Rj_FsZ_oL?_#moC*Z?o!f;ZlRA*cMCzi{lEEWq95%GOr zn$4!f0eAj?5dcB?iIe^;%{~gD1c3J1OWV2a-XTjQ0KA#`W=kxzDfEb3M zfTzKL*VE~AFX?){mf>(HwOY-MMx(E`r+PD+&Grf~O;dokz;W2xj&)t1`@aACgHlRH zqfw}AJRV94@DO+ad<7;lSXeWf)~0_QBO!!9p-n_BB8Vht(IRjW zQb~(w6)rTJj5b2x;Eaom8Gl+ttJ*|lMOGWrx!-A#={R}kua#$c&iUT=yx)7idtt4I z6mzJte|$@-)V_quoNc@Jq9XN)X^MtxW^|80#0p*$f2}c@r3+VUb0f=?2yA~Kjka5Eluu6s>Z z-=C~7B|0p~4pw^PB62a_Qqv2ICXa=k2++5zUq=?!&39*$9&2+x3-X447r=*VPs6jR z?MnoRXgut+TRvYUYE{Ks0|#Fot^1LUfE#K7%^p=-UH33#yyVf7)$g)`rp4)91M-ob zrCxP~jmrv(h=H~?7Z~;K(CB{={K4Qd=+9LOz434$0Y&~Y(<3-ERVA)_4U4^Mn6Z#Y hv9SL^womxlir@M6&4bmC{to~E002ovPDHLkV1kKRH^cw{ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mondoo-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mondoo-24.png new file mode 100644 index 0000000000000000000000000000000000000000..211d4ccdb3d2ef3ccf5f170b49be976a4bbacdf7 GIT binary patch literal 625 zcmV-%0*?KOP)@=RD^;!wWt2bWq7o@LnW) z%(Hy{xkNCt%_bw+z5$;v3{Y^K%&SzWwEZ?UmJ1tICm&0Ne(h;+cYGrxo-r%Jb&!?0 zMDWs`$mW1$l^-j53+S(x7C;tlv1X$2Kyhj;_XTuR;JujcgV@K=Mwh|#wV$Webw2~g z>rY>u>Y)jrRZ0QpcR7E}5<61SY8>=p9p_!oxV(@YTn8{}OhsMyO>=lnKKsv;-G&1w z3|FZ<>cD=}@Lq#TihoHOra#58*~E_a|~gMYocF@#*C6J+AGkr~lMnuCcSgg&egp00000 LNkvXXu0mjf=}R2T literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mongo-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mongo-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bae22acd799f3fbf50154c231c40bea194fae2cb GIT binary patch literal 610 zcmV-o0-gPdP)xCJjo{+^V3pf`glbbx;I}rNyXV>`)XDK^z>4j;@M=1wl85 zAov9?Qc7JMgw}u{&LU2VUw?oUqs8>*JPtQE&D1uxDR|&c_kGUqdCq$e7yhR@_v~bD zxIDb69gT12aPOA%tsom*+7Q6`7pJcaCLQix@k#MeM*(MMN*6J1m;_SBu-Vb4qq{l+ z7@rx>*QGlqFbO9>Z1v{L9RY;3+D$VBCSd|CKgF@fW2e>yn0P+XZQ`s121o)qh*Ch^ zU0WAmA*>z~^hfR+2{1`Q5<-VZ$|HLc1CaKs(Kv>9^J*qA@F{ao11d)=p_!X% z9aCu5bZ^rA%4DUQ7ywZCa`1t~ybzd+R~n?xJ&UQ^tLfcp2LK9>3VrFW-gjBwz1RQp z{0#pr{<9p$^sqFzyC#-x~(V<@$c~2isq^quKEK2kC?$%lFtA1^@s607*qoM6N<$f=j&#YybcN literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_monotone-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_monotone-24.png new file mode 100644 index 0000000000000000000000000000000000000000..04ee5a239a45dc75e6d928d46fc77718248035fc GIT binary patch literal 1111 zcmV-d1gQIoP)b8uLD7jQ*^D!=keOLT6SfaF+jQB7EsJs4 zB@28oGaFwPwwNhPOpMtgVL?Yg=bB+$MqtyCvX)C%E>c@)k={?+Q`(;H!-T=6w3zvP z`k(jzoags{-;?(MPgq1Mrozn1^2{_vxsWH~25g<(0GR&;P^COnTdsJqIhKfO1cZ>u zq!n_C6tecfSnt67p3`GCy(Jld_ozm_`t6U^vb~>K76$tVZJpX%GZ)WTea4Q^qF-Jn zuQ|L;zF*5CGHmmjX4VU!w3_$NZlH4x85eH8Ghn^k$}GA=0N{_zd#1fZ*B3(fWFT;W zNZ=qi&go`nCjmqs1|R^SBDZeWTzJ%#C*84ClePOjCgSl7-|KnfZg9l0>c~_L@0KfS zk5#D}wn~L^9ssa026yb;mZ7=cu3xO*HUn7v51_t4mmA<>pXP{*Ih)_qGidv+>)(UC zPq0#cwrgHa=gSGGKFFeN%;^t|*yrNh*m(S|+P$ zTzXDAl~SVCn4CW$5)XkQ(~zH0flOMt%Hs;#VE2!LjWQ7O(;=gu+LS7QA_=1L`|(zc z%-@8V%EH0YQ>e**1v1go0D$@6G=?2F&^7uATwxnFW$i?HZryVavSW|DXaKOUKzBSC z^ESD|b{yH#f@f7)c-cAdNdXj+5&*!2=QiyAaa89W#SZ05m<^cWV;!_wR(;p%{ll>4 z4sz0q^4U0pH}|)LM+%nL%?tg@HO-gc$d;CWhAPzIlHn96p12T5@{#R<@iA@Lhl!Qp z08lF1yIhxKSFh?3AkeV+BhJB?M}al|MF3#+8I3ewTB**iDkX_Et;>pX5nTJT?aB`m zU$!I#07#hT`#L>gdz8ncb}GbbApk^TLGa1HFZ9aV?COtpn3})3W@&p3Kq3_Y0C3Y@ z!_Tx}gKAq&?XEks-O$_HP`UAC0KkRO6G%i!rs6r)r1`?qR0HC1DP>{JDzuB)^f1SPDJ7Mf5Dgu{|AQ+4OSks$@Xyc$Znp0K~(I2&OE@Vu99M3u5>fxTb_uN5ys@BUre0T3} z?e*LHoDKZP;>1Gl+O=WkFD=WG)Mlj$KcAbL^mTmv^4Py(@bzt-ZLtdPCmz~j4@f*h z?BP_ZXyxq#+mBwXLGPSWaWt8>1i_~p`R&7BZajQZgYVndPr6`XDE2Tj@qk2C10){K zCB)+8hk8!tC%-wTXNe=co_Ls*EB8C1b&sCh@B;wYcvXdT1?e-54x`=*sm~*Qhfy$U zD&0Qpo7dGeKK|{Swsi*6K0>ny<$V_!k`H_5l!^cl)uM2LK_G<&`jc&+?Jf&A-oI$$ z)ugR9>e?u>_xf%w-5HNzYa(sT%>N|4%iRu>+zMbhfVrbS?JfZCRt*g4bSGibZ*8Bx zR?hh8fECx%eYQcfNiAlYl+B`oxj^|(=7p8(zuG(q0B_u|W0T8={MyRixY?7*rqyP=^~_3)f}M0U%{mBVtJE3@Eh{4x3;A072eibYo=!FgPN4 zY30zf!})RM-dyeHI9;EBYBdU!*BKmH`ov~~b`nCy9HfAtS9=$hTJvL_sv5X(rfQ(} z_QRf9_(yUvjIWQ_%SH>hr-V9<<)#CFyt%^3iyB`8m6Z6@3*j8RPxQL79x zLLl*6d;g1DmJMv*5}=nVHDA4VLFw`uX5lY-F^EIC+%twULg zqK_3OSIg!t+2iOV-#jx4Wbc7uw$cEj!-7=}3_LQ^@v(b?%oT>Gw{L`8ZK**haOO^Jsq;@nM_c)<9zTB(KO4(nWTwDkEu8eB@Bw3ni0oNY|t yjd5ITN)%dR*p$T06BUP+4Qv}A>aVu{MSlb8fD8dQxVO^)0000m`!_ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mson-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mson-24.png new file mode 100644 index 0000000000000000000000000000000000000000..dac0b3366702e004ff9bb616a463840c7bede332 GIT binary patch literal 785 zcmV+s1Md8ZP)RKt&3G38{MbIqmdokmD0G zz=SFVDGdb40G75Y?!%H8%}i;4=&t`XNT8DKCqjX;k^{^%)mKDO9trw7>%ee*OAEHC zuKYI06%`(|#)jGfn(NCNRn2uPoNkK^O#+Jux&NFX(Gw{Iid5y5wVDN5pisLwS$4O% zuDk}g16m;19N)+}YupY1Re6O{v=lGN4;ZZU6<>B7d8_ENF!LS006zq|r4R$=Hrr2_ z`3^;&hg3&adW$dpoj}pmrxCJuC)YQo+yi+7EDL(=58ra>Xl7Gg#S2v$0Ys($W_?A& zYOfeTjS*cp*ik*!nRGZTqG#Mi_v-q1MiUNtPA#<_=Ht3SXJ5j~%6VXVElI33Hq`De ztXvbQ@k9=VqN9%k-yrkI*c9+y&=bbUFOVq<^Y@<&Pq#iD?v|uo2ANXKPk^@Ao9_;s z0)04bb8i5Ma1xl<86Exf&mFq);%+xyGO*dMQ^Adw47l;)Za){i19T38hq5(j=BmbD z1nxjo7IfonY)PN6AoG4I_%A|dfqWe(3LHyX+N(Wz3bQEqMV{xIF~-(gW@>K{+r9-Rz^AG+ zp{lUo?>B(4Z4Cy4=0Xi@YdjvG1K)t}qtWQxwyMm|L}{9?CP{K;`%4I619%4h0EO*c zpjoTcw#u?hfP3H(7)bg6tl3@#9wgn>>-CFPtMvkN9VAI|1ALW)?bnAqN;+=0+rI&_ zEIW~O2^_rAZrk1;4u^Zd(d>g5<7XgBx|&QTz3FxT;(4;&?{>Sz{H8QbS0sIu)R@H~ z)qz9c#P&|7)46AAa2jL$Q6O1$4@RS3#HVo&W#<07*qoM6N<$f_omsFaQ7m literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mysql-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_mysql-24.png new file mode 100644 index 0000000000000000000000000000000000000000..caaecb68a94fcc456e6211da47e5b0f5e7b49c58 GIT binary patch literal 712 zcmV;(0yq7MP)%egIlK$CI*4iSz~vjLMs_Q-x z51vKbD>ytPVjtZ)Aa-FMb@ww}GDkSm9T&asnYq#BMGW@>}7ApC0?Br*GIh z>9OBo+V%Oi)c*KNMrMI3%yeze>Y?CgP#q}7h{b$`0|0a`p`3otL_G8yc+33uGg|{J zs~^D9hAGD#KvXv<*|07rK&J^&FE>o3!ta3@BKFC`0m439nFSy=TH&44EJUJ(1CR`& z$_OX?EG*vhOkV4L0W4q+9WM+ZY6@sT(~kiSM3aX+)1oed8o{(r)Am5m4`78}0|$X7 zAc~`1_5@g=Nmkt!l&Zu3aRM{d_}3Y727B#2IMPl=i&O5jg1A`5xF-l8m?}r750MYV zjgjonanol8fSGD!g&FM7ch4Hb-p)2Tj8g3g(^$a)$a%>*WQ8UX<@fY^>{FC54eAKU zIOun>R(=y~rp|OJWvde)Q&d*;5$jmYTKP?|nTETTnX7CCHOIo@Q=->*XRYE)uwK14 uYH%_Ee7?I3bbT#)|21`{tN&f|b@~O3NV)odLIi^V0000`PB4z&61dWLak%UYuN`RQqs3bK;IxTKo zkPHcNgSJytiVG4}hBU%VOF$MZaACrfLaEU}5u-7t#E7Mf66|!|JuW&keQ$W3vXHZS z_nqH4-|yz$cOE?AkVO@$66+gUFKRbh!_%nDBK&2n9lg}`=Jo#xFnAT%5Rm*uk^Xv9 zbM(7?TW5mG&7uGiH6ot?8jxHg&@*ZC*CXknNML#8i)cE#MU-w8M(6r-N34FU#>7$m z6j-%@mHVo?d$_ADyC5Lid%8u$TmT-gEEduBOPy^4n~w}U^{?wZVT@UZnq8p#eGn_J z40k6+9ss;?NErXV%7Gy z2L>Fs;Or4NAM49BV*}1a)emUt$*u<)K~Cn9iH}uGhl<;|Wa`PC2sb^YEB~0N{miMg z$AAwV$KF9W5U|_Ec<G~e8Vo19*P+3_xP`*AEJ6t#q@_@X+i9(sC?~7-$!(F zuCwh*AOIlRn`sr1Z>m8QW&~XPQ+M%kU54}wZo=qEfz=B^D&iKRJH5_J5%@> VGV)82xz7Lq002ovPDHLkV1j4Awdeo< literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nearly-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nearly-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f01347aff67a1d5c627db717267c9e988b9e7854 GIT binary patch literal 625 zcmV-%0*?KOP)qq5^0qT?hi$h_T3OiZKDU|odEV!lmzjYMI%pTt3MrS1 zv(}Oq(H;O**@a4)BvU`zHi)8lMue*(`q~)(1;G1EKj>W%`MAD5{!n%e;s+=75P(7<9#Lgmm0X$@9|Jg7>IIoglH#oz*|~U9gc|^=@+nEiUpg0;L*UWI zM)7Nvvp5I(PF4HUbmFb~qrIR?R)oH~v&g71@~kmUSJ&wk@68ic&V$|r2!R*Ya;JgT zr%Kisxd?Eowrh+Gs%m!>#jcu=YrVY(GmQpEN0qEGVZj&~4ngOux-*|u4;N}W2;Ih* zK~N81_y?-ZW|_~IEZ5UZw8~dip`{Sej+ePc^xJBf9uvycI$i9ed9XHssHXHyuwSu*F+52#>nkZcH zp4;W})c*04SRb8Kj+^2?0Gge_s3yw&Taj%+Mmjbk*$KnGLx(**uZozB#_9WlnMGu zf>^LX3&MmbvKL821*SR7#xkqXW}1|>iLTj{snc!l+4elYKc^S!(wW21eI=JA%F(nrT|u^1t90EW2HW_3%D&sVE`0a?gG9KtR4V*ht9_=-{)U5l?+|3+lv23RI?P0e zihkXdcR9ouf4y-Y#(8|2xq%hwJ2B4Vp|k_+$XZWJ)+?;d_!#GsU=zI)0*VgrUWGM% zg`K&>U?W%+w!7rhoBVCZY({H{xHZk!hy z=j|XmQtg~y7$QbYh;bebk*7|qv331Pb!Q%vpPxU(>Uom_x=Wrrm+6Kpt@Gy@>(7ry zM~m9M`ej@6gXs~Q-0BDj4a6d&-s@~@`X=r6{@U0JM5rR|&l`cdV z?i4H7O;I6pLTtsP2g8z+r1nV_x~4smaH*i&Z+PxN<#CUXX%v1o4snU3+qvv@wq}u zijq7bX#hLVuR~=7*bSh8cQk;moDw)+%sdsss{-vn9uNW}z<>y+Re1xbTEe6ux%|3DxXvh%^fFjS?0Y3$n{sP1k3vM%=%^6rah?x@dDygi8(4MJml-!k6m zH4~UfrUgJ$cWingJ%`9M2>aYi4pzR77B(#mpfq~Z*AVI{vHAqY(Gw^IBlUZy*A!S0 z{|8m=0*+-h6ivsipN;XhA>fpI#I__!{8d0|)WIpsWGXtQ-d!1VH9`ojP0@X zgvR#1Q(ux2(E=0kT9MtIQy@BTJy-df|0rdGch~aV%h$K#`1SM zPO5gecK<#^G+Lc})I_`)6Y(Gny}!?F=q_xSpQ+n3xD}WNeQ24p=2!G<8s9JWBV;YF#6@juT$gEuKB^(1;vY4{dm5KG)%HOZ@{B@mKGp5PEL_0000< KMNUMnLSTXckIte1 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_controller_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_controller_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8c95707c515e57a83d133f3d8cf044405256566c GIT binary patch literal 1002 zcmV5N~$%tR+|&;3tOy_E1ZqdLUPmLq63J|5o!xF-Uc4e;XKdP2Y~@9FE0Pv{o%Q< z>%M;X|GJ<1dEfy{?q|`9m0>@^qqZx4=4AQG(f=K=;oyaIjNJlU5Ew~FNG`71^LXTL zxvsg2Js)gxC3;hnokZWwAK%T60$4bi3cbJ!0MW>B4X|TD4mMSWHwp4SuomzD4$zD0 zIe}&s2>@y1>9;%y$tibpaR(q6RCC_bRU>HGT<)gIwoJNL-J^B;o*bGwZ>BzMt_=Iz zy`4W;Xqg!g&U0K_9m)OMv2T66xhnkZ9S*jHIWlN=FS8}w057r+`!5Co{?oV z0yFNxOqB-1DN`Yc?4Kx5zHTo?Ip1Rd|08XDuznW@H@?j)E017_gF*Uc1(b$5cjJ+N zOGDwO0LnhU=(QZpGw`PYGE%yo#fxs>5}VRzLX6oS+OMu*MS80)_Vvdls?9LV$IdAE z3J9`hTc~>|GBWm=5jFr(&_)AAfN@)K7I{V(xcM**zrRI&+x7;<_`V7H`)37+I6sTZ z4wNrl#HWV(v7KEG(k(zd?&a4@FY{b>1Ir$2*UQ)QuOB;I{`KTW?**{1PZ{W$a&V3a zCydBi%QBCtijnbH{kffg9c?)<7`NRwR%QOO{gbU53+4nI4y+hRa*yR(Xn{+l&{39D zZF#Bqox+b&jd0W$8&wOB85`UB^r6N-t`-b_+IZLxTy%tWlbyI1V5U@&Xivu3xVkeV zv7{?W-hoxME&GS_(p#%nXEl8ow>?)}R;-KLKcRr{iQcMN9n6#nitW5HIGXxf-_Vlm z=C0S8I(rKJHUAt5T^m^Xrpt=8DnvwNcS2Tg^@1G$yjRhYhSBAA)N}TWVD|7r);=)( Y2RO<{h~ee)3IG5A07*qoM6N<$f=IL1k^lez literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_controller_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_controller_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2b7ab9e50c7b8ed458f59e4b13f99dd5ebf9f0a3 GIT binary patch literal 969 zcmV;)12+7LP)VB+x~cyip!v;_)tKm8U_{{Gc)WZ^&z`%p z*Nb(RO7?jAlw0PnD7R%L)4i|McRVrGr3QQ4F?rX0{6Q8t^dS0Twuq z>VQC>ill(5+3*=JUS4@U7S{lz(`wFo!v_W3y%f7biyX7s*Vt6g-uovD*G=K1r8ATG z(I5K4L3f*3=Q78Ihq85l+Gu8fOLwN}8V1jH4c!}|U!l|$Q}uij)z-+wzB3x01;)s0 zvL~I)&ohWrpA@A|W)YV;EbxO7-Hyn(qv0uma)D~`*||WXvV6%=2Tm3#i#o6ZmG=!C zH?U^TCn_&4kO*K$$6%E;97E+k#P(yw3e>7le>1Wf(VCA^$dd<6C!*_U|REFB4m=#jmNb^|AFbS73I zLg(j>(JU^Pd<0ib9lbqa}PO)-su>c;{MPE-(%8RhJ%p0n9D}rBQC~T2qmX| zi!v}ug93tV+*z@5(rEY`&^#Jsi5c_z12Ja+rGDI60P?C-#~hL>p97_b)5-Bg0YvQA zqSA(P$R)huP;@K|PaE~t0o-8>wK12Uf{@>)W>{%Vev9vS&lh?l0Eg(LfnN&_(u#0A zM5jHZ)WF&~-xI!fadX`Jr$l7zLKL+ep3XkHB*43=#);cvL4$*Ca78v*<*xTqiDnhi zRgUwRfe8Zy5cK7P-fGvKc-nOufpO4B=JG6hi{85Y9riDf4mE#8(KiAODAAYMnNR<) zwrw;BGJ*05P+7QVd3{h|6-aNR7h5aHF;ATbn;O@@RN?SKpz;f%Qz-5Hd~W}hf{L(L rI|i#TS|8=S@83z+Tq?G>TVnqKC#5<%z8DZ600000NkvXXu0mjfmdeE$ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_decorator_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_decorator_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0bd6da2826db85d2e4c2a1e2cac8a8dbb8705236 GIT binary patch literal 953 zcmV;q14jIbP)dsff6sY8KffS8)vTC$5(f?-e>ZAC4|WDe8Kbf2&9`<{Onrs-VjH`*Vbi*wF% zp8xs(dCmjZ7a>*WiJ_Lvz>&-MI*nt7zK?>qSxrY(Wz&0Qacwh+l-mv3B`+j?5w*7(N7h5K&dB0QX{i|dk3S<)ouDIm^r zl5>eqzZo5V`JN>T@`rNOsZ`tzY%1i{^F_>_h%NXg@bM3ZMgkRWw#MAdyn-MdZpZme zI8OoLaT>HhjS!DHX8LfxR8AYBRP@v$i;5(U0&l?m*ODjcp#=n0ciA*F{~V?zW0B_Swwt_TT3A!p@iK@vg&+ zorMqx|7h_;Z+)?oFuwPbd^eZZ}p3TCKiS4S((e~A;T2?u$&>>n(7 zMR#-ALJ|wCZLW({{WX-In(e6T&!L(g{D!0G<{u$QknM@T;cTe{=Ukpj!F|->~ z2s&oic1(^S1{Y!RbueCwjn^JQE^9jvj4exGmV70%y`cAI=iEHT5YGXpFwL6qS2bGm zJC+?4(`Dz~`K=$$CI6>I`E=4N=T9$~H(r6dWYIPSR02*0avsL(hi!E01$i4)$?(&@ z=19Ye1UKCK{&*(L)+?X^+5O%{w@z1e?g`comgC}2G^ffXk-KT|m@eINAv$|s9q@}c z9{AVkRYJnT(^Uh))|*eCkqhs#u`LtIj&zV6enkq-m?b|0JAnP!nxXb(6KccPHH b*9?CHA;PuQD!Db700000NkvXXu0mjfm=eS- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_decorator_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_decorator_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2fe79c968cc71a339313b25d57cf6143bdb8cb4b GIT binary patch literal 1010 zcmVfJa&L-D#Nk4wGJb|~sb^RUkY+d;OC;0S@g;w;W2)!ty;-9lYYHA}>)w(l+ zwFg`V(zBR1=dwJqJqnO8+$f^w6siy)I@$nVRaZ$ zcj9ay0yBIS+O{KC*6a=P+UZi+B|TT>%Q8cB-`>LZzB~A6pcso#op+w5^6&A99fT_u zE!oD7zO*%J^sm^_+S`al2eO^m`pt`a_W6yc_vT#W{be1$Hk5R7CNh@~2TIsj*hgc@ zY4Uv$8^a`g!tv=92o;FMqIZo|HHW}^8mRv4!cAoR;(tC@*xRL0_VegG078j0Y6|*! z!Hs*YeuK6 gcy}b#=B|tV4I!htpKnA7oB#j-07*qoM6N<$f=PJiV*mgE literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_filter_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_filter_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..51d9e1ec9606e5cf0eb96e1e7fb8576139b0e877 GIT binary patch literal 992 zcmV<610Vc}P)W?|)CbZal?JonX?&8E4RBl(B>%X44% z|HuEj@9TkEEV-FOPq&=NH=_59g(q5%ZFpqte+TSnYFh5B`wqiTD5EB2O6y8W#&1;X zEo8Q-p}||01M*blW6=^~g2I0I(GSe60a?rKk(?s)Mk)RSs8TgQpK7T=*uPM^*-A>VJaFN$y28SdIRP*I(2@_l4?LER zIdCC&^#ijrZ zfEsVJ70I(Aq_Lb8Ic+e{T9rXxX|N(ot(Y~L$?=^tYy&WP`{)-|%yCbIG?scIS-#<8 z&q%$8w(_IO|q&~oasm)`ugGtav%{es5XnM6-~r9R9GX& z7XJtshv`e6OI2N6nX@6jm^Wt(c81@e*#8PE!W!Gbo^Uy3kzH&F)#8a_g^Tk7s($R; zrzW`cR#*E*fc-r^8CEss3;mu5+0yIokV}L_*&a%eB1CUcM4oNcJIzqaSHBVF`Pqp` z+yK_|imT3bju2pAgO?Ahm`GJDHaIW9V!jb! zH}IiVJ52>(&>8otikveDjtCvW;}qD#tjIW{7lQa7^{(QR8J{^@WFx_GPo!_wU^!2u z-Z)c|;mk5cj0kuleCzi9b|g4B960~4wf4j-2mB|C76er0-Zx~%lW~I<8IgxVDem3n zZ!3M~ws*3umCp?UU?Fo>&|v5vo5K&tt=Y7oX*)>rhfq6qBr$;wT6xW O0000zXJ}ow5<27|22jmP_7!+9BQbjn4T}! zSxRhIbF;H9+sPbH|9h%2ymtn`I^-GT67V1b1hgKgN~wZF=UX4~L|+!D0D^!ITtcK% zm2-j~19E25uO;GS%~!>L05z&+u(Pcm;l-t@OSXh~>peehvZ1teVnM*+uC^lJ9biu? z;=o8=$vqo>>TZ8mJU;rcwEU}^0MA@#-RNS^00k)u@UMp}%g-Jqir!Hh^lBoYTO z0BW53tw@0tA%*2zkqZX%m{l1ID9u(R(~8-gm6(2Nj%@&DR$l$YiaG0ukit?&Bs*Yu z-!XF9K{nio@!U-<0yx^&k>k5^N??-;?Wp=7`9R^Vbj@1Ab&_7%-5e(~EE)Odfq+1p)0eCBd6$dhGv$_dA!cdQlmZx3ADQ|2%>0i8ekYztfV z-tCZ)F21O^0S%m6v;q-{8o)Zv_L`?xP8gLZQ1N^Fy* zJZL^cbj4c*k+DSq7W26XRlo_Wc9sgL=+9TYR!4#{1=eN3w#}BV0gwKX1i9HJUim=i zdN&trkxlo`IwHeKgXKFSrxUJDg&bL7MT+NQkM9UwuG|&;Gb2q#2Y>Sp)_gpD?~;IH zd0WQKbRufdawD=k=#u+de$hTeG;fW)&x(v&5#p{SPPQf*V;ckGhj-d7z!>O`Ih{pc zQFSaf3A88s1T`bSdtX|SDByk2G<94P)SNknEH$7@X{)AM)o zx~nzo?A+zLZXt60dgR8weP87O^7+ylW9%sK6hIKz)4-vk67=*uwjbmukOX|df{p?M zBBo1Kj{}v9_N*~M`JGby2cY_vNu|0@14mX%x3tc!3WaoT$BvHaWdXgtd+V(Y-U0R& z(;WD%xj9*#PN&{C#(vt=)X}p9kWTN}tZKdnwielV@$_=QT2hXqgCOJ4XlXniKf3^n zOI8i-7SUpxTi^#(J>fVqXAGS{1c=Pc9OrihD(OYOQoHiX9zaVhgA*%D0=Ti?Y4r6Y(qh`8e`0tNh3r zSYo|qt@AR%MKD+mF`0{Tf5}C{kw0|4uwmj#_VJHynwK4sV68B}vbd zjjCe6AmTBROYjv-QBR6`uTO63YQ@mnxFGRGqPy8mlE^j?6#ud#+_B zY<_NwdLwUJb;gVYKl1la=yOZkGs3V4o}4vff-!9-CTtv~xOJSKmGO;)#Wz z;&~%MT47#94u>|6wiTTK;KGGdm8x!??`tL&du67W+IyzI0ERI|4Oi~mT>t<807*qo IM6N<$g0!j2lmGw# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_gateway_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_gateway_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ff85ad55e50008bf8dbe0c744e873767bc3b0c59 GIT binary patch literal 1017 zcmV)pn?f!CK z*Y*EjZ}$!N7;-m3Cr%WvR&|z)kJGk(eb?y!E)WhEF0*a#Prz>?GUD-=RiRL1Y%X8# zd}Phdk9oabJ8<)6AhvO1V;o>|(w}7*?p5Gv0LO9n12qX%(Av888IbKj2(SPb^eWIH zVzj90J3#uB`?z5^sdH8F9|6_(jc~YSKk(Xo)yU%;&6D4x_lCilD*Z7queh_qUtL zxZ@}0_-EW%V=&KG5e{!p4Tb9Zc{iFPJLUYp?JFM`r2eVH?Ea;khRZp)DpV}}oexWY z#5CMKnA)Pb(9!Y6t3IFJ=S}E)BfVUlD1#pD(v9Wa2f}@ zAK}>*7kRrlN@`Nvwbf_)d{)aHD-f~rML<=`yQ+>3Igaxpu<5(Yt5{??y<1lFbO5;* zhEf0+nM|TGvzO;rbsquzd3kmH^9Xo;0I2~EIL=I0(a!5>5mj%Y2xKRZuzC3vj`U=4 z^3SE@rw&YfysmA}G|z2Y@CbAaA8mn`9*NAu<9LFl!nbE&3BM^HzW_vFoI*L-uh3=1TC6oZpovTY% n_2ycZwr6L*KAdQB_XPg{8g5e%JQ|b}00000NkvXXu0mjfvxVa& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_guard_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_guard_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d0f6d9dd748b6d875ad110362ebf140076424eed GIT binary patch literal 1018 zcmVCeU_S1ZFAHfqHpo#G4Wk6TKOTrFBJ zm}}Ccg{|76xwW~>Eetoc2xnuqfwE}PCTM~TVX;glK;d4v&-46x5g0-Nx8-*`FU~o? zb3W&L{`?NyV#$9QRFZo!sHQIR<8OZN_@d$e9Z>pMZ>pGHBf>ALa-Hi^RCQ``_@82} z*(NK0w84rbEK3~r#zsD@OCJUBS#Fw$_9(1FK$F-DY>Uak+j(72sZa{627G`A^Z-8! zoKz?S0^{M4k@*OBj&xlmu$uOb~Kq8QMTi7fHKDhx{crEV0wWP>KU~Mc52U37f zF}(#-`d*#@+&JXwg7$#xQj5qk@R|kj6qW-kVs!Qw-P82#M?#%9-J#ADxVdcsT9~bXMoCU#fLMijM+m$5Zzjv`MNE7 z+!l|y6rbUQVahw0sxJ%Mk|#ra25(K={WaU)Amia9SfT`$x3aeMRr1PSBn$L4bTDgvR? zI)7omV`86#8IqmPa5EJU)d!Dl`e88Y4t-!kKIkYyy+E#k8a{gzYu+%C!Q1Jq-^}^C zEk|*!_~&Xu{WAh=^g9){0UzTDhUi3BKgxEH^M)u!)JI?QWN_hmMC3EpYJ<+aOZ$V?JIYzY<%I7T^n*{ z1>}E`^@mz^rln4fZ8~fGrrediyRhiqt?#G!&FFqH9SjxX?6GL@*^lan+Oh|Js;&$I z9iIH15$61(sUoA@cei-1ndU|kdaZ<^`?_jMhmtayD^s$Xc6pB7Ygo~9z&fBTereCU zGdh?m5fs+Zvg!~Z)$^`qyOh+}_5IHfA1jLPP^V>x5j zi*@HpR{KbcJHB9fM%cz8A2j7g0eo&^nTVcMSc`yWvInS4Nx}AYJsVW02JQ!ZfCbJ1 z?E*&?wgK6b;p35XFRQM8rivK^wY6$!?cRe>HJ7?;;Kr8(B3}6Q<~xRx%_e#C&id0U z-L^A_T%%R4C@HMpxjXNVxIeM;?I*h*oS|UH(_OclxbrQLmr~V}P?hHu{mBR&K>t{9 zqM)|EAO@3<>`%yQ6`N{u3wj)p9asq?+5%(%88?kN6~KpA2o{a__m5?zWKz@qKF0)(B-TGC*nQMO0zOv42PvXIf z14TVkwvV6b3@LUOur4J6(Xy8s3lGk#lNFUu%TDYPcx~PUDz8=?4Aq&rLqQOIp)pkB zi5~XEa=m4ZCGK3^`%HWc<`@-UmY>Xew!UD1?LX&nU0o5w=`3T@`;CE(9#!Wm+B^ zHoSPru*hP?(YS+mbXEmElL#pws`ni_?;lDeWD`)@k^u`;&#xP$9VNflcR4;{EG1zf zeOSLnP1;lS1p~7Zc<2!oDuKON!H5E&pj|bp~U z{`HCyj<4AjdXwgjbw$648X`eUnrpOh%2#tq``+l+zZY8VKOUrf!!jP4lc4nTqCs`N zkgM@x&xw}=99g>di+f8!G!)f`J+XtHSfY+jynhQ#C1ZB*y$i7-U;y-isXVj(qQ^g5 z6$V<9ZGxIpe)+*Q8UhmAZZ!u^1f=pvnmIXc{0%@>@|k({K{9eCv}w~wywE3!M#tDY z-#qv0)|@z7#*OJlG>lTi>7Jce3rYcPo4?N%aq=gu(^kB{csSMKZV3JXBzkJI!yb`L P00000NkvXXu0mjf8GO<; literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_interceptor_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_interceptor_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ec614e184ea888d67a8b9f17223744926e61854c GIT binary patch literal 1011 zcmVzI$bYo+-vu7w0+8 zdA{fS-FeP|I}Evk7v>Ef&rRc4XKyvW4K+;eX3@ z7Od7(;Usp4e1l2O4T?S*14!_AGh9n2mQ4Uj<4LvsustRPDTiKtI%?h51quNV-~yds ze-)(JLK%>DEB)pYXG!wqV9gvAa|tRc)W7EMTCuitL3J~rE21Vc+8^9MI3qfJl3G_9 zxMxjogM*YBQDPWZde5a?^|+q*m(}ffWR8N=L%TD@xF>+sv7P!Bti0$t`jbYZzgcX^ zk3aWpup%<0K#gorF{@P!F$`D5oKbOt#+W|GrAfv3j5t{XI=F3yMV`^bFO6tpjJ8-6 z@f(r-iX1nh=~HXyju{pKWE|d|CdAbP_XDk1T!d^O=XP8(QM2lNu&QIK4=$C|_GBC` zf5wZO&|Xq?VKV+eeR-aXTP^TZYz*WB9gFK^i)4LMUM=wEV(VMsjgHNGYINaLK(HN~ z_q?TIPA&El7%^d()d#bYTUU`hokT314}r*1)#zX9K`ruCQ^k&Z2)b zYmu>w>8HohjNu7ySCSKcu(GFUsBmdV^+sQN<(PH4yfV=SYy!#>?(3|YSHWzEV2QfV zU5ogB>58PRs_T2G>4$K3;9%P;d(Vgc&wFL!XA5Bw*%_bNSsk+ifJaZ%q=`5=V^Mp$ hwP@E+EPL-5{sI3aEAkg6{F49x002ovPDHLkV1kP2;0^!) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_interceptor_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_interceptor_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..294ac2a4a9efea1a3e25b68e0ecf0da363044266 GIT binary patch literal 1008 zcmV-+(i_|e`n^uyRdQ*7LbbyB9(iqZ{Dgg8YPvO#>P#I+C*PStC*@GvFO95 z4-IJ_ATfREn^DsQh1h7*#o}-^DyU} zIp=(5<{P-pkXt#F@#*U|7z*Re^sxDp#Q$C({o~Cgj&{DYFd*3Ygg5>w!OyS#SFE#Q zwxb~@dpMjK%W;xy_-GO!-RmngmJ3*(1<0As>4-v8N(}P$ZF#}9<{g1Y0WV;H3t)Q% zIc8xyP&6BU-S7BwF9q9|uvl6k6jFhzs~uu(^NQ>iL6x|ADiICtjV-b++!S^;*A!HZ ze(fO5S`;a)%cBE%BVOa(mEXDb@g)oj_iZZ^Z4LpIsdYUIE3X+xeXm^iCyNaS2-Nlm zLsRn%l$NKJ=t?D;6qZq_mx25&>m67-jOv*ae3eAqO#wZzLrfi zTt@C)7b!05$MH-Wg)^hl)Uo9mXkDkQMZqKWPaKblbzcS=qgU_2am=Ma!R1~NslJ}f z1i;LA$jKie&vWrB0sqepp~$iYH0lV-HUWFUg3OY&*kt_99~`aMS-_u>Ah%$c$dzKo z#|rRg#HPxtPqoeEx#@^pIIKktEfAK`r~}66q*BJOMAgsv?yERGTwc{T=J8I2``BEbWnWR>b1ey=XQ557DiO~*u9T|7;-2|+UDw2TR#W6ke!p?`7eMa9Gpp0V z0;Ktp2TMwZ>ouxddE~){^3gYa{^S5ajH*^63%-%hJ*{&2|5urx$vsGu`%!eBit~&-48} z-}7+Jfg2q1Uy3x^n8XCtWa$%n#{Pdm)#}-lieDl8h;o4$iDvnwJ9DjEJEa&aEVVZ! zi2A=}@Y5UsfzBaf)4)Rj6tdfamQW6KUQ-il+JNOi6!1VA;Sg{Dr5&ibl%1s*t-O|t ze*u(~VZo8@KZjl`A&O>>~P8-376IVPUhf&>zVGPfHganYl z*=K;aF9VSGarQ~z!B7aH3eOINnOE&?ECa@8plhD3p=5R=+zHYL>VbQJg`u34!<#z! z_^rY5dmy`a{HD#%ufgZy@&f@FNkYC?Ju4NC!l}8{R zfHS8j1?ZNon{cJGx@GGU0BvoJ5sNIs*`IM1f9r_XnOUd^D6HxQZwb=1l+BZz+v_=&)Pbp*$glW@qdxNv{M`OL~lE5)9mtTZw|7fa6?nLcDRWnD5v0;s57Ds+~ z?0jj~u?}B7@G9O8V~PV@{Dj)$^U|+PeneM05|ol(E4jqClD(zQo?5y;xKN*r4sY0I z#;Tse6u(i(h{z^4H{B810f2t=P7M*W5SuwDk8VC6ruK%#KU88IK@n$MIsgCw07*qo IM6N<$f&nqLga7~l literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_middleware_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_middleware_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4bb0196265b83fd3728675c46ca4a9c4f8735fcb GIT binary patch literal 959 zcmV;w13>(VP)&f!^fx7{iiZ%k(89C6Um6fPd3)}+ufCc&yP60Ndpcc3hD9*@P zDy&l^@4wbNeGjCqc}O=uU4@MWa!bf7zTKZQyDp*we%6ORpsh(EB6pY|H8-lf0MOy_rv zbkSw!;cVG~6R}YBdyy-N5QXU7`KgpzxsIb?^}yZuYk9PYuF@ z@t6a@es|qqdVc?`9ZFGua_fu7E&&v5sLfPH4gm||G@jJ6TFh55Bi{gBVXrUuR4_OO z6HRs;YpEEC*W5SANyOhQz6^zu^xGxTX0a8Hk1~dDz zZ!b&&F7#l@rd_Fyr9Lun8^Un`-x%ft*>NTtkLOF)7u74zT+-zGYwJ^EM7$&G%G)OA zini^^6Qe^I9*74ZMm>J0YQ=$>on&L=;kW8T2G-9Q09B0@Wwq0vWB?J|0!rWCU+E_5zsla*e>=dMg9lwVVC6cF{>5=LnMob~4c-6&SE$I|OVrqW+n3KB zH=Z&#C!UYu(F9XmcDC*0fx#emmVfw3|KMA?81IK9=14XEZIVdARs!>*(D%q3@sA{QFo&i6xP*4UC9LWgxRX6n6rE rO)V{{5j&R6h-nEH77oO-_L}K$@)$1TsRhp)00000NkvXXu0mjf1{B|= literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_module_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_module_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..24c436e5f1a38d314b8005cacc1515a2be37189a GIT binary patch literal 1013 zcmV-TvZf?zjZEqnBi7ITcD&8LtCy|AF5c>7^4DBP@{%MW5tBj5UrY&+N7jD z%uCf+3^iJ-mBa_)B?a3DV%moqC0>b;*qBCJ3(*D|sX7doVSwSB25*T+9<68#WTjE!% zb(T~Mhn-cY1L-C^b>hrhFHQm2wtKT!au%or&_L!spdl#-h0nb5kivFEHvk6kfwKa= zDs-VV0lBl~lT)d|tbvxsD_mR&2#2krzf$&rys)IZd7-c}F|D!wgS$o+1eES*F0p)? z5jG_w4h;U3F}|vNB<+A@(RSjEm%hFPux?jNfu(W`SevBqTs&oqe(S0H2nmiSUI5=|H;UW!D4mUIc`!v=2Rd@^Rq)BmfFzgMAQm z*=1|b%>gdXVB?6Z*3qMfQcA9??y zazrYxR^s^<3OJTO+mys%iC;x+>!Gant(zmf{KHyy_x^I^vRj-Hn5Md5fZm}S>5rzP z2zhA}Y{(lzM27&Zg~Ydf((!yC)&9Hg
zo;qi2@5!Rp{(g5tgkeMx2^!%9l&UKyJP*~wAYi^2j`p*yp zqd}IZC8jqOM_-%MS@4K#o8zvre{+q^?B^R}e>UUGgmL_k>)PdWYY!B~&Q%qUMuWy5 z8XPgTt>3TMxFp~}P0esnq|7mx*_u4uCA_85zSlX-D8Y1>>3B(auZ$snMX@< z{o#j8qqhPP(7We!7QIEyRaG&ddwxz(>-?DWl`&44g4f;?{B$sCH=Oz-^JK!44j^m( zo&_B&6j>qv=pBV#xgBs0yOvqEq2TvzH>C4y!n67ijiK!1*Z$Z4Z77M@)6k|I}*M2z#5bas@00000NkvXXu0mjf%em-i literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_pipe_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_pipe_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d42197b178c304b40c914d3b69f8a228d70abe05 GIT binary patch literal 1011 zcmV&PKYjyEQm%FLm*(p;Dd#UC?aj4Qd6O{oj#`XebN$!4?1QmIt>e+Sgn)fH#M@TkB^2gC9F{58pBa`bAk z=6cC|-#2}IeQ{&VNJmGOXrjX)LP0U^*0e2a63 z5NQI6Cd0>~N)=p9#lHZ)@2mcyp*BR;Ur*gMQ>r*4lHT3Ya_O3Y^-WC`%DJ}?9?dB^ zoSPeoE*!{=z3l>*YHw*dG7Yf7_e*sceCA+Dj*0&^$6BZLR}uz40DW_mUgrCL1|~1r zh^)ZaB{@E+5I7;uZAGcHbM7EY#ew(`yaepJ47ka;J)@p|26!Z=x?vu|ZX7rN!&g5A zxLkB|GFe10@v%e71dbtuge*o_nwzjmc}kaW+qCJ_w5~KKlSLlH{EZt=Pwn~b?TG-_ z3arWnAjnf&8XNb{uI(yK=<6S>N!ww)S&vEwfq1>QR6h z0e)v^!4-x$>qVNU5%$ptl;*-lWtDlNH#C#4#5n= zPOMD`4u@O5b9bup7cEfdwVxm0KbHCWg^Ua{5Xe< zpILZ3K$m2)c|B1xbl1VY+Q9{R-?x^>zu6Kv+oNUTCtxMe6kF824QBD9U9LoMW2eH^ z>9DYEBq(_B*O9V=UFpiT!`)tt hO=aa^E@y9;{RP^DFHW>9mr?)#002ovPDHLkV1kTJ-lPBk literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_pipe_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_pipe_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f9868af31bba8b83a8f6bcf4b62b55f71a90b936 GIT binary patch literal 1011 zcmVed=WNi8B`u?ne5L9tpdB9Wv?%bG}# zRKY`Ul2~CILbR6N$RdJh1w|^NNb4W5M(l-HwMH8>?Uv?0o1`au&Uj&xCYrw$`@&qD z@B8L^-}jq21J@Yhzig_muHFO`W-^)XWHOol-wEpK>WVYI|D}MR42(x|a`q$=iOI!k zt(BTNj$@@#sfcA+6P=x%R{%UI*DERe5Zn(i;kt)`+N>PxjmIAX8iBh28}NZXpa)}4 zB18*NG*dnmlrn!Y7ylw~97kRr8#{~;`&V+e08$paLZpwjw~s7Iu)n2clQiZP1P^A_ z9R6Gz2;MmCPQ7M4lk8}3|6&2bvyM}ueD5OzWmz`<8-}NhQeO$*`yNQ;Np*|kI4;Z_ zvL(cQSh_6BE9C=cgfXp1nKs6JhLjN?G6qirN9G7}jd^p@){g_*v(gPw1V=Hf`A4pP zmS9fwfkdJRZ~C}FlnUrZ;N!CqL3wt@X6#9|p{=Ru+=8hbNF<7E2sw?7y|Xc=qa)^F z4gn8jLm&{l4#wl}t#0hb2czQCR$zW!(4zf{aOBl#Ev<+-EmE}=}HGih-9XiM!)pj>{-}(O_aG?0Fckn`%D1S9 z4zf*+eSnbRrpIaqmnBfP`V=E-fiCpbxIviT(!sBl)>{y;PW#*u9q05wgtOzh+z@u% zXEt7Jo2_4RL?Ju$iPF~ZN?Xh<-?FU_r+qOIuuNFl*5=vV6E_d{S8o^?j%Y7+ZY=QV z^F1YZuSif|RW&pn2*oU=E0tFF8aucyzVnePgfOLf)AuN?hm_X1GBEvi-*qP{3Nl0c zV*R%QgJ8DJ_F488HSgGw2D<0R1V;9a+n-BI#{lohnY?#7U z|6m>pLjH;ECGKXWt>aRv+uBO|8VbVRUe}YqB1{@XGr#n{d{s~uc>UC=BB@MyNCm## hQ&~Bht+;D~zW{fvHIlG_QqBMX002ovPDHLkV1iO{*6jcQ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_service_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_service_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4a7b181f4a62d0645559084b1da1ddac0c781c44 GIT binary patch literal 1026 zcmV+d1pWJoP)z}ArrUEcgPLFu%usGgtD&~p4e+GkvTnq%K z23WB|rghyF+Y|Jz(Q;%Ez^`SVr&Jq?RbZIzxZAtoJd{eIP>P5f}9$TKz!S{sOi$ zwl|#C+*~yTBbTgPXQkMP%{>cEShZDY`mweiAr^=Y#yJ~+onrv2&3;j~0HvOc0APW5 zU>9)rO$V=y0>CBkF?Xk`~P*Y0f@`wmXm?)ocbbHkW=uPR_go8yK6W4v7)04x4J)-)I@+g*@elELZw&kDA7<}S zbtvp9f1v8UD-#05I7jXE4Y@-Dh%(aLB z<$Fep#~qR1b-xvn^P@8t5l=*Fe2%-+G3Fj?mDXA#BJ4hz)A2#|Q&)#W=5kJI>q`eq zKhL@?pr*34TgAHRj<{LI(T{7(+yf=M3*UaOF5Za#!e|eR!S7SUZ#;Xvw&C~tuNHrm zp9-Aw6k{7<(!We=QG@3b8$w|{uW!(IVOn(Xp%0Hd)0;WJrDFNQv+oXt<$`NMXMj~e zsegXk`x7R(SxR9Ed+RUv#hz&Ip0VK2Pnq?BbIGZDJ}cVV+8O`6YeE4FL8a8DsHC=v wh!X&;EBiFTdR|I&)NsT8^4EJK>Ahq67sop`G#dAzBme*a07*qoM6N<$f?_=0O8@`> literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_service_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nest_service_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9ecf26d6d3b8181706d3bff18b4244ab983500f2 GIT binary patch literal 1009 zcmVAcoKMV!RlsM3R#(QvZ9gp#*sMz!3U~0 zX=_gayD||61_s*7R;|4Ma)Vgsy}|azum1yBy`^TgRq9iajTs70si>!M)VHLh10<9; zn!2~Et1$snkE}fRF(Vm^TY*kQy`dbUhy)=+0b?F-JbM6=stJ)TFK4>`&^@a zmzx@Tr_alGKU*rIjtlZcW(3NBp2dy|Rk8QbafNzivHGHTx%0!f>zu{LcYah~tF<|= zjbXN>+-&fC>Ai8>7%VUzrmY$h==s8fljf@4?e9kCLK|H-=W58Z1bKQZAiAQV_n z;n?r24R_#?u*&n2n$)FvE6~Q2BA~RYdg%Iv5uHjtDX{0SoHZC_`-@|J?E)oHHvoWj zJc1JgnD`$b%SyCnTuo3d$N+1Ss66*oJEvt%+9@m5rS zao4VG3j&%Njz(0TSLzyXi*}ty9HIELQ?Km-C4uDV!`hgLHU@EhlikZon~Q8XQaSux zIS>Zfn(oA00D$u+YNJ5w%rk{Jqi+6JCTU86RBKk{2N9ira45g9E2;GRK*7wM#r}h| z<=FA&^{H!RTAQ;dRk@@0`k`Dk{#;U--%t`osO3uUTmN1t1KaoNsUoqq#GgI+{h4Dg fjb?he+hTtMEk;3?7VwqM00000NkvXXu0mjf>QUP? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nestjs-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nestjs-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bae504f3d12447a9d8361a2ef21cfffa38211ed1 GIT binary patch literal 842 zcmV-Q1GW5#P)TDxLevE$hG0lw z3majVKRZL+3OngLS7v;DH8dwr6%IL;d<4-CG z9cA9lJ+d=?)t*b9SQ=g@6PW9x~c_WHVPGUP-#P%T-{WN z(C5|adr_DbP-xA5Qi}XwA)Q?VaI<;KJTIRS`~etn=_#op5Y{+%9%lL38G2KInOir| zk{yzpIEv|AgA%CIum^&+$~;Nu%xwNkH#+an3Xt(VVyDcG;ilb%LG%7&oZ4qdD;a$0 zy!*ZEcxsE1$z*=A9cA-iXG2A8PC-+}eEbCr04GYr!{65TcK$LaVA1t+52B=*5B`kl2hUX
phnn-hT1&VzN{yI zy)wS4IhbmJw;Ewbfp3B^vAVwJ<)19!PtGJByMkgW*C=l(MZuNDeI5VAJ=}A#M+?6j UpVKq7$^ZZW07*qoM6N<$f<^#_5&!@I literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_netlify-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_netlify-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d25a87dae107b56ed88b4234fabff7cc72958d01 GIT binary patch literal 987 zcmV<110?*3P)H-fRzCO&ZN&w zBh6E8ia_y^>EvPsjcTcPS z=!PpOX=|>}^wFf0_sv;gsdk&|6-#-@T*di{%`Uqkfrnd~>l4=|OL;H}Hk-3O zBU^W-vTCa$E|~L2ULbM*GYK|7(wco^D6T7Fu=Z0Ztv)?t#xIXGwU$}LK15MO ztU5ib`kg@nPwa20Lo@(sDCQ`%9T*4nhT;W*&?Jd15qcD&Jcm1m*b$JV zo_3vjuI5|@;Fe1TN3Y&_ZC<$Dj``yedNL!Q;Mi209<%g&xylghgSZ#(FT5LK;8jk} z`2{>P1#(?ft``ZwJ^rvT#3{VC}TeYx8*qk zRvmx7a_}SPt^AX=mqE+J*r&SJ`uX1f|TUfDvB#sfsb>3=rwbua+Krg{u#GY$?KJoC9%AV_C zMUQQo0b@3JTJdF*Ti+<03P|G|o%fLeFaEzI)F(cjmqOfNh3!N+79R z*X;w)PqNpK{jhEOOFEsdh)82g0+mXoyI!x~0B{GuF+?WYPH(PCdsP+7GvUv0gMDM3TSRc0Jq{;NDh!3 zi;2HfN?nMn5s{ldXH&p+-BSR14axH>D=YT_%(TS4Mx$Xm14qi`vJ(mb$Qu#?0I5`J zKgnwV{zf`zkff=`^Su60fMky;QEN>RxhEojNIneWN-5g5Z9K&y(i82V?Z^<3ZU9q> zMB*`k*><_D2s-$+fxN-h)z#ZdsbK(h0I9XLHKVbBGw8tRN^4C3wqNv!WS!&~$zjW~ zGNwA)wr4^C$8o*_SZd?O@*leZOjWDZaRBoqCk!Qv>2$gn3iu;;(%_^|MD|9+&Loq` zQGZwMGZ>l-#&~#=Ez6ofb1JTbQfeB&*=S5e9*D?J5gCu+Uj`6%77AoCncqsOt7s0a zPS`>6ty1b4fKnvx0k{&q8`h2MY&QFWC)eJ`~&-O3O{7iD>VQB002ovPDHLkV1ggaRsjG2 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_css-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_css-24.png new file mode 100644 index 0000000000000000000000000000000000000000..10033d76bcac4731725eebebb52eafdb5cf7d045 GIT binary patch literal 1124 zcmV-q1e^PbP);sQCYtb7{s9FO zzG%|KMExMBQ5%D9qC^W;36~hOp(z?F)f%PUw$Qk}?tNx=F0UWjT}r!KG3t{{GIMg? z=XahtnGF2T5_j7;(AZd@M#K|?P9hdmt#gO3UN!$UK(@81LxIUAA;ckIpDCQkU@BPw z%t}NTLi&Tk>|PF*74XOQrfmuwLedVDrt79E#s`f=#iI6Ui8zap{!~rX*=PKIJ1by# zTVuVWD*FXI3$iX7*xUY8_}9L^qVV8vxdy%|Bz{|pQ~R#<^a3cE*P)2>0{Ln#bA-Ux zw%1$x{J~u20F_d3L{X$aUC00sa%8!a`42yYyQZ;{h0fw^x#OQJ-iVn8T zwJ8cU&mCCSU5YFKDan~&#in{zZrMy~C}5h=7}a}PSW&VnCqOs^mH-4|Ecf*70EGOX z$A?dShT?X!@j&}>A(jHjk-$|^PJUwpPBcdN>vQ_hC!b=)6KrU2C9kj`M+7C?4rJCH z6diaPp{m5re1kM}nF>cZ-}xm2vlhngc18-zmt1dcX)Vx>bgzO1-@!;jL$RI8n^|bC z6c$qT)hQH@hv?}uq$VaJK||MG2(BYw+@4K!yYTqDndekINiweQp6Y1na;1ywE?=G< zdY~x+Xz7~Px(CJM0ibYi3xHMvtbOMSlVf2THqN!G9uH+TWdMxFO}_tW3?q>Y0%QR5 z8U^kF5P2@Nw!Hv^PJW0rIgNC?LgTvb%Zpc&r>^Fu9pwN_8j?*lJ}SH}&IDq7*K6Zg z)>43gQ8^DN*!3vt>JrSG~b2vz!M``{MS86oWuLa=JtvI&jM8}Rd z8%q)>h+zq+C9BYTdeM7&iFI|eSeh9F;NA)^oqa)^>tWX1usQx5zLw(t+M`a>%f8XBwTsr$40nH>x3&MgJqtTgYrnG~Kr4~vAN1~*fX_~1wo5`Na zSDnV5cqr{5X3Pw_&3K`lF(oZP^q4aQSi?<*AoIZCa_(n;J;=lB!Wi$0gtLHA zi8zUn4I?7jv>413@JDgU1_kya@c^q5=P^|bb%p|2^W?WB;xx$mYu=V~2f#1|^lotH z8>+HLz)K+4nt^rC3;xdb_B4N2cdCMK0u5js-{oy<2T*3lp^7Gf{2*0wgdn4;T+gem zNtGO6HLwqWr!N|vm}E`aPHZcdrvw;+zJ(o#)E%VNcmNn{_F<%Dpp5v(>Hq2*G+pQZirwZN2xVah5nV0-C@vSyvhCABHaja`uXX0V`U*nR z0LZQJpja*Q!$Mx~rQsP^vZv?q5+9I}_)f2_CgZI)Osh=T&lfwm;m9KU!*>XFb%K!H zyRNq8C;Zwx{XhaBEE>xy%K;cW`WdlXw~pTPjDBNF1-rLU+ z3rzJTC!7nA^dl$&(6?$daPM3}WD8;Ql@_=iXMyYD8A zExjC!J-p+mYXh&D1LXAkRhMTFY`KiT{y38-o95QAbtes1|0Es?qv=ixOWoLXea7EA z?5DB0`>-h>=d$}Fpf>Is9ro27!B=;LxNmfB4Y3%myR1YbVE|O8i$|W>j4kP(Fr=J$ zJaYho14eG!kM)j_B~KvV116Yf^4uBT&-Agd?cR$@i~Q@YGj}9V%U-tt?DicN}tBza+0pwW;WcCc5>enn+gm=I}{c1^<9y0 zrbHZzE0O(<#!DX`>kd61OWI-O4=5L^3S4DEi18%@64tSP)8^l0czCzB^)~=1r8qwr sIW!ucT~c|=)WeV7V`=^`dGE;n0kXwq%9_D)_W%F@07*qoM6N<$g6i1&LjV8( literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_html-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_html-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bbbffff36407d874cbbd8a564134fd259017c19e GIT binary patch literal 1097 zcmV-P1h)H$P)fA2X-nl$N$i`Xt(=iFA;xeu)ai%z6<+R28aTdiH4ZlD+9l_=_k z7Yc$m3L*|CYy(kHreR}aZC9DXgkfQ97Zb)38U4uGx?0+_Nt%=9d^}#H?P&9%qCRkL z9{%tD_xzt1-UI)0slO|{-rO9}6KZ$FNvFnj>%yy7ubTfFARQh0z|cgCQtA+}&s0t# zlAQ|yaY1#XBs{LnzEZG)fSXM%+ch|Z&K*0+j^@YIx&iyktu3V{_iA0MHJfeiKE$ZaHYyFo2w8eF3>L-P~U(6h( zsP1USXy7JMh%4c7>kaiGNL9DJj5U0f35?I#G47 zBPY`|*1y`ZWW)t6M*UP z>Dj@P-=ldvtn2D56(S!%kp!;LO3Irb$4RD`Ie)&;8&ksn(knBu?*q6tV+e55t-GSd@=Y91x$-wZQt#<*q7L0U{8MCwQCFWX1 z1%YRu$??5jf-fHqY{(e6ubt(OACD3M8frn)LHFF5)i#|T+h#X#ei3l*rAzUFM_Lj< z71DfjOcHWvc{Jrn6DVH1wgr7 zRCcrhFn!`Htcgj)g5T)b!j$8K+H{btr{y{(XU0AF5$`4u_8 z{(@`wOSm^ZOrU-<*3GL}6QjVL1SS7yw;p|Rm1)U)C|&_{Q#oUi>|97wLStQgQRk`+ zQSMIQ%w;eQA)9nQTXi=2`dU6 z=*3KSWxR0Ng)UL&YBpln++5~nyg&)KOkKn{pe>{mVT1Bk=&$`fUW_t?wjnY5-aY3z z=X}mf@;vZ>C2MuOSzGJSr{slxb8co-k6eDeuh0130M*o_4|>PkBGL{t7-CNKhZhQf z359ea$}=j)#bmI!fLk^0Y7N>^v;cWAyP->-EiVQC=)#@7L$Bq^DET*bq0rvKXrYy46?((40;jyLaB>+wEi@>TpyZconhe z0F>`x_bz9_b}6SF=_I^cULeC7weyZ!X2}W_N4xnR_Z&qY%2G4wYJt$8j?dw@gB>b z>6i>L1B?FwuBtFK$Huw-K{jK3Hp-i4#wwbpU81QJ;FR6#e@)y({xc%?wQG^GpRb-s zn@_1w$Wb7aw0uBxrcmn0_@$fzQ?z0w>SLf|zO1BqRR=3I{Pc4hjEH&%;V_^_Y|-1s z?(zJ)zuQU8jf6M7Icc36)^?^9Me{*gHIXBxY33sGgDBpzm-|0j)1U0Cse2@<%n!}< zXtnF;$U}~z$YS~Q+Q)OZEaZ%DSEw^6VsFPlB$~3tSvl~}nm>Jjn~%He{$3xN*!s!s zJOG=K^1W2uS^x+R7iQTb@~kpt)@E9NjM*Q!{smE3Y(nwx<*Wbz002ovPDHLkV1hEs B4CVj; literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_js2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_js2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4aa81dcd183aa66d2b516641737ff9088de8dfe2 GIT binary patch literal 1102 zcmV-U1hM;xP)0W=ac`O?GC1nYqV@=>S9TAWig3ZgQ6I ze82Pm&UWE{HnCR6UOahW)TVhDy@k$C{u4kyx7)%5cS&dju_J`kCXlEQF++!jY^|W{ zZ?$lc7ngg)^Pp4hE)LydWQiZxq{5+>i`(qdyu(v-K1~z zkg=^INpNHZU6%|1!Vr*h-!{yiQbND{LFo4j3?2Cb0Cy4<3M{OsFPdSBGWXR3FmvQM z0Art>Bs?~Wy?Q&=;(P;um`wuEuTx;&T!QW1t)S~@B?aWX^d#;V>X{!HL8uDuXCE_C zFuuILc+h-oc1W~@t(x2ZD(OuR8VLg+I_u|L!H$H3XNA+Z@#o#~x+z{L;{2$OEuokX zs17@6bydi4gvkRRLo`YR2p|El*Hn_~NyoWoCj)PP34m==gmpJXLQ`!Uvep$|nM?o( zkX{%7N&qsRu0>eQ_`ms?skhnz2qBrc22itpK+WmIx%)7Khg1p=PLW*`1gIiPU(n~e z-&Q-ZBCT(ipn zrXn}9$G$@@gbDt5)_4J=4#3}EokB6kt`5Zt(LwX)sm0#cmt|(jhVi8OQJ(?X0wR57 z%;hP{Z3s~C+8o}eGMPSYp|pJ}oPOtmCSVpRKeXADR^h%HNJx>BF8@Y4-_a0d0(lgO z8c%=8gdmb4#bHO$jpuk1hz*j*=(>=e4#u%`5Nv8QyPq3pf69`}Ub=aR9{`96TZFUK|K zbDddgclrI7T+MI;e-(?M{(M^?s+TEJpR^SX_bu-W_2!pERGBs(3Ht1%6Egt+0Poal UP5tQAp#T5?07*qoM6N<$fkf5awPR9621*st-yP|_3?j*}D`^i3CI7`5Oj5F2$?m5pn=Xd_k zdFO@yS>j<6uT)edt4>il7@BsCtHBey`uYO@8Xzqeb;Lel5<+YP%mEQ{4*GpY;4g_d zijdZE5jY+X78NkO!BnKcHY9bxqv3c!6=Q?mY2$))heUKEq}9JNySvtEorwyt6;%|5 zROJ-`4Io!V11HthO#X4{QrhI;wO9k+782`>6m91IvljrA+2>HiDS`YjR&#_P-Lg5U zpt&(tbAT)<*sUni8V<|?5b|ccN<-OG=(4jk<8#lDl#?AV6~Gn+AV%X=q%~R|q$vt3 zx7Nq)E=3f8l*Dw9_*fzO$JgQ?u?GTEE^;<)Br$VwOn?Ysj{pe7t=QAo0dU{i;kLE4 zqv&+x*Vn}}5eXoM1I@S$Lq#c}DHoH+PIyKRenZebOk?5SWu$vKt|m`TK&ri zRmIiy1Jdh}{z)hH!{4DLC9z_QIck5Y1tI~eE)W4wQc_5+e&GRMuP5`>=H!CyO$bc| zAitp&MW7Vzihj?KKfv_jd1v-lvNT33}Zq3M48sC_*rP*TJFhdpXc{g8r*^_Pkxqx5s)p{?l)K z{O)G*muRfWHYN-V4D5{ngtc_wM|Yp1wPr2Lp?0q1Pl%=X9W@rDYf*Khs%-e6H)+%a_WmOjT@srv-qcCx4!o z^Z9|<-#%X*J`TW}^(NfYE=M>X6R>~(r)Lc*89R-O4ePEB-MS1=tON@uBu<;u#$we? k+`Uucn6P~m>;6C2-;;uLY3RjFBLDyZ07*qoM6N<$g32li4gdfE literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_sass-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_component_sass-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bc814609af8b04b8639aa70f5bef9befb0c7f247 GIT binary patch literal 1153 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_controller_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_controller_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ee86e14ad5b4819682e6b3a5025856e8117c0e60 GIT binary patch literal 1291 zcmV+m1@!ufP)5WiKKbB_0Ybq>+G$0jAp~iw(2*!bK&Z@6m0AjP=#gpO|hxB@}ELeoTcquY((j86HToOPj756mwnYwp3IX^cIZ4OvhtVAoAjx?+o zrK^VZ+wANl>aV4DR~10S=krD7-MwJKTz)~90~B}%D*zBe44NdNTd=*d0RR<=pu*j#a5o~6K*XY{wL}7$Hwk_2yaB2m z2%D|9yuAGSAO)#Wy>}OkRnMSJ%tQ6|()DBsDiQ%8Y#7A4yU}gnsw^e3XdOoRbC_oX zxMpjJ@or)wb^7})3MJg0^oM<86XMx6&&8IliHjkTykFfB7hwS_WaGP7b zyS+*wg}{^pYSMSXSg;U%PEiVQ=-`m%10#9y0y*}JWalUNWqX9v`)1M6T^tYsbC3el zG=nj>8zm)XPY>aDwn98cqV?>kfOykM;^#WxT_{*%$ZgSnK-kWS~SHLl?_Qq%EqbsOV{FX_*_F zm{-yM`WwOEw)g3q^3VeT!r{caX*2)M-yLbX^x@|TrGH^)H_H0*r&hoSPi9?Rom~jA zg=BKO^VgQ_+?qpJy1Ecn=-FhY<75Q;WP^D-3{Iba%XGP~G*9z>AGgT(o2F@c5#qQ| zY|SVLeKzWwTvJmsPS^Dhw0L}*>(~$0+!GBr_bQxIQ~SNK3E@*0w=7>)v?Eucs!{a+ z!!IY2mJ;WT%m0lE=#TpP`kAI_?$X2IHD=#!;VtY8xibI!az<9;C!+9D6rlU+WOqhF zELEn6SWV+Z|N58!1FT!3l*$hT0{g0}s?4#}{14p&(OvGg{8Rt{002ovPDHLkV1i!8 BW7+@! literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_controller_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_controller_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..688b70ef0745ed32df13c7d4a66377aa5b3a84ba GIT binary patch literal 1312 zcmV+*1>gFKP)Rblq*))BIj6ETsp_cQ-Td_dWBz z^UaLl8LO(Q%3-(LmjG@lHSPra_u~@F-=gSN{e~yeRO^`?cU|X?@-$vxpwrhK8fONaj zCKe=Nd1Del9q^5&X-5ph2nqnd-@l(kVuk(c?+iSDj?BxA$VjA{SAolag7YmcJlOm$ z>h9ehaY&B`%hc)UGiD*ZLpn80b4mcERLouLXZUBIkaeNH=WrnHl_IpKkBN{|*2TzdJYFFM**-JB?w*b-+^Hm5umNR3*pFMz|!T(cxtKAgA-LbL#M#Rp<8*K-5@YDt|KQ1(V@TQc|TO**QtM~_BR8f(cS zV&{GYrMfuqJnaBL2=UY=3EhHibvXbk97YA(QNeaZJdTJ)lIP-aq<0AVgqOOwb|7rF zj?&W7f1YxXT-7JY$0ql3G13c0OpT+15DHQhoy90tHLb0&l5&cIu`nD#4w z(Co>>=5g^NBJg-l*N9r;E_dp{zIOei?2n?tVd_TDVn^Yo9(fx#Lo6LShApf1(QeHE zAipV^ilX~7NZ$R_Y3TXmlYoN<04Tk2ni;n)bJ9JE-E(%Zvi=LEG@l`BzwLRkKt<1JIrqq1S z>;>7J$(_qj0+n+qJ{F&n_=K6-qO!8GP(wq*glLYptaZc2K%im^4~IS9FF-h5*vr?k zb=k=9wlNRBMyVfKJN4B>8Wus9H3jhbd}c{W$w6RT$JlWnG;iD4-nwBUvFx6o5n-{A zRvjYzFQD4j_tDlc=10^?w16>)5eld8TPr>cQZ$d!eYP z6C-YA=n3DaZ_WEECE9-RWrUiCq64W{Q91F?ejRkLnwpxKN~w{Jjg9+!KA-t4J^umy WI>gsZ;9y+<0000B67C? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_dart-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_dart-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4e21ad377b3e384443664e3cf3644eed04429dd4 GIT binary patch literal 1090 zcmV-I1ikx-P)(PS4y5sqNGxvK-v)&v|$ zeGLGEFz{ynp|$;m4nRsG0(QpaP#C+D0ry`^Gu~MaW|xx?y(uC<0mmu;A~K*p^>qNg z7;1KZ-t!e^qnWzAn#djK0i@KwgA_{=rSV0~`sTPa+UhxXqk(zV%^SH@#F*_7S`e#` zNI?wg<<_NCVH5@~x_)9o^T_GN85(ajV>j8Te!5cEUsL4j4m@IE6(H6aLq$><02YIV zcb}}Yz5PrbM#TWYk-QpA22*&EU~%GpziW9JqSTJUNst=@>$lQsIlk?v?k)pr`tv5! zzEoOz>iJ{h7C`^_d;OV#xN${uP7oUbqLe6Vw^RUd#&Mo8^&Tb}HN7x07YC4^{2WvA zS$Ze40VvCDVEF1T=2f>N)G-_N8PfEPBGl4wp~$TPwxj`K()Qq>mJK6hMxd?C)k zI0kxJkWyl_Sh#61@qGG+xD(s`U-EI#QV9cuyoJLluLAJ(Ki?sd%LPIqWA0_f=e%q$ z+J(>OXT~+ggkzYtD-K3}$=iRm#~FNy;Q$`oe!S^1x+Z_)Q)dG$t{=iO_9eZ<&%e6x zFM2UrZRG6TgV|~g#_zgjxY*TyS{E?f*?mSxY9`c4*U7=NoE$vMggO}pSkiphH<(yb zy#N?&cCt&0G23jx98JpL&lBFk2{dQ%^+r`yGX(OufH_v^vg;BBC8NYgFJGV0Y9ps) z50-}z8Ir%^h#qLHwAbw{>i$SB`7@>9Gr%7j|Nid_Y|3i$Muk)xtah^Y?k3u9BhG3L zPPlc=| zj$;3v1()lcJAD9BN^xaGJvHT(!6B6qV>rEIb5z%V@qHxy3)I?lD7;A!J^%m!07*qo IM6N<$g6HV@fdBvi literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..76940964d0668f9f7a79090ca335cfcc670af439 GIT binary patch literal 1103 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_ts2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_directive_ts2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c30d685080532dfb0caf860a35c086cb3a54803e GIT binary patch literal 1079 zcmV-71jze|P)D#K)THJ6e!Is!KsBX5Kt#cOCOMh*&dnM@22zG*4xnQYLg;-EG$7_U9xj;-iz~)Q+=>h%aE>M~g zJO>n|s^;Coy>twI#CUWvb*UCHg(^=G&1~h-A4UPx#j3?`K0r&?s?*}2rLdmy=?OZ9 zyOIMW5R(pKG+_&80XqN`02)r}z@O=o1GMDTlci*`r+6n;C2bvs6me~FnNWg1UA!h# zTJoL+;7(fs4XYme2LJ;p0OESO_{N;A+@-DJ$C)bt>@D7PYk*E~GC-2HgMIl%!dI_% za&e-c3P&kb&WhB*0@&mmOa>?-C1A^n2XSYv#}^*t(#!zw`%f6qdzw-M6rzbknAkze zBif&DBsv^84!~zO&NCJn=gER9)@PNZ0)))l1;yh@9jvpJu+8x>5=n{m4qh*MfqlhI z_~*tD2zKAym<$jiXxc8W23)zstmBF12dm%U<-BK7H3q<}K1Xr)&%yX~q?v$j@e0-->2EPt^Js_-kOI+(p|OFIM||cwHeg zKnOolmfD1smfU&(J`8@oy;_Iss7_9{@lm()dNLT^h zGy^0f0L9iKj!m2)CUwqEUtIFtpTJFEXgiG5QBrw~ssb0k%uGV46fy#^;ZQBz?RE}& zuEFx>x~Ia9HNFREL*ih$BGLq4({8ZL8Q#eDd4}q2z)!@5myU|Bj4Mf$r+1bzUndb| z4R9EUB|(p-v!G0JP7d$T66>c>W@vn*AqbS1<;6$e+$$DM>y#I_4a=iri9<; xGNYM-o002ovPDHLkV1mX>?$H1M literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_guard_dart-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_guard_dart-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fca27ac7318240d51d6b9549ea8b00e8af9927eb GIT binary patch literal 1064 zcmV+@1lRkCP)SgjA@tBpQWQqLprv+HBG_X*TZH?9N;t(%tMPyCDTV zZ*$K7{D0@%xp3is4t1qMIaO{xySr#d$*RQ7w?Ae3hx&0=(kGTRm8kKls%?&pj4SWSk z55&In`LZ`l1LDD|x}>cB>*9c(cC+)eRwcRUp2RE zeho#@0BCA@2~E`(x5Xe5NPA>fB2#Oofg94(dtbn1?8`Ide0+QEEPm%!VyD{(1_lu@ z;`3Q`X^%zvu?2t&&GQTZ$w)WSo+N6yt`7V#T>?;A{RqQaE5FX%4M6>-Z_xXzv8*|N zreQWf%29;43qW=6Kq!?+dz3`D8<0doPGo2(SW_0_S&GDD&;n%u+GT%5Jr?kAbFnGH-5^pA7m)Ht91)bjB6 z!($!!0Db_Wl;KzdBqIm0W1nY9Dr-79arz2&ERJTFG_-6*H;i=sVqlhIr$!Fs1bE8E zyM>fbOD7meg!hvO??*bpEP!KM6nY9sSaASUvyl1+x1*cpf=0^p<;emFf#a$8tHUu!6X;K!fPf=^Tw);L!``Dz*y<_ zK~zYIwUtdwTvZguf9K76%nSnz0j2|pP-|OlC58mCeE5+@(=@u!#stL$Ra;w)L0e;7 zD!OUn!Y&${1~r;kqA8|EOB-XN5lyr&Hk<)yp;jm`oP$vJ^xHegsyBoi0xSZt1lhE9q+>v98xvDE<0rJUUtrn`@X z-jDor?kJ||Vq0@pz8O{nw5Y5Th~s7)&Yfr-Cic(C=-IPJh$rT`yXiSxuF|abhR$+C zT1nPBFx}4rCaKs7w2JCzbe6%vcX2vPxT|q*R)B3SP#n%)G)Pw{|mbx$O!t%VDwabi7^}oQ-(0j`Pqut$! zrFU#DPc~peLw!23Fx|V;(=8lEr~W3Iu;vDSoGk??F7k3;YX@yD`xyTD14I;66&98$ zvsxz%k@UxK1pt^}5#Vs`LJU7THI5xQ3}_a@YGG(7SPD>8VbQ$4ms0+y$0P{s;-xpvW}dr!LiSTCUS9@G8JJMfoVd_FM8cf<3&TIk74umYe} z`gw`rLnXc?xp0(JtS_7Al14^8Wqk4i01dYl61VxiaQ*maON}m1cCVX!dm&gehYGxD zM-KT}gMRt-BSt6V%-mT#-PYjo)>Rf9ie4<<;u@RSE89t~m_UT2$2ZyIR>@nn<_#cv zJ%C|ISc@F^;kTJ;jiXkJeh1hcyQQujuJcD*2-e&rDPGgU9>5WvS5xQD$Eqf-B=CA1 ziHF*}1=F+kPG6Z>1=3-N98gO65E&57i>?h5NAdzPiqF(;RVnpWD6AUoc`7SP7f)6g zbOn8_@rvMs8hrvy(PGJHGG(4vgxllKILe#7-IkFsb9H*}~400000NkvXXu0mjf$wKYI literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_guard_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_guard_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..878bd3e8c05e436ff0e1d940383b859758045761 GIT binary patch literal 1079 zcmV-71jze|P)5OFxLcVq?y1;*2eO zVpi*meCTD4YSm`5Wcekq=0>B^&5T2zh{`dQz!wCA6NmH0x$iz4kAgf0X|4aa`?;^{ z`u(r#zW3blKg%`SKr@(^_3VrO$LHn7?_9YhaX!$Bo=u+2Sk&N(4i-G5mD+}(dNinm zhYk-F2>b=KYLS-9i=y8)*Ao9%fY8+?YsKhoV4ecWPkkQ^a`DjN!Gc=~3`Rw^NoTlUFfG6rwjDnMpi(;tt=dI+ zJza4SGPAe)*5Ch1y5azZ2H92 z5g9FxXJC0>04x%bqZl1F;qWy&J3qwj_EWa@c}GCp%9swAaJ!}fM6$6wo3Af2@#XB! zdSLw?l(GP*sN9KVd8Xz-{EwC4i<8zj6&frY74YA1pShC^-(E+TDSh2qMmU(H{#NGB3A1!=DB&ju03Ra^_qNazC}bj702J}F zuBKQ{oaDg0KR5!s3;Pd_4;7A}2OHy|xAVD;5;{)%cl!}s6sg8wx32PcQ+1FAvxGTi z`>;h%8IcGRzP$csubxt@>O;3h^+W@Y!L4VIN?CLzLIHhH;d2lmn$_XH)w>>mO7ITH<4NH9`OY002ovPDHLkV1iBA^)>(i literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_interceptor_dart-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_interceptor_dart-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ebe3f920ed315229f593ebb9ed39d08f0ab5a0c1 GIT binary patch literal 1076 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 JPDHLkV1j%{{kH%B literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_module_dart-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_module_dart-24.png new file mode 100644 index 0000000000000000000000000000000000000000..448336b15bd1ffe4feda2a3bec7d7fe1f64bcd4d GIT binary patch literal 1061 zcmV+=1ls$FP)?eb=XpQR z>-qeA;D0uCzQV6~%d&~Jc@Lpqo`J3VCVl?-#EI}pcd0IHSprc6I%r-33`wY# zh^jcej^o_)E(maved`oN5y%1{PMdeD-uoAQO-p9U|Bz6lA}Uw&V_g}{SXlt@8GDlz zl;?pL1SEz6uiU?W_B@Lz(h@SeKhzocQSXHk+uzPa=oC6XzrobFM~)4S zQhV$yrbTA9zL6giAVY1D3C}+OhG-KBuciZ_nhd19mt)B@VX&(O|H)NHXoxgO4zUZa2y?Kz{rZ#}~vos`Ye%&m6j|NZ- zDoJ}c0?=~E!NmO$d=U)a_H;!7#Ba%>?eT(~D{X^vX4VJ&q}Y~z=sRY)n(8I3d>4WyTq5Yu?w_uc7+ zK+fP>q^$seA zpHzY&K_E*3=WIahnTzC!L1IjQ*QPUDNZpc&(K7w;WRQOL830hkhvS7*lYqMRixjl_vnM7RkIcQ=1rKa7NX1%fesh8WolMQu^s$}UAWU6G}|PcQkW`vz3bYs zQ|<2Dsh}Q~AFo__&Tic)gczMSK(h*7%f8I*{&O_60Z1vu55G^uGY@G%r&SjUelRoalW(3A#_HKjqDEzb2teA{=@Ox*RwnaRDFm{2~RV z0oWkG5)WL`Qts(E+m(Ll$KMkbdYh`NnOV1=q z4v-IW2S~@wy#KZ$2a`n>th187Fk4$*yNdaif@H1;)czO%FqAB4$%`we0yGLw?0o7! z03sehBG8KQk<(r^r36@S8e7vj<3vo~^qd<=(fd;#L{ezNWW1Y44nNBVEVnDUF`A zGyI1DD}bWcuxMKa0Kc?3nQ(iE7#QoD?9Tw0JKsd@?ng;DNwE z;c+Pk*9w8E!~p=XxMc+Zf7-tTDU*(=?$x^}vWBp2&%p7X`JfcoqaDly^aG^irr~z} z#)Wsfakcj(P5$lSZhrk{YNx9=OmN+!=`$4#9*f#7bI<@J4KQ(3ePP1N=$L z2Q*s7CA_fTmX#+JWq}m(BVbdYxUeqXhyZBhUEd~btrCp|umceQO^PaNcY0Y`9wdKZ zI0#Vx@>t!c{cg{R{!7Poikc}@8~{R<^I}GnNT0BMiHfo(lIC5u{OH%Y`IhjML2%AE zd`J0Y*6?bHJc7i0Bg7Ss=*s7my8fCKAgT{&TJ=ZaxzW96hI0T6A>CKPa&Z#Cb2&fL m7#0;$6+VNiKO4Qj?fM4@)k`-pIaB2T0000h4 z3D%VwL9~Sm+Ek$uMT!UtRfIsrC2ld%Otz+zq!Tk{(j=XI=3PIGX)>LeBn7?j;BwwQ z=l4J7-E;4Q|9Ob@Ey;=S zP2BY5RROw@s-NN8RP<&E^+4w3#fA_vGJA!G(GSM21ktuecK)6caDsta6}1V(V;~EY zsoCC{OJBzz;rU1ky~YJFdY zvmx9luo!^{i3NlQs0{(rDZBuv-fu&-DA=Fgh%l_RHx$R^*|Jfll7(s#RJG&)kWp%; z!|N#h2>^j`rgGTyNH&%t1Al+#1EA($@u~ob_9g)2DjC=h*Z}xp{}i)7E|Pak zHu*bqQmj^FGdG`0mO)a$hC4H`Z8PCM>&Nr6pP{2uYh)opak!<4j!asjnu9U*j-wX= z7(X>bz#Zn=`aCkrEs5b#7Lx)Ll!OedTTE!XGmtuDRT`;%HXr*l#rP(J2vuNzYGVRG zBH}vHunY(}qZkv_3lIY8I`R^NRXncoTl;ui;|Y`tNdXVBW#&U10l*AkE;O*|;cWD< zq_2Gz8I?c;@B>iVpkUp$K=r;X240;5Ag9Jj&SqEOVrPlXTI!sO0|k#K#~YUcfPy$Lkz|w^89lLp z9+J4uc#{I;zekqy6E|vFOpIy{;hwU7w7J~%V!}57&oz`}tf-#Hz>QNrq}bzAlh^VwNDPd75Y-jf&$;P>7`k0SKT@^#R9#g|H;#AiAKChR*I$Y$v`g3Z zt%{=D3mgVslHgFFO+sb5KVn-?d?0p}o^3q*#--t6k9SOyv8U)Q0PlF7c4Vg%uHvs^X~>CUi!Z9%6{*iz%BIIxz6*>LS4LEs8I1VHa;rQG0RI4fOKK5;7Om$1 O0000&ANpKTn5dRVFc)EL?NnPMipybf?NjOqM_t1Nktro!Kl;Fa)zAaQFEDfXl&xl3(8H2~a8Qc;xaOD~n_%m6IV_2e3KwmSdR1R?jISHoZrYK(t(fDz zEA<@zWgrDW(W*$?p9#QkRVMm}Cb_87SoxbqA0FYF=1%RH0(;y`q&-L*}eaqjQTIxOH>ujas$~PR{77Mv~%;>|& z{J55TPMbbOD7Aq`)CZu831`rBo#Fa@*~x0-}?m^h&(>P$e3+t{OFmoQ_;*Lm%~X@MLkkch|S$SK9HOqK9HP# z9QLe4yS|J{;l5==SyVcUsA~XioP;XCHXj5S#_fJ_ZR;mX5y}Rj3&bI2EIYvW4ge^o zW^xyGl@e6~&;YpRdZZ9`kZ(^zT-)LIuXa_`yhe4Z1)-D!porB00bcE*_G&S8B?@vK zh%W&Ip6Az-k$t!ob6E%7;|Q@4$q~ve!$|i}fED5H@c0*?cPYtkN_N@J`FoRaJG*!* v)dpuNeLTl?OHl7=EPm>Mny2pwNY0P>2SKv z3(H_O;HDLY!7da8tsi%*$n3!G!d-|cLR+H4LO-bX!v$vBXlj<``*@MIYnG&)h|kq? z-uKV{|NPH6&%=TLImEpJKW56Mv(l-Ehy5J*NFcKRS)iZatdjT<4dGYt6eM&ABamq@ zj|k+O?Hu^}UkO}B$vBg30{oz!1?=l!QxcV4x{E+x0sVRkaqa{yKa~{tgfXu~`hn+x z>SERGf7i)a-z15pREc`^WiSm|$oBX+coV?1R&|1jAfT7BYOatpbXAgAs$r~et^_LO zfK*2Us||P>Km+h0GC-&lIY2{KIVPKi=hSvIv$h!&Fioyy8OI=qd+bTdjqi zKG&x73dRZq6qNGKu48tLIunaO#sFwMUAL)#MrO1?Ky2c`)9nOc_>~X~-$!sZ*?Hhl zc?qc?y}gwMWV=sPbE9`AukplP*L_{Uhd2B=<58dtz)~f7$nQX9 z;OE{&R9XRPUC#!I^IjDazzwrcerl`Pb%maGnRmK6Z zg(KA7a+2Nyo*EObKQaup=mhJfmmR|a%*J~JywRcp(sHMTekOU$O zJZfg}poO=;%doS}P9ziKVvWT0SC+nhj�!TILNf-PF%_GyE%>A$CvXM;Tp4z`HU zP?+#nxl7|YWF)RUqFFk-86YhJASNJx7V#3zF+ZMnBx1LKOXN;#>Ff5&)QI& z1Ken8h_fU81p;ev9QR@eo>wJekAQ(v)G2AbT1Wc6=V(2H*Cntty@krugBS!}pl7sx z)46*b_jm^$pFlhgDwz8!h*|ZU04Gmn+7EL$PGF>pq&-M-v>#3Pf=cAfX=1Cv4nPO) z>(h9efs+EG<(nq)X&xZZyolgS;20|VE$|HR0q6Hk-Sev=pYR7KalIUC^9+FvuZx}= j6_9!uDHge~e-_{$96jUl)*P46%9eErYQ~O5{xa?UTE5>GQCafT+eJD>8<6Y;UIKCx>rvFBE;sg&j5vMs0PE+)Q$Wq<hI@I-kHCY#F;pcq|ITryzjzVsc0q7mpki44!k z$n+S!-yg@6wS;4`!l0N1 z2-S>hQ!N1F7Y`Df944+>CIqw;WR7hx$Z?uiDtEO!)j*BGp8vHdUejWBx|O2 zGNkl^YjYg{Q|+IEl=n>tg^t`>{s@FA*t(fmOlQ(J%Dw)(eEri9M~Ampv|S&3!x%8z zAgVK$VE4C7TslPH>gQ<^^V4r}uHznhD2!%zP_oT~#cogL`+Sp}yVBik2*`7B1b9sk zjQafN8}XlSL=TLndx%AGW|@gb!T_iaC&lGuSR9U|CN5?2=Sc&ICgS1)I}>+ipotxJAw6o;r$z!r`dS`mPa{AvhI}avKaP)eQ_-6Dw@eL}5)~V&Hl)R#6~L$T=HD zA65nt1VuE0FailS*3O5%G_kD)Yr(+Pgi5eF&bLyTug9Yv&)akN!JYEuIcGxb`gULU zbzQ&zbzjfJ1^3y+b^`}a;4lPrzf7~Vq;sXEi^%^5$R^a=IaEtHj-W9dW3hjdEMOkN zH$vhK==3IonF4$rlp{F~JPml_{;;7;^iLRBo5E)i^azR9BI!BiC1wg3?w}+pc}7T{ zLr`P}c0AtZ@9(?rnj5~ANbp~P7s-WYFMR+?{3a&(UclRliX#N>suT9oqo)%U2gm{1 z5qRT{e*p+alV#fXHK1h_Tk;-jA}!Ng!#W$@3XqH?%g_&Xtm#lxO6pG~FE7jhB<>(3 z?-6YI2MJ9LM8eAp6dZaHo6D0Z93&%K0g~~=>R$(7?uSp7|L8r7YPGSqt}RJ@6M#(6 zfi*oJ`@@YG!3F$3p9>E5d`u)5p!jernq4;q2(uZe!h8m)ta}8MnUATkw6?wca(7KR1N3BRsiNNcM|na zV5lhzqq89$AXV4d*YG@L^{+B?^$UbBaOY~MnldM4P!R$nDZo+QjK!HnWOj(T%bg%4 z;TS8vNpt{ru0~PC1$KD4*D8hz(y82EPKoD_5=>R=c^P20uFU@t3!y##J{CoMjD<137)lk8&1f7HR> zzXgBY@zChk@%s&c@iacl4X_XkOuajM>CGg+>N-W&zGP}JNJ*`0y0pgS%GhIjKiJ?d zwT+CuBC3gQc%tfeh!%cG*RsMM37tUjUI3wpMIDwXfx*9&v^nkW_C-S88K}#lxXB8n%8itX95Z8p{HCw^h z*=_CQKRYNB1|LMNO1b+f&n~COdRIO_*=8~-Lpx_`CGsK?$K8~nXv|ufRycHL+e;td zRx35bSm*0cXL$fpBG#*-$QJ_ekLRS@qM}L~VmZaouE+iN-TnceLOt`y><>)<0000< KMNUMnLSTYqtlpmh literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_pipe_js2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_pipe_js2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..92b31f521ae1cf5ccf164003480a2a38a1482b50 GIT binary patch literal 1089 zcmV-H1it%;P)KHY z(hIa={n4l)8G{kMY{amF(SlJhdb7c*MN?<$H8nM_)4cb3J@-8Q;njI}&lQ7u{yOJ8 z-}C+azCWH9_@9SZt+2O++&P`yVaeFd9lZCS0D?_uQ8zo0>_V_D3hIOaE9f@p5|Xx! z9i0AG0NI44$3?9W>;f7A=i=O)Vr5+FNqU0&l9Z2pc!}+@S9cR zec&*^ecFZ|xnf$aO)#xWIu(Tj)$NP`SOG3JVZ-1jKuH(X;>sbbriDOgh~SySrka?< z9fLZ4FJ^$jbb8mOhp~9p67KsJfP(t{EBdP%U1or^3A}aB0x-U2YfFSGMwiL6#<~{Ux9!%PJie%UnQ1mWiy?clP82}cyAJ;7pA>;E* zb{+&Hjt`s{R)PdJzfSOrqZI9M;;YaAwiBQ4kMsrZ)`~~IzV>JcLh{C% z{;EBtH2|~27Xh%ja>={10bhm2R8N%9g~*G*cZRVLHfhfb7?6PKD`NWGF=RYO_}4S0 z0Hg$9{Ku0B>w=A<3c^$I4;{rLFD>)DIxaNhu-kYVXa!u?dMqCz-lD zNBRAk^X`%iRlp2VzN2YMo5&juC$*^ZIJ0FPycU;~OG!HrH!uI{P(XJYyt&pIvLk4b zFfN5S5Q*@alnZMx?dX1-8-&3j1UnZKOsWDymjtRE^18d+A{LD|X097M7469_$tWAU zEW1#{*@06?b_hdUzp6XAdpC7L@Wz^rj!O5fPA0yY>Gf~%{Ha*D-7t(B6-BuRco}#_ z!X*V-C6wADdgiJxec6O1SnD{HwaxvQ5M(C4zU3$$-8b9s3rIu#NWdKlc^JX-j-rvH zs|GBAf(2SQZj>w12x{mbW~y#=MZMLOs7NMCl@55wxYBpwB=T0=CsO)y4)&iA`#-rH+DNi7>#-0AXg%**@S@E@wuo@qgQU z|7(3~?R9nz{Ld2q)Ohs(HeFDB<#z%BCuhoA3H@h)EJOWiH3bs(A}9@N`1*b$1(-l^ zQb^o>Cta~%hJb+@HY3>!JPRa8_Jg`I(l?@~EU}Lx=nxXONz(C*8_f{lsUbToc}_@n zBgilU+wv->`ntbK@OmysEBIHyjik-xrW-(soM@7-1iT(CIYN-Q^?-H5u7lB%1FQzB z5V#{7w*Ux!i4|$RuLR4=OjGKXGVJ#l*RVjIvC|790MR?R zBlQvD*5)&J^J*wKJ;}Ol&l8uB9L)}rpO*t9L(!|R1;Bg$!|7{XM^VjjWEEG&$Zr6U zQ93Xut;KqODf;XrQ@zJ$`#atzH0vjGM+FwE(-0txW}ph=86-Sfg-}fRdyXOJre!eT zW#G(5nByI!7nK_V6vYT&Sq@O*6S3#KFkh9$%8DI_ZTFVEj8IJgWIbMqYK~hP7E(1v z7IgEM2CA6?9FcWmVLeI3O@>uQ)ctWe17}+oZryOTlO9=^miPyOjQ~Qm;K;84VB&Nm zLt|6?5V|Wc<_p>YEb$K373{;ASB?1kQvz7=#AOo}CNB*a6dHsc6JXoy!sJLHG=2l` z=|)Z}PjblYvMq9ZuCqUPC6DFoqjt0mpD76-hhXmspcEFr16VL<=hpep(Dz*{NXZl0 zmvqcNHCj7T1;FmH4`^TU2}g=j_%U-oK2s8}4!=mr#Ajb1l$K~$9( zS9;HILEfd;Xxh|^Q0f6tL|RlpL|H8ir?*fp1rH!O1%N;Y=uFu2imRQvJ;(7O#1KA|jLhqcn--a$%Q26;=Ven}3I~&l$=Xf*s+O5O-O9cp7gk%QA)Xp25uHR1X bf2}_NrGG@rpD7)d00000NkvXXu0mjfKUCX{ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_pipe_ts2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_pipe_ts2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fe13e2a6073df16a1df0a6ea62ae3284f7115b2c GIT binary patch literal 1088 zcmV-G1i$-MLOf^ssytD|aTYv(71N2Mq ze#u#`{40Q7i+m@MvH;Wz!7D&wXw54rOzQqHzbaTzb^3(hcr1C}p zjMhxji}$Sykl@!SfPm3>8_cEqQIfNnzwoYrJdIj+OX>LUWL~Otln=3JHD8f5B$b#!fCcgb-xr!BNq-0oH+k}q*dh8>z z?m7m*bl)ieCI`Cl%{(CO*%~z4<|w}evk~)^_)>HQ23tO+!abntD5*K5?|GN(swTXi zF%W{R$~U6`0z7NyN@%bYWHj>fB~>?pSk57(rZp;W*p4PC&lOnGBD!}f`8goBg z=HXW-0O-)__+7~XAmO(gq!eZn@W0MZ<0Wif7hPH%KNxn{Y1!hypnZhHJ{uDt6eE_3 z<;I%1*0H*HSIJ>WEx;{3iDxmDEv|>C1|wAkHJlj<(5=;B2~3+nG~-*4fcGK+_W+dC z4g7We0tEfc{nER-*gA6(w}7+eBYdtMfKr2XtWg% zMIDhz=IC62Kb9U0w@h7Zw(t+~{M^gp&5HmOnKf^xcF4Fp<7yXv;Q(|LcSOdDX$;mzms(?XQervoUaU5Wm^~$Ri4i<6r zr{PN+#5ZsrNwtIST`o@&>jFZ`b<&sj6vaWo5lv9qt-btNn88u(MsNw(j~=`R)B>N< zRy6$Bzl!jH*Hc(jtt1q?aEM30i{_iju(T0bxH+-)9>CvqsW8VP)dl^Bh2fpKAsbm79p zNnF`fOyfe^m7$Ff(AY%U;G@NsQb{v3NP-Q<$N&v9^u=R-*2U-6VCU1LRO^8B!cVk3+d zic>w zb$~FzeY=;VH-3htIf4;p&i(#REL(;Xf0>H^h&rh40AF=;vPH-?ga`@oggBLz}v-)A( zBNHHX_|Lsn_eICB-+jFIPXH;U`0aY+$aGlhm(=DQQ(JkF<>I~g{-^OT&Ur*Ma$*(U P00000NkvXXu0mjf*g@*s literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c23707a410e6a91726556a58bc489f3d3e8918f5 GIT binary patch literal 1043 zcmV+u1nm2XP)4whzM~morm*=z2LhYyWF~ z`(Hcz9Jt3}+N@9wyqSIK*keaC(=DYZDhh_$J!AT2>Lg{;wiit7EUibWmk^$t^@rxq zo$o6GW`K4P&0QD`{P=pSC-T1ls=v7+-c*hO&P0B8Av}8S3s2EH`4rG0qPcfXxH_8L z?wBD!^*8TC$#FDw62%T9@KScw-1!R~xnm=@l33<%P;THt%V*bb0%)t2I}!CxvgROI z3+u9~51lk#j!TLWIfIBhky;HHPF@Mv_Mm0toA;C-z+Uh`N+~e75uos;EOFGuH>qhn z(QrI>=AZr_XU_25GEU>TY2w66JQn|p;MgTH$x7`OvyB2SDxiP0%sH$&D z?m)x^DGG??i{kA+oW zah~4pZ%MaiQBix;u*9s)1_0f%5n#%I`zn`}7BY$(vuh5&h-Qj^VXEqzFsE78S4AG4 zaE>Nk*4$*(-#iD{RuTmb;A}M9Wg^;rP0pR>23mh#F{M!5K$ovYopFO|@maIh92%Qw)R1O8hu(FHTVrEEUn>BM(Cex{G^ zTO<@T{h7IS_?yJ~+7V6Ve8d+2EK&b^j9+rHiTLB!AMkpuOjhSkJXt-TTT&8wKQLIb z%R1zHRqBbZaUk_AQF-LUR+K!1l6Qf?-2j@#yofs8fA2XtY0f!K($mB=Y0746%O+I|TQ5ZMLR6eGg?c6Gh94IWr&AH; zML|~l0H@3gMaM40I~7ERcp)eVf}mIiQwz3>5~wO}Fvz&7 zGIsDFU;Qh9l&F~ucM8E#U<7F2h*hfr78l(u`I<&W)A&XRMu&&_r6nMfVGuY1JPvgE zRbyFan4BELbys|=)ig?)#uq|xa(I|ofB?Y61VP|uKxt)FRj-1b=G1CL zYBe6ybu{2%HUtL;sRDDY!~vqw<0y(wclQZ|2<((fAi(6tzPaLDs|!N35sf|#Kq$1A zc>JLq0YdPrAK-GU3*qpisA`f*Q6)>w-Slm z)=FFs4e`gW0fupiVDJ`f`+IEr0)@i+0QB_uyHFIWTh1FBDg9g2(a{iES!oC_EPPC@ zwm>X4LMYVd2Uzt5sOokH!Qf38#yxv4K#-Q5WIxBS=|edHEDj$917xZsf;1 z@4^gqkxCvRmwyicUDL31&Au`dw>tJ-E?(B78H5ON_3Gyoi*EqnIIy(d z0M+>xwJk@o^DXj!p5=P0otUWu+(*4OUAdHcK<}IV?%H2Nt^xb!VU!nos2q~+S%U}BfKmxG1_!(kdMiBzH zt^SGGH~Z?QX7iPc7cmWkXMs^5e63`2ixTYyd#os#g=JQ3hkXgF7H$h^0#=do16^0f zM0cUQrA0$StPKqCX1&gSDLDt!Ta>@KR2A1Sc&BTwXdpNyVL=LUvQptoDG@tPw5cg> z6oS*h;SC4HWq~Ip$%rX?q7hN8)kmy-^XKhM;)c+`{O@uctsG08M{>XL#GYNvaSLFW`31^KMoY!B|tYVJ4lbZ1-S z2?5sn*LTgnxf5&C@s#wmPX*kuo?b@qlG!_ZcGrMSP_9QW*S-CU^on}#+;nry&i3@X js%&@M%B9%AatYvXv?)fc{47?s00000NkvXXu0mjfJsRrZ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..07ee0edac9aed58788830fd9a0a7162431759c52 GIT binary patch literal 1062 zcmV+>1ljwEP)TM z`99C*eV+HcFZ|DDxL2Y4^L5)>JJxMWNj9x`p*X#}#oMpmOP-jsX!G+1R;_R%* zkNPIY4mSOf1&jbKLMZOcNa*KXjo!%x0c1yQu~t;<05W3!QGdAa;8)(PIQcNpDum)* zeRElBmD?TF1;~!tRY*~dB5RPW)B^`?rMH`ov@YtuemOzQ`~%Vr9C3Yd{vv=fEqoFo z_a-V10&`}C_3>wF^uwBDIYPXH5bl_3I^bI3Ou&(cVp(d;D|(vL^z1pMz~8e0lAbwJ z(kiq?Dhg$l)pM7ZdH^v;2PrvVeE>ByFgYIbQ&_qMt0Og`TtN410OI<5s~_)c3tVh- zV@xtp>a0rKfe<KILWf3_BP;{a->&6#%A4B#;oP*Pw}2TI^A{Eb-4YZscz!*J;0+H z+5o8=H1FUEdPjqJ2aW!Yu6`SU*{-%^s}SwS2ud^k#%xp!w{V?Pa0yihAbLP* zfcuId$pPVExbX|ES0CinOY3Z~?5@1)3a_nSN`C$pc6XN%Q0xFDguUMZ+hOKO1}X3E zLt44^zI6eRROej7^VIh@YW$4=YziLb^PH3H+nB{*_ErLlot?fzl#ieI2B93#ACb6o z0*!X?UDlqFO90rDBIH^FQM)<{K#KG+-1#eAXEKQnF9x#kBtJpkgy$>`MQ8K@!}bQ2 z_(qBN_AziggLzDiMmY83mk1OdvF;q}G!;2IO+^jVy^@3Ju|2qiI%7n_>57Pg{f$VG zixeLKq4^-dkU>P>uCg^PK`14_X%M@a@NR|pJ&1wU)Ca_xdKap?5@-aX@fwK|20pqRJa04U=Agn%hf;elRJuzwc@3V`DP0`2!ZZ+5=xI^4d;_1W)Z z2vLgUed@eJNc9}xN2ot(`UTj)sW&R$Jf?=fO?i1WYUDH@um5W*Sm$vf(^b07*qoM6N<$f&}UFS^xk5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_ts2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_routing_ts2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..df454d67d4266bd892ac84ba327e69d61b24ff6e GIT binary patch literal 1063 zcmV+?1laqDP)fA7gTNt3immb8*)MT$+SBUsk1Eez38=>%`47dp1is+;Vh!;f`0 z3x(N$-KZ!C6BJgYD1u;hNCzznyYNC$Z0Qu#*@OKG>(DkSO`D`ACm&w)!=yRsD&lkX zzC0hl|MQ;r;k@uao7iuls#2wCoYgd<&CPr$1lj)#n4P68o#q(O4LqZ1D3J)5Or*_b zCWPS4)>g*;6(EH<>hoiyrPhlWo`kN+uFEY5}>LCwv@gI zc#YJ!TyLYQgXnt1P_3d6QxrxOh2Y`C+y#)fRRdGNrBcNu=>Tqb4_@y%!{PwCjw6xa z`BaMccJcs(AOkFx%mkdy9wf=m!Go_Ngn6$}B#G$)z*ZOGQVBvRIGsHJn9V+_s!rSw z@JkUu2o_2ul$W1GmTO2RzXzbE=E9x;V6q4Rr8{uBdI7k1?=@nvZz(T7g45Y<7%K!c zHF0O(0IT&0ES4rTZHi>_M-~^~-|C{*5MVN)=MP~%!0?D%u8RPyu3iIRY3XxPsXy^} zj$^YuY}CPe{(jGoY&JJww?75skmXt`D=$$~(~G8s0fEo=iV+~1zn8Zcy3T@m*X?sU zdv`Rr-Tg(yyxud+&-WJ$o+K4s_Z>hWKvY#(2g(6Vrb--+ZXiP>(hsCbry-HpjQ4n+ z#^E@M*L#j|crYI@X9(D`FmPy7eGfv|h{tcTvT_B0p`W_=?XOw@ESB52-9EC}7ihQL zpt@|1&*r-LA^KQ=zQzz{+dG5;>xKX!EI1sSgB6Qi-*L{yYMEX;#L~tCL^ThM>nkX- zh0ey~T>mx0$U+w`^Qs+0kW^9v-q;P82ax3lSzG%UNE45b?>PJ0t`dpBkb0g^X3jG7 z_yE|v; zQf{2SiQyu^wly@c?Dz9}Hp?TxNU7qAMZT%)I9pq}NT5n!IdYX;#t&i?c!}Vo-w==o zx>H}z2}z=p&Hn`eny9!7&^bDGx}$>)LKBswDyB$H4kIZ6$Y}t`lGqclZFP0r^80DY zl>_-Iwp_XL?H-MAmvflvD0Ut2Xr0)AwQCRRhHyetJvX(hQ;-A+=@aF@d hKZHpvbESD6;BQB3GXIfN5U&6L002ovPDHLkV1nYf>p}nk literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_dart-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_dart-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8e2fd49845f2040b06700ade55d3c5c2b9d4320c GIT binary patch literal 1100 zcmV-S1he~zP)*P;eU*XiE!yj~Cd|(iUfo&)qrC zbN;{QJm=$q|Jl^L4Xplb(wbTP;(eaSl-TxWhm^EVcwC(fG%m!_5K)DXj%^XTvR^$LIthRD%MjYwMM#Jv1d@}A! zT`d&gMkGLrRRNU+8UU)IaImK2AM`~eKtN1DR+^FAbR#3TeGASx4|^*fCpFm?TVG<2 z0O+gi;F$so0N)NwyS_NpL!8OL%hkoP^%Xr5fY74?Qf(@aWtee!C1-z|^)$A2Gw1el zU{4VVnmGnSi7b%{!_h)33oNJ#bYJ!0UC`z9jGLzRUTm6~=c}HKDzEzukvmuvY6L)w zQz+dK4}i%is3}UZ);(8_L0$S`Ua2m|WQ_O>=5JlFI0A#Pmt1pX;tt5ipIl72{0P5qdg#&* zNdSdg^024{*7C_E5zzfP`TI`2a=PX714xCY*jw_0J)JdDo2l z$Bw?F!n}tVPJD!GZLLTtF__H^noaDg+>U$l5C4}v%bH3kK*;5{P?5iseb*HaG9*S( z1erP6OwM}AF5AZ9q93PYf?M`cI{U6O>M}mv^UKJAr~s)5J3yjE;qr)=_McsxyXpxm z;;xcM`R?Kf{&_D3%}U;mQsOi%=)d7`($+n6I4WS{pKBWs;svK$cO2`R<5=GuPIq`; zSy=F6i#M_0^8%n+ZEW0GPMmf5GU!qUFHabtzFz1phtir%9o`|zdW z%)ngKmKn<`>Icg&bu~F0J)c|wkWz}XH+>&Zd1bIkWhJPGH?K8z{~O)^WPbtIXkkcb SNzeQM0000+TxAr;f9KvAX39W;3LT(Gk%9r*3b9MN*ebM%T{O}}gf8ON#)lGZUE+g@ zT757!E=_A~LSkZUtd)_Nw%GKg6iOo4ib@)b8VRdVpvy3wVHlXXpAX|yaF+1W^Y)$P z|2yY=`R;|gZ2D{yD~^sNEL#6;xogt8(4D%phoN?3Hg%?$qIF7_Ya^wi8PzCbnW zE&s8ScmNvOou1F@Td>5L*i*4Ss=lU4I6y_2VE$a46}eVCK1K6yx4pHFi@3*qJhyEv zNeOcz0t6#`MG}yRcd(^69$kax-@W*z4CQo<^W~`@NVHjb`ia$10D3q;H%){AY!;12 z3WHr*%tGbbdlG7PmZ9sxvOQ0(#}XIzF_;>(_YeLDn`V`tUK<1EhR)^7Y*ejEh}dPw zUjNX+@zbr-JgRHB{nz9RI+rOZELm|(vJIvx7C%}q{o`v5l)w@*$Lz|&5>drlEejwQW`Kw-3%q78V zJCa$PUWh#$Rc>;s#)6SvO9v zb5frt2=j@3mxfnmlut`T;7?qx^VRU_jY9$ zT6_9-ODX;t6EwXe{*yKK+Bh$ZM5zNn?DheZu3QNF-aNA^6VbAjsH4C$6Zb8A3ZndQ zLRN9?`T{NBe+zg4&<)?{&~p9NjJD4CWTkp05AJS{>*`P3wCG+}2FP|zWS?OeX^1q7 z;w5Wt-;tPrJD|fuMIv(0JoWdoH&#}s=P$S&3 z>l&FAAY_{kbZl^5J#?$-gGM`mWy;(r`G5HU#`?47S^ct38RD@RaV;VLUAKP#j-X}8 T#26@F00000NkvXXu0mjf(EbPH literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_js2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_js2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0d91f7d7e5c6f29e9c86ac7c97d20072d2b6ef3d GIT binary patch literal 1104 zcmV-W1h4yvP)V`mofRG?B$MgQ&eK?`OIR|m8YkRi)e(r16 z@BaUv`???apF=D=Gyjhybgmb`Ge$?zq5lT((61^k<3?aRg7rwR0j2=Ok1)0oppLHM z<~sw}n{@PK7K5@Kqzzaxx1?8m_ygA$RnWV@a0*4#(q42fGN9mWE{gID@EnjFZa4dO zrc&3~&D5+v{9c7_8ma#Qk7pMbHjDu10m$t(qPV&MC6d&Yae6B3$qbE6vG0riFc}i0 zKL-5UFq;j)7H$^o&h-MLk%|LUZB9ZpDZKP_I(psh&W7&N-00ShC4-UDO-4caQ;7hi zTU4Gb4eQ`MG2(nEKw%(KzN0LGlmr96otpumW?RP608MKP1uUW9<*i8oRPF7fwR?)S zd9kc3h>egfBwa;)p#UMm0yeCRA%C?>OXn=VUvN_2G;kXgig&?m-Z-p9HIAU)_1}yG z@Ky5&PDvss<)(t z0;IS$f2zMZ@@oSa7Pdi+BMBiu2&k(_4XO3w6IOON^ek??;qZX-YsM&ScLQdCF>|j;&S?-BypxSnj_mAkQuly88aSK2h0s39NmdDhr zk<$x35y7KsG78E!1sm(YvGEXV0J<+b0Z58BvcvAdQQX4G)&f5Nx%3U-jHcmSqyT`w z05Vfe96o*xuTS#Rndz_qDJ1|$PmN+S!~me0eDqGne;u7Q^4475LV(|}1D)^U#XfiK zYx}R<6}IxCICA_7&FzV-Nz3=GzrV{+lK*FW-KLaJR8^@HslzuGTGUnGq~n2i5lRkH z9w7KtmkfdMOKJYdmiS{7f(i-aQixqH7bm1dguk9U?i;4_!E%JiLvmvNl4|q;peRUy zhN^>hI!ktXtV!w7nInx+6C*hYPD&w*U6)g>%lju6wmt&lgX)dP3TkZM@!nBe&z@($ zylOUhAJ#N2Pf?V|fwzG@5-urFD|DuNc?VaP$NdLy9aC{mkLGe`U9uep1y*?yf|;qkkA6IM@51N;M4 WU1Cau_!iy(0000$S zK~zYIwUk**oK+ZxpL1rI85o9wfGiP@IOm;x5oV+OhsoEzO>J=V9IbNY`V%{HtlZe^s9!RS2{5{RV<`-0Hu{l z5#dlur6xt0XT+mNT9v|T_qe{r*5C`5AwmX!IFTzfc|brpkQ7+=x*ZceUwxE%oBg_g zHl?uIQ^wk`T9-lsDo;;jD@28oq6)>jP~ehmIoEuyam~QsSjcV_j0vy`XqxPc<0L&cu$B*s}*BU}vu z&_=`g_il{>pw%|(`lO{Bqe0KX{e@xkr4+#c73Ku@$LPq6R#T5;}kL;Pq*0*5T&UFMh;gHu2(fkAwl}f&n`Hd=S8F zlsvY<-=#4^P+kxpUH!u2=yd+FgU=UYGz9$&d=p8d6aT`Nsr>!PIUpwRyf4>G#m?xE zT?SP1u9e0wdzP)JA$#|GYXeU!@rn@y8v*n>!R}4|;eOudVtCrixWna~80wD(u$WC$ zmTu?C-36R&?ZqecEL!eENjXiOlGF(;7~uaFHUjKgZz9etvCl2ha>2=v%SGSZOf;nU zy*J>@nadpBkw{TdF3s+AG=m8sp9NbBPzEbrQxHPkn!}#W{_fj<@t}b8$Vf^o7JKZa z4gf4yex}Os2ggfNNz2JYGnk0G_#Niafo6oP4|zqJ#;_0&8zt!<@zOuyrQ=tR-zX(! zDVB6zx4#+RJYAi?^I2v*lMW*gg(qb_k$+$L-gP3UDV&r9iaP4VVpDZegTX_VQ0f@qxf2Aq z2I@8M;Kg`^%m+F^)Zn!}3%AW6pvIbHSJSI0b(&7U4rlA37PIUHRpS)w zeS;I*YzSEkfD{je1q5V0oG{*8oqR~s)Mlml`ev{O;7)z`b$eI+(dpjP4usf=;!SF8 z*HGFIfD@s8mRD4W)TIZ%9#KF002ovPDHLkV1h^n67c{4 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_ts2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_service_ts2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5a0410a7902c2893e2870af5c40786dc7102e61f GIT binary patch literal 1058 zcmV+-1l{|IP)hzAnSAu=;WHXa6H{&#_<(@tV#n?ZIUc^aA0U=~me zgguN+d4q7{=l@P1c+|$lmFvmK4iGyLl->xbN*W_`b;$-T0pb*zvX6o0bHxSLo~=hw zI)G<^szTMgxu=@mBg0J3rVH09Y%!$z86{>nKRk8`KwYT%Hzf*a#jKW>+2{;bF?}^o zZ~w&t3<=UG1EZaUQwMecC;)uak^wFkOAgQ(^q`k0?A}>}T~lsG1;P0n!$qcKq8MLO z1)a}$0JzKJpyi2zCz!1;lrJC{FGg>DvVyyp+xhXAYXIzN^W8!~8O#@;xPz`XF90te z9OcZpzwxgrqtRbcJb!fKNWOp&1qC)eSV}{ki|EK414D7%Icgd0YA@!(md6037=8PXInXImzU7ifxTv>U?^E9ZEcBwlFd?c@AoQPPROJ2U3Es+QDnPR?yY% zV`4Ia5b#oKO@4kMX0oU1!YFNwW4GsUyV|@c*GuSmp*kAR5IcxLW(UlbVH zFhfH)4lDzxbgOi1y_1Y7>FK+Ik&!?KmP^ZH(p@Zlqm3Xy~gE4@6tL(gg zd>SJoIdLYo82vQ^%tEaWt6ccTk~FS$Gi)=!t-_oMk;G;mb-CCdIB(UQ4S(2$$!=gT zP{vZoRE_{&PJtn<*y_?G_c0BF|QtmNTJQl(K+gZ(I4J;)>gsv>UjuwO@X-6&5{70jdTls0)p6rT_o{07*qoM6N<$f~|nzGynhq literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_dart-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_dart-24.png new file mode 100644 index 0000000000000000000000000000000000000000..43889bfaf7d06ef6486c39437b6f887b72624b2f GIT binary patch literal 1070 zcmV+}1kwA6P)3$3Uvn?bsj0n0xKNNJF?83;`eNaQ&0yx%>2`y=i+j=LMK_5SPk`#ilq zpYQMY-3R_>DN7A(<_>cS@)i{-%SLeYDukAjCna-!35o;T1`w4JRCo}xo%k|Ax(=aJ z0;z2h?fX9P-xA<`Y()y9Qou7ndf4t&lq+Y0p3LZ2fw(3?yM%n~Uc5gx#7q_eG-1gH z=~>`8ATJ)cpr*=svb)Q6ssGnR4UYqD5IWJ0zc&V89R;!yWgJp5EpXDfHQb6Gw)&C|a3Kg%{Bn60g z0D(vdNWZU$<;Cl`Hu$^WJu}0@&+i~LJuS%uVssGztigMspz z>V$w0ECxskCa|u!i|mTcXfsX*Kl|e5$wMD-)8%6Gt}0A6TU>yQviOJ~bU9w|nmxOa zRh5fJkK=c{g=>16j+T!xTCF_#@{4f+3R1iYmMsG4?WwHXxdQ;zXyk#n>daf~_9Ck) z0Ohr>k)qefrg_)mam?3^QWMr`z#e`ts^7!9cN^k%8P+$advMsZx$w#s#`=2!hTGBd z!+v#PxEKS;4xs3Ctge0ufS!H(abLMgNUxh2(mbgEIh)EDDJW&YR0uxE|Kto)C0Te} zuF>dX5zdwLeIYaAOs$SrxRalPH_p{_blg+<~D>7s0ITU3_9*_ zID)tM%;Pa_rOg@F0Xc6aTo01O^J0z%BUAj_y_RZO}x@-{q3AP~gqnBecxalY#v z=jV*l$GXpty$}~5<}QdaJ&m!`KhWQJh>J&#FX*6f`%X>`OcC^Is3tS3O4p+|nIirX zhm)_mh7ZO)qG??3-G+6_GcnnCuKw)|;wa$vV=?RS`!oO)vxSw9Y-H%nS+pBB00;>Y z`FR#h&;X&`%pUWyELTFRm%tSZ82J1sWzrD08|QmdO=ebYT93hOo;!(o#eM?--ekgE zjk8e@$OrKe5RCT!a=3}2^Q~G+RJLNWP*D01MvIwLlRmQHlCI3KnlTrIkPmneYdi5} zfM^Y(*42(ox3ms>%K}k5tYU@S`E-Hh2}zP>mkbE&9n2fg;d6B08v+nQNI(7MJ8)eS okqww@RSvFBOX<3my8lW40EyX8OM;KNJ^%m!07*qoM6N<$g5iks00000 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d34bb7c084f2818bd933f230bc39c7712454c2c7 GIT binary patch literal 1098 zcmV-Q1hxB#P)EaZaz`$KN zLyR+vMvOHivdpN_MJG2dZn}Blg$^~#21GX!XwkOA0bvY*QQAS@;{_B8Z5bx|zk1(u z&U1dx|9Q^If&W>Wl`gcBXv#n-GlI4cb#SF|V!6pS65_o0$^=vbJ8Y=G*qJE?oWNNX zrTqfam;M#N3Oa~+97Lsnav;h-*RNGN`evuMED7lW(XJvtzks(lB%m1-BQcvLqEdxD z0+K>yQ*`>&;2Q^?Uvt;v3779xkY{F5zW9#m8!+F43Jh5ihw{?f_%q z0wNO=$lSjN08_?#Ht#B179in|MSyvQb&-AO01?qqxUO`L15~`ya1RHX#SZ4>3bk0H z)3KrYAW~KNtm?VGo{pbcU$BYX?T>{8%pyWM2nop8yPK%w`*EDV$Z)UC+kWD0=3E>J zx4-8i?x7%nLjTFl+?2|AjN0Wg^mXLpW`S^)A(aw*zb zNJZmetOsj|H!7q)q(z`io&Uib3>d{dbRV%^KnIX_q!xhQ(_eD^1ZySOAQP ztJ%0ou&t_#jx)!pv#RK$1VFjcfAh*O>PDi7yvMsQm|CaU8bH>pAbr(DK`KS zIvvj*%?9Am)?3)G`K+kww?Pg7Bsc`DjZI6XyQLNH_&6h7zlH?(_0_vpOy&s87QvJI z_3Cdw$qybb{d1uyi~8C^Y@!y~BoHtAOBE;^>ZSSjfXW&JyX&K=${s;VNmE<=a8B{6 z)xflXy2v!w$wegssAuAKEt5wDN`{0_S$b|mNYRLHubXX!dxw&JDESCFrKEMrVO|pi z@T;1?oV85slTZl!=pRo?)97A!GnQnt26Lvyt*WSRopl$rJB&|zemB1(eVUs{zDJ1YU+X5C#fdvaxuvHk&!cQH#h{K&-3{Ov`A?a;yfu zXfLLlshFFse_HucbG>Y=Fqf?*MbQvuju#P-Hw)0q?hk{Mau(9Ky36Pt%FEZ(5+B!Lsspk zvF4TlC)uL*(RwdXA|M|Kot_)FDEz7Gv-B2(W=GaquvEOvuNUV993nl%KzUri6F`(% zG}-%K;OnZRcyElDMr%dfw7?fCW4kK2)C-^jRFYzIV7VsX9{-5_&2f7e8$aHIHteSJ zr$$qN0d^f+7OXMn=sOLdOahw6fj-k!Q<5iAZnInNcMSkypL1YDkOD>K8gYrX}l z-9~EZ!vHK<;Uwju^#K7On@j*o=X~;{qFjQPh0}Xs@*Un?UL4pxM*SRs43I(k&O!ic zx9_FT{eJ)k zn3m{{@*)5(9ytX-<0mzEt`D&~e?3d%W9H};gxeILV$8`PJT-yX4OvLTU~$57?t1A- z);?dvjqZLFRU!M?$4mhH<=?kVHzv?KRjjkb>E%Tr1VRWhtIFm$%XsQR&Q?~>+IRxl zV+z>`8*;Rns;-dNEqc8D|Ptf&kohblm0MK;07K?52=&%IAz%|>a zA@Oam`&DMf-o+K-K-~edLLwIZ+oyktGKxpp^x6m~o?cArIXjOYAD&pbZrm!sjg-|6 zhf*b?dq!uK=tUYmJ7{=YB9cKK1AOM;&zLIE9a0=fi@O?(piIJbDa0;K<0~l<0dKU! z+_}oYcn3t@bO!Dqg9)!7vqX~{D&0aG6!{SuJ!iZvkt>4|2ijyk*3oe186=y9Az~MF zCm&?ZeFF9+ZS|z5mwKo>9MZaOx2IpV8*2^2NK+K$0pJbbO$nD3sF08ltm$D3@efR1 zr8ULL@3~u|2R-dhIr%I*2;k|6aE`P)&(DlIJ)SGhGPs4mifNNwF^*B6k*r8#$Pw4q r;XmhXjY-f|89JtG?cs@oHv#?zM4fNTEwEi)00000NkvXXu0mjf&n5$w literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_ts-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_ts-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2e06114fdf45b3f2987de2d80301eeb385d32b56 GIT binary patch literal 1126 zcmV-s1eyDZP)RDiMV$JSt$7 zr)g47)eXG-#LhL-cDuKEjRN_J1Lf0in7jfv&LAKEI8a)FdxhJ??h1^IU~65i|DV0R z;!^vMUI45CvNcG56V65e1z-wYueS=95-TeZiXsXQ>_;fdqPZ%v$F)`fs<>(eM!gm2 z^uffG>;NDGo4#89WncKY=<0oYzu z>8=0d87782IFJhgLXfbh9DtvXodDp6Mg!f(3nXT5;r0!Qo&Y_7bUpaY0z{vjml?4w z8~wUiREL9A3G2y8PYv%gk6<4B1Av0(_VPy2W1axBGrAT>2uP8L7WZKOcLu`J=l{5~ zQk_o9?nq$3)b0NI=oxIg7dX%`-8YTz-&vs>?jkHb4cn-NmZ}%I>=R5+P{{AstfOH7 zx81p(gv`xs*;`3{`O{nv4(Ixc)i^b}NxHvf0bq#9!Ik*hftvvCuB-r{tKl<#sr!KA z4^`8#Vq+MAZX5Bwi7$#CWIQF0=Jb6?MFX%8!DVWaj)L1ESAz=l0|eZ;VxOaLZac z4jsW}u`t~J6954d*U(RlO!-cZ0id%CarV%wEHn2L=!nF&JdFPMZE949;qCSlA6;>E zoO4~jMWEgXc|aic09xkBgxcJc^2nyn&AZ5~%|$nU6#$$6O3v?i$6^hM3<8D`au+qp zpU>H%navwBS73c!pu|WxiQD(=UBajvH)mSkD-1@G4_J|+fvUEk1pt?xVYIh`u@VUz zfo9Krl>vb$Yb~$OFdS@tfEU_|c`fNnkS75xiW24(;8F!+=bvTleu>Nhx^FbL0~qsa z(hN-14Tr|rks=u(>N(gp4&o&QMn+WAKLTb!*2WRW;shKvN8Fc%5M`FAbu;%(b(|fo sH47p0fLD;R6yIeT)FnBV()&N_FJV7jfWjK9(f|Me07*qoM6N<$f^z)_%m4rY literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_ts2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ng_smart_component_ts2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f21f44bde4e959cf9e7b5bbc5d6c45afb4ecd8a5 GIT binary patch literal 1147 zcmV->1cdvEP);&Eo}wEkd)s9jv&5YS){-7>hvyd%lQuf*OyK&@fO>Z6rn#9Tpb+E(3&@%YWK`hLK!=1l zUP0HF{|fLqxvDXK&vfA|6mU>R1bNo%YKbw2!z*45bAE_s2~EYTw0Ertc!#tU7gC{s zXMuG})!biml&`Dnn4OqXtX6}#sfNZt{L9PuaS%Y|sd|RLtOBxuK&51DSTK)%dIH<6 zIr=YJ6ag;KI$*1eJ@z|B&HzXNd7O0ue=24zDzzvVjozQkl7p!HG^>Rokgj>gl4l?z zTUSbuG-|dKJq?yJw8ZDof5_^I|Y0Dk_WiJ6fJlAqW~cv7qqVCJ^DTPj>WI|xgRVdK6m zkY$2mA~7C2%!8$en6i!_gdnpxUjZN{m(SIn!2H;sj=q0Z88e5cgzmWycFo z(OUiClA(Y;MZlu0Kr*-+OC6x&#`z0$RMi3St#J^Gq(YR735@<){iYkxd8OMcW!BQbj>=3BR4V~6vi!m2ot|e zq4n4B`imNGgfJRx>^CH-PLumc;Ab zBwAXT_Yc4toxt&qPk1K6hX3d=4f;(8S?1UWHQQUVcGppraSmR`3vhs_W*74G{N$9; z+H^(xM@##XIe-(G1Nviq)rfJY^mdrRod6R-z_1>ARyL#H1Es4l4~ zF!B97rjE7Pf-Km~^+=i&kQV?@OJY@kN5xp0C+N&@AzswsFt!R60&nE6y*h)&IBxZ9z###^V%C+1a{LcUdvJHEVz$jEu0xasrK!VcY zmI+P`5PNt%7f0pJ@+i0^gOn;En;0GOtO+6e_4LtPcXvcD9wVT1&DA<~P= zH4vWz@c{r(9pOq6nU#t;*Nz#OpPh#L>Wz?E0j?=uPB{jmGwkVKDf9UWdyB(K5zsvg z04gNFv?QKr$K#B5IT`J8VlB!iBEcFGAW?0>03D$=#O!?vp_>>wR!z_GYD9$2;ung- z-QkxY04?YZ#5^+(RBT6i#u@zN9L^J8qQ*Qde%^r=9ThaahH9AwPz-hgYS!tW-G;W% z!rkgRyxlIwdT!JERXwKI7~*#q1O<$6_u4GLN^Xt<{{$$dB<7{bf*J-34n9rd!E%&$ zqR|pwE(IwAwrF7Zj}a4r)(P0A7SY@C&{LKIFu!CIlx!l-PaO4N5^%6JAm5cDarO z%!WV6+yR^wCXLuP_JB!a=;N>Pv`)83mj-gO$mY~!F7Gd<#xif_=ckkq<#k0{ssaEC z#4R$OREW2M75=f2s0duPg*c_c`j-oR)Z>e_uS%vl*REX4Y&|_mw%T!_9j`Cm@*RYj zZjIRW1*md?ssyZ8)@O0HET7@Y#)=pjW5elMvTJ`pQ%ac;H4;iPY3`qyE9@VwleD)^8mf`{o4jw^lMA?uxb84<9{{hTu6s zn+*MGNOspd3VxiqXHEcr%R6;pkx8l)kOQ%D`1day4sS5szg);k=si{1#sB~S07*qo IM6N<$g2Zz4iU0rr literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nginx-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nginx-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9e84490ca862d1cbf41c398ced5b594e697c1800 GIT binary patch literal 759 zcmVy3i^bnhsgn z6qOWQfGQ<Hm*saCHoe-5N+@P00U#+ z$#1K`sm_s=u!HK1vfu&$UJiFt`l=FuY?C?o0D$|STdDof6mY*^K%adORjPdYwe-Qf z*l~x(zGnc8%}&xkI^-Ad_o=8#F^F)(0|duBR-!SEk!d>)*R0QBlQEug=Op%-iG_j9 zs)J(6-%T$Dcx21iCxoj8#CE@H`Bslqg@yASuYKQOp>CiMn^q{G5<&b5!9S(sCb5Zi z$!Gw13UPypfOBM zvAdNXqY+uO7}5oHRdV@xJVie*3N9v#b97f3CvoI0t~b(>T4H66!-ir3^CCQ~v##U3sxw%g!M!)Y%BsaF+u#v!Y-{v%_z7f02zU6Ib^vq+_?Vw%N}#VQ5qwriiSPzx$yN#if`JER zzbgGA1OazNTN}dH4nNcD8f#d6PjAV@0y=>yf&1-#CPdK9;%X8{(ZdJ^w^2?5zt!e^ z?Jm$<&@tHE8jRX<<4$AO4mBQA$((@!)84y#(0JnJKOolxA*6{^%pM|AAyNeW_B~+62M;Pivx270 zWqcF@wJIPc(+gnTt=p>6Giyl6JO|2PKG25rHz8+Ufs#v%6buQ$%XpXo=y}fRoyAnT)3VQLN;Xh8;A zU^E@wb`m|a28*K+iy1`vokXS@hJE8bE{~UD!{8W#PFMg$`yQsyHAtar5G+>Qj{Fs1 zW(etbBK=Mf83V$8Q*0`zFP@$@9qzFnM||;m{6-Wuw+KtOGU9MBlxrtX2-M6B!;_N~ z8eSPaThqx9241B$X&-00tR2yZ7?lLjl{$BtcKxi0hVT#B|fS%UFFLkrmOX(*&1u|2>I^(n{mOQ}~mK c-_WZ13*0*&hZ-{?E&u=k07*qoM6N<$f*n#`-T(jq literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ninja-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ninja-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c1aec58d72b16e26a907e2878377229ed837698b GIT binary patch literal 870 zcmV-s1DX7ZP);luo?Gi=+%3Th2wKcJJy%%4jhq?wgmDNrF0;3`Bb`A4< zXq;ryNHbKSwg+Z^kJGk7LIPlw-^0bLr-{Z4W+LCI_t)TZ{#p5^tv)JNR?&W94^Bm* z&uQGgIl$XMm=rXU4*+tFk21Z`fyly#emwiDLjG)I2cJ62f zp&;~+jJ*mG4t_CoEk3{0Fb&WL#&MV9N4d*kK^h>y;%%jUUoAqLT-0q?U4vQMf~i_j z=K=tHn)!ya!j`(P#oy)y0O(pmc`-cB$us*9S_oAOp?^;>*gwW#-xx7H!M2@iIdn9R z!)aswTa4?S4|&=fz_X&#$n?uP2gg=cO?{eHkoR{h w`sl;LEeo_rXi}hB!fOva?1E$|^Z#r71cc87cI+M7G5`Po07*qoM6N<$f|{0j=>Px# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nix-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nix-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6520857b107cf511bd7e9cbc22a609f3c6f21bf3 GIT binary patch literal 1076 zcmV-41k3x0P)R{&>Us=h{ zIeV>t|NmNh?{yB`=q5pd@|y0QsP1-L=gH4r-Y^bOdwl$$qIqKU(}t4p+xyywm%7Gn zHKK2MCE>&Acub(Q>Mo$f#{If~oVHVh&8W2092?1TjavtlSd}M&XaWVSY7?LePi?L0 zTmxYGat{F~ft-wxa}d}Kph!y)&%7<<&ipis(D#l|8qog5B$uX60OnPERgPPS+NN_bIa4#{7=c z-;IBi^iQEaLMF;ijMH4Z9HR*X9X$-wtI@Uo~^{P{=t76pHX>eM#=K>5{1X zX7r7CT-OhDj;sKdDAHg=TYciTZU3fWNSuM!KDy4vGA2VIXKnz6Kt$YFV^Ebb6KXp5 zf`raoWe%Gp)xbNg$KjpP7iUW;7yb`;E{6>#Dl zvo5cx$_w6(f|+g4_g1U=WdaqG6PIGyw=JCO)HTH`Qkr9z(l%jNSdIpdu6#}slIvNqQ=tjhlnVESoQ-M0BR{b^Zod9 z#`yWh`1v455=*+1KFNsJ{hKealebrQZm^hczz5oZ?ZD4#vx@HbJh5KK*qzpL3dm5T zsIhc;+CvWhABa@XR?WLnVUNIN;GSQnx*h}YHs}5>!h5r5tqS4^6i{ngffKmueYt<* uWfiRgI#f;ZT={D2ffJ7MK@iW4Z+`=QgNDFR`VO}M0000=e$U`g8Q9HCStFtjJu=CB1<9Vj@NyW)jOj@YR1U;>uj&ccnkm&~xKmlb}I z13ab)aVkHxXgjbNi0+9?&P=+t^2do_ZW=m7r5G?Cy z&8%4&>x9DScYq^2RZ#a9(|{k!iu+qZ9osm(~nU$~smo=4GYcf(qEJBG{ zeFWOP!JGB1#39{K<92yUegN1}zp2U;;zc1a`-_Ckn}wGg^)#cRXY%IoJxnl`QN8=( zR(G6xTmO4D5o}2GSYO%xXGwE!VAu7Js*^@1^r?5H6iN260Gw*x#tH9cf)OvFwoZIa zZEd&yK_qNDXtNk43hiiV-QZ7!!#N~C=wH94s+O$D3;E0V1y4scKL@_1ru`eT5?*Ki zn*5^I*8BEb06zPp*as91M(p)^hl4E!WS{+pUvF^n_*LH8w1xW6_nh;W)6jW=3vGL` zXhR&??!1k6d`*>7)|Td$<+^6MqHAUu0v)=$LI_4bmu}2iF@vxQ5&icVX4FdZ)rV$!??VyqG3@?Q`eYxmB-zKJ3Ed1tyt+T^ zq5Ss+ShXm^vIBrI&e;Gb?l?02e*bvWG%L@x?uoq`I7CE+h_j7gqPu_uduF+UGlmR& z@}qyZUKc!#p*o1MJVK^3mnUNvwCJWj@vbx3>kVY+y7>W$8Gs8xtx|mMc0aUL2odr5 td^rNK62v6HEucv$aYX29gUjWr`v>}cx&rg!!0`Y8002ovPDHLkV1f-gM_&K{ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_noc-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_noc-24.png new file mode 100644 index 0000000000000000000000000000000000000000..74ff0db467612878bf01afe34f80c86ee91a8a7e GIT binary patch literal 523 zcmV+m0`&cfP)Kuy(z zm7J~TGJu?W{;G? z-}k%cF75}{d8An3JEu06UYH9#Wk4&#*&{FAd3x!81N6Glogi;1y6JC|`~upMh^IeY z7vQy2q}CVH57G*JWr^A2OOQqBL)j(Bpy2P_AD9Wq^~4 zms_&%HPD3cz90ApoTjPY3$17ag8LJ27c_8I$`NK|=y8vKcCh0;8!o6a&CDD)> zE*Lhr)u!UNO$Pf06Y|a_>Zg8PxybIGk=hSMWmt5f1sDJ@t41Si0Pq&AOm1Luq;4qb z);R#Z-`72Ag=c@Vj5RGrN7T1wl5TXg$E}S6gzQizH|q*O!BM?UCAjI$(YrTjpodjt zRNy`gkpOK4LI!iBkbP~y%FGALw*qA%GUk<;lbsFeQ(f`Qmn!-KqSFV5YQpORbk%2m z7GVI@eb%Mm&!iijNV?I(2I3yUGq2u1Ikzr=2pTz^egxI+AW4)TK&w^d4NJ{Q=R~AB zpU=*Bm~Z-0(H$A##fqi5C)%55j;@~fj?^@%niG~W+kj90GeCtu1X|}yEBce}U5D(D z%=(^JsmSA?h{$97BcBo24n^E1a#@th~7~GL)O!or#em0t$1vyU?&dv?Zmxhn41m7gx=m%o?-QIG@ zhv0TF7glwzY#Eyej^~1%RAi%#mDGUefZ=d#7t*XHx5vo^AXE4%{XqfnXEpO4K?~KPv%q4vi;Ks`3kBcq+>pp)0AP#8P TkxAv!00000NkvXXu0mjf?MB-P literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_node2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_node2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bcb68238e57e120647dd734b80dcebaf05b5f5f6 GIT binary patch literal 1289 zcmV+k1@`)hP)00=tBbn=acBg|UHLX83@K+~SOoU@`<1j7Gr) z2@X*dMFWBf5F!K=6+fU71Qu`$Y?*8Wg4^hTZmhe|G1$7%cHP?d_yJZZ6o)3p=hMkK z|MUNy^PJ~>ANY?$dKA%yGo#1pG{dqcn+o%VP*mlP9mhTW-IW8`^>ynclz#=-TyD|1 zw1(G#rD;(!Qf55<4n|D^0M7n4N?JEz?J8-M5IcP6x2(&qc0V%U!?Wp=gd!b?2~SR( zWm!#1WDbqJ6&$sHgd%)QOL&vf(fKs>R&uOmBOM-Vvrv?RwG*tThXfQ?k692Q8~5g# zmTR-(UZlI<&aswHxa=$q(j^(5W~OB|ak^Cgy!k67t(yj1zOI7zGiwh%6tMaHQ&ZBS zW}ldvutHWzGUeBHQrWQwzZeLaMwO%{BW5mB6IP;B$EGl`UVz zBt}nbGwISaHJv|F+P)RHuPdbS{ShHYlV^T|%-H!j`Wn2KoF$35<`vfgRD+@($@Q^0 zVvJ@_!y=B@iyvyPlGH?LEX3>5F@y~V!0qeeh`pFS4KHKTjn;Y<&xS$0JUHm}cFX~| z;k5-BE*`ay#@-6b+P5*v_$<#Qt|3xm3amRkR(`o!#5H$4oqe`JujhqesU#s(aJ$ZZ z!W$pz#QLxpbZR4EDjhE*eNKm`fp4q@Y_FZocb5xMOJU4S`Z8#bPk4u~uTCEqNRd!U zPyT(DK`+N3tF$;g7jby3-1IharRNk!nm?e+Ye%Ej2d7dcW!z1Xz&sS7yT6sj-U=q0 z3YirD3OBq>I6PL`To?HH>U;G2U4*M619~Aa-33TO725XR5PW;NkYvL%So9ghgeNgf zJAyG$`Q(^hWw&(!9-lLymhM!j44@!7hO$pJ=8+v&z(LzeuJoJ=%qQr_vn1_%Mj9qk z-*qf7uOPL-oi|V`Qq@oZkFT55$Q))`RuL1POt?A{qsB~{aXJ7u`kI3DvLw|6ZZMEt zUne)tb^swO382+=o)fKKFvYx#tk{Kt`2oel?`>OXzEu@?16k5KiZW~K0)TZA%F*W7 z!@!c*@D%K~YC=NF9lJPleLwNKbhK(c9>0^$J{$dh7XY#0DF7J4h93&tWN@HX8QyJo z*S@r9)L!km&Yvi2-;Th~V{$Bg{+^%{x46y*fg|K-@)A~%88eS|cWs{}>5B%}f_`?N z)lA488$0JjuK6`}gdBw;6a)&pFD}I4x%j}1RFX_~TmiY}~T(mZ; z?uUDIp&L%s*c>4#`+yN64HKE4yp=Zh1%9({KnR6dmQ|!0^RV@lbG&6Eoqbnq2x;+} z?AlZJdp)#eZaV*j-aFu1CJ@V0j5$g9iA6+d5`o)abxF&oTymbY388HFqyPFJwaojY zxGH_TPBv!en3m>)B+5H>9`*X1e+-u5{~CV*qjKb)}?E67ABBWRUaLQv~UtRMtwQHzK+tt#jj(PC(o45a-F zwk(3^hmb8I7^9Ftp>0CB%2Fxk>C7ANX)$kR-n@D6f_M_DpaM)u_i!qneeG{4gGPpH;tg~R-Dc}O217T5$N4Wax zNdME%e`S#RI2_FuRxfIiI|7^QB~bkaYw%ZbW9bq_wa2p$6_XrSu2{iAB zp-Q|2<5bS#omQC4Z%?m`<@YX)eI;0Wmk*7FRuDvVi)QOU3~j;Ji5&R_0u>D4}d1+L-E4g_PK7VYgLs zv67m^?(nDS*DABzZ0ig#>Az^VDYg&A=sw?qj#kc<4c+Hj=sFXx8YLbkJ+0#1V6-&s z+-2#pTS3{iS4L@ML^`NF?EGlzxb~xI3nz%1v&Rn@!+m@!QyDIe^gW-d$8Gx3Z#sSf X*dpY8&DMBu00000NkvXXu0mjfAU--V literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_npm-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_npm-24.png new file mode 100644 index 0000000000000000000000000000000000000000..df8d3d08dcffec167b1651b35de82e902d2f22ad GIT binary patch literal 448 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_numpy-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_numpy-24.png new file mode 100644 index 0000000000000000000000000000000000000000..94e46a3d8b4f844efb767892e908c59b910f2996 GIT binary patch literal 1001 zcmV@U`@lcbf(ipQ$GSGMv=ZYnwgPA(nf<}W8y+X zffiatRMfbTjV7+dh0YX1`=(SDSQ3Pg(DqGhD*_rK3*y#jsN>AL$3;7JrZb(^g^6c( z&;5U#b8>Dj{GVc1dg}3xQ`sH=h9j#1b*8;G3kQLA0F;X=+Mh|ZoLh-&Rs!t&;_?P7 zbOTS9l=Y~nyt*?rdEZL>svS6|CLY0>UR3T?BkyG5&90N0+N|RD39`k&p`k?dk~5eM zquLMLuW&e%h@P)$&@njKs%nmcK2r|T3kBcoJ+nJ<9UzgqRF{*wPZai)PeH!1>i3N# zV-v+p*@*I%U%*ZQb0z9mK~9``q4|cB8sF5J_S(|PwmDTZfbbdMFCcS>-dY>b+ohU| z2F`)(=b=gS-0!o$^@WVTMMOVBwJSCgX$%DZ`qmlr-bI4fEL?O_-gn?{a^ul`Ms*uX zUI-FS3gfnbA^_KsDI$m#LMfbA$Vg}HUDqbKTf0G+AnCM*6JaLby7B1gU0+W% z&Lj1$1@W?|x~2x+7#L6k(05#R?!yIW_QU#w+td!dU+`+o1q>Sh)7RO zRpBb4M*u>>+|QHY>=6wWt_$)~tq$--d*_?rDM4e^gca?+%id^WtsMo(7uI~K&<|`V zg;q5fc`r5r3@sd!WtVmKN^B<57z*S^a#DYox!}3^ZgshhT#TD#Mf$cMut0DzsfgHh zfr)VTXu)4|Q=uQD8>+|F`23l1Oe%){~_S0&)|7rXU Xw|Z3o`D7z@00000NkvXXu0mjf@C?>) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nunjucks-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nunjucks-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fc317d2f2b4eddd065120daa3627e589c68d5447 GIT binary patch literal 635 zcmV->0)+jEP)}`MjFPC30crn*e}Ay%C7MF>*uT6j&4PfBbbUj zt$hRuslf*bS|GqHs7+G~7#J9sX=TA5N(?4w!H=ImAN>FSA7?UUVr2Tq%EJDOYzzMV z|M&0i(>piO#jW*iuAW|U>CF8t&%QdFI9?;$0tN;KhV^^bVB}mgUCa04LgFTjjEua5 z3@2#8ik(Z<85kIF77uZL$sfz(s}HlVuyW&4gEynS{_tAl%eSxBc(}N=U}C?1{bGc% zZ4B(}Z4B(->i_-!_ZQs^g30vYxxKHD`P+|fk^BGu|7UD!w;tJqkti^HklY;mUx-iW z+{e!!*%%lY80x22>ufo^=^O(C1HmE0_QP literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nuxt-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nuxt-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a443ae93c59dc0b5d9b71d07c4f165f3582194b7 GIT binary patch literal 696 zcmV;p0!RIcP)kqfsG)8)YR=jn*8Me%#v!vv^sMDZD3^RSdKnww~*>u zzm!Gc2}bQEd@}^B2F8F&U>prEOLt2@o6^OH$b18o-R_hq%gpnJP&LDzT^4r zIhsE7P`MV~o>Fsh;FlP*0bhX%jGS8>kW5q~G>7da^0qcTd;-`8%s|kbqebmFBHgYL zIqkN8A)r`$aNlwSExnmzkV(`b>VA>v9isLv3nM7K4vYY+5Ys)Ic8iwk+==ia%ncy& z+&xkcp$a$zlmZ_qF5XU6YnDvMUeq+?Kveetad&1Hwe2s997bZGvt@BqD+XlN;4Y=T7ezTxqZ&LQHg~aJ~LlmU;ikIqRE<{=r=k#I);F!f!;8)ZQ=d`_!jQxOQq7X>bmy!_VH{s`~0s4 zX6Au|l5PWgg8W0$UP-3|UtFnF25a@G3ymHF=Kv(VtWHRhBrOyQm*P0y5+s++W=Hb* we6g*qZ63c~6eA-eOS-zcKFu`nf6P(*1i)(VQ+}Fod;kCd07*qoM6N<$f=pyX?*IS* literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nyc-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_nyc-24.png new file mode 100644 index 0000000000000000000000000000000000000000..98efa45437055b5f4b240208551db43f705f6a4f GIT binary patch literal 772 zcmV+f1N;1mP)I!F{-kG1;~8RCmsu^L^*L=K=rN6hLCGxfPez ziXs~XY7egkEC5_um6EHK#1~fq1dK|8ma_kdAe9EK%Lhy(r8L3Vl;+Dg%gl2Ryhm$1;tq7sz@)g*tF7pdHoGiiYyo(+2q~%NeTic9#F>~LA zL^9_u>Y~lK@ZyzI62#FkIa69?&-2nTS%Se4&A^CeWLz`$xv&c6?Tu^XGbMsD$$M@fDdDHHu4J)il&8uHQgK2`}cs`Lrg%6%&h;B&1pk@gcL&CDH3j*}k z`DB}qJ$^-9ox(8S_)(L10v`6H3tD<+PGd)eAEDm}>@}(Kw|KqNv_p|^O^u5FVCgB{ zwbP)sCU0{pXs9oYw*dSts&}HVF+(NIAW%`f?d&H}WHVsJk>W%E0000vI}ep)a>J`sxGUlt7Rf(SsoFQ7oBrY20`#Ba3A=-*XxyOn%?X4o>kSrIrlDb zda&OYxR<8sje(Qr`SG>2wGV;F%n%XGY@4jAouVj~s;WAdB*~8eMNw?j0|vXDw=Bz- zMdUj(i}ol>19(SOTPrIoj|?LW6)1}0sF^JT)ds_)MeGxb(mRz=eKx1KR*z zjiTuBIF6t0cDsjx&%HfwW?42hQXtRsCxDZ6OhjIfN$UOb`(f4meQS_D1o1dTm!_3|ik=Md7oQmW4u_Q^BeV*S%0MFGO=iIkLH~7>Jxlar@_PwKp8v#BC-7C1H-BhI-Ce!Lwe zO4IZX@MRq{v!y)G&$Qd^F@RR9b#P*0;v?Xg$NOxgK%e*?(5XQU5n0;Y-2A;LireGk z<39s$c-uZ547`y7Ns?R_kyF5*-qHbJ3Q!Nf6^7y4!(#2)f>9KGVP?}JlI_L;OhlHu z-R=w1)6>5VBlwqmD9f^ERMo|C{6mr?SAi2*mOZ7ab7pn~I1mKEedpZGFbrEWGc!NI z)&#DqDgX}cC9tTfi)?+F+oL*7({;AS^j>yNRmXfV1aQukBJ#li6pYFH{FhWO97?S4I;A1 zKLL2c%wGZQC8B&M2aOQllMp3h`5 zw^OOq=?x@~bGBNoUg@X- z^MxP?iU6XY>1q%Ju2Sj+fbT?ffSE@D%mcU>N7_<=h&T+x3&t29z`+JQ*!W;A@q9aS zAbykKy6%$J`UEpS22hU)S!L!;w{Dzmd7FBkw+!I2@B24}5T}S}w=t&7%-@*#t><~a zw46ow^5S0j00000NkvXXu0mjf913bf literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_objidconfig-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_objidconfig-24.png new file mode 100644 index 0000000000000000000000000000000000000000..19cb5080faf71971335e3d1735cddd20e3fffc1c GIT binary patch literal 772 zcmV+f1N;1mP)i_@%8FWQhbW?9;ba!ELWdL_~cP?peYja~^aAhuUa%Y?FJQ@H10+C5X zK~zYI)s;&~RACr~pKmTE;oxPZnU!5=(ZV1LQwI|&ok76}q#&>&+H^5#SwYJPS{T$O z2wF%N1S!#(lp5lwM2i>(i;76n@)l(^Lo?yb`CCk*=gc@-tQ(iu6@_T)2k*p#_Wh3&Ix~l2S03Pi!P)%^6j{N)_qSwZ2fYB~D#9%kjX>cNLxvG9QSZE#9^muY2-~_48kPu4FGV|U z=ecCt0zhqTl+Z*IiWcBaMgXA|k9IQEHtNBvEF9ln1Di5}KoGlq3wtZ35{AW8&iUH1 zjBo%4(b+Rb!we8PxQy_)bec_(rlLpt0YpIVfGPpj0qcR)KweUR6bK?rq8J4}0^5Kp zVieHeoH3L8`*ZPV3XkSXSi{4^J54=4Up8I7Jfr3J`*+Pfc(r4AG)2$g_Jn1dD@O8X zv4sJ4&^NG#{ng{TuAd470u{iJQmUh@tn3L82?PQ)Knt*2MEt;EloGrH2LQ0d^hE6Z z9W<8z0)7GxV(KX#ZI9hR!#K&KNi0%S9A zG0sw8HNJRa3j!#^Omf#4Y5q(Jb^v2!t`ITH&GZ1b`!~vR!aUM{=>mX+*N%D zZ5cpr;BsD1Hd6rr_0D!gjsPf81?vBDKSa`urbE>sSh+a$Nu^Jiq#)roYEFDXLBI{0000CiT~u~aK@njQSPNJ70cufVQRcM#SlQh6zI)w!y0DE+TOX`0`olS#hjX6)?>szk z4)DK=BnBUL=ITXRosy1WL?`r4JKh~02N7yw2AVA9_PFh;~U;9n{UAeC+MWF2bl1Lb@G zAUKwIO!Zx1YRY|-K7iwUCR7|LrAAv$#>Ve&10qc z(#lkMzcfxhEec}cI%h0o!vh0~_j3MEFBV&9f&NdC=Qp4I7KmvPwXN})zoyU+rdfY_ zr`TfnY*oA3;aNd5jIBc6azAf(NmB88XVl-?8ST3BS#lj*7QS()DRk?o8-NI)D7Ebv zK=^vyfZE}410Y)Pi&J@W4UzV{uO-)pX!v5eg)yyw1p`gQT&(-83KK*DAk=umh%x=p zEwB0C3n0sqJ?bF@=ID6q?MeBfh7-oYm2i zHh>r=`a)NBJZ1{bVhV@Y2sUg}g}G(wp8$9OAdIyzkb3|Y0sx;o|E>DUD>Iok16YLb zpAeG=3;C4`JOKOv+5ij@upk%$j1nCf<^d=G5PzKsexd$KbEYP77Lh7ZqOq_2yd^Z} wWM|4guv+ka-8tEz5yQ}|^Y7$T=l&mk1I3vV_AREFv;Y7A07*qoM6N<$f(c58CjbBd literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ogone-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ogone-24.png new file mode 100644 index 0000000000000000000000000000000000000000..22293864e48fa395dc9e2ad73349e81df3e8424d GIT binary patch literal 1207 zcmV;o1W5adP)8LJ*TOre;E5G zYbKeoiL{uJWNl(1iGWZFQy>sT9?GjxfzUB5pS;{Y|LK9`?iGGvcaq|A{oQnWZ=28%3A}y7MyH1V1XNWRUnXV) z0M*=BePc=E>4u_c0Ib#OE+ob6Fo&*53!e=e!L%hMLn^ZisIHif0n@34#1*Tk-hZa+ zLQTAKPhS6a%d_E`5mpHC3n}SNjY?dwc3#CAV*1vectfM1siwA|K0W2bc;DrrXB7X5 zUq63peB$=)*{cMmqg7R`nFoN`^cDj?_Bz*UT^!olD}ttH#zzxkb38qt@NED9W?6US zXx@-bsxMiLc@F^g?PGz!x%R{Xz}Gk2o0&aM{Bp3Z*zl%)U1Hwj&RX|20JwYauds7% z$6Kt)j0XW>&zM%h{;voCaC7z61DNXWsaxgc>EBga_QBF^*#$aD(p&`Qt;)Bu(img~ z5XoT=69<6CCPNbd4YS2FHhQa8mSvBkZ(cL)-c_s0#$_d6w8)`W0F$uf zVdCf8e?0qJeNhAe1P3Pl9vBd}mWb|{Ow)nG!<{3WU)nzg0Hb3g)^8|7SZW1;*=$d| zr?>8W^~r)z01i%$F5Q`%@?*}ml{GW72N8`02POrLPuwyAKty=ffKo@q@_hjK?}fzs z`cJq2Q1MYP0EvjkcIABSYO$D2C+iBA0f1f~+^JGIYA#)Bo)Sfe>xuC@Bdo>DH>?1G zgpRr5SFW^leP5m*0KgFd)+Oxj*6H*<6_p>i%Cbcd0P7R;mH@!@kzVK6sI7yds8U;3 zBnq8YKytd&2VhVM4h**U7)sw?2|x<~?z&~IQIXkEqhtS!^z@$!2LQF&sozH*8~_06 zDf#Ny=xxv2^f!=}CiU8^2mtUU09?Cv@sDGr@Awe0GXS%jt5@sJoI?QsaO}Hx2Nh^o z=%$-W;R?UCPZJ5ERf%v|IXWl@?LDb*{IRLMM+~ofNRso_kk!d|qat4oa?$FZQ>MCk z>rbW2>FB8JkhyD}wV^4KRCu3dV>QR8B4*4p)oQiI-PX^{@+Svg>^B-Gg8-OfqPMgr z#pT8c0R002ovPDHLkV1f}rHe>(* literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_onenote-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_onenote-24.png new file mode 100644 index 0000000000000000000000000000000000000000..60642b4c75db8252963bd2d9502c0c75b70a09fc GIT binary patch literal 891 zcmV->1BCpEP)#|7B!BegKR^E3 z@!KBY#1jQf-F-lvugSu_vHx|--Yli~<>%3z>4@NgBp>-vICKYMn#5x!0LxamsXz5m zQojf&4c#`tTV8;F?>0^!InVI*TRgqW!-1b`IbQbz1HTUe5SR>d`0Xz(>t3xcV`D|} zd~FH=+kmCnnXDOfMJ^4n?@|^(A)I z_!D$3O(T1CmW6X>Ispg;!u);x7J^IwX!Zd!_dhzXa{ulFJ4;fCX%aP}h|KJg5HLRU zFMVD80K}tly4rfUGcZmlV9a~su{fhQ$1PW2G6>9cSW($Jlt>QP9MSE8F>Vix&DS@2 z2f5KZXz}Py9baXMg_}G7IVgqGHXs!k0fX*i);2AxdV%$?6wcS8lKg0?Ak*XGowm1Z zwR>ZeW@qcU5ky^n;(&+|<;pMDY_(7@-22J7+KRc_0bnY15)oaYydWEZXIWt2g#I%o ze)_B{Vc;kw;)u~_;p{d@GBQhm+*!+L>z@s&kIYo@;fu{H9cHxPafbe);~|7B6btwA RK2!hz002ovPDHLkV1jRAo>Tw; literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_openHAB-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_openHAB-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a7eb37a2d104bc748f2deaf48bca49b5767f1c95 GIT binary patch literal 928 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 i1QaC84DsgpkMIM@56N9z*)1^*tc)i*WLGpfP zL{-&dPoTZ0C0fo~& zPgQn+Zp#o-JT6DfLN@AE)L~rNDPCmy;dKZ3?BX=0+zH&&nq_{2;sppA%lmRb9f~|On_8L^0|w5jJqHFF z79c{e8>i8tKeFUH6uu(21+o8N(V$p=K16c_h&Taa4pC>bp=2?K4dwlsUI6EPiBhpQPYVD5002ovPDHLkV1oJd*E9eC literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_paket-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_paket-24.png new file mode 100644 index 0000000000000000000000000000000000000000..855d72ddccf57cd16fa84c059fd430b68f5f664a GIT binary patch literal 860 zcmV-i1Ec(jP)$`|1uY}8 zAgN6)TVzEMG;)a^h?D6cM3jL zn#i?vEwch-*93~nw`MowEt->KNy3YcARe{%pf6tSJMKt+T&6c z?97V=JqYxmYtRNn@R4PnkJNAWD*(U?4?dJ;*bBxPFb0pvqt+(!t0S=Wh63a*!kd{H<_MoTl`d|ve@(k@a zC@&qEo+Nbk3}ZNAj0#~X1X392o@l-OEZPMCNH94v1j!WQ&Sb_NNm1$WsKouYZajI@ zi;^|-k+*0LQZ$8DEznrg;IMP59glyBV<2M)Ryat~jKrkFBPJUBUq*X>j$rXz&34>l zPY@3@8iKSUlB;eG#R+MdCK0IsVs<=xz__H~()bBdJpiDNhd=d(5%@TOmd^eJ0XBLR z_%Urh?l*9$94B|>AWch{A0MEp9Q%tharbCG&g@y55Xg3lh=8Z>gK#=H9v&+|R$7u> z>E8j299M}cedEEQ5rJ<523BNfkdoj~7_w6SIxrJrfDaN4W9vz&6^-SP)(VP)R0{YW+srl8YWZ^x!224<1BpEZyy9H=B3%op>q*%gDIu7p>WO5?E#?$2_2s@c*{ZXBKXburGb1irsgQ9W_- zvr-ssR6_93SGRQ)&}l3tI_^D|1x zkaMO2<#iz-0b)b9^LBR<-wm*e5l!yDNtJ2cs4wM^&a9sVfe`?)b?5*9w8^WXR7J!* zNHa4%-)>J_w!s%qJzS1me1LoG&MY$p&KXPFTE$W5IcMvfa{$MDi%6MuQ!|Zp=a#XL zo0m1BZ=M~xx!l)%)EC}*=ctQw#sC1&0ZWZl1VTB7B%~;uKGzsO;mSjcaDYqvgKzf^ zZ(0)v?`Un-a>jgM0E__Wf}EsKm^UV^{aJ6lH1PUI2ma1j(cru1w(jaHMI((?)~y5& z31}gmmah3hXiTnunNQuW4X?aEburFAb}(6~h&4Bq-b_M&Jr_dxN&s10h!Ow;;EY2Q zC#K%0|MYvkws~;;SZ$?3ml;g#c(k{tN4{4KgIk3VAt6DeRI6c9?s4uD0C3NvCF#aUloRox@5vj(K>F6AO^s;=N+v+4w9X4cN)8-mbk?3Y zJKcEk!6Qf9zrmLbPQI}9_E`C2zLNb67-cp$p;EEQ?VR*Pj7ScNa_20o>+FsDUjE>% zOMw@~0RU`{199MAheVcuq{js#B$6Iaa%(dJ%pJPf**U#qHSi?^#@LU}Va6E?5J?Bh z>qSBooJ$5ATkZU}YBSxk;nhQ5tp*No!48f;KYVy?Z}DD4v_zy3K?4J>GxKw`))*Xk z`|z37!k0P#07%=oyE;2JjR-Ew?O7?foY&dWKk$bKI)yLm0O0&fiaoox7>0M$=Jfcc h*ABhgDfqvmzX0Q>dWG-|mfHXT002ovPDHLkV1nYWzVHA5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pcl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pcl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0b1ca9bbe8867828f8e0ce06e7c2f8f456909f17 GIT binary patch literal 623 zcmV-#0+9WQP));>=c~hyhQg9K9tGd`aw03b()8-zB{vio@8v{nye8S$aTP*`}!QHEX z83WKQAZnnGKiW=C?l$xN5pS&{nw8K4az)^p5&iMO=L<~%xghmOK%Wt^&NE*<;MBU; zHCI2Wwbpd@t|r`O#S7Yt%qem!!8l)zy$f9);M^5HKC2 zo(MSM6WG6f*9Q+FB}BF23n-0^(r-s75!nILsBS4u7T{)iXS9FqDZl_mX=)D!Ll zr-RhuR55vZZv#=+1^T0-FDqd|l8XT108W!!3im-Id_(r`0i5GHrS7m$6=a>{_hvo` zabVkL0N_ZOuK*0^ipfN?a5LqL>1z;%e(Tp8pz0k=1?jT}ZWh8OsbvT5`vugCf(POP zfT%o(WY5=>MDJ9Q4XU>6WYY6~tiTwQFX5mvSxkDWQ{RIjs%Sj{|QDguB002ov JPDHLkV1mii3eNxl literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pddl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pddl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e7372656e6a94b5d3cc1b74575bf840c84f2c976 GIT binary patch literal 845 zcmV-T1G4;yP)&bdz>bg^H*kf}r5S zzlCwBh@i9zq9W63H&xJu?Wzi$fQpJpv7(_=NoSHqTawIt*Tpvp-?S-p*81+wx$iyi zx$ixf%m26pLOwXiz!EnX`D2{vZVDY>Q_7X=`1T%}%lSf{w8%@SrQFtSr!5{rZH5Q) z`4xdGYXiIS^$reoE6`*Te@7l$RRH&*H}X!m#bGCnz(I_D$hFJ)QjW77v4>BN_VrcD z#o{EC)AX5J=jIw!ii1hAJ;XRBgiVpY$Tu;B$u0Hz5A7NUu&bCg`~LYSxE()@ak^Y8 zJ%v5kvrsHP34;Rzqc{{pcsOzwh6B3_F&;hE-#-XNzG~N6xx>7`=D-w0>MMjaoy~Ek zV+b$C5OxHf%c%N72#>=Ue_}eYxx=D&xeRM@3PQd9h9p@)jI*6DbWCVM(L$W^R+M^Yf=`eZHfdxv%EM9aGObra|j%m6VMYQm1+oFmX^TV=;p5>q*WB=6-5*I-%6kcr?|FjuG zWu(#AfMcsr6P)P~IGzc#Vp||mm`akJwIrE{6l%S_SBvqQOeuc8tzJJ_taInSz`A_p&sc-O!0`@&HonKm zVM;={Zp9j|-^cq3+zzla^-qZ71vDq9dq-kuH z%dbOEx%|k|;^ObJM|L8l>C0)UG#X<3QlT&-JK}xqrjA@-+{X-7iTl}i!Q#I_Bvkpi z%5O3E4Xju+&M!C|nW$zqbcOwlV`E@n$i}x*00PhBy~yzS1ulh?@EI3aIx9d#wehV+-*jAWw||mOi{F zeJ>OD9eIF+yNyh*WBIDIZ(gKiWr6^dSCou>!_L`2FP6;XL^l8sj!^y>xvEtRBHWE6 zRZk4(pAkBVnc39SjEL~FXJ38$HBJ~*9a-+;U~bWM?rO@n_$Bl+jxWe|-}I^M=!ZO7@{ zN3AAA2aNz8JLjeEF47Soa@I82BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt=mJT^vI^I^Rw*RP$rJuSPFOH`;NL-LLZT2^BGiue^Wk1bJa_6yCU7E zX<+zjUE!Js#>*m28rNN1@YU{5RM)1?#?_vo9nIS~9sMV^CA(O$2(mwW^I*67B?)Hc y^`8?s^_yQUUm;?6HA10ekKdt<40k7eV0p7kf}wMw)jFV07(8A5T-G@yGywn;s&Tpi literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pdf-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pdf-24.png new file mode 100644 index 0000000000000000000000000000000000000000..592d57ea7f358864a3b8662ae6e1692f0cd81e7a GIT binary patch literal 901 zcmV;01A6?4P)_h8B%K7#K~Awg$oxUwu>@QXg9TW(WsjV*y0R@2NFi<6k^AS(^jjA)J|sJn|oYjUOLarB#kRQ zaNuw*?|%3Ee&@meJyffMY&QE&tyX(`t&cs=i?+43y*D~KdTCuiK9zdkzIpRa0Sw@^ zx5soe+Tn}f171D-dU`c*io@b66VN1lqtex0749&Ow9@k}Ojc}>7W;2uz_r?+z_ zGCYiojBxwvRoago!|v_n{^BCP0}H^fKqL~OtE&sgabBC5nK|DQun63#=Ut!-e0S;; zOIi~>aDe-z67$!tF+V%Y1K>ejDu7a{M5R)}7?aB7a_=?*?4Vcx9*W=r72uE4r}?c= z;LhYEI1cynd7K?PSg2GmfB>E`D5Z$U;{bS`N1;&oz;)frLqkK~hX7`9@Z(=LZ+?BL zZlKfMy?1LW)gPQcdGH{J(0R9nF8@U}zKdS1u_F;g1nP1nlS#W+EWQea0TWYGmw=UZ z%Vx75C6md15y2RPh#(@^=_&l-efYZvLj9ly5D~M=gJz+%Mr(~_Su3^LwjI0p`-Z6Nv94nXlmIBDy`g z%II|gh+r~bV?Mt?VQ3&gv4SoF&GSftg5Q=tO|J0)>iMF`F?hJL36t+^UB;i{}nDf9Bk?8Boc{O zx~}i7sHk|hylw+96YO^R0tb_aMol%=(GK*1L8Kx(@{a9TSFVxhIE-9cigfHaN<0pL zZnr~MCz_@SfM;@Yvbnsxd^njUu68Ta>12L-8b|vfl)5^83=9%IeG+?PBMVorBQJ*k zt%8CAK~>cuuh(0f764G$(!$i^J^=E9K_pE>kVNzY`&TSZ5ClxqBpQvPs;Zcupa0J1 z^OdFqSn)WYJ^i?QZetn?6rMUk=+0e?P?+LNmsj*ll7yydD2jrjC^#Gr*|Mx!SlmHG zRKEI)H_t9PCMFR5{=Dg$>OyYzumDIv@O(GaRR0;i$(d>hzh9TC5DtgCEX%r))}2Ok zb91dOm&=oK2k8`jJA!`yVMe`K0kACMW1n&eu-S-B`Emyk6a~?_F?WE-%U1}pjAa<> z53ph}qOXT3Ja-1;Q6GufZ^XvOiObp*Jh~ zZJ7qg0|AWw=R{r%P}F-1L6!kfn|Bc%8AY_)QR?fm1H@-$F~__l`~fyxys#9Wl+x4y zO%1DhGaHd^_vavyMHEj%HB_vbyL=LGX}E zKtw^ogCI*l6crMbob(VBL?n0+Q5F*Mq=Y1>m}qv*&dkns*XNySPZ@VQvK~++SKMPYdNdTL@hRsZdEQq!vEGuoh>kx!7e02h<({SMNB4+|dQ5}|pRO6~=YolP#!RFAp4w3Xo0&(B+PO$+u zF0I23&q1g3|ICN*!&z8dh9A$uxo;q{5L!nP3ap-i%Rj;Vv+(nmuzIqv573JCfPysV ziqSvG*JTep4--?6RGjBo z3)U{ew<|6;u{aB3f!NZlwU}t&ZsBd$^^0}+y4m7jKY^kvy_@9Fi^wC0gwI}RsRsuv z0tnW5JqkCorv`s+{br8ZKz~?vEy`$5D1Cod5Ls7iVK;s#9@KHvj+t M07*qoM6N<$f_*W|%K!iX literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_perl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_perl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..17389a3d02cf078fa6d65948949ac40b78f711af GIT binary patch literal 1229 zcmV;;1Ty=HP)LrN?IX^r@1(+iGGIXR3DWQ~7n8Vwu& z)!0M!P%|ZE{z=gXWhBC!u^Ocwa?-&d(MF?yYPFu2gi=b6oo@Jk%hlE!2#1FOKvhv*{CeGcn_~cK zW(816Yx?`e&su+OGoLwo2}47}*tuilaZ2fs)oN{&BV*Q*nW#8mRc$!3(SEZpn!`8vE};PVSjR}{D5Lemv) z#k0#k1+ad4P6Yt6ERS0)X~DH?%V07Zrjp_CFuHsCmU}$D_5%mMv_+$%iU6n6h0B+( zRZ&VeC<1t%57}&d(OX+L+}CIyKbA-&ihcW!ED*(jqWPpwHC#j}6h6!t)64(>fZc9? zD%Usw07XUlC@(K&I-LgoKoF}|t$^8V{9>|B@v;*H z;rEOTdwF4DLAuFkhyZ}uY(#$kA^-p(1naBTf)Ij~1tu5_x|WyLy@2pw1l5~f{*~wX zhFJlR!_o!-pv7i(fTc@wVY69~nrg=QxC}x_Q$X2E>Ma&ax8Lu7BnbS|03Igy&-n)chP7G^mgMJ1cDwNW z+dDU&iAG29@!@YsWu*g*v2zn;L^c}rAcPG6S3u^-NDSFoHYXt@4qzbNng)(jOE*s^&8BuPs3czjhOBctFr^*u^y;h%T!@9DVp7v6nm6Y_Gi0U*=o z^JTbP53&abBM`+vX|l(RcQ@JG>kV`tsXu2|sZ}`i;kG?I&wmmO2DdWCvH;v>jAd~g zcL@M-_j&Gky?*0!CC{9<*@V|7eP%smgFzRqtSrOg#n~}gmRkuS48T#PTE>`VVRpbO r2*SW@p3|E+N@<}aNvZR0nx=mMk7>a)S~-sQ00000NkvXXu0mjf-=8{3 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_perl2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_perl2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..88f4e3c32418a9e901c496a9a8eabc571ef097d7 GIT binary patch literal 1190 zcmV;X1X=ruP)(+|Ig!}2q zx&QP3<(&K6d*CiF_1}^$+QXiUGnI(bYO!Pn0>Pk?$W@S*hK9rE|2M$te9>Yy2VND$ zS|A%>@#6WMI@J`L-UYHZ*QEGjB1GNlAMMX^0T;=oc2;g#6lt$3L0UWV$gTa7Oid8F@Ci2M^#pwm^^5wS$Eby%Gh?36$ z<3yp|o=R{ygh(QP0L%#06D!dHvx`?+iKyyC<^YQyna{P}>&%>)Pg zeOvMSdq_>S;P>~Cm*+q!Si82A4R1V)#bQnb(Y-W)humeef!tWlym_;zs(O!>)=ui` zn^{rz7+t>K&@>Hqk(2(L18ADY{;F-{=1v_C5c1vb@)H{ zcxMe;Hdk`+(_<7&&(Sq5*Iev&8^=%7vwP=TI2`HY7^9*Jb%2P{ca25^n>Ia9U*ApM zd3P6&FI|MqX659`Mhd2nE0RSE=h55SN9)<2*uL#GG;QpsR7j={&}8gJ7tWrJV`@5| zA3aVm7-HFzOQ`+!2g2bn+1Z(K?OwjDm;(ook()b}S+l0aoC#6r8Vwvcbc}_b2T4n_ z)7^a~4shaR15Yh4=5+1%^!E1s)1JsDfW!hA9<=Tf_yu6cjsqBt2G+m6n)dcCj-RM! z^{OXmYHA&4e))0_9UVSg3m)LZkE)~LOGHL?>n)6aG&k=X)I_ZYLOp-}#d9xg#%{N< z`R#S=*?WXZHY=C9uP`t$r~_KhUZAAJ&AOMja^qI}LPR2EUhmPNs3vaUxLg&bqNEx~ z2Doop4jzw_!$-a*6dFN9C|=^i<8kukSEuoMTcW8UfoHt+HDAQ~C7ft3SA{#G3xurN2KgmLU8Z(Wq#ut7(|%b=#4dY#yjYsmfT;gyj>Fy`f<0p62F# zgNX!pF!aIgE}sz=aiUZPA_}GagteB&#_Dr-l7Cm%-@QnKqy3U;>i_@%07*qoM6N<$ Eg3CHQL;wH) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_perl6-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_perl6-24.png new file mode 100644 index 0000000000000000000000000000000000000000..04931b8c6bfb15e7152320299949a755a22a29d6 GIT binary patch literal 2031 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_photoshop2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_photoshop2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..33477601f7eb4b99eab4f0b848a684342e3eb8b8 GIT binary patch literal 828 zcmV-C1H=4@P)QGzm*>p@~GAW<{oDe`bY57a=4>kwF&)LZEcB zx>33i!-%jO11bA)mF{9PW7c4-6j5vDT62nj+uXOe3z_J)FQ*oC?%wBp&NAxDB0+J3&gx4)(Oy>FccfQk=ui8PNYT7EIy`6kc$$#`isVb6jKqg~yQ z9V~PUB&|nv4=!~28Sp5wivZ2u;^g2EM3IqD-nasX&5p@|Aw;F8!P2J(lPrfsE?W|C zO-*C8s~aLQL(2*ZIy{ai`5zxvYE~Hd!qnOZ0C3pt_@?ebWQqczu~H1SzX0)gkbAop zq0(qSUP$z2zN{!$P4OP(^fguK0f5J~`kdt_L=1x%WhSf!BM9q8c&rpLSvxWP-R#%D zFgpX+^epIz2!V8WrY5tZQO>ym04Q%>1(PI$+u;OpyWyCa#Qd)b%#4jAx%9AK|I2fi zmmk9jK?Z=~fCh;N@(~di0|1~!BBY!wLsVJ{;_`AJ&Dw#`Em2%^`C&0+9^XX3)_IHZ zdvjpX^=H_OU&_2S@3WXST9`H3B>{Hc`9}lJe-OeitRfWE67;A(AOy!;?Azy@AqO6Z z0>$H;DIhpQ_C;y?V+a`uSeFY{y#cxg6`b~|Re5XLKv%EA>x(rIGGe4vo>~;3X$Zo@ z{*D1V@4)QX4_NgEh!f+nNg+qcvlf(fJVo}cYXLbyKM?>(6mld0NXXB_sJaKT;{C9h zzM{A89wbS!fSfgLpeQ+n)UzjG?$N^3+6J4!h}di;_S~t3!)D*Of&P9I)YaGVxv?3n z(+RUii+44(5He!yQ{COTfiJe5DF>6Z6_&n!@CCwvJwazM{7Q|PvGEnPsgV(+o<0sf zO+#0&3dsA|1&!?yEBtDyT)8LF`Jv0*dVkuArNQ^w$`E*5`*|s!M=!n5DGeK~Qa|i&?7oxcO!zFMWhwGDIu53!71Aa zg+g$ZB(hVN5C{ZN=Gy*gt^>EygO;vW(q12TjHZ2_x*&tgUw?*hI1F7~#LIoVu%TrK zHrDa*)Vv7Rqob`U2w7T$Sjd4PZTQ!%NAI4a$V%?g56t{-i4Vu$%}bK(0f2{hugT3@ zyAw3S57ziJ;@6)>F?jS7=)TR+hz$@+1js-q466)Dr$AP3LG?zdKfRy(6kSvhgwlrwhict2&IrRrG>;; zHZgW478AY)@a#c*njJ@u(0-BYD%(ycNswWZM2%ycFjP5jsD-~wyA<`6rTY^T6RRh0 djWwPdj{(mic!4RptHuBT002ovPDHLkV1gIexGVqw literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_php2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_php2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2545367acddbcf7ef9da4adbb4f03e6872378269 GIT binary patch literal 1042 zcmV+t1nv8YP)-Tw=SK1 zdC<6xFVKYWV!O3KBuP_8pI;Z#m6N?^J~Ip>uvsc~YnpZ)Km!;W8j34EJuVu8m>$D% z1?Ki$n&MHatCOgzO2ijob#aM!Oh*eP3F#?BeFe+3i8Vh)wW21vySqQm<#Lt(?mz=@ zUH9=|=#Z)yKGL0M*;x4vvr#2{q?NV8O?;{fS`i0aa4Y&`W0>q-RE>8*LxelJ^uv6b6k;+o9tYKLep@>eVD~CUvz^GS9w`Hi7*YNxO zMD)Yxi43u@Yf33s_r4+xAeCzEupKb!B`SA*l$DJl?VWkW=SfZtpQCJOY&$N&RF;b2 z(VQ735cr93`U&cW$;$F9BhU6;9~c;@?ggj-S}2yZEP=K4vpo04OYa2z#z%k7eM{9! zvsU&nEeqGNu`Ge(2ufQ!n86(7N*zmBAWCGj*)R9|2P%N-(*i@iWt=m%ImjTTbRNYCa!HG6+f=)I{N`M0LQj#3O3S{27sa{ zMb|N<=UR&6+DIvBj@Cs>yl_=QY`(a3A{@)KxsHtlq?9O%vTrJA02?cFw>-~A2oVKP zRkda|YM!ni@>ymb)fXThiHh?VE{p)Y@ce6^v^GcI3x*?@W*v##&->pIt(VK6um1kc z%<*jJGQi~IWTPomeO2*kUQkonsh0?ced6AwD_?*0{$aiRsj+!;$Jt);`cJkMq?A+p z0S*kiv9YlyYt`z9$1|CFuD}1%;Nakuy*;zDv(et(UgIF2hkC&E7s@2TXzs__p8x;= M07*qoM6N<$f+dyj=>Px# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_php3-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_php3-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c28da9c1e87f68b8f1f3d02db2c35d0ef793b51f GIT binary patch literal 602 zcmV-g0;T@cY4ZP2s!o3_ zRiDl8wJ-P^(b(;&4&boG>%AIid&t;STa-*J>@Zyc&xHg70X{021nR&y#FFfnYe8_W zCG;?&7XT9?J_+9~=CjpZ37kxv0`?0(5$=;c4muwrdLWSouqaCmV!boEl8k%-aR!iZ zAAzpR`fgMy-I~t+wj!qiBI{u>pPeWcvLnD-&a8DH1D)0sIYD=qScOcblQX605ONfiW0-_w$ z*M}u}J3-5G)P0{Z~ipANt1tspQ59_@v5VH+W-In07*qoM6N<$g3|5;3;+NC literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_phpcsfixer-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_phpcsfixer-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1f48e669f7b745b24afa9265e1439820c22aa593 GIT binary patch literal 740 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pipeline-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pipeline-24.png new file mode 100644 index 0000000000000000000000000000000000000000..65b6425bc131c0d75b1679945cc23f7b4f259517 GIT binary patch literal 567 zcmV-70?7S|P)ydwx_U%Tv!a^F-M4S-jpwoUEB=@GGWPOi0!5Nm?=3GqJBB53*UeHLkl{ZcA9l z;K0NO4Xu;YdRC072Xahp6T6LW(gw)9Gr`?7c2_GE7}rYiQXA-0Dkw9cKi*ft!m$Sm zBzudrl6hxmXBL3%W;aR-79NnF#%?E#ol@^!>D*8JCrruzPx5LnLQ6nh@YTc( zjF%0c+%v+(OJi5Lh|O;Dn>W~lRQ;Zz`v$us35#YNMiu0R7QYyL9x1+#m@8g~UWAs7 zk{8|1Vz-x$AHqSyAA5k*w>&5)5PFgQh4)OrIR*Ac(rVFLFnY~yvR;*(#!g6cr<<*Z z04VIfR3PH`QC^!F3R@aIf3NW^*__biyqV@NAZm&bKLNtb^#&c7@N578002ovPDHLk FV1gSe_Xhv~ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_plantuml-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_plantuml-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0dbeaa6db20eeaf6d39c50a4852a5be3b72138a6 GIT binary patch literal 967 zcmV;&133JNP)2fPR{F%QES}Y*~MW0 ztB3#l@ciEA1NdJr(DyYpt%aC2yZ8x3DXrsq&%Xi~Xldd6G~53d!`wJgQBh_(pgEQL zI1S@BtD3L+Xm0Ml>43apRLBhHog(^`f@dm#fSyk1>hA#yzp>ykW&$n~+a@s}ve zgYV|=&zV^p!C-J-PfyRZ&*!_qvh4bTZ(0YlfxQD&bdr&5mNj0l*X!|kZcR)~+%s(l zs%vHax$=%G{~K*rhK7b-b-7%2z|18ZI*^ImS1K!LntodLMF6(jsT_DuTCufYgqj?V zQ=c^)`*Odsqu>daWp7Is&rtwY0Km*mVCpKM=NA`yCZ@Zc%Jw>|a8R*|ujs@ewQR}z zLMZdg_BW;7^={iLO($e^ozT7KxTI;cGI9gRC4hXe7*H!O@7TtO zUwC*&6ZQCkqiD)kB6nqO<+}cGt5B)|j-{xLEv1`JAI{?F$t))BEP;g*npuuNm%DrO zx~9!H!C2e@4FHkWov(epsfYfFF(#j%S4q-}KhM}P(3ilSm$B>L62htr*Jbv737AUb{t+2p(6?G3Ze^5)NpKD};sD$-_ilt~|K zxx07Yu0~mw>0d9Let3R-{DF1V?&LcMTYZuw;m04wGL389*AIQt+u(M)-8|1fKZM5; zYn@oW<{P{m%%VO(u&mh_85y}v2qAraePnEGj4UiHWKyY=K0G{31_uX8I-MrbXf#a- zA^rXRWOQ_t6x7?>+qU?M;*q}*k9-K;eg+hM3`TyfD2fySghC-yR#rk3MIHeBem`Qd z7)Gc&Ux91h=;Wf_{LAsh}rNfQJClao(x p!e+BURn;ds*=$z(hgto{^ayreJBI@d;wu0E002ovPDHLkV1liW!@&Rm literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_platformio-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_platformio-24.png new file mode 100644 index 0000000000000000000000000000000000000000..183765eb6233cae61ac2312db022ff546bbdd9ab GIT binary patch literal 1006 zcmV>)r2lqii!s9Z_bD*`_IhEe4aIR0_)IpNQC?hM_@VDGjo< zqEfda7?A^oLdGZg??b z7)AMLb?cw|yco|B0SNk&B6aayRp(q}l^W}ziwP66j7E)5{ziEYqhBpt!$a|%l@F`s zdlP7wUQ zkikg0rxQ)tIDv&R9RC9qQ(KuuW$O8!r(Yp(*L@U~S9ASz2V-Zt5VX_NKwa~h_@sU! z(&3ZbLV~poGjpCE9YAVy7yw@|kI=eJ#ClIKe7G6F^{MXn98qy|_&iD*K>F81*avrD zMu$Nar*HO~mpB{28H?iDV~iaAoWb^YQP)A?i^p0c1M_A=hW=@+%*~tdg@H#V2|;oS zQ9Cy89{7TJn28kXI@77WMe)4#%iB*SJv#s>ZH(Bi<30lnPR>nHJC=#zCKEHo1%{04 zY{@L1)c_#$abyUQT3{esJVX7)@;&wVmpvD=1wH=is1>6pBE_pqmwl2R_{AK z=mmIwuBW9SvG>;23w)r;-BV|91=v~95uO_lzNGBB5nHc1bCRR>y>DG&9XiX6C(nT+Bz4v^CL9H~p{f z`MBqQ?*Cj4+``RDl+>vs@PZZ`0pWgA| zw&5)wZ)sjDfvlF$*VnhDMH#&Hj)pBq2_zX&co)xRTz?45J; zH?&n?0?n|f+GmNK%kaz*$*V- zx=gedxL$DpFYF1h6J#fV0)kZ9HoOhh8I=9-aRpJuvr2;sqJULpv?ULK8w$O3Z&;4rQ9uXr~Ha)yle856%ZAg7>V|`)t)0r~+D%b_J^Ph;%KyPFMbv z%(*9YCcK@F#ZHSItoL0P4b0>~Z_cVVRs&iPXYkOjOAqGVE1SiLMzU=e{FYoxSxarv zwy5zMy=%l5NTr?_xu<5EB?0STUa8rR$e?HROz&*0wK4;hU|sIF#xL%AwfXDr&%AFs zPRUPA-%7!xfO5T2m3LPVE=M}qd#r5rK+RtC;IZ9lR4ZTAi?~xJ?7q>p(0OcTn0xKr z`4{chEBi!<3Hn27?92nag}os`g{1#|-v%#ebyvOCGvkkjv-Np3#2bj*7719s%jT`2 zXZ+yE)W5!9DJGNq?=M(?;h9qSqwJm^x0cI(93Zy72{*D#|G!c8ogElCxw6Kpy9l7? zq5bWps5`Xy@YKelm){gmG&>>!u&4$1d%YNXY5eesv)8-3CIWzDGU=S34+cc_5m{eu tCR)BsCUQFZhxf_w@aKiqE8N1(!aqDjKp0dVW(9`-p?-rlx(yl?QP6*BR6|E4fnm)= zf`~AUGz29gjn&{T>8huDju%|8V1K;pU2E@mf3U|^Q~`ovT*3hQb9fm`_)ze9*I9$( z!Lwj4hzg$zo(9M2lAj3{Y7lStg}JepofY&2?>bn)bkJ9;l%OlP z7rY2o+K{d!=5Ekc#^yJuBVrDX?v7PTgc@A(neWGRJcQz0HzrG3!E(YH^5P31UP?;c;^akU>%V4z) z>1txegWfW(GLf%iaq|g?<~E+k(RBEs`CNP~*ht)I3>Lhts=g7d2XBJM!R-|ENDHPX z7!Ga)kAl}3Q%mH{@sacgEyU~DEIsqJEVvphcOddoaHVdNf!wO8V51G`Mq(QA?-FjY zGLf%gzF;Byhj9)=IFzuTnAa3}EpdYwDwwXSz7hNiCWD8;jo@U^-Gb@Pv73pR%$OY_ zmnFF0W=q!6|2IETC&6&=wF8mo^Db0diu@#)twB7S*#0uEI-mY2%}1~7(|=#^rB>B@ aWq$!Hwwy?vB1>if0000 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pm2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pm2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..00f26480982c05f10cdfde4f38a9b399a4a87b91 GIT binary patch literal 1189 zcmV;W1X}xvP)jzXHfz4){BY;fAqId0=SwA?*6p!26*L%NQVPDSpw(3G zr1h7{eE58gJkLd(CCDtBDXamo`i2hnl(lEYNsAL2WrapMA*4dBM(B%FWQ!5?wG~?A zfZ2s1Jm+E+ruSB=W;T48is~d=n#Vo5@}pPd*6TX(&Q}&Gv$o^`15`Pn+(Kx z!zR$tlE($hy!hNwX|mjm7-qYqH@jfGH>)7d+Ayuu)U^ZL50!99f41K7I>Jzf6cK^C)XTQLnvi9ud zB2O^@EHqLtIU^i90L}vr3QkaFz)M`f2uIPx4+{AUkM8cOCrfifZ+J43#@~~p>8h7k zk)fI1#}yxMq%I8rmkRu>1MRRva3bhifqo}~{#q)i+gr?E007e51S_v;t;>+gwxVfP(aQ&lV=&AYN5%{Dc zYD*N(BvA7cQk}8Z-7)c;K_n+4&07*hM-%YN+WC42mIK@-LZ5NK5eQZT*tzeGV|66Sq5p$)mf%M<2I-G&xXo_+*mDQj6GL~lay zd(iI18zvb5I>+srtc1z{A^_!1q|Ql5O3pq~Q2My>exXCCb|MSkuA6q?T-oSDY|%wV zHK?MhIj|=8{=W)bi_>EolR=ScF(OA&3CC>+>#T&MPD0ItCOn=s*17(R4x z<>2aT`8OTccb=&=8Nz}r(V{G)9fIpnBig)G_ z5IOG;7bw)1By2AV%AF4t+p4F$wPWMNu7URYA6MZ|Jj@_{E1UU-00000NkvXXu0mjf D3=bd2 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pnpm-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pnpm-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2e3bbfa673e369d0a80a091853596a590cc53ce4 GIT binary patch literal 329 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d25be4943882ed78dd9edff2279f31b86acb41a6 GIT binary patch literal 775 zcmV+i1Ni)jP)jrN-h218aNf)~^Iql3jc0Z4x#ynG_gwC|z>aOV zQEs52>rG)nan%Hq)gXZYqKz~H$WBkkQW1L%0uceQAPl|p`Az==o(s?l%5JHFJ!ST~ z&i1-H0O6tCct5#>Q%8d6YK(%@zwe45W_o%^ zA9b1 zII$O3PA`BgcL1~46Gs47)Ec)#tGa@F12PO#pry79H6=4{`mLl-8cf%;o#q>3K1uNv zy8#Xq33N6ATw+*^#_(m{1SF^OSnhA5cpiXM-Xuv{-rxbi*@`&Yn>A>P7bD{lgkPD^ zl}bk;4D=y;odz&1a4C1L{T`sLeigMp7DD{#Rf^;RE_6>E=W@bFB%P~Cbeme{pas&`r z--I650hao}35*Dqsi#`c{)&;~r_=+BMgX_n@jJF%_6KTH$E3QhfqDP{002ovPDHLk FV1lcdS;7DS literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a0bc67c93f2095666dc2dd8d499a0fd2c49478d4 GIT binary patch literal 940 zcmV;d15^BoP)wGnl>{NrMqr=R`;I6{XOU0 z^Ml)Qt3&iBo<8wq;jz*KQ_>T=GD1izgb-MZy?IfkOmMl`Jof%e6Q|w&;_m!??>3b^ zfU>xrOReNl&bchEM8u)O7;{q)-_IWc1_4Sj5$LXn?^>RJq{jBD$I0KD%q({3v}2M; z{jazX;G1L`pcgPXDHF|TkZ1t3Bl%__V0$&o;T;tcDVbdmgh@agrT+=2WMz8x&&J6C zz|p&&Ik*~`p;&b%h*ZLN7h4ny84isWdEvn_p@Nx2(+(9X)tdsc*twr3AHO;P$YuO} z{{+3A*_Dv5=bCs~muE+OUfEgVy&$F8iU~SNpR~nVO93;xp6LO!6UKw2cZoqGBt`J) zdB`x#Q}<+ebw`f37V9iU9aNHFEnp4Z0}Pk5Gn)cBi5UyhUO!r6X#aJE*6Io$EG-jH z)YyA>j-wA{dE-J%9QICJ&PlVjTK{4IaNwOYV{54x2@;Lf3Y$h4or1ac&%$T_=$-7Y zc^G3@UQ1|4DM{SxsGK7gK7aeU!3oMk)r0ew+R~&UR^NE!=R8KX6?uK{R`zW5NsZ;h zU+SDV_xFG}fFt;A?F|EJ>({!jvfNx+&{Qq#K_d0E|zb z9#+bZUKg+W96xeDTM8LgQ_Dw-F(%f$I9dP-2q7@qaN%;usp%^iYe*tR(G!i&zF#{t z02r&}4$ofdWY?3mA)m76@a)Le^BVtBZk!Kpe(M<4(V2x~}FjZVAP_8fVhsUvy- z&LpPxf94Y`vJG(*2ljOnuYK)37xS3 O0000=bq0w z-*fMQJ9fJ*=sr01#?IP!qjoxuTwT1PC@P=|iXx(jX0amLK2rq{R6#sMvE4f{{qb9_ z8!*&gInby_!y<|oMcrMb$tr0x!3&xDEU71pL4{Vl7sY#}7`X<3=>}9HyGt|+6cbUI zdK1Q9C6Pi_{SEgWPDgT4s79stdICz3xv!lhS!Zc}j(TH)!sLFM>ber&bP?L{&<1H^ z?*3nMfcIy1jr7GP_P%vd@P8cT()l0QdiNtllP{Bs?dU{&zN0X-7lMNaB?lO;m8Y#S z9l`j7^0dAJIufToMUui zC-L|Tc+U-K@?I&1AM^yop?&aH8q@rb#o5;opR(f08ZR_fe|Wxq9gwb0-c_F_#H!=cn2%Pv{IoHIC%~ zssv|0G^4Fn-IgaAdweee0Y9I5mutVhL$x4m-SG;8W7`2xKvnqu#1U2&vR7G&!?n^= zA1&knU%mb817m}@RyE1`I@gvj^3xYb>DxF>T*#_knxA7Mkv2el%Jr*%w>M^7bZ6-@ z2hd**rbRamZ24RM`t%f46X3ZiNiu(umGhrEAiqinKijb{l(av2T73|XBfIZX=xMR29{s)uWY}0rQ>zV)n002ovPDHLkV1n$l Bmn8rI literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell_psd-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_powershell_psd-24.png new file mode 100644 index 0000000000000000000000000000000000000000..043c00939c9e19d995df0ee8e16dfdc20f92381a GIT binary patch literal 818 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 KMNUMnLSTX_bBrhe literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_preact-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_preact-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ea6006e9ad4da0e7d14162647f085025b5694980 GIT binary patch literal 958 zcmV;v13~)_2*epScEQlyOldc|rI*p~J3fq+F-z#sCH$UF z&h2+D|8xHEBw;UeEwPummP}=gNTkyTFa2Ukmg*-URs%u^aachs)$o)B)n%^bXxcsyxsO<+2g&xji?)V@1nWu~^HrU? z7m4i=6F-RL96C1DU9eq?E4X(Y`w>*-7iH;emAME7hP)BnX9xJB$&1wF*dRqvP->>| zwP(mM>(Mlc>+74exqT`Ur#}$*=-8j{jshf&3({wpG7-@=0Lxd;W&b8Ok&sGOb{a1( zn~kmVS(+RBK|=8x*<8Quko0_a3@!O8=$)81pw-|U8SdUIMzQLjK+31nYaRPUx=JMBc2-p07{oyD1OtzA;%Ro zDOur|&*jE`nojltkdtTRc3&v2K#5m*>Z>j)HqIkCMPcd6T=Ev1IOu30-JD8>IhD`1 zv@myJCgrQFB&R4;Y@El*BVCCLyuCqw|IWi!X9=kW9St?DSPL@Qe6WZuhl;TlWN>s> zE6J$}Tb(7G|K5YQCz!YZKnOsB5MzNR<^3}rFA6bM7RtllYh1z1IR;*NCx_kkON2(E ztlU;Wck2*));CkTu9@!EAu2y!KqRQLyXq2UZ_nZB97E!Qx8ApM>_9trM>WnI?dC>{ zj}L1L3HU|{_#H<5v4H>uVPy zfV%Bh>FKy1rk;*r%$Bso1&U6fHzW}bMloB`C@r5&eo+>`e)AU+!3xKG+FSfIo$AHg z6GZ=1(nIedCb%==A2b<_Um&RZvA#oBU9$*9Cm8aEai1OF=P$crkLmmm9u}0CS+>eb z<}5wYQH`IR9RMm4=baJ%;P|}%(%MU1&k03-_P>92lbN>fdLq-Ba3*4Z`AoJ@<&MWm gnN#9%lK!;w4@KctF!#vaasU7T07*qoM6N<$f@XQSw*UYD literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_precommit-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_precommit-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4995246ae0cf351a4ff05c232eb5c0691d78668c GIT binary patch literal 908 zcmV;719SX|P)eTXUY)Q6&=E3}z`T7Bs9 zA<5{5Q4v$J%$=+jQTZhTHLyDxL^aV`f+O2GUiS21ZfPCoDf0Pv&h!5M@B2LO`+tBD z4yHDd>gPsFZJiqcfH#e~%F-Kp{+j?*PSweJxe5%n{!b6MA5t#M`|KZXtwt^Uag*Pc zIUUBdwQ_Ez=I>35|Ots*3ETEE0uckhkzRR--rwn7z+OOQ#UrBYzF{DMKQz~G*~oK zk3Fm7(b5`OL^B8;pem)EcS(fC78#SQIxL+XgWf)Zqx>7LJ@jFsB^tFQ7C6eisC@E0 zQ#SC`1AC$Yf{#ch)YQF@viD!`qP9f2EIIQGD9lelg(De^0ngvd0Dy^>Xo$sTILf`K zYw~BxG5k%cpBoJTS^$vRIyW*P^Qf}}XLltb&8l4UXKy6`_==vtPR$O1;9uVIxsHY^MThfB#hEv-`aTOFBv^_G6g7n0zP^4 zHMy-b&%Q1pYs;y2h{a~bQ(V}cgw+dT6?yMIcVm0$7hKvi769(?rnu`se-BuCLl5_Z z%gvak7f)|DBDt3qZNzC|qWRX6A7)+|dm zh^0G>$SM3KV&EC(2pr;LqZHxUhdemG)rj2r1~(Veo68n|kiy*G7lh31Zhe<+=b5jl zDKcY9gohRht|*{ZL=8M*P~}ve@#nO$m{L9=@_o>vW45^>s1 zlwu6pwX0}=U8{f(JJCY^RQJ+vJLc>F032MG5WFoa%A#&$_KSo^CWGpl|J~4U_pJv7 ih&RPuS3C4aJbnVM|FIqFvQ8TS0000Xm?k4>M z{NB!-bLP9>ckY}49$^tsY4GOYsSzSHE!JcJ51!lV{qkFa1@)ylVV)i8{o;5;) zZD5W8KnRRCzICk;w%xoiotjGYx1^S+_~QVeguk58USFC3!pN=yNLuKMNwVwAIJt>edkJS016)yhyg%EW_n);x_v)9 z5PyyS34i`|LIr5CM9N$#S3opm2(kHxBr$g!+qvrp{z-upo>`Q8>fAYRV*UCbG}B+c zgLF(qE-Rt1thY4qhTBH~G=ZplhyMYI;Qjf-l!zJZ3DUbr8$`fQRvq&2 z!Qqu`xTcuYq&I!CY4X+GAJ%DyBLEPaem;Gy>u6n6t7WCV&dk55U8fT~!>&Epdni-U zB3s#qL1=u)PQlrIXSW`n{QhO~3%4uZ@O#n;KI{n3efE!zwUqY{YD=LV9umPGtj1{4nVe0j0Ny8l8nOKDu2 z%}S-Z;!BLFnlH2Hy~Nfn0$Gj#5RhSux{mbqbsfd2okenB|D~sQZXhmLL_((zT_3o| z9C=9@0>rogE>OOl&JDcVIvTohB?6vRmsaS)^q1$A(!pv9k| z2qJYB3N8{lC^(1|Y$LfpUKGVaaVZ5sgejF?!BO-SIt0_G+#@qsigCI!$HNf+{Gr(Xo{Zc3t-ZdJH z31CAQhR6R3;JR+Fh+J)vUW!OGFfdSWZZ)E+9X(dt;0CazC7)etG-e#w=KKE89|2s~ z-7O*~S~XQ&0_1YJ&%lI;TwF6C2!f=D+@yYjEpcf!TQ4&EONx`XErq*74FmVtp~rP;1IC-lakQJL2cX)}O909{W0$I6bG zzQWj8#qHCUq#aze)_`AAkFMUU@4NS(x$Jx1I{@ADp`KDXw->-ew?)h%7p@hgLb+o8 z`ZUFB5xcfVdn76l19ulM2x?#DxGZ2rHUfn#ih;yNv&9;jO-5^)T2y$SY|+|%Cwrh^ z(5X?a%E#Fhge*ems$Hixna?$#_Eakv27;WEzg>QQ<7XxUC^VqE0e;j1XGqaEuVzDy zT4Yhs40-eX)5VuJr&}NhDX0SY1E>O65z-5jcWdVLoqSS{)UOD@c=^@cBT4ny3DQ~g zKLqX^H2t<(CkVZw*80bf<+k-7Cv+A-@BFG`4!{Qi6TaE-@3#-Wry+<BIHcBdk9S0D)2K)uMSbTI6+)b3!7;wUu z75F9%VEhJJ&iK zn8k_v@txYa51RsXQXJ=-K-jH61)w$MmrCXKbG zbGdfFAacXN>)-WQa4c=Jw+AK~GJA^SVMD9+TJ6H>I?LBmIQ`aSIRGbiZVE84W7p`^ z)Tu_NV|6R<74<4S70^rlAHZaB_C~opy}NG!p(Czg3t>37r!Rm+M>G1dWyl6Su;IY9 z4)qJr46yv&2Za|s2MC%NXKz=>pKT=^QoiJj?DDPZ_)^EpoSw^qCV=6*KL!6pKLKDs VoSapdoPGcR002ovPDHLkV1fpu2Q>fy literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_progress-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_progress-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0bdd17e9ca8b096da98746a3ed2d89a57c1bd559 GIT binary patch literal 711 zcmV;&0yzDNP)B~I<5v4LZpWyW$EI0`F~l6$XInya;8&3eoHdh|JLF z2DpW0w>u?5U)10^K=&LK>d+5d0!qF8nT*xZ^ar44n#yzumw-N?B)3T5DM8LeYnTQw z6YL>!e77@nQ9T1*pTStPj`+NAVO6qR`MY(}fHsuS-1=3vHSVRM>4ADP8k?thz z3(6qSuohEKK-VlMRk+9U&vK!1P=+%P*%`zP9*EEkJo91lxv0eBA0WI$X^DjxSOx%y z8cbPrvDc0KlZ#xu^?b2;biv(G*} zL@|{x5Fz!K{e{}2yRZD;fLtzD z<4Ab~9URqKxB6P6l)`l-uIu8uF1GF5ELZGTigmH)5AWUU+%+JR$?TB6IB{v})~80M z7n#T|lP%grO}J-Gh+SKgY)rLO4YF^@j3L^WBup5|EsU>b1xQ@&CTmj#6X^5HF^I1wtp+X@ifUi7$p#P2k2*~9YA1J9W*KR)lfHvMekMLcYuTnj&WJNif0~+QYy2 z9KnUx5j6>7N1i3r-UC2C;|JotuvkN#iThO2A0AP6d5LwYCEdWFqBOPXDg4wF>b>Jcc0b8? zzjGAdS6n`Sj@GtLjF8F1`$P16u8$X9e35Xu!u2mbfn3O8YRyu`#@7J>SStXjJzN{`OJrxl_`08IOIEn2Zr#(u8mM1bK~K@G%P> z{e=(NJCjBieVnRK$yZ3NC@G)VecSoXJD1qGeG|ZqFAfa+3m}9DY{!1CDe93aIm{)t z5Gw|ha~|PEADzGL?&&O{f}&bcedd(J_7y`$f|-RPpMR)>AP}$I*{_vNUd-oz zxhAYqiI8HnzKz_xr16$OFZj2e_i>AgMO%`UE;-L7?@4^6$S9AKb2i@`*hO6|dNUR= zj;(s^1_%GL!x!Scf1LT7mAHD9w>S6D8=7VPx?0w~_FI|@dCFQdvgctUJw3eh=L`HH zCwU}&g_iGqpFLe|wt?7p;J~AQT@?Uu`mH}6G!U=7J6VZdymFmy9oT`bEru?<%dgH) z(mbcTt+(ojbMnnMcM=${re`x-vTlgs zi7b`HS;iMCG{sGtlZ`Yt*3+J}c%ZWbU?MPrFMsq*|5pIO*|TROj#S?U@g#8Xsv*H- zpvAM6865BL@2{>NxeJ{*b*fWnv0VsS1xU0g7=}NzfB*jRyLtby>Ysr3%K{wt&bR;o N002ovPDHLkV1jG~)5rh- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_prometheus-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_prometheus-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4f5617d15bc730eda1a1f648d2538255756e877d GIT binary patch literal 620 zcmV-y0+aoTP)PALYm2_Ropfpf`Wu5A#O@h|AW|#3#EvHf1>M3 z3a+|#;YLxhnkc0p8YhWswXK@mV#}lkX=^?f-88kWov|qg-x(9~ugUbHMJ1{G1GK&_}hrI|k-CPz8p6XXyee zmjLhE>e`8sh2`&?+JQ*xO4}U%%b{|nZN>LRA{YE>_#ctsY!6R#!)PI?O#@WK_H6(V zOw`XGbjk060Eo3T5TKEBqm80_3_#J@fbw6$A@fLYV|hh4@j2@p>?gs7vz&`o< zLH(5z!y@pK*QK9g>GC~F-MBqeFN~&Ctav}=MU59LRm$CbJ!iX7xgpB6egFoU1+EVS z5M&8>(hr~=+rt;2T0VJ1G<>d`Po??Po`3tnFTaoHZ|H!End=UaF~AoPIIiva#TTG6 zfcazDDBOvcDldcb1CMA!^EqbL^1$!&w&)k;%9ULd{3nwD0000 z&hz~L=Q-!%f&UXOP3v%JT1PE4>ROTqo{e^w!%OCNlH$@p3xS>VQMjnq^6TI}ix? zz8d(#@0&L~d^QM)<=0RY@HD~pHt6YQHjzj@``q*KtFhP(*;EcDlM_>w3?!$fzhk#I z?EB=%5ouSbbt?m>;L>j^8J;GHUIUwz{Ch7Vn!VJq0f5NR@a5jVSLDn>=4g6uy1$%( z91OQy8IMLo^4G&M!{?z;SUS1S4zdIzzan~{X7-r|W|Z#$@UssuI{`3F(+st3nV1}p zwE{%|`ObD!)smMpS(!6GE{Q7&_}nlW1)G(dkyjZzaD_?bGzD^~tY?&u?xn#6^YGLjqTwO3 z{Eo^x3cxka@=&3V^YQ(BoLEYoUVwwGr4n*!s4{<$qKJeeb%ysx_A`_KcRk1jI39<^ zLaiN$)msytUAz{v0pPMiWD3mXJRtxii8cR0C0_wn1x`=@b8ht~5;cYI!JtOU8Q*1K znt4^!Sp<%aRZ2=xBsdTPug%Qoaye@y1F@LRMp`;LfBCs*XOy09XuKb`H1hyYV51QU z6$^HP>sN|89q?^8JaT>L^7e1q*I`sc@ Z{suC{T2rUx-eUj&002ovPDHLkV1kr8!EOKm literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_protractor-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_protractor-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2c141c4c699df726e25e52aa5e73272d79cf9fe6 GIT binary patch literal 982 zcmV;{11bE8P)w| z5nM>ckBEvCK?;h?wy97_A*2{+n^v@&v}R&VOd2zjL_3|2_wI2qnHSS$Od9BacMs?M zf9IUbeGhK4WTgZJliu)1yS0)qLZgBw$dno`#3l!RT{B=}W1`9}MBWh5gTUr8@GAnJ z%~!dfwkA(!R}Dxt?A)o?qX?T;>Tp4$i0q3^4g9nsV5VWm3y6LLgqI{%M$o#NVnKQy z&E{?_&7$m&O`rL`EFj&``KT361?I+J_C8MN<-M3hJK3S1aa0Izy&rq_7yP5g@sFJb zYZoCRPyBb105G{BULDpuE&Nv9x=ZHNt;2ctNo0N9qWRzdP)LqZNRFY`GK=x`wOoJxG5osfQm7?0 zKX>S+31%8QuK;%ggui?TXZLpO@F*IsA@$yeT>GI9{NgGkNtRQ1)15SZ`vp!c z3c%Hux~Lu;#!&;tX^&0zUorqzovo!J=eef>gY*YIWz7K!W8nyoW&Q5 zsP{l{2L^2_C7DD!0GiK}IoVg%yrj&DQ>f^4e@57`Y z#A$2BeW+ta0DzsFr!YK1cJMp^K1#+E;sF4$vGRBPf8<)}6^b1OFF6~^eF8cH;HpEk5Lpw%QR8VuUMZae zz{ZJl8Bucp$OjNFg4_~Dh^W)m_S?C+n*ady(*yme><=KfxUPtG-fx*W`_)q9GD25AMzi%&Y7Eqm=ojaR8o*Nx_70Z{y9R(NhV&<)bM9K^vCTr0ie+5@f03$x4l ztZMq1rd?aq`iZRZx95%5Y>?5AZ%^Jeb^h3D>Tj$51w8IX&akh$OaK4?07*qoM6N<$ Ef=xclWdHyG literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_publisher-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_publisher-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7f9f6ea6a0e3ee1d4eae09661ffb70403b856c43 GIT binary patch literal 811 zcmV+`1JwM9P)GE#b&CX{Anl=vDS^WEE`{2Fz}W(NGPzW+Us|2^N~oD0hg z5tVmURh&IdW=SgQZbeuT9YY(2(l~^qn0N#8ZWZ&&Z1vJPg@-2df}_24l1`4lbf-M=GQOh z*?pNV&h9KVd6GTB{MHL*CZvGYP~`Sd;L7H~+iotlwal}R`2DngcxUpQ)HI6Rp6DvL z*Zqp!jh90P+2gFNNlQ1m(~%U?5B~N*p~5YLn4wSxgsI?hUk~xt@FOxc8=(K^50lRg z8~m9CrJ0e4ep5gqg$~+ibuIUoyj@B{0^8SZFnMs3$7Uy2`_EkYG{<9_>gbt zAe6p|sipeNW6{A6mOH%Ww7gAcGrl6Vf$ pJ^Hn!@%HiLEGgA=q>uix<2R|J8cI^NF literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pug-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pug-24.png new file mode 100644 index 0000000000000000000000000000000000000000..79ceed766aec7b3a90e7e67c8c67dcd7ee6f1a9f GIT binary patch literal 978 zcmV;@11#ml1)$H2bOjM$Eb)ZsXj#!2xH}lOzgP_q~^dd%7qgbyZ zB5IXXdr>eVXf3EQR(p{P+$anNleGk=ttMtJ(#_$YUGM$f-`{h3;oNjNd_VSmbvQid z^E}`4oaew@-SLvu0#f~lO0-f9h>0Uo1YoquA~GL}`Lm?qxj#h2-0pnj){V}_WQAo} z??f%t^;GNTbZDuP8?`KAWT7t02uI#~$=TIZZ;6uQcGi9E=(*ubOL^8Zcti3@5q=KB zaMR|d`bcNT6L|<2Z4eQ{P@}a*DTOf$d1|WHMW$!wt&1c7B$deXb>)fvp^2%#7ny2t z(bbr27NIB9CLYU;nfCTAq_YllDH}fs$k;BvuknJAwC&<}9&;(1bjG2*Z40s7971D? zv@s{T8k5b-96ZxlTMeAVn0(v!+1}b@rqfyZ{8%3ts4Oof8nrNH!HI|<2xkXJ`QrF# zT*sk${R0gCK1zo%I{Gx_&s4wHgp_T5AB@AV4p9@uyDq zlSySrl*R!=JYMjFuX1-UWiFe8-oe2s;Dz@Mg*nkk=ZU^Ec%BbHHVBDYiri?FjPH{d zT{zl*W{AfgeHh0LMh>1jz4O+gTjpR7zE2w+48dDvlSa^_V0SVdu%nvUESgO581kSUdJN{g8%>k07*qoM6N<$g6#R= Ang9R* literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pulumi-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pulumi-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ddefad9fddbe9c56c401d80fd6066acc1626f59a GIT binary patch literal 1120 zcmV-m1fTnfP)+E&zJqP%ohpZO3FjV$9L{~$U2sq|{;>xfHcwYpfLmPT2((KGp5YDQ-68g7V zwHg5`DR%9QQnZ>{R|k;`C50K5_jv+qDZH(;KIO~J{v|paZKUGnWpa%8r{zR!O=6uE z;~4=81h^45mQLnuot(a>K;%M6p~vz~04#K*!n5UxX}cG2CPm>pbS;8n&81lLkaSIGlT=^Sd-V&Xs-!;^n*c_C@Bl ziJi_&Pepi(2!mR9taYsE8^B?aA_9QyfRdq^P>L%BKnfu z6=VKro^L+uVR+c4wH(hMFwZy%yDAPprIhT_Vs(i({+mSov-XmvNKNZla3sy5ya96r zz*kBsm-?%7Hvo9d&c!Uv&jFz2`=-kpo_J4X{|DVw;Y}_9 z(bz{IKuaz~0%j=yJb3iI8vx$|U;&_&VJs@`iP|<=5P75Rhvw@5&{f@AW zqh14pcBto~DktBEhZ0H$37*L7?;Le{+g(0TB}%`ffdM1Fbc-3@NRp30UF&%0Y+47| z;RD}_NZ1Y&0FV&A38FPrw+KK^|GOaywu`8S zM~;~b5FN3Xywv(A0U;<5eh9#4dk|^4+%gX(4Vv8EIv#q*$+_Z-Hq&gDh^4Q>{^LdI z(vQv;iB_DjA(n#LxMw_Y?Oq%!zG!)U<|K&J7Xiy72~Q%mDN@>2B472G3z$#NgxXWL mX-`#nXLosj{eLFDALB15kD}7ims=wM0000# zqBuA?3r%r$v^38likhB@7n>h$xcBbf<7*W$k1+W_*v#2die za5%RGj06x$v`yf25nTpmZHzzV#HZyzTz?ah+cf5oR6(E>^~w{dPNxOLS0J(j+60!u zxmL7EZWMqg;2|>lzzT)Zu?@u7rY7lSX%(dj6o3G#&9&fqTxGglzGfSSH*u58R9>5^6VK5?q9Sl^bY;CYqGsyA0Ge! N002ovPDHLkV1kT=%zXd= literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_purescript-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_purescript-24.png new file mode 100644 index 0000000000000000000000000000000000000000..43fd9e8bb3b6de4f469c1afebf02eb01868b87c3 GIT binary patch literal 615 zcmV-t0+{`YP)-TxSpNHr9{&);_N5>9L z)V^kh{|EdzfXQT{ueYapfXH~5#l;jZ*PzBT=+#sZ1OkCE%qFwOtEd$uX^KLjfX!wj zwJ=X-=VAQ*YrJ~BR38Aq?LN(u$B!_XwUE^>tN2Fzx{#WH3+K;~$>u1PN_uRK?Dj*X z7Upp}om{-+VP)lm_6>Z#VWy{_5)1|!3J2KQ`c6Lo4U5Hs(AEZkaqj}JcZiAm_sC?j zM58ePy1S2ZH!_aVxL*@kEEWlcL`s{RSgls%#4P>&ClSRkOX)Yjo)&q%Lr4!M$Yyi+ zM*Jv>!ok*70=LF$hHr2GKzcY;6+SR<3Q-I*`z*e@&R}2&%e`ax$|#DW zG;}qwSd^>&QG%h{$a1pEGXfMgHYk_Nw6{BGX*tj^U~*Do`Ta7_U%b?KyDd6#{1|g{ zGGEu$@OUn>zMe-A1QPKXx{h>dHma2h*Kgb;oqnqeud3;t==Ymh{I23bxL zz7x?sT|KHfXnnmseEjqoRaKh<_?`MY{)2xT@DuB_!QBu<9#jAT002ovPDHLkV1ixR B7j6Im literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pyret-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pyret-24.png new file mode 100644 index 0000000000000000000000000000000000000000..897701a817d3ab0f57c04b5c1014cc1e892cb441 GIT binary patch literal 927 zcmV;Q17Q4#P)ko z4)^!{o$u$KbGW|)|3f?q1Rs`pt*-0WJs!^((Dz>&OW-*0Ss)O&oXKP|Qp#jG|G>ro zFNee7x1-VM-uCwP1%S4;wmZNZ4+^lAM_(uu%0(iPt)^-InM$R89~v6k$e!f!`wDJ0zT;@#(W`(jHv>5If>Zz1E2RYZz;JT+kM9ZpcIv*O z+rdvPjxw%m!lPRQs z0d{W`0I*%a59jKtGz(o_ zU2(71d#$sxGwyP^lE5>o0pAV|4qj49sp;wI+d_zo6+S|%kc;*A_g_#-Da*2~L?SWO z(9m!Zcx`oIs}Lg5+uQqNEEXF9PW;PO-dlM`N5@Y}DPwRAm^(f8TMm-Ex&muhDZ1*iuIj>zxhx36 zi|C>|36eDu6{HAVM5Gj#T{f0Bh?1l~&0Ezc`=ANOIw?P4!#)5aMy{7ka=!9wu;29NJAQWR zl_TFGKI!T(>GoEU9RiM7_%9oVe%m=UdGb*d$B_$lOAJvU4Pd{DJ&creHi2pUqyq7B z))rg)rzTIlf&6@@zirkv@0n)_q@P<|6m&l8`Py6loI{>yEjxv0fXZ5vj)&7tfpc#? zJC8Nj{=w!orGDI4dN$ML1nc*Y!{`?m+V(+k44Oo`*xddxc0!i3rX{$9{QdV zI77A+r&bM?mhMwhTlMy?b63ai`SI&acL=cyYET2HK?J^AJ012Oiu8!wL&}SL)7ryyE_E Z@fVKr+ey4+OCSIM002ovPDHLkV1ht5j}ia? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pythowo-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pythowo-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f57382a95e3edfe1b15137ba3d220c187445c3e3 GIT binary patch literal 739 zcmV<90v!E`P) z3fx3N8x<@NCI~BvAS{y^Bof1-QUenkGH1M}h0N&q&3ugmEqYg%d+vGP_dDl)=feMh zira5DmtB9cDpf2e8^Ws20dF)~kYljNMNzCCD=aH)`n+NRRVfdIPKjtUum$h}1$K^z zhxsvU^xWv_n*NGgLx)1)>R2iYj~jpG#^w_$>Idx+q!w5M2#^POMWwc=zGc*iPE56y zyiUboTt5JI2)rCUQ_~JQkjjHm8z_i*?x*8$Es?6`h)`b<7#agMr8XhqP|LQTSqT^q z4^Ryyi^???N|h0k1gZk>8Z2@F*bn5Yg@uy4WBl-?ZlDpE5@;=c?C(sNj4#RqLvRic%OyC|$CXZ&e!{0`rF5SW2Dz1@ZsdHNl|=> zQz}+PTxV4p^mv25#9T`H(MHa0zg*ri*k?Sl6=fRO=SUZ6MVU!M{=InWM{m+`H!I)j z+HQ#Ic~`$ea6{04Bwg5bni{Lld%J+&iZ%*7L`ioB`0I-%Z%Ca#Yed3Uby8r$)uda{ zTf6!$f)AKo7AjO_SdaoWTy?eR7L4Q5(TnTyVz~z}RH7JF9rGA@<_-G3WRm|+@dxq4 V){XO$bzcAg002ovPDHLkV1it6K)(P0 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pytyped-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_pytyped-24.png new file mode 100644 index 0000000000000000000000000000000000000000..994f0621d30b02a687abe6ce11c264ef5b380a32 GIT binary patch literal 702 zcmV;v0zv(WP)~g%#9Fb?!gPuuvJyd*AfnMzA~Bq~?EcTf<6JlUo8&~NoHzgbW_E`G{&8@v0y8TD z=mW3^K&6$g1DG+hSAPXCvon&e1E}UcCZ7VhXl64T1`G`ibyX^rF90SaJt8>~fXo5d zX=Xl8cOgKzT;2?zOfquLMUs?PC#e@ecgUw05>f_NTb%}LmY0`ErW0K>ALg8>W@4Y_+{Mw@J zfyXP7rbvFuYLb>nJ^=8VGM|NS-J8wnIYz0Ldi)6OBgWLOYi(FtbvUBzpmr;y7L`l}ax&9-id!tZ@`Y z4<{!llU!)18#Aj)dbgg=8;wR~baZqvPYZtIX0w@lo?8(oNwS~h<+b2JK)qhClYF12 zNh&z!`XucG@NHpX;roUGt&@9_(*1 zK~zYI%~MTCRACf7_l=W6#mJaHqmc!n6XKMZU@i(;NI#m5Lr~Ap8wU z62qcEt^Upg>|mg0ch${0#RP*N z-{t9a`T@N@ECEEb4}cyEiBH@=oA=ab^iY<~9_q_wBCjJf^3m5dhHL-@vIYS3lat@{ zQ*PIru<*4Lfk7+l@0H}<0ulRfeEVF^*xY$6B*Hlq8udX)(sutj*;nKh!Z(y{oU(u`P+V=qVqq+7^v7DvIExm`q zoT0>1l_1V)UFBbk>Ug#@YIAQ7G1&oxD{<#1V4MM=48UsNvgSu%xhdylGzUm!&eVe- zjiwslG#R}q23II1=(pEaYglU}qPBUy#00_t@`?e{NWC)ROh7vYNJfV_u}V1sfamrq z2Y_tTvD0BP8)_DE_${+^{7Ys+m(0BKH|W29WmKs*3l|ZJgFQhehk`g3ZX*u?s?;z7 zK*$Hc09rkgwrDgXeq>0EfLg@o7A8iwcc(0;=0D>X5To|<_0Izx00000NkvXXu0mjf DFq>?) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_q-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_q-24.png new file mode 100644 index 0000000000000000000000000000000000000000..88a163f95fe4cb3e5f464a8b44b02e5b76c540a7 GIT binary patch literal 581 zcmV-L0=oT)P)RYy&!Mp-$0Zk!4(;3C`+e{GdGGgo9PIZ{oZwWp z=vJ}oNIgJ@jF0B{Gv%@V6*pV-kj?@aLAjFed-h*|?$MVw%=8H83LR}pcGFC~z}0O4 z%ay#>8}{gEW`1(C)MsYXO`7O5(-UB|Rf7OdR55dFHZ8NMkohbQmkhgLFj@OH69{`KQ%l*r&nB7o4R`h4p^=b5nP#K?<`LRZ-~ z0NGMQ9t3w91t!V4A7>6t)^siXe%{^a`AlukB@J|sl%57+$_O0CO2Zg~?Es=D$mIfq zVZe5J#)f3}+A%EygKV#8H5mY?bUa@R$4FULrUnhW zqeXbKX2IRFw=KUX_%&&aL?d`>27+lm`fE&_1? z-|QU%djF{a*}8=MxlnO+TfWO4><`OS4h#So+_kyiSN~hVINpu9U1%)5ITC$3kd^aL zUax>7GnJ+;Fne5eFR$Co)fp6HZ1&Ed${y^$4}1U!k7f)b9Wc`dNhb{Z27uIxw{3Wp znb;3>r<$PWMr~&pSot#%MI{|2ao`QWf}vq=SgxGy2x;`Xq-#KLpu8$MEi-33Wh|NI zh!jhYh38C}Fm1etuK+^}M&`>njd5($f^vC10uAkH(HK&?&Kh4J zLi`TEU~$sfnk_Q(F|fjhNY^Dy?SaeN6gZa)dY!6ZL&wIB5a`ZCE`6vktZ6N{36t+ZDrPJp3r}|JMRf8n%qBS*uyV`_C(NLaO`y$`{xgtQ@P_Px~0zB6fci11EoIDzj zq<_06pe|3b5h)3RUmM`PKf@pLcc50z{L+XGA&ZEJ}@3C+gBCU4U3BzTGSO%> zfbk|B;sAbySI5WCyaSL$-UBW#Rjh=ZBQgNSdF=qnYaeP zHYR%>KvdT{16gaqas!N>b~iu}zzTQ|0e=-!SM<}Ko}Q`J(JCMCpd&Qf86G+30$4u( z7;wdr6z(`2s{Ew8dm5ESDD03FcCHPeWO8*gu--vVJ1;`VIS78Ku+z~++B! z)YSCCdT+oA8`V3&KGoaX`!%2)heMS)kNyBGZK|j~z3+*mpDhDK2Wz*A*gxVv$-^FU zyWE3mgfD+>%LI%<@2h};QUr$|j9 z6gc9Uw<7UfCoUBQ#A2A4ZJ|EUXNxRenJFhN|3V~x=`DW`6p1E-ZwR~&_*Ni!R$)va z?C_1}B=`9K`r%&-uVoN4(U5stjeRe05SYJ;@PxvfYA$a{G-M)*z6MLPFO!^EDBeMV zwGLL526WB+BKBqkpQ_G*=a)o7>Qv#o+&&n3(iZ*LHYVIzml|0?_cv}Y_J_)DityF! YUq8M}iOJ0G#sB~S07*qoM6N<$g2~y}3IG5A literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_qml-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_qml-24.png new file mode 100644 index 0000000000000000000000000000000000000000..63cc0149e4573f0a7d4e5e91a4f6bbf04746a348 GIT binary patch literal 678 zcmV;X0$KfuP)>|*3yW$x5{2X&itLsG&+Ody)3S5deMBy=C%Ps<0JFK+^I3cy1)_kX za5B^yIjA9>1W;=d09n@?%emf~uW{W33MBx69<8cd^?MyZ{LmL4G4>RYkG~rkz|fBd zDb-0Jx;$rvmQ}`vmW=!K$MOC z092Xyvt4^5rO>&2%p1=4rEe$RCi_v&|J!WBSLd|jb>vfM80AHf&U(i}7iu%*D2s_g zazTV^?H@z;%29s?h^@TDXseVjm7~~NEvtNKWKbatgjE?YcP+g~J*!#p0ktK`Z9t^&N-TJet>hl8*gv_ndS8zkANT7k1P_5)SCA zk$&9B!LFU76y)l=LbS#_H8P4PZ!o-QqkV15lLx?*5tyeF7Dxu@-h7jy06I51jCyYY zvoIEVi>u#G3?;;E(b$E3wlUx^ZG10uVbl zCAPEWHCEN=LJJ!v{WULHjgy$sIZ7^ITmcsKr8S5!&}j$$oK<>iqCyX2+24SIUh`uz z3_R=%pv3&mx)zGBksaGdoe$a>Ksc_7pyX@gvP5~kFW@PHXr*%i9OHH3413IJkXhh8 z=q<5xpHaqxs?3E0cq{=QP`=kQYW!nKqg?KI!)32 zitsa(HwcefbwoQlbxAt{9l~ED)tF0joxJq9Mg(;{{{k^?*!?P&lJn-a0p>{L4#vm7+0p4# zeg=lj_=d`syhJSoE`!80Q-PdpebUHm`MgK0|hV}LN@CF$}%|s3;`?s z&1k$AG*PUk|%W`I*Mp zJm`JC7kCQTAH$DkS?gt0CSvYbnueEvP!v8SF=;3Y{W(aW&wmH-1n_oW_@J2_j0GTK zhk!#O_9hTqbZ$iTdj<&rcg62ts_r{8IR;#ez9kVm4$Mb8M7!A=k*d2aVu;v7{j6Em zsyU}?Whqq=!%Qx>+vx(Z;C=o|9M#1&o>rlJUMq}ab8zH|&U~zHmCtwozHWJr> zVPFmT9jI<@ZaX)K1002ovPDHLkV1kMtg9rcs literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_quasar-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_quasar-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1122e9e88588c5b835bb6c62c7f74be75b50cea2 GIT binary patch literal 1185 zcmV;S1YY}zP)?T=fR2neGNPtRiL5+x>3Hweyl#7HLSNX#S|WSD4- zCK4l6d1c^@2{4=(qY|19W7s;z3$raFf{_DbJ7Jje7M*La9UDn3$|2JS~u9tp+ zebT-9J9zz0N9bsuvO@l?$IC5{%62&-h|!wm3H?{SKQ3~1MRK1KkAE* zPUi-)V3o(DuPEr9siZJHXej3igV?9tebt4vPgg3HVoTMn_z=!YUmxl`)>o_5dZALO z6l-@Ly4fo>W4DH9JfCgvSFkg`CH+9^s$N|yXXbW1Tz;p!1K+@?f;A({kG)l|*I&a8 z_zhN|DCD`Mh={)nCorzzR%_#MyWtu`Q)Cqy<@^wY?`fLI7_H%xTShcZ9!)Kx|M&Z{HN|mgmwC2&?PZ4GSXJB*T0mR z4@JaP5%GoY6Q$D{URLmNYvb_T7N#sUbb4uGVxm|q7QY`6-;RiD^~YHZLbY1`B8sI_ z>FJ2b$kbFG8f0;HuF(-V_DOk$u~t$sE$Z_CU= zL^P_^>iW!_0wtct3I#*k#}`$$_by&FTJ6qDt-(3)InUzc zzsZvlrYstj7OG^?adWl%@^JmshW`0~?aa)-K&e#PR;^YuGjrw2mCeHxk%n^@HrScp zHSW|ZGCWT+1n3VHsGw6nrlU3+f;$oYW4FS9UZ%_Ipiqj zNk25-VFjl(6s6ajwO{mY1iLKpO=rAK(?k4CcoD~)_cM3I!2<^lbVWo3-zlHyo|Lv= z)Dl-2^@wo0zUaDi51zzEqZZ?S&F*i36hrOy#kIy)3pY?IhaIRU9=T7du`sgj0`6FC`JIdwqE<-uTe7!1m z>#-d-C|F@_Ow0zrj{KCcTll$GY&H;$sno%P2j676n~s;u<&Noj16gpR9}8cVZq^@v zm`cr^1?Z2L?Z|uZOFcf~g}m48G1}VX7c=uc%?szq^ql9i(;Pp+YGH%Ei;KTs!Bjk- zpVaUS770HU1}*lgo|ptfIY)<8F1TCRh%xD|nU(){KoipDg3ZGHxK8tgpTrz2MG+&y z6T;(Do?kv-W(?;F;S*+G`up|88<#czgN%OxrID^8m#Nni00000NkvXXu0mjfEW1(F literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_r-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_r-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bf97f48f3c3037329e0ed7451885c01cf1c05793 GIT binary patch literal 988 zcmV<210(#2P)`aji|OqTTZB}@LxH*TduGMOy#iI)ji1LGEwWcHdZse(gs9t;9R&Rk8X6jAR|K3K9)3mv zdnv@SCW~Dg$#EH{DcztL6}g5~70ES{K=OByyY}p9II|2eFf;jT?~8s9&gETir$Al+Zq(qCED(qHL0R}+RugmE*LOFESW z)Ya9Dn(>5@pc!afACFhJ<_?gP`4-PC^S&5#^xYimB61pq+W1&uV$ zm=R_Mqdxw!``9~!gM-n`PRofYCo*Z)Ilj01@vAMRtI`KZ*SPE)06w^>+1XjJdi6v5 zB^;m_%UlIG^vlDzGVcKp9xY1GCZ4!FK6PzX?5oMr7`ZSNyZ-3f)fD#gmI9iaoBc#$ z_rX+ZtX#Am7U)AW8wgDPLM%>JXl6HKMRQ*iMS|f_RE=w2{r1_g--@^CQdR6feo<0Y zCZhgJhwGjPfOSpZRl#r`j?oO{%%7F#wxXkhc_&y&TJnPzH1pZcUjZEr)i$r4h-YJp z-YuZurnaUZV8j8KcXNKYRx+1<^F~2YJ8%sEFz*-m`8@6^ul@xQS=AmtV>{dc0000< KMNUMnLSTY=E5lg; literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_racket-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_racket-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6d139c3d164c40ace3cd5660b317119a00048ebb GIT binary patch literal 1117 zcmV-j1fu(iP)Q|7R6;wodlLFSpw+nSeD`1WZMT8 z(aqxE%i_%T#hICnnQV#~F5nbL2!EEr0?duokTnrduoZMrq-&`c`{(Wh_CR~vj4bi} zbf5QqpZ9mp%{d2n%t2Ptbn4tt*_`L$Zf+r%$pDZfiX6$ZgrCeKtv|wQ4gD_w&+|zD z%r_lwbHnL@HKP-Af}V^tsXu3ZddKQCS>>S$!~GQlc%Cl=&;&pW0D)i#r_R}Mv3(@w zVpK|LpeSEsdEd14baYJ=o#_9_`pMY$&1aOGaugDU0sz1;1O>So$X6v`@cLZ=!1ut< zjNNwctG3jnbX+>q9v9GmK?Hn0nmbUc$BqJROu*kRAN!B@ z!M9<}000k=>7hSgjOhR{{l^ey?RKgO0S>?Q4Ay1JWA+b^xOM?Np@6}<`ZBM>DUJsy z__z)kTed{x5+y8-R&RrtWd!~ATt4v^O}3XQ!0(%XA>Qzfrq{8dqMT~4(@DRx*DA2T zR3FoK-@UMx0s>yox>!vq+1c1ydzk8}zCK(oDFrv^iFpt?L)00{9smH@2yPISYD{gp`1TQc_7 z9sxJI_!^A;(1ID;by_Rh`~-4!stA8V0y{wgGR^8M%Zp-}6b6f#>d9Yv;pps&7-0MC z^9Ws0qKnXJio`Yw*j!U{MXJ&G!$p178%Rn|2LSM)5C)FbMQ;#}u5P%7moD401`V>b zDF7B9!M9&CECC3>YYL550e}&UvC(9rMrUUi+@qrc0C*lF=Pyu62(WKQ768DYQ?-Tj z^biL{@~UKQW?=2^myoDTqegqcne@FxeLa?kdxOUvtmdrk;x22c!O{7z3#bXgFSy}bZ%3&3_l$i?Wo@F7`* z^aIdIQd3)GYIPvqaH(4DSLSTGjPY?jA!IP-tp8jhfPtgdGCw!J%Rlea5)iPmBnK;9 j)xPccvDTINA8Y&zVwOn1vI(md00000NkvXXu0mjf?VuB8 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rails-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rails-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3396ee5580fd916ece8be0c805e92972addc9304 GIT binary patch literal 1146 zcmV-=1cm#FP)x#}P*gC(H<`8S}mIq&1qx$}SB@=>=Z z9|c*=IzQeQbB1gwFpk0rD@wUinMVkO1R=n3BH))$O5(X11i0GgTw&ojutFejCm=a6 z&>RjADIv%jLkS2)ZDK98glio-pLrZ1Eu^v-KJ*q1J)PL$Fp>KBT}xDZ63~Y8XEB4$ULmz<4A!_u*&r_}K!d55C9r?-v6EGJpUJ27F^M0_p~O z@jU}}4XItbXxPw)&Sdekd5YJkSU7bSw5I>fR|qA7O4OZz2P_(cBSE;D#?4!?6RmXb z-%Gf@uI!Ur=G4K%L{mu?$9|!HeK(5}SMhVXdn=Fvx-3b%P((DGKKv2MtwSrx0mhFW z!%oDx_U#X37naCexk9l}z_Nk`2`I3UNCXBjz?$9LX&mfZu@^J*T>R{Fq;0QYrM!z3 zvI5DgD)5cQ0O{xV(J;_U*S@_K_RQJyB)1LYyY33+Ef>pQ&%ZYTfHsEw)C_gKY2saL zD{QmBo+CRxQGpq)@$xR(*W9_P667&VeEmJ)cx}LD3@l%t3~s7as+KB9V1N?k)6_Jy zArKJjXs3N-MiI{mUi;Jov@| z_P#$#yuB4=2_AU;CE9mv!wZFI+P#yOJ-cYwG=Nl!zSmynsZT$oxi?)cRds^qzV&1- z{7J{i!=$!vVea%9I-Y)vNFqjkx(hp%Le<6*wng%xt>kY`W2y|gyAlATpB!QQtK$eu z(6(m;6?ITTAVs-HtxxQsZqr64Pn@K#Yc2JI{kWb%SpLlIc`B-Qu&Mu%L@e@M>+mLW zGqZH0nvjcG{6c}+uC>hn_6O0nR&=REth+<=OeM#fdXpMpvKd zN`iNj1M5N-Zwq0pvOHldA;jGteE&X zG#cY2gy9FGX;@4M&dW3*Is*}}fT0LusK|ghWULdnv6gjROUv8$^@CVe7-Phk`2Y0e zIsbEhPfnh5;QyqxYuC>Acsz@5Bu7ld)X>n7tElQrvnp?Gh$*Vn)6xD#GMQ*-YHI5K zR{*cqtJgH`@xtO6uPs`-(vq8BKyP@2k)aUB0=pCa-6!9$SS)WgHa5m@7~u2y7FlfB z?=QIH?rAe-&qav8t-aw9gpdH}>pn@x{@p#1aDUy_ty}kwRY$rOK-09^{jrj1VeIMR zS1Kl~oHooVk|e42T6J{S3IKGSmuP72V&3FqY^b}9!n_;+BGD+H@BNjo5er7efODK0 z;{pIQpl!gw18)ad<2Kp5^%LJ`*MrA`d+kM1glx_Mc+TzOamJ$!k3VtLmE%yOi7 z_D&0xGYSE4I&xUIDwo>RLEharNbubF`IE-F^msfA3`W!Qm4&9f4Qr}!IkVF-tJR7S zf?RtR%PaDTojpN3GMG2Fs_JlCTU&5kKz)6EL3MTY#?p%U@6_J+NPe?_6CZ!rOl4&y z4u>NHFgQ5KmMvQt=sU}@ho5w6s#;%CG^L`d%Kc+|d;3rZVEy{_Cb!%DoU5p~W!dVw znu__0g<(AwI{sZ*z@si~pAzds$* zG%bD3cDiscTVwocXX`7&eMf%)zDW<-kv@sl8~3p3qwh&6sSH3)P7Y;dWrV|FbUGa_ zmkXoO2#_8^Rn_?Jz%OiW?Vu-aO6O+$q6?~?=AV*$eS9ZRub7Trucx%MlxQ?cBoayc zBuT>IaF9x+kR*u{U1!*J!wYo`2=1Zmo0IJ@G zA=}1H@pEViC9_4cEO*Yh=2pF1=pUktw<3WXY5T3V7<@d3PEuUQE3L|9+&vShX!ZPDKj3nlTC-|ycy z+UN86$`zsC95PN{ZWZyAX{5Uec){=YUuQdA22J&NJok+Ch%0<6eLmmJ2^IY>^cQ!= ViuXiI%2NOU002ovPDHLkV1m`iMJxaS literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_raml-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_raml-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9ecc6187bb9fc377c120208cea1cdcecefe24794 GIT binary patch literal 636 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 f`mguPyz%Wn7y;Dha zniEY28i>_4M$-p)@I@(!7z~NLR0A}GnNhrejbMt1iApiO!E|PN_VQtRo9Sufm6e?2 z?Ck&i|H{AqeKy?eB@6C&eG&4}1|0hj@2x*OAD}|ZcMo8sn(RbBosHQW7x4N*^! zELLB_%8TrYWdKN|kB~?;&`y6jl?fD3twlIDv);2l#pFaI$`;hVfj{x!3^{e6|&62K@?=Myz_k8pPa9GWK#wBZ+hmRxf}#hiE&{4?KcO4_9?BJ#JxE z;PvyBM2C-o$qAmI`VG;cweO_TU@b|;G%M=&V4NLhj;jH0C$Egm_F z@DpKn;B-JFl*`4vQ?dsab=n|LH&p>4eNEZJk{>3mHVYgmLgN zX7VPRuCs}Yzm|I?4zw?D~hg@e|(S1#}5I|?D?}ei{IDXUl(A{Op_Vt!-&P%b^R{w zi4zoFJViQH-_xErj`+FkudVbatS{-t0IMobPEej4$A}%G>+~6xo;~t&+xz+h-lZq^ z>jUhWX)=T75LU&HWk;`~b(_el4Z!@B3n<#!5>7tn&o%HK=#@9rm$WKaQ=h%X$}i^@ p3%JFCAG5zs)$CXxQZEkX@l>oL>+T$uMeDp)>4qz+T=3kDzv3)@S z5Bu6vW_&sOZ6?S2548mg1_%ki0BYuhUM6(M77TzF+YNMqJOU;W>vm!6!-{&#>92;G zbfKX(f3Klt4S@Z$Iz9UJn`waV=H@k@H?GJZX=qND^N>;r11Y3l=@;ysC!qn5&hypD z$3?^#V38z`a*%KM;|xzuzbHvjRf?(+73Dq^rb&URacw9qkN)OvL~vx(jtLhl&V0lQ`fTZ z_RWs=swF`_+mc6O!{6s}*+{@4a5n9FfJI`wrQ*(AO{admOI2<1?%y3Ew2DYCBE2r; z^<875?=ACvKc8(m4SET97o%EDdQQ(d-lqf0uWa7yhhbO36weG#6>sKUJ+nTa@Z;dl zgJFPgbGhX)b^8U|Nz|;2y&Fe{jy?r^m&vS(qrZBpFGT?GO!3X86K3CBS)2rTpYk{H zM5wNP%jn>B2QUc*;3VY-8W-5b%v09fjFTRZ3(p)8Kz}9^RELv$5@sEqs{h;$@XWY8 zvx6v20jEs#(@i&SjLilk|Ky8JO^seSdB8K>>6yj;1)xA5F+SQjG&J&jvgB0(aIG=b z5?4Fysc!YnBmywt%G;Ej&;INAdTX-8BnQX1wpe2z!A}SaD zjmWD?^C*V{&^5PtQN>>JI2TDxM*^AUf&TgMXsXSMJO_?$X|v$V7yJI^$~)`RsQbPO z*{xKdb8bBb-XWnHooNj`+5Qa0;{mIIN21b)(vchP{jgK@r4DMr(%|4aaH}PeOfL`g z&%0xx_|ySgESwk7ZWVj=$58*`t_`-~77vZ4PO8X|+QKOj{98Z7cNrMl&Z%jOszHS? za0c*~1Xa4-IR?N%r>xj^_xWuLuXi%oEc&N`b&n}}JUBjCT4@KMfb&?Yy3 z`qOH2gK^HfIiq}=js!AQ4Ul42`BP!gC_)Uxvqe6~*N)0#H)oB$1S%TTzePLX|2J>| zj3r}D`L_77A~vC_``xTxSuCIr-JGcTvd48+#~-u@*x3a&;64BV002ovPDHLkV1hLF BNRa>l literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rego-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rego-24.png new file mode 100644 index 0000000000000000000000000000000000000000..308b6882df5ea9f066b0b280d1433603ac1ffad7 GIT binary patch literal 729 zcmV;~0w(>5P) zK~zYI-IPs8R8bVif9IN^Ae4mALa`vs!iB`pu3@Gk38F>RKqeMhWQ)EwnGm&V5fKGi zlrqsSn6gEyHZwk2rH+^~V&(@eN-<>&t*jZ}yDgdt=lR|=11+Mnd5`n)|DAKsyAS?L zi$-+%?bG1>aoZGeV7qCW=YiI=U)hqlVKQbSMLSqmQC{-wxi^iW2e@ZakTl|Wy3Hw z1C=S*!pc1RlDpC`AL0x9mre7!llaQ|L^5$}WMZ=JH(2DkD`0kZ_7O0)Y*~6_>QiYJ z;f!I7p6G@|GO2;ll9H0gu7E%wkPwk$6EpFCOY2pD9owp?^Lg#ZifLJ;y@Rm<;DpEH zNxA|6d_G^_`?>iUr&hOCR^X|vb-bK|qwnVZe*bH`e^obbV1Oqt!%PmpNdU$6nB}77 zCxb*)*~O($;eKfmf7z0jx^_<`f0H z?LRyx%W0W6FE+ojQ2T)Iz*kFIdvg)b+gjQ>8v>`BPyTh`f7*Tm_$BZy;#dKn00000 LNkvXXu0mjf%KuFU literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rehype-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rehype-24.png new file mode 100644 index 0000000000000000000000000000000000000000..12f809b57a5a4e825cd71cb728b49432ece1b78f GIT binary patch literal 404 zcmV;F0c-w=P)GE-L>G&6ad7Y#IQScM7WxwuaddH# zgg{9V2cf%Ekdl~souVRXX_PLSGhOa^_ndp)dr+dpZy`kvM^RKylB5L;J&RDi2mt=4fI z=lQ!U`>QG6)pt5`O1sPwlQV}=m59C)_6QVoIAmXk?3(_XVS|H>ALPdfbaW# zW6VHAHu5xPzQL*b3maG!UZzlKR*XiYw^uK>;2EG y0H{{0_eqkpfnnBbHk)Y}hHc$_{wPV3r%C2aULa@yU1B^yx(l!XAZZzBNLm9j zNwa3Q>%Cuc&Q)WK9W$E)njwUFV5d;<(UYYPHfu4q3Oc^1*XvD5F3YmMnXO7{rfGWI z>-8!jgnM8kf4~(8`n3>>!ZEYU@fd+FK#cJmAW4!pGwTD@?*-CBQTRCQB{zK=%bs)l zL#E#KvjFs!;3pIbewFE8)OKdw=^{zDX4W>d$H|(R^(3{2!{KYLv;%~{yKYIz|KuI7 WHGMhYwpsoF0000>P)fDu=+ld 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_retext-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_retext-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ba6ea08ed689a63a37b70c4ea9edcff3e6c328b7 GIT binary patch literal 393 zcmV;40e1e0P)16ZkM(k`l;UqPJkis2t0=n&eAj;RrN%5f?&b`I8fCs zgmsh``WXGz8Sp7008?NB6m>ndf&~WCpU>tAjxPX*yU+9d1K3y9Tj$)x^7$r|>qU7R z8U=wcZd?8@K^3a1zsI$vY~veLAtG-;DI$m7dtE{!we#G214jeHCALQ%tE5b1HM}WtFwtG)eI4g;2=^Me z6S*E}33N6wzQ6!&f#-=0few7C+^-I-Pv!mIKwllN1MR6?z|D-&L`ULXp5Ch9oEe1j zqdjKlGq#=OFUE__7~g_jAAJL z>G@EeSCJoqb(qLAG+T2{f>nG*PbmMUfr|J?+{FpBmgrG78o{NE^A+(IXv(;3KC^yN zLn0sf5E+f->QZ%0al5iVQ(#}Dl<^?)EKy%zIFe;-o7EK}t=QDSQ^?qYwjyJ-v_Of; z#B`3vJcEH$V0VtDdR_(!k^LCNlLihiNU{_}`eNDqIP+$(6co9L?}44mV$j5R;L1|# k&LNSTV#l(Ytnk zib2D+HWTI5-$Mc0soVq5N2ARMz&Dg7bFA?=w!XUKO_=?MnnRcaWDxG#TJ&={ox9Kn z5R!z`#`1nAnavyx0050!ktdzE$iOo6juB}dXlFU6!fk;uPw(|=>gr6)eYZXk5O<5u z{mxuDb!AOeUV39~+H=5SC@ZSV_?!QNN*Y4CL3-ou9$>vO5fgzSH|QPahVwI7ogS2L z*yx@ZCu7>Ru3sHf@(rjaew|k_p9bX}r-j;9wI$~D7|z2J?n=3n^R=SbX88+HI;c!w zzCr6_C4Ko!Ab_yeRP>&oT99eA=2aj7K-?`Z3d{q$KFVjeQn`!Z^9CJFx`h|plh>9c zYG+kQ3n~DrdKToaw^r0%0zL!+0GzC>>;idjOhGECY!3jD3Fxj!dcNVH63{+T{Rc^NDm)unS)G}i2M1q&RFyjfO|8hgVpsFDc|B%pwogdC;+1L0-FOw{K3`~i+zBZv#31F zewGBd?+@KnxUoF^26zD<=zBq)wkM+Rvblz1b2He>s`>b`$9A9$qzRQ>_IyWxh#9(! zNDqLDj)Lw7?1q+#>yBMhbQj$V1`iq;`3U$B9;37@@7xypq$3t>b6kOf7#aEjA8;4t zWUe{sj2b=bwM79UfzbJ-^JNG)3smJv>+6b7eJTlnat(NaXb`B)lQA}*{&hW{v|yVK z1j0vDEw921$Z6me!dtNjs?Z3`OWJ*|JDFU_r!QE6MW$I*MuAqq1vH~{tH`{esfMyj z-=X&8m+u?t3qLfK&xqc#&j7Cl>*2+Cd`7bWhYjMNZK@ymUO+_0;bq?Wx%j2!{)$aZ<7mN0HOixb~Yn+XoBeKM55#)->65H^2a938I zkc{yLa16+)V6eWvJTX0KJ>N_jazvv5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_robotframework-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_robotframework-24.png new file mode 100644 index 0000000000000000000000000000000000000000..33547ba56b605c8ab65fd24ad19b6150ff4c7edb GIT binary patch literal 815 zcmV+~1JL}5P)c5X$+KR{C$#kABB3_-+=jXFHPEp%)g-a)v1ULoSjWM5cDL<8@$;nAsYXxNej4^T?Csj!zvy!|t@Br`;$e)^; zqNk^aP$)!qcQ?lP?}eF}8N%T(k_d;x1;7VM4~;Qrnd%25DISl@TB}efq+~Lgv-z&; zs=d8k#u%-yuczGoUhVlNNlQyh0yH-_cMWoWex8+NadALjz-DV>C84Qdn5%H=bJfJ>)X4jFOTPy1Kd;A0KCVd70JKRjjqt)zvXNI!aSh zlOH%h`SqVJPow;1kjtXcXyyzgsV}{PAAU0C=jS;(I`WJK0s)$voBfvVrxUDrWh4>_ zT3T8-J3I3VW36RvZOxBh<(j}46T8}44>A?*@9%SbeC&x33S};(;H_t}q&i7IC23+}LdKY!mmQ!;B$85|kn}Vi)9bo^ z4!j2nHa0fc+uO@pL3w$3O8F`9(irnO>w+tidP&=NJ_yoxNl$VDXOQGe>XWpY1^BC^ tUP<|WICp*Y9|4cK`RFg-+KT_fegW07zYX!EOtSz0002ovPDHLkV1i;#XI}sS literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_robots-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_robots-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fa971aa51202898740dab2d5855951de817d6137 GIT binary patch literal 703 zcmV;w0zmzVP)%C36=`;6Y2P;^myuFcy=fP`vK3pw_h2iuwE&}QX1b+-e8sXhJHKNLu+_CRO#84b6{dZT_Hdk%nUq4czNOTjZQMakRJh{c78quJ)w&4gs^poP1exC90qN z#x(%x=vV}v6ZM3#Rd>h+t=kw(Sls)ZC2|V5?0F@^}f49Ij zRnbMCDTS~AECQ(L9Bu-pIu002ovPDHLkV1jeiHRS*R literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rollup-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rollup-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8ac1744076f416dd378bd2ff2fa20cf6854f4833 GIT binary patch literal 856 zcmV-e1E>6nP)(n>O|fYip|%L<$zFB?$^%Y}A9E{kVA$4<5XVABd3*l7o8CRG}68IH_pU(5BK&(#`Dd%_(g~Ok_-SEuK%WOI0Ev36KDcPqg++#dCJ?Y5khc0sUPYCe?QY>NkW%MuIVUn9 zNH8P-kLc=O1N@suzjNv5000anyUf7@27~e+A%UgP+iA&%gxnlE$IY z)7{Kngq{(ptqK5u;JSTn4cx2>uxbpbW5-q!0FT{;L)efCWYb&;;ymllk0% z3`~9!U_b+K!pE5WE9DngITG$c1e~p3zcauRu9@9C4zCz|hvJ*YTYc$rA!oY6{3U=r zB%bXGpf8PO*xMKb0F(o9vW>qoucTue83+gNyMb@9%-iRk1ESLAX=@5v1*tj!O3c{> zMP-}Cc5%*%h?Qs>LQD6TM?b*bJPlODw}8SsRVuA>%&HNOg1-zdW~K-*&2*Y~&@J;k zDW_rlYBc=I-^_hBv0CR60Eos~iMIski~B#qD-2bmDX{*LcKd2Kvm(BQItRoo z=1DpZ<5#1x-tb7hA3YLe+*Ihk{KYG{)gu`kxgBEaK_c<6Z3l3) z0|!7}Z)G#OuU^nR2uxb)q*GjXy_s`zFr=G&%UC_wmt^Z}s_gaIrQEEM$) ii3+s1*wDp)9e)6bP*ou41vicW00004Q_ zK~zYI?UPGvOko&?pYK0srl)&$5x0%obPhwO#e$TDkO-BCR?W=$KZ~B89(8FEJMZdz@Bh8;clpl`{}?iu zB)wZU9oH_$>PUnD6DsuQ`A*T1}yF4Ap%=y;PO1gI33+Q>``E zeZOVhFAMm7+W}xljA{d2mXgYoBob>drUKD%nn~8q9CEBiRkn%nA+k>vSFS)cT`$Hz@d6f&I30zl}_L>9jo-^kG%GN#uX}~Kk z60dMrs*8K+D$WM(M&~LAf*?2(Yi91PTlrB@0TG!V zcE=2tEOh6+1UkalB$F}?!k4US%Z!l^J>T*QYsSXJk0nis{uo_+L`QTr4&B4XkfdFt zXYJNX1%!8?szTo%r8Fn&5YC42O<7p1>F=+KA)5#yLfnZ|b-n8K5fK|r;QRR#AbUb# zqX!Sa>v$0G{nn?zEP!mbWrgR>xnc&;{5Ad;_+Q}f;Q|;V=T!9`fU5HxaXy0G0D#!H wKhY}4hA1+h-`kSxbR1g&5CrCr-qLU5D+X5rbT*raUH||907*qoM6N<$f_`Ig(EtDd literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ron-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_ron-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c7e923427980fe65b0f9b5bde86cba37428bb7e7 GIT binary patch literal 1053 zcmV+&1mgRNP)kmyyJCMmMCUYHrZ(FigKL*3xg zZb?!Q6k$*iv7(|HV^I(hB?Sui4xzTYEp&6L1SP~&g5itJ5eKer~=xF*^+ce|09bM$hS9dbY4jr zACyuNMh~JN*kBNO>9je!3$YET1tyR^CCAxJNB`+czHq+4Jo0Zs{Qf&T28RLiM^f8- z;Q!r_8~h0%-?ny@DSiWEE2d88*$d1OnB$<(p85i@6-WRlow?^dv9D&`$2MUX>j%&O zQ}9j6)SG7P2gZP&bguZ=RRa0;JJy-(5U{5jVYM(A0r$+=!M?6lYf|3<_aS>9bH~%U zUy1;(43=%b9&!LdqwpWDX<5BO#>o=VJ}KHYgK+@)7n+s<%YgAPoLY(Oyy14tsn+ZO zrVOTx;FXG{+IX^dorx_bZUb;;O=pfKZ-vq!M?rm}hIl)Wh@$XIOg%FH2bw)1Nl6Tk zoEf^koHvH9MDdUHwXRQ&uMh~*-uub2gV3=Qbh*^3*V4J-!73ej4%yqF6Tt3LZZrt= z;JwEON7v_y`|!M2vKv}Zb8}h1pcX7K-B+u6Yk*$hTfv!%+)aMU9R@gcWNjmkM@x1m z<2Vk=0#O`Y0C@m&B&)HTvqR}z@qtXPcsI~FyP&=KY;t*M(H6wcnRJZ%t5p2-FtaFV z1D;)=dVoKXU2(EjA1I0RNyVC{;znY;J`uQ%P1(Ln4j_{qx`^z;HOK*0U~2N_6H~GK zf$2vz6K)PtT-=oHy9AY^!dw?bt4qTz7J3V8jCm0f|DJxiI8tb9d06<(0M4{TvZsO2 z#5;lck7mtOL~ncQQ;A*EMKEkIF4=pTm-=6=W~p#Abr55ZAYsrl?Mhwg+(7xk&at+> zqqy6|-jeiGh~MVWW-U0@ZHtLk6LkP)9H=Cp+oG~1o%3R!VJ9NoISlJiM9)MXQ}uAh05)s zR7a_TOILy}j4NG8EwqAS6@1M`jV6YsiArlUI*G}=?mb;-#_8nFWEA`_F5G+m-~WHU z^PO`)_{fm)2$rShb+oHRj4VdA20#tZvAG@Wh{P>RoDVYCajG+1>F0Z3J20aNtq(Yn zOmpmbTSKC3gWYEyt`d=xKwYWq@{L4gOKfB0QenW174K{lkze0K9H3rBf7{#Mxw$a# zza8vu@A^{Ei-7k%#Pg9AF<-@6=l?#&VDGt(DouIrQ&8{PkPq8YGPV-%d+>XN{-F%1 zY|*oQEEV>rv9-}b@-x+xXJ?@}Ky-SLC3C|Be1_f^NgRdQlPbB?F~GG)uiOk~I4SRU zz)!gySeBaCO|Z z&x?t>;nhf%k&MFx|Ck;bMSWsH*Jtpyi&UMKa>acfVMSvN$&ADEp-fSp$7T_Xo`J)Z z@n(AQoG?vwL8=2@?)*K-iOY}C5_~aC%^9eONJ%=}{42rvct5L}CQ=*nF_d(zeGclp zN!h%8JS(05JN$8ffXP*U7S@MK^2F%VoPiCu$~ACQIdkJ5*0j_Ts`M1)WkupSgQ|P; z?*LESh+j0;uykHE(dj|jmQBO&HT;`MbNx|*ZOiLe8Le?!*89u4NF4Gec~5)i0pQ0% z=A@91fbU&9K6#nOQN@T*_lchomu?baf2_6PXULmmsj!b~%Ci-inNKd(ijFFM11Yyq z&jd{$AAQNC7F!z~L}e3@byX}686)zwwV`=vi~+#mjghM&eEWeW8C1VH)EfCS|D)@8 z?K%5kIciQ*P_7c_QP^~3L&LSgfa}lXaBJfgsj!<7{ed^vVli|B`!qS+>?RInUiu?V v-OY;A;=p84F=F(o2=PPf8}5#`{-fhR9`gN|Kko-900000NkvXXu0mjfDoUi8 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rspec-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_rspec-24.png new file mode 100644 index 0000000000000000000000000000000000000000..29fc05d6d32bd222fbec56fc1f3a3b3e20eadfeb GIT binary patch literal 1183 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 Hu0mjf=02wh literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sbt-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sbt-24.png new file mode 100644 index 0000000000000000000000000000000000000000..388997155e1c70b87a606261cfd771f8259b8344 GIT binary patch literal 716 zcmV;-0yF)IP)WR8GC=H$tiI_(~ zWv&R5m`9`|Jo02LeZr&FJcDr5C^D2b+9bdb}oHlO9siv2Y_99h&vHQzHRlq1^RQ}{z%P(Ys1R`-i_!@ybH~}Etju{DJiwHQTDza zFT4kw0!Ix*xtdEHU~%4?lT#g7Yf)X#Q6Smp@Xn2aTi71^aO6ebdoO?y>d`E0j|X$` z5cmpQ8%R8Ml9YkkR7jRH?KyG`@9`Gb;sA-+sb=8TdJROf#gG2@4lye)1B?+!c9AIG zvfWDd;sRFp&HN1D{)T~VWYXy0NgUM`8tj#Pg#noK7JnMTaa{bN)(=2U>feJh5}Trs ztUaF*OBAdH$7g)tI0vfSb&?VYqo#y}yBmEACQR}3)c5A<=FUQY?AHuXmA9f3Ds$o8 ztF`p^Tj0D+hkBx7^sK<@f5=DiBrc@Hw;BMyhI?OwTmmva9=XH?y%-+ud+8j^xWWFW zwnkJR0@bdhRp!9%2#@x@N}uv%;#*&)zgl$%?)WV4vLFFq&o@vxQ6q ycaMH!YpoG!z-T!Dwk+AIZz5w)r`@dIQTzc^RlEiZUJ0TA0000(BRNulsI8U&@O11tJ(&xYZ>$pgwVEa|3JIe zLDH&)qzqDlSz#fA*3%j1*SqiCcUovhbj8=Wsk3|M-1GgMbMJWv_+Kn2pY6B#or8$Z zmCJ6Jo|GSn>) zk0(kMg`I*?I06Pp0O7P{?EzqeDKKV)XvZS}$aZvJ`-@uk5fb`r^IJQJ0MAV!x}{@O zgBF&8=6bbhmQn*&n(@`bA+`J6i3PP#qpk&;I!4fmu+i3NY6Acm^qqV;=iEaJcT)ix zvAlZytvyx^O@31+S)Isl@r=XB_4+90GZ^Vn7-GSvT4TVbwdc#tmCNpsF=LxabV-v_ zCgzf(+%p-^IqtYB^Ya{Q4Hbrf)(=M(-#$v!!Rm$5w8Y^PVdeFE9)uM{F~ADK1hM20 ziLq%}r$_{Y0KC1rvkD0%HvfTE#da|wK^Rw@mOM)hSnVX|PGprW1Z@%oEsdZRq1tF; zZ7Za9Y%b<~bqByqDnL6kjmI$YnhY^mtG^Q?${H)BkAq^Z5b~$qiv= z0?ea{QYS^R+MXhY@Sn3W=<#Z50F${1s0RQb-R-zvS_eztwFJcPY=N%Flz>=(H$wCx zA@%fBWnsBnKnIYIAo(D`G6}sGN-9mbi(|91js24CZ;-F9A(;bC+gDsyBvSo~>5MLLA0FY{IwC_ofLV{1#29E*&Cn~w>DF-wc%Q1(T1pvd; z9_&fr_AQ1`kyikKYT_Grisnj5ni6U?8;$C|WBaE8V6iJU{x1RfvoPsB{Fs5>i>%Gh zO#6?FfXOl4t(A$=Y&O4(P)Y6_BK+cKYWDa}Cf`;x>aUn`gEP|Y8@{_mwq*h?<$b2n z769NvJn=LfC^+kCLwcS2vg<_evaLNfvfADgafg$AiZPF}R7gJ_E+~sVFFt+Uyscoe zCU|Me8+-%+y5^cyl$@CWn9<~OaT~eih@5-l44uBp3))I*edOWej z12wm`cyEbG)u$#hzg-ytfV8KjsRwQ8tA<7_9W`*DTVsnCcerb(R%s|l(0KiHz zWeMB>0IFaD*l=`p_uDvM2T_y!RI9-wt@GtT?GWs$Kq+0W*zF6ZA{kS#cc!6zEEbFV zwq5ey`0*@NPutscs&Gxgdiaw`Q*!R2l=gGZ$4t|_YFXB(5F!j<1pqe;BfZo7P1Jj( w<@5Q`TrSsCC=@z(9k3&bQoDK=RjTZbUu6Tz4%2HIxBvhE07*qoM6N<$g6rZ&4*&oF literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_script-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_script-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6f2297bc118e56f00c274d86d38ac53fb4702cf7 GIT binary patch literal 695 zcmV;o0!aOdP)XD{Bq~f6e#eM(qf~`VLWa_X6e@j$E=u2_tG-3wqFvNg*WCnK zvM|m_Hey6!$ihrwW--FVf|}DsZKx)hOxpV2-ShRkcjlaX;gO|=IZV@h4io`>jCuj^ z#kTE66d;kyTkU&vBfWe;NjTqI(h%4i67GK0fZ*YPA~GY84R~NsI)D2#(|6 zc^-3fb3Oa)>@4T!=h(JQx7+@yvMeqxE^r(t@+3n6olXbO z^H^G1BArh6`3=Khd3l*eqd}+B86S{JrP$uyre3d8tJV7aXJ==)uFK};CaF|vC?K+n zGMNkj)oPVwGRf-dDgdtQa&&aW*47r;Y&NRI=r+w{GJW?^GMU6QO%@jyN2SM`gN22K z$aR!P&cVM*2gv1eFO*X6MI-^tyRJ*K*&LXllwxCJgPEC`_yE8Jc9r^ddxv327=}ZW z+U<61KmtJ1v{J0-I}JMB-7K^Q0xFeCMMTPR0qu61larI)1pB^Ey*SrTU&d(x3_mY5CE{Vv!h>LUcLg>l~Qp#>_$ZP9mn|= dcVqumKLHJ))=w?ml-&RT002ovPDHLkV1g|+IJp1- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_scss-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_scss-24.png new file mode 100644 index 0000000000000000000000000000000000000000..969f70a13858ec240f3f770b7ddf6c59d249a17a GIT binary patch literal 935 zcmV;Y16cftP)sj36`?3N~$KVuWt|0ZWS$rIuQ?nn~{Wx`+dlbjJLEzRPpY zeV_MS?)P2zk7X-;V0g!HWJ}|(TNU~{ooT(tg-GYZhS}qt{k^}e8ZeQ}CNS%9s7tV} z#z@(Ww_BS^`z;83r5Ihxc(NzgBFAe&4}cUgpiT3A1jA7m7c|e**fJ z1bn;qo!FIf?0`r6=I37&&N|IxUDV5C@zpT+dVl7Ol1{D$AkIt1zf&YRi3 z*1_aq!&EPj1%WT5vOgPc0o*MfJiWWWX)fYV2z3biSmLh4VDiwvnFAE}4BZB7^DtIj zU$DXOj^Ri&y!?sKW<<6v*OOVw7%HzbeBa=ANdt8^*s|`@uKDDABiOqf^V7TgH(n`U z_c_q%#m@Fz>SEmuz@7p?^tIfPo6ELv%y3v+h^#nBDp)9+*+V0Y=6VmHADA&u26StOLsyi+X^Lfj#Hz^{xR(bQ=8W8X`9p(z$2xeiS%fxh7Vs8vg?o zgmp0&{s3Uur(Sw`HRd$|ZYGxUv6;^>TkAp_Z_Ovqtk(R0(cg;(XcGL7m?!`M002ov JPDHLkV1mDHz##wt literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_scss2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_scss2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..113822775304cd131298d517dc14761ac8d42324 GIT binary patch literal 1056 zcmV+*1mF9KP)7|#)JhH&~=y%GovQU;)RK3Sq#bMjpHktxEtf; z?p=1Vm@#V9h%Pb4c;O5&nvjtp%LWu>u9NBbnoz!J3k6Es_wj=EU0Y~3O^pA$=bV%O z|D5xj=Q;2nLp(`PUvpcv63wcSidrP4&-xg6=5i{qJ|=b<^s%hd+_}-7M4Ob9Byy^Capj$^R86#+{$9?C!Qtmz%DixR#+Mw zWn+GsXef-uVPi*qC1amp*ir#8rtfQNS zo5PUIOJeN$v_F1yL`-X~z=r@z+$y12D@&(P{_Y8MIY#bZxW+nY-c9 zY!X@}QfLBw&27~{Sv5ELFez`mB_jDFHZ*q1b=dj=X^ z)mn>`XjY9Bk5bGjx1)w5`0qZ{Y_|Febh##?!4O8fmHgU0gyxpHf8iRd4;QvnCZ(ta z?&xAA?M!qAJbzJ8w;w~HmC)>FZ|8e{$G9^eqdlLEr4^=s93t!sZr?XR5z?-;ND8SW zIu~yJ!F%3F`4%Qb5Db*~TK;28cp6B)??)Yyb70E!f|$@Rhb)f+6{en901uVXH; zWh6^e!4$;qK+THw3sp&ukl^ifvphV--nU<7$vuib&xDMq_=d&_B;3z-5a8A-aN1`) zY<^tHS?G1-RhJO<1+gA1W%Aow%=|Qj#bM*=m#Q-Hk384j?9l{bU#=@LLT@!w@&0Rs z{j2=>(GTd%1|q=_q4@yb&OwxHeI|j+T9OIIOTa|@;5dDZz`aT4uHVI4<9PHQfGkrs zYm$q3t~ctkpE^`VXf}ZNdp9c&rqgAtkqar#9QwHN>qO(W3#Y%a{RQAl!0|ZN z7)D~5_oO<~uFPLgcUZ#4^%jI|1@>kjz6`Yeqm`M8{>Ju$Qi@uksKr7G6(PL>-0@NT aU-369#AfE{<#*5k0000 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_serverless-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_serverless-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f8c9b171a9c1db68b82f98837d3ac466da5bee GIT binary patch literal 538 zcmV+#0_FXQP)#C#^wA|L(Zy;$jDeG#)w%O@R!Q#X)VefrMD~~%KAf>qAq+4a=s5A#`0NB)2J&|5J>C7;Ll;R!Wwi`zJ zjcyiCzUZ6P{S{!S_F1=&KG;J-v+Aa!bs5cRy~dbFfu?0yO;z;(snu$K0#|lr z(CKsz7-L=lnpu|3ipU6ns%~*aWWL|P8dh9YEo00Vz`MX9U#c~$VPj0D zswe98`o4*YiEhCO!|*}iB!Gy#sH&gkCXWN3!ww~ia#%Hjay z0fU#C^E5a`#IozZn78z!OLZy>$+Eg6`-1B z*+)72B!GxqE_ef*oSU>%_3KT(oC$*9_}bdq-V*gS;5yI@g5W6d7(kX~ThsK8!>(Gb z?zb%KpVF{f&4=C9dcFRps=mz*!*1w}rm9vHMLz;FeQ*!>xrBwT>w3ju=>I@OvPz}$ zysEyVs^0@QfITH~fXmzN4Qo&i-}md5WzA7qnW{SPdERh6_>YETmSr`QBw6WS`gcA4 Y1(r8UB?*;}Hvj+t07*qoM6N<$f>r^sdjJ3c literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_shell-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_shell-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e81ec1799bdb1ab14303c4d96971cc0bc0f4c2d4 GIT binary patch literal 434 zcmV;j0ZsmiP)&RgFisTAO@=+z-D46vB|5(W)ed? zbdj_w(ZpgCi)!?~&p;(!D~-4Y;*8(@a?bEw_@@sFpcXKKV%w%T7H4^UnkN@PJ4{H( zg225ce^Lya@D^wpnx3WsoLbQf^UqBTfD7QbJYXoLb8Oh~*8+SAX#wcyURfJ@%z+SnGXFZ@4lFqZG6laM$iuEF+Rs$XUEQdff4B7uq!0k1> zJYmcU*;R0@G>cXP)qo`>tRSrWc}f8FB9kIaMR!BPMP`nhF9mRDXqZXmUjH$G2r-1A z=&CsVKS5U@Gs}5&=4Yt@m432be0pSC{QkiE4HUT5V-l9U&WC`fc{FW?mFB=wz{Fd$ cExG~4HskCSxc~qF07*qoM6N<$g7zk}MgRZ+ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_shellcheck-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_shellcheck-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a49770f43d782295e9a95bf789793ff0a921f76b GIT binary patch literal 1608 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 Z&v!7PzC`c)4YL3M002ovPDHLkV1fXm9S8sb literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sketch-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sketch-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1c0be9de744691c4b354030660033d1c5e716a1b GIT binary patch literal 782 zcmV+p1M&QcP)h-S&*Z5ZQz)?TDlE#BP7p{33Nk{oh_3np=8Y8uk+=SY z5~VPVnhXDeSr>H?X+{@?$3U{lu{rI%R~K`1besvgsPAg6Z@u69ylXGm@V}QRCy*2M zAuPMaR+MHO)r|n8mcJ^tJ%y^g6>W3#e+-b%xoquj8pi2%2}Q|tHAL_R2o3rD5s*x4 zZ5xuYxH|jky69xA*h?vH$S`%bU_`hI%@u^v1>U{jX+#9O0WFL_WRlUAJuXKOwbU@Ht|-$MgPEO9lpibKk@Ky_=ljY(LXEDOkHkIidXv1B%%=J0U^ z7|dZK1B@pYIGf!E+d$DP^2biVO2PB$I~h0ba2^WY!06|kvzGVSee^?R<^a*@{93DF zCTqS90ASc0(t<1jq#|I&%9~riAhnV)53n3;;6UN|I)J!OQm>~)^%AS-76PIl(@WJ$ z+!drn+$3HS0N}mFqN|p6p<|h=V6APDJ_=?86epIunvbT2B9ML5IvqgUT>z^6ae7wBdqV@uDJ$gbmO_Xn(jM8JoNQ4TFR&F?>aKTWAg_$ z0!NDaZ$L2^4fNBs)qGh1K;!|hT=leS{!IFx5SwE%aF3(qW=npe!tz_RCl>ge-NzUC zVptrjWVWIk0IUoW@YXORC2Hau`~A0Bu5`BIiVx8gAEN268~@Yw8~2OCeJCG4O8@`> M07*qoM6N<$f=ant)Bpeg literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_skipper-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_skipper-24.png new file mode 100644 index 0000000000000000000000000000000000000000..519ed27eed03670d2a75b3158e73a027776523cf GIT binary patch literal 631 zcmV--0*L*IP)r2*k9h#=0*=$l(Roja4t+usQ`jAeiA2u3|?}tJ`5H85_%bjMkPIq^AY`M1fhSuvf zTg~QXt|Lj;ZUTS<0OseVXOeW?!!V3(uT0Z~uJ40VYO9-`o^pud<;6pTQt9hE!!T@< z03e(Fi0$nPHa4=hChc|``TXbS0Kfo1p-^~l7{;t1Ts+INtYxCx&0}@-HD+ec!|(T7 z7GGL=ET>Yb2Lqe2SZr~9{jEOi9;}$led;VM+V$z+~JqtW`M*}#k5IKwb- zy7<1sn3Uq6OU_9r0N}>$dv{k>(sHkEU=Apy$FGP}HC3%xb*c|XSO;8_6JS{u+5FFQ zgpe;olak5glTavR0-&QZkw}y&r325KR#;_>)>Ldf3827iN6dIEpG3U@cu08k->?2lSwj4}QVzX4osF-8ke RET@_&=gaxiIHe1#S&>^j62fE0u$l}Vj_vU z@sUVGgDW@0g>LLZB9%cBH6ej01c462K(V#0oz{7^^PahL?>)yw=`fdDrws|;>g4>t z^Z%Xmofq(!gQ+F{~um&wMs-JnBshtn^PMOhPZ#_X`Ci{hG&u9WfOCz#2V4W$5l4R>p-;V7{?n?{ zt=nbfXC(t99nPTssUi}W?9TzH0NCoJv)+CSZ&JVTjm43;V#D$^y*VcmbRAoQU^kX6 zcTYl{Uj_vosP5MRc&+sQw%1p-^K}F>r(FhV{xPKhb8(kH z(|>Z_Hu+&Q(jl_}u$geboPqyv6jzV5MRy19xGN0HVLyp`(`jG+k-9<=F z6}dT6ZfGI20^Hx^H!!Z9i}Z{quGkJgc_;?gU=~z+uoS*d17}%%kF)}dl^a&fez!$u z&Ttg%V{xQIW)vdAw+uil007W5?xV#(!y)HDj=z1v12y;Hgm4l;&j%6MJ4+xcgYZd@ zVfNm=X;@myxbbd_!Vvb$wf@RI*q^)^$xn+xsxhc*mvw_RnMLHsCjbBoXB;Rk2|8Wc zqN4T9Bo+hp$jytN4<{z?8UO&Gl-Nu8ISKX-<4sM6%_zlrEc{@+Bff(PXflJj?;Q~n z!N=8_4gkvjo}H3l^Xpdt07`~K_=E?VtRK?QSAcUci|NxYs0IGW?szCyt?S+cmXbd* zQ)c*IiorRMgId&^tr=GGh1HEsO zJlAz~W{A#o{rU?ghBC-Qr#{wrt5BSl^=a zfXmK@*@8VQrl@%^a$4ZdkFhT&%*nUTME^B_i^m2doq!*p(&cDRE~UJd(uV;==vSKZ zA<{!;DDH-&?j}KH0yy#kmXckTA%R#7D%^XpFFXOR0s(-SRi-<@2}S@wDUKpiWlK~6 zH=5P=uPGM`S`=Bx}>fpQUAKhIGolE<8>h*X#AYSr4o2+ zY5{d5ku-km=uTj2U4YPFI?PBJrh(-29)0X?oP}kJ_5tkx){DM)rPnoW?>hzVi<0X_ z0PlgZrcYhI%lmix9yroc?MO@Y=d(4j z0>X?Y(H1m1G*PXg@dGX6!Gkl|YN;1(&F~LQ`z&RIGy3v06s+%D?`*LLXIo;&0glo~ rR!2OZnyc_?X8<%)pWoh=HW>c_!*k$gu&uP@00000NkvXXu0mjf&uUVw literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_slice-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_slice-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8eb16ed55b50dc147e6da6167ffec739a303ed69 GIT binary patch literal 803 zcmV+;1Kj+HP) zNfbptyH=4|NsGuNY%(h|NkL4rGBb5XXXdn+anf|0TiLg|yyx8KIrnhCbKpOh7@3rJ z(y`1VVh61LsN1V~Upy+yZ2D`#iX%_V7K^12WDl??$h1~LDo4Vj&exVEISmWe6*sQb zMBM}y1Y5xD7@Zt@EY`RP23?-MFr+AdRl=o^g4|P$TTtpM5E%@Z!Yqg&Oxy2NQYsAZlTeU@eH>ce_o8kh{0uwBj z!ccI4_?bEYUEhYs)r?IGP6pDA^kd4lwBQ01!PRd|aLotrO$Vlu`kf z2EP9sVWAPh)8>8vHfG0Ritw#Z(}ZLB^SOOIjdYs@gyftPO-lj70X!mhLmdaa?HJ_d z;~omuBv5rQm8SLqlB_0dRugs2{k&=)@Jrox;B`2FAag(&R6y1JE?%|`us+Mz2VK3x z+^PG*y@p=YC`PoofiDpGl^d=4mVWA6`h$*pl@F-_C{Z8(kRQ4<)fo_Y@H(cOFG_R3 zm`2MjX?zDNWm@Qp_ci4iDKM@NxG*hn0HI>^F(7d3QRhIlPXqpg-e;aDs4Y!$Y9jf- z&_BSPny77~=g>F-Ky_KhbA{RoOnP~Qf}_;->N0!X*l^MY&MkHZtYB8Q`g_6zJoNS=I_w1BGA`^*(%x5bcPY~_|TEm(=ejSxs94jMs&qYV z79Zb_Z!Oph;4v3^6p@q?pE+~pRmX8gg%D6Km%l*>%^x^$fd6m6sZ*z3T3lTG=*pEV zBl&zj0080pesXkl^v9v0q2q@SA3pb=0W&i*ubew~Zl=G#KNuVwu(R3RT_HFGL72OC z?OJhVWra>mOdLIOjN+*L|xs#q-Edi(I9p-d*N$Bc(j7)GCd_W5G7 z(Reau%o`sce{SEtea`)S@co*#TCHngVd0C57cUME4i1`cz4`jKY&L69s-|w=HkWl> zHx9k=+O{oQw%oaN>C({B($W|6^Yh*J^CEvfq?BlCYU+cVH*Y>aH8u70!oos%=gyr@ zUe`Aa!zcj&Y;3sKUDx##MIqhY-4#8nFKykr)t;W7eqqm^JwG2kdi2J?z`zf?cI|q1 zY-}vJ2XNxVi4SIHXFs$o>#rWARNk>|83f@*BBAMi;JH0L-CY0xQ53fw$L1Jg$ryuL ztyThnQX-MqbL`l$007>-2e7`rK4MuGIe75kuiJO*2tC(D^YimhP?hFl7R8!WWlynZ z#~*2B7=|1nY+AWGCqMZqj#>DpHjY{N@$~c$Yisr5?sXPz1M?>a4+ zP^sd(9s&T!=kw+!fUfH|lgT8s+ie=h5%+yR4kF&(yLYeh-S^)ot}ib?)oeDHq7blc zTOA%AHg}9XyWx95TZmX-MWyXli>A|Q&~<%z6QH-ZccEM^bKAC)2~|}*-wP#=S)md&~hBRzTOZ>0Aev0Dp9HJIH^*p#H!Wmx0?W|RO**XrE+Iw zWhImE$`!&ejEO=BC>RMLMXTkwJeI)*>tIdQ6hc%*rAUnhXA(y=olX_k*4FfDwQA*Z zxoex2JT^Aw7=~fh>-B8M?GS_s<{$w{kX&#H5^+^ksX{4M6a>EC;T%AuG!-XQ4Y-hU zb#*nH&*$%qj*hlBCHNzSX;~IDn@xr(Wl2rLejEuFF)7s$F^NzRh9W_!WFWA+(F$Wt z!wNxYZMDu#(}YwiW&Yjsp06U4$(WpT@I4=8Gij=68c7h13ItNsk`!SqGwC!Hl4FQD z1FWDZie=!%((^VXV{8+E{1X5G;IvvYqh|x65(OiKFvd6tL(UlIQN*~GRH=|y(Ws&b zAw(3$veW4R06;dIwH}zjFpO0~2)J&W0C0#o6I@CF!6lM_r4U#m089|3D!~8*BdmZz z3D~wx2q91?6zUHI6bgl_y}iBc)~(+%M#0Dd$5==Sm{KK(7{dqwB@`=|00;m;09c{K zDCBdEMl(~XR9IJ6*VPA(XmWD$>sqb0I5#)3UVA~Wv4@^jLWnGtN>;U6{d8ht!hD$avDELL{gGIj*|Qe_ O0000a8~ zR#HXs(3W6JN;IY)(h4Qe#vu8KG`4~gt+moZ{je2{pg7YelQfy!JNK;Z$IP9%llXu{ zH|(Fyeyz0^=K%k+sihPjf8w|qE4kyva4-^T?7p-8KOgY!j?eo|zp-=m>QxX2R_yo0 zN0+1a3vF#{Y&XYPZ1c{B(GF#(ozw#D5aCEDP*GLZbYJ+E>7%Vbez2qgT~B@Xvd>hz zg#w{~A`k&YfKa%wpuDoQX}BY{3jloH!o8b5S(9Qa+3{)ZmA`A=zI}8X4D8pGEWN_C zdo36WuE-8(+dOn{_=f1o;*#PrQcv}^oZtLh&)uW*o4>VvTcPHLM5IWxXG_5!1nT@gf0u}?%!iw_D{0RV(7pa{$%5D{^U9a~HDhihMT zY&qt}45d(1R1CjaK%L^gw!ufXv<+>V^%COB)OCpA8K6b9LueL4g^9 z3I86qkx-8Kt%8S`;sznc^J!4k4pQIjZ}@thP%SvJWMrCtDzwr*Gk{3pa!`w@6f7mG zrG50V{tN}<2kOsmRK#h4+~}dERKYl9+x9PhpFjUF%7egH5FRWvqrZXxwVs3{4|e35 z0|0g%t-b*0jY66A(nT_0S*fb|6uI{_0HANI@!LaVTg$J`OstxknY^p>%;R6qR|){U z@^Q^q4%L&Q;fMyZ{#PoJG=fEaI9+vPO+viy)>o{&9pP{=FK5n5wbXSkJG`j>VD~^x zABB5!vdnF6C2cDnpEy+4x$H2ogdc6siTmFs(M_gd%q8cN@z}({c;e?sV^76PZl3QS xdi<-|_tdnO{BZHY_34@DGkulaOX;;}`xEFZrSvFg9kl=e002ovPDHLkV1k0G1h)VH literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sln2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sln2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d4a8e0fdbcdd72f3ba538ed290c54f1d0c52e41d GIT binary patch literal 865 zcmV-n1D^beP)@F1)azH{m<`rE|>cq;D0Y> zmN4^PW}fp;;G$M6tj>ST?Tzm=%v{3EAk2zT=j7Fh*12mtuhU4NRMvLVZv8N*t znX%KXKx+CR_DlrIv+kkqQ$KR!3nd|O8&AD$`iM8r-WxI=%UrSld=%U~<>>wReQIyu zwsbC%OB1kgl?Rv^)%kTsa9^bYNu>#J^OTzfPbvTaW?)QYs{m6Le0kf8tngfPzU~4M zVat9$EKw{loHvv;L#50?S4a2s1O>-#qVID*?450qkQXh6r-Y^+x*Yr5(`T_E)78-p zl`;qVD`H9lQ7dB6n)ygBPyDtfc*RyC%CvK^4M@Bg)3|*7QbTTZNP~jow@{o`VV%H9 z?f@b}K+HNED~fw0UpQwq5!CLi)&p}Dg6V~kTzn;OgrgJr_F8d-#PPruZv8j;H2}}=(9YW=lQ+w%i%rnKTBn~ zwEorcIVJJi3R84|1h+0K_v7=QRyGd>xVv&($KmdZOY38I9N!7{9bzEqV3WT7CNNW% zPF$>X|21Ia+mn$rOFxCPobji?8;3`L)I!n$yA8ej+)&ZU^9vu9dc$(O1Iurhmh}Q> zqNCtXf;R?^{}`YPb^_cn-t3i2p97y|?%>|nZfnXAxNCR^~0dT-+;6zmdcMk;8m@%`Ir~`L^Rp3`(V*uJl`lLzB%0W3#R9xk9Y7mhb z5qVie-V%`uBJ!$;%t@Lc@k1^@RX9N7H(rPzAp4L&M5aV!T12#@7BM?W^ABEpY5>6A zD&_7bVt0{#8%a8d-9vgcq;ZSVDF4B$VxVrBjikxE``9iL3;j0O9mYoB?kJt`bBj0nJ38->0O+nu)DtKO$tujwP> z`H{tC1}G5~=wQP4e38@`+cm1zsx`8B-7J^3>RVTF-BVGdkNk4|dc0ZLyivZr{>j?f rT9U<|SxZYx@4j*F+&lki=wbC2LQO!R&rv*)00000NkvXXu0mjf#f+A> literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_snapcraft-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_snapcraft-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4f6f25700363a98b04913d4143c14993946bf8af GIT binary patch literal 688 zcmV;h0#E&kP)KhLbL7Iu*qg6bFq1(npL7hRQ5>JYuKkg)2KH=#>M+vSH!5LACa z*eW0Nsz`$51;8OraXLvU$X*4`enBump)60yBnE4a@^c73tTH zm3N&$VBxO;08TPqV~iaKwys$IEXqBE{>%Q>q=@Lc0RY{T@qLJW2>1$gyz?&Rf}KOd zz6#Br78URBbvs?&m+o-|063}GZiATswihV(0jH{GXNOuQ#xh&xGC_qMOC`0asqscr zFI)itJ?YpkwI&JdECA?O9_PyPcKG7(z9^v34pDDc*0 zo5_1*yz1t}pf{R6g2+J?G7A@K4-`%CQ%)+jZTYzNtV)m*XbIQ1-C5nE4n`cTYl2^Z z`p^dzy$;N*Sk8*-xkBau;$Wf35v@qDU##?r@={?6VL?;_;fD6nV!dUh01W0Df>Agx zLeyhSZ#V>Y4060W>a8=VVa^x@t=^FA7K`5*|daF3sdC!trop>tw0sMFFpT z-`f@T0$)&?BL22#YcU6xXL{plVpAqN{~D-5Y*WM^dcIb3aJl46_S+>yDiB*2sS8c7 z#~l8U;L78uFK<0huzDua&^}XWPpK-HAfGoOE9Rur5On(@)+Z+wtL#nQF7$)`r}_a9 W@XSMZ@r&*N0000%Ob*Pj4Tu^B+&9&gp4{GB+e75{q%wiM*z!u}uePAm9jwLS7NM1-Q4k?3jqOJ5}#WV`JPl;D^tb z9ffY7YK!32>Rn!5uFG$3o(C`h)aOfy!lP|~19(zXQy*#|-~ey{1ff;H1E8wBc-GBe z|7&s&9-`se4Kgyb)+GJ<8KLXJJ%ZC;IbCs%^Or6oA^@J*Q0OLb$52%fXfvBWydU7r zs~%#pC|{<=dE9w_-Bq7--skh=7_nHCzTW2yz3cy*Q;{}R6(i{PyMY2TF*wj?flQ1J z6IqzI!6OUvjE@dmyrIFj$zfs8?{^yp6eYXg!n2kpRV6$(V;k^2Jcp`UyxHKiB{rbQ zkd;R>m59e#EwwoiPbAiG?J^P~6Ujzy-eF6Dh>(-xvNbw$^K9M$r?pNEW75d2uO9^_ zP4oDPa!ZlBq?F9;eKuG|W){UIr55j0`I+Q!%GJ>D$q*4$k#^H9J6S=cr<%01bn**| zsHtnV!A)Jc>g7mbF==V(RGz&+S<-SMavN5DvIYWYXqKd2Yk=cQmuK93^U>MdKaBgt0LEdkN?1)M77m5GIDW$OH0Hw*F4v%Dl;7& oB}PihQH8x5VmCS0yV`mE0ZCBO_TbmdQUCw|07*qoM6N<$g3Vn(g8%>k literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_snyk-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_snyk-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a8cf8c8fdc82f4a3cddb0657a60f43ab170a2e29 GIT binary patch literal 928 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 YUwg0w6P)$B((Y&PfEet+)NOQ1OCVCNbp z_=tuJLbVi6Y-;#1?~Q>@JC1CerXrVL7Q~H)nx!x#DpUEqH!f%!aA&Rm6y#AK3WnF* zKCI3Pg-Mhy&QL$HGox~^B=AL0c@PJEcZYA3+} O0000&d7o>xFfYVk9n$Brdu+C+f10m@Gb+ z`Cx*XCK|I5!^7x6ozX-l1~;=&Tr3-!MZ_02C%O!rbxcs~+J1$Wec$oHwYH@gSM)sH zd;jPD{`a1Ha^ZgtS=R2R4rhtw+9YTVhH<%2oPD#$o(TUZ2BltK{o2}!{_$ z(EsHmlT(o?+m`0o;Er#Sc}8CJ4L!xR)#aZaeZ8qFIAgN^@EDU*5r7*FgF|e1rC?bG zo?^RU=c9F%d*A<-t|RBNRIM#>u6!UlDz>m#dp8dtug%I>h4SSsmb)8E>WoGdC)*~6XX)>Y?2s1{m9g{S6@Zu|(N4P9F{-sV0#G0SJCFIr(UF$RiFD!%Z*-t_59Ik5nWbg> z+{Fcv!I2=F_6%gf0i-TD%I~x5ZL!Sxg&+MR!Q8rNs-^QY_>0mr^8Iv9MUkFm8${Oy zI}tgMwH#OFMf3PGCsN1A*B}|CUSGW>vffY)U$rd%+~?0-TrTsv;!iS}J{mswbsYcz N002ovPDHLkV1no|#4G>+ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sqf-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sqf-24.png new file mode 100644 index 0000000000000000000000000000000000000000..361152731ac62b80af9f876670a764d6e3a2c899 GIT binary patch literal 762 zcmVCa?n5GGU zq9_Cc0Sv>SP$*EXR&h8Sw6wJRkg2ZgCDSxRfFZue5<&?7%E}6ZgM;Y0&hqjyqobn$ zjEs!1zP?VSQXv=&vbD8^s;by*HWG;hySux@VljL^AL(?Op`oGYK;pLPqTlbAxm-?; zkB>`0s;Vkesg!JQZKV9u{MG zco?VC$-=?{$z+oA^K*K8d#z&M&bGC+mCMUZE-o&tSU#U;dwZKgp>VH(1el+n$K`Ty zb#=w{^)-iwha4Xtv%kO3*w`2jhXYO1=;`TUZEcNOtwwWmGjP*o)oPVesl;u~dYjI) zwY9zWcsztcA?$WL#bS|zg9D_L07RovCMPH9>+54~ZjPg)BNRm;9*R zO?{yP1`j-{r}R-24W2kODqGWTI)B92gjoUa$9OoC=Vvi#Gm6 s0pJzjZgl@ml!3QE{xA1G;t}`Y8yn^hMNix!f&c&j07*qoM6N<$f-}cfp8x;= literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sql-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sql-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e5dad613712cf3be339ed498d699cea33d154136 GIT binary patch literal 877 zcmV-z1CsoSP)qS1FF3pNKZmJ!%UV>t=PwjBokTrdF6kzI5o z$!#K?-H@TZV;k63j1YLch3P{?3HX8O{|?#4bG1}}Ci0u{?1AM@j{`_w`CNUp5=BeF z@1E^)Q&@11Rc~E4JL&*b*)%|`4(lzBrT{j5huL1>JZ43tA}+XyO;>Hr@6!Of@>x4- z@4}DPVwOkB1N}%ltoQW3xqd<7(w+%HeV`xs7C!>sK;^2qL73)9D#{RTQk5PfeeOAk^3Di41`6y16L zU^Es6^aMF#>%_NC0G#e)R^`^rqz#rL09`Gtz<0fE%(eg@0e%Zp2b@9r5!^xREls5YbY*BGv3Jw@ zPTU62#c&Ck%xX{%W^c|m=?U0PYPCsQTY3zjOJ6LGOAWq}YW#Mq4qR72&$|Fbu! zEuKx!=D%ckns7__J9iAYodg50xW1a{7J(g01z2D428z}p_5%|w%;stWu^*>(w(8fv z6MkvanjC%?(U0P8sQ>h#ig{BQ=WX@Le_r7buTReaAMzzAKofI{00000NkvXXu0mjf D2poxF literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sqlite-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sqlite-24.png new file mode 100644 index 0000000000000000000000000000000000000000..91a850089197d808ae6b3c6ce43ed1b222f124ee GIT binary patch literal 714 zcmV;*0yX`KP)P8KrL@A3<8+B%UGxO%&)5140I$zJw1CPhO=YRgcd+vSj!WM_xG^Z2i zP63Cp%|qg`*|LD0w};Q~iH1*GmIVF!YOQ6W`%ay>PMbG1MzHP}A38GtfmQRHL#-EE z_B}n+7~Rmq?{_}ViR*;C;SA7B&N&IZSpzU)ni`@Z(pl}>d}4fzq28W?c^o(jfF-*M znm}>EayE~M_%he|JTIR;0t8?brNW3rywy&X2jmRKpFe{i-;$W01IQur0%-SA2||&P zvVe3}qjhb9(VD^Dp2F}RN?j^SKPVhe&BYjIe|$$N%ZQk1pvg-)h<$CnzNCYI zRsHAABok=YB^0fXXOoL(yy*pm>-0aFt_pB+8e3Hd%#3~}ux&eT&glkj0fQ)cO<&jD za{9F$WHdDzz)3IRW>O#ofe6rylFOC!C0kVM_FJC&i5+QJ)TzI%-qcm%v2lNZD%XUt zax>Zu`_aii13)uE8~x8;Ra?-SkKTw>e8hWOI~pK)~6)T)% wn1F;T<~Jo;&K~zG-S8m;5DrZKSKU^`Kkvm8x?0+CiU0rr07*qoM6N<$f)n99xBvhE literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_squirrel-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_squirrel-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ceb7b90fabf3d5eae5ab30e5387b86b5a03afbb3 GIT binary patch literal 847 zcmV-V1F-ywP)*osNfgY&i+GqA(;Pa+EAUBr77t*+vQ|NUV?o`~WtH z1wSByRm36-egdli*%*lxLW*JuXAs1()4^ps?y0(lSMRat0o-m6AeK4H^X|Rp-E;4I z@DlsLI6zDpcng?L2!cp)ANUFI{||wSrzf26$Md$ZErHU|3?$F%LAbo-->&=dXTZjP z5-?5XXG^(nO~c6NQi3tZ-gX{q&C;Je){&* zM^nXAj~mG)5eEFR>61xrPbs7mLTRqOQO=#prz{~111DvPCoh5(rS*dK&tMDQxjt9^ zWF(i|anre}0!wQxq|#Vod*jDSX|Y&oU>Jrgm8zx^<}s<%Z~YdD3p2wjAIz1<2iOKc zAQfLPJmq*Py@P+W?x}~acL>-5azGQ%q8ntITzU6IY1iTawk4QZ48%uy6DXP8%+QSS~><$#Lg_tg85(ljhz?sP*R;xa` zeR-l-7_+g+xORC>%omTfl)t5YUJ(SjDl5K~z zhDt5^iUA*BcLsOvEN#@Z?muor12tdrXx-!Sy4M@3>~yeF^_QE0{CrSu*P0jKExH$) zf&B6O(PF`|+uwoG;72jd@b69O!V6>EW>|NdEUz`fOMo{>pnr4HPTIQh+GzIUQOBMt zWs^qAG7!S(h$%L`kY}~v>HSLm%SNDXbsF3id#$DeoCC^9ON@n5Z2=YF7hrX-qA&5U Z@D~uA99c(X%0B=A002ovPDHLkV1i@Tio*Z^ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sss-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_sss-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d22902350bd9981639374c4a49e6cda99cea78df GIT binary patch literal 1000 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 RJ$wKF002ovPDHLkV1fv&NB95$ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stryker-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stryker-24.png new file mode 100644 index 0000000000000000000000000000000000000000..89f1c198b41f4a98869e9f26ecbf5bfc87560c59 GIT binary patch literal 1095 zcmV-N1i1T&P)gDFZa5`c+>$<8$4 zegq!yMd1Q^+bY`Kn_zf&X&v`M4eo^+@ca-Xx>Vh}jttJ;5U|wK5p`T~3c-UVpG;&i zU%8A3x;rX$C!*vJH=*28k?O1x_P+8;WcdQe69>wJ0|dHf5J4B$mQ4N>oKW`7R? zpzYp3YhNzUw^b7SxO}}2nCtFnrr7iCk99fZ9mS13-ydW2NR+9;FsHw$V`1DPm)4kZ zvaA;ze~nV?pL?OxPg3{Uo_I%z%8Hbx{O3ZZa=S*ps-=(>C{Liv4IYh0i5WV8hNJp` zzKRNzpqDCBYXK+}1KRI-6U?5om^cw(^-5reR+oadc$6ALCy~qs#KAKK9bh;eu|&?M-ZZNJaSA6J5K^H% zzKoEH#?~y2ty$*JTm1HQoLqWa?|6!#YbovtT1>2lETB-)^Xr;|{D}mqgS+|bbO_fe zwk6SG)A{Z)M$oH}JDy@}Jxw-fOW4|j_DI@p3Ryd{FSo#IkiZZ3GVsA&%#Kr7YZOev`~40LBD=L5u{u{?sgTNM-5HCkkx(J$-$*4(*g=ggBrtUUGelvs6OouA z(og^(y;#{+0ZPa7PqPn592*!F@L9RoIagN{B{NvBU&7eCh_P=G?bQjSp+LdqlaUI5 zsma5=r^bg%?|S)1!!5j@*Nk@H;SxaB=g=QpMmE^U2HV#v561gzSh{HXK3$5*hzh@1 zRZ*pFjq7722!L$bWTRyPb5|baL2AZeYA9TB*bFHq16ttemwq{W<)#3DmFL=H1>N{i zDc&k+vaZMA${M!oVMdt)y9)F5C}wnnPXcZdQ8ld*1h)r$6q!Hs;l(tOpJU z4$t%boacPc;Q;@0(2Wur&plr58+yPP;XwyKdaL5t)J*|2bk-M>9XQB_>X-=(0)x)v zO$=4VcC`5a6(F*TcRhWVPfmyO>^kM!P+G$EC0tM5H@u|m-i34!xPD>(&(Cg5_&C8# zdCUX@0&`}F>7=Fm77f_fzOTgB)>q7wXEMi<7B@_zAb#TGP4A8`8lVt-k9}JHuebm+ zK^t*VLvQ)RtSK-_)n`q~vT8rhUv^bK`>{>OZP8Izy-u3-xUZ8OIKf?H-#WNDDxFM@ zCLITu8I0lS1g<6(z8vkx6ubBMGTF*yj~34faJ^uU(h|zIkpkKHtvL=gMfuxfrvd=* z+}J>8p&fdkz|72$NJ5%PG>u;Z2zMA;e9h(6k*ol1LLVw$`mQgbv_yP305dTHHQ@z* z^}4^v3KLhIt{muBL1j005lG(ngnp zKPnLf-4X)qNa~(V8N~Z^)$eDMJ(=A8(cS|&K{?@*MAfolFgOJv7G#NMvI1Im>`5k! zsCCKdkfmW@Wd)F528h&co*wpA<-T&b0svxw30q>IB$A70zygy=cfb&W*JT9&z=g;5 zk82J*WOBmI;fe^5BY->s5I};Uj6F6}%%bqg;?=3$XF7m^VKXo%004SxcK1JDeF0X~+|y5WBS0Ko%CYYpow zUTkj%0K_*uxDvkCW(lj5Kp-X%C?&^qG}3)?&w>EgMtsATZN&U3feMHPfRs2f0iX-Y zrpmmZnkE+o_^Z6C(6cZ|AZKRR=~;j-1x(;!r@N{D+L~Ga!F-_tdJQo-jFjnMWae{% zX{XcObou(4tR~MDd2370FmZeOL4nB_hB>5?x-#6=GD{p-ga<>LH-|z>?}8CItgRCT gU8m14RO6<`KT$f^gB)o4XaE2J07*qoM6N<$f(dp0>i_@% literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_style-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_style-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1cec5e6a60a5fcbe3fde4151e47211384ef600b0 GIT binary patch literal 926 zcmV;P17ZA$P)#8x+dS<`EY6uzzin)Y?*b1I(k0G-}Sz>Y84oa^V{(|M*R#}NXgVQ^^YIu1OR zxbaTZS<^B26Kf92?~H)FuvY&4%;J zb^yv0izyfZ8XT1Wye!0L~+eSF`XAJk#bCzl?)(x3R zA&5%~$Pbv@_5oUhaugaJIRzOrLO>zg$CHH&SLYj%V+f=)T&XnKHJYX{l=2&_LG?Hy z@Om&kInKHFc4J7vksoe!B@a~mbrI7LoOx{%(>q7~o%I6v&Mz+BX79->*skWp>yIV^ zj!tf%?P{iGZu04G3w{pOqsi`?vs}0Ny;Nt%*kEE09?zwjU2aisI{pm;gzN#ph&T(` zJ}M0-u?JSuVdJ3pl$7@dz-}i4DkJGdAiVew<@%Ygwz`rBD%EW^W>Nq+-VRhbH@uVx zp!kvl+zCv_)eNNK_h3x}rX(dr=MI+q90>qGu=bk2y0pNy{2-qk*vh*vcpp1}x3}l` zc+WW7N7H=vhgXl^11p}-j8ABU1$qa-_g5FWbn`Es-!jblp%lXZe=-F8QflzgtL?}`O$I3a4MJpqy+9`JZml$F zR=uR{Mhm=Z>H>a3h;O^c A>Hq)$ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_styled-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_styled-24.png new file mode 100644 index 0000000000000000000000000000000000000000..da516d068abeece5a8d790234b587d5670d2089e GIT binary patch literal 1133 zcmV-z1d{uSP)C1NKBW*!zKBpt#PKV*<3=)4;Rp-`+sCgazbunBYPA4gwyV0t(E{P(<{=Xt$9 zpXd30fhT-uwgUM(dy2carA1ic^>qbJE$W-?bXyrLWpj6ch9paTdvY`tKs#Y810l!5 zW3FPR0f5a6F5l^?FYi|Z{2J*60FZhG9Dm-0pJfer*pdUc z2CU95j!u*Uz!^p3&!?3QdQT_r#?!CG?~D>kR;tD|gS9=1dIlIl`k9#k<=8-}HDulq zIkVZa^thP(WxS^t0FdAMot%7*O)h3Tv+83rlA?r?mHlHwx5X#+EBnWWPDL&W*m*uQ zRs`UlHH);0?F38sA6Mk1C&X;p807La*Ld=3ox)$@=Th6&p%XIQr(*&`#od~}RjF;~ zx}Wv;9Z=rtBW1qgErq|yd;4^nYyd_okou$XgI9@is`4{8yK!tkSZ<@5dqei1UN&6__?RDbqyE}9`J&O*^s3t~o0eo-$0vZ6YSS-oztLESENx>#$Zg zAAjywRClGLv#|W)FJERJ2(^ail$5m)Fw+`NeG+nMqVuo!E}yMg5hZl>;w@e@tkreS zOUHv9m=#Sa$IgBo?ZtB^-;jo_rWV{cneHcM7c|Fh-{Ku86!=kd!{ge~kavaqoWH)u%eN5Pa5P zTX?V|fI09#)kEsk<6qqPD(iz#2d13^H8*82=p*7&$~$lUkpy7oKMg>m$ze7hq$cu8 z%Err%e8?dPqS?Bsu%deG+OIw502m$y|6k5OZhdXN84n{900000NkvXXu0mjf{`4P3 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stylelint-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stylelint-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6121cb6d316bf4637dccf81102f2487287489ecd GIT binary patch literal 882 zcmV-&1C9KNP)7(jat_Ox~NRqb^)nn}DTekwvo*q++FrSPNa0 z((YXpA&TI_g|389r4`(?ghCe~EyH_nCZQ-(Ok1@sT8oQ7FwDEh&3nV`%VZ29g8%BC z|NQ6w@437O|96OAEH5uV)9rS@1D+F+)7IMWM@L5=h=}Vqtg2>ZWo37oriWGa0&urf zD!nl_Hum$TfL5#ZymRgf@N7n123COARrSL#46pmo9Z^H>8u2TlVjBA=@2j;yy1d;o~5ek>yI0%dRZfwlJF`1ts83BX#r znx^SZ;IJnu10(sSs@eb=03x!as*;`e70dx{T5DGU3_zt)S?hE<(?GKz%%AWQFdGDc z1VJFqxmi{H79bDu(ClBO@axfOMehFMG z47@f!KW_mR7Z-<`&E^vT8F#Rty%+?+S3Y410yZ`_P5{4p)UM&-;R66eLqqe%n2!K5 z?kP`qKbw6Fn*th*#_zx}Kzkx%rU0CCr<`*a07S%p9u<*e+3er|fFKC20&^a92%uK0 z-LBW`zhwbaUVm<4V&Y0auf72Q<#PE9(9X&i+wJzQytlNpv=caxmABT{*UxU{Q~V1b zLli|-5xD_8DIznf8UlAjMC1qO+%L|#{Qb`l zGT#20l@aBuVzFYFk8J%0h3XX-YYZ0Dvfp zW{fdUJLd#=7>423+nwDuk|a4AMbYfvEB_%>)u`&g592?_UxdspG&p=BZvX%Q07*qo IM6N<$g7?&u9{>OV literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stylish_haskell-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_stylish_haskell-24.png new file mode 100644 index 0000000000000000000000000000000000000000..742cebd89163946ccd6fa71c781a830557cd614e GIT binary patch literal 760 zcmV~bV` zCFZXaWqfN`(&lw=v~B9Y1oTyR2Y@FI>XNOj;^1&_emeom4b&nZH=`!sqwS9Em_v#N z0DTv_$1t36z_wPDHV=nBWE$Yw06;{w0SO0eDNRqN=4k^Ohg&}zG5s!ECwi;9PG=ne zpmO5vz@ifuq-&slz?*eIdCbyZp*2yZg$EBy;a?nB8>c9CY82JjaaotxaXjLHAXH5MsB{( zIAEwIk~6RU)4+js%+cI<;?k;^))+}J@M55U8dIt=g zb@(L>91TQ6)29Yq8paJYbLVdLuUa7MuUJ9)WY~feito)gZz+$Rx-l zh6#+RZ;pm%5X#q4%bTO&84(&VOsw$*#*EQ}DUT@K^i}orBc|c+@@Z2vbS)E|^EgsY qk@Yh;XY$^O(Nd(AUu3G=@%aO-_2QXwi`>Zo00002f<>&1WvfQ2}K=T(m|pQW+<2&XlxS0J?H(o1gTAGX;<@%?;oCr_Y3ye z<66wl&K{kcn>&29d0b1dxVYFqJw3gDw^_U0o{Wgel+wW)3e3#R40gNS#s2>Od#{|$ z&(Gg!`z70NM?`Tohjv>miXzXl>^|T{Ne6AeFX^J~HAz)jmP=Wdy)0=BI4!AfeSN)M ztJUrXE=9yhMEu@pG=9l17f(%1Wy8b6UrE}M^pouqzyaI)fF}nB2T!f8uD%lyZQu#p zF944LhibLjvZMvuucnl8NoRH((dg)C*q*ihwe2O8Oxp_5t@4MUn3a*ggO>s;W8#9G0{!=^>z9mgNcHE=lKr0ZC2UOF&K19Y6^j zvVA}BTC3G6cMEiYNAf&B3Tyzk+cq!&j04}->-AaSE!*Ej#7B}Ew$Dp?3OHl?OJKez ziUEKeU}0flq%6zNCB0%hODWwXsf>ui_R{u!d?M+Cjg5^-;F6??s;c^cKP8b;A|h@E zMkJ*y%bx!y(ChV%OZpjj7?>Fv8v3H!?JlR3jseGjUxB4SRVEe}^>ynPxe(rkZaM?%ebUMwds&1>->u1Nt#(M2``{V5$_JD84 z$Hz}!ul!$uE9rDPP1~boS$@}QwJzLn)Fx@}*Ktya&eHN|b7&A@z@cjlXyfj)iy7iHa;y8r4J zrepXZO%D6L+J&=`k@3;+BWuiQ%Qgq@B64HDhC#oZXhIHZ1%?7{#^OVqJ|1My z<6=2c;Pv};(i=5Iq?dEq1w=%Dxtu$7G~y!~(gB!XT4Qc0OS@zI%5yjry4!_cccFV+ z40<&Jx+^j%G6{Hq9Pm&nmHpY+AtJX$Br6uOn>G26EJ$*#By|>pDTOET+txc`j-B~*{S_WOiWH{hv{A9>l@(j46lzQ{~h-QE^5*7N z<8r;(rBZLx>6&}acF?PF>HG))&9=cxs+2zy4_;GBE!f^bDb)sE08Bqvyy9{|qh(lo z;&nTTM+1z-hlquJe9e}5JiEf@)D~UC{5Cc^v0$ySxkw2L6iV&-JsR5fI|zwPnfZ5F z(i>Gw^WSc=30%K;;+)^B;ntkw%T3Z7RX(m3nO#i(;iO)%2^6Z$>4l}7mdaJi_H^6N kvKw)j#RIGN>C+QG038{V*mgE07*qoM6N<$f*52bG5`Po literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_svelte-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_svelte-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bc633e2a5f3130696c8890c945caeed8f1796a22 GIT binary patch literal 914 zcmV;D18w|?P)NR_loR7@BV6O%ECNxWo!AGT-C49=NUN?mXs&boa6 zK6|ab5B$$&-nT&c7i8bWv{p;QoIWP>>10cEqRz;Y*~l$Xw;#dkbhB{prDv z7>c6##z1CYXl(+?O$}oxH09iktxxd3d2!Nyv4FB~s*y|%G!b6kOrSY~RRLIy>M zfdI@dg<0#p*q>M7rv*@V$MfB)fN6uEXbn7n=6av|3q&Zu0BITU?K10YZHAv0!Ik4) zUjJOk%z?Uppz#sx{4SPK5&IH9MTTquvin&PfHQkN_=o`fQUxdL;7~Q3ZG@St?AUsY zo&H|{^#Ft$;MEK0`4JQrL#P%;I`Gx3cvyNS%-sSe1&)=u-VFRqL8e9|Jh~3-HNsC|V5}+0dsS zbUp<0c1V1-Xo)8#IKCBr+X1=5Y_l6fHf9V=o(bP9uS74dpu=Q&O2?rvLx|07*qoM6N<$f{8DjbpQYW literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_svg-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_svg-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d700554699060e0862762c91946f6499114ea358 GIT binary patch literal 1244 zcmV<21S9*2P)spx`##Dk1BIHzd1T zjq}26ax-I=NkX!jjH!vU*_a^>7lSO&vILA(kcN&yWOZ&WP@vHEJG-E*MTyIdd#>K| zp7TD>Ip=-9lMnu9=>9`&0dOR>{sH*=WhPPv{H4<&IvoN$PVK!g48U%{lCt~vZZpc` zt2OfHHwR^p%_zXnDW4@3YgmscXPv#bfN5YD2mxOJ_7=w$3N|Vf=565g;Vl4m;BqQv z7?=X;|4m>caLutV-#pa5o3B19L)GUv0lW{QnIP}@Jb=!i&uP8lEMusBH;#Sz1;91H z^gMxGK>o!OTiIV~;#5Ns#}5?(Z1Am;0`O}f3ZOrJsF0Iy7qP$8#AnT00nEV8=LyUJ z_B|A`PA-yfQgYwi^_ro@vBfwOj@v?!_=i9zu$Zo( zMX%_-41Il&O~xlgFM@D1K~a;Jcv4OSSJDFC1Mh7zD(G}j^7+h5ItvHOhPzsG^< z8Z4F~x_@*7aM*E#NF>bQz%OjyQO@@5<@oR3AsC!M1R@KGH0S$i;dVd(X=-Ycm6a6{ z5z#bF&YnFh=g*%PP1B^Hpg>F}lOz%eX>V^Am&+xZriqA1B9RcM(wb{8`w6(Q8 zlXbShGC*NrAwxq$w6(SI=+Ptk`uYIaym|8)Qm@xbBofK^mX?+MbbcMcKk;ebK_0000I$ zaCG`MxB5P3aMH)rLLUZwIu`RzoOUn!o;XgP%>yt599K$Re;`0aYJhVKfeAyKuYsZ~asfNs?pk`whc{UH4re|(>l%~s-EUrwNfL0MPCINs` zK+$<$V{GU36&Glz{DEwXD+!RZ<0(!ZzRDZr=K+{q9-+&5;sH4TbIYRuvbSA0v)pBK@TMqPO;W@8rK-EUI%^a)G`3w7nK2w{3hukiMP zOE|Lj05BKuM*+D2`pAbanj&n}U#A%e%Q_;$dT0%iFcJtQ)^W6CTQ-11gW;M7#%e6X`QtT;wm8Oov z(Zh`|*F-#^8^E=5f2@|XOTz$Uq~>gT1{taL1YZD`H+#oUA3sl$3HV7W4zUtU zyborhm8|pv#%Asy62@Y7aJuR?8L9SuV6RdtkN}84yuh{b*}Exc+7E2I+3hgr(op$5 z_RQiS@QPB(my|&qq#F2aAuw)i^EGbSt`!QmvznT+Go+gy3j#GtsSAld_mPN{0cQc% z*h~*M|2W6M|WYnFKnOQon6`$B#z>% literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_swift-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_swift-24.png new file mode 100644 index 0000000000000000000000000000000000000000..32c39044e19f6a078dd8601840f8f0c066d8dcce GIT binary patch literal 829 zcmV-D1H$}?P)5%!*mc?-} zDoxkai%57!?)(C>K9_MD2h(dVxMWvTe;+Z|g3xN(beF)#z}Td+G7t^>%2VIQ8RIEw zo~in(76kx+yQ%*vY;gt&9OMLgVDoj@0#X96V$CIInLz-c5U&9P;G~dfUuqq40?e2h zC_V?qRS=j#y#)9`a0A?Bxe}*bma-Q__j#_`TTipTbIAYzh&2{B5_2mk<^6Ot4qyU= zEh*;{?v{a^WdQ)ds@ql%!VLg20C1`@J&w9>4ra}y5&&?`*7aPct;z&&-5zY03~>O4 zh`^|!H6k$zMt&Nd9StvdRp8%n9R=U8b2&hrIK0f&O z8eEaT&IUbXV7HSPAcylbz*qTKRzB%^eBP2-(^Mf(o@Y=11ov_Zr^SRr%A3zm=6y8M z^|;(Oa!HO!g)qb|7#x|IuY<>7a3>qsB}Zs8qT(nS;yp!0!MqVIWbE~NY*nfxiOPt% zP!Mt@unkH2!Qfs=<_;SE@;yzn-McoCP)gL{k)FlsuNeLUDL_BUeA$kYk%Pv)Rd!c!PGe|U|_W{1>1}EkP zPSwf);OPZge(C}fFSwL634Bf_YtP$)Cj%uoPVCsWZvs4LCu*f`anDWG^3hoa=N!(| z6=N33jW;_Jdo#!#8xtg}07AQDx0K}5n5(VrcC`N-6eB^62y(_N|wrmTXzh2)3re)n@V5Y$)(kZJD;cq^4SkJP*Me&7zHz2NnX(Veg>>G-3O zqvHVhH=VQc@W@Fo@YbaOes$)MB$3c$aFtFysoRxwToG0Q7>hr)%D0Zoi4RLK^YFs1#)uYt>;@usDW zFi9~wykE1O>)e9?pixO3(K#6Y%R*O{5eU7f>1E5W!9R~*VHv}6ybn1r00000NkvXX Hu0mjfN3AYd literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_symfony-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_symfony-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d62320a41826282d4b94bb9bc27500edf793f591 GIT binary patch literal 878 zcmV-!1CjiRP)~ zhp@totdrJ77Dc>gp{VDs3>Sc-DNYs=OMGpnB8Uvq2JRm@4fH$ z{oefM```{kMUvt;9yPPQlC}XAGy7H2CExe2Npk;7AW4!f&bi}~jsm;;7E9NGbJc3~ zOs!VCRahWN65q@|0v_C~yBwBFrPB1o#6&z$Ac~@AC4B&R1<5;T1Jgkee0E!btn+UQ zlBd9VNq+zD)r0{3~I_d4)I7T!5DG<2*-AiFIaaYfRTz%fbh0WIKa5Crc4`?H)y zGkX~r$#FgZAAvZIN9nzae@S}OIky8i>zq4aX0Msq8Y^dFpB*|D; zK+?l~y8qGl{Xc;VKvU9oNw2os?Ju*MOTgRBX7dH0r{2u=bp_09WMcv_8prYdVHjRC zvllz#n3|eu*6Z~V;3)8tq&LZpIw!E5T%f!mei--;_;g`m;qD*^-Un_WCOyx4YJPtH9^hW!`>eb1&B!zSoENy5kECh(1+Z*pZ>4Ga z!|?F%EU3d6>gpazr?RzpTVmj( z=XqoO$f4lUPm*LT^Ogt9%t`tsP1DPhlatqq)ZbD33)1x_*v~~x0000007*qoM6N<$ Ef=U&jb^rhX literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_systemd-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_systemd-24.png new file mode 100644 index 0000000000000000000000000000000000000000..60066e17435e2fb404531194d619f4b8d2e10607 GIT binary patch literal 348 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjoCO|{#S9GGLLkg|>2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt(S-T^vI^I^SMA=;h=na_r;( zm`*1q`Gp07szzGdUocj&RW~XW%)Ynwj@UYv>9#HB1Na3rOqNT#Hl7#gXyUeBn|Fe> zbn?1q+hHf2xy6PKAIjag zCa=}i`+hYp+B|;g;`c`#6N9R|Z{6H^bxCEQ=OTCQwU4)?t<_zXrGA(F=CTlrp3hll zm}fXA#83Tw>i1nv2aU6rvxImRD$EMDzAMyb{&)IR!^KLQ;H8W{4LcogzgzR4(_quy s{^>>ErRwxV=b0_b`8?V7{O!j0C;myi7uUDE2YQ;p)78&qol`;+0OJpjZ~y=R literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_systemverilog-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_systemverilog-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e34f10c7f88f38bff0a76ed5a8450cbdc37d8dbf GIT binary patch literal 1323 zcmV+`1=RY9P)Q&u0Q|?oUetKu@{K?%FT``apyq6%JI6T%mKTPsoY;E)t4t#RCM_6XFc{oM zY$Mq`FXghlAm@0|!g9_rj-T@4cxM>Pi*k+=f#pRL%L!-fc1J-?`Cj&g0PXi{qpZAe zgyY0o`;`6m#*~fy&wBRdm4;dEQ@dHtxr^h4msnnW$n(yO)|($T&I>S^^kG(;5ElJ% zQpJ1;rbjQ2FHo)1S_n0P=ByxPO~JHp{_o?3IJeTMB%bv(0RTH1VF+P zx1KJINh_3=Cl&k!YjijO0RF5E!?uYzTPw-aC%W%=dDAgSCS$wX)*V9#->^Jd9mKIV z#B+AH=G$#Kw69zpsSVBZBt1m?WG|HdB<=tP(f}aRe?pNm2=I$+u34humL4A;w%-42 z|EZw9-oc-hYQHp7d(TmxowQJLQdM=K?!E7Cb=C}(o;_bv+48xs zu+r(2UKNm|&1Kk&-##)O+;KA<0N|bY;@Fd)wpRcE=nm-*)%`9?xtp%8pZ0#Tzdq+o zLGKM$z2-~+0I)1FXnO)2CMueCw%%*#$_D`GF!Wv-w^(_NHe~Iz&&S_8Vt8;&zaYTa zsMVlN4BwKOpL1o`rc3_c-AdO30F>8fJv2WWZT9wKlBT^ll0|kk^;Ek8pt%+U-BXQ9 zweO~75o)csw_=@&TB~pFxbzqR;PsfSknj~D8E7!-I%SPxmuQsxPF#HJ*n$8pJwKS0 zXmu^gkgtV?2S!N%n(Mbtod*E$Cz5TiB!us_I~)%cN`;>)crjV^YvI)e0RRAN>MR|= z+2{%{Zzeuiqe^0p!DYt5%Hj40m;2Wy?B482crcWLkPr5m4RwZ+R#$*oXOIAgiM&14 z6#xL`HQ7V;*Y19VkPPz)^3hCtEEa2n!k3A+vGzB5{xsfn)qG9>5u#cYz9KY!^U4w* z0D#dk&N5+P9h`ZhciLm>?ypy>{T9i+NJsgd+*xnblfnT2{NnPJjE9HHi^9hh!vv$& z1T0S481uD<+qo}SrbHhw4~#ZmYS`H^1Ng1!+EA+2>~IJ!ujf+;ej`2 hZ(Bb!U+w>DgYTka>4enGb+*AMqlVz*GV*6nL?kUIHJ$^=VVi!ryX_fpl}J?_jSxlV<)m&a+rbgXXfI;9aaX~h$J^{v>D!oZmkY7B!EorG4 z*^10JpFki`S166J-03mY_Y>Uz*iF z=H|;oCJp?oQYtrJ9?BOFg4hCyhaKS@@@vSi$yn{!A4h(z5%f<(#80ji(xY+Y=MigE znDJa_@Q;M&?qHf~MLU?5J!~5y#&sNW;o&6cZR;8vm6^;$+nt0UibTe>>$6Xu(*gkI e?IqE(YkmN+5PZ^W?#QeF0000EpZ6|lyrd`<6h)BMFT@HR>e7l>)Al6N6H_!z1_h@Iii4{t8C(>^ zK@h3M zb^WX8cLQDdyvI9P7-WJ5U^9RQ0Ph)`UMOYB8bEL;(G#vg`1JaEaFzvJie6mavGbp}!7KzMO&MX2tbX{p=CBcltHle4$IF*ZO z$v=JV;uSRt|5ax61E@&~pb3O~-6``-b))NceubKN9I)A00_?y0Xgxy|Wy!lH7uA}` z!nXOdtP~M&xi@8ATrlj>&5a&q=2G^kT66*s0H}%d+U&9Z&(+DiN+Hca$YyVj2w#}7 zfr*Zf4)on|1vu%5t~X2x{}q5wp!QQ*U|h(>w78qcvd(m0(rA@s3X{MV21*3_zyu=~ h?R&eN{kr~h{Q&(Jx6f^1-Z002ovPDHLkV1i1o7-Ikc literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tauri-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tauri-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b0819c7499d5e742d2d216d73a85e73a22c6b73f GIT binary patch literal 1009 zcmViQXf?<+RL`?{DK52Bi~ov1WA)t_IRvy7Nza2Gq}+K| znkJTRnLvjcdQm+JI9_ND_yMQ{Y5?QKPvczQE$!1+^ZN~Jn8q9Sq1xwxpGBpU&P0`T zCEBDb@h};?1@t|@0v%*Ge4$z>y5t1JHN!PirkCO|auWy>cvXswk>`-rTh~%mS|i zaM>N>p0ouF>+DuwrsxFWvFSQR&McT<2f$Bq*VKwibH}Rk&AzwygatCoN+{2T3kX7^ zsS2y+GePeKep8V>=~nl!Uy!Yg17CWlIgGyL=Z5QCAm}Mc<-!Fk64BRGB?SD1W#`QH zP@*8;GnfIM)PcGx%%;oIHJI^});#NZKVvI=0{<^+93NjdpQ)S$?gkF0TiyM+Tz4!M zn02Z*r90hUDPkInHenbB$`Ia^&cqx4Skb(#413@>PWF>r+#N|iG`qg~5i4K3I#|CKLqAZ4$~4)H7 z0I#N7-FHfX7bO7y(!B&6$OFu4(qR$ZpKPf)y%u;$f_$Rivl}~%+K3_>M0L&v%=k=m fX!1tD|C{{{FCj@1o#gDj00000NkvXXu0mjfX2;Jg literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tcl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tcl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b26ae31de811459befe1808b3486e42063248ebe GIT binary patch literal 702 zcmV;v0zv(WP)U{qAnVC8}tXm8=;`Cx~Wl! zP*`-;Wl40AWR!tfNkS!UF3O7#P1?x~&E`4t>}+eBr;7@@>73)H&;#Gq_dd_>efj^wy9i7{2FkORl%Gg2PK6WHz6{eHjqd^p@q)~dh#C>3%j6iWHe zadv4fP5w(HP48rwucNCk2Tuq+U3=e*4;>ee9cdl|;FB^cn!sYQbQ}$}Z{`wF;?lJj z69;^b?YVqWc>HYI1Rz-{z|FGDgMnZR@i7)*_)LMQtE)C^G-S1!R3!n-RRplvEEnz$ z^i{c>R$T2LpX)hIy8vK#bS9GK^H1dbvVfWzZAW0=E=*63@GL7-Ic&zQ0C4+G3;+fy z1vCW$EoLD-j~llhPKFM92mpwFNKU1=Yz#oEB7nhU@V2(@)~uwy;MLo>u081T06_1} z*C_y30_al;Afz_U=31ZAX@6=k>dDjs z6J2Hnf=Q&q07jGoMYsh zhx!S9q4e!a24S@Yae!X5yGDLFT|W^#!IGWu#Ay#xn!3}?a92E#dw=p1=lBOe30IH# zPf`PTJ>P4#^LL2{Jnp#}$i3JilHv)L~`6Te?65=JanyTJIK>$D|wGQ$GX!v+E6&E#4`q4*!va!7^ z=ONmC1N0e+AAn@ZjDM=12=}k!v{NiU1N9Ub2&vjf)FN@U;BSi=z#o=9gjV+hkG?A# gWK+9F>#s8Y0e{?$dPzDcBLDyZ07*qoM6N<$f>c%ny8r+H literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tera-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tera-24.png new file mode 100644 index 0000000000000000000000000000000000000000..cd9b5f7451604d85aaddffea4d8e22b50aecd654 GIT binary patch literal 559 zcmV+~0?_@5P) zK~zYI)s;U>BS9F(e>0OmWCL3qTn@#;N}GTX&`yYmjfmJOeh2*u=N0z$_F@r8Cn+>6 z2o_=yY{Y<#1oRL=60*ClyE9kZH5(%-GAHJW0B)-2#7K@lLBwH?{pP%X1 z>k!8&zmYx2Oi$zP>=3nDI2#+}=H_tL)^Ju=F;N6c@p^GVesPh)($eS*29=$i1;ANf z2S80s0N|gT5M5p2?(QO77oil=b>F=onL+aK07*i>R-<=#Na%S0m>@t+PLius@auIj zW_SfYGLBj;lE+7)>udV88ikdWzYV{=<@NFs{qjQG=@6WqkzZIKJU=Jybl&+0fZyBO zd$v!75#ra6qoch~UNof;jx&~_@%_|NrU1fm$j!`*1&G>hOs_W_V0@pb-5v`txbf){ xB}s~ILtp<~f6kant-XJLs5MEgJ*$Qv=?`XGtg7^^ezgDq002ovPDHLkV1lQ(`Jw;- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_terraform-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_terraform-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b77a81dd653c574f8401b041518ccff6785fc218 GIT binary patch literal 589 zcmV-T0YU62dRjdMsaWwTm(x&TpU{armfVwdmPM#7~1QlB;sd!dEf8*e0X_yc;R0$IkYt3 zjV|x*c3mr8XeM)90-5(+<4vE_on03+aDdXHseklcbDYtiOu@sP^AJyofM5A zNEF1}tmeL#YPm-uOaU)a)cz(gPStrDZ`euc7*%c{d<7;^&I5_ScE76Ymw={X=aith$|O@2})^KUA7xH zg2A-}gTSE@#{3le{@{iP z&Re@Bw03%RWo4V^+N%1#(doof-z0bndW15qK7na;Ka0 zBnUH^v_?@0cthcjIEp?2*awZ2a~}ZT1Di#pQu6&bpGq(ZzO1Yifg#|IL{WCM(YW2t z7eIe@Zd_Eq1vab5S3L_t=r`8>2)qmY8GGKrLZfl3ofnhIozGbN%iBSa&DZP45cx<% zj`t+E44Whf&Isgyd!9&cv|7E<&daIP3&xlV@T#hQt{{b4?R3+axvl~QnYZ>kRNn^{ zW7Yg{t#z`%fMHm4_3sqO7v=>#wP{x>Rev~^TLbyguE zs(otAGOD`;b^*Vt$lj4!Z9zdw)>eS5!q|v&KXepKSvvuoc+%?rnM7|I$R4WK=Kw;XO} z#_Z2Kck7{3kwIXOwm!|;v~;sWJpV}VDzsJ<$8iDZ z@4~;UkQ=U6XFA(;VvP&HOrOY^2Le=07x>?*dT7+SYfow@)a$1rk=GH~*L3c!gVpLi zXuYCy$>a{tm|38cXi4HYmtS7K)Mbc{WuuZ73a%ofZN#I^=8NHfPL32cP4^_xE|ed>?+mP($^r z=~UShPL{8C`^q5TCz4+e5t4?;{c!Tjy@3XtOn-8VY`z0ztz#qlVdhA)*ZXY) zNGgRw;Rb*JfFHNNP2@f|l?P_X2#q(7JoQzp@MwEJ9|#2QiU@ZN$Y!&n4u|6z$w`t| z6h+Zmt=9LeHCL2^ClI8g2OF^&+s0%YZWWQo0BWkL#v_r)&m9ADx!eJ}-JT%1uBvLR zdpMM;oUTJ%={`%TRI)c3jX9DY5jpSo`)gYQ^7*_^QIyvJtR(M<{P`^Xh@?eCZUSf; zhH)+!46bzoip8Q!*Y$@a_x%gBhw2uK<(k*)tqh1a)c>qs({|48BEu>f00000NkvXX Hu0mjf$F>w~ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_testjs-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_testjs-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ee407a38ffed45a8ab8648407597d97efe1be81c GIT binary patch literal 1181 zcmV;O1Y-M%P)IRz-w2qn1mI#a(f1**JM*dwq>x@pOmzgzF$__! zc|EyTMKG+UxHVO&8L?RvyQD8Ca4i5C2I{nS`Ii4AINzBzlOSpU6dI(zOR`_HldTw_ zF9A*jQT0S8nU>&O>&zK(QT;1`asZqmU_Ag(rZ*h#>sbv@B>)!;uGPGryyK!wSiW7?)2adFl(xOcoaSmXmj5W09paic`%9`+5YBBd7#am!h)*-WB`0JYBt?R1Rm_jaGLdKO|Ua9^-?cQ z2={v40`umJ&s9oO~+3l>|p-MiFQCfS9Y zoMd`-&Bk*t13=uBf{<6)bqNjtL{tEvfQY~Vgdl9$5RVV{Ya=kn6=vPsDay+d>UTVr zkYlqFn1Lfl!#ndASz7DrBL^=N47V%Wneoizlli9x2l0oL-r4iuiugUxKk3N%ttA>e z-Vo`}OgCMVs+cT_Y+3{0;Mfc_RoO&@T~mQ|-3S9fEXE@MpvWRc2%xb!Djr=gd0b9m z(SnS! zS^lOggR^JR_es@oVQKl$#|OR$^Lz-Hoosrr7S&svedk0lS5g#y(Rivv23Hs;Gi# z0}Gx3#tDBylet{%vnXI}91)`SyXzq(md6+U$=MSr9uzCJM# zE&y0^n`L#yHb=9s!EI=&!u}?i-{0-*Dqd#U4ovW?n53)=Z!(uS95l;+PXE2RMgI&y vYFGCgRNp(1|-?zrFY+k=B+w8I^)Cw-p$_Wiy; zpZ9B@-`>Cd;QwCYo~Ek3`;nBR%e~auNAK1u?+Jh^Mp1##&-32J?EfBMvAz!c1mvO& z7pUqiSgv(tugKZ{AQ&5vhJ(z?5zL{JAWDF7biI`Njh+7PC2%{wVJ=}L4uBG* ztIt4f2gVVy47cM_RCe{QLdjMj3-}dFXcq{Dt2-GPY@?IrVVD|)a4>SO z>(gBQrJaGZCEWi|IvdKHNM4nX!90T&4$iX!7>0b2O|8jLup>ZMBN0HAZw*2njcJ}=8F}6e!0dzq1jBvxFxNHT@i-tb z-51g9J3&Z5UW0`cN%aC?i3wOJrH!HVa17-#eWyD}N*Amvf!=1g)bclDLye07Aq;ml zhcWy=?n9u*LNj>r6ZtS6XtgTL=&JbV?KdUWt>0eUlxD+YJl#h zZTxWPCE5;qFc=j@`zlDwDvkhZ?Ew%U#2CGSl4aC7I+it0%giOOyqT=0-etsp67TUB z894VRY1tMMQ;QZ;|eqPBBXDz#r_F_t~&~TtInj%|98rg*n*mpfkMxGU=!yi49bbQ-Dzvtje z05&q#zY0-^`vDPI4kq#DGnTG$Oa(m%=|F$_YU%ECmBvq|)jN5dw-kz_S0OtU__1-@Q0PXFc z0PxZ|_W-~q$&1dp`Fg#6o8-jbn#FOvEF!l6jFCLk8}9>fqi+rX6#yuTLcI6y%O=~~ z+cf|`LkL&O8p)5&xo=65+!T?e5CT>8LmbEJyZ00TrlzKzi%3y6866${1>gyQC6eP& z6m>|Z0Hy(4>fOEp@Cv|emSvyI9$FskW^!^e1JG}@*=RJ@qA1F@wzgWmKOs%is)+mm zuu-j6Uyzi614`<1{dye73CTwQ<~yCv>6Mk0+8+V!c6+~>%>k&2$Wt?$GqYx2C;7>H|1i(< zcK{GY(KA)8scKGANvf)T6_HjHMU9b>k>dk34j z2dT8O(Ap~6*epcxlCe@W-pA&Q16M4wZ+?6Gb{F_($@hWdIDJZ~f{65Yknx<&W-mm9 zu>jBWHc9RScrXkf1~4Har@rs6<@0&JeL|{jJVNr$w(VJybk}uP034EBR7#E1YPF?I zCe!#n$1+@Llo|lG0n9g>&5GkV1KkD;05}4WBAHW4ZFLQxwZ0UQq0f)xjfninZ12IB z4$iy{jVM17uv47dh$}Wx_!gC`Q%y*ZNr(d9ORM&M zM*u1~7BFf8An*hr@JNROS}8RHpP~NG6zkUoiv{d0XCIBiLyjkFDpl2a;ON;@#h1|Mnh%tcVvxrQ)u6vU(Z<6FyC_rm{luoDLNhW&eMC3wi eT~4^TWcmONT#rr)24VI90000E`_a literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_textile-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_textile-24.png new file mode 100644 index 0000000000000000000000000000000000000000..006574d82b6f6f730330efcd3742be59b9890d6d GIT binary patch literal 471 zcmV;|0Vw{7P)eLGu^$m2k z83CxTtzn?Aqi8w&a0hBqo`6PC0C;(Q&l_J^KVouWhxqebX@Op|35`Y}7>O}$-)DL4 zkaRkO)8)hK4-<;U{v0Uy_q3Y~T%K;VAE?#HCF%t N002ovPDHLkV1jt%#P9$B literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tfs-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tfs-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fb929abb0fbd431b25bcf51ee1cf21513ead6f4f GIT binary patch literal 991 zcmV<510ei~P)J3zb^@tQ!{^;=+Y!sF}92h(gK4 z3bP0k!Ac5&CI$o-E|h}SjiL~2Xtjv3meK}^X)@JPtNjYaILVuN_qfR9@n-Ty<3c>U zd(N5v?|;sld*MG02}|z1GrQJ0vI~_a6+3U02oTn-t5*;ljXp zD4^%Aoo$3Fn){N(vG0^+{q%t^C$iD_)s>EZ7afEb;IKWe) z_M3F-KwB_bj&q<&e93mttI6y(far3r7)u-kw$@uiC7M+1$2oHM{hlnh*@*WjYF-3g z*%>k0fRkoabz~XV`L`3$66j1^dn$g;ca8}k)i3KMSlVnJ0JW*CB(f4IJ122 zXwNzP>9+V2Dl>x@2a5p%r+^p2R%HM@VZ0_knrY28FN?38cMkz~_!Gd1FtM=kZFg_( z`wV4QpjHH#1iKMrT_Ar$JbU->&u`sW4Zyz#)|d=%B~VL%K3F5JAUBOChE;~&I6B>b z-V@!9Fd5b;$Q*DJH0j0V%XCX`<7xma-lCT_nIli^3St1oA_v6ni`tC)(iQ z9xCMKYV}s^(x~nP5an2{IKc31{)|zc0Iq>P5R199SogODaj&IQ*$-cC+ka~)Al=g2 z*q!P-2)quU$W*i7HSA)11@8p)w?+F<(wDVv}vQ2VrTI{XS!MI zKe^-h9y@LZPzVcSU!IMJ*f=e@d1%*>`yI99C4iLEqqlpn&*#g9%Z_m?fE21v=AM42 zCDK!$a<9JuBmugMeYqIxk1Rb0AC;5^!2aI&6-UzPo@l-T=CN-` z>RdY06-(pESbx}E>^nP?ds_?u(cS`jVSDnAH@gIk%$;~sm3>~)gG4&vwGn7!S-afk zNuifZGgn2lLVo(%45W_!9O`mch^z~}XJVWSJGvAWy%l%?js zbboQ+At_`fl>khbmKd^WRMPQlMmkbVo$qR5hsA>zhDWRmTZq%u8cT2vAFjWng(0;;Oou-)AGb zAR=?XRz>lrzzIN$2B_-ScDwz$ih(g^Jzd)HcvS=mnI~ieM;bGfQe=#|DI$+^RMcv< z?v-9X;S>|LfluT{lEUsw9jNL_RUIZtvIe|U)pKdJbA(*6l~33KJ`%E8)X2jcsA|57 zA3+do1186v1>UpCU7!nmAmm}8xYDSsfr#V}FB@aFRCV1lAz$#gh4R8Bo@!)8I#Z+o zzVCOFBpK!&{j>@j>=Lp_$hV^SG?YGav)LQ~gQ+k6BJLWID@B)7^>&Wh3xeR)k)<9s z(rn_c6fKI#4FC~24Xpf&coDV(&-3yrih>|mi=ybdsy+hPg)<7DT_O`$xCXyOL=K11 zF`^U;Q54-*)$f>PAo2EOkPk|fzv)uptv9e}Iw8~8q@AmAYCs*2}% z*2|TmE(bqS6-1<6mHvZSpw()<&DPdHL>?GpR)GBq+Ve%C1`x;bvqq!wyn?Vruh$zM ceQSpJ1F4tJ#>0Nyg#Z8m07*qoM6N<$g8nrgxc~qF literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_toit-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_toit-24.png new file mode 100644 index 0000000000000000000000000000000000000000..950ef1af4c9d8ca689b3f8595173febedf1a6a8b GIT binary patch literal 738 zcmV<80v-K{P)su|Vsvt}pJ^3@XZxP_obR0P`(P3OJp|yt zXlV)qwE-_95uQe!NLtmMlYb**!-tn-f-n(=Gy&@k>nyJ8z8}p_WfE1ub~ErZq3@-W z!zO#`z<}d8&s5zxK2NYb2!e(H8igADOt=AXB>)?9M3_sETS_M@Jk%h=dTHSY2u~n;^6*VW<6x@*8ID3sU)$#pi%ZNiC9&0INLb%b5k@cbc8dL|LEE zNk>$|OhvIos$ZfV*y|6y?>77Ky1eHtHOP))^tiRD$I;rZ2f%Haj(h3k`kc5Se?|Fq zL%SqSL=&k;IRgNnq*^6xmY3JJ zgt=48TMRA%yM<~%$L5Oz#Ok_k32PHp587eqg8P2_$XxM1!k)DM@t+jJS;W7^chL;> Unol&Spu+JE=RzqY-Cv$OsCV>r%4!wJ!8y8CG5uI zu{+2gBjBo%a0hq+fL={KzzVREh&<(I>e(C-Nk!xpKvhr5-Y>v#I6M;(^=%F?nM~e+ zQ&kn`-1k~QA#3fSs=oLDk|Y_-=kw1xuMq&WfFmD3r_(V_ULzomlY;<&*Rm?E!nh9^z_I8?{(0`o@@tD2g@%ijAbIZQoz2YFkwYbzT8*HJB)^uz*AtE?jis!j&;mG%;~yT$m=V zj0+zNA|bLMF&K$PAx6=tMG?WaN(;5T3j%GKwsbnrd+*%)9T%NDj65PS;q2~t{D0@1 z@4NQ`kJ#v8l0N;SeUTKr`0Uw4>%_QDC0EO7O8v2S?+<_dZ@`fw>uiUE-Nbl_f%%T3 z{d)17y(I`}B0Xl>03rlj2Ve*}T2g z5A@k(UvDV;dLjtqQ_I_zTsnLD{DlVsemS+V-L}Phg6QwSN1PcE$E6cDu0JuA9+@o6(%xP2t>u&d%K`(^6x>5b)GmrZab zTd`oU7`htI7E5+Bv$32(HUKbF@kToFyXCmgbam~?1Aqtto;mqSJVCMAMzh7JmrUsm znl86#hTN{{a=T{gPx{=*^(~2&nlze2aR9hA5$jP(>?oO$*F&F}CW8R%78=$I4I=;m zrgE`pEzvaE(9|S;4hzbG9Lzh>4Fsf;tsJvV?gxNe(K_jt<+h66%N-pZS`{#GbK@!i z^8v_c4Ceu0DsP`;APE3_&MZ5S~uS_+1nEm*BJ1y;)}QRwe)8VXpm0)@+g5@w*NAy7z3i%YX-WQtRT$eCiv zXjF=pGiU{X9$DE`6QD8`G1FoDC?MM)jAJZ>B#0!G@QrvwYiYt|*Hg=C;NXCj)Ksb| zUPv{?3-En$%X4L{Iss&hWN>|0;8Rqx#;d9V05Uo2Pa@2$Z#LteqmE79b~lHs3Vi6b zKq=Kskg}@)#cGU*LbYM3>+OJdr$eSQC0DKi<0c4=h9$PQB&|!C+iux&d8txt13;j( z@rh#W^i(l6Cs10t3J|RIGARInDXva;j|(M7Uq7vn0RJ*}Aft9* zCnIHFt^r_F0^^M(^i%;vU}oMM1fp9hkpuwKn%+^aV2vSs;|YF^`sJb<8!HF;{6xLn zlA3Ft1GrdexPQMBOfUL4UoXXkN6<85514P&Jj=t$m!%)*xiJrV$mke0UQ;bmn zh}VnuxeKf-B+zFO-VIBtfG6f0DtVslMCEi1LtB{7TbEdotOAHVKQMmGyLIcBMHB#7 ziEJ2-M#aKKE3H>gebbq}2LJ#&S0DH(leeC|nU43~NXIX;S?38e(J#z+uP|c2ksiC^ z29XF64WV)#0gLdu`Czr(l^X*}VMS65p z2A;2dQizlm-%tF36VzH~XQyb}Jhe1iG&eb(o*K{8*@7{4ZP@+x;M;Ev{8#-Ww|@YU WgEBHrV7RaV000005 zR3!Mu2L_W60s#_ZY=VKrGzm5a>&i6IHB{|LlQv|vlaQoN;l22L5D`&J~OPU>g=r=u6Gi@`_R6VC%-=W-J!v5A)C9#)Knh% zR2FS^ooiQD*_d60rU04l1U>0QD3ORgIzF-VE7LTUcLlV!HxEAcorixD3j2iSrZ8_@ zxke_{hS3^A-q^&wJ4WVkH$llwBo-td3la=?CAUX>|Ap6Qegrr-w8ZTIAA0ESXYT0h z6ck0LUT;t=%IxWgbK?F307Sz+?t5=PUbl;xxfKLKKvr}<`{?mhZ-44DH*2|X(H44p zlaCAxq|>=vfyIRqre<()a*<<$-K;H@sg-qdx`AWcD5}o%%nB8yLVj5$m2BnSk=wqt zbhZ2^S(X>xHll|{-*fth-~0HN_hmYmm|Wn*0|Rt+wNNvvl;sLum&oF}iWHRS&m_pN zY|z#o=h(46>h%WkSde><_J#-VN`2|f*xb0LRdQQ8=-ShAAQlbKsN1+*E+#H5Agel> zQAg2htZi0l>uCev#j{x&bsK-c;cw?>FwGi9rAj;=;^2X#5DrU&!1G%GrIMoNm)4t~ z`@;nqx`kELFw`omjXE2aK}@Z&TB%a;duZAbAzp8=!|kCF@#F1?FnM{Abh3?+;e8Ye z8!K-ck>v68Olda>@8Hh1>#kACpM zVY-t$3HrRe@RxHOKQh4Nl?CSVW&FMXLx=l0bAF1yU(WKmkBxGBrW0A!sMl@VL*x9) zYWdvFdmy+xt}o~f`+bjmty#ssOzP8`S&I})WiqLqbhPdu)w!Ge zN|}Z&@X66(D!M_wR3R1#vA-vYt{Y6{7SIfv%G!v^B^1zf2zmh`$4snDqGY2-iy+jzhj~(dF@O zd2`jWIIC;&n7`0*bNJk9b^vIK_VY?ydbl0wo^HvH2-twqXmH8UnTd*I)EZ&Yh2=P? zc7v5hwQ!}Te}MI^$@Y$k*3{G#X-0T96U({$L+~TE|+5%)}*2+6K^*6|2zKzHaU0I TmI?pF00000NkvXXu0mjfreyzb literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tree-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tree-24.png new file mode 100644 index 0000000000000000000000000000000000000000..fa9b1d2781954041f07490386c19d9bcbb96a51f GIT binary patch literal 334 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjoCO|{#S9GGLLkg|>2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt;DbT^vI^I+GI?u+K26-xhv< zj-}HUgV~*pKrpfKVsGoy^$KTo7N|=665DV<;>`cZ9CiI!OPkg`c)K@!x3rYhzrY+u zX5nU=$M$Y{Jfh!tswE{PG`2r@|KHyGlhCF2ld=W$40@DiPHa4x_v(-3suq(!$^Yt& z&Go+8ofI=LG&=b={l{@vkHi1}_vm+;${cOF=y8md<5`N&fr{=m9>-=*zIedi?O6B` zslKFx87hyNQe2ECJ~03M^v;tf={h_>P%rs!eQMI5^~ZnoPs|eglm6@TgvQ2)l3ULl a=49yI?4kCh<836+n+%?=elF{r5}E)3h>K(Z literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tres-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tres-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5a29d092be847436fdcecf41a6cf12ee3d3cc2d1 GIT binary patch literal 952 zcmV;p14sOcP)pDpYFDs5X2Wh z7&tR$=KH>T=bV8@9kN)`^P=k<-#GwuXT)Kd8_QP=z@Hyj6^a?Wk;b)j0r!9!NmZ8z9a3>7i6I{z5)(DBrU%Oz9+*>J1iR z&+F+Br13vyn)0J)Opr#;>*=V(k;~^Xmh9;j^c#hfsQhe1-&Y7M=B|V!ZB-5?{A zQQgxOPo6FcoEeTkWew8`E0;pJ1l%HPHbr_*|6u@pmv$}ruMYu_6R;Z~e+QB1h$kWg z4^iNFBs$_11putICknBMp?P(J*7a{tx4d;hmO!AMmeyBUyY6M&s=DI3s(xCCO{Ih3 zmi^qgxrGluI!D^RNOg6tn5vgGv3$k);=U(>Z}ai-i=3UTqJ7hmiY6)w)Hif6ICz5d z=YQhlXJ1gaq78u1>I7{Y-UPsPYeCQKrcVE*34iUR-k!ANYIh@30T8=E?*sR?oY+643WX8~wf zxtW^UFjsy*1%Tr|#;V{>R5Q$89mCoT0IJ&A9Z&vP6!5&As~mM-!b%9ycY$%B6?nR$ zt^d26Q@8;79LN}|pZkvQMWds$`IeVjlzvrx4Z(`hW2)?Mj5BO~I||_Y@=n0v4nWqb zHHQ9NW6J9m4IAOAsss_80(lRrr+`@lFfsA`W#Bh4vQOZUT6soP4qIzGfJ?yNVr<4o zhkSGhk*z9R7i7kWrUj0wO3eE9sKApb{@h&cujO};dyBrM{Du7mbX1TT3~g#Tm^&n6 zik<>mfKFgr$(byweUW(byD|ZQ@nlb*qJup6vvE^J4tDPv{;IH0R;FFC;jbM_yNdK9 z++8xQa2Mr+40dBFc`mg8QmL+Gk`6=^vjd|WQ9?j{K79+}3Rb2CdqxB4R3tJ!zhpy? a6#fCq?JdcO7EQna0000!MM-> literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_truffle-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_truffle-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6d6e495d075ffeaa90618ef5cdb9bb99228b054e GIT binary patch literal 1351 zcmV-N1-SZ&P)|^s=YM{(_&_+ zLZYMS^zov{X2W@3Z`0o_yIOLsX!GH7xmR8Zuq+|LM{bj)gS0RvF`oFtudlSjfth)vNEm5U@3MLv+o(x|0r@Eg~i{o`oN+Wougv z>(rrSZ`p~yshNk(4*>Aj1u`dPDdNN^I#1-aYl8#V&54gcHn5*KFeuE=4{O#Njyr6& z2&GEJ(lskM(XD5RI*8(9Ih5WgV$~<9uKE_efg{_$!+fED(1bY}Lw(b}%F4?5LjrE( z7wqru>WTswKXo!5o}Se7nHl4ursR4dk|Yr_;x)XKib1ZgpFU5BuNJG-s;Ra09FQc* z=NUj*QPKL_g*RjRQ_ z4R`y@Tczkif@zU#qRD8Q=W<|ZY@Xe1G!7dGD8E@kXIncH zeKq`IY@*cKMO<tKi~g-WWZKn8bLt_(id)wTdZT-XyDZOplq(^qAR$>Z|)q z?0HnfH~!JwDY)3+0=Rp5HieIhe7ZjXSwEyd-iyR|_Up#-tFf664P^w#J&ANzq7Y>C zNlt2Q7Mg55eBl>~(ro3-?>VPj0F73A*)JdfZ;cO~?Hz*v4u^xx-FvC4u3_=24_M(H z%JSjCRP>st>@(5furW-OvqT-lBu{VL1cCHjJNxvF_sZePRUt`|++s2tuU)>X$lSg6 zxlRBS!<57=NMgp^x6%6hKa)3icXK5D5P#;K&&|xso#z4oG}hJa*M)|z-SPRCRNN{Z z5&|Fy0wW^A2?`Ct*WVAj!;Ze8i94lbSbMC9f)Jl^Hs{PBfFwx@V@GGJ+)b|7zHt-v zPtL)sN`P~jdAYIuvFqdtf?%mGEt%14?X`XO?bl40KIPx^*V|?Gl>;Ya1A`wkGYyde z!IvbY#qXvpb62TVRF~gzT^lcIj#Eg;$~#p(Bmf{M?@UAQgU+AoYpP~OjU5w`{Qh!! z%odvK?;}alP|Yu5m)`mLLT>fbi5EPX^XBS;0ymDHG+|bA{e8Ep+vNk(y%Jm!1>yV5 zvycDz=jo*${gl{PrOfH^rd=cuK<>mKDunWbIXT@g^Zoy-e*o0C`pT1@vC9Ae002ov JPDHLkV1hQ7pWy%i literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_trunk-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_trunk-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2f56e3e5cdb65ee727c940a918865438f1ff696b GIT binary patch literal 872 zcmV-u1DE`XP)Mb&@m|Nm3> zaN#?Ld<~%e>68upO*q=cm}UTV?k~aIj^S=gVdU>Q5$KQUMK+Q63DG{3MV~nxh;qrQ z4kQaBPyRDOIoq)X%qXy|rW`7~6o>&!0Kca9PF1q;!tjOqS*E^Vvza|$Zbri$a0Aut zifuP4y?(y5(z8tq5w@XvJ;EeKbf}!oocf}Jpr><#i2MqqfC<8Izk0D2pkI_#0Dity zcP7&&!WgguKvlYGom3s@fdfe+GCDoni|bBev6G^lo*oXotydT?l*Ti#fn?~+u^9vk zBC6e$JClp}iFTk3aN;zh%9Jtgj&VFPVjkMX@z>?--kj!gRe|y1$X$g|02SAzU0n;R z1VQ({wUK(9>UmWAD|RWUVGY6wV1AA0CeY({>W>pMoZ#|NmawUytx6y!+!$g0!AL;# zd4})ZAjr{ZOTSoSnym|e0Dg`p9?@*NO6>hEcZ$GwpM1N;e+3 zaPFV;ec$2Sb1yvZCZ#q{cBh_l9B02mm$8|>{a^Ro0!Z#0sk5f+3zSi7-Nc?$_te8M z0;LFy6F9GE9e|p$!@yew{x*bd#tG~P>i-h~s&^4Q0yubT*Vqd=zq;s5DUpSf&-=#0 z3x2XU)s9Hb-^A4B#-cEhnq+UP-46o_YH+$Y-KQ$275xn1J5lpKXs~34i!k#l_7KV@ zL0(0rKR(iVHcxPJ*Tj>)H5b3jl%2029~7xqNw&!A}OMX!dU@UxM2gezh15az|>74LC2WP%p~6z&Owh zto4=kPo4KbucACBLRyp)xNfR{w0k-LkQJ627(n%Pz^cjz2HkEPXV|rN6hOs&M+iRf z6lSer20&L?VV|gN0COABFv_F~?`b)cz_bCl_WXrkfS*NVuOJ6i^cfX77Rjl*MUP z(E(s~3Ba?!hsI{w3c;bomzn4sTNVmRM2v1%r48@b3gxzEfSV#*S1S`U^E$R~JmTL7 bkG=f`)IKpH`Xz8y00000NkvXXu0mjfgjKVA literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tsconfig-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tsconfig-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d6aaf7ac2041b3ef99ff084162b98e903a1389f0 GIT binary patch literal 707 zcmV;!0zCbRP)h}xXr|{F zs&_%d7B?Vr7BeP~O5Yxuv!~|^h}{H6Qc%p!067(6>Jjk+UA`eIrqr zh68X$qrOj*(w>{&t?oj|A?{vX0M~qvNdO5EPU(bPDP>HADMtB^O0##eB3o< z1Gv`d>ims?wObQxiju8~P*!zwYey<9w1a5%V(ESW%&4Kcv~?x>p|icS%s*k2B*odK z<*742L!6=yK)OD47rcXoUh)!gtNmF*0DBnlgN}ftiE^m2xS%DR6X8P(;zZHTQBgfC p0p0D0vGNs8PCKU`FQ?~!h@YYU&x|0AZ(INX002ovPDHLkV1jY*LZ<)# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tsconfig_official-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_tsconfig_official-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8a99a86e18ee69a0cb2833c8c85b3fe019fcba7c GIT binary patch literal 519 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 Y0o_PEvKvJ}MUlEmI}s64 zRK!KA5Zi$&sYt~th@xmk$V#bFTDquiszih|(?rpLX`A^Mr|%vYnS@8^Or}E5>fUp{ z_x;Yf+{cBR9BM_BJz|@j(I;3Fc}^t~tcZ-_-mlhp=dTx3Y8kNcZCe!uHj1$Y+2>~NBf*)AIb8+zH9La!!`36m2L|`Z*glcdnU(-I61N?7dNup^wKd+bHcE(@5MnYksI zOr8K9ZXmf3MbXZVj*c;a?69qKj^BVc3I}uuz%?>Avmgk9lTFM4dJ>7mcg13HHNfPM zrUV~iJhvcd2q>4!dnNVPw{vFplBBHneig6}xKgjJmGtJqcah^W#D?s!-PIHT?1@eD zawd~Gm`bIl+S}Ww)9LgGFc8x|Zf0!&E8#245j8;;n!W;{~Z&w3+q=$g>v2?J+d`i-e1@m=z%bM|& z!Fxysu%ZzFAeBm8GPAx?skB?tqrfIf2{S858V$qnn55!@KH+&4mAS--*&hPUjnG0J6i@`ov+=&@*3Eed)WgixD^rlclZlu*$o7rg|f zz=$^XBnX9GMg&Dh6oE+uJ?vrhpr|Cn)O2Q=|2-{cv>6>IE&EpYe)pX3yXT&JFZ^dn zB635Wf3$_J77-6>Zd5Hg{$$7ue7F35EIEv7YLrq{&IbebmUGK0+Xic3#fjH#U5&6p zRM)GpSXE8}BEmY4$GPjf?#uqC3W~24yDOJf2IEcrSAdm~XsHhcJ&VsSE&uUX74#O5 z!0hQ6s?K-2JC6-i9QtW;Z}{r`4Zxh3tW{MDkJSz&*ZOk^sB*0rb)=}FC}qeDY^;0n zj!bmg?7|^45GT~wmt^yRasf(StQ?VIyQ&oP#lm_bM(-TRzx1d(sIa=w&dSN@jCmUX zVTaU_rxqP)-SN0!ob58(4a^duKEvH!S~}r&pvM4U=krx#Y?o9hvNlS+6wyOX6I0LB zNR8vG^S=V};&vypWO&X8Ma%^tGfEqTqbdO=PAc9d#Vbko-lWA~yg ziH-Gm+m5DXecueY0i(!9li{wmJA(U2vCGQyE;je+L0R7AGr*=8YMLN-GO}C4@rSEF z+?n4CqvD`aQ8Dex>BHk{x-veu?Q;E8Z^8Gu|iTKi+?3x}_vX#CDed**HL^twEh=54`+cK_oP+UEcJpj{6|CqJRP<_+lb(^|ufygPSP%0JpwX^Q!X^ zpF(fJ+cmS|Z82Ueoln7cAcXppNdC}_KJ6J|co%q1$OJ$nz1@6^hyy5@rCOR$E2)84 zR>E@yu;MfAz~cwQ25sPoHYc%1V(y^hk`aS8a5+{u*?KHgNNA9>$zf==RLc5@p;JId lD?CJK2QX?{2D+Ic#V=}P1VTj65Yzww002ovPDHLkV1fy*mel|N literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typedoc-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typedoc-24.png new file mode 100644 index 0000000000000000000000000000000000000000..70bc7057a5bef44d7d0ffa2e6311b9cd89a5ae83 GIT binary patch literal 734 zcmV<40wMj0P)GntjCB0Ew>pX{=O9>d*E3S~A?(m#6TM@Lh)~hv-sOw?4a}gCv z0C+3p+TyHSikj$I8prQ=_WP!<7p{g%hX5S0z?Mom>~Ny{r@%7TXKpzBzXm*ApQiFB z&){P*!6g?Ur-SN0eup5)*Bmh=GIpE$6c_rYV2ICvB+^T}e*!Jh+&x(2rEG>F8 z)#=s*#H4SAt^2@L48K3ZYin#`u(Zo*>f!oywLs>rsCI#V3%unwYE3;{ooQX#6IgBt zG(fP13_q3(0k#v2dNArh(rzOQfaHL22#f}>bJuU201yXiaX$o(f#uq`aZD?h95}AV z0*zRI!F(1}cLJdKytKEu|W;#SRH=f(=`W9 z$_6~ut|ovzeYd4)sle_rOO{8bVnmR(;HxL^Q`KiJ?_FuhJ8&Yaq5seI2cc)^80qAi QumAu607*qoM6N<$f_Ax45dZ)H literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescript-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescript-24.png new file mode 100644 index 0000000000000000000000000000000000000000..197aa1a7e7f9d60b4b78a4f87ebb96343b750e5a GIT binary patch literal 564 zcmV-40?Yl0P)lm~VAC=ey_koy&!aDk@iU za7vg7py^b%>IWQq41m~NH)0K<8bSDj>L=XoB;$`Z3$KI^FH0k6^XYl4uYQD1GKJ6D_;N0P)7bs`FvqU6B5ulSE_#0MA_x(mW4(i>MAGw1Nzw@}A#6 zy~0SsNlIk9Q2pr7a&MD~{y5T)n-w4e`U=M$03i0|Dw*i7!tm53(n5TArXx0ie=W9w3pu&#i_zgd8L04giC*7ZLW~ zKVN7s{THcR0=)-VxXcqX-x00@HG$(@p}q7CoTks9oxmCpLTEe~uDoWmX7ukHROu{v zZTB6a^ CW%mUD literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescript_official-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescript_official-24.png new file mode 100644 index 0000000000000000000000000000000000000000..dbfd5016a49a81675d6098b7022f0bb5e2fca6f7 GIT binary patch literal 660 zcmV;F0&D$=P)b#1b~y*BW;GP4GNZJYlf*M2!@Ppa%S|@iUeTTwJUsK80I;0aa7ZFOhh4O}0<5bBS0BumcHHB4ad+?-cftYe zwyh1b?lS%SJx}=FJBBA0m|MyMaHe}d1APY?2gp(}%(CG1hgB|(&GB`mSUFwWDzGBS zyHS5&9~XMtc|MyYt`zWlTky2n0r-|u8wUV{0-lP*CNmn(W|O-I%q*tS4HIQe-#Q;l zbL;6MT?bon?~%wB4CWJAUc6PvsYWHhL{O`JmebKx=@D&KPBoZ{B$BoE;Q6oRLSis zYrRM4yWK0TKn&sRwIkx`Cg-CW*v6>HLo{AQoEpqx9cNL8~?gelqq` zRNsXT+JPx9E(cg1waMfz?*cq;4#Q{*3VRItJP0}k^4+)PbKuPduRegxBABSoqqt1x zDr9Q4D6FhK2D%2owb8|7pc0N1oBUze!JAuDDQfQ_L9(CP!^Dtx{E zDN>^aG>IUH9Fes?azQ5${2|?lR)JI80vW|0)g~Yr1XsYN`Rvu-D~MILxr&bfAjY?v vkVU%bv4=3U0}&5TkD1u}RCmG+{r~y}qV$ELSXmOn00000NkvXXu0mjf!q4(v literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescriptdef_official-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typescriptdef_official-24.png new file mode 100644 index 0000000000000000000000000000000000000000..aae42f853017312d3ed17418ba380e4164d324f6 GIT binary patch literal 663 zcmV;I0%-k-P)zwiX%}Ffm`aOomyK&Ykv1s7vFdV z=0D)y2WVCvTs?GxGuFDS7rX%p`;)sEbb78GZs6oDE0v|?L=}ZGzr?wo`*{6Qc0k4Y zGOR{Z_KXAptw!Wk(@o49D**WNZJIS=2{qexvRPl68{l}>OWTV+09tK!F4r7oNb+&8 z-2p%>9;bfC?xcA`*KGzy1_7`dO$5Hr=Ppr5juMii0E88J$utpXc5xvYBdC{Kx3$cW zTzh;IX)i9Q$uGx8kb<)Sw4c7f>!ucLRhEpg1p($GA?iC?k{Q>U%nV#=rtka>N`%y+ z6g;M*QpjR%hK$n9jzFJa!a1%plxz^9q1)dK)*)fQ~ksg0eSo1x3?%pc(L4iQz9$j=At6?|c*V489>44rKzwBV_n5`-eUB4|~$igW(X}ZWrBdSB~`J xk!64!>qHbasN(B#y(n)b)Csi literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typo3-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_typo3-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3057854e2f79a1ff97564dcb30464d3e050f4992 GIT binary patch literal 655 zcmV;A0&x9_P)!pjT&WlMoMu(E-p3) zwI!vLKOyBLf1(_0$+qj@e^!H?$6;q?XU6ROehz$2&-Z!0-|zeLt>5!|_{R!qlHvvJ zMs$RnFV(%gEm&9%KjR&q=rI(6*b)#6I+d)Gu|c!~i?rzqhmAt)w?go63O{er7qZU7 zw7SOqmdZFF+Aipr^xQhT3cC$J$~Y5i|mp%PbUGi{9A zgnLON2=>Pd+N<$mmuR>TK|W-Cte;>)*AoHE_rZ>8uWsYUZN=;I)=M*-s^^szb7q-t z1TzvK!-|%KoUv-{X|ok=*5-QMh1Bq?hqOMKGwOFt|*-L|B-WuFW-=I!IaHQ*f&-4rU3BEL3~dE zI9WC{rJ4f5F+)BXa-%002ovPDHLkV1njCE8YMA literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_unibeautify-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_unibeautify-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d5d0c713b141871b981210326c8e47e8008ce2de GIT binary patch literal 918 zcmV;H18Mw;P)g@4lBen4X@NzV9FD^?KWhXcWM;jdNz+ zzq-1*%NVoVZnsZQO-;pFIwH@&_x;@fepX5yXXbAIoSC~ysZRjhO1OV70TBrR%X#w+ zSWdW^$Q}Gs_@5duGcogXTNQE69b)E8t<0vi_C02v->QKS;zq00dVfm>TI;6({L0J? zX7&;R&Jay|1tR)^nU{hf*m++AB05m3)xMHaE;94u0N|WkZ8RF&Q%-V@l5#AL<6jDe z!bK_N>-~D0{z0eH*|xH>(jy`VVBT8$E&vP+44f81d|-_EF`+&!g!mKyn0cq?c~{rg z){X*L>2x~V%H{H%OoMK>`zR6JNNeZZx7OO1ec%5Qz)`Jr832@0mjS>S^C}TtbI!dq zG&J;46h+TOQB(n7GM`8YG0e=j(^@HYk(s5|`tvXhCzMhhrBo*ff~qm*Bml0}YL}dI zR4$kAIOn=?9B*2Hn-auv{F{_=EUlZ(=4cc}UzbXy()#-P^IGe-0Dy?*JkL8mF)^{2 z)PFRa%~1dkODT1(!Q|xRyfNl*5`RB4R|W?MpBx__e}jllAP2=_@f3iMiRhu(+1U%Z z21Mkv)@U>u4*=NVdEWPN9FNV+%ywHk z6bfgF=*^|2r4u6~BL|uJi)yucHxb?;gm{ODzH`o9VdfGMy<)BXotcLLoXJbM3C5Vi zTI**w_QEhMT5CTG!?2jaKbAgiKQdQEyfakR}At2^}FLSxlVK88c-E4@P5lkZ3YJdGltn zg9l^0crbd<7+Q$NE2S+k(Zu-Ne$UJI`};n> zmk0i1QzuCp6pvj)H3KCvS0IW$+M%oy|C+!l^CpP&fVv7&e@ywTAfN4`KJ8Mqp%W80 z#p4jPZxmGi-40{s*HKqGRIMvDprtx)iT72|djA19K(&VS4T|@2Y9L90Q#=mPdV%zP z-~2{^;l&BIcSBTIifFI2V@@+2M-`#vI4YYF(b?Gx z(>pgpxBUV&xn;+Z_<}@j7nL;(NiB->B!WkEojj9;(yRgo{I~IMtT3|V=6S1w?^$5emGsK;8cOr|Cf&3ajb&-R6xaUj#rGozF*Z@SN4b$da3d%~dYh zI;pS}qp75BdmO6H8doqV9(y7OXYEnj7B*LLKk%^=*`+@JbV`e~rFe^U^f3)XQbKqy!url8_Tq!H zKV?XxG^>!02EM?WUq!yz!plwP`EjbBciXyC6sWPdg4nM(lbDd1W}?uX%lN7{?u$hC z*bHy+Vb@h!%Wa4Vzs$IJtMwAu>E^_8PrIs_deohmImP=vaD9J0x-!jpV3rKyDT1Lb zs&YzjKk)PHnP>QU+R25wvs74$C@|+7>c2v+wX6D%lL-1`E+ZXr1J(P!A13=)+u7vl ziYD?**%X>{ao!uF+)_+aQSBk%n9T)=Htv5FNzczEo>m=g0Equ)v+IlezBtJXPjoPK z-^WuGjmH54gcRz0yQ&>JP?KVV;=QckDNJoJS^4d97|9ztK$boZH=GrvmYoO+Y z;B&wghpHP+4ICOc03E8<6(nj?$a{e2F~BnlxfUeacoaCCaOmF>U!xFhQL&*f5KtKI e>|e$I)&2qtYF2*LrJ||;0000QaTV-ZD zLkN3;)xaFkBk9vF6l483dk=3zX0#G zkoQU257Ys?@@NW3+6b%%60!rv)6yWHh@$8bNu9u3E#!xQ-vQd&+m8a*fcqtFXbPBF zw-f!8JJg=s&Yz9r_E3m4$$lD_hBuV>|gq@SB90s?Rl7!D!4A!!*f(n9_M*%gwvFG{7- zbH4iyV6Xe%b8f!+SCUj+6WSpgiBG*bjv^3iv(4Q94Egitm!^Ts?aY5Zo^-%`5{ X_31>QDEv~}00000NkvXXu0mjf8-%?9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vagrant-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vagrant-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ccdc26ef62ccbf9bb7bb237d6e6f602961bdfd45 GIT binary patch literal 1185 zcmV;S1YY}zP)&7;~Ef9G)Aa-QY!Bix~Ml1Xzki+I z`JLbAdw#!rF8rT*Yft-aAMI;@>7UlutlL{1Y}`I)@SXs8eb4c+lZsqTH&^=VUAmw% zV)Pw9H?VBQ9l@s2fZyADyrIhPUbp+yg#!VvbIJ7bg8g0L*n`h5tc^GTww?&T`oPSR z`npR6Q%XGk>jUnus#-cuoar_0Te-02^ibeUJKCm9D))RnYkWbqCIqz;3a2J4N%JrL z^IF38E5IWfz<_DTw;T27pN`-#bZO>A!MrKvs4qjlrxx|n4D?}pYL zPu2tP4>srs8FeeSp3x?i74uW~UsM$2;q&EFSz3gWsH75&02;u_)$@8&sq~3WhtF|3 zV$jwTm)D1K1^`0S)?7wV zlBG3%I(qsLnwUO+)80TfHG9M7#UO4-ONCQN>M9Gl^j-ikO}RF^&KVqCbJunRt+_)f z$%aF{1PVN)(@Ny)p4{`bjDnW|p$WnLGXgA{Rl)QM9{>r^n!$Q%^AvY}LpzJy7cS5RH%#b4mb!2#k)YsXOV;SB&~%T)lS zJ`b7@^v4Y5R(g48Rs~goe9}@8?oS|ZT6I7`6idsi)V5`V%?$%!+&l3=6|b5lW9YrgThXK24c#@u|=3x zsskw&?R@H%BcrJwwSwz+Exz}I155u?=)cw9en6@&c*o)v00000NkvXXu0mjfn9VkQ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vala-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vala-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d2080b5b3ed787bf72ee32e1c90a7631ec3ed235 GIT binary patch literal 967 zcmV;&133JNP)=iS}5XepGh^3j$Oq=ql8$_g4Jh&C7`f=Z|o4hCalB*w&p3Gw1z zpfR4j7zH6BNH8H;#2B;$2}n_BPzg$**g~-&ilI=pyX(PFcT2(bb8fTm^UQB%Cj;=0 z1Bnrt&E_<>YyNzZm77ne3it0JvsWk((W01)dHr6@`^ zKet#jIpHd*zfGk(>@LNUXBiMeaQ1>}9smS@&d%pvP{TtbR9Q56{X@A7WYWy>$V1Ynv`T z>FBHL?H{+Li3tj*uWhdG?C8Bb z{@xLN{DkrTsnZoEiA3U*$|Q`iAmIGGt(7VsdNrDvX-IJk61WJXxpD)63 zTsQ#_V6!>S4fMZBA@^hsM?}dR)&<}g@&W+JHc3GmBAwxj2pp&RIpgE}J8(=)A6oI! zpw_5*3JMAYjR*iS@sSPNcj#wVyfn}>6TufD91|MZ?>lI3Z{PjeI+m4|kvx~IS6>e- zE&!NJ#~bn0Q3Zk z5QeQ8ouVk&^Jmt*im=VBHZgw9a@S0-QQ)|60*t`ePqUsggO(9JnVs=AX^Z;S9|Euy zeokNnJ2~Mj@pzU&lNjGkk|e#JR}=sR0764UVm{bi+3A_dpEOD8s~dSm0SJT(0AWhS z{?QS;a%-CIMPXs^<^B=?=iLFq5R8vG@vtyClc0`m`I%P~03(El*3~%>m6enJCOS6! z&ffvx$PeIH4yGI*ky@+j3U;}_1t0>JylsbmR;!D>CaO6xBAg%ufGv7WpV4TviE2)a pNEsgbxU#BP@*`I?iShlH_y*P4Gvma7f(Q1;-RG>e z&RPfd1^!POYMy@{z>#iv>bAL9nOv8#b`peLl#OP%oR7)# zC{hbbEl|o`k#&V%oc4Q52Oe7J#L+dP*tu6p(Kgx8JI(7$V;~xBU5g<345XYL24q|A z(hmpMSpiKw@g-Ahy08lL$S>FgR&wb;)zgzdlTg!)^{&po- z$2UlC{QNR`*-s*Xwjk#L%OK}LPO6H16_yF98xrt+x;GBl@i>4sfi?&7_Ln1ev3^#O z8i413oljvbiE#?rHeopy=R$ainS`7I#5v9_G>%0Z7xq)7!rdJx84HW~5pf>kJV;R_ zihwWxM?t>T5Anyow#e3u(#DJ~eOKHC;JvN_Cw{tCe=^A?WLzFB5YGSzA`Fq=zC8nu zLE0i{8Z7B_MuWF5#cHu@M7xhq4&@kE56#Zc-CwwUh!_A%tGow1L+ccE-N3SLqGl2h z6E;RYIPd3cuWcVoxlnxM>{EL$c61Q;^zDc~c~>31e12%Sa2s~^kE3WpWQ;;AA@Y<( zL?H-32^o}v45~LzVmM*dR!zh*V6=XoKd=o;_Md)YYQk{ znntuR2aa*8ITfT#dq4;RI)hIhZS{&^-%rl;=8 z>05DavuG*oJtfvS@eXS(fR3)@YZLfrm{MM@f6mrnO{I;?7m_n8`8v)bAI2{#Yd)2~ z1iZ>(`^u@o!RD$C0N~t~4Hww??V|NNY;}X3MW+&Hn2niXXP?#8ffqV)b^YN0Kt)7- z_SKCoOfmqW^#sW+TN002ovPDHLkV1n>l B)WZM( literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vapi-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vapi-24.png new file mode 100644 index 0000000000000000000000000000000000000000..701d8efd2ff58373db5f0fb247439f9b1e832fd1 GIT binary patch literal 931 zcmV;U16=%xP)dHEE)d7GrUMN>EW$gbE=|;<$BeuXlImaVT-T#@k;)Rb?r0+59#MdWIJarZT z%t1~U78Y#B&b`}i%JY9+^$$1eIv0fiAeb)N*8#);OG~TIT>m|KO@*)~9|~9Y#<`#K zmBqD_tTL59uSD+!zMk@1+6sJuR&pz8jbyJzhxA6HrpK}e_$T4u%s{}>xr^^?t*g_U z*VNJbruqEjwEd!!=H0z{(EN}}DACx{8onDLG0dC}fntVAp4*52H>7S1inUj)>kn67nCwmh5^+92*AuSU8|v9u5Ic^vjzUcNz;ejbDa#zQu8Xk0nzaBvX7AJ=Ot)kv^z3U?u?5=5m)WA*Lv%(qinr z2EOt3&W4)IPVnV?Vf?d!0AdONfDHmzZ^i>g3?L%>&y(6sJu3pFQuJN1SPTXN49oa5 zKVfW%21HRdzD#-m!~n3oc=5SX&b(AAxj**<#J1b<C z_kT1IU}r<+atHXblQvKNF95=Ri9`dfT_HQg7hKm3hv`NJuo3S;=3d^k)7H@D-WC9e zpG9LC{^8g$_t#N`1MlQ+Gfev8k;kq5TTJ-l5d*vX_BYXlK(KKN2$+0$&L+&} z^OxxZBdH$%Z=3BY=AfZxq$>k0DXe$Y^M=zGM@<1g2AsCkXY&a_RIJHBM@IU!WTpmM zbDNM{wE;j9=}g6O?4rbNbKW2WtcExoqz7ltSQsW!bG@x?v&}ELgECHTxnjWhJ*3oP zc=iIy;&TMfRu-PH`C;(p`uFGh&1*2zB6%@}cu&CZL^E`eZWd}cI;-d(qvKluIM#-c z`GCMPNO7)LmA?e~Z>jG?902VobFv;bd~26_2-=>MVjX}K?gkZVmgL^9=2bOdM(7u8 z+E7@bBy2P^86QDOA21oSnY#kY1SR)d>^;_`sj5B;1put;9{ECW0a#%iFdxr^>qdzd zJ9eS4v#8waQ=3)%R}BCXsRMJT;ReIkm4WqLGy%d>m{%4u|HlRZ4Tt~iMQUC^JzO(2 zvFg~Z%f=ScSN)1+V-mM#?KRbANvQel@60db|AD^%Go?wOn=ZR{00000NkvXXu0mjf D&~lw< literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vash-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vash-24.png new file mode 100644 index 0000000000000000000000000000000000000000..659c5893c7a82b0e477bf69a4b4bfb0c3aaba471 GIT binary patch literal 1046 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 esbTZnw{jDN%^gd@7Pb5U0000729H z`oFc$+IwyIpG|!dA{!jrbLNaGaytUHKQD7x4)%#BAs$6m0ZyP*3d)40m6kSs()gbN zYn?lCh19Bm3Bz1bfqeC=hP_9X#}!}a*pVmDPL3cBplS#cz+(Z{=j_OrXeW`3e^{&z z;9a}d)GI>oA(g7q#*cp-Ey0tsb(W@R$AOGTDMkV45us(kPK0*C<1F!d@s7B%H8~}- zQIv{D6(0Z$G8M_L+m6t2&qQzLV8>eL_Bo0|1u%B-_eJX$oSwb7;P*!Yq-Laa^gk{{ z3;nvrzU>)+b&hQ=A!QX{j>j4j4Z*EP*Z;Ka{TJsarX__R1keqBS-E>zT{Ik3_ia4r z0`RA2|nx+|mO#oeO zLBf4uiapO=ompI92aLTvy(o%8_B5Nht33|@sYz~KxsAWIYh(aGBpeZM>|Lt1_<9IO zH4^kHqNAHYYbU1Zw!A+Y+YmsGC7HWjJ){+8<<2Y20w6)Jl9_7Y`q`!>UoYKL_Afw9 zdEKdf8xOd)lzZ58u$GFtRY@85Z3>b{K!TmX%=E#2-ZRsfpYgLL*rNHQf+*Bk&~L4g${(Ri*w zr%*i8hC!!Ld8w8CryCGbeQgM!t34Ro-%=d2&&b-mpdSEmvB^)v-EO*iVjIRi*~-0+ z;J`FaGV0j>j*B;4P5}JD5GXQb_&JCo_~@xd{nCu=^dF{-PnVf#i2&3#2dHiK#~P<9 z%+IsXcR%z`q9*zIS{rAtw~=hrv3zb8LgS1QYpS7KNcJL?7fNsJ@p|!Usi~=Vh2WAa z-x6Cvv!9Fozh}0?j6R|f>5B{i?)8Lu`O}kJY3XFk@&YDVQ_+NWO$YGJEw2wK8QyS& zIN{E>PCIPUY?ACvl|aCLbQEMXxA$Udr7$ z>NJ&-%6K2@?{rhs(9sXbB;A(&nW9q$PH>`8W%r61e6e~i0A;7@LGtXVfM_&Soi#Qo z?6jt!NlEAZFo_10IZiWK4(s=0$D8Vh6~u4#?En~bDnMk!gBCZ7#d6Q@>pbV4Y%RKR zryGEIPiJD(t1W5fv}=A}pf4U92!=4fb!Z@WwR<8Usz(LH%F-$q&l*>BzR3r`D|07+ z6cur|BO`^G_AvwD33`=PMNU>0*@Fme*F*1QpU>wKDAhxlh*f5D`geX`-~upXSc(Rm f5(=A5CR5Gd%^Qm}^ksG300000NkvXXu0mjfg~K!{ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vcxproj-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vcxproj-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5cb6f27feeb5f5f96b10c5f9d7f497c59cff5b58 GIT binary patch literal 1205 zcmV;m1WNmfP)0h0W3%87?T@y8nAsLdE=^QKZBuc^w5<>hg&;ldKsd#N`+obQY&Qcnv*)k({XWn0 z`Fx-4efPls9Qyr$tn#dL%}SYD;OQOHa-Q=lHmBVWcobC+c!4gZ@rfp7O^tu6|33?s zd)JTGl&l9bZ%IWp)HBs>TWZC!Yhi}(V;#xaH3b`M!-_2zNz;!LM6sSa#Ka_YYd_H_5PPWWdk%tfm z?iT*HASQGaZ+Ckl`%A|89I=Vz-gUEt-~f;sd%k$({9}1fPHDO;L89H#^Vj1-WaQ*B zcljKE6`t~ZO{sdocC*%GHig&Lt~|1I&7w!mN%2FY2@J6>FK%4g936`4J4$!u16e}T z8cN(19|FsOgqwAllgIq}=APvk@pKh0xr+*Vxuh>S`T8m}uL&6A3K ztd)n0bAO&)G~KQ1y7^A<5d{E|>k+Ax5&)jOOp4YN;_#-@-`x*VO$v4gF(t$ipAe7H zI3i+n!RfutM|YHdF%RIO!imGrZCotQecddMy?>DCjbQ*Zp;7QgA@13pe>cJBmETOg z8VK6~Y#G+h7d9`k9p8S$+}YFt8rVFkm=fdYZ4V)bhUpIsbn1>IXGTt1vd{&t=@}SI zMgS5WmMp4n5!{5MwC`Ts^>TY>)1?)iO&th>PJY>ZlCx~8KQN%BW~LyAB}$Xd?hD=I zJw0_|T~$5LZ!W@Q&=Cf~K;K|7RcyNTKZv5SA>D5*G9?%n`j52&;GLgM`qYfGJ63&G z@WHbm2QT}3FqjQ=oVv*Om307A)|Zl;mdNps8aThV8C#}xMkv@jAOMDkOnWuO7L+Kg zX?@4%!zYy@YoMzi0Q)#Q3ch@+uI#8Lkj@9t_iU_BUK} z+?Z|gxaPQNZD`>EYdjgb&XK>OnCP%PnCR{AzDnn*OL*sHzY+}gHR_TpQpn3=XS>E5 zjJh^>b&$!$)9C5wC1>$u!htYJ&SYG3y#X|8M_o9fo>0}LlNU>mZ*Kr#!V{Aizi1+c zI0J!}02YUZB&T&SaxG#~Qi*LvHI(dpiDXA23b+;uAI{G8E*M=93b~NlPbaDylP><) z_K*C$vIV5)j$K_j^WAUnd1VHJeNUm}F8|Tig!U7ygs%)>G@D3q+n7>34Rfkxwau2i zeU)dOOCqNS+FI&%vpX8gxZ_Ul>+8#wQkA2497qRxHTXp-wFkk@l$4a-+x7neNP3@q Tn?d7@00000NkvXXu0mjft(ZB) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_velocity-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_velocity-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c6fb8c8283201264c1ec26a925236baf880f21ec GIT binary patch literal 730 zcmV<00ww*4P)H)K;+#EOJ0eY+(cq(dr35?!`a*YFlmMiNv+P#3|d4rR5g zoh-T<(xEzZDkOqB6hTbk9|9wn%C!YommO!D*I_ou+?icT>3f+s@B4k0?UeW142%jYhAW z2e7RCfa7S_r>1&M-zr*K2EtM%RCV>f3@`?4^pKtb6wu@4%L5K>bA1sE zZVuPf#IWtzmQ?ET3f}7#Edg(V1Em6NJJTKtwNhCb%@^bSdN2YU0y=y&hT~Wl0D{4W znbig)fC=CMu(t?bG7t#8*7dNN z&5plcSop9F=mu&u%{T$>)cOWQBJrb2F{~5<)P4ZN*g}1M_isrD(2>i10ayf{0R4@P z*QUw}7#}}dEEZghq=DmI?{{|@spGlcGye{T$z@6>uW?l-v05vknlCR$?`~Uy| M07*qoM6N<$f-GT6(f|Me literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_verilog-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_verilog-24.png new file mode 100644 index 0000000000000000000000000000000000000000..258dec54ff46f3815b4fe751cb901ea32760e326 GIT binary patch literal 1305 zcmV+!1?KvRP)Jsjxw~nzwyt{d#Kwx6#%f9_Nyjmy z3;6whYg_l|b8TJ2+W;UC2rwPLjaIdWMxG4>0t^7O^^9%}UW-=;gF)-RPH?*l6`;`7 z5l})fNi78-l%!QZYl6bULgL9bcY3nTeLTQ>U5TY79TJDyw#1?GvHtF-Ci6Zf>^a<>eufNEi+t z892CxD_^%}MF}h{i?1&P5xzBy)=(c*N?|rJSYEOKTxk)??!OP`Tf3IEbzL`gbaZTx zWtm1I5%_#Qfe=C&0H~;Gtgb!Oza8jDzS|P|JDPH}T^m3$C1LZUs}bzJjvL{au1XqL z(9+%u12N#%P#h<}Yk@PsFTHbYSzHJ+_US7X`eF^}sHs9H&1u3Nr&-1L? z?bgo)0KUE04vWQvHC)LQ^^1!N@N;M16rbDeW_X@wDWy7t0Km4LO`C()Mz(_hx!IPU z8{yQ-_^4c_ZQ8xXhr(PJb{#kdRiyxc#~)saFVD5=YiA}KnwM|8Ixr{}g8~mM%xpOJ zLB;V|FPdg&er!X2&KxXVG!Fn^F|$aCk`AA41fWLaqzbea1%pAND2jFK9{$qg3IO1p zU7Ii*AH#to&G0@{iuPas#7I1;$DNsM=;+(rDu!W%L?S`GUata7Is-z8!f~7&i^Y_g zRGq#23znBGK$bHD*>fCI;F`r^F@@teS%d2pJoEgCjh(%tTcE;_<1+R3{gqlby#lj| zLBs2n=B*lq* zK~!A;xu?0(xPlA8ZWPbY2jBh2Ohr;jRI_d~l)2-QnyXhpDJ6ct->Qv@SKjMw>W?IS z(+LHhEUaBog5&;6_s|P+t^T8Rt2YUPpaMX7dHLN@K?tD$QrhM>-u>d$Z+=oqGBq)G zG9)RE;mpNW%yF8g!0lG!%?)b{YfDQ@$1u&(&hkJYknv`H?3!Wmy%^!hz?1` z(IKf=mSutCxKw0NEQ$_|mpL2`H615yf=DESJ2UU@%Lby-Ngsd#21-C^Boax70h2D^ z^ZA5RXFsdA*o@&;Kj8IxmCD^sA1lg)eu*Aj;ygS&A{O|3J|S&}|JwcmF5v-YLnRrs P00000NkvXXu0mjf_SjU| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vhdl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vhdl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..20901cb104a2e1d3b59c5f106193559494e73ebc GIT binary patch literal 685 zcmV;e0#f~nP)c{~L0&I#H9kpRFYJktDwB5g0_n{)6i+{AxhtfEhJu+2cxdUqHF9JjWLBa^)?Wp#yL`IEqv1sEUz= z#LW{|0MJc?SE~z+1Agr0Sp1d(!0U7~di+9F%t+sPj&$|_u$WmQoB!E30ANOaZP~TP z)W~>j0VXB@cSBKRQ3@3Z?u4!ZU}7@6@}_yf*X<3KHa-B*+jW>r{;=gccXW`zK|cVg z>_^tNGR*`2c9FE~@ldp6H#i}1fmL7epgKcKIgu${7VHO=;D&23PriEl%A{S>bzaLJ)m-3o0&h7!f7f`9d^m?{>k2XP_!d9cyRq$y0q_xAnf`<`d!<^34=&t=}l z;P%a{h1LO~l8G6*XI^Vf6bJ@)xOK|X4mc&lf0xYEIOB5LJ-o1NhI*h)vfaSD62Sd3 zb|Kx)LVYg$BQUcv%vxq$Z8;;<6O?Y^*{sX0=Pf-10Fd^l2?R$6NEg`y1PF2-n>zf`Totjr6ZP1 z)pgcH4#`weAOJASR(7mdIK{AXP{Hee|2X*Z`MzEKU*GiA_@5b+-;YMBLTEA~Gpaz? z9vfe_6*Simczxo?tD#4Ul}H8f-)C7BlG=fp!0B9`f6=f*waHW!vNk_p=wU}K(xlPg zBh^xyOjQXEdPCnm(DDa0OByidi~%ZAHm_rKq!C!=O~?6m)jQ_Q7MdSipoQje0Ehq= za;dLHG{uss27^06@dmB2WU2w_m^b%-ft!d{|CCr7R3L~XqSZSkHUlpT1m-9su?4Xu zD14;mOPn2{JZ8j5hqiD~qG{+#>I%pNKA556+r@p=Yvm)pe&H{tF{e{Q{{A V>wC`{C$Rtk002ovPDHLkV1grTZn^*f literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_view-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_view-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b4f8962f69b28085204bd08003842822dec81a92 GIT binary patch literal 896 zcmV-`1AqL9P)hdRbfb&X-a+Ti*JvA9kJJAo?K|E;Ix=xb3-TamuOe;&F%E5;_K<%2EQt+6Akm~_t)lYa45CA~cMZ$;e@b`ZBTPEW{E373liw5E zxI+2l0Z1h2c;Q`AdynGutpf$Mpt`UM3uew>i;9rh{xX?e!-z4IE}mxY*n8MJ_xm5Z z_!o~+`R*L;TZc((+(xQ!it@-IIC2OPUAza$!HtOHQu%q3`O_c&6TH@U{x;rMhY5fA z5sZU7@bo>qmF578DFV#CzmL-R84{}p==tD0T`v}pW$DOIk{u+syh8e|GdPbvMlkUW zcMlh$D%8f5+RfC~wNIdOrMgc(zJcsZZ{n`%C!C$(R$(`(ZkN>FBS^Lfd-EsC$KN5i zdYMXDDbIzd%HXPz$%%$N2#i~F!!X)=6PKBOeTdXEyXbs=80VoJChNemPQ0@p;*EU* zfq%a=3P2lv^9(efcYp2r&8sgRfYY4=g!BprRnR*NC)%60_$6z5=N?JQ_;}C|05CPQ zZU$IhZ?7toYy7b*&xKU}(wV-IYdy90*gsWh_?j1!wE_}C zizv?m>!~TJ!Vd;UfeR(ye!F(;y4NU9Q$W3n&#lQ-Ok%TIu?Z*mdgYfl{?#xnx&8(> Whbzo0oPM1E0000M+DRRyD?j~(Qs^lyw54#)={a6Z8oL#@MSZTm*D(#oNhLoLDMwo-CfWO4TfewGYm%W-i19G zMNvgf8JBU6ynFsViN$gl0KoG+IF19$u*hZ^So^Ha(MY5-3Jm28I02EGdT^f$uSSS- zJ?9}7iva-ZYik%E9R)?jAXLa8Q7XVDk`ns^8#bsIPMtmjiByv7-Z56j@{Ny;O?1DY!J5mjM6}%Yj7q?(jW0rfgrj=jT7! z3lh#`OJ(Z`|{qOL@5k+1w_%%|%I;*deNWT!3IQ4lG|tJzip-HmFf3pwemq0I6gW z)|*zm*3k}>6$3>6j%55{Y`GRT`PH>fx6c;<{`Rwr$K&%dLKJFfXy`FpEFeiTkG#FT zjjyg;MJ!I?;p{BZTo%RDCg}ATxRrGX7M8K$SZPR!-JA=!geuhvm2(eg?oE!L0rdm_e-qp5jXlfSi(ln-ioA8A~q0hzI`tKyNQnED5gXMs9atjig zW7%YC2twg@NwKtiBNkgND=)7kNwO#y4qpuf0zW@v005eL%~?XgbpYUbq3~O;*BjJp zG-pXoU9Ze+B$-qOTQ1KgA71NR3^vyZkwEzGB07*qoM6N<$f&|ZJUH||9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vite-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vite-24.png new file mode 100644 index 0000000000000000000000000000000000000000..af9a8e2a867342465fb0adf3e06ce559fcb4b006 GIT binary patch literal 975 zcmV;=12FuFP)PTtyVee`oK^rU@HDl4_}vQY(tSq`1@2;)66s8nr$tsKf`gHl#@~+tLqBiLnr&)M&Qp-8(aP$A`^b(@oNBEjloq zfjj^I@0{Vx9r%xj{9B>_^VLQQGg*9eudIFhotpyqi_bQba`#gVv&3N*!uu!|HsC|> z(YV}sa^rGZ1@PEOUl+paZ#K!)lDndzK|HM`nx`UuQMvuK1AblFaH*qLLIq%BcCE4; z-uA7ZQ8Br|l2ev(v5YswoWf_h4J@GcXNBqIkGJS+>)N6thdtD(JNsY05I?{{o3%o zHYMX^))%iJu2f3pT;Ft@-CMS?rS&C>a~V`gGdkVE$BAzlfQU~Q*ryFewGa^JSt|Q- zbdK>;PvK^pN*X8oy1S*g7y!J#Q%02Gqr_Yp$P{OBlgE+>9wVWT@Q~GYD=ka55xoQBw z3$M_p4L>9Ro4=JKpG`0_atNH`eC}y{z7cJ>Q0FTv>!k08ksJ z4kT@xHbpXZKQlSD7j5u?k>>^RHwAdIPcCZX-_!;gY9{&ZO#6KHzVDIaGQ5($st4!j z6TUV*mq)m_=)tdh=<8OfA$&m3VR9XN4002ovPDHLkV1kPu#}xno literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vitest-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vitest-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f52e1cff98a7cced259ef03974381805ebd3c1e9 GIT binary patch literal 752 zcmV%06Isl(DGCY-f(R|a z7-xh6BQ0rB?xRhmQUrqZW2>_1he+&)Qt!QA3upA2j!sYz^zF`hzxR31`7Y$>{av(!#`%H^G_S# zcjne0Y)IQ6R7u{8kLhF^;9$eTxwCA0x9{uoi`DP${c?pYpbJ z&MA-*t|V6kQ`C0vVXu;X;l$dly%`oXY+(f6u%qZ?h zw03{u^=JSvK5}%nsagt?$oE?sBR0wCj;OCu zt-e(8Ha;0A?K`NiN?h^8R01xrGaL)GrL;)Qxt4;f;czXQB@9{&Xr}Pru1GYr iF%k`J{Nvz%x_$y6mGr9DZ9EJB0000t!q_8yO0o~NT|@TFp9PnL}ZGawVIh zL7F0?Bqe=-6_jmjBeb)OBx;fhGiRpWJuNJAX72bAcvkQJ&pZF$xrcLMi9-PPw+*f{ zYSs&Uw4RLRrqZ8ML49s9Ms-0D3CCkA#hNM=yGlYk+;^>I#0T)i+YEFA7z@#|N*ddq zrcp*w4tKOx4?9hdp4(tCH&t0<(^Lomil`vQZvaLNKrHk9E-+D0Ux}~@qfMo{w$?PE zY!s*{NKM9K+ygKGH-cS1K<>D0WKZMyM~Oo9(4ioTP+Ov=x8uU8$r-@(M|itLqX`X{ z?JN{05{X)%+*M$)GhQ=*wb|!`z?iciq@hSuE!F@;Klq>4J}CkOL10y+$62JZ76AYVON~h*xlGyazo)ED?FFLFKaH2?kq78(-S!f2uA~_L zjYJ(In~v9g?I&N&7W|?PM7u@hY>}>7eelfVs)_e6e=1t->>lkX)J(Auc7j^h9n_dQ z@pYf8F+go-yXOVmYOZ;wm?2k(APp$a@u={u|9Z>Yc>w@2Ymf62y4mxiTbwB?&Kf5m zBViAaapk;tQXFzNjQFVq15(X3-w?U)2CQ(&1O1myd|faA0P7x;@uQe!@jOj&k7rIm zCii&&7ggB%4M0S(QuO=*{8$nZuM0%yvT!~5yzp|`mi?9X1c?{s h{EF3A=Br=w_zmQ|)S|<0yZ`_I002ovPDHLkV1m|=Q5paM literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_volt-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_volt-24.png new file mode 100644 index 0000000000000000000000000000000000000000..31d6ca3eaba2697a053c43c1ed0ef2fd5cc07b13 GIT binary patch literal 521 zcmV+k0`~ohP)GgQfUPJf646FV6>D`vfi2A0zTHDkraA4mGv7CVZWiv?B;=6idDA&}AR_U@hc$*=iCHU<1JB;QuA?VkW537{rjr3Op~JuZp6$ zSc*Wu-`@ZpmEiZPT1*ako;OvsvxuW|$VE}i^j}1N^?JR1GusB9I_EY;~5;RQH^wT1a&`K-J5Rt<)O^c8-)UTimd^fXT?rL6&9f-upEX*^A8{YEMc{ zK~zYI&6Q0^R8bUwzx!sKd83ZMm7zwP3Pd8RF@!Xz#2_MwVvN9rrbdJ$1s1k>K`v?& zRvZ5yYGEq26g5LgB~a6d-1I|5DJ1GN{*2?yIJbpXz8OayBj_y8J?Hz*z3*`^{NEvk zTK=pcvGR3ks0y)Rw$^22bgTwR!PfLl6obL#c8u3e`W;u%4*UL2kpCzO)!YIc14v5C zK#fTNz~^?k-A+gK#EtYa03~errKgFg>hoXlz%Z(jYIIV{<={-;Drszc)V@E z?zKvdW=pbOpmnLtN1wpF(1DgY71UAmBn?HhBiREYjAQ< zQ55&;0-tOIdY0uaKrQ9H-3X->umuyC}iq>h(+1)ddev{lGh$3!Gs=wNZEOjjpOP zqYp(K0=}*wv3cg*worobuIuu_WDNc`g#NNiN=`vlEqbt&H$NB0YvEnjclM29<_OTY zR;kbD8-b0y2byghljSJTz9QJ`b_T)Qy=fR;Xk$#N1&1Arm~UXRB$?VP+f y^8KxK;>z~24RM1*ipa|0!o<5@LO%NcJbnTzX5gXY1wkVK0000of)pAElW5T* z|BXyYtcfgBs1al;T$Dsn1g&fpm}VdnW!#y2T8!b`F}h5H@&-)lpE z`#p81fWIj`99NL;PnLD%&@pbJkANl1T2s8CZM#^Q}@kzg5$n%JnlW9hnRHdMukUe|Ct~{J}^2nLQ|Y4h(IQR z2eT@RD&NrCum#Hs0FIBHeS&za@bo8Kk_WtVk}CRf{s4f2GhYasJF!14Q6(P~Egi}) zy9bL|nLW*ks9B34P1#8)?FynuP3+2CbY(v8Tszm&|L64^HA>xJS)nS=00000NkvXX Hu0mjflb~8U literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vscode2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vscode2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..43dbdabb5dd8c6aa1c75b81c3429b65133e75faf GIT binary patch literal 680 zcmV;Z0$2TsP)ehkT8g-8yuW zq97`AM3E_F+D=KapPuqkL>D876;$GKYd#&O;QmkDp5yy|pYP}8;d!42>Kw9Z2cs6L z*)zD(FEK}d*A@^QanN$$HqZ+!fIb9n5%GQ4JRmsY;LyRls9wmsQB^ zpp9jnpx?fV(cJR&*-o0|Q4#YrFkc>E4lm%+6QEOo17VQV%p_rZclLhHMH7!fPv_;& zqv}T_RvrLgyoFAJ{%aJa ztB8ItN{n#a6m(ft0An|@b<1<069DBq&;>kOqiO&dU}^Rh;di^L2N=7NB}NeqtenIU zT8VhaNDu;^=46Tnpuwg;eylRU%xxnj;|Lu<24w)3CqTse4S->9ngnM-p5)~>BN9W^ zUmlQ5?gX6%-ebvehP>Abx@6d!CZXqmXr6}?Xf6d<|F~Wqc1VR`r-MX%X8mm%4Q2TB zr5BO=)yOyY52B$AA3t9#0Z~*YS=KSw?8-E1k(#+fT~=ler1a9Sd;ABUz{GD7QtxvB O0000B@z= za3$I<-H8uqLn7kFPLd*sx)2l*U5FxR5hk5`Ty$s?o3|}^HZ%A9|NXzYaF`2gT(T-D zsq!Gk-^;uAkGOx*UtK_|Jcyb+uoL(KOk%>fnHc);?|}5&E{vZCw*RI0sGh)yKL~Xn z?(W9;g*xE?VT68w?f~i19*h)#ZLO^90I=u!@%&4KG|zbaY118--64!l16$hpmc)7zD??Il2J}{-c_=r4-%Gmc zDS9ijB+8M_0m^w)lELaD$^jhf0&o5RL#p ztK5AEcS*T-5H_?203Y-kJ+Wgr!{2I@jP)ENBf$5XzRFpY(dK~O%0s{*q=(7IZEP`h z-4n4AMn+danpAhc>qI$%m>jURu}R0s#wWWQMJM_icdWOlKLUKJqxvX6 j;J?2zt04_8{WY&YjfuEqor7I_00000NkvXXu0mjfR|Oto literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vsix-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vsix-24.png new file mode 100644 index 0000000000000000000000000000000000000000..61bcd7d00da76cb2eac035c1e79d2cbf3edbce80 GIT binary patch literal 307 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjoCO|{#S9GGLLkg|>2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt%^UT^vI^ItJRWPp)P;2B5Vhr@0>(qF!KlS;e$#c1NdbkdpiCR$lq2KVGY>cSj z+T=@2?B|zC*v2s2wdmX&=pVevqBvgqj@iYUpatR+4OG&^?l36@rAj?NH*dn+126SN z1?Q?dH10m*)0n%`fpgZzNB3`k5!|ivJ~35z&ZIrehaL(4sd0VvV&c;j)<^tbJEm~Y zxS6`dCc?1x!t{v$%JpYmUp@J5SjM+*`}67@OuO!Bv~1NoArJHmgQu&X%Q~loCIC*7 Bcnbgk literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vsixmanifest-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vsixmanifest-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c10f41140a4822b73ac3624f2decb70fe5ce7df0 GIT binary patch literal 875 zcmV-x1C;!UP)9sKtpfc}Dzac95>ar15W*k%#DFF$DG5;$R+z9v7w+uB=!%75 z;|60i#>9n6R7ecQQ6PRWj*3PQ6%;k{Dg99jrPJqvwonSwV)Sm_+w{xS65#0K422s&v&E{h8f&40oHBT zgU9{o8+-u(;8;aNO-UiTZgp2v&|*UU^tm`}E#&uYi6Bf|^X|}hk1&8|;yc(J&SC)Y zQ%Y=3r+$6Rme$m>v=pY>9L{k6;$lQh)C#)$1PqUU1}KHq?vTayzY>?|uoGy0}0Jz-l-Db17QjrBD*9^Sb=9d*d26g_sDj3M2iO#(y0@0lP7K7Dd>NYBaI zh5VfCNg(==g=@F(m5qEEuM8T-zyDfrxjmP*sS~_GOl@SS9)2tm`~L-;!R1C#>2PX_INzds28BuT=w zb#7hKcpOcMawFiUhD6qw+ zf>E%+!GhxyD9GIlmStsQf)xm{5NHzAP1X=9F@w@;4002ovPDHLkV1gS{ Bh&KQL literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vue-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vue-24.png new file mode 100644 index 0000000000000000000000000000000000000000..58f1203ed670298e2f39a58705cd38d69b91d42c GIT binary patch literal 835 zcmV-J1HAl+P)2_s;Mm6q$h0n4mSrw24iG5Qs9R{tOaBVw##*HC;6{=>}y5 zBDo4C#*I4{ZrTMg{w%61ut)}D6X=4S5ED}t7()|Fk(LhJnalUNnBF@x?SL3`VLYpQ z-gDmfJ>SW>@LvxBIG*w9^=<1=2&y}_(Tl%HnCI=-#+>)b%~IlVZ?I7Zer?1#^03j> zLBvtDJL|LE-XAsqIXi7R=8Lds0-x=lHZi^~Oi}0f&v;(Lg6Cxm;sf>B#r0LQ8Q1`l zu&8RwVL7V62gs|pfC&XKn;!X6kfrEZRTfTrLo}_~$hpqO@1KXce>3-WC=TFsG$O7l z_8VE6eQ9(8AZl{;cHfqY{~{Oxh&^3Te(@H1EeAkwZL_a!c;J}A=wNZ<`DhhMm)Oy0 zQ-Byz>SR<8KPG#}uPNl)s80!QSF*^<8?n~5zfx=dC2~62wcC{hiBgQw-^`|mf4(MH#mg=a!vyy!xSjj#X=Jw$ltVa^X*%AMCvgyrI%`$_z&UdynGFpnc zsU%_v_k}IE&n3$sZ5Ur@?a!8C6`0UH^}%(JrZD%f+#tWOUe@EZHQ;nUSPEUw^t|`b zy;|yCpa5F0-#xa%E7}`SHCAz|YMWSV^xI$nTia(UYgLGuo_8|{S0f;%a5@@`hR-%4 zPLV1i^V7XUm-lS|5SZFm#h}C7eySF$IgVTv&GFKfY-(=j++G?Luc$O$m>N5~1D{o@ zX(Q)b*_p{1N@mNV(m$N!4E=Zd1p+owRHyETBN^c(x3?#m$a%Fu$r z%oGus{{BU8{vR^{Na(tgAbB9b4R$@t14Z}b`yZc}`tYNFMg0F8e*!hp*~sFBdh`GQ N002ovPDHLkV1oChlIH*b literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vueconfig-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_vueconfig-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5db06377f8441bb88a36748b4d79b642a7be812f GIT binary patch literal 1051 zcmV+$1mydPP)RD3>8DtTsBFQz0A(>VKcLnbS>$N;CcGa z|D6B-T)yvv|GNpm&OSTp&YIVIpmEt!cjzzi{G1g^owN^428lcEH)>rcQ{{6utWmeZ z@i|6SeyYF4p0)tUTCHYSKlg&_WJsTxLo;rni|TOZe%p=>+V*@wd~bAqXzFjBb1VQU zGbwM(Vup3`dd4{5MW&l)6GM;a)Eyr9};m7kM^Xr|F`CC2Ty1f$f=CWe%NM<&^`kA2Sk^(2UzP{ih z2ZLB-M;tMQE6fri+v7_hSLqsTNX`eb5=?06ePL487gG!1}x<0|fE9UHg>RYgQD0~J6%nP^(l^i>Pk zwr%~e*_>V^1F(h~YKc-u4b??BASmy-%9z9>A150cawYE|P{1+awIH^U_0+T06IYPW z5a~p@PylqFh<>2s=||vSE;(r5Ck}jy@Q3IB#)ZK9qC1(`_FS@c+q;HZJAm9G{(Iid z{j{P20OYJEKonq{6b^X+1U=)Wyx6w+B2f4&B1d0&sAY7;1^OQD7*zBGKr{CcqVOja zlHJD#>HrS+3?zXY3IXl>r1!@M;405_xs|!qd(y_trAcPYD3!AU)gbkb%b$mP2d07A zK)Rvmb%2BR0prB-l zYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt)lWE{-7{oyiFc3=>pBoe%wL zU{jhZ7a_3YAp`eHu|Mf4E7aX&AJ=!N`YefZ(304iaHT1bTS6j2LPFu@{2MY}S`xn; wO|lNIV0Avg6fw7kA*ww{SZ2Yl&KnF2&)E3<>kiDA477#8)78&qol`;+0RDMEfB*mh literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wally-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wally-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e5a419ae00fde30116b0d0b484d23fbe20dc08e4 GIT binary patch literal 1367 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 VqZmzsS!4hJ002ovPDHLkV1j(>1fT!_ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wercker-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wercker-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c66890eab70d39a1384c4e50e7d72f245784fcc3 GIT binary patch literal 849 zcmV-X1FrmuP)_x^ppA;Xq$(D3F;`Ta51(9NPWiaNS zN{65p5jMoJN6Vn#lGr_MSQNG~1|oYXC`}ugVDC-cT1V$h%>A7`wB6F$+@`n(&)fN( z^ZkC#`SF7vJWJ7LjnvY#W$1phZ_39|J_IZgzO{v}+lj{fQvuor3#%W6 z&Bq8wfFde=vnu@*r~}TeDp{vSQjwXJ0aPV^#eG**&H^o<14gW#eA4j%S_bdFSod7` zIB)=%R-tda=zLB}{AB_0D{i|Q&H?Qx!$#$Bevk9(Qgdt?y0_K#t$tuP=uI(n=k_#R zuL_7|3vtwpqKt}7PcG4z{TG~ZFDbk{C%ZM);iM{tN~+HpgjU3A9ZN=X^R-YVz_-dF z+qY2R#8`znfI+W{TDJkP)UB-L5{=nt#(hCxz_-c^JQpNOMJ(+dMQB*CuS!EKC+rprWq`tY4}o$b;qdfq*TSy{Iv!KLAfGTZmWQ`HBE#TMr7-9n>TE7npsn zH2})>E|m6*CBFceHGhA?^xBhwLzHHULG=ZIJMXNU2ELrn?LVLIMT%WP26i}n5jZrT zi&3qV`y=sjmVfvS-8-T?0W_SVL! zK!CtQlun=s@^BgV?{nqGAL1GB0~NNb{C8DV0c*X;`Dw@N0A50Pdo1bv7{rKYyw?@J z0Di77{(fO`-CBHbW4}DM?a)3@57qBtS@*qa=CQQbsc2Rp9};`-NUE*$#FEv-o3ox{ zsb+w7;45G2dgfjk8!t~bg+hKm%KN}iQqqoGs%dg5pTG}i+eHmeMZ8`SJ_7zg`3y@} zp>mYj59jQLHO}#CJEdIBqoyx2I#g&Cqvuh5698pcZ0*V=nnr5T*BsHbyDOfa*zv!b bK5hI1ug@0)-9!()00000NkvXXu0mjfNpg;S literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wgsl-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wgsl-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3a1baf4f302da3bd6ec156d0d79bf891a9f8594c GIT binary patch literal 587 zcmV-R0<`^!P)k?vzXdXgLP;}PRxx~#q9}ntu&ok%rD8Au2yg%>H_w|0BFAtpS%u4}q zx4#Hcji(~mY_oiX@PA&kb?*9Vn&I$2R9Jvc%X~bJGfk&JuzOl_s9;rnD z%fYTZ1mY*c+Z|s)T?2Vd(SHNYgJlkJ6DDX8*BYemhZm|T>?5;iM#D4W9NCC(c zqL<yaq0?c+99=Nt4ghZsP3Cdvy$Ppj?ZE1x{3*R;9jJdR#$7 zy7t^JR(YF>kiNioKLpYNOfpjMH{};L`hcH^YQ|e;yv__&IjT`JP;zA6`rUat@VU;6 Zb^!1Fl1Y^?*$w~z002ovPDHLkV1nEB2gd*a literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wikitext-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wikitext-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e50c8bc4607939e41292573c23dc3bd37c5aaa2b GIT binary patch literal 823 zcmV-71IYY|P)nu~ zK~zYIy;U(ta#0vPSD#aYK~h5~VN*#^Z9#!bj>)${lLgZ&2{@80vh@0@!c_i}+>hWL0#KAukE62PVM zX>f6Ikqicd9Z{}SDu_m-_-cSaAb?OP)DZ)ca_s7eVjD<MePbseT@;`Q|v z&1Mq-V45aO(}b?;APJIqd3k|lS*X=&006@h4vArOzpQ7jg1Nm8X!i6p72DgiK? z&GHkuT#f*kN~I(>IXTH(E+^-OLV@9Mn2kn*rBaCiQY{T09vF9<t+CE-Wl? zc6OGAVaQbj;M&?6&(6+leU97oE2gKX34kXjCz5-7e5A+YVIUCT`}=!a1LbFwpGYJU zD3{AvUtgD8Fc`$j$_j>uhoLC#B^(W6u^5JihHOH6dwb~W>T+s#HgLII7#tk5@qK-L zj^e<7xDRB4YPAX>M7wYQ8P#f4j(`2q@35vFe*k#O literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_windi-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_windi-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0ecd11793b83cb09143035d697566644a445a33d GIT binary patch literal 945 zcmV;i15W&jP)tw7qco zF84e49_~Hwd%%BeGTr5-zR@*8U24j|405)8RV?{f2--*;_-*WaLRtWT29Ovrvn{6@ z;$5>L&{D~P-&5NOX#shU4ku_BphE&qziH}7#%4oMRx)c=PU=ZB{Lubl_18@ud?GUE z&Q)=&jYP^C0Q{7L)*neFoCME_vt-}Fd4mvPeyeFU$hYQmqun$#((ulYulZlBK7OO( z{vH1#7D;5@0@!9z>>nec&GsZ7>0`o)|~mf zDiTzbKTt7NGAv4px`igX5r((L0D9~yB8XVUaSB?I)4%{$VoHaK{5&%!Ds!^&_Ho5hIXDg~cE74whfzlEuHP;x~NSxMo_?u}QE zU)d!=5&r+MsR=fmAN#}%YY9Npx-#_K0XVc4?wthakTSz13-#!)Z^W)oN06t1EP(K7 z8sMt5%$sxz45%&A!!meJuw2F7dgZ&@um7?+-uECq;Yv~&O z3Jy`B9%_F%cD>xfXUqd22))YG#KY=lOdu-r2{fD8%I0&odq}Po1626!>83?@ADzIn zy`s8|PHHGpLlP9Zn5OKTwr-{b0Isdw)K#GFq+)JeYW% ze);~+_nhDP^E(IrPhxs`Cgi1IEgZ30#Yg~`73U8DQs~@WF-l@JJjD()4fdNww1$27 zGgvytL7+lHrHu1>1`qr2n?C0G!*lI}yqOOVYc{IDp5J^rEN-Tn{|x1W+W`>}=UOu(U-7o~QP* zzV`>*k3Rw8cCfeQ z;nD!Y<-!r%N}|7yg`q)`BSRTW)nhtSo8nBba1beGi?n!KLTw5*BNuCvo}7SGlGw*b zx!(FFj;bI+(@2^l2u}e;E$@=LGQMa@(w$O}rom+aKMIBSDxwT&0D&l%!(QA7f?4@< zyFpRO-?0Wjvf}uG9U1Ms zd+sAWHG%3cBYNZz^WT1hv@8l=Zbm88Nsf=Am2b$+a=)t6D5goTD2QpGn+Cs|1~Rfq zm#N7K`DcB#OkDg$j&Bc2(?FUA^6HZh%fxR#%PWuFFO#ETIa*bcxf>kQF|x8?Q+QAm ze4lkNbNm?2>TM)L!z4q)OV^1D{iMbtIBV*d?K*+~%QFa9{vuUo|E(nlkpM2>9I9Hq z?xWAK=58>3^e|`+w6gV-cAiBoEA6;p zJIjFt#fotP*x{z{+If~6r@Od*pF07*qo IM6N<$f)<_k`v3p{ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_word-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_word-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0685d2e449b89d865fe24cff34115a5c44593bd8 GIT binary patch literal 745 zcmV#DVuj!X>qZgVl|sRdf}(V-xNz$O1RsBZOTmQ; z>CTOaJC_kDw56L=ZA&poePE?cUrCcRGsnffO` z?aHSZExo6ZKyV8=1!UbCn+~{+Eda3EtiG_8KnlWa0>EzMF&lZrmUU1E)R|n#8CWc; z@bpHM!DG8ot31DTg!`9!P*v_;+|TvFE+1Iit?~}pg0;$rxfFdpjYPr$I(CKWKh%n< z($~{OJh6%zQjhViNzN%Mw$Jx#>l%x8tPr%PA>QWQ}fH= z79Dtyhr`o6cs7NqGCQ}zfuYyl?Xg-IQ!_yGcG=4V>kE~9tM^}YnM3nA@bYNuP|YKf zF90N!d1AxCj}{H#U&YMl*gcy~Mg0k0V{(Y&keig!ijXGs#d8GmFmGZDoshKlstA@0%TY$ohrJGl1WyO7u#Rm bzZ5?KQpQgV8kkU800000NkvXXu0mjfv3gUY literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_word2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_word2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9732efe35029b39274d9963283a641b580adefd4 GIT binary patch literal 846 zcmV-U1F`&xP)Nbh%9xN;RO3aUjA1`#DaDCn_> zs0bn4L`9%Q8(Z`gf+#H=b1Z~>TjoqrnlrcSX`zfvbMI(w>JOKD4*&o8{^y+UJAClJ zVZqvSj?CN>p3&-6Gh%+;nMomZkHSEvM5YRa2gnTf{hWi~6EI^m1_Hq2Em^25mTe$2 zK%|3o1CBWBf)csMJgOo^$nx0#@<@*gpetfK$m4^o9C24k4(p_&2iM;*<3F|qxKdVC z44gB)qIj^`64<(KfhqsCzMZRO&l4a{4&vcU;0KG>oHgVsZ|#qokI7()b3D%~4w~{E zUEh#Wh!}&}vz&~xC*uFm#j+e1Gp8kU_dyNIa$FQ_$mZ~=3Z#U<*FFk%T{jF~da=m- z1l}AMg4`E&1MbX3umYhw?u$$;PGAg@y*n6UWik@zvO%zOj?T z`__<{V8NZ1f|QcEt`z3Frc&c;jp%y&!d$%e$k3qV(8i&WjJ=}wO`lO!3oG;7w6q85 z@7Ku6m`-|X3OCDNMRZoH%8pG74Grw}#He|cK`8u-rsi%6HfB@T&`v0|e8a{s~K7R-K-gH{pgM116h-fSpg~?8b z;b*Z#hm0xHca5DCY{;gzp#x3RQB{TN+UVU1Ajx4hJb@VcOT{1u0JrZ~Q~9KUo?tHk zdy8+;^szfiqv-?q8aoXQR;|d0e*#U@>Fyc6j;Aj^#00TfRW`5AGBmIyMu!~JOYZFp zbNR+oL+<>s9fJd-mpob|Pq0&Zp~#eP9xk}C8T9vS+<#bSZqOP)2>CN&peW+rfR2!g za3gVx!G>cu3-G-+6f8bjK0?D$AH#4}#lWm(0&{>*{;Ff6YMFlxPkzbxdEOG^68abT Y4Qwv*it|yr=Kufz07*qoM6N<$f|wqR)c^nh literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wpml-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_wpml-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c9d9ceb0869c7f88dd0818f9594e490c10e49040 GIT binary patch literal 849 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xliff-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xliff-24.png new file mode 100644 index 0000000000000000000000000000000000000000..22dd7f95e026760c2ced9f0ce06d18bde59046ae GIT binary patch literal 431 zcmV;g0Z{&lP)wNM8j}X8QIy7(8Zrt8NzAFnz#&|WXlZN9SL_c( zLFFJq4UMgWlnS~Je#@dt{RglOZxz z>XA~P+4r4rE^L;#Rk{nL(K7X=#0#=PX34v<$aekyK)=G1kkAaB;GJIR8$j?+-26NO!B8v+WZ_I9Vw=N4LX19wOm&<RQiEit>$ElW0W8bN`HMWNI}D^S|^ZSC9AzRxaz@}mmHWZC!fobP!)=lkS2 z2mWKJN=);n`Ic?ly(rZTfJj_v+E|CKPrfoBB2rs4&0&y_fY)DQdkpHT==wJSrL2kp zbA~aXM1B&5Z@(LEC@jKYz~i~KdqXR8n#m79Zd6))tytt{G~AJw!p*Rme1G@;js$at zF@WL*BF;*RPb8N4e)>M~=NY;@4SdnpZ&fSD+3iV6fQU$~Z5Y$ZT*T*b?S1)F&f>?= z6o18|JJttU+PQSRZ*EO@zuB!+4z{(ZXqv+d>3hCkr$6IPWQ1HXT~=6tKVlI+AN{?o zIKZE=C=-cgf3;~2mnE1pQjdR|`Kog%^ALcVsyc!#7wBp{he8oH4ZeFg&J!cKXS$w- z!+hB{FynW7x&a)pKIfVIO6O8$x@623GmJ%lU_SML6*TP>Li zv~oKYWPEuU$OCXU9>VK7M4;YJEW3A-70W^?)wTry(UgYZAXYfd^`}{^;&R!+gq0={ zn;_`*AzA~*TJePdO({0pu?`SfEUI>Xjt}rOo!YkzQ;7(!su;aZZ?Kq!;;uj*rxQ`K z02^bfG;RDy-BF@xW8dPNvWjbrE>0qa7)>rmXysX5UFbw(rC-mM zBIy;zpWUa`mFG1_7011e=ruJneqH~k1Xw4lk)dP#2L{0UH9W+T5+ze^K+@w)(ad2u&jdKSFbx?6_I@C$% zDkX-D3QiKzD8vw)3T@I`5G3Av9C9P~)>}oun} zdZkRtDcknR`cW}^W#*^X?XTPO08ZJqd!O9V*)wSLk&(!~oitE;b5HoH#fEvvMAL3h$!(jbykW>GnNQvYT-Hq%SB)SY-s5H7R zvI4Y0E#TErA$LD$>^-`kK;?$`=O0wRn7bpY+rSy1tCqEr*!a{AZSXIM%nojWem~FI z_v40#03(QJyj7qxgy>7BkX-{Xs(FQ~R6Y(yey5OK6V=y#c*ir|QZW1v0KnYlUdKh2 zhMRC8Vm<>Xk{1o1zX}at-=BPSZga15GB5JOfPdjcXJZ?!R)5`|7h|;%O~;=#zXW|w o*|uGkA5q~GX_5zSs{c&C07!`5D)z9q0RR9107*qoM6N<$f^R4ZxBvhE literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xquery-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_xquery-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0e8970b14971457a97e75894c4dd74261c638ac1 GIT binary patch literal 760 zcmV*(w`_nkfr{a1m5mX+=czv8fi-qD=b>TDpqxmzw;dKJ+Q20Wz+bj zE$i~#HMxvfTPP534+a;`r!H>V;7ht=ljnoA0P*%O|D7=pe#IiUsX;52_TTIiSdRzX#ecV#R6yi z;piRj^7QBLJAhT<(myvVzY)EsDyLGA8nL$D3o-eI1E|p!;EDfMbizAd4B}fDvZzE_ zKqG130}7K49T<*@jn=9)1@2@qiJ_{(WGy+_rL5 z8bqaMZkBYoD#B$^g6>pt0RqmNpA_x<==Yy^=}QChfkCo7V#jaA)kV&i! zWD#ofNhT4r;2=nH-{as7+%z|u%;qw3`)+G}Vu5EL0sYg`y_eh-TmzN*rHJ<>CA)Y$h zK;MVF%pSCN0I*U7s*M-9;kZ6~(B4s%if`Wctg{g`p8^0h%ke%U8~!BUtmp-RiWIrB z|DGeCfUkb%+s$&kf7LJaVBpV#i#U4ytd#g%aL?nOM!KFOspf97HMvFI^vIK6Vde{I fkq>UE|4hFD1SH{t6x5w_00000NkvXXu0mjf8D0tK literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yacc-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yacc-24.png new file mode 100644 index 0000000000000000000000000000000000000000..20f40a8d8aed7a4a88b22771d4f0497bd38451d2 GIT binary patch literal 826 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yarn-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_yarn-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3da57365f01b31c6ece87536e314c7d46b91a020 GIT binary patch literal 664 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_zip-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_zip-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2a8089a368a76a9ff79ae8f32ccc64fb6f0a952c GIT binary patch literal 667 zcmV;M0%ZM(P)Q;-d3J8+8NNe?^tk9ZO* zc=X_kiVno$Vdw^WSWiQ-Q<-SzbY*lc4NI3cP2bnU=Fn2R#iq~c&C56WJa0&NfHoKT z^I|R@ogjo9YIcLhs6`469~VTckXuYH>=SDhK_H2Nn@_$s%8PZ}4bJ&cGvGtskAY(W z2%>;Rx#wcolR;HO3cwzKJygDI$Cq>p<%$Nm>Hy<)uc1}IV^i^Sr2ws}Lvrm0B>?CD z&Qqg+P0-->crkkEGAgxZz5gemXf}i*=a9+D=(6O^2aZTtY?LZ+bao@RX*C~MlD#|Y zF1u_#;I=9|>)fW@d_dJHEK~>66j12x07M+{*iiV9hK1Gu0EA+4Ha;FS1?X|9So)U5 z;l6&9m}`5N#|YTxxp?&Po4aGZEdd4Hi^2Xd=4T$_RG{#Cn{7X9yhiE$mVjVK9xtY+ zFcQ0t#bP%AfPh~CaHmn;FtAdRFnD$tZ(k=7aBO|1jM25B$)~qW0h|^MYpcuf`TZ#A zZTQhdQiH0ha5_6tWrF#@df9>AqhWkZzk|=N?3y?$%Fo?Y{X=fS6< z4dr=V$=7Ql99CXT9n16-H$un41+yDR$a+`3>G|K;V0sJb0{002ovPDHLkV1inV BFV+A6 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_zip2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/file_type_zip2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..32ef1c562b77dd28972e40798f9642f035b74067 GIT binary patch literal 1242 zcmV<01SR{4P)7}o=@Rf%uiqaFY-K@cOiv|L-=0y}m96fxbQWV9i^>vaYEe;J0&HrnH!oot{ zqfa@YQE5%FyrSp@z@*o(%)J7ld%nE9dgrd4>f2+tLu&i3UJ>_ISF55X=*Z38mYU-K zk>x!+Fto-90C260DKIt8FMKp|tHfe4_vGd0GwYj8PfrQO#l>8Acefmppe-}g`bb9L zT3no>SzTZl3TCBT@exo^_!n3RJjIruhMDrRvR8|D?Dzz_cr#%+@ILqa*x2aUXUC2e zMI>N2l5IV{puv4GaU>R;E2!Gq)^=`qWMoeFLVc$)dl$>St$qE21J8ul1O*780N^_< zfaqulfe3(80{Eu`5rQnp@#TwW!KP(`P>e-06|#pU4p3J}=t*SI0v_!G2i0>D`gAO0 z3Q!tWtOOd=Wi?^ioAQdSrX#oC}vi^4+mu^A*j<-e$b(~osdWSqh7jT0s;yE zDZdk>2$3W&0P(R^`|I|JqS<@yW3VO*K%tK&5ON045~wRAT(b~##<1uzvQSq@_(jJ+ z3WPNWK*8+SRy9H>c?AqGzF~sZzlbow1_e116oo((*D(n|LU)f4qBMEGX#|N+1PIO8 zP=E%4*6ap?Kfl+85d1y@Spqa_3NHZnA~W9z(DuSYPV)Ots>^B)X$=YReEa#t*8Hux zeSh@b2yp=bojKOh&GnuO(HyMDWQ%s#cbDvbmr`+GRn?WchK6*VPIqs;>BQILZ@pcc z7LlOzuYpd~Kn(y-q^HMvHJZeTs6NgkYh;;al+5=JywkeB=1o&Lhv#@UqAq;GZM4+R z6xV*5Wl2Usk_rVT6$+A6prDW>2}Yw4si~>>?eedI=Cfydy_@ojDJwuXeD%_zd+|(o zzo-vR`tH3ajZf~W&NU~JY@>i2lK>SPq*6*THahA$ed^S+j_GNi{^)rd(Hr1-Z&&G! zfq{z;Bme~81yK}Z!skU%l8;Fz1gvv9p5x`M9W-Zy@} z@LfmLCo>uthM~7+7nVGZsbQyVoMwohqm(9a1mFn3QU%K5{ItZy-Wgc-$1RKU?0-rS zj_mAggEiyvdLbr8zeG4@%Hf=Mj`V+Jx7$4r+w-CD5Apf11~4_Uxc~qF07*qoM6N<$ Ef^S+wr~m)} literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_android-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_android-24.png new file mode 100644 index 0000000000000000000000000000000000000000..44a84a1311f65236ff892103083b9625d80aa810 GIT binary patch literal 630 zcmV-+0*U>JP)H5t6 zYXaxmQ}#shQu&$NYx0}3`|_!91sDJxqF8AHgk8XdgAM?CHb}+0Tu=Ur4{KA!;`6le zeQ|c;Jfd!I#7zdpTa!0X9B6ML2enp2u^WFOcfU9@34rG+FO1#X=TB+WNH?!Q$zI@S zr&SmWL&HH~+elpS1Bc8&TFrR-dhI9H>6EOMMn(sSV~rnbPzu*oxUR$4oH0)z-^K)y#4>VhMG<~7on;b@(G%+|D(!_kPv>pe6?$02hiz;h6%c_UDS*I z4FhY}M=i6RVIZq>O4M>!O%^LGz4(YVmeJiq9r@Lj6tQyZ;@QXZKN`FPUbd{Nwq8|| zm@ST0VHi3AK(%TU&v!hnl~YSi%@`~q%d77zOVH;?DdH?_b literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_android_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_android_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6ded0f2ba0a2ce90229193c66fcc0f8b6745a1ec GIT binary patch literal 781 zcmV+o1M>WdP)&geAb2Q>wKKtV?3Vh~dzq9TMoHd&DWL)a&+1EFn@5-t1# z+PJ7ih_#4v(`szd7d1seQBr1;V>&b5x%X``I%>={jiOBtoW(ikdEe)GUO4x{fBb96 z?-ZpoeP@94OL5e2tZnPLr_M^7KYMmPo~LvPNP^r2azC}+2BZu`0ah%KkNDjvN#I3m z)7PUSJ;B2J^vm9hh@|HBiv-e{-phjQUP?e!+k#+*qBqg_=vDIWNTv?}-!HfY?^_&^ zx`q5j0*a)74&W`IAsXYxM#giwkIAu#=le^gY1f#DA8}&d+Q!yTKrB>X4z*r(dvkNo zOjwG6;UhO7XaU)QK%g_W;1x6PKHsw&*X+F#aTC`n0_m4mJ4H-4076O?@=n9hNTx5S z);w4EkQ~cCPPsNd>G@NYbJxZmEcfKZhShuK6R0(>3Fw%eQ5hl!!{+08(>S&k zB}h27wsNin32UPHz%Q&{$QOWgrtb}~C2S-B+3&A#odhL+nxZ#Rm7@@pN>k}|4XO6g zuOl~+sZ&nbunel|>9FR0Fhh3oHLerKu~G8H@i3|Z+9#$zQ1bI95OdpRlSxv2pl literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_api-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_api-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0bc39c3b8b1e731d593f3093e7b6b66a7357c869 GIT binary patch literal 898 zcmV-|1AY97P)%uUkEuERp+|Na!b`YmdW8#MY z=A85Wzx(~ZlXK36=lZ{;#`DqP(B@A>sk&S_nrIv9-uV8So^SE5PgnaT!)^ov2r1OP z(Y_$FfC^h|7eL+s%~l_P7(m!#5vZy8AvM~s4^?kdQ2%6|1vnI{`3$5oH$qkcDA3Z= zy(bSG4VD^SPhZ*@ZDZJY3HdAgsU65-pelF$k-_Y2OPD7c>v3qhzxJJAaY`&k7YERC zcl+<8ltPI-)64q|MytrwDeYQ8*@ERHu}0#Wa^Rfcn=mFoS8k%=1l`sjELl{JxO=nw zj3k(3_|PXR?8h+&292jKGBlJtd%R))!kmD?xSP=VZvY72y-H2>7E+nM;Vv~7gE50h z^a4sLN*2r|qs4g8B}AgvQA#;d_E2R`K*qL5=85D0H=8>#&Dj_Q!krskG+sIafEBw- z^DToJMRS=l$-R?SGN%D3A3cE0wqF6N0gQ`zj8m`m6e-F z4&ZiqnO|0j5C@5W4rAP+j3jw+md(-a8meUmUEx8VDjAcN%i!=TGC)8j!Th($ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_api_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_api_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..222f4a2f54213f54a68be5b66ad9bff18dfcbf6d GIT binary patch literal 1034 zcmV+l1oiugP)%W%xCrM3e)!PE`!csAkm@QkKhkiG%^zc^oV3LN|FCk7K>m?!( z6_N#HFgIfaSTR5s${R@Hfc7Hi;isbg&8oXbLdKo_0zh+*`>2G6mLy0D!Yg}=r@Gba z8Be#_5+@TJ!QPOY4amFU#;D{?5?l)OErA#gKb&&4<7Qq%%V#EoVocimTD8Ssp1v(1 zetz(x773Uxa@MS0@)ltosV(mYGK3J!j@$Qa-%?fI)Kj$&Dc*|!nmup5C>6OIK$kKT zur&3!&o2jnX7UgDbM>6;BENZUe`TXu6#x*zfZ4Pr2EeEr^Z}uZl2G;G%S%Fg8AE5g zif_bALEaOrzE3U$D6?4O?ZhXT*C4eL5JSPK*jsg{Pcj>v`L&_(qfBGMpZ?ZKYtjUe z7+s*RcarZeoB-hFz%};1{w5kTp;ihb1L`E+!RrViaOJx&#|L-a=pLBv^K~JFFwE*f zmjGx|-6w%(q5*^IZ9f0%{m9<+=uR@yvT!6@x!C$6KXlYZeCF6Vk{wR0@kxR7)T~%E z%NNh@s@WZSWWibFV!#6%5_od+a}4@a3iFCVNL1BB{kNAGoA_fv>`Y*qRpxsr*^%1@ zY-LWXg78;lkoq|dMFR};lcbmQ7Qo1G?LC8>vcm(!7mUUIM3$|{g$707Qc*6xhB+2gNXE-iTZ+pQ+?oH2S_QE(@h_ie}C!N#yhsZ0Cty3P}BRS%>V!Z07*qoM6N<$ Ef9hFFit-BflHIG>JV2zmVbgW)07?BW|6eV!Ox19YGdnEs8j4XCsTsR5Wah$-4t zq|`x-P0v$D=lkf&c~6tSK_VX|>Li2wM*l4#WK~)RDXW)n6t{zCG?gV!BR8$AlMDp1 z95}efFk6?ev`G7i92=bEI-P6uOUCx{z&?L-#iz6eJ9Y=CsM)_R1E4Jyiw$SoLp0dDR?7D*&T~F4RAY0d| z3!VjFVRq)%#!pR703Z|vRZZ=8%?6RhFz*KXF$@EjrvU$+N^+e}st(iwF!ODio{shu zU9zPjz98jjqO_>0QxVD>V8msd{@&+oDfVu5c?z|fLr0RNxvqSv=Quux7Um5AVaZy8 z4F7{0Bb_a(u(Y-KPD~}nnnyZbB9vkz2FMa%RKk5A-dY;Go#0&`d3s7gPMQ8(TPHlV z6ns@;7K)`sv`fU@*3y#?|HRLj0Li#S%$aQjLA5}3r%zzW$8oFhf;7E8&|_89!Jmjr VxWvsNB8>n5002ovPDHLkV1lk~Pq_d9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_app_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_app_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bfc90d0e9c8484476aa0d25827d358294ee14d8f GIT binary patch literal 861 zcmV-j1ETziP)EM=*hDdsGzCo)OIQ&Tm%6Eh zmyyJ!8{8NZUoioaHnk!g(xBuGY-z4R~AL%lb6PaQx+c>n+JvrmfRXosFQ>>}vy9%ZtXH+!4B|wP) zRf^#T$Qhui)H{GF%J@>(+)F>^6HN-#NT!IQ`_e z091*J@T|aZ83?lg0tQg-1V}J_z0(oJmO8Ig0CZd*D6>7{5Xod?KY!aizcAY#-CzG) zxV7tnm_5~Ph#p_}*8&0Hdw|1Fzf%6>zS^7s=_YX44e|$Q!!}<7z)E773zH)xlZk&M z7&Hrh%J=$j&E21EdZzk?A-~s$JNBq&%$$oq019_Xx^iQJ<<*#DKhNvK>&fG<*h2bt z1!4@McGKe(H9z>hJ`CD_Ng_C2LuM0N8ro=We4C=e5-Rr`AkXUq*d=Q1NsnB+WLwW6 z(wt2;6fELcLo117f>5vsfHz-$3xI3Wlbjzvg>HN127q|H!+@0y;Pd)1eE~wjB39zd z%*;(=s|`RhwK33Am7Ze&ES>!Ij=+!E0Dhkd2#I8zFNXUW8u^?vqhAA19ggy9{p$dw z4gi2HoXaGh?=yMr;2Que#uhd&{?EHJYjum@b~(pt6CkQ*GXYlPD@f(FgE!_(!)+00000NkvXXu0mjff{BBJ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_arangodb-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_arangodb-24.png new file mode 100644 index 0000000000000000000000000000000000000000..87c84b3c94905024f711a55103078d1034e96c89 GIT binary patch literal 871 zcmV-t1DO1YP)-xc8m|7hd4MhMJG4ZBOS%D7MYS(c*7TeeugBYp&*Nc6UWlasY5Z{SJ~YW~f?_ z7KLR4%sId^Wj}%=Fchg|!%v5fOik~%?d#fs@a;2xQFCwS$0BOgOaV${HGonW=?ur- z+tXD{5Q!BXsJN*bm6G<7t|BCqlEiE@qa?F`fjQ5h2)^JvoWK-KE>s5AKkeohpoQje zhW3sa(P$N>Qrx?r=XB~8f82ENgMs-6C|~n_U7qzDn{dK09^^D3J4j`1ftv2c)SVmR z>ysWl4Vhbj7V7mF%Ni17(wdR+VG4yDuIo}>UP0rECf;f>N%o%O%tRCbbGm+Ma(Oq3 z`saOZ@mU)mr@>5F<1SZI*V7mO8aX-Z z7S-r12R~Ry)E6$E=wl*3iJ_ps=Q2kRA0cEf!BPf34go8OVT7rQ#CYSiz%H0=O|`Ij zeFb$(8@YOB@M%#H5nRt>bYzU&_$_|>ahO-)3G7h#$+MV2n%{|6YYe5Uw(R&?Yld8wYK(|%=ZhFIYCU*e|zR3TPDALbDjGg zlQgYtVCQGuOt}RfWV4(gy<3m4#NkAc2B{QTYRTu5P@U^q+F~)iPYh%6z-9H-si5NkI?7exR7002ovPDHLkV1jEdk#PV3 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_arangodb_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_arangodb_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8f5ff14a5294ac128a773961a923efbaf90b4907 GIT binary patch literal 986 zcmV<0110>4P)YH-7ADI;3DX(IHZ)4YpmsT*{niy0ux>bji}Z?|Z!HmZn`(GH*oi zfdl8`|9_ryo0t#kOB02?3NsuKpW^Xk>Zdqjq6~&cZ)uNes=hiPHk%iLdD2>pE z;r&Q)vLNtk^vKf^aS%WXf=Ee~JNr#2+GCccS%jhMs<`@>2P0=QtJWt}hjwCRj73WG zH-yp&6qzD-u0<>j1JB$L9lNTjuC7ECg4t`ShM&Jrw2of)zHRr^6k?U*;pnh{sdA1F zAoDr_`!M_V2iWFs#43C^H9!9P2A+8?V1KeH^?{zrEeQZf!I`qi4FhK)Mnk|ua>itA z^b!{*M~Dsfb7A-oD%@My-s~6N{74~31!(GOmqLntrHF-|Xe~T5KqagIbT5`+a(M!J?zD9nDGTyMx^{>1Y@DHwPL0 zDSq21q?F`!o$1S0n4ABTZ$H1p#!WsnyJOK7)kagt#>zd9H+ht$V#qt{VCV*RmlZ|P z*!%j6)NQ&C)oQ_F*Vxt?;Ms5&AHR2+mk#Y_OMU%Po{_=nvZ1QRqlJrRsMa%zt}lCE zRhyNsPEK*HD@$YZL%j0-3oPU_Tu-I=<@^-yzImRO$L_(VnV2$<5Ek+a)9A(x;^S9H zrPQ%y&vhso{vAYJ@mwa66qnD%EDp`2q5^bNlAIMtz~*#Ff8#p&ND!sr;aV!!xzSCX z$?*iIKAArI#n(SRQPzLZ+1&cFuIG;lMbU2EMu`xgNki}cE*47xV(+e&onEhbSSm`@ z>H_iADgM(Mg&HZoVZ@h^@#E$>9zW@LL07*qo IM6N<$f-RlaOaK4? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_asset-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_asset-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f5955376c7b3a3b6bc69911b6ca8589b41b6ac26 GIT binary patch literal 796 zcmV+%1LOROP)7T@_Q2iAvDgMWGlBBDASUDGFv;yQ%KFYS$JD{sZ{~ zT>BboAufyquD-P&2?M#3P^yc$b&* zc4B$iE?(c5n!1k=3ukf35v3D}rykrW&V6tk|7+V0dOy7l5E4RYr;vA~{8~1Elr5K3 zwZpF{Hy^I8ZI%Ew5{c))owNAU=_w2OJRYEF8a`k34coSj>$>>hy(6VwvEq&6-~kg8 z6ATUxR&5U8x-O|y3ez+%3n8vn1h`V7X&M6q1I*9QV_8FFUBi(#53 zQp!f9+C++?AcQDu9t;MVot-W77YYSbRs9v$e2ZpgW-v_?UDs)AYa2$h$ zz*+%&dwYzJkCV&gSXo)Y@AngpMlntETz^e~mX;Q}y1Llj-ezZKhq}5t48!2~_?X__ zUK$%4FAk`$uV;FC8eP}P<#On{&gA4I&CShZvsq%X7-M5&Wp#i34J^wdnM@Lo$B9HD z7>2>&;UOm{CxpXcR##U!I5;2_3SA6Ptp5IfT3cJmX0wFDVFG~wwr!v5tr?)ID#>J$ zNF>70&=7`UAf+T2403dIR2A?MA>N(^j+6l)P;6LVUk85NrjCvd_V@QI4paiTwY2o0 zI367xeWEDJoa?&u_4Sn@ZQw_~OXEK?W afcy@S67mh>Eeg;80000AI z3ozmAb{)8;`5_|p3chZioP784`lIpjDG}*7w|yjx^XE0Q44lw)uNLzYz$9 zegm4X(t^>^Q5?s?wr!f5o9XZG$MZY@R#sNZ_{N>Nxl@!XUwH|3c6JyX93-F5v#_v0 zAP^uHi{UsLSYZ)0C!M1Jk`8>95Gdw&@Lqh|(T#k4=&cMJx9UWzD*xueI91i<@t*xyT3Wdr6 zF2nP@ry@c&nD#XuC4;0wLY$TqV@Il-7rn_D literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_audio-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_audio-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c291c3a5d66839580fe74b529d052ff00da75d36 GIT binary patch literal 652 zcmV;70(1R|P)4k;ci4)xx4+h^4L;V>@KM+-le5)?P1>lC`$Vq^%0ZKVfMd%0C zAUCzR7^=265Pbx^Y4~k`P$)Vl!c8}T2)7Py4H$kG3`T!#VHBk4wE;x92HbI9Lo@mO z!F8D4=%RP4)oN6$+BK$UfNhsqT8gu^RXBctW$m)O{1MwO|E5(cnpkX=dfhRghf|bH zer07PiHLO6OQkaDv_-jGnF2nz0xFd%namE2TDe@2^>yozSdG>-1_%9&jGU!Vu&04J zS3oM2C6QSB^Rj?={4*lL@Ss-wZY&K85?l3Um1H^0wYmWWC<{PFQok7=4-5m5m7e6eqHGv{l~aU5qG)ZWCzC6Cs11C-v_*bbPc zktx%PiLxDB`Fd^>dMd-*@Vx9|7)J#T;bkADrZ znbcX&uOFpceR;MZp*UDj<($ zi05rIGA+@swl;Hd7J&`8lLv|x?gtYdtJQr|2-%qwXl|apCZ%!_KuTE&3Kkaw zxemv(W3{!Fb2T+?U%b9EJx{Bu8m|y)J%C6aT3Mfs+~e`l*Ed2q96_(&X8~!6*MIT* zm))bIZ>g)R)Bq@cfABf5yw!{o7$1L6Z|_sW;q=o9z?p@GrGlxcIUJ6Wvj9qWcXbrV zxFjnpVJ0TrIGrw>P8a?CFBlqnjjGBFxeF-!t6|W^*BK_h+KfXobmi z5Rf`JP^l)LSQuJ5{axO z+@Yj^MiYCSUZl}%|FLzs<|!#DM5oi@^92DBh3_AdH@UU7Y|>_%4S+~q^{T2;3BKy~0)Xnh+TsZWN Tdlh0}00000NkvXXu0mjfw`x`6 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aurelia-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aurelia-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b0e6caa755b5f8f5ccc0cbc2401a32018f9eb918 GIT binary patch literal 1002 zcmVwktElHD2Y*nnaMD$b?Z-pKN5f7SN1gRi`f_l-Dq5)AG z5EO+9B2-VJVlNW#7VsjadZ?BXNlna$ZkkPY<9@yGz8^ClYT8|Bvu!V4{KGKJ*Z(*3 zJTnaZum4(dD~slynt4maJhR&zqp~NCe)al!`)195n0$9A!@Oo756mI5+3RfX1dbT3 zJb;@9Xi=|X$OB6iqDQB`o{qc6=O*7f4svRz-2<4LI`KA!hp%UDr{Xwm^H7)rFlq>Y zc5d=S&m4i0>0Z+_YIqPhb}jQ_Q`om=h?9)f!xpJ62g+XQfNc`?#g#6LUa9Ntwp+uS zP+HWa&5X33kzYuNRGyXbOah zRv1y00>Mhg@UIC$MKio{^>X%2ayb}hME;~QqH*UlGHuXeh|V?GpZ|+u7BF^x8@FLd zJ&Qy%1M7m9$|JzfeNRw|)@V3I8si>uQHaP`(=Fn>fpW~=vlVnBB{ha5)mKXJx4f}+ z&qu{wPmn5y4ZlRBT$;+qJ{(g$(;zrlKyRg_%N@iBnSjEOBpOQzIEIdueRlBT%k^CW z%4ia?h|`Q(2)SYbdm^E>9O0)LR|Em%Uw{&57lm-bB6T^LOvX@ji9Z-%EZ$^$ zrHZbn_zElq${3UeC6L3n&Gaxm+s)wxdwv9*gA~<~POtM;zAG zZIq;aH43`{E@U~X;*mKniGsv}SV3Y5?x2G^WbymT7T^#CK8qV6W70yp-g7TNa*7}AB z;N$O}|6F_im)gxe>)&2Idu-F$9IFFbZ~@LK)< Y0G(rXgA>ovCjbBd07*qoM6N<$g12nYY5)KL literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aurelia_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aurelia_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b59dd56e8b6771027d2b17e10bcdc6faca1a7a77 GIT binary patch literal 1163 zcmV;61a$j}P)9n1hKICC3G*WOZh7d4dNB|8XMkOvtDrjOPF&IshjV`oC zNfd>|#8-lmg}@4`(Zokl;{uEe5h_Rt@~XDwVQD+l;*`$on|rT|GG&T`h#NQllbie9 zlXK4hf6hJkga7egL;RbdGcUHkf-sN$t&`&{Z{D=#ynWNjU-+mVVV(yO#_%~pcAAQpjH0;c!cD7QaT;T=xY8^l$$K~MYW?ZArY-aR zsqT*Sis`izbf;h1vtAnU2!Ju%1yl;bzM?~33CBxi9r@MSCAqAYxx6AM7%EoHIMP{N zHFGc()Xa){=UaLPvi7M~tk1^J+bu zJ8Q^%KY-E(Eesd-_bgbjE>3^8K;3ue8nQzDd=ltGiFa!Mu9rWl!@6F31lM&j8L-;?;Bg%`3f+PTnNxoG>7 z0f=(bKvu!AgiTLMaPpGGT{eXwJIA!8jYwBAa%2FdHA)ziFa&`n2n=~4$U64BwcXFA zzsp3bNXeFDUww8Tvhs=(0xojt?+8oTebmq@{#G)%r=Zx{>sK(|1oykkxv2<*JBznp;$ouFh_TE~N=9L0&>&2?7a97`(thtQ(K z2y=I7@{vq|{lD}xJUEO`Q8h>jmI2qZiNxzUb>bX)f0CuG3+YY6?1+Wd`f3FL%Fl zP+ZF!LV*(sp*^3#9-nbMi<$FpRp(|*(NzuA1;4VA(XhjaCpb2g;%xGA0YTpK-75oh z13a^O`{Q;dy~9dh#?EBEcBW46NDKLv=Xy3$JQ_K9W?IVS&A@d~o{#qY{;cP(jP}DQKRjqV zR?WoS-iV+So7U`F843zNrfgHQ`O_!*iuR57Y@I9I@FC;++hTt8%bPxK&EHJke}tzV d*cK~i{}Y@?tyx5Njs5@t002ovPDHLkV1n%aD~|vG literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aws-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aws-24.png new file mode 100644 index 0000000000000000000000000000000000000000..cd800285bf28c420defd2c04fcc430459b04ffd8 GIT binary patch literal 739 zcmV<90v!E`P)cEA2dCq;FbI$!Z@ZbKn z$?t56UOm?(A{U%|w5Zd^BDV)zTP1&XIUKMQm$b%*5CxguKwXdKptkHhfGrEy9=V9t zK7`>ZIMEillUk2QBjFC<`szAEAllV-4fJ7W34L^Bq5_&n(XMa?Dw=J2-P*MQ4WVgu zr2jFg1L`)#SEF!__RsAf6;QIV(wke(*Hi?8>I+pWj$15D45q9?#;p=;hxeMZK)o?d zKrOD@Xc08#@k*L^W+lSUHz;R;0!b5)#b08jYKf4043AjM*#!)lfefLX&Y(ywJN{aE zVj^hDRDv><$iT8@;8#hi)x!5^YFp5=qew{&Ix!1qq_6^#anz1OSg#+lb9st#m0;TP z2C@p|iAjSihFVG5)qD~=Hi+^EvF9g26v`h2Zy{#iO{BaY8Gl2GEKwxMZs18~iL}H7 zKCF&X;ycgg zPyJp4RbGcZH-;2fft5z`{eYksK7reds&2#@?pw>^<7_JVd~m8fYe&1)-q2ZB=It)^ z86J--djnif*~H@J=h2zu*^YZdy*aha8^@b{secZ V&9*%8KZgJS002ovPDHLkV1gUhRR;h7 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aws_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_aws_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3f54b850bdcb7261c128b106deeb8a1b460aa481 GIT binary patch literal 884 zcmV-)1B?8LP)4! z1;oU#ab@B{XcH1PXkvg(7c~4Nf(BBB&_Bx9l(s|d&@#63_ue}$9!@%KnYL`$coy&F z-h0mZ&N=U%ci?|{-XhOpG|-j$T15}n(y>h7owh^A#_Y8^ANujD^)7sgN*MSBq*$$? zZvsiDj1916fNSh8K*IvRzW&ki{fo~Bx{jVuH2L4U3eewu^gC7ERvV#vp1k9CyHY(% zPVu%btbBC_s=EZR+$zBDdeE?1(tHx8fJQUg#^?slg>7v*FH(0@Ah zi3$gOI@=L#ST6NdiI|h%Rc+aV83nJ?SMVPKozDbNZ$gE>g?{L~4VTSgln60L8nolJllVcZkjoVR?RE z8Mj0vH$p7i_arL?K&ASc``zYx7hTJ80c$zuf$~3u=f;)=hw=|eOkT!z3e1N#kd3z| zbwM8(fVNM+nF4M+E&BRmwq|y=lLwTBe1_0mCb1*~0E7!DyB8Y=i_`v}jEGhZKR2GSLPh@4l|z6A)a7bNvhwdj);)C&9uL^~LP>Ku6W@y1y$mjcBFS!!skMDK~5ZNaK3! z_Wej>+>hQVffWG2y?+CH$6lP9=kPLv6@N1Y?Wj2qZXId=`Lzvo9{||x`;bU8Cb13Y z_C>7L4zL2a!&fmaJMhxKVG>Eo*G^UJe^2KR)C8P6nC#rWCDaoQTA0`-yhme5q#4{Y z5{d$XKAwa?5c5(J_x^Qo{A>JIwp6$>I2BuQqMbd^c4Sji@Y@%|R$ZOF@&L@2JTf`w z;plYX!;gQucWqT8v-{nh;Zj3kyRnF@r0d{Kj8AVIIM&>oE(xF2O zS+ZscI72&^tZ|o6x|EL14<>=sO-W<9j_X)fWX00ez31&<$+8`jNbb<3A6zcq`F@^r z-j8!H{BQrYnf(+MXJ)@P@bN2?fix4krv8wrc0byn}rW1}oK zim=&;)Htg7@jYvL0{pd9L&lNBP<`+aB_bpNB_cK%8d2`w0_wn7Pp#*L^S27 z_YLh2P+E?WbzogfrU8aF%B?wcAnSek-T@npK)D8Tep4dr7|0DW=IYQ)cgR$62iX3J z>k6>=cZy7B_p+YxLWEU9RIi}4Gw38ZUbv1-U0t-&Y5?bvL?b@|*7C$#N~MJC!XrkG z9EBhxL4b-GCergg0Z)NP+ZWaw__ey7#2S$B8*9Y*307jaDZ%Or!*4e+#({)_s4$!s z(q{>D@jvMQg7wAr zU}@=ZlK3hnody=j^ix?ZZC$v{VT;fV#l0ljX%~NfL$-bl38R1zh&%E1GYi)Zs zy;ZB4sgMK^D5zciURM%jF5Nojj2UhF&bYbSwUbL*3E%vd%f-(>h|=m*dugQb<}ZmI foS*+}^7nrLESy~x{<-{y00000NkvXXu0mjfgadeq literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_azure_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_azure_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a931fc7a9b31cf83d3270990369e2ff916e66ee1 GIT binary patch literal 926 zcmV;P17ZA$P)s9<#=6oW!Q$EdBbO`2()HnB5F%w%TXd-u4QkIW>QiFM<~1DE?Q z_uT*QeB8%{|Lwmv^KTBF7|XtCl;hoeJaG>X58aouH!J@7XA`#=$7?_e^iz;ZyNC7z z`!LP|+%&+deHBO^Qtur){fONbJG1-PV;PLpNXcX& z=KEirJLo@qVl?}TfzwUE8zVnHuf{wLpwI_w**Nu@ef-Jy1NmHjM^vtm%4ATdpqkc* zXO5qp{+9Amo4*CU4Ce3}owaKKDwUAAKbIkvpfHgoxqA;dP*qS^)cA|Q2d!r$pANnO zik%{EwW;ZOLIm|nUA!^RY0pFJ0HIg?9EiFB ze!ILtgn(yJv8e4~S3Fi1cDOp^YS0s32Y6@bfjQv2Zh-T%iy&UTM77bENwYnwG{s%0 zltM$%t+qiL9|~ig%M+2CUqKtui^boXBz>z-TFa{$M78-!bv215z^Liihx4;bI8%!{ zNcB?LaR;RLGWI)6{B)&RrbaJvo^bbGoBI|OfdZ=PlQSoNVJNFha+)q%ZSO4Jl{sB;} z|Ji`kGm|ge`Lb*V2;*{0#d<0h#G;-D@FB_I5O9uIf`z3BR}JgUu4Uo^eTrd~O#y1{ z5f!iH23aDJj~E^(k|;k4d=VwKQz{f&`k<(4`krl<`Zq06{H3q^a9V#OA_OUv-#dJ^ z=`cJQ_ll(_dK0BXM#KUnQvS~=-=Fzq*PfBT0hbV%js$q_zyJUM07*qoM6N<$g23Uo Ai2wiq literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_azurepipelines-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_azurepipelines-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9fcff0c69e0681648dc7e68f8ef4ff72452ec3fa GIT binary patch literal 804 zcmV+<1Ka$GP);WxG}p zxTsA~`)UyuN>XGcLH4xNc{}#qb6O0JGg^+iY14rZF6aKw{e9>0-4FiTzc#aypv!$P z4m(KaVj49(xqhMZvA5jAdv3lB8#1>Q+85Iq(W}7n0kKf#JhO)@cdlRTJTqU@+c%)I z>pDR1t$__jIlUM_l}odQRVZHR8|Yo2sae+njOZpc=Gvku)O5`l&iN+buTopb}q!3X=l#Uea-RiM6sa0P;{j3=9=3@klPax17 zSN82lu%R`^fn5oFPYI-=YgnReK^S}^bv|Q!Rwa{E+i5Bp0VoD*K}44Z$QPk7JqK{r zkZ5VCz9GQaPi1&CNBi0cuRavXm*@5x0z|>e+~CDxNpM_5AmkY$Aw#w(JR7k*8!6O= zD*dmt@e~;dYy}W@BDk^D1Xcz1p03T~Y~N^K0*$B0b>V1Nlt{=SYO=Vlp<~@DtcCYuIf`W= z5GAleDm>2KZ3RN1x%ef0Xr2eh_eW3@FrJSvBQW|Y$IP!vU4n9%+|&>D?DLp^K{o`r zu8*oB5+GuTdL_P$O;DUp0#M9MP$=a90o(=v4G$T&e5BTuh^G!JHlN9Tf9^S!g!h$} zrl9%tyYk&%wrngxRr`5T&o!;l50$hSWdZIFcH`dEDaUx3o|ExMv%dE3r_pk8W=K`G z)M~9UJ0~9;8vc6*e=$KG-ngFyU~+J^n@*e3`V#}YOEcMFU}IGn^0V_}m-Nd_r_)Z& iy8hlkYcFtRp8W>W#3ewUY9NFF0000ZLhZu(wMhfUQj?}>VsY9OHBOu9%$u3_?maFtd1jiKDHXwu2M+JP zchC9%&N=s8_}~6(Q~xCC(2=QKR;!143M=*f=-#`(OWdsZ;ltvT^~?tfw)G6Oyan7m zpzNJ{7FiLOl*$LpzT}Q%j4zT z7#-9FX;l$4EG8m8X8p?WmLGwO-2l}yxm@QQ~F;T$?M6C|A zQc8d?y8%Rm$Sk`tkoJoh1I9o;4*LpGZx zib7^D*5mP6f&M!xJiXgc%KtZO6>~9*tW_+d2JnxKDqV$`=6hA z+_COJ8$hLpm9^h06_!&PHmtYIxy^h2xKw&RA|$>5Kt14%lvZ^B1;<;@-uBLstM6*< zejMHEO)j1NMc#aIQ+>lTKX~wZMtc9c{RM>~by!c4TCe~B002ovPDHLkV1k7_vP1v? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_binary-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_binary-24.png new file mode 100644 index 0000000000000000000000000000000000000000..00bc07f855c21bbf2bd2a405266053238dc0fa50 GIT binary patch literal 748 zcmVT(s#AcX9sbf4<*$?l}kk>t9Rx zn?>z4bqy%Wp+99*l>?=%Exks)#h=&K+C=3vNF4A~fyu@50vSM|(I^%G-2g;61;hcv zYonxci^Jj9G*DApFN)H&^?F-eIFR{XCI0KdmW=k*(D%=xie%*y~)Q2Opdtf?u> z&L?GL@c7JG6n}t(==su7dH@=UXojJ=Ic#~kls7fv7GY#&cK=@if<7M|moD?<+yy)n z^A~9NSvzgVjssxJ%cY{J5!GaFxLLMuvu?n*H*ZPK&LSo$kME`s2+qPniwyc=f4M^EhfEo(o>VHRiaS;FmZTIoHr|EOtU6R-R z&`hzhls25#csbQo)bbHy<883VTx@Kk?$~HO9KSR}WA_A>6~C`R;Uv zz1|iFI}g{>b?f%(0S1$a^rAwIH|uiI-+GTIgJDTta|R-eD~d9-Ozn+;!SC@f^0JfZ zFJGB)I!Q=NBOx`F_;q#yUa#JMf2+By!ZqU@m7vcjlLLb?IWQuee`oG(hcbPTX0(c;qiK~OUOO}@5fU~Mu@F`)BqUxL6d_uz4I+_r zQwx!Z2%$vO!Xpu{k}9QTTBNT`o6ZCi)6U%cSJ@QGhmQ`5A%Ycn7z%xg3UR>aDIeJ4#`iX7SAp8#{() zvTW)7O0W(0q5z`QLXf2jKE(q1z23Y9+qY?BvoeRQ^l$+%==1UXe9dG5U+yG(d_Y*f z85PH8#+tRItK4~u7iHUWbK(scnjk-)`hCtcP1neo5Q69~=i#j&n?fVVY#`0$EU%Ak ze%#QI5oL&g`t=bS0|R6i7g1JSsp|J1ptHMsJ#gBB;tPtE;mSav4O>S_DN+G~em{>+ zR&(#*VSK%P0JPtKK;4d=03k?K1%o1|E|jjGY4P;+JOsR>&K;xfm#>&O%fZ;JOuAk) z05E;|GBT!4iDa^ii^wV{(8UbeEDLLD0>FqT8BHQWZ}WTXbLXIsvHme{2{ox(i2`!w z&%-o=xSQXRw{!^rEp@l>d%V28a&<&r2M_|c6}kave*&bWrLp2jd6ZYUb`6DV*Ni@a zqq4GB!Lvjr5Ywcm@iiar+>LnsA6+~-dybyQ*YN@2)`XtPGz>iLpZM0<8S&m+zQTg7 zTWGv^={EpF)g=PZQc}oUvM9>??sn6B?K&21HKMV0k7y-n&u dgSIiPKLG+69XRnE4we7_002ovPDHLkV1jIlh;aY_ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bloc-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bloc-24.png new file mode 100644 index 0000000000000000000000000000000000000000..11fd5a01822911f35d4744547636a6ebbe473706 GIT binary patch literal 706 zcmV;z0zLhSP)Ay_E2Fxo_f|3O$0 z2@z;e5H%6ysOd=HgtV9%Axq0pGz!yds7ZTAPm57`)yaIvpiMuxT<$&R{vOUbaN)oH zwNx~ZN*g>E1XaFR&ZLrpyT=NLVvL$QuRlo;CTl>fK$}vG>Ej}#0(Of=41i&PvP{*8 zUX!XLC_}XYrccMyqa~} zGM5J!>wm@bhB`*y_JF+@4phR(AY+f}@YGgebL=PkXeCzb8e@PTpGWDweT@NcD{M@M zipyZj3I}7?!pVB%#bXBCS9tI9VzI_n0_T?uczN#z!~QNPIS1MMru(gvGKDM3aGB~k0svBS?HsSjWrO+{IY9)>@1W+;?3Ljer0m+kiJepU+n?d?jpe(F3kS4* z$odJ}Q{hV>dH{ejnaC;1BW-s8x2p@EH3<0`3)>bgU`8uf#gm@5319s0J8ftN(Z~>B z{A+-zQ0UKzx*5y`h>U>hkF??wZJ&mGeyMX5)7#P>*;os~O&63^p-iR^z_5`50MdYm zfNU+;Bh}s(DeG(!x|@YdwL(&&029DPAkL_{UPpj8D=cP7D=!stbA<3O_W;cE#vuGKMjkhUy9Sk-ukaQTL1t607*qoM6N<$f?Os!+5i9m literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bloc_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bloc_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8492150c1f6ed487c281285ef78fe8ffe2d550c6 GIT binary patch literal 788 zcmV+v1MB>WP)Q~ ziQoAstFh;{kX&%&(MaO%Bxt{=*P1-DsmEJbxCyvPcp+fg#u5VPr!c7j)(lWAA_Jrw z&~h(cd(t+Z-O!T<=;!+Cr9ndxu-h?0##kF$vKtIFb_{_a=Q}nP$OvFR(C>gSWPK|? zjbnjL&mL{`2@IJIO-`9a5da$&o9!*p_q=#*fCB)40-OULqH*zLrj+u6%uhgiR-++S zNLe^%6gdsuX%gkEwSq{%9Yp;~nfuzBJ!*<`btC--Pr{Pm$Q2m*43)(&Xpp|ad)v{S@RsW>)?1g`0ZIRNDFk-LiH0|G2`Oy z{$PCQ>n(AqwN>Li={XE|IRaD`=Fr(#jp=AQ>`Mf(!Y?#632&alyE1?Tr6eL^2C#P; zmdQUVjI@hU_=s=z4N`)p4>FSHhZF!QMEPm}0RG`2T)iAYigpk;Ik6C!=>=UEoYKP9 zP4mO*S%9n(5;LG$4MZpkp@*XhiZoJP_MUdPA8;Vp?y@NW`3JQl0zRy^iaD+K^gtKA z6Jqo$?ujzjun1AHR={dB4^WxSPWNGI+=#_wa-Ma}xEzpsNY??h0KN8}&3*x+1MQu% zI3|hi*LC(2&zPXJ3{tNl6x9$g;Cwbq6$DfOG9WHiUT=OaQ{PreI$ud1-<9m}mCRn> zMcCX)Yt;$BpjxMqLFZ3PqCzFJSLjP%*PkR_EDdl2Falk`vA>nrR@a#$fQS^y$RZ#ku#qfsBmxi_*~)$Z-hqh35eW$r zD;fA{0BdqKWPc=aZn1doB2C)mC+eh7J8T;$6qkMDl)cg%x}%lzZ~0>Ohv z-@GPK9^OQd@X4Pl$;0~>m!JIuhQBb+#r;Q@cO|%dKKIMh19MCIp>SA}elQM8F!qJR z+!#A$nw(ArypbM^ChQN(&wG*gPPS-n$yFpN%8tgF7|#SK#%>8PWsfkbkSP#}YU18r zFNHfN3HqUsqV!|Owhy{ZW$csM8>1P0RZ^9W0JXttY~;H47R^o)9M)terwSsqaIUZMv z$88)asL>TAOz4Y3z#w2nI8&&dF=hgRU<{Jfp<-=5?O-}OSJK#;aJv z9U)YfO&E(lH;^eyyJLWsY7AjFK7|cgIpSHJ9bM$lQ>DR)beRr{Z0wD zx_T>t6{nTvR=hQ9&90}V6Zc>#mQ_$q!kr&~2UJdp_X!_*B>(^b07*qoM6N<$f<^z6 ALI3~& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_blueprint_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_blueprint_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b0025986a25975fbafca85dc5082eee3ac39fbb5 GIT binary patch literal 1026 zcmV+d1pWJoP)C#)S{Q;>HYvrEAStvH?>*<9_dV~svpW{&#{BUnAvQK{vpWy7^UTh}&cOfczh3fh zE?xZM<_nhX#3KWX`|;A5r+)}f8vKnf&9k_CEOU z5BglZJR9zu?;|+>>8+={&!-=mnQ-yHcDv-1bI<-a}dML+y}cG4W*-;4eH>+kHY zMyfi{sZrIQE@qlC(2t3>aI6NUbOM?%%`{$^FZ$a%nqE7wM3OnR_0HxsfalI#xt4-^ zapEd=#>CW>%*VurhxrgWB%b9e(gwkX1W}m;82aHz2pkRVl_;X7;Im!L!q&q?t?Izk8D(8C zDWPr)Vrf)WfqF+31QVgbpb#j81_;^khIb#IId%j1?O_C6%_^ zWLe`evludqRicZD#h@%YO%4&m_~u~*P3bw*7SxqzqbX?Wz_cx>+LGy{q}j*YIxuNG z)25)Q0@J2oqpf{dS6;q0?Ce1V{g{}KN*g?Lh1NUfS=eyOe5H6VbgM|lU`WWIIA`>I zBxp_nU{x-^t71C<)jwb0I3%7jIIy%{|S*_yQcdqH~M>DPhFF#07 zdZG0~CB{^s#>g10WsFQ~0s^%IabO;5=Ws#rl;Z9L63fL6y_4eki4?df{>Vh4=Pvm}h*J3_OsW4_J1Q{|SAcGi@dN@BMUD* zb{=&7m_hLSg8OXrt4Pq2zK;}5U|5d0Aed%sOfXqDL}%p35{yN7KSVtovic%w3K<`i w6q5R&DfyIqIcf@&qM8|lw?c5v$g14<3kXcy$~AC6x&QzG07*qoM6N<$f>qw&>i_@% literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bot-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_bot-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a52fe0be3f26f6330f53107e7e450b349cba39ed GIT binary patch literal 644 zcmV-~0( zK~zYI?Uc)F6Hye0zdM;sk_Lm*v5z!D1u1r+Rs}(&8&U8<#Er>DEQ%XlNvQ=D#Dz;Y z`2z%3f)A)jEeIl3s4F)vghCfayK0~zR%e=IrZd+?+K{Pf$i#&UJ*#`}Ip_DCxo7T$ z|Ms^{bW(JI^gRJ%t#TCP`KQc$R)dOXIMV}60&x)U1S~hkC2|*V*ny2QXO>I#njX*O{V;Y&q zSN#%F;(3zL=%{bsT3WdRybc5qLZU|7E0L-ah5&z&(yhVn2mpn`5+CMf0XTl*6#90Z zSJN-B?J7e$zB#RqNDs0az`sQms_59R~o%b>ctG zAMMY;HP^87HPL}&ic4euS!A;peSS=f6<1_wu5Ex*tYUsF*4B>0!oqyhyd6dlef>#{ zgzj1V%jF(? e`V+l>)P4cEv7LHP@J>ho0000Wq!QEn3vOI`_QiJLkMF_q!MV z<8MQ(!^=oydm>90Tso*C!xMpiV*6(j!!9JP;0gdx$_X3;Bt@8_A?925}Jh3^<9L?lwf$ zCXZ|E{cseB#?wV)x^&%_k>-4iP6CLyH2_UbZ51gk($Mx_r}b-MuH{}!ww%$*s*eV{ z67%P3>Z%0dPUE#Jet-~xAkZ3L*(1UnIi!&1W79>kLivHGK$5qvEVrIlzGdUin#$ct zs+B@Yg|2G|UDzO$w4C(uPb0T-i@i;TLc9eI079W=&s8o|r5uTEPNAjgzbV!igt~5k zAzT1@5AUMoY_AsJOJ&zAgf|1NbOVLEwlX|C#KX>Z`uqFv`3uQN&!D}nnZCYWY}>-? zEnr|^U}EscH$#hAquQ5h4xkK}UKdm7NC(q2F-;TY#NLI8$q7u;WX7@pu%w+iJ{I)| zfG~jy1<#jM;Bk{y;-NAeTy7TtKJ-SqhoVEb4S;;gUwr4)FyLKO!RR!yXEe5*Wf6(= zr>x8KSU6Q8xLGK z-#zd9KAd~*y&wEP{_7#uV#@D(;T?h4-AJRg+_CM$&(4~w4IkT+>j>b01_wbN#ErV- zK43%(6#`f_K$+rgw03|?*JpWV=i$%Y>Pr;`gdzAUlePCFt$! z;Hjer*wo_GWHda3tMl_b60MaOrwrcci4cqlHrR^y4;^GE7G*$&c(ldFvFzpn72hXe z*8NQs_*Vo9&5sq2?V~PLZyxie=FD{ycP7HRNEF8kCszbWA@J&7Y~ZfaoWC0|^nk(E z?Hbq96pCvbkJUf4grBd=*Xf7PTe7-ZAw z+?!v1f3*%EW(4};y((-NgjGxW=V~SP>T?TUY@%yPZAchDA>EX={ETP&?j0ou+vDX_ zCgMh=eF>WA2fMNl_W4>&jc%67S9TaA<4cxLj|F`3ZBP`l+<$odk30Y5Z>r%u|9EDb zL>{+HA_M($I+>t*dIrv4TsR*k7(P02?#!A20J-78`>^Q@lAI zie}N24CtaD2t`~-ElTUFB!yN)2r&(5(nYMTW~L>HNt%?TsmAHN?wsQykIpn>wAr}v zZ0`N;`9IG6-*fH<|BwHAi1mX9SHo(b(%pa&~_X}^;!l>(X@2y33ax8w|WKm zR7#mJ%7)>4c)| zPnphoG}nLkl=_DK9GEsc%|&y23k?X0Q}YcP4}2ty?_i zOy383ug<{@4%|H^Wj2j3Kl%XAREYY?%e2>Q!jqL-o{BdBR8pQp*OGvqI=K*yvc?Fia+@hL)tIW)6Abd`Y!IJ4 z&6lWDj6{>@rLf}_MLeMxoq|h~ik^8%=nl9CWWQdd#7>$Q{Jzoi8{5@?$fBK@d;F>pyQt(?+c+LIm= zfMvlO$L-2)I#i*^CK`@Y@Ab-!IXTjq<9ZAwmfVpG1OA0xnJC^;D4CprksFKOM+$1c>c4h* z-39=AYil0DMp05)E)DJbCGHG@56|>pJNkFLb+ydBbyZ%e>v{Qc$CVR9Ly5Jpe*yj; VNKk+V3$g$J002ovPDHLkV1oTY>7M`q literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_buildkite-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_buildkite-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4625318d351bb18b009698472caa7fc45eaf0049 GIT binary patch literal 656 zcmV;B0&o3^P)NsMh?_Wwq9AU9gIgEdQTz`?(MgH{9o)2C9bEmf zxHt!#>!evKRE1jl%UpA9?wWg>dmNgOT)ZSrQM&krgM07!@p)eEeV!No>!_s;6LhOM z_gE=z_wq4>sW;c}eu)p7eEQ>jj=DTVNCQQM+HAKAat62(2txn^15_Xn1k%7aHtd^k zX9|9(fa3fekXOxh2ryH8@kCHpdjSNlHC_#J*$>mjxsD2C0%&bH zy4f35{9_#rU@MozPxfaEux9$Kj2ZY=EYc_P6zyc=Y))FF9L?BIk0GxfvIoGr>GLDu z;Ti#_EDJY3Ldww`TiGS)?)3%$h=OXy#2qpBK`S1nS7$x$^F86=89}6fHDi*lXp&WZ z4*1l!584BF7MIz=?-znQY_jS(_fD6dE)LXa!2ukCRh#m*!>+1dLP!nV$etC+76s$l)MtImwt|>$28rSX`vWj?mj{!G zI=}opTbjII?lc`=D7*)z+CJ5k;-xm2J@`*nN=ooY@(yVfuVVp)wabMiIK+L>MFPB2 qvDl-Hi?d(K?o>riqcg!t`u=0_z$@7v9Ph2g;f^? zajXA;;6|iP7u~s0q#`aVXkrPr#H2~uv`uYhCYkG|X z@Hh~<+?Wr?qT|3|#jg_x$EThHCoL5u7q+aPaC~ZJhl=CKs#AXgsRTiu2ND(%sja7i z6vuYRchovNjc8*$5E`%$u*7IQdPhhmwgn!1pSmd(t^*+D5a8bB=q(|oGC}Qp0J~{Z zehO2L)CLnSZKPLM@sw>X2q9j|QEXG_r-P1?@=L;(I)Us;@4H^_QXc541XC`Jubl<@ zGzWo#8*iz8k|vV4p5wEYByScO@c3EqmFdydYyOS4l_R>ND)1s0G{Ujy3~;5cJ0R`U zS#s*zLhU6RKlB`*v?Ob0k;eLr!%#C0{Z>+QqLj_kK*A0n1(QP73p5I)ojRpNmXy9` zIW`bvRD=9lF6^Isl(uipa#}zcupD|>n%3N=z_GH)Qa(qater#RRsfy^LKy)cTeM~Y ziECMBb$*fgT#`b$x;>N{@u`a4zuDIE3jz=V0%|wK{5tXMBI{=3TB;GSm6gegeYogg zIO`*r@5E~~|BDKO6OL}Kwx8jWdjPdc)7(U@6OKjS1AVnIDIn$4-LdvfUv?o$r&Nug z%fHg4xQt3o^!K+z3&yIaiCuDW@ArX}VrcQ1Z|>;r<;GOcY~&44yID0Mcxfn%?R{Mf zA?Kipya5J+S2mMKIvAOU1KbC@KmxCY%@)p_9gF=X&MJJfPrbY4{s2yz`p+z^1PuTH N002ovPDHLkV1km|UN-;$ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cake-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cake-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3149b61fbf6ca210b7f68f0e94d87e5d5ac15943 GIT binary patch literal 893 zcmV-@1A_dCP)Q&$|vKj+@0Nt>qWY-?)@F;x?E;H(az48|sI_-713O`nDcvZoCnhQ7E5 zA7o>XKKn8R2U^)g7(R?am}5Ang3fd;YnnFBHckKC{JH79y*IgM4^^~(%#yzB#V?$P zbI$L4Kj+6e=Xc<>{%?u(EQ()0eqJC>REv?Sa%A7pYYA7q=C=o89Thk$!G|P{5VOmj zWf;L;S#~@CbpsqB&Vcj*V>58DKQ>^!JRcv3odmvp-d_fYU+=$wlzr6^@*T5e;r6)I zd?NGvSEt_g_k9>nD~cikgdiwiie8?9l)DgoP}Lsz;ky*uB8{PZ!3^ngGdHfJwtaLw zgxA-AToJES-|gB`6c`;Byb*|!o0`JY8Rh${84`ay!Ko}q)D3VPiEgU6JWV9iQ+T~@ z9NQ+)-Gg3=GWjGz>aUsg0StYS!Fwt@-rPmS?L!EavSDCbCJUNIM=-=EXTPTJ;01oX zGIR{;xJ8+?hU$8k&%XH*fS;~i=I*a?w7iC^shQ~35{C|0Jic`r$DUa4C7Vv@OtkqQWon9QRVqB+~{P{7(sXsDR4wqq0(S2C7xy!2Yon zqwb~V*fB zTG=}EGd>SYmfGiP223O~Tsk)h6?@fO#en(b5P>~=@dnyRjc#IRXNKvlJ_t45B73pC zrulPO*))Y>X{poIOUZaqL)Z1tR!T~VmK;V(iO1K%XukUu03oshQY)KNcFg~R7*pdE zpJky0doe7zx|;5b4Sc%R;?H+;hXAXJplLz50=`D1Bb~A~{4ozv8NTgw)0fF+I2lKka+`0F-;9)z!*mmQ_FFA{I z?svZ5`TuWn4*akGTGHce@(*^OMo34qyDZPucYHi!e&q10AGs0I2Y?;K4bBpNs74*&!U-E`4`_!E09tt%NY= z<>RT1^Wvcte+;~jp)J$sv33J}a$DPZ4frKn_^@}3v{p`?Cx@Z$PvHCU7&XpIynQrD zXHyt}@hO!eWrpS_L+ooYp%kWNSpUhA#6=-Eyb~Z9oTlqlTgIwoZ5SGc0BkP$FZd~Q zX+)MIMB)~)2@tEs09IKCOxY?41yvSjqXZYDgqI@3LQ#eW14Nuo9F78R`5n}bUdC>N z*|=+Y6Hxzb-;&>Z>L!TJ?SiMr<~ZLy1iH56o327|e3Zi0c5(`x+@07(bIBY__o6-k zdBZ3P;X9Maie2qGr#_B_q`j^`bprN>w;XcsNXWM^6 zi3#DY79Ld^0Mnqugd#h-SNJLl>!i&$8h#>8n4uB$S;2D*@?sT*r)u{AJjWtB9l&c% zLAg@LSj36UO$is5h3)_*M%;MJRdAllt3Y990Jjfi6iYSLN1Fxoxh%-sy{PkQO~QSy z0rJOg$+{?3`Y}@3E`_h_@^DyKIRj zz~14t2;f977+)BgC3=Q;O^!OUO@L0MC}bZrooweTI^<`g-KO*g@`Z0fKliKW00000 LNkvXXu0mjfh)>$U literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_certificate_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_certificate_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3b45aa87ee44fbf18acedaf7a65f0a270b2c63d4 GIT binary patch literal 674 zcmV;T0$u%yP)V7tf%yGRHzh16qgi49NIxeL{Mr&Dnyg^zIz0{eI^hF82ce z^{+*(9Li^syP0WEV6bqXox3#q)Ce1XYiLN$^RI?bOQisPA~w{l**<1 zb_P~v3TGi^o*>PptK83)EfY5<_TM;mX6BT~$1Hk4oCnt0XW%4=e+#YG#tk;Uep7h= zu?&DaEkmGtOYHd6)dSaF&6nzi!TNrqQTQnuF;QHq)XG{`8ehsQ(p7x0-Y2q?g%5B z0-iL}L0E~}in*oR)HHy>cmHNEv5o+BPepce_I2*`u0ew82|5_DWj}yJjR2-Crhpbc zoZD9h#+VWKAOe7JRp;R7%%{-*fnvTRAl@|c6=UvF*zA_{9o0{^K=NexCIA2c07*qo IM6N<$f=W#&n*aa+ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_chef-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_chef-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b9942b821a47ee4291ea52eaca75d475bdf02669 GIT binary patch literal 1086 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 Z*VmP#HpTJ1si6P>002ovPDHLkV1nmXqo4o) literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_circleci_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_circleci_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a1c1544f503442e95559439a59c8e3f9bf1d1485 GIT binary patch literal 984 zcmV;}11J26P) zK~zYI?Uh|c4xICx z-}8UYb2uOHzx~%H9wq353rimf$4#H zPcLZ>wdD6dncuzpiMtPwAV`z1tw6{w;CUea58+Bh{5*Hjb>;G9b$xvu!26&9;PrTm zy}f)zw~vlRTiQF?e|YuqkwfO1KfG}L zxRlBp08+|lfkq+3Pa8n7R8r2JJ=>MZ=#M>2yxtD<^w8bi-FoU^IBqqhFX>F3zE6^)L{(>dx$J^PjF9;I3au zxm@O##l;$5fByiT`}UdRwzdF!_jWQdG0w{J^8MvWgLo`41bnZ2+0|77e%!3obS91F zaNu&gak)(4#^B%~R8=)&i-mgwyf|VN0K?~F#}M+&R{L6Q zD=W)HqfwBOhQ zQw?X7l|}{N)80@@zcfZy-O<9QqaJ)NnEwrBZx1K8BQr$vPa4aj1K)hi9*+ zLDX#IwQIjBQ{o>G9*CC!^HvE+8OU$# zM&;Dn%$a0$%p-l796sT+R|rU9*cFS+7drhbjEoqYp??7jT0D9t7Ojy00000>PW-r1P~F!@AvO%t&``gatr3 zjjN1|D~qqkNB5ad3Gn4yv9WzhXV5!f>x6;GGV5tiQLq6fhP(sxoHM%KgV+r(AosM2kv`ZKNTXdx()9iFgctBz)=(`%b~x= zz4e(Q_DE@NR5b&Y1GcJliLLO~AXoqXL`bFa6zV5#ExacmMzZ07*qoM6N<$g198# AssI20 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cli_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cli_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..87884711f7f6ef03fdae480a0f08fd993c695da4 GIT binary patch literal 619 zcmV-x0+juUP)&Wo}%#3A?T7BQi2dsP?S(0!IFu}zUg(C*~MNmv!jPDeK34{^Z)+;kN4&c5B}p{ zLu{oOMJ$1RZqZuXyisqq zMJr0F{V@Tt&{|&vCaPL!tp|a#kv;-60nY$h{JGY(^6U0`hkL=7IV+pn0&nlh1~Xea z+_QYu7eait)($w{0f6=8_gug8lK$Sh7tk5fJ6_C_dw7F;eh>uDrIcl0*Jd5P85lWV zcR&q8VP5`YLU>cMT`D` zXk$^fHgeS}Qj}^R{aA=U7KW+Km}ZS{W}f%77_@m6j~Of6^o6@P_uTva+;a|G_^*wY zTF<57j(ayzwlnOEwUM)J16SUfa?M9BJlG=E?*SD9h7>AQoEM}XIBbkm0F(_t{Odpr zn5@y&?FafV<^m7s=;k*@^j7?#Ps7=%qH1U2sbSY;DPqY(I!{;w9P(sTYGx^p^+# zsMywsj@FduZ$S+Owl;PK<>*^(1+kWlIC#b|lZeIF4e&=tv7b_FKiPEN@G@FQUBZFJ zOSt>N~R8n#!iota2`iDzR=?q6%snncJidFV`@ zgr>p-b9z=OJFyz8h}3vf&*REe20ZNi3~u2|`bF9K3|Jvq<lr%C*9q}@%*)( z+u4s(H-0wJi_y>`oJ17uMi9{w+9I9v?pvcKi}yrSi^@yaa^E9Rg(-Wc3QnH-tw$)J z`uLr3V0<;68@jsLNjYbDmnHAN{sFDs!{aw;2FDlK=faWL7qn||B=3|xWUJ_t`p7G1 z=iWL1?MJ7R@!Ag!UuO=f&)Mj*()ztNyH|34+8F2VcYFx9=1TP7ApigX07*qoM6N<$ Eg6OI`z5oCK literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_client_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_client_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9c3134a01c19d01eedab2054df524095b1fed567 GIT binary patch literal 792 zcmV+z1LypSP)vyfK0Rj`wC21T%VV66ee&2LI@*{FP)kM#EQ&UMY{a&=?K}1W&b*-b}XO5x1xN{<^PQ~Qf za@%uID^EFWq{qh=!BWu^6iHul@m_>^IoPksZ% WH{?{a?Jy|-0000^=Q=1k^5P?BKk>xNtNRf`oSZa=rb8TXjZ06j@+_^2(i<3IdOhTLfa5xXX|MxrJ zS=*q%<4G%TL_^Bvt>w&u@oH3*EwcwiVP`-Ai|J-8T9<1~|5Sjc8kH8t zxSmOpV1z*VVr`6VQX6enepMZliP=gu5Uxdur2vvIlvbA$AQ&N-Ljz=?7;NtZ;zN!FxWdYc}<~OSR^=JE4Pt446Y%m?@ zxH)}IuMgD$0JJ5hD-8gQZizHROFy0QR*G#e`wyf~(3tPWj##<5PXJICW_`(8UEZ1( eV>x$^z4sTu;~*%6;~RMZ0000lZD6unl-kXo>BFQ+DOor5r z8xLIWdAxJ}zjF?kd*OfkuTA`$q{+VS7NM!ROS6LAkh%5E&rw^@-ne=yAt9~9J+}l};!*Qf&WpI4e9|%tCVSiU=ftXA| zKt^|Zh02`SL?eWM&#*X>X#49)tF64$+%T@-h?LM;8+|OPE64FC$|1rVqsVSm>%8;K8&CU*tzHyI$4Y;oj~k zPpqDtybhF5dx4(i(pSJrom6X8bL>vE4$F3suH05z9ZM1oj-T?pv>)Iy;LDBG6d8Z9 zQLMG`=@b*Q`;pRSQB?w9|9F!}aSN1c{q3hy<#~Vx--mS6oUTEh=;-nehoJvrHzy}v$6`^G%ySUas3`KX`zI8F%JNM zQkOOZ=)G1=TrO8H6BhBLn@qV2!!W3crHK4I39udzb0oh9tOA-@8=H^}jWuMew-S#y z`tlvp^?NW31Jg7yZ$ya2?Op2tPaQfNQ!rQzaN&xZSX>~bh3;73tz$FPcxw>VRT#$d zn0DJ5bHh`4dD=gY*zh!sj>ozB%TA=U*|O~}C*NFvl2Yd8=CCTtvH;UGsR}I;i`(k~ z8AR_!fUo;qBvU4ygEzSU+53FC{c|S%7$O>-VM%CNfMFQaWt=RG%pim+g`BIRvArie z(f3}5(6zmJqv?N8H!yPG#Fp1DM{mD+xGHpA z$Ki1B#Mshes506In|N^C?#^$lcdqY9zA^YLX*3d$UDnDj!9DAoIzGPV&+h2HrV3|? z^I|0O?rVX-M@0c86;HRNK7H_Ex;3(VFC}wC3oSrPi+SJTj+@51CjH#;BSVy3}b0t^goOog5n&&MX7>>#kul#tm; z#{rzKZ!hTH7&{X%nW!_^p6#y-)LrC#HU$BX18%ztAqcB^4NK`9{2nKoRRx-E;QML; z3oBXZQZ^>w_c#y^?1x3HUz?I{Aik7AuB1aU<4Y-*)bWct z+gdOX^j3l!QsV8*A_M_vPjn;bb;8+X!-uaayo`QEd^v;R-VPk{xVm-~5JU+1Jtpi^ zG7C*NFx2CNBG#7&54hmAt6%^hmok`7uHi^$`{i8)yv}B*R*MOnORk~E*9t*fuM7d` zYIjt=XBX43Dwd&GEY@06pry%Lg=GsGTz0jZyKjqI&~z|!M%VSjHH$2H=d}SW76D`1 zDfumz*(RAwHFuEysa0XFW);b`LKU9M6}LEc6(CYvF4v4nK!Uz8kk}k6*+OEiST1en z^!VKQ+2zc9v25s@m?2p%{KzgakRTut>h=_hn(;Ic2o!hi2h-Ej#{j%x=1LWrd6b!7 z2q7K<7$l-geSLkC(P-3b7{(nU3YN>|;r{;q)w&u^Boa9aU=qN|&7=X`)->&&&1M@X zB4Xw?0H**vGYn%i91bUe20L0L5*cLX0RT24iZOGPh=z%%ib1tGJ#*pp^Y^@iihus)?O`16sW1R~6QtI*w#DXKrkrBJM~HK3uxHZrRi5s^Z@j<>tD~mqaxRufSI}Zw?*Vl099TP zNOax$Lzq}|4QxxyL(K1}o`pRVq)U%K{Wrj{SD!5CQ{hG1{(kX002ovPDHLkV1i3y BoQ41Z literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_component-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_component-24.png new file mode 100644 index 0000000000000000000000000000000000000000..46652fee360320a88cd44f132da735b8db0fd4d2 GIT binary patch literal 891 zcmV->1BCpEP)~7!d;qb%(KHs9<73 zDgz5@SEMo{hN@KosS-pbMW8lnnzo^}>m<*162IqX-^1X>^(&Htv#{`O=YHQg-?{g^ zcQ5>p{~GEbNte%^`czQw4bzCB-+t@#cQ>q2i(mP2v7phP04d-SPB5`! zdUM=+LQ@(%_=tgsyaJpUR$d{@Jo`KO+`|G;n4G-Bz57R~ZIt%}5g5a}jl!}*=H`}2 zsYYbIm|LS%x`jgine%UpCzB1Hn_0$jT5Mh`gOkS^^Re0*NkDOWjbx(9+S&qPCpOv+ zCJT3Y@$fYqrv*Ufu{5GoR-dPJ9cp-H#q5Z+IL2ugu@*C?6+ z?!H4dJ0Wt@z?yB7Ia~!mhta;A%ntEm4MY^XtK+!!Er2+veTJ-hAGH#Vx!Ps(*D|6F zyyYo&Dp|rH#!fXy>p_-I+a|b~A>G~@>`sOnc!>hLPP!k*YAw90Q&Y@9zxoqf^xqBOCe=5G#I8pmW@ RRiFR>002ovPDHLkV1f(^rd|L5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_component_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_component_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..de1c60fa52d8109753512ad74ced7356748e1b65 GIT binary patch literal 1001 zcmVkCeBP|?%#1S>2zk&ACiq5U$~3! zJMVela}FQp!vFZMp>~s$`C-%wb@_ zRN4gCv4KLL79<8-OOKpA(Hx(f{O}COz=Lyx!Q8~ydEmJxTgc0b0L!{{Aba_hS;z0m zJ8o~TE}pJuH+G=aQG^$P`Nzp?BpZ)j+GCryyMV3;Hz-t&-QTPn+1R4AJl>#+VtVB4 zGmjGAxZct(uKr3&+QcOO;6Bb&F_yS`F?l!tK_))_9&oN^keL{JOW;ia5gAlMbZ%no z$7XTMTuAuN<>$33MoKgLbJ((Or5ud1r-+fz_R8s8Pxos^VdXnN=&0*JtG^J2Ve8FS zAMS9yc+~!lm_1cHM+UR4S6jjuG+7W?LKu5^+h=&Ty7cig|yx}3@Z zt<6;{0;1ucv1O()pds2nS3CNZ2!_46l_a5rb%{WSPXOl?KxT6MYk|>iWBF%>cxsAr zW*;iTQA7}h2IwF8bOre3QC$EK`1sQWihuMYVo;jx!&%>h z??&+QUHGeA1fESWpTf*%?OLAUiLR5`HYTt0AVIS0;l;ul#p}Ho?VC8$F`U^RR8E2A zpy$Jc%Bv4+(%~=TZtka=f!6-_%?1*(C?7hG*E3MtyJ{nkHx2fo0+GQCl7P^?JlZQ% zbCf~8^;OooPmQa0aBBvAuYYz^U=4-a@M+~by+>Rp{gN-$1&OL`;{2+q{Fx4{rDc?O z)vApaS?@UMm7~u(u3sJhj{XOWAEk$s3N8W%0K$p#)lh5s*jD%oZfLaS-KFLF9L)}} z_mjCBfomNF8dr(pi@3iw+$>%V?E*52ksate6G~QI2q()I;%~2B*p1Fpv2m^^^)$}E Xj_8F%R!B;0MkCnY%)ofp#HO z9bm%%PZ5W16rYI2xzHn~$pXuHAs)Y3U&HWvKzK>pbR|xU=`Uuf+V)E&^yCbBG{$^uRDP!tu-3=pkryp>lmKwZgWS=TX5A5V04ap__o zk?OTJ_*92NdV*|b79l(w_qM!B0e(|usgNet-oeRZpAip~xp|EYO~Jrs>f#AzXSNdv zZQ*FY?_f(y%VNa}tVNxLl3;jnfDm&aVDQpBKM&3^awQMIpXp_0iaLpHJ#_Xw(^V>! zN);=xSE_Km0I>&lGcq>8*!i#F;D9Wns4|8sQ=`kcrM0=(<(1rz1EW7|=&A68N2ajMT;8FzwTv{zI8ny8_ufKT+UnGud258!vB$F-h;gR=vFx7^t zswgr)!QIDH5*9+baxcKPWT0j$?S#XICmlcjrSsCuuV~k1uDZoyLG14A)=qtU(i#5! zvVLDfjTf&``e76Q!JeHD_cTPzPmL<2skQBq3kUY^U8xOMhjmSh9Dd_1*dc|>Yg3*xZvQrMeP&7c^pUHRW3%&1 zQ$h%BGYX`5Jl>+JYO@f+ziU^=b3;QT{z9Q}G!~2Xl*{GWTrPLavaEZyc{3&_5{c$$ dG#dOT=U)bnU!+j?=I;Oi002ovPDHLkV1hEM*TMh* literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_composer_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_composer_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6a6f98bd8adbc60370848c9049e2094c96759dca GIT binary patch literal 1138 zcmV-&1daQNP)bz9qY9gLO@2Xv^>32rPIB#_9wP%hBK3yBv(yfMKD zaTwzjsNjV^i6q8bFSt^S!yl5F@H+YadK){By|i3EeCGY5AT}z@cYO|QDvc0r_b1Nb?yj={ zp=e5rB!y$cYD;uvGP$Y2Yg@8@Faud?LGU~nFH?~Jy9$c?UR#} zJ#Qb_x81(FaIjSyZu1$1 z0(VA(hPT!w!b2Bt*4Nmx<59iBY+qCN)YDtcW=(UA-Ri@V3;O-LKOR$%r67WxaR1IO zT-=?@0S=2!G!n+^_0rnb%H^}C@OdiQ0o-;IQ>hT~_;keO@fv#0Fj*F>9&=5f1L7rW z4!|m_hMq~_sCLuy%lFi~)g_&!%*Tb&a=wUO)Cl-m>Af?-?cN>|;V1?YWy)Qy_K(uIu7*&yPrZ8n3{#PCv&$tL5-fD5 zgcJfyj{+o8Iww!{f+!MC=cz)c)@H(Df|-m#OcxY|AR(3I>zo$ze6Gk~aCW;4u)g!7 zD9~3bg9@9rP;XVC90P|cF_FkIGABsODw-nWu_@S8*$j};3p1Cm+`913KIjHoOF@c4 zFrAnu8k?t~CBT-ZdaB$ms%yMR2tGaW74c+-f`FnV{SFxNqO&X;Kb8s(kS`RmSyd|C z9^N^8kaA}&N|}v1?`mdZbA0y2ahf&bI69G#j-i*oJ8*!W+enRHMHp*~IqQcX>bUr`jF5W?Et-uCjqzzu66 zk@(i-a_!P}Jrs+@PDLV-J1dM^Qe=nSeEh z;!hnrI29d)(AYslw@igrL4-zHuzzXOG~aPZWA1I!)VR3#PWPPqp7(s`=ermF<6lGm zCTQ^0)I(8*>TxXg%Il#^S*KC)>(4TAt9l=32GSr4euf?e&N$X_0UA!A4)?ajznD}Y6g=n(3(Wz81su`-3HV&M0@pxi zNC*emCBC|))ktjXBYP!@=8%z-Kw@BzXiI3 zqYCS#sy$y&W|lPzf3QU-qC%{xT7FA#_qGHCqMl}VxI*tibAI0hEkWT}#7}XJ(0jn( zY|q6J=xsH=q(-3K)zPuHnU15&~5t!S|eo2&u^1NLz$CAOje!PuMW7YMiZBnYD; z{mBPjS3{o)3>zM61?44BtRK<<6rBWSffZ})z{o&ySVe9EMTGBSnQrL7wUA1wc`}(k l?Dai;_x^Y)ovyhszW^fY&8x3;jXD4T002ovPDHLkV1l)#P^JI? literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_config_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_config_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..276fc7c69012b6b62f1d809d192d4a5399e602bb GIT binary patch literal 863 zcmV-l1EBngP)W`DR!Cf! zjTO|5LX?0DT?sD57(pRsT4*R;xNoP3w6w_(opCagnRnlN$3@b~o7b1ZxN+luchCLb z^SkHXbGh)p{%gs|klOT=^Mb zIBY%Kl58z7UPqN)C=CceP?6XpM}C=%3zj zb<4|J&~(7Anir>!98Ci(E?@cvl(pUzY2UVZ(qBXDK*D7fYIavt04#58>x@QiH9>D*~sk!mRon$UU*CZ=E{}t zP+m(~JPny>S23|m1E_lksAmc&ASh$5K_O@+@=M)W@2CM#)uptO1F@_R6p6&dc5b`L z0Tkh{%rIfhqaw6y?%X>kpWWPviv9?s9_P(ly!ZwH6cRARpa;US;&~6*|RE6BVv-aY8 zPY2GeUf%>;h{tk~F9V@3B2aJ*o9w8#LWFHQ6ajeJo_Y7>=fCRfKUiG8{58Ux`x=B# zW?q?kFCH@cc~fPGpG5=Z8^G;n?;D`#5>Npek%>;toSHhPB4+`Ia9biS_qE|P&Cjb@ pSXy}`9{b{#OGoBcR#HE&e*m)o91z7aRZ*cV8t&1omI+F6l|{Jy!6YfS{8)<4(lg6YS3HTAuK4I`ziTjt65cU_`!bJty>D`CRwbLWYdQ8fBW8n$L+-;zRHO~ z$f1f%e42tu)iDS^X4Q)(4R|z5Y#l`0i6R-54GisF%c#CjqSp0j&_Wsw zWFmiRV_QxQ4;t+(y)=dTFIJkr4n%bORKIwQ6uw9eN=H1RS~;F_aRKsiIi~;sf zttLI8{kfAKW&j|Nh@Zp(PCiLz=Y(hE4ERhRi%zn&94|QTUDNN;z>5vP zG!rL21K`sXnmR0GJ6r&~??~Z&NAw3Z%)nqWRRscp+4oqLRjtq1ErjlK$X7+<-N&!* zD;vJrX434c%7NecjcB@7*L4yRu*CWGBvRA}T~;=?G@W>OwOm<&T04hahY0000*52TW6Ht8Ummf(y-f#ZI0-%o$w-Fa}3)F1uR=daJR z=lyxV-=Aln=Xv1&_^(6#lcL_Xy5*wD%GofQQeWO#Ro`LEm0S)ys`o0I5Ow!#IMY;n zfVm6!oTZx-#K}FStLoQI!+7h$@jOMKuVY7{DZ1MK?FzMqW{z~`+?I5B?l)@@KqN+umiu>v;d z9g6H9*t{hYGq%>;)z#9p?0jFtshq_Jf3hEJYp-pbi8wwvDII7^7Ky06ket~9%bckbNeJB>Lo_QB$^n2W90eXu5fxKE{C6z_7`kv@L5TgQ zC&?UZMkk7Aw z>I5>%rf$T8=6zVfU5(53fLMk0+D9F6Xd%k;VY` zfBb{we#}%G0%1kJ-&o2+O+^MkAQ<{$UZyn+SOF@t&(JjJCVItS;~k%}d+|VmU?`yR z^=~#7*b{e&<4-5|{o}f^zRAg!2S!?6uYIOp16Z>5_+OIAvIXblFFO4PF{({N|LWRG~gGW6^CK-!^mu{E0~W*eOwm1bGLI wh%-O0K|EVuxe?cMikjx}f|}-V*}vua3kRH6&!7lth5!Hn07*qoM6N<$g6-Pp9RL6T literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_coverage-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_coverage-24.png new file mode 100644 index 0000000000000000000000000000000000000000..009a9d69410d961ecee8322a49ea9be45ea14faa GIT binary patch literal 689 zcmV;i0#5yjP)GnHWczjG3`{-21h-D!v%*s8EZ}>N}kC{eS12?*aeq zZ=1B1O@W@~D*~x4Q;v}JE|wJfC!s1w4H1CTX9SH#6R z@iDhsKDw*5H@P_O?`dwAknYU;O8|jeC$9=2_GU(ieRB&r9M)g-_ncT3X4~SyF98T4 zs)5GUWUE9OuEEbnUf~wbH>N!i?U!dh?o#sTt}O=3BmfFUeWE3-njTS3Fog2vrQxV$ zJgrF(OoSHVMVq#A)8R!}MvWr09WGK)MK%jqt7U!28O0veLBzxJ`a&X#l{R&Q0n)u! z@MW00>On>b(WZ87EMTOmf%uG%-J6T4vQ;fkCyC4N3ShG86h zPA}KEU>+cs1ks9(TO?_vFko)qhK}gQWG#tlmAK1JK{RiDfKK@UG3h4&5vM}jX{Vt- z0^cXleAP%Z({OqnfXmnY5H=p#vyLO2-5!83HyNr5WAdfNSduUHQPC=+j=X(IArVoiG>cnb~Q0{ESDc~DE4x0!1_-X#qZ`(o~a0 z5ke6_NPlGnTs!2Yv?3wbQR$RYeo1#k>s9XlV>^g_J=2Ul)Y6rd(cB$nArjoK+l_^c zovlQw0RTj-VwBYun;P(Xx+R>~-Rp$Jk}mqz=wi7VTGS@yEao>N%tw~C>(TfYQYk!9!GRPKVC<`cIU|D?PcWyhbGHGM zrl$K*0cpD702ueftLKb;d(VroAJDr<3h70Pa~a770~k%(*kmH*{{mp>atFbUM#}Te z)S4Rs{lsT{9=kv+0EXT4kDN4Pu)WbpaR*0-pCx@{hpC7Xvy+LnX#nc;s+nr@*%Sbm z`*sNMXH1|jBaIWMil_5!VYW~RZD@dlKIL;NT!B`Xqxwgdx3i9L?T4LA2H z_Gqb-*!mg(A1kbk9ggFeH1Ivw#$>UX+)Z#KCaCNjn4IzThJ_$6t)f6B;d*Z#@|?n0N`4C}7S8;IzGz*JoUWBLa&GmZduU;T1jj9wEbld^U5;d)^R$(;52n bqQAs1vgp%nGkuod00000NkvXXu0mjfY-wbU literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_css-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_css-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8d66765600bc9302215fcc750eda4b40dc4878e5 GIT binary patch literal 860 zcmV-i1Ec(jP)d)AIU;?gYrY zGK-K`mDSYP=CIZkN{%a2EA8~HHKVT&OrVx~5gr>ZT91`qZluF-2!wty!1dfg#tKoV zeG1`xrWJYa?cYLaCL{=p1DHutqE?$A_UhRTZmAp*-g#<2(zn?-C@@Am6v5!)GrKaFqiy z1Ywi;U1Plc$TY3kU{ZrPv>@X%^|n#XP41xJxlERKFgEUUF!TXvbquC!aB!NL4f4+B z*0m2?I5lf3^`ozK2srE0 z;NQCF>5|XleHG?scOtUIO^@XPSd9&~o8r48PT=J>yEUT(fR~QW^6cRmeuzDe-8G5l z3hl(wwTekna)JE)l0~R1a&0>U*Of9berfq8r$73Ug?-~J>@BgU1UD|+h&H0O zf&r~X1SQy2Q5XIJBAQ7T3XyKC-PA^FAs>>qku=G@lcdq`Ej=ceBkh8K71vEj*)q1=3|(cy28PiKYU4Ip9Q8v&)d zmVTfo5K#=EVFHO529p3Td@z(dR$o6kK79)4+01J!I+>pt1$yfj&E8zkc#Fl0Stq{Ts3@it(dtozt&PWD+6TWNf*np z>PmuQ5WR`u%k3=s>(o&0zG`6K>*K?~N89w0>P+LNlQozMBZ`G}+`w5B@8qXmGRPMI zj4+R4ND9P6^@3k+6gqyK^7^C@oP9orsB$)N6Le)$mHem0BA;DaWMT4Jw4Ayak7;RL z7e*i65VrX;hpP$Fi8uh-7<$_hv^H-EzZS%Jq|L45GixPOIYNTZ$cT=4*_HFzrIuBo zbvp|HTxV)zW$ zUweXwGEMZP{7i@V#j!Ts1hDMp^|X4Vh*_=kBupY-{3(x;>}{h2skNuff8B`mK(0H6{1 z-3XfP4L3Vdah`iP%V5_Y#GTU`w*(!{HUKMuLYE_&Y-_n<5r8GtnAY{c zoOr5>mk)L_6*wHZe=m+DSPwO2ZBSu^<2tnp-aGQ(WiSN<;dYPf#5BN#xmz6ndX}#y zJ(M;aNIA@`mHFc83a_4D00TNwv^3cTXyAX4J$~*jj5%G8clX_mP9`dOc)QHPzV0PT--_Y|#o1xa}1poj507*qoM6N<$ Ef^~SzcK`qY literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cubit-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cubit-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2df6fba218c00de71f59f223d0bc3d1e068f17d8 GIT binary patch literal 789 zcmV+w1M2*VP);XDY|GzH*BNSE?QV17(G~#7CjWbR1g%= zO(_UOjX+eW)ChE?&`31P3^K{WOIf>U;)1uv>0wn`v!&gHUix4d&N<(lZ_YUb1OM@_ zp*VABSDx{#MA>hTBNVx=cwcOX#?jpq;Yc>vuR)G&AySBtR%0pN!D0C57um)~p|YRs_b@j%Ql4{}7v9UL{Ln{D?hOWd zdw$_LJcEJWZW@a3(lK)(#GkY}{etNXjpFlzVj}#t=;I84+A#qs1T7W!X=*bg)~12h z4TcAyrVxVkFh81+HOag(xAXqiRopFKmIELESfHcsDJEAB#QN=^*1+2uD7yyTpR9xh zs~|oDeCJ?Un~J42`yQbA^A<@-!oe7N2UQfLXCazvt^Uv`FtX@aI7IlqH@3t-at6^DEuef9Kw-mR2h<-6UeEX|rVu=)?p{*^Xwn*&J z@PHH%MMboN2cwBvifF5X7L8hp#t>WE>AlB8XE2j73=dxXU(Wf?_rL%D{l0ti9r%xb z4e=)rWnQjaBP26?aau?c*N!kh)BF|BD5?w<2I)YcgfjvfJSaVZ*m{~Y0KW|sLo5Rs z2wdA>HBa!&XW1&Vfmm0pxhJc30CB!8YGsSJa79W*;|V~Wn0ZrJ`7wKM$DjtjGb@db`5M^eTv%03oy(^6immJsO~dCx%QoO>fZ{xeG(&U(GI4r9 zMO{tOi?x}wYkX?~sdgL_Rdob2f?B6pcr<}glh*N zNrUKc0iXa#AK2nueEH8~2##enYp{S?>65Td{zeM8sD z8I??Jc?IO=L-uap2CABZ~LQP01DLtM~LFPIdI)p*iLg?MSnS8ShZTrEJrqYT5{@w>| zLOMjQ8oFp+di<-n_-hh#*h|)Y)OrAv^gOmZ0m0{M2@XxznKdD{~6-swPKG8vmL;ao73fnE!LM^p*Syk%;{MWWYG500000NkvXX Hu0mjfn0k^- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cypress-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cypress-24.png new file mode 100644 index 0000000000000000000000000000000000000000..33031cf41ac2ef39c9b2cfbefbeab98028dff735 GIT binary patch literal 1018 zcmVH<1KF$9Az=#xfYj4V8v zI9_}JvzP@XeJ~+V1{fFE9>`!BxP?Rp>PBW|FtSmR2?(X-()J!7s)i0j89w;pH@Oe@ z{?70F`Tc(9o*ejJ|Fy(kk`DDWehHl1X^j?9o}F}ka!>!T<^`UnJczsn=zsx%Sl=3# z$ULCHU_b$QXn>**Hz9=%7`uM5`2+&FHD1)y_@RV?zusd2h36X22tnRXfJi`nY5nG1 z^uf@9oXeFn@_of`KA5$rPd11D?BI#5laB!i!E?Zoe>C=Quz7u!lyn=puO35P@mo=Z z)nrRz>Bb%AuiQdkn1wzmF(z+UBT^TZNm-R-JCE}HnI6WQI|!`@qXrfenJ*tE|D6h! zf0|=uEr=n*wtGM%ppvo%=KVGXUOz=RpvJ_*>l@6RALZ`QIM1Jc8=KU#vKmBhwE#qS zdMAY@=170$Nv^!ty3IUhoj=I8ADtyRYd`YV!r$L_1ZZlAjDlQld~u%5wE%Xzo$Bgp zoK7c3qYCQ{-8Hh%tvw5PL~9k@zPP7WTAhy46} zTrL-FZEX}67gJwf4?t;YDHRnJ%ngmBPc))VExZD8_CVRxSoi&gwi%|jwwB)BURqjO z(CKuPl$5ZzxQN^BrnR+|s;VkH9uG*#{RuA#`-}zgM-&c&7ClEo2sBLtKuU?GX-rQ~ zck1 zE}EO0al759s)`WNLl#{A{l~Z+B<4Pf`s*^;$BOWJz0}myFf}zrUtb>$4Glyh5k^Nx zky6s#-3@>_Bc0XTK2nZ6bs;W5F(%-f^z!1nwHPdk_5E^<($}2QY_Ui{mK`sb!^6W;Q4}e3iqxA7 zeiA6$wef?TqZP-yn?Crfgo@eNP948FE`r0)YQ~6N4}#d o;19^j$;t14VPJKymH#XK0TTsbkIWT1J^%m!07*qoM6N<$f-KwCSpWb4 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cypress_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_cypress_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..11e448912a345135b07f58a56648705e26ffb053 GIT binary patch literal 1122 zcmV-o1fBbdP)Jm!|)HD_>3L=6a zXugTitYOOXMIiIqwph6aNxIS++Sc51vThDB)7WildcAkod+&34;UBzre`xDPZ~DS{ zanAGmeLuh7Ip^WP|N5^b?j|X_z2R+ip1)m;qNoKIYFehWJ2ijsll_~5q44VntO9XD z3IY)UQf32oB^1;E?idgXgmR5gwrAElCqh#9n(bRWTC6z)AR%kxzDIT-$pi9{Ox$3+bX^Jmay2bEeY452?+F6) z-b56UXiAP_c65TN;ZdK+O!a69=2+yd04rMhx$aQr#)X*FxchToeRg=$Gmlv=e0Y>| zjhzIS{3`}l6B&>1#8FplnZG=lI(=!X&0@djz*?@zX|I1lN>RBwe+Y;L`qnG=`n9BG z<8I65WbO3J?-TMxp6Qwlv1WE1tVK#0^n|P)^M4 zNzKXBzI&zlmgWFKub=PVXeIt$n?ajiTwhlVBKR#Zf3qY#5F|Z!2czv@u)OHQX0uUN zR)*8*Bqk;Xr_+heW&=P~RZ5&sa`A(sq~~Yz*YM>80Of35TM!|>z8PTow`-(0wlZ<@ z2ePuVaJgJK91hCM%V}$CBQGzH>gs9$3JMA+E-q%W?;M)hL~wG!39E-Jb-hOjQ5FqQ zby%9YhQ1u4va*t6$Bxm|)P$<42LLb59Ypb1oy5yha<+1bhA!-q*qN+Kg81EbN%(9jTFU0pObHqz12K_C!7h?U>W zKesTt-oc6+J<%P+Y)d0>b&joja&f!eR8&+jHa5ob zQdzh%O`K!PsR)3S>X*>~#i;T7kC%9Ke z=*7ST|JXR1v%7e2_gjbF3w?g(8~NE+CuHC0epymdA^|_p3Zz6Q-OY;@o0ynbXm{9i oeO{j&85ubX^aBfbTlv4z-=&d(yQJ-#HUIzs07*qoM6N<$f@!}KegFUf literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dapr-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dapr-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a576e4bbc739b1885192a9cd503d54ec4b039658 GIT binary patch literal 484 zcmVq704J9podfzd4ZThNxR3Z|5lb77@z2~0Kxw+>)_}5QMzOre4$=wo>g{T;#I(M)) zed#otJh^(-P04P8#sOC#TfMF@2#oonF@UB4^5So(5C_s^Gl|2alou*s#a%?%FZ&Q6 zwd`&yj7I?!CW4`%tNS#$?A8QGA85sf01BhPO!OHln+Jlg(RxtDH|rnp2LPXbXz6r@ z%w4YHtzX-aZyFx%qqDQUc|h^WL#qB<`TR2_`ySzWHspWV9SGbha$PUbSM34fA0_mC zy#*;4r5NP=oO(xgk76-rzU*@k_3r>=?lHZ3QdM+g^$hLJ8iy2sF*4cenEsCdg6=3> zfT*#~aby=6hxJ%n%T)DTzTi>xY~2uYS+o)N)q<0000GDL(f>I2!h5Uf*_JcEGz^oK@h=c#5+Mj62VJj zqvF4yRZuMKtYWaaHn+qdCFI*!CTi-AKZ3}Umq`Q7r2Vht;(br%Ao+|AdoIu-vwwJV7lZAs@*74 zzBic^iY6s~iS& zcf|gtdJ}a;#j(-Uo)|!^G85j2s7_P?H*z!Q6m#ac)jnWjpUbFfb$nY` z;`97s(^y$q3+0*0BtV|U0XkI`;267(-ys5Udt_f8WeR0BYWOxNwo=gAU=C$=gK>Rm z<2~r@d+<1!bWc_M;*S!()rd$LUV3wJvg+cB?%4nEq;WY7V2m6|xMtVi0D|6E$b+b{ z?vvQ}z_?sab~#7u*NV%llvgcLy#pw6p)$9|pNR!noJ*y$e>}7n@Xo^5KkddywWyn4 Z{Q~zm%q(Y_IO_la002ovPDHLkV1k3VA~yg4 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_datadog-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_datadog-24.png new file mode 100644 index 0000000000000000000000000000000000000000..612bee47612bdafdbd9a79cb937bd03ff9d1c2ac GIT binary patch literal 994 zcmV<810DQ{P)zFkVr*kB)sS!;PA5<(A$%CbcU};)Gd=$K(U`4AU6yKEMy|koi@}Lxp zHE4Y(UPx$CnnWU98=LN?Zn|+dyTe{GJ9B&(E1O#4Brm@Bf0$wB`@aAG`+w)08TcRn zHN;wq_H}*ovOw)wF-gk456?e3sjrs2f9qgGSfyuy5bzy{WO-cS+#(P?LfHX;RSU>c z=^2+?%w&|dV`yskQh9t|_rP8hA76W3Ca}MI;Gj_Au9XCoQoZhEm8=$}lTUOVM+qT> zgI@_%ArwujEPuHJC2m)6|H>Z3wQGy!(^?P;O_w;1!YbIP>#{wMNcU@W-Q9#`*-ZU# zh31YL!jT}lPxAPI9_D_{aQNvn6mq4t3G6x0LvLRzsYH&vY0=agMo8C9dOpuDqX`~< zs+*y=#+TJeuL7IzTo1tfWs}A-asZPA3Tpz?A)VOt91c0jA08bv;PHT5P0HW;pdRhai zOPrEJDC}p;z0Cl$ZE5&B9=nj{#5)sg?`vgdVgaQ<3SoG6V7r@d?AsVuVtj}341EKrW6g1gTXzh$}Sk#=e#K{Q=b8TRAY3aJTBzBfgnLSMy*{(?~x zp#L@ZOVV(&LH3UVRdqos!+xxy%`3aU;)}N@7(P0UKd6OnZ6~@Wi8^-MdHy#00c7Z-aTM{=dq5K&dBMPK6`KjfN~Tk z4o{|Q)>RnOBME)<)U4Zu;bX&XwKTPbo%n^tk?45pAx~?NAut=8PWhta$+I0>8@354 zxH6L&p1+hS1P$M=o*f$(@>y%a%oLOJvzcP_T+*@~JFZ*h=iLL8Qjyf}xvz8PQvC-n z{B(3~CUe>@*oH#RI==j+Bj@_l*VnB2m$|oduu+rNrp#vF_d`Rw?SISv6Th@MP?qSd Q0RR9107*qoM6N<$f<6n>NB{r; literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_datadog_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_datadog_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..45f59bbc43e1704fc38767e532abd4fa8602e4d9 GIT binary patch literal 1123 zcmV-p1f2VcP)i zK~zYI?Uh?>6jd0-TF(`?EO$tF!1ceA1NeK%pXc}1s$`>~H0bC`HRsZQE3fmX)(DyJ$Pb2`=tr z+qP7XDzI%=DdsH!5DqsG3XQu3prjjXJLff32CJHPyoQh)RIjJl`q-3YE-NF6@B2cH zGeWX1Tq{&f;kh?jx%_*EEo+Vy3O8)sv7M@!h%Gz45+R-~htLZ6K^&NSkzb^|5Pn9DuxG;kuH%VFBO_2dv)OVhO>aQ30xk5OC($Wj^0@ zlE$Vwg5z|&x`&x94b=!%#}*U4zw}{kcNn02-9H)t!0RhTQ5*C!cS$1v)8>Ym|Hvc& zQs;*FaLo@aZi@ooIxaaQ6Q}};it`oVjBqYXRZ2A-|1QNq$^gJfo4Bq7;GU*B7PU=7 z_m^wmt6-SvWmUkd9Sa74u2BKyrWx!t_-NfvrO;Ku&UfP+{Ir`dx143*lEE0i#@oA} z5BiR2wvJf zC$YIbaZNyAB)}^)pGRH0?NNgDI`MBWF|(xsW5^_%HaYOgujH~8y~*qJCa(h^rK~R{ z<_@%~dHeLK&5^^e?|OVPfOI8$x11dcHPraKyZY1<2YLXg@oP-JcPta91>N3r*SnIZ z(ofydah<`}lj=@u$y0+Tr_T>RAQZu$=Q9WUFJ=lge(#FbC#GD@XRWJ7#vJVL$(YI0 zgO=kuy{a|5-|s+D%1HW3?wg!Ztp9lZ@$Hw-XAV0B$1hQOTrGcb+v$}fPK3MuWxmk- p#RQLH&CJZwe(dOYX4KxP=r5Y=krPpWv)upy002ovPDHLkV1m?b5k&w1 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_db-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_db-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ea312304c4fc1b31811880b4bfe8d08c9ad86fe3 GIT binary patch literal 794 zcmV+#1LgdQP);HC=~r9$mOE$ynLpcG<=n1Vmi{LhRtWA44@d|gC|u{!p;>Bet&IPZC%^PcZ; z4!p1byX0LK-8^^nq$1yT(`ew296EO8FPqo=*Rx+&J^lm`1J{AMS0o<*dsJ-!AUD7p zJ^tK$s#*=c-1f~6$;2b`)=2k2n>JR zrc}f)lOI+&c%@sUa{fGSKsh(O=2U4AA%GxXVFz9tLYn=J77QADMhQtr=)A|(u! zEEAGtp;j-mcQ0H<%7^nM zQ0VRRY}xv3WvGxQf^&kgD@kPa0@X0q=jwrT!rh5pT(;sO0#QNf?ej#@s=0SUyA@oJ z4}Y1=l|Te$9*0anh$yXdl-FfM1;rS}Wss%;&AOppx5ROFNpF1-=K=(QvhP5X#d*up zqNTB9NYj8U6Rh#rNGTRQ8#lEX7)*bHU~evf>Pm`%4JiW~(znTD0$RCx;Jt8rtdFGy z`>)%xx(jI34YN<8@1=I_{@MhhPf)q{CV&WHLwatF#T{!kh)XVvA~j*8CQZeqiMUqN zWN9jHXnSW)$44r;{sX=9X^Eh>0n7q75dH+6g`k0I5g0&q7?DH3CcGQU2hh=g$=@b` z+JBJG;5)UPkKL#z%=Vz11}5Ghn*uqD)nOU>z4=aG=8MwtkqVYUMEk)ufElS>n|WFD Y59e+L_qa+X3;+NC07*qoM6N<$f({UE`~Uy| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_db_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_db_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ab65e3ea517b8742966d5be297b5e68aa2defa27 GIT binary patch literal 877 zcmV-z1CsoSP)Yq@Cqyt^3 z5E~sC_ybswfEcL^RHz^pK$WOM(&>NKm#Y^(1fAYG?+RF6nEM2HX>^310Pt*YfBo9I>&CW4)MkI>gVm34&%D2a$Pt+}(lggF9cCl*J`Bf1L z!vaJUKiiRRSX5&i=~N`v_Ql#h&UqwBS~vR{b+M}Nvs5}I{P7+qkc-{kuTueyC$5B24mWI&& z1i6f-$K>b_ok#jIx1ftBOL$BoIsslAs7vKaeJAH0z40V6N1RAa00000NkvXXu0mjf Db77b1 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_debian-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_debian-24.png new file mode 100644 index 0000000000000000000000000000000000000000..439ebee4669aec47907e7cf4a2ce66b9b13fc655 GIT binary patch literal 755 zcmV9IGDHylNvV%KznEc2!X7*haE4viv#u^yqoh7dF>?hEbBH zQ54Xo%EsLe6urR7UHK8%t9f!0(;fNrQpc}`lo+uF{ILkZeeEFS9|SzWTKvZHcnaZ@ zgbsFLv_z4nfxT*Br5DLfPGc=(s7Z7ODi%;yf$YmEj93G;{XNKlv1K4&;E&d#)rH8u zdQa{}>N4mqloA~+5JW@jsUa|CP^0q`u~6iVdhm#FRA@2aoO zEl|p?P|D@EMA~CGINAgH{hlK#W|q-gqKL8;E1kiJHz9TZhRgMf)OCbS_!6&+o*gI@ zzEHqbE3K|=k(bZfHk#?5fC?fKQXsb(7Hs4XIQaso^@yy+uLQc{Pbw0Sem|w}KU_64 z-b8NdBaT%>nmWo>tfXcz+hQ2qdpGG5k5URDe*ZXc4|P!}W_J<^_H-KA@lEAxZ!2Ksy`aQ2)(BT94?|Bo+Fj6 lmglc{On>Vb2SPjbe*(!M$_msT`j`L!002ovPDHLkV1j?uQ$7Fy literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_debian_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_debian_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f8db62af8ce2b01c23ec15f845a3e7161c600381 GIT binary patch literal 904 zcmV;319$w1P)M)m5WN;SgV5Q zLh-q=pit?eQ1FFFDe9sxOQlvN;)8+-78zoksYcCXlFW>A=YB34$4qn*olQ6X;c)Ny zzW@1toOAikh4=curHWb9vGwRKQG7m@$B^vGx`VA<=DQZZxBcr$S%)tHKT3W?RC<(U zKG0}umkIFBfUIL|0sIQC*6-i+>F9jNSI71W()eijHH{H{3#(uj}+4oP^Y!CpH))J_mk_^;V zF?s0%F!dV%|7oz{z!$R$RX;&^m4+V#k{a1B$VH8M3V@RWr>>r!P%jp_A(L&-*NWHf+?x-cF< z0Bd3}FP82f!0=f4K2dYC85`4b-2l)4reR+MvSR_Xp)uUcO1*wL>z6O}2U>4~JOeU?M#YMScHh0Ih~vDLQ%a4P z%X0(K6r+^&+a0`>8&uD(%T+;&iYM8$vZqR_A4PT17-xTQ7mnO)B=r?s0qNZKtjkK z0cPOSlN;?P5JGLtyKj2CK{cl485VVTy!Vu*>bF!-v;k%X--Tc@OTGfAQA$=m^|&W9 zI#5D2qd1aFCrXKG-%?3+C}yGF9>if@%Zf8>5x_#s%Fuin3o$DI{zw6Jwpkh+0kllV zj0s4kF&1($zFdM*>+U9$z!!G$bIndm;WUNj)pSnFm3%g8V=z#KFYHQ_?{S*AcDxv8 zz7D`*%*vZU6(ftg2w};~S>Ri^n76Z)gyNQr_3|P!Jts>jb?E6e1^B`)24`vq=p47_ zWYOe`Gr1FJtIg+JOF=sK@y9B?r(7(oCI~FW=^Y3HkWktIlO_-5cn0f!A8Xjj`J>LP zs7Oqu1pqKsbv*ci9p6(GO!Tnfq)Qs(RNE5G`h z`V74X`i0SU5dA>WUqOObQs|fHubWOzjYijKsV+qyiZh#-0|<3hKB#|`skhDe)6IRr t1;Q)Qx_DSOyIsEQ(K&AC;#kdAkl)@d-2QDnXf^-<002ovPDHLkV1h}4T`B+o literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dependabot_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dependabot_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b980db3f650f5a6970871c77939a176c1cdf04ed GIT binary patch literal 847 zcmV-V1F-ywP)oujdGEG(Hae3trkggM)xGze`~ThlyN7q- zfBfr^iEOI5+3XReb|x2&Y^<$V<1@x9e)LvLjux^HDM$mkE2zP^lBEg?&`kqi+yHk- z9dyKbdAwp(X?)&u^UX<=6#SmY06g_gXF&>+Bhda&c^PHn~&u;iG}}{F95zEv^PC+tUT0w!Z0>g0e(_ zD=jJbe>&nD7p1a&bw)IoKg~rTXc6eQ>HZPH)6f&miLEv`m#kDHA_)N_yJFLl$yBY+ z9JOvBtYQEdnyvv1n)(9)Yt&tFF?*_Wrm&@W=NlY4AH4Mrpb5;(jBQK}pl<8R9#F6U z22fs{f$v+Gq7$9;{EQF`*%a4x^8WK6ZbK+rH6^A#inHOqz}m3@Z@mMo$V=h*k$loj z=UyHkm_wSWVcF2?8~D?KV^eQTB%0reQmkACFfCWiBs-I)FJC);q_SF1Y^j}IUon*wuQEjON)CasyBL6wx_e_{la7= ZzW}xe{urhrLB{|9002ovPDHLkV1iG%im3nq literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_devcontainer-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_devcontainer-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ae0a96ffe6b85165469c5ec4f4e860654fcc93ee GIT binary patch literal 790 zcmV+x1L^#UP)iaBo4hR0nzYejU zrel5Xa{|$o%A+W<>F()+Bj&XZZ@n~JNGx_1WF7*ykOY$J61D*~aby<2ngJpfKO-Rz z$uvs~NAC5sMRg14a~}t8uH-sE+eP;UDcF|^AYuOx5(?JB`>lQM-weWzkcrf+udxeg zNCnWeD2uZ`mKOXaY9w5um`&tvuu@RG6-)kRl83JXq>K6KalE4*wCFdTzK9Rs*a-Ps z9F* z%r*qjG!^ftC#6Ryg2u)}Sglq7!plL%pAWYi0xZtFPkAgt2-;ek*jZVDrl|=%911oY z0(@Egpv&v(_E25DBayc>AElzAjLTPCghF2vdOQ}h+v~fXX#vr2SeFL^AL;CDqpGSB zfY+W8ES6l#%eSxUjVUHaT7W4-f0M_?CKwpF$H@~Nlx}k}HT4dc>o)BjEja8&I&1PzA_b@p*jc;Zy0qyO*hTs3|I0Z!Gc@b~g9TeD|y1c3JFxgp|T<^by zrfLa&e%_Cizh1E^EBmQ`a3G}HfdIcmOeJfUO*S^!iiJdIWU9DaU9Fc|>=1ih~U z8*Mc=$dDlfr9ggCIU?Z!Lg|_tcHK$tTi2HfV6X3X#uSr7s3IuyB3}RCK U;@7VunE(I)07*qoM6N<$g1V4nivR!s literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_devcontainer_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_devcontainer_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..239845c11fa9e59ddba2dab80f86f03eb79397d3 GIT binary patch literal 905 zcmV;419tq0P)C;f48~|AKe2IK!FxVB8_0wl@cErbYV1^3`3NNO5y`e^dHbfMWZg5 zapS`1LP@(AiJBO3;d9hXCSsxnHJV5a(lj=RJhX#GEa>X$?&|`m>0+t@-OOgrs=jl- z`+etBow^tPkN-Nv_iQ@Y;6EZ@+jtxmRvoSIb~(RQ{J>>@mVkYLOTsk)`WVVWpg62V zodDl#pg6={kS^fyZx!D1vFkMr{#u}T6k7~xuC$#*uwZ-(xnkrYv!xF@q z<~hka8x1uj<@2wbcci*AQuB|mFAh56F-NCR;%lrlX~8WoUl3?%o=6)2BN9oycl`<_ ztJh8gP(uA58-Y*BHbf#i&mP_%S5zp1va+?LrKJJz`C~ti|GHHTpw#VIVgPp206<4u zD|&b+xwsHiZY*cvf+C_(!^{tU`LYE-0gyu6NG8zxuG4~7t}J2kVsp&du>NO?ioBdU z?L*TB&3rr_pPgG;oi}U{mA8SIoxzZ%S#T)S&(^J#ELt@DyF7o%h)q-EYZlk{bGP`zGkv}(&_Vx~Zz6)%r+JGlF+rkxw7*NcXq_}Bk zkd|&4c^pnB%a@lB2)yC#yB^c@#ECO>_w*&G3thUxLDRsY#B9IAj|E-}E-zch)F~;P ztvgTDh?@D{-ae%K=ZH{M^+Dg=dd+fN*EIMa0W-&%{CV|KcK6$k=>TrG3&Swb^@v?P zqt%l)x8RqiKlb08)P0co)9xHq#GiolOolHI$GRJRM`2`4CyLO6x*nk@YXJWQR5>Dk zY&7ARi~+zv@L4D|bLlx$sUgS*(i4`$5^f=sZ9R>?i;4Tb>&gVkEv?RrDGrY?#DH{# fgMD}FH9Ou{w>$^a$CPBY00000NkvXXu0mjf2^phP literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dist-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dist-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5c97e6371fab8c9f4f1cb60b7bb443f76ded68d0 GIT binary patch literal 780 zcmV+n1M~ceP)>?8ue;#? z_Fp$U&qI5=uU!}R##w9XI&8o6_LtwsdBwl}^xC6>4}b;4H<%qxuF&JavyJElz}$cw zdmpp_{Q75ymv?q**%b>G?*?sJqY7DrGSP# z$cA&6EQh+B+U>tt251PXdepJ9nE_SZhB{5{_B4o>!mA$M=vkN;R)?xcnBRY8sLTq;Q$RL+_FDtK4gCkvxN8VrGEI@aARG z;`V*fF~qY~1{Xf0&XyrG5k`tn;c1Q(jUbV735R$0cSMl1z z%qB}v6A9L)|Kt}mj=q9WkQQG>p#|aOn+RyWQpSy}tn&l|I(YJ;jp%0000< KMNUMnLSTZot#3&H literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dist_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_dist_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7fc903c7df6f597fb1334bc0f65286559401c289 GIT binary patch literal 881 zcmV-%1CIQOP)Y})73)(6Hl|mn}F&{ePyqSB?aWOMVGnpnN8#f-f@7#Cqx&Pli zhkLp3zx~%H2U&FE+l4pH?8V(;5-B`&?9BO_e!t?sTzcc)7r~3cf0M{4KePG!1?g)FL=kHni{;lr{<#NTR zg|bhJsZV|C5;xjh`-kRwV^{`O7kCWp*Fo7zrBJ!=$WqO@AR+;Y&!8f-iwj zAt_Oe1;(oJ+WO6p&kQS3>>#qEB!d>@ zFkxg4LJMM!g%*Sy;+9t(rRAQX?WeK4frhrYE>$n?1rQ5#YG)y|cS1so;EvNe^a`O^ z=kMy%1Wlk5Z~#8hFM+rlz{I1aC?lly6nzD`VP;7S-m@Kb1LbTc^iW0 z{IFLRh9{p`K-0-hi24bdwfDiL;EI4@X0$7HG^)Gv9$W+-zpJ=G#N(tw^XMlORzCxm z62_jzTp3*NPPhtYMss`~TDO06TQ!z1_S(Oy5+y~GD*5;ew8x$!N(Ga2NW37W@y;gT z#Oym)F#bfWGpv~qRJ9ASB2lVD$|#=xxT<1im|dznV9B!Vp)AX4{jq-mwP1m~e~$E500000NkvXX Hu0mjfstBYc literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docker-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docker-24.png new file mode 100644 index 0000000000000000000000000000000000000000..582658a767f4156061cfcd90aee1084120df1f75 GIT binary patch literal 674 zcmV;T0$u%yP){ORXB{KSeF!ERt5#2gO zM&hAc5S@bR5JmUC4pHVw4@#OVq)6e;$NO|>likH;S0TFiz%cX9^Z);UJTvn$uu=cJ z)Ot+Of#GWkPKId=!|3^b|Lmu-wT4&r--#<20xE#lz1PZK7qlgr`{eTgT1lIN?$Tyq zYxc;GFL2-D#{~y8Zj-D z4nXwU0iAnWczU9Rw{so>w8t%K?0kEsz8NtiI8z@=2WZQox91>^ZSy|uF}~m<0;Ynd zWSmpSk23n?6~^)sI^y6}H-PpDs_Oc#w7nJMWT2wnF z51>%rKqgk!I*0+a;psX4zzgiz@oD9|fl+2;erJZ&-I+ZY@{#Q4+`7pkV!*q!x0>2T zIKuhli`<*x``|+2bJ9^auXj}OuscRq!unhI9LV9q@ZtdAYk%VEo3uOVYnCpxRnpt+ zWCTp^Qb=3K+e)%>OZGDQ?4(>w63TFk&@*_~u?`$93>FAf-}rDq!@K>z>%07*qo IM6N<$f~GY^1^@s6 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docker_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docker_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2e368ae3d0a483ecd343a4f2a713a96a4018a214 GIT binary patch literal 812 zcmV+{1JnG8P)< zK~zYI?UhSNR8bhmf9F1C#@F~rF&)huB{O?0DoQD5k&8egD6(jgxDv{Zl@#|L!@Qa}WI2 zzn1!&L5*4WSkeJAz~8A~W+3080jFjvPm+ zEZ}kfsg~Wz`M`x>H%e;f`U!wQPw*1RnzRI=VYXEm=(%xseqO5MyGBxS6R;KdkOuL2 z_N^iKQ{;0N2Fz%x|5Qs=8bDe#b_b6sVF_jRj&@bzyD=Sk755G?`lqP^Wlv7{xL&Mcy1e>1uMb;+p$ zrC5;w01%{iG1IV_McBKX>Fi>nnfX+DO+4rrfu0=)|Aoq!SB^+EX&02&EeJ)H=s~B2#R4(DW=#yI?F;afUY~YoTzpo9`GS! z1)n@+th+w3(8|pydu^=g3y)F}8pK8Dbf2pDy`>(UJTM?I3D|RwA(7;BlUAnKRD=d? z)3GhXhHP4EGUBKG8aP8ZT*G1Cy;S4>{K^zj qTp6k+ViurBEkf3NIx83b#ry&ZmEw=r^R;&X0000gw*t?)c_av)K3ZJ-riX2w&*f50k=H;UO06Jr)Mij>43Yby>oI`PfTqYRpbz+- zf+zPD7X07qE4kcr1s^ZtHo$5&`%aX4(5bQN?>E%M#0d5J7$T@h3*)Y66kR9RcIx1jEA|AGIcuxL7UqClbUbCt-P+=K4ASTBl|m0g(u`S`D#n z8bd==;&J>`il3%Qb7X|NWl^nE@DC5srlyF_&%X!-01%*Bt>SqemSwTAu|Xn{;Oy*- z&CN}MAi%IJl&+&$*2_YnFdGV>fMha>uIsq2i{m(y%Vji8!*Lw8YBiSfd6x2d>b2Sy z5D#^W8lFe#;DA&rMKYO$3*e<3#{pn(Z?BaLeN9hKPygtt*Xz9l48y=Q&90u4lat;7 zN-1=``!=PnUZBtb&+|AwKJMx{KR@psFfcH{;NW0a&tIKEsZ_#s-L9S>2yOs~xWFzQ zB)XmyO^atTnfU1FXjj16+8RpJnh@eYC=?3s_xJZ7Zf|eTMx)Vd^+uzC?_WKvb8~Z_ z48wR6dPM1T8r!z77R!jpk6QzZ#o`Cs nwm+Mu8NZERMBM4=>94;4$Gp!I>}H7O00000NkvXXu0mjfm{Uk& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docs_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_docs_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..dbee040876da5ed0d22660a800d59be3e65e7cac GIT binary patch literal 823 zcmV-71IYY|P)nu~ zK~zYI?UcW36JZ#~KX2}u_G-_Z(H6Ye(#8bOACRSj(xQUm>g3`exH_wlIJnsOV-q(= z{{&GN2SEvlh{YBiOaj){kTazy87UDAC#b_tULDXLWVRZ`+Ny zc?CjD0!M%kt%d6o6FbU=G5B?5#RXhokd2MO-#tTy;j4th{oCi~8CqD_1n^zuNHV#% zHJM7KW|j+u(=rg4^gNGZv52nglu9KG!=PTT^R-%izPnVKDDB&~ryPk~_7K>4-RLEp9M90S7jz=P4JWrFV z>LSER6(K$Xr=aQ1o@xb%S`DEn1cO1=*VnOa8_TjN6bk6Nj%8V-)9Hine{9W(>FIZU znl_-WE-ybbcJ2BC7@KTYlQtZOTrS7(@G!w(5TG#vSe6CA;^JZ>r%v9xSI;IAPb8e} z1^_6R%UwOS+OMaf0!S$zAw*9Azu%9hX&pUlYilh4cr3sJlx_ea1ghHkeG2jGG<^Wk z8#fBT%Wlm9s?{pRVzJ{_uh*Mb@I#M)qul_3K!A~vk&d3WGXU^;-op(=x!w(s&*!m! z`xR^^&-2;=;aj)fq!Wo10s0no3POl*I4nj-M>_)M=H}V~0MTS}=T=3jRBER5>C^N= zI(;mc%eBqBu8ZS1jaVv5tqstNLZJ|*X}0BU+a{aMw&i;U2q6llX^uIL^Li_AC=_bM z{r&x6Ddp#$0ZU6ucTLlLrD@tgFMcVdJvB8o{|!$^5<9i(V^;tG002ovPDHLkV1lfh BfV}_! literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_e2e-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_e2e-24.png new file mode 100644 index 0000000000000000000000000000000000000000..57e7b0fd826001619c7810ca0c2b83fa346c677d GIT binary patch literal 705 zcmV;y0zUnTP)<9|$@| z&?%QL1tA5p)}o47h-;;e0#po8LX4nw z4e&V&iJ?>~@0?HD_C?_S-?#{n9vZrZ)~7rPTA$f{Gs5sRZQDiD0-CfVF0Mf9DA4B| z%KQrOW~G_riT50l1ssc8cb{U5eX(bYzHHPpI-TIhmY)XyCZ`)0ywXd`6|j)2XKXsb zdfrc4?HaMra>eGZfF1KB>-lN`+JjlfKgLQL95;W`*F29Ds(e7|Lv+s^;Mrok=Pn~= zj%X-TJ|NLD$Lp0=@&yS%G?byXYU@Cr5IYrg1Xo<)B>~-`uZ;Fga(m_++e#t?jKp5x zGfKC?ONQG-Z+MBZo=K{V0&iEFn8`MK8r_S>xjZmHrmn6$06=fU5;x<|v0C2I75e50 zm=A|p3eNh1Q?k0JD)uBv)N+dX}=Q-$H~W9INa; zNTvK{Akb+jRjY;A{{{L`>JCDj1Qc3d+O(_(hq`b|$()$DD`41Z4rLs21&RXOPIEZK nh2y5GLZM$t*^slWIp_Ev@wK)Ew_lKL00000NkvXXu0mjf?KMC( literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_e2e_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_e2e_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..33d0f9c0542c280ccf2f15b7615c062b9b2ae418 GIT binary patch literal 851 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_expo-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_expo-24.png new file mode 100644 index 0000000000000000000000000000000000000000..97ea681a1d56c72902019a2db4235a23408b0453 GIT binary patch literal 864 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_flow-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_flow-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3b3f4ad1527f0652d673a158e78fa3bf0ba51360 GIT binary patch literal 845 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gcp-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gcp-24.png new file mode 100644 index 0000000000000000000000000000000000000000..083cafc7869ff8875776a9488979909964b3b251 GIT binary patch literal 904 zcmV;319$w1P)*1xbaH1)#NQ=;UtwkFMYBNHRvn)ez$d3Z7+A|ImZYikrv0rw7Y zT<3L-?pw={vj-;*9{ZL$SX(er6j%$M5|G;h^Q(WU7Zr^i}&>S_X*+8hAh zYoD*N!W^P~eAW3{D3P}N+42$D!4f;l7l~CbW9Zd&m{2nNS&lwI-rjfrfLQfsQpE|B zt~9L+8rQ#xd*>!Iv1cgQhp@x2$)h$4cfA|*-TAmFTqEd))<2vSXZF3pXZ?eX$G`am zqCNVGpCIdPfkgPzIZEE%ODIty!2%Kg2Tt!FBWHJ#v*DNRN%m%!wgyP3OE?E^W2Q=| zPLEO{jWtssn2CZG%0@4%=5wTq9yxoh=hDvZtpVKR?+iXWjul<0uf?}#iKnlyV{nS= z-@HQ@*ocNF7c%_1ErAx8cU->OwVNYzw`4~u0t?)qL zQ8Fz6eoA(Mmd7^)bnW??h_ehp7+Bo;@fAwT1N1z64kw=B>X&Eg;WZt-JQc_8})rx55BBLDhQ*M z@{Q)Z$TqL|zJF*no8G120|D_mmUE{Mf8;EAZdM^7fJT%%KNcG0fxFWQP9Q2?d$t4r z+~m8-d=p^!>~I#i08qVP#fqVI^4QAo&c!ey7=Cx7*Hem6ZFmvPmX-bH`XsGoKkbdb znm=%SF^pz5J)67IAfJcI7@2z8nS(9-GDklhHGYGBBhb51S^%^tab{0hb|qb{`2vL& et*+OCYx)}p-543j`%)+X0000kKyS`lr=CMpWm8k$5B#~3q7)5*NdJuW8iWhN%kx^d%K z-9O*`zH`2J-o5aD{MRA>=Fm4szHV00-78_N+A}vix8pPSO3Axhx*com>%f+kaAKqr zxN?Dbyy0G*Cl@%`c(iHXVoZN~->g3_68Ns;Y<+IdBvulz=!3qmsyaTaxn;dK=+(Y z92ywk{J`V;p55A8T!GcN3SEVZ3J)RqB*K&56CM5#um$@9BFMbeqvf?cAAhnjW}G)W zI<$sdazQ}Fo)AotfFEK#D$c(VkXxsesSPb;Dz~F<8SbTF?C2RfuWe<*jWPjMDJBoz zohztd+tD582HKM&K<#3I$kZp4-7O@{zmWTp7MG6jMs%K4t&JOhQ_vIs*fBG~p+YjX z;bqAIR*}P%g?7euqJe->ea|0fFV_W_$~A8hDj8drv@kw$D)92IW5AZqX3iJA2g$at z?sC<{qm^G&*KK>O6;#r>RnzxRHkYQo*pvwKy&@7BIc&}By5M|Hq$G=p6jXEk-6OI6 zMR(DST|18f#{jaYLc=pQ^wfdLo2yf{L~t?{g;+7*h_hTVgHsxMc)pUQBYeB}^1<}2 zhf}t6`0uPK2nBiD8fWk6w(=492Tx{8cZ>5AY;bbA4wLT>6(i+?ouTk-eb&e23@U1V c@QMBS6XOd+f0H+O$^ZZW07*qoM6N<$g66{2)&Kwi literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_git-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_git-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bdf87f14a12b2a3badae8898b9d2cef6eabf2b53 GIT binary patch literal 747 zcmVw%9EhWVL?dbWW1&a-hr8Z$KniEeL0Me1BCpEP){$MHI)n>HP|aKG=I^ZTE3?)P2z zZ~xlFXp%k`<{d|gtxDB>8EFdg- zP(d8eJOQ&HrA3l{Rcv`!a_1t*g}s; z&IJ|$U!!O=3SXCln#wd03~0*hnQpny?|@R`d?;RgI(2lL6lzm%2WkNjFA!z6blWepeqU^Y*T|l|O>-t@C?(DtnmNOD6 zqNWNX7@*4a3>B>}SXPJ2+|O=Pl~oCb*# zq6z?X+`d8kv&XdDEE(7w6LW25X?eBmuU1+^$0Q|I&U{-DIVBCDNn~OYW?M5YXY=rv z^&(VqIz0=P6+quN05DDMo^5$jvlW@R`w&8RFmB7XizETPi&}2%<-0Z0G>}z1446?CkLyrPy3V1jQM5 zEA|cD9--Na3nu~ zK~zYI?UYSOTUivxf9I(rQn5xNdDP7aPZ*da6O=#<#Z?J{i$({exF|yr+&O|%>8@Z` zUAPeG!Vh#+7t%sEf$j=|3y}#5cGY1<1Q)@^ggikpA7>Ubd6U@mRlDh?e>iXs_nh;) z_rCKkeAl;@d`;2H%F0vVp=)E2`x6rr2hBHazP7g3RW6qw1GiN5orrwAlJWx(RaFnb zjRB=n>30#i1^nI7(J?eOHg;LNzP!BrtB9;u<2u0V>gqF9jky5~!-$)viQn(cbB81qxw3x z-B#uCco-fYCK`=an|~so&qpGWAQp=u^8f675nvbwi9~`xAaI?%5DW(C>+5skFMi}; zFi0Q}KvkKXoFp2Jl1wH!Jw3&?ZA{a|wr$qe*NH?TjE|2Ki9~2_ZvGMY!xdl{2H|iR zfMT)8-rgSRbeg55rH1)!ZEXOE2)(_%kARo1S7e%|bLZJ?mZqjA*VE?ndB^v7JaJX^ zx&k^oI~{*xV}oL`=nB}{+T!r=uzCtF(BledX=!o%MzyWYrRFlZ}E8i z`SkR(UR+#!@;_W&IxltscpxILZv+sLiikWJ92|_z&d$EEEUR3*UM`mlzzg6f5qVWt zd(9KnX>)V)cA-$Xo6qMvdwP04jE;`(ib%Op?mrs-{|P%p7smhq002ovPDHLkV1k^L Be;oh- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_github_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_github_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ffa11fd5da69289939c96f6258f5c38958a623a8 GIT binary patch literal 907 zcmV;619bd}P)qc(y#IyRfvdy3#lPwDv(8W1;)wh0#xTDfSEi;{MU z(87fajTWxlh=LTv>t*0|Wk^xspQXHnAySZ1uX9tTd%K<%PcL__ddW6z`oe+pJHPMu z_x+uF&pGfv{%gp;5gCT@G4MEyqwD&kzP`R+_1hL-US6&TJ_POnPekNTe_kndAGlj8 zm2`kx8|b?J!A0@!bGh7G!Tjp#>L*I6yB^=4Tv=I}7LnJ&3^YyasjjXj7K>#Hg~Bu2 zwr$fiizg>1e_T*9Weo-NS>ORs2o@F*NvG5CR4VnNuIm7G7XyH^vom{lclYSv;NXQY z1Ax<9F88W`K`E60z5>!W?X0r0GSb%8*3j74`0eKA=0nfGFpPJB;fwelP-z&3aY@iL zO)SgGMx)XAO~w64BoYr>TU*)L*?DfDl=?+P-VE@(xT&d$Xf%paijk2Ky1Kf^=kpvL z9bs7(4Gj%gmc`uM9334U3=a>}($YdC61fi)^h6@Dc6@wn0@cB8M1Lm?8DfKk0BY=g41sul-HCS6)qfjVZhA#tY4Zv}nZvZza@OQkow-;Lc240N@FfcIi z8}LJrY}>XsudAyIrmsbPeZ4>YUGoKB2g$`^(VO@8_ahSiHfAyzG8yk8o50VWf$O?g z{)1&%oSvRySr+Z>?MzHe1UvN5-QCU9)D)Wbyrga0PekOrtR=%Rz5`zIuO*YoJGHg7 z$;rt{#>dBr$K%Y;&oeVK13)YmV{vhjWHRY#T-QC{-`{^dl}h~-y5&nKr9NF>Usr>J zgKBzuTIKV3)!EtUjqUAi<-=b}skbk+T3BHp-tXz@nH(J*Ri#qt%6;%1h9dBeh$*kYGvJ#4> z@i$J%p)2@XqNg_mQQ|JV6OgfGapkV^X5qA+% zM>4q(;NsN>BgN|dBPzZUToOoF);cU&rip3dPb znDr9~DG4oQ0nnFnJK_{a5?C%J5L(RCPoSr>sFqb;3%NZmkjbGq4gld)8pX6UsN)tH z3+eJ&wJd_^EJfYF1s7UcuEN>0PW|i$MqLR!YeoFoe2uMbd}_Cx00`s@1Hcnkg7`{` zmM)vZvY?QuZ|H>rdb5KsNFdSkB9ejFiRjaEi*+g3F7Jl>4IRnsz0S^gp#T5? M07*qoM6N<$g2nP@yZ`_I literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gitlab_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gitlab_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..209322f6d0c69fff8059d1d7aa733f904dc2c4f4 GIT binary patch literal 907 zcmV;619bd}P)vce{=3s)bG99R}B3_8-#e_;+s`O*FrRmn<+9rMTzUO$6Hp!bN)9%I_|8U@( z=i~o>{?EmM|M6c#Zlx)gIdKZ)rJGmT`%=eGUkz-T{FAr4@Z>EZf|wDEtksp=52RhU z7y#I^fVk>SBSe57QpY}cwmyF)bK)IA-racn1jaMN9|QN@Ou)cn>(|71X84;;d7%$e zeftCq3<7(A3E$K!s{woT`)#Es56ocObL(Mc;7(uNTs~}%{n}MJxUaFmI#yE0-@mIi zFnw^xDI;<^^u@?<@3+~{nz@^NBApR9rt%BW*-;j~k~#UZ!W=C-FpmIHK`zxc+UGCs zl|rG#OLonB2Oj^WF})W1+{nYCbzJvvr!e@?K>D?hCIXh|DQ#qE-Q>oqhBn&N+&oe! z0AMX#zuj}aArr7R(X07uh}Px%^q)vF83Ry@-okglQZw7u9~0Gw=b!<5M@>xo z>cV5$XDTD-GQ;P9BlYCsI0VmM1kY=x-yD{@y#4F3-3ma2FB{dgT+NZ_DbX4?jnWMv z0+CKbqNlWL@#xOo0RW@)S9r<;e9H~4E)k3vf)PV&9F}G*T&Fp?9fo+f#txMSDi)ka z6+r5h5Az^D);BoewyIbwBnCXfZH?VTJ2i;`uR;!>Tmz29VKFxBbj-Pc7SW zQuP~Mn^Q5?ZfN^R$Jy))wd7lJP>aPkcJ2!GxtD@T(@~t1+>PJ8y?1;%p1&2YrpO(> hJGAinj_3ZV?r(a-8;_g1nS=lU002ovPDHLkV1jjLyD|U( literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gradle-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gradle-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7b6f572979e1c96d96245d6bdce86c122e9d8d0e GIT binary patch literal 806 zcmV+>1KIqEP)in>UfA}&Eu4MkBD6j9L+ZdykxR|#!fMd6}F z+t84rv{gY1YZF$4(Cvq)%zki6GnE;=&Wv-v7V0$Gj6V^y>0RA(zW00I^PUgRh5z{1 zP=C^N{95N_r8u|{$D`bEd()9G`f|ljwco07UCsaosC!Bg&8&+^J+L8_)O3Jl8@R64 zGA+)tj;2HVQA#rFC)+xkMc6RAo^wSf+PYd5vTh**5yCSD@06lHOMMMc#}w5arw{k* z^QxA>)+L6i6`^)9lD0&#KgP0WkPCIDpKy5*K3(H|)Zs%kUI>3NfvzbY4~@_r8K&O! zaiA*L3QJ6&D@9$QpVdAuK0`+V!;=X%Q033# zXmtg7p5Mc62ZrNGo_-(W`Hv`5t_y(A@BpBcDqYkd;5D*}&m!nG*jHK1_Obx4M`LJ8 zu`y^O5H}3t)q*qFRu&-OUBPfXk=`3kBzZG7o?b_jQ{4SBgkSey6&JE8Xrcj5%Dvvu z&=AXMus*Po9py!AE-9pEaFlq;<;6&pr$b}Z6!_A-0z+rt>XJFV-<&vi-VR)Z978rV z#qP@KCS57Elm>V-I6~FReD+ip|HjXJ4kAvR8+{SRCsPwS4eCul`5E_KZ>t*B|yQViW!(px$f=$ub+~xxBwo*oq`rJODGg-1+ZLWy`k4QUXD$QMpgpv>m5-W*VNNnt^upo*Mq=`tn zu;34{79k{EXe%f|Ol}B~H1#d5G}3B2otb-&MQ1u6uAw$Ip3QyVbDr}&=bYrth5z{1 zkiRK9(UUqQu)i9|@@YH0rR9S?Q}JWH&*qDA6sQGmAWW7KlmyTOz6~&A0~>P$s1@it z)7G-PGT+{tI)~C!QDzI$@G+wd zrFHhy1V-MWY%OC~-v0nOUwA#K_rv&)mWR#Wr4hRm*enO1JP9ov3k?EuepPG%i^IY^ zONkgkP)0l$%E8whXpuUMO2?Y0b|hnh=Xs6xRmaJ;_oli~_5_K~w_(F9AuLdQm&Nxv z>cg8f3}h5fnTxPKVol{mWPzPu$xR40sI|z82cynFYYdvB!uyP3gk38lpfDK9+!$Q z3q!mHR!8C0q>@#5n^E4Rl|`WQX-=tN0JT>wpLSKtGsV<#f|^SFqd z2aW-sODJ8yA>evRO?Qx1;Qv5GKB+3IdOVp-b^^Gr+o!5`f&NS;v(s^$tg2piUH38I z*tY#XNGosxV@x}+t-ikgN+Fg=Bzk~0Ro&q@PB!0&dY-pORkuz|OuPuv`T>ED06T-d Rf;j*H002ovPDHLkV1nZ`Z`%L> literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_graphql-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_graphql-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6ae6930c2e2daeecdc9f59f6507bbf4721dfd5ea GIT binary patch literal 781 zcmV+o1M>WdP)zDFX@+3DE_l4Ba}kl{!`J|3D@NkPvk4 zh*GIjr>biP7C=HUkRTzDl7MK4)Fh1(=e4zK$A0hK!;paD#-fe~x^R}K_s;iyKlj`p z=feB=ze76tDg1u!3d%Qc)2RB-4_%&knmVX?`NpGxSak}>0=Gdn|7AS{Oc-M_00#y{ z=p}(H=u*DX{h3@n+1Q&8ug`sp@YCz}CO~*&_8Q2!|6rWod59_fvvqg<>sv=`A=tEs zyDPi-5BG|jD-bz_GTCM^#pp>`^rbp}YkSyUD6|xrHqDyDE78j`T8;tGN<_R=2Cw_1 zZLdMHxs4c557D!b)ZuQVH%)q^kLdYd&`8*R@CRjN))Z+BD4>ch=D-NaS`{~x+nI)9 z56MOi5K==qPz5l?N~SG&K1eNqrCyFNC;}J}|rI)Cg`kPrMLfj|HSZ?#K0J zemp+=9&x6HY*e(H;1 z)3*Zwl8q{oOC!CmWnKb@?aScTs|N#UEhbtFNmi=ZLeE>Z_Mshix!Be= zO*XdC@=nWX%&sFntt$Y~N(>6Bz9`!DX*0mfI-F7RK9{+VR<@^-Nf}&>yxesyz^oPR3ukP>Fb_4*> z3%64%)s1;k8CK*);o%n}g6wNXoi#f^?p%z;+i6wSM0C29`8$bM78m!0O1C-L00000 LNkvXXu0mjfa6oBu literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_graphql_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_graphql_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..159ebf08c79ae2af016bbdc6a151dcd7f8239c2f GIT binary patch literal 929 zcmV;S177@zP)kR2fbWs<>wP zLMffAm~Ck^(;!AweIpA$UfW&Yk;s+OSrdJ=b+mYKwk`5ZG+9{lyj>JxMf(P!^?5Eqmf9<>h z5Yf~|9ROI(F|4LI-s}oN-XqezwZac~HK0WwKb<>hHO0|*=q7*xutJGTz{1z_cqF-&t^ zO+c{dfGXKdbV2fe?@--L<~Qc&sRTl00000NkvXXu0mjf D-LbQ~ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_grunt-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_grunt-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5131dcf6979044db6ef5d381220ba856b7f49e42 GIT binary patch literal 959 zcmV;w13>(VP))-p-`U)>xYq(=SY=vs;yJQ_4gT={ArSFIuF6>|)CBO2nz) zg+pPh;>ElgBGZe4vKC|rEzYqIh1qF072V3Vu4$|NO41~4nzqTCcANJdZ7bE9!=T*)E@;8b z+Rjt~yO7!hunjPzcpY#9Bgu^3*M6kOTJ3*xtnC0oe6~`*+C1CY{+@y-)?qX)Pb#Fh zh~BR|+nI>W7W;jh7YsuxpnT0hs}~v?1Uz%E&KWDu57!6rc?u}8sd8I&ZDrr(>x@h% zsH-TW>5*!}<3phH3{5P&+tx;lTxZ%fDsmarRs@-gXDDQ%oc^w#Y<8ZI-$f!d%egB9 zxWydFM24E`;K`mI3byV*Ye=S&ENV$QAvn@1DfQ)7{P38Q6BqIrF3D0V)&zWMD}mMu zkCEhPhsD9Yn!$0k;^hmPTd^F6pHm#`$P(DR&;d4Ik(83eykt5KB~F8y?TXnHWGzXt zN7MWmL=%$4oMtpGf42=-%;s>YCHikm#(11cb%WO3NhY!iLkPMq`5DV@rKM&NnOD_~ zjW}%`(H~PW_Eb68-vFgsy^N?3y;l{%Quz3sK>2r57xb~CO7Lj8asRgBK!dFWp$b1g z4#!Dn7J0tm3=y}32Lj8#O~;c8GuMZ?Nzwbg!BA3mcU>I6Vk?1^l7~avxsfo*S&~3` z4&$#5B_8mU@-z(hS6r|IF{X3!SJnRf+ zxK&u>t5ct*Cda~^%R_BIFFfUYrEH5l{%oD;tPW@%^eYB$I~bi&d^?=C#-lvleK~pw zz_Ag)Z(~aX4VCwWr{`1%%jr!e3^^3l`JcwEUrdujC(gvq|6RMG1gq6tUlOb>chp~t hI|nXaot(Mb{}XUPNCQeXeR==@002ovPDHLkV1h%tyuttg literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_grunt_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_grunt_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b3a660cfc49f1d0e2e544bca99b46337d4863527 GIT binary patch literal 1065 zcmV+^1lIeBP)TBM1t^5?vrl!AYIXQH`0dRu_%NXlv6g1y*;l>ZaC3 zt!^r(i-7b(He1}ZT(~L4)MjFMK#I8vki#EO{O5oNg!8`VdAa}*7=M(TZu)M|_P+c5 zp5JHR@B8d|;eY+t5^LGysVe?ZEAhrkJ+?IS_P%+d*L>9BO{d>ZP_|u$z$M_E7ECW_ z&}0D_PTMj89vPr*>m3j-pdt5Y`74X-jTI#y3qi*H_XU6(Ri(#;)|o2;VBhTH22W*4 zodUXigOMqT@e>YHDh=uL`xgL&)@}`Z(Rh~{J~=%t>l&`J!DUZrBVyy8ojJz07aJ09 z`v$|a9^V|uckl4GwzVV)ELuDLpBEHRuvA17?qlU!mveCVx#Smg1T~RS{_wAAy4Qu2 z9!`#tx~-?%9vbS7$W3$L8+EWfE#+j{H@=YRsVX^)rfAmw4q&~fvZQXQ;R?9c+_bgF z*XOu58Z!tsX^Q+)T|5Y5p3p#k;TKNQ|E3RJ}R^d?1yut^oe!BAGA4kc`|F^bJFt!({(X zjei{aha^Eua^NX}3L1=z3B1EbCxCPxtF#a-8OdTzOa;LTaIIZ(rhN}TT#qHnB?xMT zDWLjl5|uZfpnFJTSSmd?7l)h;xAtKG?OnY*lO{Qo4GFQ)bgFICdK9S%Q1P=sCG937 zHJ)8t1W#@@6Eh=|vrPc$FwZO74gtnWfUNW_G`I8-nD$e+>jM2QgT&;SZ(Our;k3@< z3|G|tYSKO;&s1OPy&(Z|j+_|OLj1Ox1H+KGbN10T=E4d}k~dkHGZ_#U0TFQ)69LI6 zu^h}h_z{4d+x?I+b&hEe>kwKnF#6!G)WG1VKuUoSlFN5==>mYELqD!Ie9BTZcaGBQ zpT^b-Z~p^;6wq-;pryvsHI09A>a7KUoZ^ZWjUEwTEw>DTm71PO;rpjJ{`+oP|55z% zr=D9^ykVT}dy%p)z9%L=(S}8L(bGr2j$h5id&RGv4R<J8p>Iw>x{Fj#-TcTEoF>p)gq>h?`W jR_m~%@sh_kw7C8+(*=j|b{_!400000NkvXXu0mjfAf@yO literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gulp-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gulp-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ffa2dae009b05b502850e8a27c9894bc6a05bd75 GIT binary patch literal 581 zcmV-L0=oT)P)Oh!ra1ao3{W|#+hHyGL4x(V7A*VFl>7uPyD_wog|<3Czd%;!%< zX?8aQncKi90Op|smA`Nn#?j-+q;aRSf^nIJE{g$iL*99OR4`7saCT~{8oCzi5;=(p z1zyEwNyTCuxWO3kAsR~&pywfX;=IH$iD8S3ATj)qvABGF>dO7T4aOu6BN~DPNC^%h z0$fan>-+j{QPt4Iq<|cd1p;7bo-UQX^lh*SRDg9_>$HZc0b622;J#b5>_|Z=KG{T> zI`G}b_Int>kS!=XauD&=P_;=5hOG607#y%T7Xm}u`KsVJVug4FTJz`&HTjn~w8R0b z@C^n~!KPsaGa`|=wM`AgN2$ESpq9zJ%hv0KUJN3TwP$nE9BRG3j^D1u<^$N{htrAW z>6tm>NA29^*_oHmufhOk01#pI_dEnXx8s3S08p8pJ{d`m616cgvcIgw#U{W{APSws T5g!I_00000NkvXXu0mjft8D}- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gulp_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_gulp_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..db014ede11600e0ed15c9c9141443ff842affe30 GIT binary patch literal 731 zcmV<10wn#3P)k+qOk1wmjfjNBN6=(v!~XxqPF(4uAAAPrLd zxr~~~O+@Z1s6{136jr9Dj5G6m@7>d)$wm`#UO}6_oA(ay`_AW_b1(P8fBkEzC_fE! zcAijLpWMvjM5cO2MxNMWlaIHzo3t^vMC9j zU0uhEP3}adVsi^kpUV?CtsQ_>&?sno}kzm=He5_}Er3kfJQXm>YiQJ0{m`Rkd%UdCB42v;K#+Zu5 zc#H*Wp95F`W9?)Rh8|E76;c*D(l&;tRjCodIQa%YMo0JH;4<(yO7cVyvNxNf#`D;d z%~Iw2)Mc`ihGF$806>(Aw3~dRvGQwESFQK}tZ2Qs24I5VZWKVy80OHisv zFn(zAK?f9!=uhNerZCo;*`M!!r2~LBEiJVUyBnvL4px=DQWFy)z<0z+@9cnoc>@3d N002ovPDHLkV1h|kR{8({ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_haxelib-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_haxelib-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3d8d3bcb3e66bacdc933db4650dcfa166075de6e GIT binary patch literal 873 zcmV-v1D5=WP)BKkv+J-f=R?CU(2-3X+Xj3N7eKD0mWj5IlIXMK9vrlVHJ{fr3zb z_AC@Z^bhdhW&Hu(1S>_lso3pWn`}4P&1RCxY%=frcxgg*H#=#)^wQ_{ywCUfet4dl zcLtut(+>52n%1ws`JUpj4sD*}079aQUx^&0THD60XU z7+^j12}mBeyA$))<=S_{>H7K?mp%l(8t3Y8@$yxW3*)?0+%AP-6uNroI*1yjxlyxG zt)!_J0QZ19V{PE~{L?F2FNipcX`+|Qd#!6>efZ^(3FI~4;yBAM^{C|Ph$sdUFw!~7 zXLsmymuNJql{8(bXgy$cWs_pi#i9kUyXwwT8k2m+7f@f7L6VSZ9h6?O#^T{~JAr^&2H48udb1M^I zQjhk7RjhJno1Xv~3`6#pPThbxD*|}%=gY(@f3o=uNIw^{d9M2VV*yO+(b-zgHlKpz z{e7aTb%zc?45!sQa?oHF8E|K?roMO+A7xo}&dnxF%v zx^U%AT!{#R*+~^tXswFWl1(J2Nu#Yg`5H6dnPg_(+XvFFkm@1Dg!d2JBXt3Vv&Q&9C?35tgh#+!|r z2XM~-rSt`XIKqvwb8kJpuYjqE%fR?Qyf#~yns^uCft~ljznzSF*>2_64LBtd3(J*9 zk2>+YfCVMo*~yJ~`Dj=7>@eaD*f5%k-~QV@>*%9AHqC8aP`=h519jcT_H?GBBkTr8+U$Cja zwK@H;oeMHJ9^4mSH`i^AwB8qJx4N!L&W!EyIaPCOX2z~DFBR_$%ODzX7iYijJXc;F16U N002ovPDHLkV1oKX(rW+! literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_helper-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_helper-24.png new file mode 100644 index 0000000000000000000000000000000000000000..38c2965897bb3abc97c2766ba60bf0c4447122f5 GIT binary patch literal 892 zcmV-?1B3jDP)Bf3NR+j_qE2mpG1N3n%2G8QL@;8c{@tR$@S6C=wWnfe1DxrbePu zEg{r}6}4$Ab*RKp78sDKg19b~5UnazYFdOuqW~dsV>eEmJAd8X%iuPNLlfgJUHVM- zzR&ag|NrMh_reQ%-X@+U>G1T)(?~JBca%JF>+)B3)lR`*{p3_1o;!me3Rpr=Xo2+^ zLNMhE83O2-KylrZkHP0FmFU}Z-{$Ju{Zk*!d@SM8le4GnW^Hl)*(&HV`p}{}0Cjt9Q+cht3V;&Si1a3#VtV?~ z2Qr;iu(mi)AfTWpGw6vl)lvbsQ6rWf1)#cKq`dSOv4J7F)59p5M#Sht)w(Dw&ULpX z@ak0>kNd1>T_g{_zQbQfPYu$gn;<39_lWfLBaz^#YTFh8G^!51=Ta#ZH(OM<%Xp0% zZl!|XXs&7gx7#fIa*guRp9lm4$VhyxHGoj^*T(!%cmgv|tDGqE`fRSlW2W5`01 zmy!oh0}ts&C>Y+?U)xxBAKt%}H!>rJp2);Jx4u$%a2I^fkB?6F7w7M-*bo1w!8z;G?5riTv(}j>G1-e(dvdv4%i?tO;AGER7LsGYAHWa@ zdu2)XUe6tOcgtzJrmbq^St0ox7y-_LJahf@F|QMh|7Gu8_~}sg$`z%3B>W3(PbB<% Sc*KPO0000 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_helper_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_helper_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2143d8d534ba5096d07ca4ee0af409a12c96036e GIT binary patch literal 1017 zcmVC(}tJx^UwM zZ*kuF&iT$c_Z}|%kN+C#p9J-0hR!N@ZQI16p8a_wlMC%M`ID!I+dSkgAd0BZQ4}{b zq!&1->3#@c#{!;`H-RYd{f&{#iCTZ}>EZX3l7kg{lR#hp`5_VY#8$~o(~6-~Uw(B3 zL?sSohQ4`}CEeB5CIJ!kG;kQ0uKZJI%8FTyrK0P0bne})>mfZiGd%~G1>1hy_dUNx z!P-(_9cwp+`wvu%lcU)|fiu;F&V5~}az%Xo>8Yc~t9`xw=g%lngBt>eGDEKeudbKd zgAl21eQxevDw)~?K&e<; z<+k#x+@1M7hCre{Nun)D#56lw<87S_59iC_qGnNYy;?wPaExofQk_u|HBAh|0Kjny z8wC_>8vtDoVK&78Fs&w95{Z|z0IfQQKKtX0#P$cqP+vliiOQsQ+IPqyhX$RXnO3kxlnoZ@`XUUR>1RIN^W_N zLZJrsc0IP)@A@>i#)(8CAP|U;VMO)|!s3e3fpR;#s4s!q^8vsumGFZAJHNIuBFAy? zJP)^2BJe!`a(AbhxOJ1|#RXfTNVV_#_{9&i%^JW@Bbj+b{ZLO}b!C}}+rKb#X9}lS zAP55P{5HYl_$_?j!?c<<&P4#*UW=3?)vgB78}v$|)ZybP;JJDt71(y3{K_)>_IDEm zK5o$gz%Uvyb{Xh;h(ucoP1kVj{5x0Pc>dbPqWPk(YD(VSP9WK_hiJ6Cs2#gI5fL8z zF$+M{vWQw12#5qU=;1i<*Oj_ClDQ7D0LrcR8I2Jy95$p-uw`=mw!8T7L7-6huJ6y@ z%lY?nGd{rF{hU8J{%dJ+dg_zyihTsHT>S1tdNjM5zLdQJaPngIRC+Wk>Cx=D3Mc)+ zSFHmB1Dp0>M-NW=QZ|cl1egN4K&{QsN_=eKsJB&&ww0qE6mmfcZvzK_3n1sl&K{|I nz5f+ne*fFP^ySO?-!tJ)jAda#g797700000NkvXXu0mjf1!mxh literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_hook-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_hook-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2697c06fc0cc051e903f3bae90735ec2ec39e94b GIT binary patch literal 695 zcmV;o0!aOdP) zwQA!+Ttr}j4~UA0N~KI?WTIfQ6x7+JJfc}AY8qO49ho-ox?Sh9u&x04Kszw9$PxsqL>z8_i~*J|muH)Y zeLn42d42Qr!u9s1+H(qZZ!We0I`5voDI$B9M##R|8!Z;I9(FXHBB|%;5r4Hesk!vY zkvA?+;#1mf1Bl2D;K(wE2>^kqoK-xkY9#3_K#9q#&1X3D`WF7t?wO}pX0u-^Qe2Hv zLT%S2>N*;V8{o&ZmFUB%RM(m7pH00?69W(COq7NcaWhvAi5<{Me&PrVuc z$pA%DAF1qrV9O;Pxd15p0GUsqTLvl3Y0C+UQBM#@%D`dSc8<&exyA(Xf)Yf{mkyNG zFqP|L&G>uN?6;Vc{S_%0MpS4iK+%_>!jS)f_i^R5MCr)e#Mp|UD_p#Pg>D&A5pIbB z27prL%r(;qE=DCUnJ`IZs>#K$q46gdC@002ovPDHLkV1gb#KllIu literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_hook_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_hook_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7356d3788ba5188d9cbfb1fb37876b8fae4fb202 GIT binary patch literal 787 zcmV+u1MK{XP)|>z?5@Ch32`b2P(V}%NrWUoSDB83Q zf(R-?S|p7L5?Y1F3CO)dJvgM02d@Bh2!axWMD z>u*b~iyq^MOuxF~T_@2k1~RpKQz)pw_9h6JXf@g+41t z4)D6F`AW;e{9xyW%OJJ!I0-Q5ao+?srAEl^*q~_8;y(q5XR%xC{^J%3Y>S>x0TL2v$V#NXY6wv`SO68z{e#3QO#C0U#U#p zMM7=;<~h-FM$a4Df51$c_I>Eh-{rCaLmu}jfnxw7vRMh)@z&E(xBs>4b5=?2N$>54 zqScN2rLA658LoKViB_WsO%OY?(SzIcJ3|Wxnur}&1wPVOP)|=`W0Q#^*So5G>kj`* zJFlmTCtd*lbXVN9<^VyRZO5*_Fo(w<@g~2Xp29slT!Eoi4d0$80Cjb@Oa*Cgi7#Uf z_sUwCb*{GOYNy{*7W4ve$k#F8kVJ`V1+mSS{nrj zo$$-X{y}-BA6Iag(d=@2&LQC#NNN@Vs++I+fZlWgMIj%1C%UPe9kAy@Ix}V{>lOiG zN^6@8Ou{Pp`Ur~g%n}UC#IVeyoDI-A@+2KVPI#JcnMGJCv9`B)+xTwevmrQw!deyZ+hO@)4o}SR^s*V>nC0*^B*KP RF^2#E002ovPDHLkV1i7qZ0G<0 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_husky-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_husky-24.png new file mode 100644 index 0000000000000000000000000000000000000000..71c95df613ac9f433a63dca0a9114247a0193d4a GIT binary patch literal 785 zcmV+s1Md8ZP);iUb z5k+(>6)XZ`5Hq`4SVUB!aSa=@*<@ccb1lrqolRILX>9yqV9uO#{{NqQ&z*t)_}36y zX^K6HUl(w`W|6C$zIWzCQrj%~*!`#5kzAD!0bT&}z5+=vf&)@u0&H49m|Q^;0Y1v& z(&&R&tmrc^5x*c{yd3)kViWNj2oBX$kQ@dOpkUNJi9L*0S9Dee{x=W|0V5mn>OwHu z+Q`d=42zD7gdToh0JIr8?S@VwyW;CpYPzk!PRk%wEHP9UK@;m|W4JC%!SmKlO<;kr zsxntB@g}p(aDBv=>kpZvN)G9gL$mH*l)wUQhDNGTBI~*c;AmqV-Il?gNQh(2^{7DB z^=QykUti!UQWb^%u*Li392v*uTzj)GKVs-K=o+7Mg{=u7C0W;HAZ*baGS?nYq!ws5 zH0m{tyz8P??N6X35r?Fy^0_{PUWvtyhQZhdKgZYvJz_WB_E%zx`U{(kuQ2vev5@@M#^d(zAf=qHBnJ>eymlPt ztZmz;09{JisVK^&fZQOZ6t->Ov~Al-BoY?`H*OYFQ&X*zlarypSN_2-`Ci*QE17?^ P00000NkvXXu0mjft)x}i literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_husky_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_husky_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..abbb917d9833253c60c640baefa35064f6ba94a9 GIT binary patch literal 865 zcmV-n1D^beP)<3OwRAdj-#somoz9HYrgh`SvwG*A^PTT~ z=iYNK{BQrY$-e=;U#)#8aAKpJIO6q>ip9IpR*Rph)t(X0X<$&{qQG)jg7OkVsqTFQ zuw??1$|=x6;Mymp;<4WNRJC>%D6RTYcW~|tVBdxes)t%%`KjvMw|z49g0`I=1v&{F z0B-l9VvxzSnV&WB{9l3x4CwCF_;Aq7wvc9jj3U#C>(`>iv!&vm-o+$I-Vl+}&fs&o zT<%<>JC?eZ45)HjEDc~8VPD!9dtfXXlv3*X$wu50 zb9k4gkM7G_W6b>0AKxQ9?9-|)vjQUo1b8g)a_}7X%e>|r4591~o^cJwEX18Sb769_ ziPG;hbZb(mBkTw%&xO!lzZzwznuxn%SXOF6YtbpaxM#TkqN&^cBuY@K$H3eWv zgx|#CY|KM3+_EvK?Efc0tlt3XdIWh5jB4O5UuQs-j4DkLE=O5Lf+q|7Y$Ea+7zt^% z^ZqdapB9S`1g@_~uuHqSn?Th>q`;6W5y}!P<8{wi2DQ(i1(B~s^Ca}wu1Q^_ER9L232;)00000NkvXXu0mjfq>z_~ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_idea-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_idea-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a4bdab4e4036974be899b53940d11a78978b5653 GIT binary patch literal 795 zcmV+$1LXXPP)6G0ed}2r)rpj2GdeA^Jb4R}Y^2D?E#y zG=Ymr1NeEss8Lb;1WDzit=h6%x9#qDf|jbZ)q@v*r=5M@_xH@aGn0Y;`qvVFQWPFO zeOVv|R?AURp6c$s{@hcp`RGtzg98^8=s*}mw7@zD>{Ymx0A&MQ#05|~@L?gzvHt$S zbbdTM+;eOtF;Qe*$>w?z9@Ni!&KPsR}<&6tgpmqUASF_h= zeYA`kcv4dL&-iwKUz@=)GC7BWe7X8;^JeAU0Q|9)yHFI6 z2ql^6oxyB2F@=UZQ;T(D5B7Y`a!#_*WuiNSU7e+EJcB>(EXPW^2eFPQv5qJ*S%Lea z3G4M{W{37;9DYflbs7L$hgSzRTAyVIJ+b%_@a_f1S2Qg=+;wB*h9I^wmyOFg|~=3fCcp$K5oWG|v+6kq(6ysN1tqvg&{0YJ}Ir9U3=R)2$~H$d9C?=qz3yNBs>sG%{9JeJN7OBRf>2V@;{~ ZKLCK#{+~vAM@;|#002ovPDHLkV1feYaPR;C literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_idea_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_idea_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..cf944d40e6b96cb3ef4071b1b16ad014b0bf6d16 GIT binary patch literal 927 zcmV;Q17Q4#P)0UAMrRBOdZp1UA%2kHrHP3KOq5|X zK~xfNj8}T4;f^~Eiw2B|Uw{!YxHL{EZbGw>GRC&9J#A0l^LVk+wR6Rl8*lt4=i)u@ z|9O7TdESo$|Leb&x{;uB*}ZQeYUg!LIxvvh{C3{zI{E20ZbsB=Km_CqP}L=t43Mtd z6$_wifU=D}0uh9hsZH-b`Hup!LkAGj*T!vtTz2R~eD1m)Kwzs;hUk%MCV%+#)0MP& zWr<;fv<%w-BJ`tp02uEC2%Pt4dq1x^sw`0_SG%{~>r8mJ8m(=LwfdK9Q7M%HsO!9^Z2x6!3_#;!#y=~EF)L5S4}E+JAeY^{TSR@(1f0$8+hzFj?7|nw-9R`u zGIXppxqZS~9r{Y8(DjhiHGU6nanSfJ{Ij>t&ei*H)QJnjyML{&civoDm}TN$@Ri!O zFkINR0^1fVFo_g@sdLE1r_om>i*gFCc!fh`)0=K8J^lQ_xMe()RLjETLH#Z zcj`M}X1RU?7`4Wd)lK|bfXh0DCuVcLvN_1?GjWuui65QV9v+!WwZ-@Mf8qgcEooIP z<1@dbhL`jyD--v;!}v$5DdwF;&uu}j?C7JOFjVYh;YE9Lei6`U%y1_FKy{$b+@1>V z{xWQ@QpV!=r)$ZL#G4-78({kB+ws=eGl^rPtUCJp)<*8e>2!=q1hWI9P2wx^qcP@7 z7U?b1?Q<}h_~GoD(AXtySoKGmchR}*zT=2IxDr4oS!I{l=oq0t3kc?yk;u$o^BgGO z9~Px<2w-ZD=%tH9$Mg7}#q`4&=KB&arPJ@1ngFfLBL@CE-6U3MdWsXo3V)$W8h2HK zt9NWf+cuzq#v%jUnc06vglQDszdzzd6S&)+P1S#(O;N*dC~w=>@NC zpzb7vfhYWu928eJ;expQqHF$h!N-35W7+m~m3(es7sz3RTM)De2Q5{8KJd^_g-$Wu z{SOoY0)WrBp^cs9hHt;`Dt;xB;-eXvxG%g?|KCrqM~VHGOg{hs002ovPDHLkV1n>h B#uWen literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_images-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_images-24.png new file mode 100644 index 0000000000000000000000000000000000000000..93b62b41d0beb30ad0e05bc205848de5066b4059 GIT binary patch literal 647 zcmV;20(kw2P)TR7o-W;QjmfPP_}_8 z82tjZz`VK^460{*&z<00n^$W`@n!Fz z#b@y#x}SD`gT^OkGaP&Kgu9btl^d9bi_6VjEOU9d)ZB&FSQtRqtj8$wc9vyuy0Md1 zp9R1=Z-D;B%>eieH`iKvIJ$bn9~$ip6nqlJySZ2t7GMGF3WSLT+ca@J*v`;QlHFE> zh_{{-p$4FtJ` hFuYU~rJzjn`48LEnr2d2|3Ux&002ovPDHLkV1fh}9D4u& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_images_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_images_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2d0052bc6ff6ef2eac8e6a9b43125e9e8886e459 GIT binary patch literal 749 zcmVl~VG_8h zXcI&bL5o^RwWx(-xsVdUO`>BE`9Tf~3vudD*?0+1z*9BclSj;pkT&aRK$f2Lr^X zwWorlEJi$gvlDBJe)id$$_)U9)-^MHUPw6*0d!A$+NHut04e1j5E*fnp3tP!2BI}p zGie`%rnCZx^{-aa3gDM3_%$tQKtKxzL&)hYMa3Ij+Upp(_eFG!jip#~eT#r4x?sxx zjj6!Wb{4bRr=(fA>vDyFZEeYB%QB^Mwd5d&@^~!1q>vR=B zlj6C83(7+qdq==-crR{;9$4W9+PNoMkj^gJFrk5HMBuhZuP zK03TFc(geACjdZ8Vw=p0i5sO2WSdgyFKr-A**Hcva}G+3e`f?>3WuL20$ePr!=9c8 zKzW*l&LS58>59soidNcpRmTThbF@q#`3i(KhKwA77K@EzR)?rA zI9pgtO{P_sV|X9byuIHm1wA`bGI-)_!=jpX@n6~sx8}#WR9qL)W&=MsF*%4Y99lgG zMu7DWF5C8@2*GkVs2jKE$2qmrsnc>*GiM5GBlQXI0|}gaKNL6qaPggCy&*s%A0Qb? f)I>ZJX7j{vAScX#RvRL?00000NkvXXu0mjfNt;H{ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_include-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_include-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b4ed5b27ca5a4cb6a097faa2f8b5e1ab54a57e61 GIT binary patch literal 663 zcmV;I0%-k-P)rI7IHU_?YRk^$gsfn{0G0C;9ggR;#@tqI-veRaKR;+3X$5vJ#wgh@uz}Me%dBTHWKO)9J0zXteF`2?Rm7 z%Q=5=NRUpa5s5@#n&$OTkaHf~WdeZ!a=9G3-7bd1;h%z2#TbKWnwU%`M;XU)z!*b5 zpGP*EecEg`KL~CGZpv{SghC-O#t;k!Yr3vqoqfosYBrmp)9C;JN~O{luh*+wv;s}j zT(cJmlF1}8nT#v;grVKBy!NF=b?Y__-MB0($`L$O%g8;i%| z+jc6If*=SO3{$p?W}T`CB*b)kFrE(F^S1=s4)2Q2l04Zrqk)j-rgPu2M0Y30DhaMnGb&4+S*#H)oOQlc6Jtf zbqFv!JG-H2S}v7JrIX3zQ{aWLEb9sI=#+CC(18!ZV#6@ALO)&=^?R z-ObQkxw^XQ0PjaJ$Y!$?3Webe0E7^4dnLo+FuJaz>pGgI5sSr0CX<9hAu^c^`Fz)1 z=+*#`QoeIt*9Ai7lks?*nVFdj@$~d`C(h+^NGY-HuIF&EgQcaVec;oj+v$OHI!z=J z8EkNhu4D2%565wE90$+yP)gBiwK}&+DMhJNqTLRTqaFrQ$~VDeqtU>&ZEV}7UawQD z)!5wJq}6Jnl%iZNbABugG+16<{tVOsr_b_)5I%tGx|GXh4i66pibG&jn5LQRM?4!9 zz~c7yHYX=1gLf`v`$7k!;4<;^82W!8gxEI> literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_interfaces-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_interfaces-24.png new file mode 100644 index 0000000000000000000000000000000000000000..bec2649727813f02013401cda8cd3d302c03e6b3 GIT binary patch literal 801 zcmV++1K#|JP)cE6;zlQ3Z;->U>C_U5Us{iazafVFLOKRYhjt=rIT$U=-qvM-}^q_`42xo{MX-> z`V&)G1(yVhel=rQ*jbd%8|!St?>uCYKfqZa0;mIeCXG0ObV~pmz^noO0B633e+cuj zecwL(6Z>TkI4nZRk2(ZUTES%?(}a-)fS~zpRFzhQHbsb=Scd>av04eaGbJmf5fhzD zLhK$QBT^E9#C}f;UEP&*_dK4~qnT_wuDRh!!Z5~;Uej!(EIUGSLJ_*|{WC!J+H$O#gX;SA z3=Xx1^bEsCo2!^MSMju7Q^3M`=`3Ejna1X07wy*{0h8K%w|CL=c1@!el z#~HsLyKM&o$4nU^!7gsUCdzJ!QH$ty$4L)hi+wMP$m6&-%d;k!WBGkO~BVcA#1* fH9Xs_e?#8@{+A40w2F3FBB0P#O2l3;qA~Kv)WnN74tg`e znAnS6)WmoohKm zJM+BH^Ss}DGXwwQ--h}pO~Z-UUO~NlSCZ@L>gzdv%`;c=p=9R*5%mV(2RVpRb`?Q* z7+9sSJpgky0QGuFoRPk+Q`_nT#NR<=)n9d$!C+#|`zUF@tG=iWRF{YQ)RHgr<0i+w}JZ`EEj>McA5h*ejFVjmrnt3 zuP@5d$V+H#@>}{K+1n>d!IbnN>KsZc{W=~$SwvC48_Eb-y*Tb2u4fJd;JwFU-D95+ zZ0Y8Kz@w~vWiesq9~V;_?IetVsG)d-an?Hp=E$mLU9 zz418@hF>Hc+*&cY`ui88t{=cI+yr1r_<2IsQ+557H+k#E(?1L)){FqbTGGW|K2UyN zTWIx)x92akx+ll3eL68Q`BOnDgFsWeH`=-@5Nz4x&t#LiboNME#6|E<&pK8kh=^B2 z21I01N+`i=KRAE5ew)BRsu!fXW+0>DmPcH{|5d9W*azs%DkqzR8^%~ zt>XJWr>Cc9pjgOaJ7pLKvMe(ijqrW{Oe}H_en^ref*=4u2tlvcV>+D@kH_&m?{EW6 z(=ZGJRaFr}Fq_So&*$j6PPtqLz_KiC+r9`4BN=F#Mx|0glD=P`bUKZ$>%ZkxRlNti zj$}|Ol{Uq9$#ER|{r)3}&}2nX$Ye61*ztIbZQJum2B}mkEQ;een|Wvh*LC+pYpJTb znTPIy<2VQ*P!we^o6qNQT{i~|BV9DhvO;mmWRhaB_@dM47~4Crfe(L5oJ=N1xm@l- zn3Dt`gqTEr54zp%s~`v(A<(UmyE xQIt=s)#{S(`!^&>`n*^yo;4Z`vA59Q&^OJFo$?NWWAFd~002ovPDHLkV1icx7Hj|j literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_ios_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_ios_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e93706a92bbfbef9c495a574946e76154bd74cc3 GIT binary patch literal 695 zcmV;o0!aOdP)()OPc7-d+#_jjY-YVE-rrI!adyYIUmm9UM~FCzm{AisZ=UG z5|NEj9#wr%EEW%Dr!DTfZc0S9fJ?wW;GeTx19FySB><)dBoc`=RlNj!Fvi?-T{r4I zFO^E0B9c3c`v9KjJqB)%0;uY(&eo2{0T71a z`+Pos$Lhp;lO(0n>4}OPV>moK+ybxwL}V-=7K<@AH#ZUB=;(-(laodlkW41u0rgQy zv$K=G$=-Kh0j#gD{{r5QN(#epVt{Si{Qww0CSwe}*Kd>-78YD!V5%~_Zhpk$zHdzaRs!FTX`aJc2u)DkaLRAYBST|Nz zSD#qpeShg8@NtaiRi#pS1{eI%c6N4_EX&#i{4fk(+P3{I2!fkY6x|n*AI)a-X`xVP dU8MHZ`VCtm;h~Hn+p7Qo002ovPDHLkV1lgpIDY^D literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_js-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_js-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5c84cccbec7abea6b74c566eb9495d9ceed4e9d1 GIT binary patch literal 724 zcmV;_0xSKAP)!L{$V@w=OBoc_h7C|Tl3RwGrMfyGtEeee`R!EGACwY_myyv;++>?86F8s&ehWyE- zSajm9AlGX3sG2Kdmmba7>lJ_gWU`~A+);1=F+|c;%0b|qVl@KPZD6U~26X`o8+k5H zO+DT{$j73S*MW!owf!(Tbr1A>Z413n8JG?i(O7iy5G&BF2kNQ>It+~0l>ae2Rr!9! zmse4HwMWOlZ&24MGNKFwrvXSLBkUAi0Qfwsbhf5wa1`17+CVZLAf4%`-vAU>Qw{)| zDFNX3BJho?0?3cRlS9#q47VjX~$jXqLaJ@mAH#6sB0biRa{`Y&2F zj42;Xo3SWaHkQ_d0I0GH$FRxUIS&AS?=pkIY1&#g5AjD%klYB+XfNVDxsJOzOQd&> zT%m={PktX9Ljp?;@nk=^Uq; z9)LKD`enis-p*t{bPX7bSpXF?Qqv$8?;aP?rvM7`0_{K>%B(ZAI+RcNhD6LOpc%*k z^T3%(z2ID2?XS59?r`!Msy9F~0+D@jHRh@a>JG2H6?7DM1Gs^aiuenwq?cukz2AB= zHRW^V3y!c&_C7ZSQ%fRP)jc~4{-9M7ubR@bJG8#G|Nk2WbkQtNgE|EO0000FoHgs>xST-nB?>o#tz3&o^v z)Qt;W+Fkzzg>Gom(6~?+rZASIfEAGd7IdJ)z|8R8JuYS-fH(phH~u#Fo_o(d-#aJg zz6&4qp(VRHG@8Er6DsE_I;q!@YPmY;?l}14OZBK+1booDAcajX%|KIN^De-S0pgk; z6@1`9>iG53Z+$?z=Nd}Ws=Wa)HrR6;;j>Brg;V8e-Pll1{}v9P>N;}+K!rBoOJKYL zW2QVBg~S&7HS3M7N|Z|-zm}{3sHm~@!_WuBAoz8scRKFcLP9V8gy_2AhR;}=iaLNdEk@xp2t!b?FAr{Zzr&|0QlZ8zV{D~ z0p=1=wau6wl1znK_IE0K}^PX78Q{xF&;0QAF|$`>F?s*YtG( z7ywcFwg-4y5oZj5Y_XM@+&PwtM#$cZy*>#o%BZ7&ohqq2u)KCIiJGlkZ?|xtn}&7=S8g7Jtu^JF1uszw42qo>#Kz zs;`$wNZkL$19-LE9TdWPg;M)!soGS#FQm4*-vw~2ldAY0=pVSthvVl}B;hBfe#nj< zIA$Dq0wAF|BwpZIE4M(R1trY=_PY-sAXn&~`j0)5N`%s3X ziRtFtzYWbI<{=OP7J*UVXxV-ieLj7}yfZowOHTcU>h~ZE0;$#DYRoqxXe{|ME$COk zUqB3KEeF4EL+zHY3AXiQ>P&;5Tk?{Q1pikz&P<44H~TC#?j3xeixw`%a Xzd8cokn^`C00000NkvXXu0mjfE7gNM literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_json-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_json-24.png new file mode 100644 index 0000000000000000000000000000000000000000..659cc9e51d691f012eb72795dfe07345e2f868e6 GIT binary patch literal 691 zcmV;k0!;mhP)>&k_? zPPYNUwHp;`A8FH88{3LWGm|Ennd`!|wlQQfZru36z&)JreBZgxf&ci|5Pwrt$lrS` z5chj=q*U(Sxby0R7FGQ1!mRB}9!ao(0z&L|D4zwUC4m7D*&vYOAxH}-?l|0@n|s|n zo-gEQ9{?{7W9?*e?kUKty)ERm_CT>M@`e2DiL8K(JQjD%KwbuJc9V@84w>X8El;OZ zo&-44{s6Gd8aaENs+-{JUhb$)>D}#boX;*|#tv`~2D|3HK%?FqAZxEPGPD!TK+`-- z!=qbhzh1JN#!eHh3F3`RmAz zuDx-WGuK0Buv-}eVEEY4>xG!sB$@a|)6?@ZrWQjD_NqxX%9Er#;Fz4w@lTj5J*$?wU_9KW~^!(quAb%$PMR#R>&;P((p2J@gRvu(v&kmmW&-;-H9^_TXW+ zhwk5Ca}Ww11o0wB&%FqO;vrxJQ4+yuEmVnCF=jNs9*Wb>g`q)xWndG|ePr!FgY_D>;+_wJM@agI4j@#SYA4Mc4BEKu8{(8sq1u(3X3IjYE z;CbE;KujrBIz2soxxBnwYwWwO`#tdM{Wt)an3(ukDfLwo#@7HMq9v2b-(1&yxBt9x z5CCYJHXtG|K9pXo)hL(CR4SEjP1Cv^$6;`AkZ?Fmxm^P;OOXx+1Xh-J3Ai- zC=?2mN+nFw^usO7dH`8pUq{z-`Y;SM-;lsnjEG{mxy1Gg>n+<>> zkq8F|2RM$y`1ts@EddS>4>1gbcs$O)zyR~}^JFp^a=9GEViChIh(sbjvaGe$H6pBlF1~gRO;SV1By+z$hK{N*`DY5wb9X0lu|^aQTqD&ux*?E{(dy= z-^k0$%MGQ}Wncv&@+VMitQm%ZWm)NHH2PVwSfsbN7l3RwOHWTv_3G-%XlrZJ(&;q1 zuHWa7&*y)E7T<%($;riw?!oosqX=&;8{{H?S^?Lnp`A=05Srw6yCk4Mxg+k#=&-1rbg2cR8k1LU6e|Rr3e*iuB`}O_E4x8EaJgKdn)Z7 zw*3Qo5oE+$LGZR#s(1;d5ZRk1H>HSe6jKdiSJ9n}Uk^27l1+Bqz4X!thT;9*=Y1aD zcV6a$|M6c#yh)L5+mC?HUqSmgl}i1ozpnV=;$nyEx?cmP5aNka>Z*qF0Jv8wm2`mD zHYk-!UkM>hU~_VE^0V5!ZQDNp_sX$ell&35{|b+fZr*R(w!KlC6hgeKl=9-*4n6=r z1oj%KpP!!>wzjs+d_Ldly6!unP)H384LMz1T^Ge-@lq*eRr2eN=scB5#Tw{;X`1Hu zmSqK{lt?MLy1HUzWrfkvQGIM|>?o7T{8T6uzV!@j+x`N0coV+|81-6TSXhYXa=EBw zS(L>qpUurp8I4BYPbQQ1S65d#K0f}}KnSs~l=`GbuPRQb)8ukFD#iVNKZapcnPf5< zhKGk+lF20LblL#WT-W^-IBhiZi;D}^*VjGqL?XfR@-k~{Yot;sdU|?1gVxqo_V)H@ zYina2;2;2}r_~en`Fymrw0I^Jh-d&46BB;{PwREy_xq7j5{X3c`FsHAdi8b- zAw2O=C{&qxrd0&1^$a>YJCRa);sB9I1WmgwZEkKxN=Yynq@$yweEb~v-D7E*R`)yf z_V#*hJB|Z@X__PwiE$hfR zW{Ah*-ucnd(dEg>NwZ~HS~wi88r}Z>{-@pD-79yx52mN5qkg~t>A=81*ZBDOT}mDc zA-;p#HGL`O=H~t|O>^Yn;9z%WXXj;91v~~G-9`5W%+JpoOG``N?C$O!xUT!Ry2YhZ w>WNY+@kYY+kj-Xej^hj|r5-4y%tpL_0MecqoJI*6?EnA(07*qoM6N<$f&=%xT>t<8 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_json_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_json_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f9f0ebe063eafc6ec3c618cae38a2d4bd1a0cba1 GIT binary patch literal 825 zcmV-91IGM`P)(*1 zK~zYI?Uc`JR96(oKj*$TZ)TE7)o4t{*1)J^Ns;)22})hqMWvK3+?Fm1{R8Ss1x=ws zv2`H@5ft3G5(F25SOr}uLP1o7B(w`>G6^*`1@qH5KjOT(r;E&(`IQ;t#*N?AJ@TCXH>p#YSO@g_|B6P?y3)ea=Z(bqd+_8b&$mx%MPH=w|N&} z)c|qL5ruZ(LA?LhLv;;|44y*iE5}uU)X?BrgwL7*6h1F4H>8FK?=&!M(~7VPph5!J z2aMO&1Ex{jT)*13*OJZe_7?vVrdKl>;;R zgO3;e&2tT!TDk$NXSzGCp3C{Y@tN#EtZ(<}ao17%j}`f{$_Q04cIj4q8%ZclBr<8$ z%Ng;Po0~06-3M0eYN@VJBDWYi;TzQPg~Bo*k+@g@>ZhSXrZnmnr#S#Ri?(f@srWPu zfT-SBxkd@QX?(jDt8J|S_$3k@K0c=%0-|ug0QZg`D6#RzptF zz5F)k)+wL*WLsu@)9yyOmlGea&yIEP)xWwTmHYn#wOsjH+_;8t00000NkvXXu0mjf D1LBJs literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_kubernetes-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_kubernetes-24.png new file mode 100644 index 0000000000000000000000000000000000000000..55363e4e68e0771030d195ae3bb014c98c3076bb GIT binary patch literal 1015 zcmVHa1iP+kYUPLv{TZ8g`i^UR}&10#)U>>j7g(4#x7dBQoC-W zjlrhIq&B9S7-OO#C75V5)`dz^n`whZBq_)M0U17~14DrshIupZ-FID3aPVUo+_>?s z?mPc;&hMUcZ{C6b*MGf~e-rff`T65WUMS?FqC9!*Iqx-ntI6N$j8$UGV}J+f1`_$Y z0<{uaEY)@aY#E^2j@Ko4K#pfr-(x49RdV_IsgA^pD15x`pD(s|B;G_}Um<{m2P7~# zFFonZY~RVx5^-Hatm!rc^83C4pei&;Xe*GM$%J4aDp*>PRX|l_TGWTCHR=K?PW`V} zT2zZ{DVdnF`E^o|%18ied^$BgjVnW02BH>`X}F_GV^2_{#Q6tkQ$S+LCLFQI@X z!WZE*<8g}z8{C8k4F;lu9RW=(u7c$1$?Jm-4zzmkdo`x!1e0?DzZYB%g)@gM_+>1I zro!bxgPbK9iJG;*Pimp$%Z9`-R{@`Vzl__dQdzFiGn{2&)*_X$`L1t;oF%z`kBj!s zMeLiMj3;H&rWMR3?e+ccpo1Ep#_7+Oc=f3=R8_&HE8M-)$@z;b>;Ua1pX5NN8xR6=0nB;#?5)Z?r&N}RIt|n1Ffa(-|MEa z)`3&Ih2)B)IppNdYMt1;;NiR6><;QAmIP47hZj<$4H;}XGV3pR2icqbpSfYt-nqzc zaf_}?D_kDRGP@{wS1BB|fI~ble zH|U{&gV7liP)x<2+Mm)5kRCtA}hu?9`C!$8?TxJU_y`p$0uDBrlHk=cAS8bHzN l|4!2s?fTU-{%e1>{|?W;atJ1_8dv}T002ovPDHLkV1j9|;1U1; literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_kubernetes_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_kubernetes_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..08fd1a173d183578e0e5344716bbacfaa055b79f GIT binary patch literal 1130 zcmV-w1eN=VP)BNzz?WMR{4xT9{hE^0MuC9SQk)+}9HFIR2q zMQyINwv4rEtJRcROt+Gm7YS@kK|zzvL^?Tn5kb%chw}pGfBygTf4Tq;=Pa;?|^gzXLoJSd}_J8xjpm&P_cN|mI*%rD(?g!kq=A2H)^hb^K<{@ z+7f-jsf+lMhA0D>xM``z)Ct%E46W=Ou8dfra|2OrDr^@31--u5ebx8q!H3EnGcJd) zL1re~tW=^%>v=_r_axi}P?V=pl&5lbz)*XAMozEK(52+-#vK`f zf^219BA@Ttf-g%UcFl(OMAQ15jD4)97`xc8$vDtvJ_j z#aX)soVwu9?p*q=#ZVRK?vE0UNjm$CQsA2MTAeTv{IZhsK*S~zod@`~EsV>dke{W} z<1-kZviqt;Bglu})E*%16g$ zcZ@Jc zf3MEKb(7$%WK)@gNYrNBA17+UhGLD|GjY!J8+>^(L?kLvZM{HQbSB`$@)FG%a-q={ z2U`LRO;{W~Jxlk1!DJxL@1quDQ*qw^ews*B^5M}S{UavkLS?09=Or>Y+#aq~kbTJj ze~ekQo|{E3G|pS=;_YX$Fk+HpXCn0YVl=&;OCT~I`KLcEy$P2?9P9eHup#BUZf*vi@Ync>1!gEWUAYD&J?lZzr)9MPMjlV;uC2G5O!(*HeG?;g(4 zRjmgoD_^JMyJ4ot%L;X_j+uZkh0XR0pB0{7l>Ot4R{O?yl`8Bm!1EU>Qo^ejo7R1m w%v{yV+_Yz;5TUNPFI1u4Jb!5IZ_D|A0!l%hT~2h&9RL6T07*qoM6N<$g2o9MtN;K2 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_less-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_less-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d71d2aa3a9e09962f9143dec8e223f00f62494b8 GIT binary patch literal 716 zcmV;-0yF)IP)(_wMR1P#Q`F?;hqv@)E-GKlC_AHtTi0>#hnpU=;2jTPl00Ods zqQEowiZ?Fmui{Hx{99QAtO5RBg8pQk+C_%WOH{0$_LrmBC+7m@tMGEX*udz7b0;tu z6tK;pX2>$Z(VQ%zBWze)j-Xx7Iz6N&XwL!-K>;eI0;k&pLLh`7J6+F-13PH%8DV_N z!TDqP*e4xy^p0@u$X?!k_{7ICJ8@c#23G7qf+>)!OS*ZTb4Hr~B9B<7e*)xrE>#pV zJ~=~eWif@hsl;f*7#y~7ATOQBFcm|V_Y4f%Nr=%T*VosV_)XAiET~-WS65dj$80Hi zql=VdW%)ayAq#{m6@*AK_nM#6Gw_!1P>Gr|#hj|S&*?+?RFxNTv!R8rp7{y0+1wxS z71h<%+24}b1lbe}DR$3yDI{V4XNg>0qp2yv0Vzpt+ z&bgZcQ|f4`6GQ4WXZ27`Gt)Gd1ikdbVV|}4I_ukOv)0-0 zU;kRFJ0I;hQ@v9Ot3&yOY0TWUGRbcI)8N}rR`*lFR-mT{SCpb7z$G0>ZFhe*0{k&R zGpa2hJrOGQW+g2QT+cgQU4SC>yX^Lq=iPvQ~(sQdBruigE));@frac$V6Z= zP#1#G@NLvUh6P#gRn2F z0($|vGT4;p8Q@#9lF=Q2f_i~U-#M+>)lv?$b|+vEEzkwc4{&0`L^sf_BMG7y1qprt z07RAkB>aaID zLxwj>$AHDN60kekrT}%`KG0F63i$~zq^}!mWfMzBr(-hI;BYi{nS-OnOnh9g9N?@M zU{IcGx@dcT+L1xS>1qcNM1-*^16h$dfvfkbus61nvup;ohE__;tJt_?Ixk;4c>Bgi zTpyDO_)${3SEW=U@&Ryve`0v&kxnO7was4vx|{9UbFeqOCx881=1dw+Otgu|&t8!^ zErlpk7*C(qVSQ#}KunLsqN1XCe!q%>tYovVotvARkTQGTlej3|tm~f%H+Tp)Y8aHx zv2%C0XMI6rxMJJ7xnylS!P-SL*s>;r1IN$f`qbHAu~;hnnj%nzg@v}ZR@cYa-Vt27 z^@wrF@f{+E=yD;WsXv2X}AI?;SU2lc%HI q+LbRrWDle1{=@HJ@Hd^V-Ip5o2y3EW%jy=`yY~z#M`nt#*xg(Fu6}p6Cxz{kRSg~h;n*Ks|7SqqTWQ{Tyl z6F57X{j1rc1pK|n6uJBZ7YX$E`_Bp5HWR<18vq2HQS8lLe_zQxb%nU30$r`JElME@ zi^!iD&51&mGhPXf6Pn@}Yl|J>M0Ev3oIzjXc0N`uB$av2ctwi9@ko_lpn42UAdJsb z8hh%9^*7-r)7Y#>?)Bn}aH%EokcX443@2LwSn}Z^xfqNzD4@Tx9!(IACi1}8s>l@p ztb1{T`thesdNsUAtigoP)R%8dy3PXNHoPX*_!5Ax4>p9e66jmFoq>j}C=T^w1B6C- zwlYr~8YKk;@9GKPFZl7q%t|0|$_SjY0*?^5S{!5@H2ZyTOkOgI-Y&5OF{n)oRde2xTlSP-q#p66FjbT1cu*psXj+ix zr2?-K&6SnePqDVa&TJ;0bca&wrKaq_SQ(-o4azjfu z0v(b5g9E)2Nmp#ETG=e3{a)PMS)Mss;hJ!lLT%1EU5&Tbj@5QI%~!Fz92n8?>y4d{ zj=zl5q8OZ1m3<;S25Fz3vU`jP)+ssw@+oG*E|YOCgFP&kdkSlDDoy|`(S|JHE%FO- z6lJLjS3o;JHUS4kdE$8CH9=k>971SEv?CICQLFB2c_H?F-|@RQ#|wR(?VaU{{%rj> X^YQVK0{V<600000NkvXXu0mjf8m4U_ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_library_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_library_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0f46310bcaf08b81edc97c4b6634d20349f29f01 GIT binary patch literal 969 zcmV;)12+7LP)Me-4T({K*u>Ph)h2=q zXH$%(8@Dbng}7-Kq-wiq4W_ZgHnFLV#+nwWh{2WuGr%y+%>C|h!NVD3sBL20_)osY zdH!c$y#pMb|1B5-kfFZLH&9+(s%-+oz(79W)TXCuZkAL=HfP3X zCViWNIdSa!ts|j|Z0V%q+3tjYzM}4Y<7DpZ>QuNYJ!VJTXA@U8UViRk+b#!@QIscF zO;KQnyfnjsYK8;VF@VPTUvS0aMlcy(&ha@~mPz}Vx$fJ!xIoKE@Mcu*(t{5&v#{h7}V=FK>w4o$55@{D(QN;$Z7B5Lpt=AkND?ZXz zfQ(i0m(Ma}ErTbE??#Q_ru(MZuG zLA4Md=Br|*kIY_T&+HY--2@NMU*nmnZ)lp_LNpsB;`(V!#@M{YCE9eGlJYFUsuba^ zsrL#1wQV2$;3-oAxz%SRu+2nG(mX$P)~!$fYOaRr&3NgoS2I^`b|hjZYkA&uLJXdG zvBz(kvWBEPKk0uOR(&e!JG!H5P0)I7w$c%Ak9yJ~qCffr_SuJK`ht!m)K+Nf-b#|cCsqi^y56C{?6;Xb+{N|(}qX@4dG$Y#ck9rrZYEVn_ r?RY$H#Rpmf`M%@L$4eDm`4#^OEvrb6YCoF;00000NkvXXu0mjf+zHAt literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_cypress-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_cypress-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6b0a31fcb03e39d7fe96cb6d955c74da25aec784 GIT binary patch literal 1027 zcmV+e1pNDnP)++`fcU(bE-&hP2DrOrsFo!N=pI`w8#SdDOq&QUQPRL~!xf}A1!lMo1l z2$2y4f+VpssU>6Fm<~o5Lb8ET?8;;V`=L4a<5uCXJTJZP_wIZ5^oJ|F7M`v@`lmNM ze>~6U$NTgCd>)<${>Og}@i0LLhr2!mPHyLuh?~l;zua@ryxZjE7fzKzyctk{QGrTmQkdaM|)5DCm%u99;uRT_cO|bwFNyM03yUV4; z8yt64b8Y@R=GPW>PGGmFJm;(+l+bzC`68;xl4Q4;EF5{Hn99ro&iwo(hl*UR{mcVAVvZ};6ky}Q(VkH<1 zGB7ZJ-|t7$H2i))!C(*o!!S7a(I>o;Q^A6W(D=mDds7lr_m zIXQ{X=cA#afr*I;dV6~T7#$sDXlRJatRiffIlQmrIHZ_Cmd%dUBCrUB{{DViTU+Vr z>A^4z#>dCW&(Ei}wwCVhZUzSj@p`=oz-4g+#N6B*x~@}GQ-jy* zrMbD8&dyF$RYgjPMVL?$iSJV?xW0UwT#KD=LU(Yx-2?&wJRT1%EiH_VjbS#Msjsg` z2tiw08vyHuPOiny)s-K{Q!3EnF*0Kc=Vrg4tRj!X!a}@WZ<5c*$Oy-d9mC;pAf;qo z*O>k-$nedtS07Ly5%(nA+`2B$1#Xq7`x0+o86p%(dN={_`Fymuw1#&*RgAruNZ-y8R@G@O1z4t;)E{<^dvqtU25fANCMd%QqunkF?(lN*tZySlDF zwd2G|>ZIKB+2q9ej^1~S1C2+eyY3me|A13|eD9cOXzjkL71t3rsihpPPF;tz*nWptz$SP1|C002ovPDHLkV1lG5^Fsgt literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_cypress_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_cypress_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b2bdd2a3ca05d692a6378abd9c0778b38c7d8125 GIT binary patch literal 1135 zcmV-#1d#iQP)vW zd7kHY{?AF?7yj3OEpb0ZzTlP}q}Y7797R#r^f&H~X!qKD`FmRnEj#%Nf*gT3A_c~@ z1Sx%hSFtS(;GO}to!k!O0N?!hV*7^7bKjokR)p~0il+g5!7XnhS#mc(PL^Z!idi0J z=NCTwLU`TKNGyKi%S%5Ek4(gE012M-xleZ>c^r5W$xvqFT!&kEcE#G6ireA%As*qX zD)UlUd2t<{o>RsQTOU6d?j9a7Zn%+m0^HQtS^wLM(l;)R4lh0wJ^S6c@hh%P?gea~ z^#o2;2Vf#)5gxtB$HV=ujb&9c2G9Q-IQ9F$OSfu8NwB$IO7Z+;Tne~>6Sorb964I; zs;Z}ADMQ;ncP$P@zwPM8lO}uq_zIbl*3qwz>+!MJg450K4k;q3TmaThu3SJ(i`T7x zw5)u{7|~uXF27@Q0GFCY^PJUOwnp{!%hycpE4r{w0oQL=SM0JB_7MJD%C}DrVLWpCx11vA{FqF8)%G~)3 z3=B|OT1q$^CJ+cvQ&U4vPY-QvZ2)w3cGA(&!HWF(IMFCu^jHl{KC(=ujtU_*Wda^_ z=i<~I=t8Bvy`6@J23lKNv2B~~?rw^Tim0flVCT-A?A^N;zu%7lyv~^@y5oT*F;K*q9_0eAy8Enuh)yu=VRBdUG(+!QCnLJK)&iCTdL-igT98{!@l5_ zUL-5i0mJbT^!!3BnWUwqh04lGqR}XWgM%1`L3w#Oe!ri(x;nOP+lIs8KuU=&6cj6U zZpr}wDUN13==*b!Le0(hu?zToK6-n5S+;B$_4W01b#8dX(Q2q9=}Yy@D;HYn6{ zIQCob@hJy4N1%QxMDn$CK*Bb0kEhrl{eqIEvnehv#_#t}yTswchpDcvX5PGcNGTaJ z5}ds<#3$#zy*|ysK-2CsAg%#c`ugb1Nz0Q}z>X6g#3sfvO%ezMXliOgO38#}V5BVh z*6B_&ne9~mmV770VlmGf-JxqWuWywdpC6HzqgSPAn)1M*gL3xVhh!p=kcmV>j!%qV zGz{aBf801-QpyKD3-=soX?xXPvT?2SRj!hAmU!d``}RrGG$%~cd`C)IkXd)ne>5qj z`+7WH@yoC0OI!{Yo`nnhv$L~L3L!@C>*oJfe*q$@nmL#GQx5;k)6r6|1$cb z4}jGkH~zkUv}lw!on4qqik%q?4BdN(XWt(5#_V_|;}bk@YR2Mp;MrRTLLj9^U&|df z?5P8wf%3X=|j(;xEdgdIlx$u10 z0;FW{ZaZb$s-ITcCCg}tgPH^(DDf(otd@z4GkDwC zg{yiCR#z$AP0hsS<^Wi`xr(0-?2p%T;M2$2q{uhPy-TItZ{g-QbRtw`pZ*~;eZGHs3nyQMnKmYo9=WoCM zZLj!|f%^~EKE8adN)1O%nyO~^w%o>$n=={c_4#wN!`ISQD4BUS)*NyxHFXPfMX9lD z@Kzs4#xCnd1Mny{zoXNlNZq)EN;NEx`F!o6<@!r%UhmctMcJyPVm<@-^9mmm>^our O0000pvFY4`skA}(Z(z3 zB}$C?U{XyRH9(~)Nn=WDsVP=?P)ZnRrvrqcq(Tef5>goG40F!*fnnN`=``iV7uVA| zC;$1swbouI8~%^~I>bsoYH$w}=}K&lXl$UpIw!Nuc(3M-N*Mxf&ksUii=K%QSje zfF^aTK<%#3s_v3!!*avR7hDOG*RICK#>dZQuX}tf)Rof3k$qo& z_WI`^?mhfb%{8U#AZ4%vA#w$(X0d%09D{mW+_J!P*Jn6)w25SE1_>!C1pI!4fROv0aEWs5GrKeb*7bh?<~)} zT8T6mZc3y?APjyPT_OQPlxYD#3Lz9ios85$T;c;vj9jI?={RdrEEK)?Jknsmf5XS@ z^mIrkg+M6EwLkzB&?Ug)N$8x21h79<%wTs9>G^r2=jDdpHy)_vyLaEiKYwG10I2f6 zPMqS2ZO=I&xTb-HRV_xd*9Sy}1I$cLp=&zh!^5OzXCi_dvUYP3t1T8xQRYRVt`I_` zuYG2veqp1aU{k8yzR4a*^Dn~^N!~|uCr1DP002ovPDHLkV1hu7*z5oR literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_expo-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_expo-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f005b198091c4ed682221501dd49c0493c6b2720 GIT binary patch literal 858 zcmV-g1Eu_lP)vNixk}TfzFkyfo6wqFbkhUx&GY}i|KIyOAAIn? z{&h(sxpbo3dO$$o?>vJt+55I6HL8ORKX#@eO2BSF3*3?5gSRe_W`IbRg%ko1G(c9# zyMBhh>5Ecl9$c5;24a9#fYNfCL4pgv{62u==bjxwNGSmri+;Qmxx4=H!=t6;F|*@i z!%v?zJ2P_jJx4Ibd-1*#2q_6j3p7Q~=S~KCUg$ThU97)*w~nHsLO!`ZPFk?EWKzWV zXdiFTD{^+VAon+**Xzm6&BOlowMT1wdW*%WzTaLB77(WHp!C>bZdBj$2?ww>+#Kc) z3efewiM-rp0F)Ru4%3|<>gF`-9+z~_N_qJ9|43AOw@fv zub+;=V8CoP^Pu(-CB>UOp1!YN(2Uk$skx8IWTNtVl?;6QBf$H%CzKd+C@U+YqN0M3 zkWemMyh=uTD&e{b0Ccvu(9~E*bE}qChai2;j&;C5K)}$@5YwY2UcGF_WZFyeqBZQ? zU&Xk{Bpi-*GFN7Myw@%rqVmc~I=d7S=VjT!?`L!_UB6!u<72 z(YApDLSi2Z9oTwGj?#bW8uYPAlp@ETwa_^oIpr6`I^2;p`*or#K~^Z-U+ k5765NP#5AZyjiR+ z(ZqN&BSz=^lPKfH>0nW0tD6~;q2O@pj2FbwNt85}|9q4`i}Wks@dDPh(BbATyzxoC zoa8+3`#k4+PR^~T9RJ^67&xFul0bv8qOPG%3 z1!MwwxM z3ujbSwO--&)fc^e+;=e`r8pKfXz}@rgrpuo2$?S>Xr}Oy){}lMk-=|$Uu}J1|8tho zvR$*Ps;0$q7E9V*;H9`fP;?oPg7T$^7E_Rvfm|Uz_VkG-w42t9mQBIsZq*cH1g`fqhj#VH+$6KA35Li zX*qzh#QXk9d%%Bz-L6Log+jR9ZcHW|peVYrrn=l&Uss7b7VrQm%96{f z22x6rjI-Emnbg$O(A?b2cjtQ9Q(YOYnVXxzY)<8DS2td-m-hB{0fZHRaqDy!5W1Fu z|JU!Se6p0r#zxxO+DJ}L;piuyQ&hB_^z?NA{23VF=byR>T}~BKGX`q+zFZAN6o6+P z4oyngkw{$E7g)Py0l&W=ulGeBcDi`$gVSW?+{e(+FeQ&&jp_YE2WbBAAmbA%_iu3q zA!gVu4X~!=1|!1(B9{j^b?QsD6+gpg5mId=Jje_6CRJ}&7Pi~X%=5*?56=aH*Juc zn``Ur>>M$h&A}M)v%tLohE;m63#zJyq?Fp^Lo zK~zYI?Ul_>6Hye!f3FNJwjd&3u~jO55JjVji3#`-m1uP5LQCRC-RausLKo1)VB*F^ z{{f9Ih%V5D#;6HHnqq=1j9RHArCJIWgc6~FLQChlaL{SNT2!J7Z}O6R&pC6?dp9$0 z;D7w>5Wn(}+H|~G2yrr-Mher>1Ma&%WwFgY7hUBk6Bne!hCl@|n$dbKlASW8SpXJo zpqa&aq_iP;KLSS@-S-kkUUj=p12^aDGy}D{@iNG|>=tsDo|wudkJM&Y8Y?7rX{eP9 zb~}=TS=)b4oPhI({M;_G@AmiO-!hm^&T`}N%cV1T-W%aTcOTJMd}$2Sw_&7|c>IHZ z-e77b$%l~%oMp@D=owg06OG0BG(MGv<@}*}dq1*glO2na$8C?FXe>@?(J}xuDQRiz zqTLq;V1MmunvT^k?gXkYOv9EnG;FP!H>MYXA=-UmT2Ac7RbN9#&j4-R0Y}aTvFQYn z&y#FiRYFx+5!DsNX=5@gc_=0mwT@B>3-SRNh)%4897p8!4`MYdw06D&z-m!=(?9xc zOgpM8xOQqEE%&=vVYL7-lhpF(pFoOX0m01m^i?QcY_m)zlBuyoGBs9MV4jpx^6Yge zDj*mf9uHq?^=huVn#kEh+d=>dEtPf&W(zxz0M;3>4ScHfZsCUv%nc34rss~9e)Uze)h{O(HFoBF!yd& m0ycwgNY^Pq2-pk+faDiM1loa%Yc(GL00000x;SD literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_fonts_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_fonts_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..41fd3433bea173f33551665cd70c77fe93336207 GIT binary patch literal 826 zcmV-A1I7G_P)?>2 zK~zYI?UheRR8bVhfA`Idnr7s`G>eGLL=6Iw6d~FO78dSW^q1UNyGVo5D510>iChHf zA~K1fHWi~HWeX`%%fcW{9ijYFrj{cnI*#*B3!gTlGo!X?(}Byo=X>8f-#H(bcj15h z>rj95QFm40MU*<~m!w&C#~&{4H?O$(opVv3&LD(A2j*&*dzMKvl-gk4qp_L)~xGzdJ zqH7)ksd<%7U|E*bwzQ**Q2(~m7bP6jCJzAs1vN_*|265rHZV+FY$SCp9bP#@_HlX! zM^oG}Gl01CT1=V?F!>UA{;rG6lmvnT%-nkNk|Fyz>(UZ zlR1ATh|j$;464Q71U1d=WTz#uFFkpYO^qLVur{?*aq0lMd(xEP;vhE4MV07~gT zZ5o@HqJP9r^5z(}tdC&Z#wZV)0xV|CCXF3&v8)LW0-$eXEMndw0GBdZHPJ776L{9z zNk~v2l{K#cSiLHc)~>#Jn=+C%Q+@U@1r<*T4-E#uG3~T?OptKoQk%d}6wZaq+Wb*s z!dB}7E&*5Mnh;$Vq3+Em7Ye8C>yMceHy?3gf5uGVp-d-$#bVJGx9UA&foVMdJ6iz( zUKx3*+dkTOmj!HCj=(jb#|z$T6xs!p1K)u-pxD4WjCX$Hv_Tf2-VML&hR*GH}|%f>18_OKY})Wt9#CO&i8Tdxx5Ge@vk8^ z(sceo^IajRUa3YG(%E?V?1W{#;+Gm90FrFJ7C zj=Sk{O%+0@#r(yF<~pU=_bdM6iY_#?)C*McN(M^dj2e6tg0UEU4zL@8+@>qFW0oas ziGuPq4wJ7G`KuLaYZTis*1dyxnD%;k+u2Dl;Acl(9@{f>xBOKD!!Rf;JqUoO-NpFO zP(5&bO$K4ZV9M*|+vEhHU=XDwDO>HNWoMI~xf6sStFX|l5Blfn>u@=79Nx96!Pkj# zx*oUiBN$vxzUU^|Zl~a23A^^}Mc4I+!Ms1hE0Mmcfq!l;ws;i2nHk(|PZ;R#BCDVf zr4-)&K0t&p5(Za%MT0%v_~zzFvD?ku=F~0h++ASCNy*8SRGuX0_cPr4hL4_Jl$0bU zB|T)o^*ye^r@?o;>+0fz`!z+SWhB^aNBp=%`s2@cDTCwC#`Ht?B6;IeF?f z#Cb(wV*!uL6+IigfAx~0vO|2C7{}vkU*4d8e=W9UWKdC4OQLO4Ag;mW@GznIc{BFS z&eH$9Bi^tk(z3HTR(l5BVg)0TTVkN5K#WX}jiv#~t12#n)s`qLs%t*$7OMo%t3k*y rPANqd5pe(&MxN7zI)NSR8`r?cK z%ie3PfB*kp>*Qp^|M;&V|K`x1NaB5gR|;`liqHp7)%;{GR(yB#+})yi8z=@k5vFno znrgrg$^=-nfr;@JP%IGpFjVtGe!V4{_!y1~*b|BG5@g?8EboQmuWCcK1E5(C zlpq{ktnlza%-h@Ewn8c8T~}AXtm=MWZO1#WCrk{vf~GNtoge=LxJ(a^H$8LQn)vk*BP6KU1kYYW=+jSzTVvhS1YI z`dARtbgx1PTGnJ{5>jSnM$!e&2IIeuIf~EWx9ivGY1>bmxvt)WQrNj zr~xn|b`N0ZA3k=doAI$Ryk!;H+)A&PhimGx@$%A@Y}vLQYjT1!{b2@A^t+W(6ql6j zXC!>f0QmID`Y~W&zWC7T7?JJ+oC+Ty*x1C9q9Ur-Zy>O76PM19WO)-e$LVhSCg)-m z_uj|zFTK1Ez?e&FI5@XYPfv5WqaB$2z$XtMqM>m!f84U@>u4uEJ)PUC*4gbnl~pvq zu@m1zkECGUk0yqz3uS)<@Z(UNlx5wX^Nkz)aNzs=3EqK9-&(fqcoVnB14@z8!QPG4 z34s`pyf`{K`L}9$SW>i9z4+RW%WjV+2_(Uofd$?JscYyJ&E`cp2%o9J6T9-$h7%Vp zuFNh4e1hoRz%SV{^r2;^hV0zLHo{I)j_-lM&l#zARs3Wt0JTrV4AfB|sa;dg>a%Cl zz~@G7!+?f>ZK$hGT8V-Y2Ul#(sXiUVjHwbc;ah-+%ZN$W5C Wt1i%NH^?;r0000P)A>#7w=$t zc5bfKnXl#f8Q|7x+y$u3&fdWNz?ua2gQaKVaIcoa8h@DHm zxI4?IyTwQ#}F99hYdBFPn6Ptq$?&(2lumre_Ce8DzIty{QScWT{zE=AKwe?1rAAi3iJV&+7sk_{aHn-%zY`oRiBTyP;vE)xO!C znQvy^=soyf{%euLIL(fYeTB$}9gWiIcls}1UP>J}_@zrn5&0YlQJq4h{+P+@z^Q0w zCk1d|fEe?cLJ0iYfA#9f6A6?`6TqoQ`aVFpRQd*ZwG%+$?Y(7hxm5b8jmb;eqU-}G zoCe+k<^fbyjB`eh>U;oTW8~ap6t~UXHjE|o;svqoS{2CCnmc9khXr#-1ec_+E+)?6p`LCdQyVceF zb?@HK!1~il29P+0bQ;ZMF!%2#Yilv<>)?6F#s)Zt?CuU}6zyxfIep_s186r5O;HhK zdmB6t7lxR-cfs>e&%>;)qS-8FZ4IpLFKhsabk%D8O+f#(YpaO-))5dz2_y_L)hZf>xO^U4so=6%Gz_to3h{{(zFk=X)p`>E zAkKAeQ#uX1yC8z*^O!q#(C%)urw2PfkLL4e5MUP;aL11$o10&kM@C*~0%B{YI|2ZF zKY^$wffpB(>oE{%p%B~o zd3Cv5!xaj#otsm4CfP~X`9k&200000 LNkvXXu0mjf(V4gx literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_mysql-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_mysql-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a5d50f14f2f62ee4e84b0a30f38f5c6785ad5d36 GIT binary patch literal 703 zcmV;w0zmzVP)^I;1fAh_k*@6H1 z*AlB)^tLm2P(d~n%CV$)cetf{P+h6{r>~BticeLKLpRQ4Fxv6+;NYwCN;aX?WEVTFZv0aV2OEZy_rSTNDKV9Pv%k zA1|lWk)TQm0nnh$&{R6Xz3^tFT>d)Q0#vIh#taP;fmqPgZSE*LJrR1M8`cH@XeEPzn_B@CKIPRO|MXX}=fZd)MJ|uOV!s1ml->A_SV%l``ARJ&ctIfx4|Lp4B zalT|qIk#?<;YW?@To#unH$#&E-LkO%+(002ovPDHLkV1hseL5=_b literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_mysql_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_mysql_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0240810bc7070792279ddfcb9e1e733d50f9f3dc GIT binary patch literal 845 zcmV-T1G4;yP)o!5K@s+P&NJEzJUU={ zw4+HxH_U}II~z`ZxOL8CqEid)62R2Ru?V)^>IE={Ph>M#RZUGLI*++_U(_xE7@t2T zYEBjRU0?Pyk+ON~nJke|9w|CCK|U@v+fLg?q+->_8@{;;Kzsj>n0yCfe~M5Aa+91n zOaB*34>B!@==S;JEtYBwK-I(mL`~~dqO%s@%)+vB?w{b$V9nA+M_Ia@47~Q!Z1_mD z@6^I~udZCPMDLp!(Xn{Lx4)NGV04cP-CH(sxUlNbjttYQeiky;+kUm#74kE@?=Dvt z19VQ5AMAZ4MZnsaEh@hO9~2u|7IOB%32vyV+TlX7jHaAJLG(G4AW@o#!%KSqzZd7>l?7d*AC@1+I7jf|jyogtnWNE{Fv*zu+)5?~c$a zG*mg~1$gu63}cIa0v7x_A9Rg3KEF;fW7B)9oawaf23RIP;sw}Ukt3bA_$<1LUtlrg zuHy5TR{1)fV*E~kftk=A*zz9SPIMfwEZgq|D(HuqaJ((zOxm_7xsHDRD;yn7`dtx{qzwa&T{z6{{XP5qXU%$bNlZB Xxv~M}V+atY00000NkvXXu0mjf$t{kW literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_node-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_node-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2b2e4de2770cf30d63113ba92b3026c6a325cf0b GIT binary patch literal 1018 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 ByIKGM literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_sass-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_light_sass-24.png new file mode 100644 index 0000000000000000000000000000000000000000..46c7183f8986f0279adc4efe6a5981b919357a16 GIT binary patch literal 903 zcmV;219<$2P)8W(g3AB`-6ql;cVJizJboiqL2x`5*GnKG0G(F{co2q~+7+LmUXS7C z6_JRL%%rgFczbH;LNd#{aN1J@6`#q&V^oWi_*H+dN3|s9-{c*ud%5eajr0vZiJMJR zo2;N*n^ikElIgjPMADnT1IKgc$Su#IXX`^``n&jJ-yzCBp96C(aVuey?CQXum;&K$ zV6?dd0oO}39&JVcj;BzL&9AwAl#iW_lY0*B_x4gL6cNC2+!tFquxxAgKw0$2Dy*c- z$q)8pv_?4=x*h_MT--_Tz@v=sA0?~r8Ww*19>B0m?YXGwM_u(u^ z;dOVQYXRrJILMXre@Ef&0y|jIR6rsZ$;83qEZ^}o-t8Uu#WJNsC!0YVcq>ddJp&!d zxK^rA*fYY?7ak_le@9Dl0D+559fV;JoBPEwg*_vzeDfKmPfrk5Yv@|Q`1eOKK^O-c zrq*=-RcI=p15FreEURJE>&mj^xd$kY{DPZJGydIC>^6_=eao0UJQl|qeL!+K9gj#T z3Y?CPy6+bOLU zK~zYI?UikaR8<_tf9KqLXYRc0y1TgOBr419Xd99mt5hZnVUQ68g^C4HSZPsGkc1gD zAf{jXP?2c~;fDyC>O-wX8{`uCg0ZC~LAs;6wz=%MvorfXcjn%6`Y=1QGw$Hqm%j9e z1LywlbDrlp59izq|JQ$A;#L-&eQFhCzQbKiT~3$n9e=Iq zE-?YLQr{wl2N>l7)5j5jWY<}u+aJQ7S4Va*L+Zr2>Zz8MFuafii0<8Z1;MFV03l2B zTxy)e{!SJ>c^~1H`PU@}5HM7_2SVv1T8Mkf0ftqvA+m!R68k$@`uZbGTu9d)44d3%zO8!EImMuz*I3?&m(<8(i41 zL--6iaq&vUB`d2@E%cTm`3(yc>z8dGt`@pI35p^@7ViA{JBCu>S%n4O)e<)uY@10000x?Lt>gWo%36rsw7yp67S|KR6fX z0RQV>7ZJ{(zP9os1VLs6PG*PIn$96ksNp@W$07+3ZD3hxK+sDx0SH|{3HWDOKnef^ zfsWj|&YJa1e_I9X+xrP#-mBQjVTtO129`bN+rFbMRCS4>o8pm7$svhO7{zt1F~4v> z0ms9pfWWnY`D?3AZ^q3B`s2Q=S%c%`rTX*@e8^YiEA4wT`1~l4Bnh!N5i~sslhp;0 zkh?X4w2U0=RZ8Jx7|7Go(b(94C6jaO1Xkk*RAxVcIQj?rKkfklFfPvqjto~|SY}{% z?|{?Ifl!={xVSjbpKV(s(CN*Hm#Lu8Xd%cOM{(VC6crVrchrcvMf=|g%r+P9KAk~X z*$Ge-h1l3w06=YREx3^sZatg=j>bY4|e4T(gG!Lh~g1e4P?h(sbNmC8-$JRT1T3Gvv@kAZc?%?(N5Wm)h^ z1Ju$%jEszIn48UJbltAU^PX-TOmo7rV&?}fV4NNpXGU?pa2a)n9nf|+pt-r(kD=)a zG?jnB*bO^cGz+jU>5GB&ZxNTPbGzMn>jiIVOTrnIqn)#D_2Icv=|ao!CqL%vJPkqs z2&q-3Fw>SSm+z7V_2HzXBxUJZ9a<{#cW-ba8n3@;keZqbnw|vT)Pako768Dsk!0KZ zBD(Is;++omME!7H)prRn>aQ_E?j-Yz2Nl{vm{9hYI0pomrpql42*NW v-|6KX?RqiyCdlldizAmyGZYF%#GlQdRYvn_TAP8S00000NkvXXu0mjfH#c`y literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_linux_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_linux_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..34db943e9f7adb075882e250f201c4ef59915fc7 GIT binary patch literal 944 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 FV1l{TOT+*G literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_macos_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_macos_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2beef8dd1f4e7c8e02d3944926e03c54ce3f2ef1 GIT binary patch literal 839 zcmV-N1GxN&P)3{f1$e`jWPw>PYyLZhwLQbN&)x=V{x+!HA(k%-{IgOG@ZKG90VC0;y< zMBh{+Aug4mO9bJ8Xwo9Kt5F)=x^!FJcDJ)T$HOYt&Th9}y!ety=FI>5f4_51&g8&< z{cDN8X{xAiULX~@IDWA5=vYziLv5(xrL|Ip=JP@_H7-CJM}VON9HU*EK@5c7K341~ z`O{P3bOi?9BLL-h+?lFol*OMJJAWH}IegDm-qX>Z+||}HJY)8J4*(Lw6kySe94R@T z_`uGf{erlr7d6tP6E8+uAmCW=ZcraLK%{w12 zyZQlGziBH6Do?U@+YUr}CID%DUzzc^nq+^^&z@gr*Psr;ig?L z0j&dq?gk1j>_OO4@y=a`-$5O7_>nRtMFyOn&q6@Y*tY3mL0s?*P{Y4do#>Y!=Q zPe9c&hx?GzwO&EyMHn<;1CIXLXj23^X%;M58QoV}UV4E{Gr*u1POX$`=4X9Yth%o2 zY@a`)y0x-?r#@_CFtTVg50;;ha>Y-U1G-gOg_b<+p%@*DCT)p2p&-eV!Iq%^B z|MjoM*78$JpLw4kFhe>IF^mqL-}_q3H2lD|rz$qbOhhP6=VKgw05S*U`POv-6bokq zgS~r>{_1JHI7~}*5}@_M^KzCWwxt6Q;Y@s$pvA+NhR>z&#FYe~9I+aN%jx$(iB)I9 zXG#g_r~h1k9guO8e@8?Fr^~qkI%9iQ0l{DZ1@2eaq?*G{NjP0tFScb3z&VHH8p83$ zFs8i>zD3Y{g!N>t2VUD-7!6^lasYtgiCaHle%OC6D}Wzf4_Yei5Mya(dp;y>jTOkk zE%GnSL(fOhP_q22eV4WIdQCl$BN6yKP83JKpuNh2%A)0P_X2^fFUuT2L~uE**sA!1 zhK(WU^bCsFc_-?Pok1!p%nT3;g`n{ap>tah`O1}{i5hjPp;fc^i;@ITisE}&miH%) zaYO{o>|;}hLC_+F#-=z7YEYpDpB|6-W^61yqmr`@0ps`AINS()Zr4l=M zY=>C)Zkk6wyU58wB;_(yo)VJB4^hemnyUpE?}sO+=BSDYpue_A+Jem;B!g6CF(O1@Vvj5f*<*Dl<5vx7G>cFuD#MQ7>hL=1kcc9tb zy}edLJ>C$X{NRY(gvB(o!c^b2c~=Eq$ecYJn+f+~{O)Y3te^X>-@JUGcDVom002ov JPDHLkV1k*JS1SMj literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mariadb_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mariadb_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..63056d43a92c37a2b90b93837c2b4c6c57c73f19 GIT binary patch literal 847 zcmV-V1F-ywP)?=wm!`Ko`z{wX4*v;5)~8_kxCh9nRj^+L`gxU&_z(t zMPiZC`~ZmvB8wt1F%TLmnSyS^Z(5lj)Mk3z-lvOlZaGKlMK}F#&ikD6e}DhyJv`?C z|Mjm$%h^<7Fz;c(dwqgQyerF%YEds0e!QMlP|OdAq4yae<#hl{4~S7rCjgp*zbZQ! zv;R*|NwsNaZtW3p>5(N|rII;5J7b)6tH!R>m@X|aF{IZ3Ka!Emxas>09;6&%_-x4Q zDD_05CWbOklw|S87aYO9jtOj{7||lZYqg(%+U} z7pB5x%`eNB01hxS`uYb$kXVpQSL;kE(uua^@cxwDW>ZF6E4nuXQF7>NLW|ikE^cH; zcK{e!DctFF;#)_JCO=J;oS*|V1pYot#R5bO!i$v#^cWkFmpl!B6+j@o=e@O!Ps$Af z07%mFmB2q+t;h=Lf?E8lTRv$K5ua)X0098gY<~^L%;Jc}H90YkH6xFaq?;d$Nlm0{ zEdbzF-Znb~n*SE6C<+EFy|5bVk#0BOu-@r<_SMD+(#5*!`45fJ03d5ID6@pAy8~-& zM(Bg5a4?MEr(5W29THf#J#1kBsqu^*xa|#YpPIsSXDtfi>{z7%eEsFyCf8#p5f~KU z5m1^PW4UZF9TCLw?i(D^DW=*hFXp8BozO8PojqUpvjnp?fcyhB(2m)m)&>BXkpcyEie+$;w=km} zc1I@qtEN3p;I5?2;!IHn-O-2n(MPM4x0@UfpMDS*&~?w|?%R}cuKa$s=KS5}S@XaT zN`OQxSO%j%LYeb;Jwa%CQHnm4izjBJrE_?;0$o+s1*WZqQM)(ejYHB4qgAWdP)ElQEYpFDC zyLd5TmNl>|en1F$>gT!)(9?bM2vV$>F1*>3b}wtXw)*ev*&Y9_N(O#i zl}{jvg4{eEprdh^eI4getRh#ETU&wFiV1~eYjBY5wFB3V_k|ZJ(}hhXktuNRMU*c6 z)|BT8Hv5{-uq7~vrk3heO%FK&XsJA+1J6mnsAow*wy^+QKBzZWo;;87yas(&@>L@5~EHpYiBa{2#+%VBM zcS(M2!OW-(q+^`U^xg$<1Ta0b2+SMDuch$oDFD31&ukmJK(Z!8YhoDlm1M|TKIw4; zNEPNXUr+L-RL9D?d#J)<-TOhZ+H4l&MzPSi6xz##=BpA=Y{o{AG=u2EWMN^Hmds1C zt|k=A;+?mR(T1gE9!CI)!iceyZzT^Bh55+@uNoIKcj7JIgok)=M}@}`0N{3ZJ(_KD z|3fE+=|VS6a+;6J;XRCdgBA6T|DuG^&Z;L@xuY!s-Az$-@zmc%s=ne;PXUl}TnLev z2~bjW9{JYR+D6HnS3M;|ZLrh6;3tHzfBpM~Wfhz@KdEPtNbQOC{oMywp46)jnMu9T zW09-vn>*!S+@a%328idMtJ#;nClA6a+N$yYK{0jX#(oXpZzlK-ZdK>Y@j4ta00000 LNkvXXu0mjf*NbhT literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_maven_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_maven_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4a50e43871eaf122e5412d638d61354b9c049867 GIT binary patch literal 910 zcmV;919AL`P)*l!ukV1FG-nF@4w4c-N=VFHnS@>~jEJ;k(~}+W0hcpZ$-Lfa~n* zk@c=xeDun=Huf9OzhfgPLD-#5Pf zwtLu+lMknRftf;vOJ&ykFfn+liW<|f^%l}dGcw!G%z_OOPY`$d8QOY~*~*5z{47A3oGS(}$wp=`SzNf*#GKv7 z1Ls=qwCv$=P2P8x3;6s*AOhASfygYkEL%zDuKtec@UF28ug{wE*ISwTmof-jHU~r+ zGO{4C7!5Z!m!8!3?b+Y79h=mm2|P`!YNI##t8F@3KF}X*&HJ1F k2ij}fwyj$OD5itI07`Tj02RulR{#J207*qoM6N<$g0By)0RR91 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_memcached-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_memcached-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a21d8f9178b7efb6750ed67aae044cf38bd7baa1 GIT binary patch literal 949 zcmV;m14{gfP)^fdjfw6o85Wx-g#vECM2D{HOg0kOwI{tjk97RmN&_&J+Dw}cmJ^1=6>Y#(+<~kE zQ$gUn?m~@kPFFd=0Pnn$6CM2|EVnVu7_`iJc;VplxKfSOO9s z&^)(;*N+@$CAmUsG08sNL*T_8mg8|=?(XA+zn=zar%+haOhr?sqF3aMZRfSlW2mZ% z$L-)WIyrZ0^k*ZuD1A z;_(N#Fm?ecB`O9R%L~Z$HKNHBg>{W=ex2}dvt*5I9LoJF>P%e8BYg(i2>}F-5UhB$vyft!n_RSyg_# z6ybqwl4fTknx3V;6%?EJ>5-#Hca~HjB}+nx*?(fBnsS^O|MEe%>a5z|vR}+E$4v2f zocUOcoRQa8ZY4CgtI0B*nMu=PNt-Pj3#yVWR5T9;2M0}xNg3_v>}U^%!$#UzHCNZx ztp5D{#UU-Jy{lQZCr3s`Mjz|ys?Kez>7Dxgi%%;aIKg1h*4El~RyP|@+ZwC&%j1z@ zvoOCoG&HpFm&Y3j*k?nbG;DFA1pQiDn985jHm X*{wk+YKP9!00000NkvXXu0mjf*-5*| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_memcached_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_memcached_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3e6759813d4b8e5ecd84d9ec35deac6b4bed0a72 GIT binary patch literal 1072 zcmV-01kd}4P)|L^JP>7gH?e9F>~5jGu#j%68J*rppJicXv}G=QR#v2XU zf{}|cA$l-E zn>X)yp7Z~`=l{OveSrVtzYemMm+JeQKcgy6r>fD)INGqMF2HV9{LJ9_97ymv=c}n2~-~gwx0I+EQE3qF_Py>Mb=Nxq>*XBR%Z)&8JI9BSDlg(dIN{dnfDCnWZ z5!v;9O&x3VDkVEt`A?rXo;?kp}YwpcCJUjqKX`HYY3Hc))ITubU7HNOW!-&vaO z2Vex~osGn)L>YY-_MCdfoptHg%i~X_xtL`kH~&c4i(E(N?NAtz0O2*I+Ihx5^*oP|KJ$4E@oep-J9eXXiaqK`j(#>W>qfzK|IuH#5Lyig4YUDyo zOG}XPlzt!)f@e;{Gm8&NIAq%oqrtccV_CS~s7B$gT@YeXa4ZK|kx2(f`sfi z5AM50Ox(V@^1T1nHF&@I0ymT3Spgvg1(hd}Uv>mDLKv#5;IPvUYu0n<^7UghEWZihYi3!5s2lGC;TQ}m zqwo#;Aj>iYL4cSL0RVAMhkM;#Sh6{6&&vihB3?L}gEW)&H%Cp)wxsL2zOT89Qsiy~ zk~$-~S*kg$sHli!re`prPzYmwKjMff14EC+-Fr*4<61TPRek(T!r`-3;Y}60DkjA>t0I$00000GU3MXU+{Ff$pl$t0Wh>;Vy!rcqK+@vhk6cz2BJ0RR}fPI_hrPg4`wR0=DT!ChO6 zWf+uty(pV)9RQ_pxLjmnF_NJW-V-NCN23_J&bGscNxgW%=Eg>B#l;l4-78@K4G_V~ zW^q+k^7r&K@v$)~&z&O`4l^H#u>H&#Vk0AzA31`UCL4F{LMtjN005ZjG?`e8E&KM7 z426h|j8NUyh8_%(7$0Y6Yb!7B-Q%lMr$|Smcn%!ET~p&)GXSM9=jTaIO;K^|7>S7q zW*|FqEDWXc=n9Ct5=!q?`Oxwi&%z{Svvq&h{q}Rco55Cc6gYYjt<_8j`Hf^LmGN} znHe5tE)d|G?rws8eQaxPz9AxCt{DKJ2ZK1v%0MYz`Tf-O^bmXen8^M6G~T+!^n(Y? z1p?G|brBjIybgqO?$o8ax*rs{6}CarEeSn%(|O!T*7XYzE4K)4*SV6X*qw1DAoHfFFU+lu~~d{9G%g z-iU|?7zMrs#(`gfp+(3>U_dEVU8r|{CygRfA|m}F(k3E5i%3L7l!$oOWu6Ceh=^y= cxGF#Y55U+=Ho`_6oB#j-07*qoM6N<$f|%o(YXATM literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_meteor_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_meteor_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..cfa29650d97acc984ab44cfffde2a44e3300922b GIT binary patch literal 999 zcmVva~LhF1yR@GBeME3tcFXpa(C$%Qr81 z@BjPWKQnLO|M;&%{z=o!@bFiNe7tLs*ZY3>!i9vnXYupr>k;`9@T2-YB84p_5unYs zEE8bQ05Oa&6#T&N;fohPc;N!k=qS*(o^JxoMx$Q??>tu%P~9Y;&{cY@n~g?)+U5># zm3M3cD0Bkv0r3(*Je8G(lgl|}Ws9ZLPQAzA@N#N)5CQl&Xt!Qrc=VP&DkKb>a)zuY+g@v4W zy@uMhyKbYZjtfLoWZZU~mbS66xao1-N3KY3$&z)eddmTJHVdf~{`PjV_wR$(%S$aS ztj^7`uc3jpbQ*OW5J{nWx4hT*GoAhgSl(%5MDX~0*qIE4#YIA0UD(UZIQcwP9UT-O zKc+Gq#@M$HGZ-8Y!`NiI(Rumu8nE5lKxuB&aj0l&Vr^-O{KJRT_V!YI@`PeKP3^H` z%&=_cMClHAQHvsCo6M(ZLK?K*bD5O$UA31`RNRYjEkA_pHSdGUiB$Mnv zae}AUuk&(GPluIE5;}A!ya5Pby7UJkle^hu_EGxHf^UBZ=*{Lb4 zc$~(;LDJW*5sXB}RQ0tDfaCG}up0oNkW6CM)BupVb&ICKL2}d6WF{wRK6j4H&6|Hi zPM_x4jT@f48qUg!ifKxyyW2=zy=n&!9yCHnj~dA< zSDf0O9wQKm%p0cp`kwy>s#*&)0UrV}zz2)~eZUa#3D6G&MdY`=uWON~s#*`+1-gM5 z;2YrA5~K?FPDI|`tM=AO-c{8~RsB{~KULK+Rb5b3QPo%fmG~BrS5@mv!Y{1vzX0O~ Va@=|F&q)9P002ovPDHLkV1hI0)!_gD literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_middleware-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_middleware-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ba09f19f738093bfc9e6054e8ebf7dc88c968910 GIT binary patch literal 719 zcmV;=0xI0}sdb+Ysgs%LijEL3#)as=ydCXOa~psNL4bPl0hQ}IYE%T>Wv`2Zoc27UG&m?U6xY8DIttMc14+2m(%!vu03vtt0u zTCmo3pFJac?hL>PMqM>3hQhl_S0hi6`wevj$aqBTi7z7=9xE-h2;!yzL-G~@F!~BY zBHy>6h*)V*WLY=1hs%k0AeE{87VxEZ{D9hAp_u~9nw)7sng0U-SUPg)9+Sn8plY|9 z<{}ftbR_{RhX+q_#z+2Q^BA3NRV|a(gUg}egqYR}P7Q)Zj9)D41fM!C`?CU@F%RwI zLVW2%b8PZVF>To+`hIYz(vW$3!+g_QhHF2QDMYgfNGP-mBlvV$WWM=ODJ{Ng(ZYDE%Y}|O@ zTby(MkMkY)&V~QuzYf_BDc14DCy04FFDT$PM!MRj>@AD8f3_Pj9|B4)} z))QJ(lYdnB^Pr6pC}^rB@ohha%?(Q?n+P>G8~7fW-wasK$1%wi=22o(;sC1d;^{Qd zw;>Wp4c;dF*2^s37|w|?N}SBx1`uPe7?C$NGAKB5n8f9qgkE`xM09|7Z`AkQIaC3% zj)5^=6tO+P$|bJu&yyPX0|{6xLNp{oX-WnEEPpIwinOG7w6k1^TYo?qS5 zs6-MIdh!5$^NMx$`~d7(kE`Y%J1U+GtmMY?lrwU7N4l!~L8h9wGn_PqL3d?cZ|i>m zFkbiW*W%a>Rw8+!e7N^wE?i!N$(obLl&JUDp#{^2_m}Lu^zosIhSo7Vo*c`97_<@9 zvaK83seLcxT5{8?-m9$N#$(S8UV1GTcH1MGsXSGjcGUA_zn1?Zbm?5Ue*v324=PVr R%vk^c002ovPDHLkV1n3thUEYN literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_minikube-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_minikube-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a82fdde3ea80d01301ab08569d634df810c9f839 GIT binary patch literal 974 zcmV;<12O!GP)%{DcrZ6qQ))=yM|0LO+nVs30-_Jv0+9a|~ym;}Q9`AkM z`|x}3$L|OK+kb81-xR(0_4%i@SUlcIqjWBxoqY0=vESyCv$K|v;!`Ckb^+Mpd&zmSMDZQH_;6Bnv67@qKlRG|53l^5h(=jN{V3J#(Aj0ql0Y*)7{LMtE{dh zXkIU1XFZ&vyMI7)rH6LYB-OW0q2%*KUxD#r4j}~N#XLXe%3P~d@G1#vH*+{e7dzeB z8=&o)s92CYTIF~l$3%Y-OV_vZsV;-(4)=3BpXL10GE2EC_22T?=@0)v+r1Wsi z$Q# z1jtB3GbHkQ8u3^_5W~5P2D7)@h)AFmyn7}@Ix+5u4yBEF<3@Jt4eAJpS_X-{N3CL! zx{^WnG>D)vz6QFY`$~q@=c|}^Y`W*tgn!zIP{Zi2A!FRpsRgs+4rHuj*loIwt)c}2 zea)aX>=Bj%kQyj~v?TtpOK`A-xopwS2P6(Q=t@NE6bfd?6If0_eKAY%NS!;rj(^O> zneV}INh88|5Hah}@AxRdSw3bs8CT?@1CqbNv zNd43Ua%0M=xgKOPX8lAB!;Bg7o2)MOk{!8wY1a-+Vf+%Q=-K;YiFAwl&FrMru$Hr9 z{(%PSZD}a9@ZMJvCnZ{-xAUg^R`urtBX%bE)v U>_gO_#4ab$7mnR0sj-DYD_4h zP&#t6iHv%qGv*!hTY;XNKi&8F))e*%7@b})ty=FX6?0DLxI6PgatKWvnLFM0;kNi* w0RT)-Yh&e;>6D$>Ri|}@?aQYMjh*qo08Ncc&|<~E0000007*qoM6N<$f{m)vS^xk5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_minikube_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_minikube_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e856a64f1c9975f88cec58bcd5d2e8a111b69602 GIT binary patch literal 1112 zcmV-e1gHCnP)Fd zpDhLufuUZTi4leEs2zTu9nVyTB-7!7@e7tn39q&_*Zwre*($pE{-19vt=1XEx5rv6 z-=Nxj? z`%c7B-g^(~vB{(bMR_2kD6<4LQ}Dhd?0$dynKX@eucU0~MeGMgO(vtcDGc)9$&b6na4PQ9y1| zk*)~n%P5L2r?93p1Tfw_29}VxoMLp#Fp<6(iS{JUDOerg8||*y-W|~ZhZ-AQ z;KE}W1e$0ZiW_ohPhpMO6HP6aTzC_o(2FQ zJl0K#l%eOkLyhHNWi7IGF7b|HirSOdBhz;@ayv%y$5NcT5xlA#MXp0!6!!&A%oM=8j}0VrxOM&}jdn@6C@Wy7X`-@78L zUhlQfo&i8xL+!1PIx<_eNd2RbRB6ay#$KE7W5cVe{E}P9c4G@V|L|8578||GP3QN2{9l!{vwO_@5L2Kx?aR7#9Cz)hs-uHc;dH*B>|M9OOe-l)^ zF?CNwZbtbS#r3OC=RR6TC4XC(=?w|)8gPLk!g?z+dEkQ4$^kgCfR^A61{e6YhIei9 z*?g_pUMx)C0v_+5TLg-e)Auo4ic~O+Hg>9))T?4)y2UIoV4BXY85l-@iD>=|;8BZrkh$f$G_!}OS zr>;DY6i7-KOTG_FLagQj3AUwlPDKT+=`1Ck{-dtV&-mSO??)j!|Yz8PY}${D*3`9*%6XGWrEVsRMx@T3fG; zsF%Q6<8|-tTHi|SIFxQ*&e^^i5hQV#-DrZ8Z5HLx!Y+U*OdKn_m0`C$xGeMY;V&Pj V*_q1w<6Hm$002ovPDHLkV1g94MNI$z literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mjml_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mjml_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0720060cb95a12b0d3b072de420249a200e38330 GIT binary patch literal 866 zcmV-o1D*VdP)tw1SgFvMqNWLIqD#dK7f;4RJs3k`yl~*C2UwI+ zXf-h&NVuqp2_7XJXi_*3V>C1vjl@W-S}JH-U0Svsrp1dF-(~VL z-}n7~-^_czAN(Kxb;!Rdx^nR7VMO=Ff|B;d{*jU2o%<#~Fy4)XZv!661R~W|ggyxj zgcTfs`xX!rzNO%Se$zjG_~lgw@}pzGz@5BB;A(#KIIts5Kq1$Z>bjaAJs$ztu6HFZ z0*XEZ@*FT5qj978GzyPJywBd9M17)C|Jb|Rnr@}K_l5ncniELeQ&RMc^k-8aDag%z zubvjwR~%d21cSz%AZNdv4jbJa+)s8Dog-O1FJyAsziw!-IiZIAVcqr(ygxGQ z00?$ckw}45;cwhRk#biDVWtg$ba@^p^bxfY0>Mi*ktPvT9sy<>9UK_%#)NaMn3U8) zfu2j#fKpF7%;laYQ~869i@&VdiNa!ACEaHL`rkV^kMQj(_r=={D3Az3lD>~yEv!in zAh5|#RkxYt)?{)e$lu(FbsDQu%X-wZ9)9~nsF;<|)g6fWF_ZBxFOA2q?~D!_%MUAo ziCTzLE>nBJTOu~~fJD6(z9J29Bq9 z@X4S^Xu@3Yho5{GTj;;OJ11hlV(nA6YOL(68_fz_XyUJ>E6x+~g`z|2AO}dP(IKO> zsVw1pYp(5!{aZ%u8HDwW%?)dvvnpl+m~Xnf=+=6s*SsO(&Vmk1-ub$C-Oii_*+dyW^%!ztuVC{hjwYADr{TfBkET ztxRgEt2iQ1N;WmAvi(qHeVZ0-@}{QaRxu~;B4y^LMqS(hq6fsy+Ac`Q1Q2ll;FnblV$LAKLwe3T=XxM9z zlcq)jG+pjQaBIEffuQ8+t02J;GH){pJHz%`PE|+Q=Fg`8+ZdxV7K%1JM z&oq5R3rjx%*G>*ki+V4<_-jEfZ&Akfd!PX8bBhshI}YV&R)l;n|y{h}idl z#*>Z|0D6XPE91Hpv!?IBVT<}#kxIz#F%3vhF>M9F7AvORZug?;S=p)40a6l_5s2cU zw-Nk!QNCyGb-G8vD5F$QalPO2k-f6>C#+5!Lyw=2C-0fd0!0u^_6n1;?| z%6EI%mp8BypIJztrfClVX~_zuh1yUAKr<}w!&><0Mv$Uh&DznU-wB44tn)R+WF#+4 z6=cj#dwsESeI7@~uZ0+S8QMkN&>LV21?O=2$x;LH60onoQ+cWNdE@Qnesnhnv@|z% zsX~+i?lqy$NKv&qIc%|HF6%(~DW@uy@`V%=t<4R6K*Wdj0~Ltu;lot|KL7v#07*qo IM6N<$f<PpFG=x+onrPUX$bvu< z60{IVj0-o0218ho5F>E`A{4a~v;q|cOdy3BXr;ya=mTcvmfM-$dsyg{cBY*=Y~1)? z-E+SG56#k+0DJ7~Y6Gs#2TGF`ddm~$O_1OkJtg#=YJ`>MTvJ=QY zAXHJaQ4~q@j+(|@&1syot>ek>X#v;IZ!LEcddqC)KVOYLe5z~c^_BJc6b0M}42RBa z-trp5B^FD4C!0D@=cA$ARZ(6Vz6D3HaTNM&i7-F3O85`?xh6AZEGnxNM63 zCb4lh@3mI|@Wf*UmjSd%2V0J2`XfzX?W%_WIPzT{wym>b(IuLy&(lzGfg;~+KJ8ct zKv~H=)-@ImLdrY{o!R!XLaUoCBx>2N9UotP*BqOe4^Un_9;q)gqrZ>1J(qgDMF1k= zY+7HsZ%sp>{gH;<7qcEX&o!@aaFDM7-%NE8wWagKv5zKCo^8OlCy#aOB5QzPN~sSe yEmO_m0Y_#MP0g>A=n}6LC4Y6EJbDFCshoRUk|0j&ty%;C0000G zK~zYI?UhYzR8XF#%G8#A42(sD7FzKOfq)T7h+!dVqKIi?3>%ja6R0u4 z1QHWh5)u;^niy9YtT8U?0*yMB&@@3~5N6VpU>jNsOgp7?K02Lw@7?Qyw4GtdwByE& z|J^zNbI$*K+~mUl_^%=UP151B(bEF)cBL4pbobZ2`(tLc#ozekQX{t83)&Av1tg1k z4Q;>+N@x#2)dIp+CpGwiG1Aiq`_3FGlr(TQdKCC_(Jm1<@^SP-4ZAA|XxIZ_nTFBU zzUjA~a|21oRjR0kR?th9`B3uH2o6-708OMZ!1GTwMlv}kviuzefN)f7B zk!4B_Y+p}9&4G#MtOWy6BJ`SInTwb3GQVI72~R&Amlf( z9ZfQABLyfe5aPk{AB9y<5cJh>XvcasH`kKMmmX4UXbG+1xsCPsy;gM-n1*EAh7etm zdXlLer(W-5WO9yAf4B)iz+Z)lwEovrvi%Vne#bc92!tMh$6|Jm=amfXGbm7_ff+86D_T!Alsy~XX> z9M87ZleZmwUW+R?XZR&H&G2N3^OwhQT}4-9E!n(-Wf=T)?Jh$%?)et-cK?bia$HR` zKFuGavmD+XW;UCk;4B|Bn|C=sIKja1G~GMG{5_MyeL$D5NC*-dF}i5G3O~?PV@lVQ z*ni$i>DG`}N+G1uSX!|Fc>Nw}r{*0!ayzZo)R+jNEvrng5##pSlPVV2g-1i9@MZ`YdMF|G2yKAOl#8@L45z{M=q|{ zTJjhWD`U_KO~1GB*wE^Jw70%(!M4wIZm8R`u_53H#Jm0PzZhTQ-@LFD#JQKZtqTOa z=BOp*$?tmiPOYkTF}9rgIb4ZvfA4bZ!@hq2++{G9ESsDO00000NkvXXu0mjf42ZKc literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_model_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_model_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..0f9b2a2dc65002160793ce57c2291e4d9763a45d GIT binary patch literal 1056 zcmV+*1mF9KP)Fg$^o7BzPq!F8JlhzAbtZ9Q0=|f*i#e|AQ1bq>Ns$e5( z3Kldz2_>&0_)sV!u1b@LQj0Vgt57j*E@BdENMlGgmrXi*-<>%=Y~9SJYqY-j;vWX) z%=bV4|98G~&NuKs{%eSTGwIF9Bq`S?zYk-}rd4MnD%}NH`}Tvw^Y) zXih764dAv76jhu6X#n59+tGMrW4t>u*#k8HIW95i{$#2bLCfYAazB8ou&wv}Z&#K~ zYsr?_4#G~5#X;!`gxm`}0!;tq3SfS#Pc!PP^!jwp&Tp@Dwfw%Ci7l9xd6VLI^2?Pd z(bLg*PdV{d&tBfu9M%P$la3s5%-D~h1D zLL*eE6VF(59S(D}wVvLA2>|XeT(s?~AynnY%-GZiT&?qFmX);20LQ+bj7)wfq17pF zCbR6>?j=~^2H-~8qQX_tOGL9tz^o3xzNEeKnOIy)d@;L^0#Gqb~=A z;BlwHbkyW@-_OL77WdXwVo8avDU4h<`Fdo5U*=5C3{In|3gM8StR+zd3{9+XaXf0I zGr9iaMN<{4-jg5ve0w_evdR$mK>j5m8z;r zRa1)1sH9c&bT$P_(trBwVNhR6r1JX`>A2tTRR=5F>Z1a30(p7aOx{4EFPrIhKs6J_ zko4FGBw`K0sK`@#DQtFIS!285<%KX`aIddrGNHEdnQs#E_Z5o zU1ihV)xNwyywdl2+gLIF)JM%APCwSN&FAxI*K|cW@mbe_=q8Hg(bRq6uFc}%*S-yH a{PqWan_TqRp#m%b0000v z?#cO`|NlJaImvx8u9xL21xy*8x!o@>;nfKteT=`%-rhCvTvi{Lc>+=@%D^EJu#qI{VbqT&}MN zAy{q>prkTeO@*EBVe9Uqx}kwRem{j43x)5#P43X(s(i))Ss^d^GoL{`&JE?|ObiV0 zL0K8GP>78d3%YOw>w!tsx!BqQvO?!5_Uxndr`;&YC;&yZwLIR}MKIgbZpULH~r zWStFB)^rN%fl0E51Dhd(S7e*&LL%_lKP8r3&ZezL`MJA`^W)=4P2-cA8s;NWqFX9h zc({U`v01DiPGb7S@DOl3{S`?;IR9Q^+2sISZg`NXFApXbFwjLY$;oMY)p5EZ|(} zE>8b>6#rxg*1Q_3OP^=cKiw=h54sodd^AP)LWGk0Z=`Cg`UAc+Lq30Tm~XwWQJ}xd zQ1cL5a&s6y{Vcw~zzXivTfZ{4*Tc>SZsF@*2jL$>eA9Qa8`>&Ub`XyE(JLzMfSdi} z`#E{xBu3T1m56@@7y2WD(Wv5bdGUCHghDZdl(`aYX@^`_Qpd5K#~Abt((_0UjTMcn zavdG@G&SAE^z;G~6EC3G>wtgFKtNC;rk85HYBmq~dN!L4W&m7X7yZBWQ*qN1^C13O z;tb{uw$|3~H`?um05muE5sM{bz@_y6ffGAAI+5Iiz)P~=9eCyp?d_gx%Og|iflRF9C?xtYJ#|ZHx@CBOULeW})J3#EAP1gg-QfNQ3>{iwx zr_+v3cA{}Nis%L1KHA!TUzb-330hi;(?Nd&_MJDE7C~NH00000NkvXXu0mjfP|3(l literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_module_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_module_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f97fb9e640868391b921fc74d207e04ac47af522 GIT binary patch literal 1087 zcmV-F1i<@=P)D3pJZ-YM!E5mP3O^IwUGZB;u%tm!lD&9$p4ifX{jEK8PSBn0)C=*Y#h)L)^8ym0yU9L>p&#~sepe*gR$#Z#J-Q`8}^jj4P#?6xOaD~{_5s_Ju_H0NCzrebeRjsa&sjF@VTBfAK}7 zFUK6Y=GYw_^bb9bcAI9h4pqLk!N;*kZ7yEf(3EN_RnZ4ewWL& zwJ2SuJSmAGEr?2thvV_6va=ph(Z1dgDl>r}nN&bp1MFSS_uo{0MMUXi*~G< zzDLtg;oMkKC@AvP)UBwgbjlsFvM1pG8zyxD(*@)Iu;5e!hBQ;j_=guUOc zp`rEDDcqM^YB~5)HJML2IQ&Hxo!@uksqEYjdCrN0rVDXYD3x|=Vc)QyP(ug}-3^qU zDy8nXI?M(WeM22n40_uJ2@4CsKYRkQ2NE&vWS zAEKhA0<+1|JB71`{#j5^Lrcpw0CI8;Gdda^0s8KIALNsQft@HG2O5y}VziuAii*xn zFa-rq^1ghK5#9m)K9Ci_R&e|O?S&(7lS0?Bv)sSxLtrED3A*$kbr+Bf;tkw}{SaIN zMZZiI&L#5mQ!uEV=sboL6=2wk+wGr|)+`}#x$Jj>{szx=ZlTPf_1FLa002ovPDHLk FV1hmJ_+kJ6 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mongodb-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mongodb-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6733cefc7e3f4407e6ba18526bc0fbb89d873848 GIT binary patch literal 578 zcmV-I0=@l-P)DKDhhs3qL`ZLd0kAJPEhZYW3%g>R_9ePsd;m?86}Bs17*Q8=lC>IAm)Gzc!~fM1CoSWKpEJo+DyFGTKk#J zUuwrUf&2UG5kR9IuXtD(2N1eA`1Cuz`}A@?|x3Y{oefZ z<<9H8yoY+QzIyNF*5+b1md|B3(3#4q7w4n1Z?dte&p}q@nc6z#=tnm83n~}5n=xn+ Q8~^|S07*qoM6N<$g7H!W=Kufz literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mongodb_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mongodb_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a6627091cfc3445cf08b8dba016b3ef0834a50eb GIT binary patch literal 719 zcmV;=0xFN9UzN%qV1FnG46PHZCMYH!c#gpk<4oKfqnV2qU@3k~Yz* za8=aSO%_3J!p43r+gK#|BMT$ViE(rW-@B*9Ow)79iFpKV`oiUK&O7&f&N**!;lKX1 zl%GrSnZzYT&XvnCfne{ou94+HrNxJ)hoT}}1Z4yFQ7X5yvUH$`X(0emF~F$61%=qa zi?Qy@r+;Z6IXo&z?1#St5Pv#+110U{5puj>Bk^Qn%KODNPEat--p!XxAe}%L$U+&y zO2KN7mSS;nt<=WHNOe`jv8(Of003mhx#KHuQsw97!iyS41x$C;5u$k|GoY?4IqXGegQcrhmpbr0%D4%Dw}a*8bFKl2yp!X zjDSeq8Zl7tMF1t$8sKWr)i1y+KY*YW#2^?EFd#o^1aiF7#Z1LRKY+TLdPMR7F)F_v z0Z_|RgHxZ10PUJdKY)n67fS~VKUaYO1_Hs*?R?)J#gmEWAPtp5Rx@k%(&}PkqtxQ+C|-&xN__D{Igzf zOz)QLNBiscy*v_aed~=?{NR+6UE45$9o_QAz5}Hf4}C=wx zK~zYI?Uh|flVKFc|F7>pP1cqgO>|Ca6b>7?TDqXrm`H0;$g1sXQ5FchiJ+h&x(K2! zf`Y&Z1Va`KEV3c75?X2>D62+`u%_i~jOe1Ri`70(7iGA;w$F=h`d>Xf=bZoVIfv)r z0siY>iz%jPy~(njO);%mlgen~^@wAfSE#vGdxRfLMFt3H$eKvZIRJ$NV)BTMh*>mu z`dyBFnK?~H3oWkG0BVz2ffV18^&V(Jt60_x$b413@ZMZgg3wyhFpkhTi0(0|tJmp0s`Yl&!et_HeA7a0$ z8~sC0uq=zU$~xF>R?L13!f|&LMA@=jt{|4IA!mJ zfX^=t006Er4?6TZ1jC;(>Gc5sCZ=Ctc=Q2I_8kJl{QWuQ1qg=1s9m!fEX$^i#6J_j zw9k*8orcl?0N@^fiuTq`oPF1r2W>4IAQp*A1JqPkV|IRF+1QBt5%zR-lm<}N)gTxO zLnIJzVxDJH*s9wI9*->^5c~cELZJW`PaoqzQbfPI=qw)a{G|_VEgHn*3G6bobK-8# zBr0W696xG9eXYE3z}xq85Q{_@aNa>Yo`6g$;dIeINtcQ? v&I8OulVp!3=?W3?i~2J2(HA0#FaiBff+o&_f$^%x00000NkvXXu0mjfFTFR| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mysql_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_mysql_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4d57b89ce58199b08f74c2dca38255cd1640a593 GIT binary patch literal 846 zcmV-U1F`&xP)=eZB}GbRAfdTR0=u!M-9#59(v4uy z^rq+oN>dO*DlOB5iTE{#jkGXB3Ii?0th7*b=R955blb6`dDBh*oA>2;p7;4Z9~=(w zU;kQcIgg?<^P`9p6XaruL#w5%q{U-7MTs2U1XzT85DEeOJwR{BOC!Q;a>64^h3SZU zj4msW9CsIh_JlE5AtFN#K%i5O$r8hNeU|ZpG-h5d0ENgj1Qa>j!ZvB32~xw_(}#~E zqb{!*aGVxdP;{egDo(ef>ayuhgHoXwi`Ir|(~|b)RySKmif>o8kSNY26FJu0S!QZ? z>3|~^N6B(cL4w(0_qm)qRC=I%+7F$y}reY z$nX%TRLWTcv1E4un7H_u0{#6kF!X6b-?L^5lH>FM00x#K0Zj6IBS2GffZ(+O7#tpj z(o-SvwY_)+-S(~U;CT=bECFYFV%6t9=OeVh z)C8^5c&$`jT1u`3MMOLisod=o0u_u4RJ`oOO8~P8fzD0{R7ymOW&JXjqR&L$N;`J{ Y0@-E+keOT`{Qv*}07*qoM6N<$g3|GEaR2}S literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_next-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_next-24.png new file mode 100644 index 0000000000000000000000000000000000000000..16ccbb60e613b6399fed3c7ba421ba6fba5d8aae GIT binary patch literal 865 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 Ef@B54vj6}9 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nix_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nix_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..6501c222f109ad77e4f424b9e9c3a6b7ee17910c GIT binary patch literal 1055 zcmV+)1mOFLP)7!}2h)NTq5sH9m0KWYW5X*!LKoeVa~bTXM_-n@5RB&m~0jIA3t z{x_G)Isfy!=e&C#{ICC7@^4JZRL_edbgy1n-PLzs&w1l&i|^e3euFs9^Jqc{Ux;R| zIFz%c`s;t?S z>N&P7s=1+hTid~HKnFr*6+m`jRY2xsdsm4B)QPv?Pv)j^sfYPB(b5QqU&vU zctEI>*KOU_ZUus&%-8(`P3>DYn|2_V=|9$saL6^h>pywz$&8^rMp5io;4NO<9V-D0 zCaDmkOuW-ij@+q}tnb)H)6I9>ZHFV|M@P=odQ@myz5=FJD!AnIDuE*n2p$!QQt}#^ znlj1#GJ+k6;7k|zWBBw2(ME9o^DF=kAKvQ-EWZs^@+5>y7!Mn?i)aTA3(qsjjpXng z2WPefo{rBMiH983@D~6;Yrb3!pmY)28z!jEvGLYsnp^7#sq=)*ECJsH6C=X}>tpz% zjkr3rS>vl3D^Rw~qn6{iP!(B_84RL)^Ovo@c|BIZVkWzE)cLV<)HODd&zrcOqb$ke z=%!6T=JLO2SE^?K*t*0i!gZb7@fjv)4O%lfnqlJ1>1AEI5~5g+BT6CSLqy?2wW+F{ z*B7=9B(C}uCX`SA;CzPBq-I<1x4G1~U> zy)8d=zkcF)J~z{4*V(0Y8ymg}Mhp>=c9g0|seY|+U1fE@x?}D56$2Kv`|Y7E`QHkI zrr&a$InRtG!oBZ3d&`~|j$|H3NiQPFm+rgv<7$ukyJ9Ozm-GRp4C0Acr(I_i3KvU{ zJ@e6zYt>N82f%kIdAinfRRHQjPehxe55M!&rom9m+8%8R?=KZ}ES(n5)$W6;B9GQu Z{sc&+PO*Ph6{`RM002ovPDHLkV1l&P@HPMd literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_node-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_node-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3550387c11bae6307dff8a65e58ccefcdbac1bca GIT binary patch literal 833 zcmV-H1HSx;P)Q#nPEb(2?9dVq!FtoN~+XY+6^KL5|S>A3o)+L zgmpFPLN_L@iAGCJFs^)r(4YvkB?P5S11&Q{gUm35$1sQjGsjJf3@S3%#EoZlzkAMi ze)s;93;*lCmf6ow@AaL0TgJ5RmWjz~>U{FzxGmZ8bN$WE%@~~s2he9Q^V|J6Dlt%N z6i)?68n6*JuN&k5e33BEzH_R3eY=0Quel94fA2d1@NVC!E>QjM2t9sxVO5q_4gBDH zDSd3_+u+(pWD@{G5&9#&;|8h(p5DD5veF*psQcwZg_+(%!N>%ywP(u*{oVXD+lv%W zh$l57TS_Xm2VbDtb)4(L%Y1b8HP$!R$j@-o;Ax}E)yU;r7YHnjB?~Zko%I}bw=lmt z&Br5eu)G%9aziV(xj6b3US~becsmHM1_&&UAAn0EdjdRG(u~J>gl}%X&z+^~f0Ggu z;X!;0qtq3@$P@0C3(_kO?+H+l>0!{{y;bgU9%1#jMdqSYJbJJRS9S#kLulnTSEs*V z!1pPS9C&WVZc8b*_5#?c(%c#fGs~!PJx^(FHP`NZ$(89IavUy>dD|1R`vTn41GY3Q zV=1rdM7?)GCZ7+N&2B}*OfpI28+Xm$H;ROV_7!FX1-!FJam5mwZ$ix3=i@B z)F*(UD9g*~sxF57pWh!qTrnCeUgbuxpY_-;xUwpkTk)|TTT2cg#j#oTKkX0sFA@PnESh^D`b={_*GDXkL1;GaL;> zF+}`}qxcs`x3Wc<<*5y2ZMncEFtW#CfF!r1&m=`84NJ<~;TK9eFKJHF8ANehzBNy^!G@iu@ZspIZxXC-|tsp4N3{{<-HpNfA6KPfr@WZz(@00000 LNkvXXu0mjf-dA?I literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_node_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_node_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..47126672b7f2da3c27b0ba55d98621e8f60cbf5b GIT binary patch literal 908 zcmV;719SX|P)YOI$KKHyky^qt<~`e3quz`*wPdjVkRT>txm_L2nAxpt~OHvP$ofTzhn zo=#j|$t`8q@~!BmyZ|5(2ReZ95{Sz_cdaWH-qjGOXl!1{Ox<|&&KII%sqg16rW0u? zSCucm-H4WYqXR9s{k&8OyaK!kd<48v?`}&=ipRn|@5RDB!PBz`K2I(jd3ODc8610k zx3To(n#28oA7j2Nv^H$1ibuAEx}!^(xof}74xLSBt}GX8c0~FTb(PWQQ_B;9^z|!U zTkE58t-N-W3x5*2s=0JrnB)GVxe7qF5BfgJ$De1n*iFZJ@I|3 zz`;_0;;64|Bj|0SCGa4T$~Mj|93eS>2wz3Wdv9IeQ~6p80K;%Ofc0=$6NwRE5iDc#>*9~iw{*}GeRoEf$GmOm6asZOUj`}BNASt+E<2-;RY0uhkf0J}T iQt36nK~U8{8UF!ZaZ1KfIfMiN0000+1?WE$v!{J&K9t(*_3i(z+Nfrqso00S=X5IyGVgt>|BPsD9SaPs2 z7>Ug96y~2r!b1{X?emM0V*}$7ajlergzJAoB`>RAkBo&669PpA6(xnzg_Ji-8B|nQ z=(1{vt^*F zlK#FlQ|~=wvx3kC9lt*hKtp|w_BMlsFD_b|4XUe5)>9fQOAh-6mo8?Besp6P3U_b+ zq@g~ypY!`oYHD%}-rAuxsN?mHl1@KoYfF7PKF)o`j)B)J+1ykK_iq)6?;#d*(i+qO za5zE$_Qj}73JV+O><>06qeEA8`*`X zfnf+hMatbyEQ|GYI{V3%0f6Q>S{$JJa)vjPJ~lQWlX*!pr7=HW@ua0?S-1U6OAW1> zYLgoSX=dgsnVrj^>s1I#&H~u(pxjvWcr5yQGq~MW(YoypEK{(#sg~yz>lYhXQpSPr ze^+O!!JvL-Y1vtJyoWk;ITiK%GIE*$HvfY}qJ4;h30WTUL0#R#1lT+xDaEP~OcboN z0i6YucOZTo@LAo9PxYh4V!>KfRihvpL43~V-B$vE==N!}jzuC7@+On#uP!bIU8Q)x Y0Y{+S+1TVyR{#J207*qoM6N<$g5%In1poj5 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_notification_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_notification_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..44ae6305c4ac5e296e34544fc97e4ca4d3040345 GIT binary patch literal 877 zcmV-z1CsoSP)2vsf;Kp(~-L9#+j9% zAi8s-Xa%FrW)#P6L=-^8Cc+WJ$hX>8IswUe}Il6yZF+BRvMw07ghvpVOz z@Atl!bMHMLe2p(1VlIcyheO8{Vs9x<4t;w|)0H>+=Zc@X{Jlq+;upY$P&ZLxbP{D1 zP;cZ+9pJMKjGX*g30%O#LqA^MIT>#ahfad1AFB%t&V@s#1!83>0|i??rIoGW#(Pr; zf&glw)C)1O0oV-m6f>~dvhhsDFg=w+WwrjqH(lM{!GU+Ki7_crPM*VbBT5}=`rSXd z8IP|hSBfJ*pV!-YCKju^3w*bzYUpZJ)xSTD@y>@shZW+~_(Qjb8}|c0e5yABZs0+_ zxYR7UXVZ(j$7N)}N>j`ul6_cGEGEHikQ&dtSYGx$y1!wUIv!-P+jGyI@Cu zWL`~k^R*sv_TsK@rBe5cjRc_9AEz%`L3-52*3B>RR3;1X&gULn&MdyggSg#CNhXhz z$r!)+d{6gC!>srN7%XMrbmmA6+gZ~PnIaC5NVxGW{wQG>4FK3|+1-gmz$XtLypRQ^ zehv8o@5<11i{(rIn--VS8qZDh^;jw_%kWA71-D8WMEd68DjP-9tZ8v66`8CAG?YpM zpp@uOCP$u008_K>0A?u@O;bg&x?n$l{k??$lRBx?CEgD?iALu)*VOc+B|yu8wzxt( zDrF!ZrpZr??I6E_GM21fhq9XAAn{Kbj`F zWm%jkCSX~D)UbU+}I9yCm(Xyvsy3^uaKIWalM;4sXDqm@6$QQww9(V zZ)SBL#A0>(fL~|B{TM3b^>((wEZ4PCA|eEBd7Tx&nmo!w5WN$8B4hcSZnS7L;L$Yg zF^DA~I&!(P4b|0;hv%YIG-9y^_rO4KQ+IcuA=x;Lez+OWjn~k{DgJ z3w7nDb=zvvCfc-{b`oP^yHH|;h>Am~{0yBxW|-;gyf^P&7YswEP&#zu#*^H|J@?%6 zopbKbf&b;d7I~6Qr_Uum7Ub>SYz(E}yf`sB?b)mIu`hmz;#y40CChu8d`yQ*3++DnjE(q0yvj=2e_~~Zvc#+O?;x^SffV-0Tj9x;qlsvL0k0d z*xAIxA@s3fx*ee5Fv2UF^UhF!>T_{igx0wQ(z!AZY#u-u*q)E6lkIBf>JeSA{d77 zlp%zw7K<~BET@W(2jmMCC@vv@4h85M8RW;T%hI1~l<&D{y;Tm=6xu^xVm&SN4?V-F z!S&XK#yoBz%ymzFNk-i|Gp6c1rwrsg1@06G;s_^Yx>G`GrexFIsa!IBuRNRfS zBy;v7?bnJ9g`$m8M4NhOBH%bK3k8SKuje_`?dSSjX=h^%rF<2;q!6mo^h@46(Ai9d z*-WLbA87Y7d9s_KXnL^s3`AJfNRo%daa;+T-gr5yaH|@nHqy@r z-5rC`hOjT_!BFHI0GG~;zW=BUKKms*(;M**-C42fx~WBrn}3yfd9ban`+jB}+h-Dw zcnb^N9n(!WoU6;$i7S6tH?RGaHJ4VmAVIIe2PYy7_XU{x$Ku9{&5?ucyneuZ_w@eI z`8{>C@0QnI{VijjpGi5fm8^|hyIERmJf;wf_=$I#`QeD18HMg$A0LBlGXMYp07*qoM6N<$f@a3MoB#j- literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuget_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuget_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3684f16c984c2ab5c19d77f28fe5cef4db6c6921 GIT binary patch literal 1031 zcmV+i1o-=jP)+`J=n~ z2FJfG;lsTYp#O+KbT`lg+yL-aTCQ<#Ws`%@o=D9^m(v+wt`H39T_p&r*KSIsDB0f| zYz6o<6gmFxcj11347saLvfpj0&!#Smf2)_7MPj_#>rZ=;9)M*}6X$&|yyWP(u4 z@sC6j?YT$NGPD(e%Mv0h4in)tX(yMKiAZKsd^Bzoi)T=Z9TtF6`n+M{0A|S>0=DgN zGiLMf+3R%HyZL53QQEqO#8Q?_LLp>xW%mBF!LY!OTSZZL(5nk+27Zf^$mA;M?iv?o z4mUA!w3Sm&G*Xi_$Rss7-)zM`P+EpW^aGm_mB z5mRgw({Rph6~Q|DTI1M?u3C4|ctN@v%DJzh9K$fy6TJ6y+b?Jx0ql({o7J|@a*QNjxrtSNHqrYAk1TD#iD+ z8TPc*@OZ2F(vf?-r?)lHzM6?X_UnRqdTh>anqAD`Sjb#c=em5<3=2DkmUVo;= zdj{@sWR8U6yA@6&BE=MI(3Y5U`+QZui-;=d{{}N^Z3D0DFi-#h002ovPDHLkV1nbm B>4X3P literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuxt-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuxt-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1950505e9bf1d5159b5f04d99ea69c8b115f5b84 GIT binary patch literal 702 zcmV;v0zv(WP)J>G0_dOuw-FjWtW+IEQTx$4_UCV;UrVc`R@1q?!7a226pOymu$xr z&b)Z6qBs9GCL~;|JiIX+-g5fWmnl4ZUz7yGfGATdWrcR&lv)!5*fJpO+It8Ig)z@H zmr3_lR_c)_{kK)*S#^BC{G>mF$mvZOX8;Ts3E9_Vo(Du#S_7Fuubcob)v^+WgZS5~ zh~RDQTNL&1F8%}{G_W7ap_*)_)_i*`k2+=4DPxaM1;v>6ZvbtqU^{1E(LlvuJ7&

lW?aFT-V0&^PiWzRkd}sjydoqVQ3)s%W(h8^1WMz$aQ-HS3p?gcnY!ox% zU`88}nJAk2jdv~!0+O!-quB1rEdoNzCNq=*1ynGDdwjj#Lke|--n1db2)b_`ZJngR7MXJ zp%lh^Y+l+I(540K*>N!b8$~I2PGvTV`RqW%;&xBmg;gh64HLjO+g@}4hq#N|JGy29 zl1r3iWY;f^s(4q%+K9VrzXoD^gNB{r;07*qoM6N<$g4-WCQvd(} literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuxt_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_nuxt_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3d1fb556749390707fc7475390d1282e335178cd GIT binary patch literal 897 zcmV-{1AhF8P)rs~zne?MkZqA#5NFZ*&AC;=n8rZZv`D1s6uH_ybfDFW5T0 z@P->N^uj;DL=w8hC<$mZHWCM}{0JFC7_&jQcE1>GY-`i^eU2BkwQpCJz>PP2Z{GJj z=Q-zd&dHPKfv5VvB~KF6H<<1h)%Vs+taeZ0$nL+rkDL7C)0d-`F(0WA1o>9bLd}*P z3fr*!UVz62tn=uHrQ{3^9DeofT7Tb};gceKQnp=y{^aoIh-_bzpt`5@CDK2b{-M?_ zs%=_jyE{(3eaf6X7U;s&*+nTd(!x+?6fY8z);4*fIUW)gy!HKgzyEZ{D}w4iwel z6sRlCi^yHn^!{6YNvgfon`QzJ8EMSoH(o@Akw!%zv6T?#;x`zIWZ0kELeETR z))=l;$6C2*lLGG7YqzX(@f#SFo~cguO?9FIXX7JepLxK=4H*DZu`#Coi*FfK%LVxA zcz01?)kw-34d=MiFiRxgz^>VLcFwjD%{Op2IM3JZ!>B-fIgBHQA2;3%d&FvW0RRkq zUoW|B8P3N?0XUf5hNXgqaA>j%fQP;U8}lKKjlV`yA;_)JG}oV-*t-f)w5_uOPA%X< z^bYrZD{Nhe(Xkk`MUr9J|%!h;aixd-s(Y&`Z_H7kqgx zG>_xa|ANa(HIGs7*t|R+r*)|bpi;!Vf7yF6l5qp-jp=-Rl%hE7nR$_>La?$v=U-wd zn!%?YdUI~@!O7AXQ?W5pvD?iqfa3YC{GSQlV$*Sr`RtN=kJ(WFJ-9va4k819-xUB8K$5@Am+Vj2jD30>^u#0T_?68k-+xq*PgT)B X(pev>4q|dB00000NkvXXu0mjf-W;r8 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_package-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_package-24.png new file mode 100644 index 0000000000000000000000000000000000000000..734e48d1a2ed83f1fa6d453c5d5f18e08facb260 GIT binary patch literal 607 zcmV-l0-*hgP)1 zp(!7iUj`zL)@<|yp^S*)>{co34zhpfJWA=7R$HFOGR!=XuiFl`d$Lu_I4&!%9)bKk zaMItfvjZF&z8EnN>T6hrwE6dUk(sPJNb%^o7Vj8f**Ol6UPhlzO-eIRbJc}>KI_@b*vq9F9=ELu*E}Z zlBN=G^cnRam$-vJfxjNm^F=dF@Eh$HM(y(2^c-NPHFmoD{ynw>QSwPCwF01^X!Mt? zRNt}KkpF%L2{yV4=(wQ|PbU_weUryc_jIgQoxhFv@f*Ay0%M6w4maM=Kz1m2yP9tz tF(9bSL1nIMvz`JpTnFX+j(HV-;Rn=_jwiV3K>Gjy002ovPDHLkV1ikx5YPYs literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_package_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_package_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..48e08fd570e7988864f9237b9ffcec00f84a86fb GIT binary patch literal 716 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 ymzp+jTae4joz|q~Cp|irj5+ zK~zYI?UhSNlu;bTfA@ahH{)pIE6quZ=}D5B7)WVE5iMGj67YLRAS#Q3#H4mo zyMm%s3rSoA6D@)^1(Feh1tC_JWhsg}&cku$ySIf8#s3&i`Dv_ribt zYlu`f`7R!~h7d=7w?-S(?!M9T)=XCX$>sg|T8Rrl2Jl?K&>Ue{0aT)t6Ch~=t>pP> z@lQdQ+I67e(PTXDyL6}ytsl(Pa}0d-hpvO({0EO}00c54EPcNEgTG9m3**aQ66kVZ z=kL@_p;#$~`L46P0UX|VF5M1bswjRdXSOH*Fl_=16uB})I+F=pnjONaLURX7)*zxy z-rEHTbOIL>79&>P-x&bJv}BbrjE4Y*iZVC>wlFb>5yXuhcQ8pANHnYE5Ct+Y+lxp8 zhlnF+k<&LwZ_J_@}nSrYkiJgEd(VuHNl zjieuL2Eehcj^LeRFg^-^Gk-a2&fddx=YUr9+&)?N`ozS!1t)Ne2*$FKsX{4awg=~q z5%cVR+V{273X}N)Z|SOuDy}=;$E*ZOzz*)l$;%ZgOq{%>aUr^O<~z zEq0Xa{-SWp6%p-dLx;u?U<1aNhm8m!2=;anlh)+0EV>IR{0IK4n`^XIt$;N(69c{D zx*%@JS1paL6}Q@ZA%(Xnv#I?tLe~Ie38dhqVNyLKo{|ATR#V4Qg;@^xrdtsWH%D?Z swwE<`^rfOXFZ$}M%HEu*$e)k@2`gCZO9;n00000007*qoM6N<$g82Ywwg3PC literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_platformio_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_platformio_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7b15674955abd44cbf1396d56dc7cd1b04211339 GIT binary patch literal 969 zcmV;)12+7LP)oPmL^LpTqOJO&Gix;2U z`#$gY{N|f{-wgb(|5|D%i{itvw_W5|xtV<4^LX0}eKW>(!+#xmtHy!X6e^&EizsCm z`y$eUqRBKc0JaTqFkS@-03%I3{YUQh#1u)v2LaD?8+AC04h*?QwjiJ zEzMRT1uYwl{8ij{;-hn(hPGcYefNQUCMhbLbGwKr4%^J zq_ToCEs%Ul3ig!3w?1oR?c10AW^Ed%EEfu(q(CSYC$MxAWEG~HxEUKVX@FX1a`dE8 z7sUuSC;+Yf_{WYyZ8{BGDST_3(4Ge{+mE8GU7LI(xSQ%j&*(mXklf_ACt&qFO`PsM zhRB(6;oj^#kqQ(4bAtf5>Dy#J>cPn_l1$rpYwjcZ$|o4XDiD|JA0A&`nD{xY0eIZ} z7eJvLz_jn6-`l)WxGq{{1n-m2ulswRehH%@gt#s!4QubiKHbuqHGsyRfmwtrswGtkx5)d`6_Z+b^E^7*WdeX+y8?*v4e+2-1C43K;X~BqTEw7 zG9#LPX#e{o2>@-2jI!F*KXMTzhk=Dnrs8|upldCBM*x6O|Jau1Zb5Sqh$8X`&5DPy6F3NV1R$^hA?pGV1>W*eg34^Sy=)=m7T%Zz@A@7mZ4ZnIGN?9@ls1pfE;Lw=?|!4v1zIC6xBkW{M>AP zUdiS511VRT>Z#NBK~A)iFQ(^NO+7U~4^*|V%lL_^`CJfj09%CkU**6A!TZ1fV%wng z0$LS)4OH17`|Rjufiar$gUKLA3Zc|R*;HfoLmD51I@=0*Gp Z+3ykEv6q00Q7ixe002ovPDHLkV1fV}BOU+% literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_plugin_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_plugin_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..8561bc538b9d3890608e8306a2a0470af0fa56ba GIT binary patch literal 742 zcmV+zXKlfY?=fZ#d zYsjAj>43Kdixa;k#i^4WjU#5(;zJKgh$Su|xDaUr9Z4my74VQ7HvzIvKrDU{#07MV zr=fnu1p?k{XgtZindZEOW=n5h`#wI>F0TQ9$#{4};rx2aLoV?l-%}7;aMTRN>7;hrJ7}V3*Q_#?P zKnJ`R&|FWRi|+THLO8y#uL1G^-wHKt$xNSbgEcedSQPDj;ZClVt0-(1mON6f!u2`D zn+``t29B+}9C#wS|K5H?zsz*o@L)I7UH9!2mPA|&Zbdlp3J7LmC#Jt;BMxASP_Cr< zObnqb+i1H`^F})Url^>?U>Ki86Q1uPQ#~h^NC3uiq7|Jb*wIRKdz!gOb-!BXTk%ZF;j%59gcX@h)mZYV z_H^=^%{AohI)bCD3Zt;ZR)Qb?heXFd5b{4Q`*I#<%DC18-bo;TwZPEpHY4=*nOe>F zODOi){tw2RxB|4K9BLk;xM~SS%Ayt6o}R$|xYk%{-_vZ!B}oD+>dB}8Lo zQ?ehHhMR`bq&Ps1@G*@)5y|15?Fvfo;vZ|qZCF$SAf&WQP?#*x90ah0#9S`DMc{ zK~zYI?Uh|f(@_}4pYwN4r<uV#qzpK<4GK3m_mhw+4*#o&W@v0uTVk1qS=H6_+;2 zCf?em5P;(tstSy#xp52OvJjj-Zo=sJD{3BF!`#9`9ubLL0F3Ysz}Q;tVnfU8D;0%Kj$3-+h28?hC?nheV-s(%N$iilfe|SH z&F>lj01#10*`+!XCuWl2@M$6<`nI@8J^e#ed9{)DABW9&Jv-LHZ~KN%jKzTD7E yj|QJjIvfr&5gCa{vY~?OK!S)!M?}B8B;Ns0ZS(gsE@~YB0000Cm zK~zYI?UjE_)O8rgU(c8G;^g>|9wnurlS2;ZOh7rTv?f~uf4CYf)V$Ul{aWQUb*m`E z$|cLK-0Ba1&9zc-Y9NzV#&k1Tl&ei)t600Stce}qMLI^@-P0cjHxBfx_)q`zY~OwM zJfHXTyq@Rt{eJd^|Lwmvxt%0Ob=?*aubC#2Aj=01)cj~zToiZ-*)u_sFF2aK5>E~6c5m2g6JJxjcret6?L?qO)YWf5OilQqpj4e^pwQ|0436TE5$uInFKEOaG~2DO*Vvu3!>k{jMQY7+@C`*aM^Y5%+z?m zw9v>GAYrrOR!ah}J@F6?`x;}h1#{EP9vnJ_$-b!{I zZlQMV3U3@h&=Y2WE5l)&nX}_!g%c(K$al^~4B>L1Z@sG8Vt_vnzjGcKP-NtK&%2GM zLho;S9>a*<73(w$`ObNh0RD@YNV6x={$p1fkZ0EPBvaLweA_=(dr^fxyl#W4s*Z$0 z`pplWTKnNXeQ@n7TJ`Ey-QV=3UL6`bsjAi~{cu#(xH9;6`_eTpd+xAWDa^~Jv)fOx z+eO*3;>fZh_jh(%;&I@(i2OXI?#DrL&vpIsSHs>z+Hv8hfp9pyUsWqrHTkv*-T>lI f)rG2R+)Vo~>rySxOdW2(00000NkvXXu0mjfMhVn* literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_private-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_private-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b9301464cef5765e0c958e5e9af7fdf1909b196c GIT binary patch literal 816 zcmV-01JC@4P)}lll+H zpp%P>F(xLu>tF;_PztpOYJXgT9<;~Zy$)1uMccyS;*-3?J>T#1eD0q2y}a;0{&k4W z6x|s*c?~#Q)}%P6F1~m?=GkcTyMsp?C0qu!0?!2`i**S*fc@B-7huBxiFT>beA-BP zk6a&rXqCReiSts3dq18_0Jn!u-Vl-l+f2kV5dXKY~%`Tjyz=%g{BQ zpfi@j_Nc^~>esYNfX-MFzqz)LLP|PgNfcL>cw9v=(-Pu!Z!=OrcQir!Y^tRqz~i{I z&KUr_+1SLSoH9 z0KAqxEJ2h7_zRnwF3fyI*D6ACUJYxDiXvrrik*!WM+C5{sXueoK=Rt!*|G72$^xu{ zQCoFO@|7UI+$sPPkt_>X28u$(`nlL^U*VnWF0000j!kTk-E#3mY- zCMIr-QIw5T6J2O(+-QvAXEcHu#Y#{lwlnD$0m{&inNFuu=Dj!Xx|nvHPLZK(+<20^ zIOqKD`Q3AF-n;O>{nsY9vuUvJnHSLHsherCuCwRh+s7{%>n;A_p`*1~k>^nOKz#y| zDU#d;gmptV0M-p~4bQWne8A5K-a7U~aenaW{+CdMSNv6g!M^_2m9X<>0LePL{Zny# z(}~va?|w9Dmz!3qaZ@54s7eE%Xf4#Q?m*}i=th_*F04CQX&8!b3=Cg1b;|*$SzZ8K z4^(8XbcN>Tx72wHZ+6Xy6fE`*ytchCHcV(Ua1z*-lkgL8S|Rg-Y5^WIXBQep$cQy~}Aqwz@T0gc)zR1y0PXO=fUV%`8v!aVO`|zk78+|vG&d00*If#-Y3lwR z;{Zm+>QNvXfD%5t5uhx-06?m~8UWj8mV~5hD!15v6HzKK%Jy0fz_6W@K(-j5S-FtA z;h%YzhDg})dH`@Rsx^Qo-#I>w;!H8XDf0qgq^(u)5|E&G@j3tsnbGoGP1cMlU0Ve} z)nu$V^{)_LEP0sBw9 z`a3X(V6QBti+#1TEep`}!=LzO=AFVkf^GXvJG!siu`0`zFBYfb@(i}=Wo~!dySa0h zFaZ7wr{6JqTDD>hX3W-`o-aV2BQnpVS+`k>!vj zsHj5bfDll(9G_9h!7#&LuIydci}n{g_6X{E;9{sysWTk(0GTLAz7002ovPDHLkV1ing%uxUU literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_public-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_public-24.png new file mode 100644 index 0000000000000000000000000000000000000000..adad369b8f8e722d6b90d9065eab4333b778fa73 GIT binary patch literal 799 zcmV+)1K|9LP)n3TjbpYZ0`F zcGaRq1rrj~szqgsP$SKRh*I+-HI>j5b5uyDX=ZMVbn2;%Gj7^+;PUSMpY#6boqKuj z!GHW~h&A1H&v6M!U2u_qFLkY*ny{PSsfb6)3xEM=1SZu2u@Pi3enkrqzJW%bUugab zoogotyF4o1S#b=w8<49>$7P^&6^rtPtAgA77^hrL} zI8ovtMyCTHC&9|DY@3QdRbGiD+JGViRhe0ANy`W?fl;efttGH0*G@)k0w2al8J(FX zHrf#2W223Mc}NKwdbn3M!R?WE@fglmwcRms9d;V<&ZD-(gX|8(T^@Y&g=D?m7Q| z{(olfof-H){_BtjY3hxgd{>Z>MjW%qGd~P{G-uwc_!IFHe$nz4;LyU?0@*5p<`59g zO3njg4Nc#Wnh1 zWp1tp=@;}-V5Wgbs^Fvq9o}UGE_5A(LSz!h&qj7rKCjO^Mr0&Y&pEC?u)Xum#Ot8n zFZuPxMo$2*7UnP@;MB;a%EqA2?R=>xdf3%uZC+U0SotdP%eAfTT&{?BxA|M1d-Py; zlf`UF-A*Szzmn|RkzCjK3!luGwbFkpgTd-q>Z*J&8o}LU1EAgOZW-tdK709(8wIW~ z7>!`JSO5s@bM+l+ZzZ`fe{YGD-}D_z`E|fkZ|cs1czFOY&=n-G&&6NMt1PEC3E8YA z++{EGRigjH9fbS-hRT?nOO@VNGn-h=CXPiTMB5H<{O}`8Ev-;oF+=Oz^~L3~!M!T6 zMh1zS3tXE^vADj$_tUe4{k|$Z)Z$@$HpRmF9lrhj#?;#8RtYl$7|Mt%t@41WR{ZIQ zJ2@JD2q_#YkL6prwUNQ=u$MT?=`@cA12o&Lw0Ydo{;qbG?%eJfhZzNs9Qybl5q_){ z@7nL>$w*lopu^{3Vs??~TPviq+f2?cvA&t5x$+w{*$Dgnr?u9iN>xMdTc%Kpw<_P< z-XT75ot{ttpTkZrpC{mP5%jvbI5|bmDDN;O61u==ou!SI*T$FjcwN%x8j%HfjP7*V790_++Aj(-%NWOUPXV9w%I~9*n#I@F#l*-qN7vq52NjjU& z*VY@}2Vd%Q9SZaF0!Ki6g7KS1-mb^j@P@!E8vUn0e2u$fd%AEg=ub~IG5}s1mXR+i z3#uM-w=j^az-8cW4U_{eLH^g;o(H-z&*(E2H*UX>^DD@JZGKpWw|3+H3wk#Y4C%uy Q{r~^~07*qoM6N<$f^LGve*gdg literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_python-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_python-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2b372899ea212cfc3743c29eadc899ddaae88df1 GIT binary patch literal 741 zcmVQ$ZZZKlk3dHc4CCN?I+g1WK(SNTo=JDikNtL5B`n5gZ)FMHguo7Z(@l zAovF;6hYcSLEN;UgSrTUh}0Hi3pKVRp-Enn`<+8#eMw5vbaCyaI4(VP;lYj@AQMm?#fBrxs>jGGCLA1?OH>_JoD; zx;ro~>GfXxOnAuTogqgVbSO)E&n7KxevQ8A60LtdjBd^1r@|C-9*6-OCK=zy!00!0 zq)?%EngtYc8m~2nQl@M!rD!aWs{qm*u9zr}cvvA( z(1lmYXu7mRA!)S9i7TsxP;uGsnT6NQ-v{>d**GHom3239M0yc>O^v;I6x28UC1WIA zQxa30MC2J_iq-Pw0oa>}{HQ!FEF#iD(R*I4-qV$7EsBpPhsirpM0~WfqDB{g?xg(< X%t(jiSPdL#00000NkvXXu0mjft&dl& literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_python_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_python_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9aa7ecca263fe4654e25b2ae09ffcf4e387bcbd9 GIT binary patch literal 892 zcmV-?1B3jDP)3ilr$CG2%;23vU8zm5%;2t=oAB; zxF~L1xN+@TP$Giewa}`iBNmZXENSXAZOlhAj!9n!K4g)t(aPCg+2`& zO9&poo&jRK_fSm%-+wq-cqMwjaP902MvrahEr3Gt?5Chl?MhIc*qUSu#r%afOBil; zKGK1X0pl3G-ATXhdw7+<~|zsp`Ij#wO5yAYvQHp$u5^8gNj zf!R)gdkYy58?H2Z-4^#;%aMT!h=2%=*qmN{?ugd_1m7yI1>7j0y5Y8nc6C)bFj&EH z1hipMJRUGMyu!=fw^}Sj?f!5_oGa!p8#oyS{CM$k7E38mA(5!@*5oftJ~B@awQ#kF zZJIad!86XbkfVIl&Z2aBGwfhr-v%$H7wEx{2(}Z~O|1J{2(ZSqeGh|2*Kkc8RB(+Y zWp)$)ca$~unVGn<+48$C6!TXw+8>3KSL5;f^QrE1ukW8f{zEpUzK2-;l34xcAY0k? ze4Uu}#g!G44DNV+hfD-svRNF|1T}SYm@o zL}n2iM9cRMK;K2=ZVN!Ugh-me+wq}1)RC!*;rgj3@trIpHDb=Z8NIaBuJ#{&ue80!-2HiEEFh0s2CKYZj1yM#?TmD5m)Yvap6YYctcm3m>3uO z16&zb{sCO7!AtN)BF1Pyt}VAFT$+~B_Vk=HE)Ze~ZK*MF7+)pF`Ykl1tx#Wbn+`x%{@Vk8u1HWC5Av%JD+C``xRHd>qf+XDbpT}Rb*T(*r+ zRm$pWk&Z(;8pX+&xXR0*#6<#_SXyG^0w-2i(KL2<^D_n>mgo0rh z^mcdgWZ?Ct$8D4n?ChkY$&Vt|pSna`Xn1&kX-lh+5rLT49#jXwkv#z(4Gh#Lr8EF) z-EQ;zv7_@9rDgW-enlv0_{0C;OmmwFxPTEwv5q~RoQ&l17TvB-H@4TLv0cEpWs9Ev z>DXlXm3KL~-q%8D7VOrvv|%aUao7sj9X6OCpX6Jz3%nPBkm z)+_I3g;ojP?ii$s8<{h&;KFF{taENc8-pL7}$kzwDc0LlyB_PcDM9aYFj!G zhkzpjVmko-yi-U4dbgDa`wjpAbm!Y|?b}ek_j>n9lj*Nx;c#XLXjziJ(RT#mY#EUD zjlCw})E)dFf~LyWbD2y-?CZ<@-!|B+&7QqW?S~$o(`?p!t>QwFXN$#Zn<^!92!=`# zW&04odOlC1-H!X@3I6^qL?RgUEX>S!2A_N!TU*;UfGmndkk=}0iqmHP4!BioMK`bf zgp`uh`Eh!V9LCbs#Vvi6iNFPN*=((pCjg}iAWomoBg7>DLtiDEOp;A6vl5xcefSZK zl?UOcW&x^%o9S{|>Rsiy<_zEZpA&|Ls zjFk*}JWgYCGpmU>PMejdUO7ci%O1?xES>lFk-Duj6^`(GI6`nL%=PO*E(R_T356f3 z?4XQF`TReCe6+k_hJjF3vdJW}P(UaO`oaPhcN-JYC_n!)iK=NB`OOb%L+@yB$6~QO z|N1u<&uwlgK|t2(YzzR|Qmv9pVOa{hC5dOj`yI-E}V#&gdYdzzXmBBV6TTK|1#&dl7?eehyW zUk=cKu%Z~pKZ{0}?iO43as6!Pe&;#`4fw+-h?9ZYyBCKof8D>4HB<4yoZ#xJT09Ym mM-uhs?IBpv12wswI-1vh7=gaT$ zIX}+f{NR84uT9)b((KfQcZCsCX)y-*{JBp*yRME}{F~P%OL5HGMvwz$5u)A~keE{l z9ycO!0genvBJmc&vyml_FK4GF z`@BLhV$5CL-+?sa7@kfoe|KBCv-0pivq9dH2;WC! zvvl_M=$6X#ju$}mKg>gQAmf;9eVgLqJf+3!9BXWopLmL~FTUc$rPuM|h{2WLD9`;u zesdkw^AFd7)%6+JT*K?MDZKC^`SZ^rvpISTbJRX~kKX(o-NiX}!iZKBvD9i&X*M`p z-69m?+P4qg|4b@i|MnlKohF{G2-j8#ZY&~m0|ZM8m^dbC*2$bcL-yt}fi#@XqC_+g|*>x$}4(&KTQw#KC{Qx7X z!kCo<*^Z;Zt^M|3!B*VoxSVt|)Iv=y4A{~E0)fHcN{a_F83rwzW)!mA?VyvySi)3O z=fTX${7@jRcLYoW#jIsfwjJ_H(TqZZIH6$MWTc>`L$PMq+}7#E|I5g~nH) zBw}a@3!;&oE;Mdf5aWUf8#gWtQD{Z2fdU0?TN>!?8`|4@=A1L*qR`yd(f}Jbew&$Z z=0EeB`R4J#|Mp*-c$h(#JNA8w6T6ob#ojY52M%1<4?Ovyz4ch}5s*Q+6F3nrkURmb zkAt!Xcwm6A@K$%+uMFxM6%XZ zIP(AwwgOKBg(Vm_@08NPnnn6+DxJkbG~Kelqj?Dc0G+L^UOF1t6gzkA$?pE~yY0Ol z`#x|^9GL@LI=KHWDcr8v9k`7^`W{;cz>SV%?3Lc-Dl{uyX_*evY1dO%KQ5Y^2gReS z_AbpNdZz@i~3_FQ0c@H$va)K?(9c!BUz z4`I)FT#^uvjZn3wg|t+pq+(4bLvyB@lC=y>mmVvWr&s7ZfjQ}5=R$zY)^K&Egf0v6 zzx+(YZ>RC4q-xV-8=D{Rx{Igl~H5385)eUq@`kYDn*UfbvI1dIQJJ_ zKDhrh!fmSrT<<)?O!uEO_yK{Gj2c5RG8k(~DMgi(+=^oo=g4YJqwkYenjsT1Yz!{3 z&(6IAA?-=$#5_Q@aXH1m|6*)|H}XX literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_redux-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_redux-24.png new file mode 100644 index 0000000000000000000000000000000000000000..68bb60ec88f093b163826af4c1ce9b2373b55099 GIT binary patch literal 739 zcmV<90v!E`P)HO&qn#QP5)6e10`iUPF6?Gx*ty4I!DS&Kj20I9R(I}w@B5rNcQP0L>u*bbXVd*_ zV}pqF9p*7cuMCZJO@xAm5A?i_gMSya0vJPBFES_zpxw6`0SF8z5qn3K3Sh>tc6n&D z*W0^(uV?J0z@y#gBEVqp*aNFvJPe>p=g!dh#Geh_cxC*Y+TC?QYC(VbL;E(j3UnX- z4vGkzNN8hKgKhLZP!*OZ1vf414L<-ls%l!4P(+z}j8h@7DXyxD`u`Hw(1nWa2sx+Ke+?231Dfqd7fN-gDs#RH^$yc9R zG|YV{{0Oq&gybB=>XbygWo1f_L4Y%;J*%vJ7P3j9GG6HYu9`Y6O&yl+^Fne~s6QtI zM+SsT6%;b-g3UoTX*hk!=I3`LMsd^macWTzM{7qPK93&>U_#)zg_7Mggv%5soS%!; zDqdDtoG8TE98<b36y}$ciknDe0KLNmx V`5)>@2M+)M002ovPDHLkV1gTJLS+B| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_redux_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_redux_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..d380b159c3264d7077348ef8d1e0f2a8d6c7379e GIT binary patch literal 873 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 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_sass-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_sass-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9f50150ba3b0e3c43340f5ef6b9bf97808fb866c GIT binary patch literal 820 zcmV-41Izr0P)Mc{ zK~zYI?UP$blVKRgfA98fvn}V87E@N1m8Y6?Ad(We1QB5EK*$Q9(Bq1qSOb z=prJ5AgBm}z@P(+qMHg*Ln*8_%L5+fw3@TI!_!4(S}FS?=%xo=c%Se2KmXtNp5TA{ z>rj8v4-VkE?2(3FN4N4e+4|j(27juvC)D0-zg^RN4^) z8xZIvvTobWQ^RBHzAEn?;L7)W9Kg5Ddj_F&Qi8C2WM*(;t@Ca7Dtn&G>X@IKVYHgH z*vH7!{+F$U+xvl^&cIjYy#s7WWhL4aGp_Oy+!c#Sb7l}9{6aJoMzdP5WTi9IGjPr7 z%BVwNS8sEz_3e)A^u* z!1X7@2fzHH`|R&RgdwG{r3^5bH9W_+U~^BS;na0LzHXmTJH503iO2ht+0{TT=irl=uaF^hV)~BH39V8;dBxCU(c{E1sbA+Np6__11hWo<|G=HGw;yn`481QX# zQU<)c>ZADZMjZ2JFwoovz(8}`=zO9``3(B%{k%F~M{&&toXhe@ziU&>xK=J;_RbaL ztXYU@YTCFyUDq`D{0)(gK8k88vF2ovj3>w_bQ5au6RHnjcGxI9Sizgi4;c!E^#cGR zogv!pJZIkCaysre&~)zhxO#tM09Uz(wz~S?02JLy@K0oJvRjQsHI>eAYj?Ee(!;2| zASX>hXsjm9nPCe1dko4TQC)v7A|?@eCL#w$@)II*>^C~2F5@wc%jH|xMP!qR1Vv=# yADK-6m?a|7k;Ibh7>HX$N<_qzYR^|(6(qmDb7H>$0000Hy*ff zFTCe{&N-Y5|HpqF=5CTM9ZMa@aHOorwYr+$>P|ZwHh=we0>i6772*tr{7Qvs1GN-` zSqEUl0Ara~1XZB#o8Rj>__qRjQ||&T3-1+x%e|=&L9OKgg3ftV?d9In=fIfCWX(O^ zwz{|-ah*aow>fvkr#Ln-r&>in59|Z3uGfj}xmLWRsXEr)6nEmD69$E_G?g!!3fpn2 zJ*zYwoN}tY7go1-{!(x1_Il=$j!K%8j7d9H!?jmPB40Fv7_kj zBp8EnZM^LX>JRPRRP$Kt^EW^Jk*g=a>WBF?HJCo3L*)QrP(;OWsn$Y?(oCNEXWFr& z5lYz{xnZB1XD(h)ezt2t=Kv@SKgTj9z+MZG`C^cU=l0=kOOPA(0mu#ei}yt^X6N$V zw*Z>o@9{AVl%;j-(Urw4^5fWlhGuBs?(Ir6C7 zL@e|_yHGT?6|UAeF|Qb;Ckl3?!eS#K$(1x9>81Jio049;gKo`5Sr5>uxrj+RC@CXp y>s^_x0cezzpFiW0p7__ymqC(}_DFL7Y0h7C32^Dkp5O2Q0000!6Sp3TUAhnbq1Vs&+uqobqi0R{&L5kg#OFm|f|T<0Ri0ET#l*zKSzag< zs8*}@ipAnb=yJ%-X7dBkxXRPsnu#f!Z2JY7K?9t1^~>=%vjB4b5hf^fy+EXh)@WzRw|Xgx6c0pDZub?J_H^~ P00000NkvXXu0mjf(y2+| literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_script_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_script_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c301473c5a8c58328ed41aa07f6effdf922bc524 GIT binary patch literal 847 zcmV-V1F-ywP)|p93hR zJ_eGm>#o0^w6?Z3-E1}oiUS-S9dWIdv@GjWBMiemA;eOI*EdcklboNQ4`l$5%jMYJ z-F;lI*I#IsWo-hdLuUhxMuS$X1;D|<0nzH_=H^&gS^3%b{d3K6oB&vl(TPQ^R>Svw z4CCMJ({&xs^Ef??U!w+~l=^)b@%{aMwzs#*=ktt?jsh?~KF<97JX>2^TwGkl8yJT1 zCm;tIB$G+PFuWnuY&J1XlSCpBZ?L$y_zKt>WMJDixm=EFwaVGq8322Gd(`W7^7%Zb zX~r8|k=UI(L!|ZfAiMW$8H8q88+kLT4r_%sBFyKCL9A{Z6_2b((nM{V6 znVH_$^E?g@4R^#gG3V_SYOHNKs0$taicjpJ*XxVJ` zGaZ{k| Z{{Yj9AFC%(Jc$4R002ovPDHLkV1n^GnK}Rf literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_server-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_server-24.png new file mode 100644 index 0000000000000000000000000000000000000000..b5d5b662a72208439f130df5fd742a8892b66ee7 GIT binary patch literal 628 zcmV-)0*n2LP)xkBNc0bjlBUrNg^(QIyQjsgn9+GNz1N~m-|lk1`~A+j2kwRc`qz>u zhkD0HuLydsn#Wpu`reVADJN|B+1&jtR`n8)02xE{OPN7w0XiIqI)Kmsg^PZ;zB9>h zC+@WO7fbhhbED@)^~SGt8Q{!#c2I?bRRKyD03ycDC$fFH>}tc-(q$PykqpYQKWrrp zl3rd|a3;E^qFR@Z#|&?CwL5G<-yvdGr;Ahlqcl zyA1S40u&~nFnQ|%D{V*7w$_pzK^rzh(@vH?EFF*3!Nk?;I`;a>`(p;5X>+7z^C*FtF1s$D-YwJ-{mqD_l7 zE`qkTOS7Pb5iO)eVIzU*n3bWKq((pJ%y&oeH=i7mEC`G8=L(Fnof@&Q?weed&z?ub&@t;*F zLK*IH-PPKHDfDFuB=D`LeD7{A7YXE1RD6c2gO{jn zFJOyd3=O`1Fm0u;iw#RNmw`?RM_--CB+dcgEu11%3=fn;n$w&GBWUj)CXcdDu@0HDhKocN7F)qPb}lE>zN^)TQ% zaJNWT29Z1m@cmImEpbN~orx#w%Vy!1gWk%ReGm8zhyw`5YAj9QYI)rVmd^+=&y&T0h-=QOpyR`omK0ov_5265 z?QxoqW-NmU_?)=LpWc~e@|xUm!RK}xRaly{cIfs1(_?MG+}e55 zQA%O(3YGg7IdVEi>+xj@i%F*%8|3hiEgrD?F)CW9pTEqYV002ovPDHLkV1myx BNj(4n literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_services-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_services-24.png new file mode 100644 index 0000000000000000000000000000000000000000..f19d6fb3d166334df20784d5be4d933a227ea513 GIT binary patch literal 862 zcmV-k1EKthP)Jkv z*o&G0i82BUlI0kQ8TCU@sEF1C9%u$=z@_+sDg5m;Q#f2zuve@i~+$?+T8nrQ?8STvL0UA&U- zB^gO0`j^=wpoY^3=epMtBXE37*zlDXUBy?S+EI*>Ew;%1^N8AG4lGeJES!o2Wc@PN zu5Xe_#+ivvupZbHTZ5v(8suySuvISe`(}x;W0P#wcc`pCV%-P%4|lMyz$>2cRuamU zDo$#OLd%0hnsTkq%aL8q#s>@ZEzz~QvK+XTzB&%*FQRZ^U}*Hn7P}BiwJ>)SO9X z(`kO*5gzOc9aW+sIPW!JcNY=iyceQsjSnZV+EiAXFk)Fujw-+G2(zw|34_oNbV6^My%HB{_jP9}Qzr}8-$i05~>jC^!lOxAmI~{i%tGZU?Y$|ArC6pen9hq=l z2-)UVEByJ=xz~$_`VUrCRz9;V>-p-|)`dH(Yy46D6E%jTi5Mp`DWcKnx2pQQNK_0L6G%3UrA-;>9dZ;((0`tc+3G0|;lYdV+xz=GpZ6=z zlTSWh_+S6EfBn!?S4Nk+<- zxdCLWtcqpzFwZF(0)DpF?-SljVyD;exLl-64@>%R-F1|4VFA1>YC8@AJ{uk`Aym5! zSO{uEAlQu8>11Q>CZ$}S_DGl#CLzgFheeNU(PQMO!)iEdWZpQKVFIYil%TIvgA~PJ z)AUgY`8gljB8i8z@em%M#L#X6+bSX=3^|+>-2TX40j7Q{7G=P36p&IEDO@-VrGX;% z@Y2aPjrs@X&IZ3F?y;WE0!nLR13lq3^PE@li8X!=-ZTI{da-vygrBNSP*GWhU$lXu z8Z4^^*KU?O%SlS2^bHNsH#kV4T;lG^8nwGyByoQMU{nHZ%SWv9et_NV;mRoBsm<8`Cu@3&g=Dl>GSzMce~v~B692BWL8xy77NeJ%tWfy Z{sd)KPNG)e!FvDz002ovPDHLkV1m*O*#rOp literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_shared-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_shared-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9a10e9c560de5bb7862312d446af70c2c166008f GIT binary patch literal 794 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 BVhI2M literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_sso_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_sso_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..5b80f699ff87c0b42009d6a8a9a7e17cea513f49 GIT binary patch literal 893 zcmV-@1A_dCP)?=nbvW3z38R~ zJ`OL>d!FZgU*3-o{>Og}HJhIzgNa=tY%7&hVd!Fk=JLQQHN4DAl{CDcD)ee>9lbE5b4_zknP_el8-(1JEh8(<<+Nwi#pV(jdCg%7rLF|Y11Hig1enkM5`&f_(J zt@#dcW+JSVqHDz}RyR%Dsco(6XRpAHL!I} z8&CNCB(Ghi@5XgdicrI1daqn2*56my!6d#ZxB3msgUs>y*me9%-u>bzj<^ICE#mmu z9*&(kJ=r3lwd-9pr6ek%_B>2n8wUHjzvBM-yuM}~reW~Lp@Uqyb;HYZ@|Iw`m%R=? zX$t*{QoRCylsdr`D~H9+I{?)cm23=#_-k~uKpb&gl)k{XKMl?5Jx3 z*1xsBont*elg>?S&OIxWN{`;{6Y*`JyE|jd#y|$IMxBQGlx2+vF5bN5w?(w;I;2x~ z{FdO+hn=Q|oSdt0p-TdAj=qnDrPev@aqjt4bSBT7lEW}s*n0RIF=IC>O_0SMgb z7`=FCY0Sg)koskN2qx0QEt;5pwFs1w6TfX?;Zg74*~*wj+j9pKJ%f8hWU^XvK?vGl zD9{mfThIYrfuRIl3H0tna&ttdUS%U?E#a$08%qXjerPpgimRJ3=f4rLr47T{?2Euq ze>iLmLURQ21t^sXUd<4)7eD(Vu-%Rboa};B+_5bi?oOlMdhEf}u6K!8;wmB84*RwM z0m7_luq5lTF%z>?-rOAWw)gsG1bJ=%}UJ-_&Zn!cAA3j6b z^kDo|;BL`$7VbR*1?*~rYe!&jyaMCz4&06cZcf6P+wdk20Ui2NuyuX?1h%_Hr}sl< z01hVL)Cd$x&iVEY^%GdQTJ*8#=uI&=yckw~+rsa_T0<&+uFC9J?j!IoR0CNAY0b(cp z?E}r2!8WIWwLl0615v8AT4{y4R%S(>^l*TMU>J)irWr!h8v$f|VCE+(jiOYy9Y!Mn O0000}?Sy)UE6e&fsX^a*vL`tGfh4e?L7A0yyk+zC< zjuaIIuB1g28ri~L2ztpD+YV2{gpFBsi_z%^M!`pXx)}5zcZqcQH_i# zWE2dgkx_+=fsAQH=?-+?ASq9}y4@qHXyz*t!kbrn;@Nb!F234`)`t=*%v#kI{uV57 zhhzCT)n@UbrlCY=oeQ7^YXy{RxG6Lrr(?6bhL5;L)q0yV)eXzip+5-W2nd22mIw_9 z<#kA{HfSMgt@kCMe5M8-U*y0w8ktZDr}u)-WA0-LnmXX#^CecO)P`(HDA{64S`OX< zDBfb0)B7Eygt8(iSZ%||+$+c50$=7sprxg@oaN^FD+Cp{;e8({4cVDCj6)!F5B|q6 z)qb-pun=^AHP@wSaIplgH^Yx%h(zrQ0ED1LZI8{Brq&jbao%KRKdX_ICB?*Vbi}Y zH=e*WF=sa^YyS;}%ym;19Nq;fF7x~|Gz)<+9?hx1`p6GoL*F2{olvqJoQB!1&2MZN z+wT;puJ(J|L`BCMdC?|#R{M9s`px#Px-@A5nE zIq!MTIehRx{%gp;NqX$~(os=;;-5H1;z!hzKuzw9J>wH2~iEsmhz* zuJh>Z2m&}8W6%nSCUdZjwGl?-2E86mF7T){V-$!Zix{&3(6@tPtwkpA7z#R5cMf?J zw|3y77=tS(76`odJ>NE+3P3j9 zJED{k0#C56y#vosNh|=6Ho}j^8=U&$Dhs>DdPcN&=OEQ)%$c97RIWGhqz?xG{uXn3 zG)=u3_l&3*TBb5S&_2_YNb(&31Y3*F4S3WVwkKX|IYt80KGP^>&`^f1&rYDEaOq|O zDMKC@{pz>tSO;%BJj(|c*0~5A+?`|p%rNi&QbQG-wfI?9wrVEB_;Y7pMtK$5U&U;G zfGAe#g*@|fd5WQBb<+}sEmki4iWf0aJh^`@@pr9az7ut;z(nkni))(z6m~eizEq}B z3u#;nX@w01z9|;#<-Q#JfypE1_Qc{IRM7=d*@uuuSpz;(kx$jxk2e+{y3%jmn_~Rw j^V!KG=k|d9ZKJ;fsS_XjRR8gG00000NkvXXu0mjf(Dsi4 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_style_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_style_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..faa5706b54bd30efba7897e1b641118d08e1b91c GIT binary patch literal 968 zcmV;(12_DMP)q8k^Is;z|zilCM*B54h#jn*n@Gs$G~m?ZPM=ibjn9?oRa=(us?A1<78 zzQ_Ok{~w$S|Kq=g{F|b|;}>34^vRuaJnP*1+G7W%+-jS@^vPrk8Vm@;fX@U9rE!Iu zfo_a-0jef&Yl7!hiGiGXjX zD+?=F&!2GzM<$*EePUfgj|z2zBR`)mB{(;gY5U<)dX22!4Uz&>57U{g2-Q^N@j}0A`W#CQ%&d25w96>8}}7A+(mpsGEi={s%43oqQQ( z2-cp8{qb7-Kv_w|>FtP<%vxr17C&2L`ut@apVs8D`&0k;xmGb_qTwvi8idMZDhEJf zcgWdG^W-yG@=IBY*}MWjCX*}kRVmoO-u_cPfrJmLXrHLujZlM<0=`j^uQaqL(r-U> qrP{vRqUG7I>-YAb>H)pxMgIgd-ClQc0es^C0000!%)z)J_^KCjILaWl`4rO-9e%Y zG(Hw4y1)o5SilA~@<;<46JyhXQcN51)tMBeOczvREkmcJ_IBnzj*BV7v{5?k#*P2Y z&G$OL?>qNP4*akGT4Fgx;YjPd2=+WE#}(}U<;piPZK;RXKe4M^TFyZvB|r~|+Y62k zf@suS41gsAq~#s}N`MjT?uwo9_?b+8JREtp9XNT!Ze?}lIl2no-6a#v_8^$K|u8I{>V&aB{h6d#-Ow@e~A*LSeT3bzFY{qw6es zZ!{Ns=k!Co*l2R$YH`ljupt8=arBXb08ZUzoJZE7U%rHXv1eXvU|45hSkKwjYixFe z(%d!0_r9G2$-)4e9s@w{y_lUS5Ww8GAEd-{{1_sc1fZ$L;?PS|XbPO`_k0QkuBq!Q z13*cR17OvKa4S{;VAqAwqum6{ZH{)NFf)R;zVH!^6}BE}Fhu@ImpZkAe&TPm#PrzVYaUnQ0CF}&{| zx}P8*Zmrb^Q;!xar8m<`>Q=^9NY8~9SFmTKSo7FF169Dj;Yjs~{CHLW@E#%M3E=u# zb2JofX|eOzg{h|hddQW^w?F{+P9nMiDTI6)NfR(8q-?pdwPq;4Zb>g%ZU43Pj#NJe zc60xF9f>%ty3WC0n`(bsShK7rGx+03nU=9PNmnRR7qLV`)#ShB{tXy0BNLh#{aye7 N002ovPDHLkV1nnix%dD8 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_tauri_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_tauri_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..56417713e212a10cfb54d13a82e85b9f658e48cf GIT binary patch literal 1046 zcmV+x1nK*UP);(UNPWdYGK6EqUDWK&B_)F*hx z7{M6#;GbyXH2A=qCSr^X(G3(LY-DvVLASA%ZLk?D?5}jUTkpL;AL_b}(7EyAizm6s z@Avzjb3Qre-upZ7zx~%H?j~sG-r!*b^^5ta!rFf7%TI^3?uOZ(wIfNuzz}LV` zx-MZ8P$n%+16Ve|GHnNuWP@lwed6QV+x42d;1LOBbNdB=opr(YkZf2CASIOm2sLwWVlq1D?1Vr|lnlc6GcW9^ZSQS_s*?NJ|#jmUUC~Msv_-|7n3DDbAl}Xf%s>LOHG|biYyC z-?Vl81TJR&JI5r=7Z;c<7izULhytTmU1ENMhNM~ zHXcwy&CLk`-~U^3!|h_E{&|MV9%3|VrOv&cX#m#c#sPArRPLKKlhu(>vNQk*CxLyL zl1rfwt$m7w+f82E8JwY?Q(DvMB6i<@gVr8T(igE|^V+|XOVc)>0jOG{#WZXtpxy~E z?Jr?w%^I9tUAQ_!3$*TGC*8x&)V`$P*5)07QR0TUnDyADQ3c@C7oXh#E@i4fFZKf9 z3U#I0b^WCmxc*`zhTE0$t5`q9>wCf;O_8)mR=owFq~$r831H-`1VEceehat!r6h85 zN#x}b^ZNlP%+)zk*T+hS!O@ly-fr<5sJ8i3R+MuuN;kz@VY(y5;H&S+35I zrN-kHU`6c(^2d7~lrddcsva{mMg6G1r*nKs^T2y{z@cRs-GC1WhPU~TrR%U!510Q?Rb|X~W{FnX(N}Isr4{f17bT(%kV436k~eHrNLkhYaA{9^+_ENGprg0Q zla{&Dowuf@cue-PAA|4ZVQYS_Z?v zpwINxZSL*r%H->WQxR49CLi)kEK>LB7ZbOpt%W6Gq92gtkfi$u2Wkd zX70j9QX``bK7CHsOjiyFwlp(mL6ounkBq)~OV&&iYH8-n;AhP73918i1X~uPS9%jajkQx(?KhpDQq0i{UBhk1ARKH0QIq;(bE>RDA~0W_CE zpt*_hPlJ5@@Uf_`oyjuL^BBYJW`1nN_Obvqp&**>BL4DqIn9zWO}>5@!0q#HDGT8B z&nBHnkh83^0061@FrsO}J-2Q~OD@^v@sRyCIjyD{2EoOP2rODSb*3DLfk#gO$m&kG zB*3w4M4!IVvA*{pI=S@k$5Pq$)E7<+l_&|Yk|}B<^&kRD6=*{*UQHY0k48|ajK?E= zC3lb*iet=}LG`@4Qm#L$7VtMjaje|^GqJYGf(``Y3f|?Pnd1{oj*f-G%a*#{jNSWW zXDquIU~W@Wt$U`||E0hG)X$uyZRgz^5wUrw6hnsLY&*NI{g2sfy?j~s2C5DsoKSG| z!iKh^Wdi_q-?_HLQTlZtgyIsy6@@dRizc>WJ&N5TEJLZT^BdZZA)+b*0PN`Q_GzBX z0bnl>$&=E8blZ-7{Nl#;p8S}<`eg#_x_!055hEmqO1M4JcP7?0?aT5V{+a?O5e9gw P00000NkvXXu0mjfsJM=B literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_temp_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_temp_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..06af86b6f0b788e97b0eeda9d446b0d790c32050 GIT binary patch literal 950 zcmV;n14;aeP)0H7jGl{t;ZK!R~fEd9mQOGuAC8A(8iWE16Slx)|1h1=z zf}1V`>q3YNZ;cQ|D#3*WMH>(rEX_0~CTV6Sley2F&iPzelgT&R&8vRtS5B7z6_aeh2JTB#3AhTjBE?%c?3@jak_KY+sh00O~*$?&&TEPdq{y8r@% z3ikq$y#S_ZT@M5U9-qhCV%s(CuIp+(moFwZH#6x>x&Zk01l+95{0re@)xw|p{=)N! zz75oa&ZBZgMCyHh|J|XM<__SS-xn6<(&_Xo+l#()a$-!-Cjdmb2f?dwu`;};r|0%S zQ&VRmzPY^m=Sn1BDCB#3dymKB@%2IyrUx#EA!v9_#b1T#Xz7 zFl_H_vp{06XKt7#ZSC#EVsWC;jlFCDI7Mf8=}P3hZQFG8^*#e&{CxVfBSN*^06-uR zz%Wc!S6227zgdmxY{nOhMyavv#{mogRhiyv!t3>t%VlvK=O6$Sw?Da+0Fkz5znkv1 z08GpNx^$yh0?f(*yT+!NFZ?SAz%UKk+S_SuZQB8;`*7syA^?u*wiy7woOyWzn5!1z zx{6^MRRJ5<*NH`Atgo+a_uA^3@y{PlEKTlw2P)Hu-d7ot&*o?h1wjNE1ep}}7@tg=KP6l%tGb@trgNOl|W+u2ty0dWwgytCPy zlS(GFv%6bO%XTXD%5H9HE!EZ6l1L>!fCHWfr+)aVOG?bCvSwNCV;?>^x=`tPbZW{x z(p-NQ;T?sE^Ft#O2L=F)&3@kRs`&-bit-7_mG9;2=}4m<~Rl}UL)W=d}9jgKE0{i%HBmX1t-r!RiiCc((k3r?dG|Wl+PoBBeC^=kfeYtwe!hF|J@>+Y`PU-$ zl9YOMYe*<@+b%|#uAAM1&pvsa7Jv0P5i_d{DhL26gveR~r0PI$Rtf0?a14-!xQ9>y z;M;PZ8@cW=diiLQQ8cA5Z0@_uLUDts+4P3J= zzoQ=6T7UBY+J*gY_b(0apk#nvbv|s$AkYx7yeUY{xRCXI|An{&&y&gI30uI@274+F zAQdqm#Z$Hb1)RUs&B6A#W5DExcg#$Gb~U_%P-~cI+X2S_e{(b7@S$~1J;1MLnD6W- zl6ymF{Ue!p4;~{=bnzuC(Tijb^;mKojj3N>Kr7DSHcR*_OK8P8JVqXGWfiSBhqsd3 zmE)*`@16a)O`T%PF@AUxWZSM&(&D(3!A7WyvM;tjKzL=GrgD}_Q-olCl0e}r*|sZq z%p&33Th_y8&^7BoSdU1FMFF$hOG>d?>kh3=5Xq(SR@P`Kd?Auc j00fxss%PTK=;-QCAxqfu5{}#G00000NkvXXu0mjfmjp=r literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_template_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_template_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..672c8b84d123884c66dd1cdd52b163200cb7d28e GIT binary patch literal 811 zcmV+`1JwM9P)6G0e5dn`me$2`@#33o_I)$I-}}sLW@h1k z{Ob_gF^zcIIzU`BR#{HE8#=$6vu@sVtpvnXAQ$8l5G$J`2Y{MYMKuFt4G<>fiiBL? zjl1FI*|Z6G+Pi?7^*RMG`l$Ubf?6Yhgkx)|bJWxRJcFc4CKV|FDL4!q0VWI>zO}a^ zp(4Y$Be}@*i6ZWXu1W)dVT^j(E=$Cn4Zyd@*DonjUI38D{eV4r>5Ea#8jdBbf75&} zsNVlP9dYe&Scqs^9)K8o*jA@2qA!zSCZzJ<)eO4KG-@0|hkcmXVC5={l7 z+iDIVr7W|`=s^K6;%V;z8aIo)!y#npA$FF#vIY!&c*oetms4f{A?cMO9RQGDP>8d% zENeiH-43knBB|@oFewSZWMrxszDd7; zgi188k~vEwfzs2&Y%UZTXF0!?6>CYFM_Er2is|WAD<}*NQ0(u=q6Kk;hbZ>3ja;)jQ?$#D>dj`P)b*_ZFW(P%6Mo;U;r31Q={n;h!vQ639@_Gk+1lK+ pJE7}U*#HD2OsnR>d)?g&zX0=w3vmIT;&}i7002ovPDHLkV1khMZEOGl literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_test-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_test-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3b891ffb0d2159a2bc2396f0994e8515561f8abb GIT binary patch literal 822 zcmV-61Ihe}P)eo} zK~zYI?UhSNlu;bTf8Xc4znOBB(Z)(sCQ!6|WEi6fMOG-(Drw`?!or;`GA&aVDmu1_ z+Gh_dXxF0LH6fx#10Ev@{Rm;k_-l|?~k2SJaQ$-DOe z*jraedTnh^%ncHBItseFFxhMbeLnK8Hv()2U{S?3(gxL%^9rJWK_o+LzX zAW7skUn9A=I3n%$czD~`gm-ER08L^dy3|xMs?Pve{OQ($@Bm4g1>Ec7j-y8uOKE9p zB=dmJ7aD76{krIOFC(q~`T?(3^3TujR-4T#ga`!W(6^}jU}b2i9>mQElt)53p|;zH zekYa(2Xje~&dMQN>eA8|n*|ht7+IYJYx`+Q3W+LpS(z)^-E~BLWR2ZEDj{73meJi(1@&p%>o~QC3IG5A07*qoM6N<$f;-P{ Ae*gdg literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_test_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_test_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..61ee3c5f56738fbb5b9af416fe50baa92ddbf4ab GIT binary patch literal 950 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 Hu0mjf>Am3L literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_tools-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_tools-24.png new file mode 100644 index 0000000000000000000000000000000000000000..866926166d21c7e59518fae68fc709cc4a1ac694 GIT binary patch literal 880 zcmV-$1CRWPP)3~73mDxMHCeyTE&7O=-LHc6?Cz| zqAr7Ox`-f}6r)BEf#k@d&CR(%o3>ZUH8q!i8jjNUeScm2UYYji-D@}9^uU30p7WgV z_dMV8oOAf!{%Z^V&7x;Jye9B`R^WV(z5j)CvDJdVut(YAf&(ZH=m`T?Rs@7Lp((Yf z5LQjFu%IiT7$d*k>X9QyEG(aYuEYK?@ZQpR1;M@!ZwTzlMi9`N>E;zoJGO84%K4D; z<>M6uL7)zu{{&vXj%3LFHI%MVIe1BB|0sC@ZMD>IBp##h2l|FHyU4cN<NJEv4VJOJy3|ecV2KU^-xt|yq5^1J4<5{%E%-Op2v6c_MLPXrjxtZLuFHy0@>;>tW{FGU3~ zHpA?^1UX!^%QJj*g8a;*a&d}J&+uqntVi2MDqRFaw^k_IWEsdl9aBYwVJQa zlgen{R{PgNShAeTbVDh7n~3F;OhuZv)X;OD_N`GS4{VMuVgKkVGiclt)&935(T!a? z(23bd^P{J(XVShUDuiqVlSnLYjg=PbD~JVtIXP-}De&}|@l;wOF(vWYfQeKnB+8_% z#&mw%@8s|w3>-FznPg0RJgq5AJ1ScFWPO*9m*NKBv?m?jp`3oS!MEI-PU*v1%m;z}bzQpuHuicZ z$C4$U&WT{;bwzVG=?o|oI9_+a&)MP!4%wc(#n8@|EdBxYMeE@oK;(n~0000iTr_E8ZA~b&L@Y(20>kh(Gfc?0bVeK(F}+sDpcyfJA%s(9CX2g}5jQ-BA|cOdB< zlxCm-Cv5{fvVrYLCxS=d`ngLtPwtGL?l|%hn1)UMw&1&mKgF2F-7Vx<00Y6(9fy8; zFm7tMZD?DnF-HvY3~(=-bg*DCPa73)3QXa#(^X@O!NBlBD2ZqZmqY@O7sZM#rPWZP zoRRpR2MyMdI)ACJX6Ism4`&6=82Ca#t%2v7OCp&AC6Tu@v^StMf!Ee`+CaQuE^ifY4NmN@DW2QEF`r8Lqx0#a*yuuV)`;krst1l+O53a2 z8oL~+|Gdy%J@-OrWJPSAvQcInt=f0=d2?=yrpg=N77Z09%LnH7m1j^W3?c@Ac-rfF zY{zpn^e0Bh$HlLv9d!j*$ky{}Z;XS%afT8VINAb08(}bBNrfi~K!LT2HfqhdAX!&k zJRgpv{1{k3xM}tEMfI_^io-zDP6JB}O(j$8ExgZfiAwyr%iKwpQy+*@=~=+l7Ipp^ zigH&rb9}kWbz_TVtT@)mFd5J12p1AqePzSuv9$gkO|07#?@iKjhSV({2$8vRiQV~>$B zYfo8YV2V25%o5j`3SbsWVB!_O+#Rn!Pq{+r4uMIG?zrk z7{wpSJ==2C#y~Qe@3V>5`DUpuiZPrFAsB46)~a~g!@b2Izs%HZR?<>B!IS>!>;~sQ z>%WB|Zot|4)%a#jP4OH?lleUn(i{A{_xHN45huFjbFRJqBwU*lIhr=3`F5>jUT*E=>kZ!Rk9koWz5((8Fm$!P&jpoDbSn&WyEZ3s9BPf` z%k||Y7p`pOg**9C6t4iQ>l^6q@8S4E{n2iJ!U3J(8sG&|BD~Sk$yZsq|5VcJ7W3*u z8H}AJKUqk-Kpw)?mQ&2`#viyqlN;dfk+*UF2438E4Bp9mxc~qF07*qoM6N<$f+*tw Aa{vGU literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_travis-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_travis-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a5ca23444692c861120fa273c238e96963e9b95d GIT binary patch literal 1073 zcmV-11kU@3P)f9K2$XKu`;%rL`H%1nz;S_COnv8AyWX=tLQByD4?Ej9iD##rOh zg&PwSm#$1qV{NKNO>0bJZzOHnfI_jB4N$Iy0&_oehJm@A<3g>Vl>s+yd^TUcyzl$` zlIQ!reDJ^iYYG2msQc(^?+Jo%YPB9sq+{O~pAG8QYku?C>+U?ccQmj7-3WwNI^zd+ zYN{v!tQ(*Txie^3fbkGZ?Z?0TDzm)aeeC3E;L|_$D*)ZcPri>v%c=y8U8<%r7>k&u zbID)c-rI@~OX3-qD{)~^4{a0Bq-YW{snn1zO7+S*&a9c4~0!1PR%tC#QL z99*EGxMW5Dx+3b$M0oD47R-{K>lg1bGZsVuynZ)rFE^4qsL}uNkL)lwAJ2$uH6KdF zX?$Y`I8;IW*N9YNqt=f zCZmK&GEo0?1p_}%Fgi9*QIVdBO@Gc61jv~*z5WbGPP8!lC{9h42eVO6WG+T5A`_1) z%+7@IxUEzNN(s)z={(g+cV+5=!{Klg1dJ;(hhKdjtJ#RfA~7-^!nwi9-JwT#YJ8M! z^D+1!h-5J_HWkKfmayB+baXaX<@5P%1rOONNnGz9P4^6wx{uiD?6vg?1fK66AAAE9)d?d-J%>*t7C29_DeKkc!Bg11; zRG2NKHdwKm&FFLzqOO<==k9zj%kpT!ho8Rm5f1wcOYldm_!}>o9eiiTtrExP&F{<1^Vv~6DW5h z=wNVol0b!rn5?jv$zZoxFzcx*2(T4NG?bLm6Afatz_(X=F&ZVj-f|{pB6J$Etmj?RR{vX)w#qZW`-guy6PjlPQl|GuX zx)t?=nrAATM%Gk%7ZYd4qtVj+0 zNvbL{*=*=RI@OuUWEPgEuqKr{ox5udrt>CrWogu`;4U`rIruD>f4HNBXJem-a+!0A rqVxdy_4xji1c$@nx7ln}tdhj9x1DHbS+H6A00000NkvXXu0mjf)(iE! literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_travis_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_travis_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..a51adc823331fcc6dabf9b8ee8186f81a4f05d24 GIT binary patch literal 1179 zcmV;M1Z4Y(P)uu{gwz4u>Xki1#HFHdHNDvta2?`iRgHiFFi7!kPV_-&Z z0wyFR`WJX%#E2n*1TRE_Az-H53`2!(V`FRAZ7sd5-OAdY^Z0^D);ZAm#y9@no#glX zexB!Z&UqgAzy9kI|7NIt$KIU?`N{*EOvZ|uUAuzXq{FxGcOmlc0CprN5Ms2jLoNVn z^LNkyCJhiuewze4$kv+uJ2(7g0nK~%0kwZV7XUh%_k0A*dk{cEqb?0Dg@T?vn>JjR ziokCz8+z0`b4XPb2~^85{aWF$TmoV#(0xC^>E4d?peJi-+PcuQY}&&B1Vb^tIMt?m z`)twW9)CgRM2d!M_PsxQqVP3q>bGrw`GxqIXEI=^o!zyB7*&<(C#=tN3b*f0yJ z21+!k z4TD7sy?oMg4zslgvst6nGDtNQ04VXO`z(;SpYwQTgcG#0esewHz65itE3sKLZuiHD z-%gT=DlBne10N8Yfm@zZ!N-X()i_S zH&&aOP$-J7OR`xVMFCAyQ8kqro^nQpM_IhsM=YLZ<=PLHX?M*SCnaJ+K)Kz{=`+_j ze&QnT*eH?VQG$9Nk>_*__MFj!!bG?R;X}NZsc(n6#fPcCRp~AJmE&Sd} z;>i@5Y?e}o9Y>LPh_OoEcw*&{ki0$?U@>WUO3Ubv#p%tbxq73Q!B`5D$-;0Z%d<`O zRJqEy(AI?z8rQo*^!CNbXNO5gQinSF!j}t<>p=7F+XAIzye8c+xS5EGqmg#a?{njJ zmC<_aEQ7Hmxm+H%qTyX#&kSD`z5Nl&gZcb|ng01rhYke(@qJKQTJmn~EYGS9%a^Ra zaq1%Vxx(*Z$k6G@jgpiGKV^nK?TW>=7AX3=vRZAS*%=Pby%pCyh5|q^m*ab5gd$y# z)OFH^K`57tbc~K{%4V~}Fv%NjYFXK`T9fsN6?NJuMozd&Y|Ga?!Z+Xjn2LtuEs=co ta4MB*1@y_}-miqy>GU}qj%prY;tvTRteM-76vzMo002ovPDHLkV1mI}J3s&c literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_trunk-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_trunk-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e92ce7161bed01ef3146c9be6ef9843cba7f1b5f GIT binary patch literal 787 zcmV+u1MK{XP)Ew5geUm z#Z2zapsvJ2i{D3BPtZ3S1{70kaTIX+Z~=8b4>!&p<@NVTCf0NSv`ocMc=BnkEauDn z3f~r1Y4#U$;b9bd7lwf!{#!_OMMZ+W*3KNbQ1VdrIMpj5#ioQ^o3b&IS5mHKFq$~h5OWYY5 z%*PYV#}fd|>A%O>nDK{?#1lj|c!0unT!uP8yq{BPg1Fw+$XQb(-J79=77=t zh@UEQyN(pPd_Q&bMLDQF{RcZCdFOJwQt}e`Y)iTtq^D%W#f%%pra`wnon*BCX;Bc~S^*R1U(|9p0K)C+>Qfw+i#q0rcpSoH~k zNmJDV*fziq!;3&1xHh-6bo{}1K9_qJ)yd8N7C=6meIGd33!thqt=Ex!Hv4sl0sH>l z-2zZ}M&Nm1wFl#7t2KbV9pcHZfR?JKmX{yz0YE|A^Jfl;8N4VVDK(5cA;#6{hnIf) zIG1}%RNrd@KFQ@?SJk=ZOg)51tmD#K+MA4yR)%8}Q6r3@0s^9nNkHY?t1I9ARbISZ z_wTPD48uP~t|i&j)Nq_q!>8f}Oby4mz2Wi0KMnx>mH|M;3kI*X{{+%V*+(In4}C7B&hvpZ%3aI5NO)+-HcLtoMpCu{@2 zHqEbqpc^0^X`0P23=9$e-f$UDM)|c^^HN*u}5asC|V^8cqrDUNv=C1~TjJG}4tp7U`I-+^8I zZ%I4aRomMD;`-(xQGv7gy}a$>HGPSoRRb2_H82w%kTO9Oqv=cl+Xv{xT?7_j9Ang3 z8V?7;{Mz11;OX)*98lMDA5A*3DL{ylWfcCUm(=vG4WzDKg#&~*g2b6EyZEgPB$2UI zNEczT9cve`r8a%0HnX0KIX1H6P3!utt{JAhK~iE3T+NRs!)|0^&d;;KIi{4L6(Z>1 zXF$WPgqZcIG?b;X$0FlaLb#O>nt+68nYJsLROH&|8uxPkpp9$C60n=~RapJN8-?+t#2Nr8?wSAWZ{f>lKk89WY9g2mxQhEy*&u5LBM@%$i?~dXikX z^5l}e7JGY5e{MLyS#)!wQyLx)^#ex@I-MJ5Q8obeu0vTi^NUlNG3L(CUe~0@|0tyC zo4kItAl9T;5vpnX<9fA(STxJJC}(+^wQAOXu4~L&dU}6sjMb#)&6sx)bM$b;KU&&@ z!S2#bOIF9n1$pjXLEMT_)049=!PK6g9F^#>8O>h58hSgSc)lrt%Ynwi!N|YN>h5Ip wQZ%wAXgWUrmtWVH0h$Ai8BB$vG)fx4FHXPSE~wPJGynhq07*qoM6N<$f_F1tbpQYW literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typescript_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typescript_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ee068954679e6b7c093741b31572d6462dce135b GIT binary patch literal 956 zcmV;t14I0YP)Ox!yBDfGiG6883t%91E#-z5;O512t(`jmw$xS9R_s+e?MJGw;Iu1!U zZv4Ype2;T}-*-3<_+S6E#LZ0V=uI6IlBX)=sE9{?(!0mi)h^zCxIZdPxeo|P#Fql{ zr5W;GAdyF?*Fme4Fy+fY0Qm8w-o3*e@6`L=l!(NlT>?nzsrMzUs|bLHij_8W=&57w zxP-PFZPgX*6!0K0R)KM)h*AW^%ajlTSsqZ-{E*&rdj&v6C42i{LULpY(9xTE2Fa5} z`yRkwuJsj3$Rlo-DpCGWa5k6Z!De^jN+hM2Krm7QP-4*&Or&RkuzNxQ1=H~WU?Y&O zTcb*eU$Kx9=A;)JWv7EOTd(AnbB6YIT1mbC7|7jjz=9g0>&{z`{+EqEzoKKJ>^Br^Y37(f9)IH~eY3+60`v|%xowK?!u6AgYZX~QCISlCjM z)#~_gcN^OiVZI-mW$PWaReRbS$*Pg(p?HcMuhOrW(gr*?F7LAp&YYd+3}E;oyxY^l zM}uh=u3bN=LE%scHu8A9h7IqX!k+n)y}xHnRhn9~V7`5Iv4i1Px+euz%_jKejw e9#`eGXCT5bzNEPYeJo_I6Th z3b|w{r8wmbwb|Fv2SwaQLhwEVNg6;9I_4`PAVdRx0=R&l*&GA}G`-^Yu{-V6s;7PL z!kcnR<(Z+IwUrgNjot<)8cr?LrQ%^;GmxT?$*q`PCjwBuZ9}|9SG_$lMfI%jeN*p* z?UqY&UmJCbsR4d!H*P_>{O9^loNGjtT&XTjJsnt>xNmQr&0@@oOj{eM(D2IIETSH2 zUGk5%?!m!EV|a3WZGWSDIR8oTj9}iHln@kCnH-!DruUCfjk?BN^|lX=Zxcg@r;a}V zxb!d6yfYF%mp^WqgsHysFTEl&7Pm}~+dWA4+cvJ?0r&+kV%wIl0g?s)0000flizy6pVbBA!mqJ0iHjbMhix#cg^+1IRgcdFP z2PC7Q+66smGZDE6D>qt6mZoT?=H%--k2~kr#z&($X%=n#!hw6v_x{f3ch2u{4y@^a zOZ`bub)^1^QtD);e+-f1cdM?oJ6Ae+_<3D`l)8Z60U`=Ue)a{~0&0&IhYMiE0Huxd z0v@27;jCl#YOW^I5{T5F0-9#~X@HtYL!&@>CV)W2%%?#h`7j)5Sdal5koj&JK%fjb zl5q+1!JB8=QvOU9|5$5)ISE2S+t`vy8_#%5-;RBzW4vcce^-79Ay1HAYlyaJ7YUt2 z0h`tpvfW$k{w=`mG|4m917O*4;yOXL;lk}S0Wg)5DLY2%=zByU;PNq^wCJ^lh>Lv) zXvqi&d4hyIK>*smchNP`PbeqIj@8=YMJROpI2<;Wu7^3D0H2KY@cMcDy8&&5-pSOLi+dq|zRnvT+ zc=_)^^Zpy4&LMJ{+Lp$-@urHM7)Bl1d5P1{dWcjy>9dCcABOB(@pZjO4&yp-6o*~K zt%Hx~vr7RVFiM<`)z`r74uiT4;}Go5#~(G#PYZ3PGtdNdx0n?UPKr9H~0Dx ka|=o(iCOPB`#K5m0|-yZ)pg7ti2wiq07*qoM6N<$f&|JtA^-pY literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typings2_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_typings2_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e45011154713ebe9439037749a27872ae21881cb GIT binary patch literal 841 zcmV-P1GfB$P)hnyHX|K)67$Lb<#nWC^gyshiCJQwC_t*o&xe zP~|6Wd7H-i?X`{qV9|)}1+dpS&H|}^2}0)YNsPVD@xVvKeB_Vey#pZwSPnG$LA3rJ zHH2gz{s>RQSBv@!Z29y20Q~A;onwy@3P%BlYKn42lPv%uvKUm@U$#D>L{uT3{Q=B| z$@roSl?|XqzFHwW5P(8j1m1bBX`Nl}r$Bcg1wCaT4C=0py}Hxl4F&AAMK?fl#wI;) ze#?`l%D)!fkeo?+Tnbg4^^`WeWKegaKvH9p)spG9)axq_R}UYuGD;9N4iFv`$}DR% z0KKjO`iBOI2nxd*5(lNA=+IHaRVk# zKzdvX>2WCl+;1%BbxSo%<5O6bkTx3g@!Mw%F-V*?i*2dv>2daVcmM2*O$eKP`!u)E z08ZKRIuyK`sL#G+4G9C_YhOEW+CE?nvBV}u#*g~7k%^&HNg#kZ)|o7vk%(@%xmW*! z3zau{+g^jNbmavwx#dnE0D#R4vdB(ahBYXZ9@h^_K9zC4^7?TYb6wkO9N$phzxs$u z8_G=;t<~C^x#{jz32BC}7`I_i(fVF{__@LaB0$pQ--F95&w<*F$Pspwofuuen3;yA z9l$W}C--q9kJg%L(mQ}CG+8m_>w26_+8JOSCOwNQtMAgJF9xE3@3^SaCP<%H7E2DO ztH5+bb^sYb3urmym-S7)Mc3BGAbKRw#n$ItfA8DVCTY?&O%t=Z7OBqFIB_OzKq z;Q=79s7wQ3%>X6(O~48KJl-{Mpgi6=7eL&GM$VPT z1=&(;8>K-y74k4}r3&NEC6ZRi-4!}$KyCwA(#_bOfqSX|s;Xls(g$*41rUlxdVua* zrfdW1D_wn65_N*&_5nk*Olpf=#ZHBk*sHHE*FjAb`?U7e3`j)@M8G^mr>8-{_V6ld=(3xzB)`YJA>EW$kQ9cY;t&AQ`uDHn?FXGUQD?G zGyoRSiXAD)m|2p!G->lDuWa3i+vXyfOOwo{vBaXW*2(b)BRuI3GM>7`4&S!Ay)BR6 zs%tm`OK*{-tsyPC0Mrx%=JFZ7pNa$Eu4|w#@Disdf8g@mwUr#d!$a5`;DzCLxH5m8 ziRsI^yk*+v>J~m&xk0?^iyKNYR&BnuYMEWSzD&zxDx0FaZ5KYfo0jPJpCPr)l9HGvk5Yvjx#|3w-$%?tKOPs4t�b zTRg$DJ%N%{5!-XJ`F36I{r2rR@Q{JN7V8>l1?W86+rG)}8w@qI-!Yo}btIXe`LtkJ z?`6zvu->p)HE7$K*LAU!mW)l;I$mo(xM6?mqr2m&#AD&+fXivvxsbY)S(u-_xavRJ zv*-K9LY}Q{KP4|3-#znD)3U$g>sRmF?DTwj?}p7jzoXfnF|+1)Dv_SbCZ8YO-T%v~ z0paM&8xdWvEG=XE`+qBs2cw7Y(pp+Ejbto#XM$tLEP%fOD_$r|Q8OsP00000NkvXX Hu0mjfkITXA literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vagrant-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vagrant-24.png new file mode 100644 index 0000000000000000000000000000000000000000..53433ce916616657d87fc42e386d4a2070ede4ed GIT binary patch literal 940 zcmV;d15^BoP)|it1fFdL0lC?g;v*& zh`TPD2yQK?xDmmHl!DrT7PYAOkr0d0kYHOf$;>!!=Dm5}*Tp0zPwI4%jT;ZV#X0x< z&+puOxbMRM_FtRWjp+D=nb#3ax64rkXXY-wGOz8l_|!|Yy$Jal&;?vai1kQs6-`~2u zY&4p-kW3&zg3?pZemZq=Cc+oUK2OgeLQ}cV4#c>Cr#HQ1I>Q@hrx?y9sXa9|_`!|e znEPRYP)Y<0(fV4AC@QBX9_7iAeJqwNM)IjI-W&Pygu1=_(8ROnfWw={ z9WvCDMo*<9dA_1Cf3J@1`KXFQUp9`}w12sJe$r6d0RZCmR;Q*NU^zZbU!o>k5Kr$0 z6h?D8vu8%hrQ-k?wY9ea9temz2AW%M?Z9*}Jjp|u6kYkjZ2(wUwV3&O4LugaFfE+Y z%8wlZ0F=;2h}NaAG;9De*=*}Sun`}~rAZ~?NGUPa?`>&20qD(j2D+0>AK8y41Ax*S>S9N?J<83JJ19=7L`Psd3oWAyi=Q5At zqKn)E0jm;j{~JVejGW$G$hdxhXWP7ZY(F3WYEX9r{2-)WzPk<>0GhzrsM)!lC|*xE zsi5Kdff`DQA_NBu8BQI_aAUddT$z3%@lQ?1M+7ieJZU>#@L?z=L)iqU#kUqDZW5sL>EJKgndg|DTH?O(!OiWaGvU?&6&D zzVCC-ckkiA|Mg#&T8n9L=+qkm{VQoi>-%1PtnXT6wc&3aJG&0NR}|C;e5%2z3Rbiu z>)=c92r#|?qZ>bi|9en)3n*r_|_~P)`+{BAd zcV+3?V6ms8*%~iojFZ3Q_P_RU=g0GgH-|4gx966|_e?{X>1331S4w<%F<+YtxJL~R zo!XD6Co5993$Q?)0m$27ax|xVdbgw)FW5Y>Gt20N%}E~ zx7kz|Lktr?2*YW^Pe(LrJXEr)dJ~m#I-zh}k54ZB3Ba@+(vq?8G1A=NDY+p({635A z`50QWK5b&V?svzZ?U~V5E_D_tEYT_eIvVss@9coG<1=IX6uip(STQ6NXl;n`{@zv^ zEE9m3;lB-_4;<+76#V0Fn6E78Qj+~n!7LDS# zF71in0zk#7svP=U$p#>Z#0UW|tN=DPSR~^nB0|PkIC~nv4b9JiU^zg0 zMzb-Upue-3hy(Wx-@Q}7=yCwlP}sK3Z$+C~ zH=tOqyy1*nt*ePg$(SJusRjTbtk|a88x*I;@|4|x>C#_SYwJ=;Qi&L$2rcny>UDsQ zsNt0WHzhQtQTYyYwukNcG+HKBBFcu0g`pL`>ynH}mG3&>rAHsQC?Yvf-g3{jlnSl5 zi5W5QY@6r1o4KvI9@h^jJ049@C#Yy~<7S{?mG{B@ht9;EWKeSbzz9XqO0hLt$L_W| zzPUQ<9PPh5zSyIe3Rx=51 literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_video-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_video-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2beb2138c73291f64798ba6e6c45219230a0d6da GIT binary patch literal 724 zcmV;_0xSKAP)_PKyvq+oUZbt3RNfE~B7b?b@_# z(JF%$?PH|Cpoj<@3xrGvQD%%9=jZ!zPYe4slQhpZZ92Pm&-Z*k_uO;eh5zxdL;j{H zJ9X~5s7(DyqgZD%_a7`cJ2iiLWnym_GNVEY$Rbi`5E$)4IHqC}06PYlK&BB*0n7O+ zqmvJ3ypMpdl4irv!^ z0FX3>gFy|OXdQG1brQ-rKqNrjvRHExgb_O^*l|4JNn}9G7}BASEzvq~O@MIB|4$ z7g+XBlX`tya{$~lIL-@bo`K4`sJ?GpL#S7KSzoP67_@7ICteEcHSzsZ3XfWf=ZA*c zJc_d;&vRpQLj$Y8{#G@{vioff&ZuFrB_KP}my~*{0u+JHR{C#I2I30iEoYFK`%n{@ z-+?(m3Mku-c@yatrMzUO60Z%0YTPJ#6~}iRXYs_d*ZHr^s`O=RS1BR@0000R?Lbwm;|>av!rG!} zQfkGjxOZb@yHv_Y?mhj<>2(HklM@$!$AN3No_n)D527lPB&M4#)fkLTVl_I_ZbW|e z*wpU7Z+<;AmX+YD0$T(* z*DNP7-t46(l1!%LRI5AD&Tn3_r4Pri&a3dc>lpjHRT*!j8eE0(CR|8*GlT;}{h2GX zND_C_r`ErV^uqj?l2}Y>N8uZwyb;0FB2vWyqVFVYu@*OSRX?u9G5PXpW%18k z!ytR~R34Qd+KvasFP8|7Lr_{FC>98c1^oOnVQz`(*A8*{-8b=?oGzIS3;VFid=uc%U?d}-SLlVEGyxH6+QsvU$b_QA!` z(cXy4nX&IKKX-og;p@PzP8@5TJ&x9&Rm)6AgL7l|rKRQtKn2*^MFRjn(4%m$xT#Z8DqV_*1=Yp1(fI9`$)>fe*07YFToj5Q+umizW@LL M07*qoM6N<$g0;n}lmGw# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_view-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_view-24.png new file mode 100644 index 0000000000000000000000000000000000000000..4c856c7a2118e9ff175a834a6cb1b8aa65ed068e GIT binary patch literal 813 zcmV+|1JeA7P)Pp3;C^1PV6B^Cr&AfL{7b?w6CgDvtZhCh2 zoO93b{O>3HZ_nH0zf2nXc5-HYX@F`L&O{^3Tf*5bcpyP8AzR3QlrA@WywWo-pk zDb53^8Q?@dK{W~dIg#OmZF^1@=f;P!T^|D9JsV4TaNAzc)s;mXX7U-YSZDwUP3%=5 zZdCK4VQzi{=0z3Lk}6CMdNYO3D-`HTU|r=T&o7Xko~U%EfwWBsVk$#I;Jd65zKpa) zpT6v7A;l}l@V4}j>^*^PeG_$xik*xOFmV*&rCo<;{HTxVlV35ua})l^ZxEF5&mQ6N zKqvZWie&F`;vMhdM4~HD0cQ;U@UN&pOZ~f@#8}X;GY?!c=ZIOTnT5qTulJ?bOXcO z7?THj@H*B|w`M(3mm<6~%Kx+YupRD^*tlMAs4*Ru4-+Y`~B zYt>;y#(|b{KZHdkC@O*PZ~=sGb#uJ+X3jcx6^NTdG%lFb0-19Wr^00000NkvXXu0mjf*JO7* literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_view_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_view_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..743f7dc1528b3c17278320af5f13a87e2641adc7 GIT binary patch literal 916 zcmV;F18e+=P))#?G9yZQN z94%CG)pb*d(`tUb_>#GjKT(!Ig)ZP8;Fq$l7v@s#)Wu|lRtiWtz942@PNIT+#t5gX zjVPZ!kl9pvFtsZ^pd!bsaPgZAZcx4})6|Ndzg`6IpPl|`BlzKyqSJ8GOY0~Pxz5MMKa2*!jW@?Bj;#rarooZU$f`1rP^@|d4Yt+@OJOZ&GMR%q{s)u0ZyN+MmFJajavUkY=VBb+wr_lYZ1$gj zu2r*$%mD4>=MXO|(XtYS78{|6{CERn^K~V-it(KtoyIu5g7yIS0s+b_hHrtdG-CMX qv!he>>Q=?fp3cPh&W=v4(deIvmMT5iFpzZs00001tcNs}~98e=VDn^r_oL<$PxLJ$N+5I45C648x2H@ddyU*Ot> zxT@{a$2w5Nl^dm{DA=lK?IV3Axw$u!d&fo7HZRjQ2yXn~!pxjA-*>)y7!Lf$zlLb# z(&+W{LoLM3rb$v?yD@rU!q_YM*x-25!+iic45SfcsuDCQ;EeQi0ASAop78FY2?H~d z#mhruL&eJY$YA=GfM=WgDuI!q^kbnp+f+ewuDp^S$u} z(3}D;Hus=67ro_=#e9)Z3l;+d{mAekvJ10>R3TC)&Q*#zt*T?*RBkGU&jx=@fZDkG17sE6{$dXIkC~XTXkIA_l zZUwv1pxmYoma?mS`91}}vND)2ns^A5>oGBxN4eYNiLjscKz+SC_Q0~UU}q3*Nph~l zvHh&9h%f5Ygb-?$`qW;o9ss6`)aC5{kw#O%tCK9P0{`>TIJS`)(X; zA|gxtavWqJf|Qa(XPl@kk_a~F@LnANOfTEaFXzbT@?~3sbsb<)85K{XMS)yVGP~vg z5E2gUK6fj&UNV?1ns|Q@+3^>J0#UM#4G0L}`~14}7W7eoRH}zadt@u_D~a>FY;rw0!0@Zn8SS~3fZ5tu!76-Qwbh4~CR!~X zU3quXC*^owUr&b?%s2&g@AlK)*MEb13r}uN_B_Ayb)feAH%$=oZ>$Y}761SM07*qo IM6N<$f?2g=f&c&j literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vs2-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vs2-24.png new file mode 100644 index 0000000000000000000000000000000000000000..2bf531775e952be64ba3044af272ae0292f98d54 GIT binary patch literal 773 zcmV+g1N!`lP)1h=qNg7LmFm64l05gjZ{KVlw?q}Nf9EEfi#+MWb@_=$#7bbu;19VAm zM34e}kr}J1>8uGY_S>r+^%6XsUoQc)*EnuTf_-rbf{MABtYdxlq}s7y`82BCtZx5kx5R);9M1$en#r$Tk96xMz(q>fpJWfL4 zAOOKo0KevM2!(^iYrcc!@@qa^9w*^QIHn)>1X@6)&;1U?r^NJq>J)u(!dC>SGb)Nt z!R7Ae+sH8DcmJ94E4Vy8MCQU%(#;gwZEFL}D|7o6KL7AC;B^s>L{NMR{hnST(Fg#A zb{kF4FH^LCoq#Lt=P9t;n3x*F`LT=s!5$*|YN7dl%lR+3H00K9+mf%~T)F+HMf4A4^F zieFLLm1Cngzm&3qa?DAyE&0?v$jxJS@xJ;RbMLCY14Dv=B3lWTR0{wmqlvNtJAG~^ zT0lje)@V7~N@jM(3IK_p2x(}3nVy=Sup=ukEjKH7I?<36U0iBROk#K8o`hbvGh3Tc zjQ|rPlYao#^*>mwOL@(fpcHx`VDEBI=%Ql7Z_&NsW+f^`j{;rGJz0{)raX3SLwBZB zEmVmRFM%NNRFdS%2gA4DZbtrs&TMN;X~?~{N+&JMaH_p5HmoIXo}? z*T0tdoutmw{b!`$&|EQ!o^4y~c_V2HE#7vje~A>F08CQyPzb_tA%%cdhN5Wz3kK*E zQ3ui_;I-{s-rjh>y}rLufOUHP3!t-p;EII&xe?L^AR(utexP->GvS>u4v!42wk)^I z^!}GS=&0{+2etr%^FPxM`Fviz!`ZSd6rR$VOz9}di=mKuHd%{;w#K~G3n^Z+vcak; zniJ3g1cL#9<5H9NMSDZv5h0cR07$t>Lb?#*`Fx9eJYUVum(Mn+YD6FJNln_)gr*xp zXypKi>7L1Q0KebI>vtU#uiHrO(%gjN4#v8M>)RM#d?k=9cbP^6naC_W5 zb2*6o+WD5^(AcIRz_v{E;2GQ z0QlJ1%b6XQ7<%KL8xYmSno|J`iwx{2-${YB2!X(8G*Vf%lg!L400O=MO;uNM-F}sj z8#gNY#s$JWy`Bn%=P)`R4AgLN>r69q3*jt0ydSp=%!ti zRBF_UcFne3b=yT3{ZSVzQbi3!6+sGuN+HxqNXQSwjv@YwJu{C*?4hw8t6|ekk2IQj z_nvdlyYpt=ga7egLtaF5IT~9s_gZ}Xv)K+Ud)89%`H7L)D*{I<;~fS!M($tL(BIfX4+CfjUmv-DtrA^W zecGYTeXVE(;(F{I1{xg)P6G1{99GMB1^O^R;$bQ{d1twEXlRh7d;ll6K|tA|8iO*j z!&hRjH16U#K8pYNj%fL%GWPrZ;6I3M+v7icxIQ2gpWnM6T76LN;RFx_8LJ4=ne4vx zbT0Jj%N=Xg#n+OV(Acf{vC}hjrsCAGD98G`5UIZ@m;kocznOvq z7`vHtv|1Pxv9VA}(SBe*k#G}{u27@7ZFg|`o7iK7KN}Hm&8)Jxk|LYQZU;nIOct40 z%Aob`I#qcPSAN}%^mwDh%zP4n&Nd%i`K25)`UH!Uy;Bq~?;O9$85n%i9w^qJ$` zE3xQ-1dtFRG0+>D3pJaCiauX-c$&3q9RB5bP_=`VF?#N1*r)A3K=%Rk^h61^1iidr z%V||Ds*l>@0HZ(0*R|`s3oKXX^11x&bfGl;LMK`^zI^ZcQA4Tm-ri`d7Us6{rH?Ou p*WK{n+B2@6zZ?Dj()>_${27Dc8H+GR*9HIp002ovPDHLkV1gL?vW@@% literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode-24.png new file mode 100644 index 0000000000000000000000000000000000000000..c7cc27305a30af13aec2ef1744b3818db0da04b6 GIT binary patch literal 775 zcmV+i1Ni)jP)XTORu_#t46j4OnxzM^4UAh!>(UpRTJ3+A< zH?DOhiW@;AU5Qv})lIDrqV^q4N}A_n=D5(LO&?Q?f*b$U+rvl841mdu-H=oDb*Q|9NF~1t zAg~wVi1!*Q#q9{~0P$p=mtWE}?byP!6J%X}f-RwPE}JG8)?Y?SG|PgT$`xo!bG z<;MG66uD%$O226oqgk7od{r8SCLAcRu1O*!` zj~2VYY(B)x#Tc0l(X3@c(t@}+rODuAXd)-rig};n}kImbcegUBn+@}ye4hjGO002ovPDHLk FV1nIXLHhsz literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode2_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode2_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..624f7bb7cc648c085a685473bfa54db4408e8441 GIT binary patch literal 823 zcmV-71IYY|P)nu~ zK~zYI?UhMrQ&AL#zk6R|Qag#ZYKfqf#?o4$i&PvIf_5RLMMT`VP~5n1S#+ThbYUwl zRNRUyH&!hQb^xiUh%;3jphH@)4RxaPlqP+7_qs@vHqRzf72Npm?m7SY|99?r=RNq3 ze+}_FMWcPPl!Qgp0kC8Psl{>7 znP^_t*Le5Z^Zw?ZI-n$ePBQQ}^@vzcLy!~#ji9~gd%Q1iR z$sGvo1GWNvX)M0Qn*m)I^Mt#BnblpxX4a$ru-=sC#1v{H(3do1e{;_>U~^ryHz#cu z3vsmFNuIa?dcVC_v@8>+n*v9)kO$`?6+o6iJX%1T>+WamsM4~bV|sJ{L^OXDw8#ICBWxNi#vf3YcmaMiZXC7xLZrZ-9U)`iD=pe{{;zV#B`wX@IR0eX<#8Ob_y9BzH`HxB*1E5C# z+yJ1y;xd9`fJX2J^kIf5brF`1d`B27t58j`l)#(#CsJ#+u>+&g#9z<>Q~ zNh?`&dLnXB64Kdf&&Y~6b$j^8JGEZ(!7H(Lgfj}l2Sg-^cyV3`HUS4*AsPYd21trK zA_P9*Gx7Nocfx0^k^&|o=MY>k#3g_;S0k5%L{Bw<5cDn%W!l^C4NgRsa><;ce@#i9 z9bS9s>`MRw_8{o5z6VhlbRp;}1g0(X%VpR=)D(%xeP7TPo4Gm+9Z0 zqT>g{QivsVtVMIbCKC*3^#Ka%YEgM>HZu9kizOuHEtOb8C%0%G3}{T9-_Ega-^u{d zp)K?UG`?q49{tprG&F2CpBwF2&%>b|bhLOYuB{2M!RKN8WG9lGzah5BS3a=W%h*6S z9(8$}ngFl9EO7M348nyD&8A7omw*3Ln$WfPd`qTR2k5^!i;;5K-JIo6YnotNnssU( z5}nJkYkZo=AL13)*7O~ylEdM)3~e3<0I%W_^rwg#I;Jg?$hd@V%@SxXw=0>E;DetYu@V1nwo-B+}$+=`ur&+YUmqHTlN6VnRXdqMgM~mgT4&r%PP8MQKnjM$-FJO5>2%Z30;4ZQVF}CmJn)oki?>2 zK~zYI?UhSNRACgyf8U*lj~O#72@?z)rqbLbRw9*DN+n6OX%SYmXcx4|pi)o*i8drbWaIuw;NDMKwqp zlBbs|ormW8YdSm)Kwj)T2T;@Ae+@x?LV}bf00`F9boBScyGB$k)jb||I9FL_ZF4&i zvIr;!1`;5KW6glfjTybFZfSYzU#CW-DLqL6I8FW2OAC!C&~VV{NZ7@E)xOL_m-hh^ zz+_MdIE%F27Pal}lTs*00VHxOU>Asozgv6I7fx$+sf9sZS`1F9l$do)g95z_;=fs0 z2H>62=>9ZCX-*0`D@=y`Z~h2vA5?<6T=WH$(X1bjfQf~iW2(-ePvho0KfOaih^sU7 zQ=`SDG98H;GgHl!JJK`*;CfL}80eYrh*xfgl?Pv@Y5f>rDk2&5X|%Wk1ZRquJM6qW zlh1yq-O#2IeTdFPfXAmcQs%JZ8IRE1=jYaYKOrqzyl(eeI!|mM({5bBEI?Oe7hq^F zrt}mujg>hF1$;rB@J!_4{B&yfWMeTc{>M=Ou2eX^0-i4x^kz7~u4Xq<2WN(vjO1wJ zcU+SkxZ%d@4<`ly=n2NOv&q9~Aj01D$sE~a<5+>6)hW@`d!PN}Uvu$fz?T?cl3K@N zfFu)C71$`wP67dGRzcNf8<{E5osOyzb~Jftd^Tptoin_e4)+*Bq{YsGkmSYpkZD_% zRZF!R=d6Y#Ev|rhB%m$41gVrP>pqyH`d2FnY2Co~g#d~%W2t~G6KL!M*=z7AQvNvr z;A+t%A!|932ShKRHWXP-L*cW(Qh!#}eKyX&&WJbt0!_UEWC^uT3;+NC07*qoM6N<$ Eg04+z4FCWD literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..27f8147825effbf6f0b4cb8eec3359b01f5c1539 GIT binary patch literal 893 zcmV-@1A_dCP)3}9(kf;Gd(#V)5Rt9MY3KW=*V_-U+KkpqE?L1~4Llrb}@(eJv zDs>a!kqr!$L!cp)^Plccz3r}#r?V5lP-ERq$K?zf=R-Zx(sFTf7e%tf4gV zW@=!=6wP?=>km*q14LCZ{2^H&#C*Q`Lww@ObMoQTr2{I)-u3)10%4Fde>qqoomog_ za?5=UDwcYIU{~Cch@m@88_!k2e#6!6tY`1ks94Hy!slFSRpoT%8kyX3OIL@_TLuCS zVIgKd`TO^=rDze@#j>{ z93L5}0n@ZWBIKddX8>@iP~(e>_n17l&@w#aH+gsaAg^ytVjw>E3}Y>_q}v&6?l9Q@ zY?ye^1Hc~@n_IFO0#N|^dLkU$HN;b~NW1nX1CM?SSnUK6pYT?{57Vx$GXmirx_bL~ z=cNI{e(ytvI|fHbQ+EU|v=iJcmiX%I9QDE?R976nP&1jFUE%gh+kLef0NBVWckxEC z#Fsy2DOKvA%9G|@wsqhCbP8pQ$)8JHxLI|#I&jn;wbHg2pEMV1bsI|+1hx+**g3QX z1L(Y3=KS@wp>?^A TfM0<400000NkvXXu0mjfl-`za literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test-24.png new file mode 100644 index 0000000000000000000000000000000000000000..7c368f79bd9f75b6142c35273b7bf813ac517f85 GIT binary patch literal 825 zcmV-91IGM`P)(*1 zK~zYI?Uh?d(_t9Kf8X4iZrXBgHZ`@DZd%3)QzVthjO-$WP8SB2c@cCG1VwmJQ6kYr zM+%|>3F^W~60xfyDJqIul;;lO38I6i(A3S^*M)O#t^T3~-SohB^B$h(J@E3ufBb8R z*(5dEY)61%r5I00NTH*(wMjiw@)t=-X5avz2kHg%`uim;1Tut_T7Ve~sD;??CGSva zGzCkWo8A8YhUDa(LWoLVe1Ow#FBei~DJlrD3Mm0pp7HV9jW!zq56r3a-o>Ov&{X{$ zk7uf&fLw3@`HBJ)Hx~y}w{q9C#22TM9(H%% zr$1856U*WN4n={K!7eN#eSFYGQ6HPmmbJ&3+uuoBXrwR3=pN=o+fA|t+NoGx5X7N4 zqWIyDT)%f1+m~(t-s?@Y#iv7<0f3Azom4w7kTuZ$TaIaW5Ir_P#gp@BUBh0BfN&Fu z8Z~EHsxY~S74xSRXpV?wciMJbL!ZDs;Ry4ASEk$ zp0c6)@svoog`&K2t|bM}eiDjH9#v@=SA`&ul=M7gZ^vC!QeqkHqtZTckFF36Czcn} zVzd$}g6j>uWSi|WkmqlE7P%2$~Ck4 z4}2(dmLTLMypu4`k3px```n&ya`m)JR>bl2N~GKj1ayalakuN$S9kBrKkHx;WzJlL ztc{L|H3%WPTw`DN4en2>`77L$2s`yU&TzIX{b&0RCac!PZoDT600000NkvXXu0mjf Dt6pY*eCnbZc# zz=zNZD#$44smOUyl1Ni>1R=X9R3wQCLYm6tWoGv&V#Ho;;YC9kwV+0dQ}|o+Dt<>rDu;eF=$_>9_2!C@(D2#*|7e)y3v)80%_KE5Alu z$#ZugL>!Re`2ee>d{7 zy`_thyWmkErmvHERWPe9n8Vj)#~bq)%f zs?khM@F*#t+v!Cvf8fu4E?Y{8?*Fi8t;bI^8wahm1P%AOY)LpMZZLZ!_gY|FqrD=(I$7_ zNJD;NDKmhjKubsiDZl=FQh?b2x=<)yd?@yTC3EsQ+fKQmt&SmsQKPA-#c#*U&_6BIhC0q?Ra7VhOpRv|qTqJkRuZn6;KwuG|LWS=^b{ADHB%~n=@wo_)W!Zg@R zYF9HJVc>#oI{*(YnYgAT5INL8#vt$}cLAp1cjuG@aW!e9V(o5`xz2mKK>CTV%-f`# zx9uBJ02o&9J83u>A^-pY07*qoM6N<$f@7nK{r~^~ literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test3-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test3-24.png new file mode 100644 index 0000000000000000000000000000000000000000..03493a8278feb2f13084d7dc9492b5bfad986776 GIT binary patch literal 774 zcmV+h1Nr=kP)f~0Dx$~? z7hTj%)s<Q~N#PVVYqh74<+6p&$WWB;c6UXF8vas>Gdo?vrcywAvQ09Fi+j(7)5#1>|@xHGPP~7sVmL47a%75 z0SI9NwguUXaq0q~Kf%b!qFNk^o@CcIwBDcPtVsV5`iKIkKfy?i#fn4G17MF`4p70E zd~3-7TheNd71!g^EDPw%3l;b2GpOEqg)W0Bpx>RcmZK$?=M7&J&>x>pm%&7h#Y$6l zDZ=Nod7rwD4!Oq?jbgeO`7ph!JP zce#PWaH(S%jnV*MP3+~+f$c1^HKMGR zNX91x``WHyX}^O*mq?Ap%9r>w9*icDd3}JEEuX{hK<6H!_TFJi+8dD&=-q={yjzKJ zs22dcP_e#MOWlC~>l)#^*rQTyMUvu>Bqx&O)OkHFNs`2orx)z$&OXQVK9c0rjE_2V zdsTU&)_Q)mw#{&UoLgKamK_y@cxoZ2$lO07*qoM6N<$ Ef;<{y4*&oF literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test3_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_vscode_test3_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ffc6b08bb60ae850f0fce03e230802dae2578242 GIT binary patch literal 841 zcmV-P1GfB$P)6A;pwq?5BJJ17t|k*6n3Lc zQHz2W)+&h7MQ8|;SV1=!Bkh9DKxL*zrA~Qiy!@w4V~%qHZPBK8btNXmzdqv{HGv4 zv6Sh+2H<^211Wocj}&03Z`oyC9C2XNk@()I7(@KfS9GBqVpnu!uq_%~+1{QQwu`Aa z?sTBb`+xzU%M=GthF7UpTb3;=6hiC)kdO+PrnVjq&Gr<_!JmU^1CgePV7w}Y=n#+t zes?wpz#X%Y(`yPTeRGF(U)~0YU)h#Yno-6;gehbJ%BaQi5avle=}zaUfUsNQFnYPTayO+L%kV^+aoQb}WFDQU zeCO;w+{FoOpF3uls`VXm9grW&;PJi$3U0ZnA&vZ;bMzZ63>%C9Tv^af$^KlFC?oJX zK&t?Z==wb%pgkXE#ag+#Wgd! zYaO&TJqvFjgs2T=5Hr+A)q_(MwAUh#%o*s;?Lp*F5|S#Bgae5Y zV|sxEXoxW}Vl+`hLPGS=L{dXg4GVnkCYskYi#VuWgtqlUN10Gd9W{B9C zxq`?A4PK3Z>XIq_!2nd7fHgqhoB^sgrmqZO8Nks{Q^|g-CFqYtrMr2XZn)S*>*X&B z;cE6vj$77QVEOW%o=4`LA``E4y@v7@Ai?lT-2U<@-X6c192#phe+q}&MWk)I{0YFF zIr^M~V6Z3B67E)N@)o#?7P~84b*7382yDoa)Az@#n;A8W*!+XY)q=i<}J1ehY>= zY#;cB+hy*83xTRE52Gm-n-IvmlDeUOLSuIT__{L6re_bZW!26sbAM`t593GJ(RYdh zXL3=lhcUB>d;wJ>H~Hk$Zmhcl0Q}(zaJ4E5#XbO5-RlRs3~>U+0gbD3sXRG0Z3@%hs!qPp&({s(Dv#M%-4i0MrP7gyl+ zc+#?SPuD&;(?W0{dKlFgfUN0Im`K?_j;3z^@XscgK}YNvM30qMRQg1u-yR=*b!b=Z oXa9=#42s|WWr^=#e>9iB5AiPh$GvE&Hvj+t07*qoM6N<$g5gK54*&oF literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_webpack-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_webpack-24.png new file mode 100644 index 0000000000000000000000000000000000000000..ad1e2de0ffd8cfb8ffa5eb1581f2abce412c1ac8 GIT binary patch literal 866 zcmV-o1D*VdP);k*WsIfm)Fx??m-lh+>0(|qZ8Xeei*8I71U$szo7IXw5Ce^rGMlwYadc>3e{+3cYbUR6P-#NaO6N^=KG&|T)n==R`YFuLDU?p zaQs+{J(HtYV-TPcN1S@3#?|X9eD`CImDO~3K(!L^(2;Qtw(lbjLxM0Quzi46aNeN?A=Dx$^*Ih39tS=q;sK zYq8cML5A zm3ae?NY&%L$E)M;z7c8_i!HmcMyOXUo%=`1I7Q1!2H#{=3}ErhJTT7m@&>semBBau5ld$OHunab{T;mbdcch_$+dHk_0shV*5#b<~ga7~l07*qoM6N<$g0Y;MKL7v# literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_webpack_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_webpack_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..26d5d65bc5fbf59b84fd6cbce1dd3e32590221d7 GIT binary patch literal 939 zcmV;c162HpP)J7WQ?MXN6jy3N z#8s;C4=A*?=uVU>6h)~kv27F)!J?3A3yS&KCb{qansISoY8uUJnvEO3FpJ@Q=leb9 z%p3;($A1l3&!N#{XJ03Ty`4CP77x9$XXgcbz2fg49`DbCe;H^HAE z#Xo#W00@Lzm$O$?Aj3k~2~2cw_+5awQSa{VZthkU+tsY!Ha9yzohGe?0L|qW`)@5; z7}+~KxSIOWlfOM+9b?AWTdYx31i;nfcuQFnrzR(7K5QlF$d!~29XtD+4?NQ@|9*k4 zfPA@9*jkNydYXfAy*A*S6XzV(8jJ`5@IFu!1!-24m*(b7mSuN8|KwfY%jkRKkKq01 z9a@5m9KC&;P!(L{s6`QRUQXqn2W{7a|7yO@EU&kffd;f0^OCb2E4hh`|^GfC5P1leHKaRn#bxvl;VANnTb4S>d^y zluXU0SYt3oF-C#*E3&12npiAcS5?6a`|kZS5Wcx) zivU6;W{uE@&6QxS(E4MOmEU#+VQ5OboF zxC$5zs04OwZ!$d8M|Y!|)1Iz~dv5P#@TMjjN)%5Bx4+q=>`J= z234&lx%A{kL7L_llO%s_&!bxp|D%Gn;P{F2n{1bR)jD&)8XIZ*9?H@$=4CM!G=Jl% zUE7i+{{82=(O53y3^+j;Iz|z6Nppmc5oGV_$=<}gRH0W3I|9|8TK*F={1#bLWpPR{Ny+Wbl9|T@$5P*A>4|X$r z3#Jg6M98C(M>G$NqIw^ZN}u*~L;cYJD87x8^9qP9AX)(0OUR>40QPKve(-GS3dZ~L Y1D<+%OmvWnKL7v#07*qoM6N<$f)x7nga7~l literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_windows_opened-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_windows_opened-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e3ff7f8291591faa463fe77b458e33ed5dd0aa67 GIT binary patch literal 650 zcmV;50(Jd~P)g@$;zc#FfJ6+oqvG{ zE(>YvMpU$*QgkB7Uk&VtP%Z5Pd>CUaaQ)}#q}mEy(^hC9Q(=lh*A4BxiP*0&Q#X#f!$#Rhs1Y?Kn{WkjC0YQ~CB zrH0jr1E8usAgIxi+fUq6Q>o%$YFP%$)T$yQxwD5&^z{#~p=k|3F}#yJQJQj^1wDOCG)8D;M7C=6`I^*9FECBxM!(TJX>_Vx|WVE`W~xxzbr?8Wj~w z@2mBWeTtQN7VRizL$39}R%m$8GHOJBZ~V>QIhwrxJ!o k0c&%BR`5N+V;Fz>H}RXUb*w<79RL6T07*qoM6N<$f=p{9ZvX%Q literal 0 HcmV?d00001 diff --git a/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_www-24.png b/app/src/main/resources/io/xpipe/app/resources/browser_icons/folder_type_www-24.png new file mode 100644 index 0000000000000000000000000000000000000000..3624ebf690195722ae258bc5ef9d48407026cb5a GIT binary patch literal 1016 zcmVbe&^?fPFn|Usu$k)x%)kRUthlb z;Q##BQU1xJ*GJRuDkyJmcSlv_tDk)E{9S#w#YfIxk0Hf7AWbA`MZwv8E@40Ll;=qU zVAp`+d2dSv6Uhw0<&&Sjcc!tWfzk9i;NpYz7U0bJ^!rjWyd5Cn*zXc5wbEuJt)dwf2Sp&t3ANe2Mv0XeK-|CWRFEp)Zo#ccFHwD zW@!~!k7LIyRu+~iiWm=!9RWM+=THJ(eC{At$l&Ik45>tzm}TSF6js(7j8EtI?rxUs zVu5hLPq490xTCi{sk;&~DwJXD`fp|pYRtGO+W$n^UOTPBD1+f*wR zCZ{sw3uT;Q1x3?{*cPEs5aCILC)ucM5D98XS5#XXQQj%By51mP++ej-V|qSEwm3)X zz&<3BzQ>YOYju`$zv8+Ar?5^k<|Fe{X1*n$DoyfvhmWQf`T71F0P(2F+FFUar_yu< zy`5nm@8|^~P!ZhtW{f~v^3p?q0(prty?M`PwlRJulUO#)K(6FcaEeU$G+ut;2u&f- zR39C-!ApZF_Jj;BU;UA;yZX1PhbNy-(nLWot z9hHau{r&FG`$pcc+Yo%R^TCjRU~mGV6kXk6GTDMRIy`1h42^!)z3)&`)5SY01HINe z@{B?|0-#V206u{@cXRXRdWSdYTiP0EX>=z{iND66kWJIEp@D2s5}QwRW&A4XY(eGb zlan>Ut?jmy?Qfq5PdaR&M}@KvT$67_ssqjAV6p4(mmZhs9cOHJ_Y#Ry;iIKtAhgZjE! zl+ai(A(|{RIJHPTVG>Q1`DH9glix#la|`i_q33TbS%@BI>6S{*P28EdL>|Ze2#;UY^ABu zOM?d@i5w*fR;kQnJV7>FKuU#eE2Om1oDPziJax`O89)Pg>sV+(z^|)K;H$32XL#vu ztEFI?jE%>bOJ+%=OoXoEuQl*^+(=s?ZAIS9<9F-WQkgd-0&K(?f!bXONT&0obIZ)7 z@}x6GBGDP*sVO?|X+@z3ZQ4koXt6MJl~PHPNaonsKZ#fg^KU`Wbeo#2%{3B z=OTK{c51QsJjp}~r&H(ghqh6c5?#}13wU{KM=LcR7pKo&;_~HLTW{PPI(2MQcHwm&rZ7BO(j{)$F za^?gt`pUjVQJpyfM+J`?UkRw7$quJ{6Cii#a$4{o?ejtq10-&d0_Tyoq^$VE@TN1U zPKUQQ*s1periWg{X{p9wkq6=f{Ao^4o z4n){{4X}UXH7V3b*L_vz!u3z`*M4ImFmoOAe>)QW2VZA@kE@VT*cE7txVKTJa?}0m zu?k9+sd84tvD-xDp9*7w9t)ZWYiVz)?++sJ{(V^80ocfsWteb-kpKVy07*qoM6N<$ Ef zK~zYI?UgZ4Q(+W_pYu_qp;X%h24i4=GN3LdH8BnvBZF}Q!_j5{RZasS^oC}lFB{|odt)0wgdoZ(V7Uq7OJx{Q1{>tP zzXj|nH-0`a)CAB};Yjo*!ekW?nvPvZ^a_Bg9s}uaGWmB zPO(I4E6;$xC#f*MH)qlZH)esXlM@4c{<_87Qj&Lxb)u=w%Vovb01tyf3&hctyon`w z6-$!b{7%6tv6jtw#4un30I2HocAG28YBp!{I$Z|T{+j<9=YUQDrS=Gdue-};_4~bu zseNQsz{Hv16!5m4{tK&V(%boJ+~e-#h|dGc;eCKzwRKI)nQyjud&eSP=h*-yG0$3U zp8H{uw~G7xc&Y}7rLsP#Ti4;pVg@5#{-F1XRL95l4O8#?J#IbG-&>krNq1y(g@r@D zzLSpr2ZIw+H&l3}5EH0hD<4qC;-QN#z`?o(D7yP5lI3jlWdv{pO$m0000 - - - - - - connection - - - - - connection - - - - diff --git a/app/src/main/resources/io/xpipe/app/resources/img/connection_icon.svg b/app/src/main/resources/io/xpipe/app/resources/img/connection_icon.svg deleted file mode 100644 index 43153f58..00000000 --- a/app/src/main/resources/io/xpipe/app/resources/img/connection_icon.svg +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - connection - - - - - connection - - - - diff --git a/app/src/main/resources/io/xpipe/app/resources/img/db_icon.png b/app/src/main/resources/io/xpipe/app/resources/img/db_icon.png deleted file mode 100644 index def1304a016d32031529659a437bae1428345297..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11533 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 diff --git a/app/src/main/resources/io/xpipe/app/resources/img/folder_closed.svg b/app/src/main/resources/io/xpipe/app/resources/img/folder_closed.svg deleted file mode 100644 index 671ec13a..00000000 --- a/app/src/main/resources/io/xpipe/app/resources/img/folder_closed.svg +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/resources/io/xpipe/app/resources/img/folder_open.svg b/app/src/main/resources/io/xpipe/app/resources/img/folder_open.svg deleted file mode 100644 index 19e4f714..00000000 --- a/app/src/main/resources/io/xpipe/app/resources/img/folder_open.svg +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - diff --git a/ext/base/src/main/java/io/xpipe/ext/base/browser/FileTypeAction.java b/ext/base/src/main/java/io/xpipe/ext/base/browser/FileTypeAction.java index 27df7389..031d9e8a 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/browser/FileTypeAction.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/browser/FileTypeAction.java @@ -4,7 +4,7 @@ import io.xpipe.app.browser.BrowserEntry; import io.xpipe.app.browser.OpenFileSystemModel; import io.xpipe.app.browser.action.BrowserAction; import io.xpipe.app.browser.icon.BrowserIcons; -import io.xpipe.app.browser.icon.FileType; +import io.xpipe.app.browser.icon.BrowserIconFileType; import javafx.scene.Node; import java.util.List; @@ -22,5 +22,5 @@ public interface FileTypeAction extends BrowserAction { return entries.stream().allMatch(entry -> t.matches(entry.getRawFileEntry())); } - FileType getType(); + BrowserIconFileType getType(); } diff --git a/ext/base/src/main/java/io/xpipe/ext/base/browser/JarAction.java b/ext/base/src/main/java/io/xpipe/ext/base/browser/JarAction.java index 697a1315..c8191622 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/browser/JarAction.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/browser/JarAction.java @@ -4,7 +4,7 @@ import io.xpipe.app.browser.BrowserEntry; import io.xpipe.app.browser.OpenFileSystemModel; import io.xpipe.app.browser.action.BrowserActionFormatter; import io.xpipe.app.browser.action.MultiExecuteAction; -import io.xpipe.app.browser.icon.FileType; +import io.xpipe.app.browser.icon.BrowserIconFileType; import io.xpipe.core.process.ShellControl; import java.util.List; @@ -32,7 +32,7 @@ public class JarAction extends MultiExecuteAction implements JavaAction, FileTyp } @Override - public FileType getType() { - return FileType.byId("jar"); + public BrowserIconFileType getType() { + return BrowserIconFileType.byId("jar"); } } diff --git a/ext/base/src/main/java/io/xpipe/ext/base/browser/JavapAction.java b/ext/base/src/main/java/io/xpipe/ext/base/browser/JavapAction.java index f23446ba..2ecf3846 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/browser/JavapAction.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/browser/JavapAction.java @@ -4,7 +4,7 @@ import io.xpipe.app.browser.BrowserEntry; import io.xpipe.app.browser.OpenFileSystemModel; import io.xpipe.app.browser.action.BrowserActionFormatter; import io.xpipe.app.browser.action.ToFileCommandAction; -import io.xpipe.app.browser.icon.FileType; +import io.xpipe.app.browser.icon.BrowserIconFileType; import java.util.List; @@ -26,8 +26,8 @@ public class JavapAction extends ToFileCommandAction implements FileTypeAction, } @Override - public FileType getType() { - return FileType.byId("class"); + public BrowserIconFileType getType() { + return BrowserIconFileType.byId("class"); } @Override diff --git a/ext/base/src/main/java/io/xpipe/ext/base/browser/UnzipAction.java b/ext/base/src/main/java/io/xpipe/ext/base/browser/UnzipAction.java index 50a78730..962f9594 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/browser/UnzipAction.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/browser/UnzipAction.java @@ -3,7 +3,7 @@ package io.xpipe.ext.base.browser; import io.xpipe.app.browser.BrowserEntry; import io.xpipe.app.browser.OpenFileSystemModel; import io.xpipe.app.browser.action.ExecuteApplicationAction; -import io.xpipe.app.browser.icon.FileType; +import io.xpipe.app.browser.icon.BrowserIconFileType; import io.xpipe.core.process.OsType; import io.xpipe.core.store.FileNames; @@ -44,7 +44,7 @@ public class UnzipAction extends ExecuteApplicationAction implements FileTypeAct } @Override - public FileType getType() { - return FileType.byId("zip"); + public BrowserIconFileType getType() { + return BrowserIconFileType.byId("zip"); } }