feat(lib/discord/modules): export main_tabs_v2
This commit is contained in:
parent
17307bb90a
commit
0d08d0ad6a
4 changed files with 60 additions and 4 deletions
|
|
@ -27,6 +27,9 @@
|
|||
"./preinit": {
|
||||
"default": "./src/preinit.ts"
|
||||
},
|
||||
"./modules/main_tabs_v2": {
|
||||
"default": "./src/modules/main_tabs_v2/index.ts"
|
||||
},
|
||||
"./modules/settings": {
|
||||
"default": "./src/modules/settings/index.ts"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -26,12 +26,20 @@ defineLazyProperty(discord, 'native', function () {
|
|||
})
|
||||
|
||||
defineLazyProperty(discord, 'modules', function () {
|
||||
return {
|
||||
settings: {
|
||||
const modules = {} as PluginApiDiscord.Modules
|
||||
|
||||
defineLazyProperty(modules, 'mainTabsV2', function () {
|
||||
return require('@revenge-mod/discord/modules/main_tabs_v2')
|
||||
})
|
||||
|
||||
defineLazyProperty(modules, 'settings', function () {
|
||||
return {
|
||||
...require('@revenge-mod/discord/modules/settings'),
|
||||
renderer: require('@revenge-mod/discord/modules/settings/renderer'),
|
||||
},
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
return modules
|
||||
})
|
||||
|
||||
_initExts.push((api, { manifest: { id } }) =>
|
||||
|
|
|
|||
44
lib/discord/src/modules/main_tabs_v2.ts
Normal file
44
lib/discord/src/modules/main_tabs_v2.ts
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
import {
|
||||
byDependencies,
|
||||
byProps,
|
||||
every,
|
||||
looseDeps,
|
||||
preferExports,
|
||||
relativeDep,
|
||||
} from '@revenge-mod/modules/finders/filters'
|
||||
import { lookupModule } from '@revenge-mod/modules/finders/lookup'
|
||||
import { proxify } from '@revenge-mod/utils/proxy'
|
||||
import type { NavigationContainerRef } from '@react-navigation/core'
|
||||
|
||||
export interface RootNavigationRef {
|
||||
getRootNavigationRef<
|
||||
T extends object = Record<string, unknown>,
|
||||
>(): NavigationContainerRef<T>
|
||||
}
|
||||
|
||||
export let RootNavigationRef: RootNavigationRef = proxify(
|
||||
() => {
|
||||
const [module] = lookupModule(
|
||||
preferExports(
|
||||
byProps<RootNavigationRef>('getRootNavigationRef'),
|
||||
every(
|
||||
byDependencies([
|
||||
looseDeps([
|
||||
[],
|
||||
looseDeps([relativeDep(1), relativeDep(2)]),
|
||||
]),
|
||||
2,
|
||||
]),
|
||||
),
|
||||
),
|
||||
{
|
||||
includeUninitialized: true,
|
||||
},
|
||||
)
|
||||
|
||||
if (module) return (RootNavigationRef = module)
|
||||
},
|
||||
{
|
||||
hint: 'object',
|
||||
},
|
||||
)!
|
||||
|
|
@ -15,6 +15,7 @@ export namespace PluginApiDiscord {
|
|||
export type Native = typeof import('@revenge-mod/discord/native')
|
||||
|
||||
export interface Modules {
|
||||
mainTabsV2: typeof import('@revenge-mod/discord/modules/main_tabs_v2')
|
||||
settings: typeof import('@revenge-mod/discord/modules/settings') & {
|
||||
renderer: typeof import('@revenge-mod/discord/modules/settings/renderer')
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue