diff options
Diffstat (limited to 'src/webpack/webpack.ts')
-rw-r--r-- | src/webpack/webpack.ts | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/webpack/webpack.ts b/src/webpack/webpack.ts index a1fd2fb..b8f10e4 100644 --- a/src/webpack/webpack.ts +++ b/src/webpack/webpack.ts @@ -10,7 +10,15 @@ export const filters = { props.length === 1 ? m => m[props[0]] !== void 0 : m => props.every(p => m[p] !== void 0), - byDisplayName: (deezNuts: string): FilterFn => m => m.default?.displayName === deezNuts + byDisplayName: (deezNuts: string): FilterFn => m => m.default?.displayName === deezNuts, + byCode: (...code: string[]): FilterFn => m => { + if (typeof m !== "function") return false; + const s = Function.prototype.toString.call(m); + for (const c of code) { + if (!s.includes(c)) return false; + } + return true; + } }; export const subscriptions = new Map<FilterFn, CallbackFn>(); |