feat(lib/discord/common): expose and switch filters to use ImportTrackerModuleId
This commit is contained in:
parent
a87d4ced5c
commit
d8897d8c4d
9 changed files with 48 additions and 19 deletions
|
|
@ -10,6 +10,7 @@ import {
|
|||
ReactNativeModuleId,
|
||||
} from '@revenge-mod/react'
|
||||
import { proxify } from '@revenge-mod/utils/proxy'
|
||||
import { ImportTrackerModuleId } from './common'
|
||||
import { DispatcherModuleId } from './common/flux'
|
||||
import type { DiscordModules } from './types'
|
||||
|
||||
|
|
@ -31,7 +32,7 @@ export let ActionSheetActionCreators: DiscordModules.Actions.ActionSheetActionCr
|
|||
DispatcherModuleId,
|
||||
relative(1),
|
||||
relative(2),
|
||||
2,
|
||||
ImportTrackerModuleId,
|
||||
]),
|
||||
),
|
||||
)
|
||||
|
|
@ -53,8 +54,8 @@ export let AlertActionCreators: DiscordModules.Actions.AlertActionCreators =
|
|||
).and(
|
||||
withDependencies([
|
||||
[relative(1), relative(2)],
|
||||
[ReactNativeModuleId, 2],
|
||||
2,
|
||||
[ReactNativeModuleId, ImportTrackerModuleId],
|
||||
ImportTrackerModuleId,
|
||||
]),
|
||||
),
|
||||
)
|
||||
|
|
@ -75,7 +76,12 @@ export let ToastActionCreators: DiscordModules.Actions.ToastActionCreators =
|
|||
const generator = lookupModules(
|
||||
withProps<DiscordModules.Actions.ToastActionCreators>('open')
|
||||
.and(withoutProps('init'))
|
||||
.and(withDependencies([DispatcherModuleId, 2])),
|
||||
.and(
|
||||
withDependencies([
|
||||
DispatcherModuleId,
|
||||
ImportTrackerModuleId,
|
||||
]),
|
||||
),
|
||||
)
|
||||
|
||||
for (const [module] of generator)
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ import {
|
|||
withDependencies,
|
||||
withProps,
|
||||
} from '@revenge-mod/modules/finders/filters'
|
||||
import { ImportTrackerModuleId } from '../patches/import-tracker'
|
||||
import type { Metro } from '@revenge-mod/modules/types'
|
||||
import type { DiscordModules } from '../types'
|
||||
|
||||
|
|
@ -12,6 +13,13 @@ const { relative } = withDependencies
|
|||
|
||||
export const [Dispatcher, DispatcherModuleId] = lookupModule(
|
||||
withProps<DiscordModules.Flux.Dispatcher>('_interceptors').and(
|
||||
withDependencies([relative(1), null, null, null, null, 2]),
|
||||
withDependencies([
|
||||
relative(1),
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
ImportTrackerModuleId,
|
||||
]),
|
||||
),
|
||||
) as [DiscordModules.Flux.Dispatcher, Metro.ModuleID]
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import {
|
|||
withProps,
|
||||
} from '@revenge-mod/modules/finders/filters'
|
||||
import { proxify } from '@revenge-mod/utils/proxy'
|
||||
import { ImportTrackerModuleId } from '../patches/import-tracker'
|
||||
import type { Metro } from '@revenge-mod/modules/types'
|
||||
import type { DiscordModules } from '../types'
|
||||
|
||||
|
|
@ -47,10 +48,10 @@ export let Constants: DiscordModules.Constants = proxify(
|
|||
withDependencies(
|
||||
loose([
|
||||
null,
|
||||
relative.withDependencies([2], 1),
|
||||
relative.withDependencies([2], 2),
|
||||
relative.withDependencies([2], 3),
|
||||
relative.withDependencies([2], 4),
|
||||
relative.withDependencies([ImportTrackerModuleId], 1),
|
||||
relative.withDependencies([ImportTrackerModuleId], 2),
|
||||
relative.withDependencies([ImportTrackerModuleId], 3),
|
||||
relative.withDependencies([ImportTrackerModuleId], 4),
|
||||
]),
|
||||
),
|
||||
),
|
||||
|
|
@ -63,3 +64,5 @@ export let Constants: DiscordModules.Constants = proxify(
|
|||
},
|
||||
{ hint: {} },
|
||||
)!
|
||||
|
||||
export { ImportTrackerModuleId } from '../patches/import-tracker'
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import {
|
|||
withName,
|
||||
} from '@revenge-mod/modules/finders/filters'
|
||||
import { proxify } from '@revenge-mod/utils/proxy'
|
||||
import { ImportTrackerModuleId } from '../patches/import-tracker'
|
||||
import type { DiscordModules } from '../types'
|
||||
|
||||
// ../discord_common/js/shared/utils/TypedEventEmitter.tsx
|
||||
|
|
@ -20,7 +21,7 @@ export let TypedEventEmitter: typeof DiscordModules.Utils.TypedEventEmitter =
|
|||
withName('_classCallCheck'),
|
||||
withName('_createClass'),
|
||||
[],
|
||||
2,
|
||||
ImportTrackerModuleId,
|
||||
]),
|
||||
),
|
||||
)
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ import {
|
|||
ReactNativeModuleId,
|
||||
} from '@revenge-mod/react'
|
||||
import { proxify } from '@revenge-mod/utils/proxy'
|
||||
import { ImportTrackerModuleId } from './common'
|
||||
import type { DiscordModules } from './types'
|
||||
|
||||
const { loose, relative } = withDependencies
|
||||
|
|
@ -26,9 +27,12 @@ export let Design: Design = proxify(
|
|||
loose([
|
||||
null,
|
||||
null,
|
||||
withDependencies([ReactNativeModuleId, 2]),
|
||||
withDependencies([2]),
|
||||
2,
|
||||
withDependencies([
|
||||
ReactNativeModuleId,
|
||||
ImportTrackerModuleId,
|
||||
]),
|
||||
withDependencies([ImportTrackerModuleId]),
|
||||
ImportTrackerModuleId,
|
||||
]),
|
||||
),
|
||||
)
|
||||
|
|
@ -63,8 +67,7 @@ export let FormSwitch: DiscordModules.Components.FormSwitch = proxify(() => {
|
|||
// Checkmark and X icons
|
||||
relative(1),
|
||||
relative(2),
|
||||
// Import tracker
|
||||
2,
|
||||
ImportTrackerModuleId,
|
||||
]),
|
||||
),
|
||||
)
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import {
|
|||
withProps,
|
||||
} from '@revenge-mod/modules/finders/filters'
|
||||
import { proxify } from '@revenge-mod/utils/proxy'
|
||||
import { ImportTrackerModuleId } from '../common'
|
||||
import type { NavigationContainerRef } from '@react-navigation/core'
|
||||
|
||||
const { loose, relative } = withDependencies
|
||||
|
|
@ -28,7 +29,8 @@ export let RootNavigationRef: RootNavigationRef = proxify(
|
|||
2,
|
||||
),
|
||||
]),
|
||||
2,
|
||||
// TODO: Decouple?
|
||||
ImportTrackerModuleId,
|
||||
]),
|
||||
)
|
||||
.keyAs('revenge.discord.modules.mainTabsV2.RootNavigationRef'),
|
||||
|
|
|
|||
|
|
@ -11,7 +11,11 @@ export type ModuleFinishedImportingCallback = (
|
|||
export const sImportedPath = new Set<ModuleFinishedImportingCallback>()
|
||||
export const mImportedPaths = new Map<string, Metro.ModuleID>()
|
||||
|
||||
getModules(withProps('fileFinishedImporting'), exports => {
|
||||
export let ImportTrackerModuleId: Metro.ModuleID
|
||||
|
||||
getModules(withProps('fileFinishedImporting'), (exports, id) => {
|
||||
ImportTrackerModuleId = id
|
||||
|
||||
const orig = exports.fileFinishedImporting
|
||||
exports.fileFinishedImporting = (path: string) => {
|
||||
orig(path)
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ const { relative } = withDependencies
|
|||
// ../discord_common/js/packages/app-start-performance/AppStartPerformance.tsx
|
||||
export const [AppStartPerformance] = lookupModule(
|
||||
withProps<DiscordModules.AppStartPerformance>('markAndLog').and(
|
||||
withDependencies([relative(-1), null, null, 2]),
|
||||
withDependencies([relative(-1), null, null, null]),
|
||||
),
|
||||
) as [DiscordModules.AppStartPerformance, Metro.ModuleID]
|
||||
|
||||
|
|
|
|||
4
lib/externals/src/shopify.ts
vendored
4
lib/externals/src/shopify.ts
vendored
|
|
@ -1,3 +1,4 @@
|
|||
import { ImportTrackerModuleId } from '@revenge-mod/discord/common'
|
||||
import { lookupModule } from '@revenge-mod/modules/finders'
|
||||
import {
|
||||
withDependencies,
|
||||
|
|
@ -23,7 +24,8 @@ export let FlashList: typeof import('@shopify/flash-list') = proxify(
|
|||
null,
|
||||
null,
|
||||
null,
|
||||
2,
|
||||
// TODO: Decouple?
|
||||
ImportTrackerModuleId,
|
||||
null,
|
||||
]),
|
||||
),
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue