Fix "injectErrorPageUseEffect" patch

This commit is contained in:
redphx
2025-05-29 08:27:20 +07:00
parent 9e851fbd15
commit 256f28695e
4 changed files with 10 additions and 10 deletions

View File

@@ -104,8 +104,8 @@ export class PatcherUtils {
return str.substring(start, end);
}
static injectUseEffect<T extends 'Stream' | 'Script'>(str: string, index: number, group: T, eventName: T extends 'Stream' ? keyof StreamEvents : keyof ScriptEvents) {
const newCode = `window.BX_EXPOSED.reactUseEffect(() => window.BxEventBus.${group}.emit('${eventName}', {}), []);`;
static injectUseEffect<T extends 'Stream' | 'Script'>(str: string, index: number, group: T, eventName: T extends 'Stream' ? keyof StreamEvents : keyof ScriptEvents, separator: string = ';') {
const newCode = `window.BX_EXPOSED.reactUseEffect(() => window.BxEventBus.${group}.emit('${eventName}', {}), [])${separator}`;
str = PatcherUtils.insertAt(str, index, newCode);
return str;

View File

@@ -1118,12 +1118,12 @@ ${subsVar} = subs;
injectErrorPageUseEffect(str: string) {
let index = str.indexOf('"PureErrorPage-module__container');
index > -1 && (index = PatcherUtils.lastIndexOf(str, 'return', index, 200));
index > -1 && (index = PatcherUtils.lastIndexOf(str, '})=>(0,', index, 200));
if (index < 0) {
return false;
}
return PatcherUtils.injectUseEffect(str, index, 'Script', 'ui.error.rendered');
return PatcherUtils.injectUseEffect(str, index + 4, 'Script', 'ui.error.rendered', ',');
},
injectStreamMenuUseEffect(str: string) {