feat(lib/discord/common): export utils
This commit is contained in:
parent
23d250d163
commit
ad256fd9f3
4 changed files with 50 additions and 0 deletions
|
|
@ -15,6 +15,9 @@
|
|||
"./common/flux": {
|
||||
"default": "./src/common/flux.ts"
|
||||
},
|
||||
"./common/utils": {
|
||||
"default": "./src/common/utils.ts"
|
||||
},
|
||||
"./design": {
|
||||
"default": "./src/design.ts"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import type { DiscordModules } from '../types'
|
|||
|
||||
export { AppStartPerformance } from '../preinit'
|
||||
export * as Flux from './flux'
|
||||
export * as utils from './utils'
|
||||
|
||||
const { loose, relative } = byDependencies
|
||||
|
||||
|
|
|
|||
33
lib/discord/src/common/utils.ts
Normal file
33
lib/discord/src/common/utils.ts
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
import {
|
||||
byDependencies,
|
||||
byName,
|
||||
preferExports,
|
||||
} from '@revenge-mod/modules/finders/filters'
|
||||
import { lookupModule } from '@revenge-mod/modules/finders/lookup'
|
||||
import { proxify } from '@revenge-mod/utils/proxy'
|
||||
import type { DiscordModules } from '../types'
|
||||
|
||||
const [, _createClassModuleId] = lookupModule(byName('_createClass'))
|
||||
const [, _classCallCheckModuleId] = lookupModule(byName('_classCallCheck'))
|
||||
|
||||
export let TypedEventEmitter: typeof DiscordModules.Utils.TypedEventEmitter =
|
||||
proxify(() => {
|
||||
const [module] = lookupModule(
|
||||
preferExports(
|
||||
byName<typeof DiscordModules.Utils.TypedEventEmitter>(
|
||||
'TypedEventEmitter',
|
||||
),
|
||||
byDependencies([
|
||||
_classCallCheckModuleId,
|
||||
_createClassModuleId,
|
||||
[],
|
||||
2,
|
||||
]),
|
||||
),
|
||||
{
|
||||
includeUninitialized: true,
|
||||
},
|
||||
)
|
||||
|
||||
if (module) return (TypedEventEmitter = module)
|
||||
})!
|
||||
|
|
@ -1,3 +1,4 @@
|
|||
import { EventEmitter } from 'node:events'
|
||||
import type { ComponentProps, ComponentType, FC, ReactNode } from 'react'
|
||||
import type {
|
||||
ImageSourcePropType,
|
||||
|
|
@ -626,4 +627,16 @@ export namespace DiscordModules {
|
|||
| StaticSettingsItem
|
||||
}
|
||||
}
|
||||
|
||||
export namespace Utils {
|
||||
export namespace TypedEventEmitter {
|
||||
export type DefaultEventMap = [never]
|
||||
export type EventMap<T> = Record<keyof T, any[]> | DefaultEventMap
|
||||
}
|
||||
|
||||
export class TypedEventEmitter<
|
||||
T extends
|
||||
TypedEventEmitter.EventMap<T> = TypedEventEmitter.DefaultEventMap,
|
||||
> extends EventEmitter<T> {}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue