chore(lib): refactor libs for preinits and inits

This commit is contained in:
PalmDevs 2025-04-27 20:56:18 +07:00
parent 89b9fa7958
commit d251b401c9
No known key found for this signature in database
GPG key ID: 6FAE8F8677ACA8BA
9 changed files with 42 additions and 27 deletions

View file

@ -5,6 +5,9 @@
"exports": {
".": {
"default": "./src/index.ts"
},
"./init": {
"default": "./src/init.ts"
}
}
}

View file

@ -1,5 +1,3 @@
import './patches'
import { ReactNative } from '@revenge-mod/modules/common'
import { _assets } from './_internal'

1
lib/assets/src/init.ts Normal file
View file

@ -0,0 +1 @@
import './patches'

View file

@ -8,29 +8,31 @@ import { getErrorStack } from '@revenge-mod/utils/errors'
import { logger } from './shared'
onModuleFirstRequired(0, function onceIndexModuleRequired() {
onModuleFirstRequired(0, function onceIndexRequired() {
if (!__BUILD_FLAG_INIT_DISABLE_PATCH_LOG_PROMISE_REJECTIONS__) require('./patches/log-promise-rejections')
require('@revenge-mod/modules')
onModuleInitialized(0, () => {
require('@revenge-mod/assets')
try {
logger.log('Revenge loaded!')
} catch (e) {
const { ClientInfoModule, DeviceModule } = require('@revenge-mod/modules/native/discord') as
// biome-ignore format: Don't format this please
typeof import('@revenge-mod/modules/native/discord')
// TODO(init): Move to use native module
alert(
// biome-ignore lint/style/useTemplate: I want this to be readable, thank you
'Failed to load Revenge!\n' +
`Discord: ${ClientInfoModule.Version} (${ClientInfoModule.Build})\n` +
`Device: ${DeviceModule.deviceManufacturer} ${DeviceModule.deviceModel}\n\n` +
getErrorStack(e),
)
}
})
// Initialize preinit libraries
require('@revenge-mod/modules/preinit')
})
onModuleInitialized(0, function onceIndexInitialized() {
try {
// Initialize init libraries
require('@revenge-mod/assets/init')
logger.log('Revenge loaded!')
} catch (e) {
const { ClientInfoModule, DeviceModule } = require('@revenge-mod/modules/native/discord') as
// biome-ignore format: Don't format this please
typeof import('@revenge-mod/modules/native/discord')
// TODO(init): Move to use native module
alert(
// biome-ignore lint/style/useTemplate: I want this to be readable, thank you
'Failed to load Revenge!\n' +
`Discord: ${ClientInfoModule.Version} (${ClientInfoModule.Build})\n` +
`Device: ${DeviceModule.deviceManufacturer} ${DeviceModule.deviceModel}\n\n` +
getErrorStack(e),
)
}
})

View file

@ -3,6 +3,9 @@
"private": true,
"type": "module",
"exports": {
".": {
"default": "./src/index.ts"
},
"./common": {
"default": "./src/common.ts"
},
@ -24,6 +27,9 @@
"./native/discord": {
"default": "./src/native/discord.ts"
},
"./preinit": {
"default": "./src/preinit.ts"
},
"./types/*": {
"default": "./types/*.ts",
"types": "./types/*.ts"

5
lib/modules/src/index.ts Normal file
View file

@ -0,0 +1,5 @@
export * as common from './common'
export * as finders from './finders'
export * as filters from './finders/filters'
export * as metro from './metro'
export * as native from './native'

View file

@ -1,5 +1,3 @@
import './patches'
export * from './subscriptions'
export * from './utils'

View file

@ -0,0 +1 @@
export * as discord from './discord'

View file

@ -0,0 +1 @@
import './metro/patches'