From e50f0e3e8e570222ddf506d9e58fa20b97763c99 Mon Sep 17 00:00:00 2001 From: Xmader Date: Thu, 12 Nov 2020 13:29:10 -0500 Subject: [PATCH] fix: auth magic --- src/file.ts | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/file.ts b/src/file.ts index f90542b..d4fb938 100644 --- a/src/file.ts +++ b/src/file.ts @@ -1,10 +1,10 @@ /* eslint-disable no-extend-native */ import scoreinfo from './scoreinfo' -import { webpackHook, webpackGlobalOverride } from './webpack-hook' +import { webpackHook, webpackGlobalOverride, ALL } from './webpack-hook' const FILE_URL_MODULE_ID = 'iNJA' -const AUTH_MODULE_ID = 'F08J' +const ARG_NUMBER = 4 const MAGIC_ARG_INDEX = 3 type FileType = 'img' | 'mp3' | 'midi' @@ -14,17 +14,19 @@ type FileType = 'img' | 'mp3' | 'midi' */ let magic: Promise | string = new Promise((resolve) => { // todo: hook module by what it does, not what it is called - webpackGlobalOverride(AUTH_MODULE_ID, (_, r, t) => { // override + webpackGlobalOverride(ALL, (_, r, t) => { // override const fn = r.a - t.d(r, 'a', () => { - return (...args) => { - if (magic instanceof Promise) { - magic = args[MAGIC_ARG_INDEX] - resolve(magic) + if (typeof fn === 'function' && fn.length === ARG_NUMBER) { + t.d(r, 'a', () => { + return (...args) => { + if (magic instanceof Promise) { + magic = args[MAGIC_ARG_INDEX] + resolve(magic) + } + return fn(...args) as string } - return fn(...args) as string - } - }) + }) + } }) })