From ee3e53f943d2733d541464bb3a969006afa31b07 Mon Sep 17 00:00:00 2001 From: PalmDevs Date: Sun, 15 Sep 2024 04:24:18 +0700 Subject: [PATCH] feat: update visuals, strings, license, add clear bundle dev option - Update icons - Update license - Update strings - Add "Clear JS bundle" developer option --- LICENSE | 1 + package.json | 6 +++--- src/assets/icons/pyoncord.png | Bin 1734 -> 0 bytes src/assets/icons/revenge.png | Bin 0 -> 10062 bytes src/core/i18n/default.json | 14 +++++++----- src/core/ui/settings/index.ts | 4 ++-- .../ui/settings/pages/Developer/index.tsx | 20 ++++++++++++++++++ .../ui/settings/pages/General/Version.tsx | 4 ++-- src/core/ui/settings/pages/General/index.tsx | 7 +++--- src/lib/api/native/fs.ts | 9 ++++++++ src/lib/api/native/loader.ts | 6 ++++++ src/lib/ui/settings/patches/panel.tsx | 5 +++-- src/lib/ui/settings/patches/tabs.tsx | 5 +++-- src/lib/utils/constants.ts | 4 ++-- src/lib/utils/logger.ts | 2 +- 15 files changed, 65 insertions(+), 22 deletions(-) delete mode 100644 src/assets/icons/pyoncord.png create mode 100644 src/assets/icons/revenge.png diff --git a/LICENSE b/LICENSE index 22c00c1c..cf2b1cf6 100644 --- a/LICENSE +++ b/LICENSE @@ -2,6 +2,7 @@ BSD 3-Clause License Copyright (c) 2023, Team Vendetta Copyright (c) 2024, pylixonly +Copyright (c) 2024, Team Revenge Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/package.json b/package.json index 4180e36b..ece3eb50 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,9 @@ { - "name": "bunny", + "name": "revenge", "private": true, "author": { - "name": "Pyoncord Team", - "url": "https://github.com/pyoncord" + "name": "Revenge Team", + "url": "https://github.com/revenge-mod" }, "scripts": { "build": "node scripts/build.mjs", diff --git a/src/assets/icons/pyoncord.png b/src/assets/icons/pyoncord.png deleted file mode 100644 index e3f44bfb7c0e453c86ec8d226ad0cbc37b47838e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1734 zcmV;%208hOP)Px*fJsC_RCr$HTUp3fRTN#TD4WeBiZV)RR5KdX)Qlo+c+h5gsGzdR$fPnV!fZ4e zs8EZDu<;=p9@3yPlS(tRqRB>SE}CdgEh~3t{hTYe>;1m(-0{EuZSci^pMCdPXP7-2-S60G|NZrOhVikUY9<5Sj$Qj{y3#+2CsDAP12A zs!R}?1i&f)n{?RRGLm~Y3IH?P2*B0=HUuEA{Re=RBrS`gW){N#4}dL63anD7kOi38 zP5@qy0q{2fDfcmeOGrK&s%0Pm5;vFR_)xi>_=*B>H-NL+d_;~-JTpnIXs1jD0AvMQ zkd&nrrlJ7631CQo79Rq*k>u=Fyk@42Z4e+!EaOSe4diXhRull4_?QfeECp}|$#;@# z%uFZRD^S+^00w6DGikDm0x;R#|JwtVj@bSLZ~=hXB;_-@$jpB7z9dv!Uy^z{3sF%3 zb_ei54h`h-myjG01K`nB?bXCLjf9D9s~z zL@0A50C>|K0N|qniu?}XWB?ZeI3$A{MTWhLz6OOXAZET-xobQvgYs#t&j84JqC3la zihQ>$0OY+D{8W;$wb|fEcMV?db^!cU*bKn0J|r%pQ5c?JOIk>E(36VUIhcz?L+dd0KQa~N-ZGf6OIRPuc|qD z6>YO_I7wxhxu_NZyfq9}1_)qqE=^l68bx-a7Q`X7ZPRsie z)CxfCN+|h};@gx2glY++NWPaBl7~lc z|B!f(K|)-gA+2Yz9KZ;YKSUp@1OPKrWk}7B<0^ROk|50|IX3y9W~NHf{1ikLHXj~Y z!dd`)n|rt)Q`rlEOy+Ih{nb!{x-ctU*LQ``HZ#57Du&9;G}s`ou13eD?$rC{Im(=C z)Kc4)q{{1S$;>ouc4`ZmYS_v#uIU26%(im9wnuW5rE}_B`m%cfOj3`)AB_47X{R6m zuo^N8BLI@)X{BpegFuzVhG?>oC+$o?R3?cjK=6RFr|M=lb7i&Z zbQ1ua>4%mz{aH3?R!|AaJjEU)rAR4cW&%Jl%{Z@rr>5yeByUSihRjTLwUMQ02I!=J z18_OXJ4=$;R*acx^OIb2_8Qlf(kO4*K9$$>TjvjECZCYI+nUhqNsY|P)H|7V6~LI8 ztXeZnstV}`8A)2#0?h1408bTENV9`8$~5tU`Y7Q$0Kh4}V=b!?El;xmy$A>9_@GQm z#gAJ_ewSl?ElYe+_6mQ+XZ{BOGt(3EWkyZp*q#7zcBg^pjB;yXPXcg~D;_=^_+*mA`r~4l-ccqOzl_CHZxQ^|iev`lWX^S+A=y5ni0H}eWHnM(*G`XjE c_>j~37uWmvEP-`;CjbBd07*qoM6N<$f^AO_S^xk5 diff --git a/src/assets/icons/revenge.png b/src/assets/icons/revenge.png new file mode 100644 index 0000000000000000000000000000000000000000..b6aa5a2b97b31bc828f524773485efcdacc05e75 GIT binary patch literal 10062 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
{Q|;T&r_l7sg)X znU8`3k1WzBUkkJMhs9^rn!~DlGZ8#tBS|yW)bM+Oq2Y$fr^uuY6}ONxY*Ya&3ieYZ z0iXVSlRP0mEb)C85uQQ`EF;98Qm{SXa3bGw$i6UX(_~|fKIWUte#ZOLcEm(zoy{f| z3!?hpks!O|hl=;2)yZOqD&*=3K`WR^J*0>Nb91sd&9&jfnowZ5#nb(dvHZzcf@SVG%yB18VSEx-=ktg3DfOS0#`5m&F$1w9Z|&xZi%dH>N$ zWh+z_Nn#g#d|}V^UtmozTD#N^aOLexHU2Bk6D;w~J^AKf>(NzH?emzO)dCt-pK~nX zD#)mXD%dZ4HTif_1jmATI5o!gaWI;XX-`N50f|@%o9W_5ix>hDhxXB%g`=la(DVKa?qb*c z<(PW7)f4ql6PO#8RP9{qsYWduF7<)fd<03Mz^o zN8&jFLDhG}MrCz6#!?Z330Nn6piyxH&5}Gu$IF65-9NV}fMsl(_dHUg#@*fS$)}IG zZphi0)FXyNbh`**{tU#Xw5( zI#R4dbBO;Oe6CT@ZC)*x&z!|ho1L7lS?zzA#6|$t~M56Hjn2#Osy{Y0O*2jP;HHuB7{LtGqR+ zVw%M^-ZHsxw)q(xfya9)K96!GAb1;9R=fX8sdw7b0pOVZtRa&o43C#X8(ECLCUK5c zKojduyn0ApIxmYJqW`g9Zn*}X*XL*Geiwxnp#cQcg`3$*?Iv7^8sEX3Z&et80+!qS zj?~f=oM)r>D{WFYFMQZPL8|z9s)Ge0vip*vTe`3FQcHrTL_NWod|H-q&9&%t_=B^y zy&KY)uZjTiG(*Jv+r5txlG+G3`1RLG%p2-(*bk?A`m}{?%Rvl+OQU@*-G9{^ev|9= z8c{*M;DUMEgBEMQgX%s;9GbqWcWz5Wo2S)}UhqvGAP%;*yvIn%gfPEcuE`|kCp-q?_Cvv?cb|a3s9)thX>UE6@M`tW6A@;2 zFK3=zcbh&AZ1EB?f-ReB?6Dc9StpQ7GSKLmg*1+Upc&$faMGNi`6s37ZX|LD{N+*1 zz`85Kc)#(T^5%`sspv* zP5gP|Pn~<>ZH1+K#X9dU`-B;xuC4jCX)03{6{>yzJQGl6ciumuwN1$j0&^u1gQO#U z-!^MARe$;<^eaK!cA_Yqge=VKj~#r-wO(WV5eI^LQ*Q-7H+fDzS@gP4dR+0^VT-*S z$9zgKD=_uun?#TKT^PeHIY|eRVpzd5>vh(R!!KEs0RwHz_pf-rhZvXFeJQ$1&JS!y z@3as8Va*V>7Bl~e!P?^|d`&c7NHEZG1NpFHNZ$=(bjD_Nr|fra{qpot58*J%dso-S zkOyrpwdT}t!LJb;25{pY|1555z)1BU^Bm?PahqX(GOc9zSMR7N@8Ha5N$q}^{vaE> z2(G^fxLS^uk)|W*!q896Q5xr3ca+hpkiLnffRdNGPe{zP4cde^O16qszzCvKB${dY zagnBbcV+VrMqzxV)NrM-D_j!VYl~kqOxa=Er93))5*hHkIRovIHoZzOT-NeYlNtC% zd`)=%RjC@8s*CHSe$a`D(I4voi!LiC0gU5?BvLA;+YDx4V>)V5BCy4cvC`}-S?hN||ndS#pN{{umXTjKx# literal 0 HcmV?d00001 diff --git a/src/core/i18n/default.json b/src/core/i18n/default.json index 83a9cccc..39df9820 100644 --- a/src/core/i18n/default.json +++ b/src/core/i18n/default.json @@ -6,11 +6,13 @@ "ARE_YOU_SURE_TO_DELETE_THEME": "Are you sure you wish to delete {name}?", "ASSET_BROWSER": "Asset Browser", "BRAND": "Brand", - "BUNNY": "Bunny", + "BUNNY": "Revenge", "BUNNY_URL": "Bunny URL", "BYTECODE": "Bytecode", "CANCEL": "Cancel", "CLEAR": "Clear", + "CLEAR_BUNDLE": "Clear JS bundle", + "CLEAR_BUNDLE_DESC": "Clear the cached bundle. This will force a re-download of the bundle next app launch.", "CLEAR_DATA": "Clear data", "CLEAR_DATA_FAILED": "Failed to clear data for {name}!", "CLEAR_DATA_SUCCESSFUL": "Cleared data for {name}.", @@ -66,6 +68,8 @@ "MANUFACTURER": "Manufacturer", "MESSAGE": "Message", "MISCELLANEOUS": "Miscellaneous", + "MODAL_RELOAD_REQUIRED": "Reload app?", + "MODAL_RELOAD_REQUIRED_DESC": "A reload is required to see the changes. Do you want to reload now?", "MODAL_THEME_REFETCHED": "Theme refetched", "MODAL_THEME_REFETCHED_DESC": "A reload is required to see the changes. Do you want to reload now?", "MODAL_UNPROXIED_PLUGIN_DESC": "The plugin you are trying to install has not been proxied/verified by staffs. Are you sure you want to continue?", @@ -81,10 +85,10 @@ "REFETCH": "Refetch", "RELOAD": "Reload", "RELOAD_DISCORD": "Reload Discord", - "RELOAD_IN_NORMAL_MODE": "Reload in Normal Mode", - "RELOAD_IN_NORMAL_MODE_DESC": "This will reload Discord normally", - "RELOAD_IN_SAFE_MODE": "Reload in Safe Mode", - "RELOAD_IN_SAFE_MODE_DESC": "This will reload Discord without loading addons", + "RELOAD_IN_NORMAL_MODE": "Reload in normal mode", + "RELOAD_IN_NORMAL_MODE_DESC": "Safe mode currently enabled, tap to reload in normal mode", + "RELOAD_IN_SAFE_MODE": "Reload in safe mode", + "RELOAD_IN_SAFE_MODE_DESC": "Tap to reload Discord without loading addons", "REMOVE": "Remove", "RESTART_REQUIRED_TO_TAKE_EFFECT": "Restart is required to take effect", "RETRY": "Retry", diff --git a/src/core/ui/settings/index.ts b/src/core/ui/settings/index.ts index 1d1b3e5d..342b13d7 100644 --- a/src/core/ui/settings/index.ts +++ b/src/core/ui/settings/index.ts @@ -1,4 +1,4 @@ -import PyoncordIcon from "@assets/icons/pyoncord.png"; +import PyoncordIcon from "@assets/icons/revenge.png"; import { Strings } from "@core/i18n"; import { findAssetId } from "@lib/api/assets"; import { isFontSupported, isThemeSupported } from "@lib/api/native/loader"; @@ -11,7 +11,7 @@ export { PyoncordIcon }; export default function initSettings() { registerSection({ - name: "Bunny", + name: Strings.BUNNY, items: [ { key: "BUNNY", diff --git a/src/core/ui/settings/pages/Developer/index.tsx b/src/core/ui/settings/pages/Developer/index.tsx index f8338dd9..aaee709c 100644 --- a/src/core/ui/settings/pages/Developer/index.tsx +++ b/src/core/ui/settings/pages/Developer/index.tsx @@ -13,10 +13,13 @@ import { findByProps } from "@metro/wrappers"; import { semanticColors } from "@ui/color"; import { ErrorBoundary } from "@ui/components"; import { createStyles, TextStyleSheet } from "@ui/styles"; +import { NativeModules } from "react-native"; import { ScrollView, StyleSheet } from "react-native"; const { hideActionSheet } = lazyDestructure(() => findByProps("openLazy", "hideActionSheet")); const { showSimpleActionSheet } = lazyDestructure(() => findByProps("showSimpleActionSheet")); +const { openAlert, dismissAlert } = lazyDestructure(() => findByProps("openAlert", "dismissAlert")); +const { AlertModal, AlertActionButton } = lazyDestructure(() => findByProps("AlertModal", "AlertActions")); const RDT_EMBED_LINK = "https://raw.githubusercontent.com/amsyarasyiq/rdt-embedder/main/dist.js"; @@ -96,6 +99,23 @@ export default function Developer() { } + } + onPress={() => { + openAlert("revenge-clear-bundle-reload-confirmation", + NativeModules.BundleUpdaterManager.reload()} /> + + + } + />); + }} + /> } - trailing={{version}} + trailing={} onPress={() => { clipboard.setString(`${label} - ${version}`); showToast.showCopyToClipboard(); diff --git a/src/core/ui/settings/pages/General/index.tsx b/src/core/ui/settings/pages/General/index.tsx index bffb4b1e..750f3edb 100644 --- a/src/core/ui/settings/pages/General/index.tsx +++ b/src/core/ui/settings/pages/General/index.tsx @@ -61,11 +61,12 @@ export default function General() { icon={} onPress={() => NativeModules.BundleUpdaterManager.reload()} /> - } - onPress={toggleSafeMode} + value={settings.safeMode?.enabled} + onValueChange={toggleSafeMode} /> void | boolean)[]) { unpatches.push(after("default", findByNameLazy("getScreens", false), (_a, screens) => ({ ...screens, VendettaCustomPage: { - title: "Bunny", + title: Strings.BUNNY, render: () => }, BUNNY_CUSTOM_PAGE: { - title: "Bunny", + title: Strings.BUNNY, render: () => } }))); diff --git a/src/lib/ui/settings/patches/tabs.tsx b/src/lib/ui/settings/patches/tabs.tsx index 4c73b80a..c160bb34 100644 --- a/src/lib/ui/settings/patches/tabs.tsx +++ b/src/lib/ui/settings/patches/tabs.tsx @@ -5,6 +5,7 @@ import { findByNameLazy, findByPropsLazy } from "@metro/wrappers"; import { registeredSections } from "@ui/settings"; import { CustomPageRenderer, wrapOnPress } from "./shared"; +import { Strings } from "@core/i18n"; const settingConstants = findByPropsLazy("SETTING_RENDERER_CONFIG"); const SettingsOverviewScreen = findByNameLazy("SettingsOverviewScreen", false); @@ -40,7 +41,7 @@ export function patchTabsUI(unpatches: (() => void | boolean)[]) { ...rendererConfigValue, VendettaCustomPage: { type: "route", - title: () => "Bunny", + title: () => Strings.BUNNY, screen: { route: "VendettaCustomPage", getComponent: () => CustomPageRenderer @@ -48,7 +49,7 @@ export function patchTabsUI(unpatches: (() => void | boolean)[]) { }, BUNNY_CUSTOM_PAGE: { type: "route", - title: () => "Bunny", + title: () => Strings.BUNNY, screen: { route: "BUNNY_CUSTOM_PAGE", getComponent: () => CustomPageRenderer diff --git a/src/lib/utils/constants.ts b/src/lib/utils/constants.ts index 1885fdfa..83ab2187 100644 --- a/src/lib/utils/constants.ts +++ b/src/lib/utils/constants.ts @@ -1,5 +1,5 @@ -export const DISCORD_SERVER = "https://discord.gg/XjYgWXHb9Q"; -export const GITHUB = "https://github.com/pyoncord"; +export const DISCORD_SERVER = "https://discord.com/invite/ddcQf3s2Uq"; +export const GITHUB = "https://github.com/revenge-mod"; export const HTTP_REGEX = /^https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_+.~#?&/=]*)$/; export const HTTP_REGEX_MULTI = /https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_+.~#?&//=]*)/g; export const VD_PROXY_PREFIX = "https://vd-plugins.github.io/proxy"; diff --git a/src/lib/utils/logger.ts b/src/lib/utils/logger.ts index 44b519cb..eb5582cb 100644 --- a/src/lib/utils/logger.ts +++ b/src/lib/utils/logger.ts @@ -12,4 +12,4 @@ export interface Logger { } export const DiscordLogger = findByNameLazy("Logger"); -export const logger: Logger = new DiscordLogger("Bunny"); +export const logger: Logger = new DiscordLogger("Revenge");