2025-06-07 09:57:08 +07:00
|
|
|
import * as patcher from '@revenge-mod/patcher'
|
|
|
|
|
import { modules } from './modules'
|
|
|
|
|
import { plugins } from './plugins'
|
2025-07-16 20:02:18 +07:00
|
|
|
import { react } from './react'
|
2025-06-03 16:24:58 +07:00
|
|
|
import type {
|
|
|
|
|
UnscopedInitPluginApi,
|
|
|
|
|
UnscopedPluginApi,
|
|
|
|
|
UnscopedPreInitPluginApi,
|
|
|
|
|
} from '../types'
|
2025-05-09 21:53:48 +07:00
|
|
|
|
2025-07-11 17:55:54 +07:00
|
|
|
// @ts-expect-error: This will be modified by libraries later
|
2025-07-05 13:12:57 +07:00
|
|
|
export const pUnscopedApi:
|
2025-06-03 16:24:58 +07:00
|
|
|
| UnscopedPreInitPluginApi
|
|
|
|
|
| UnscopedInitPluginApi
|
|
|
|
|
| UnscopedPluginApi = {
|
2025-06-07 09:57:08 +07:00
|
|
|
modules,
|
|
|
|
|
patcher,
|
2025-07-11 17:02:22 +07:00
|
|
|
plugins,
|
2025-07-16 20:02:18 +07:00
|
|
|
react,
|
2025-05-09 21:53:48 +07:00
|
|
|
}
|
2025-07-21 14:05:37 +07:00
|
|
|
|
|
|
|
|
export function spreadDescriptors<T extends object, U extends object>(
|
|
|
|
|
from: T,
|
|
|
|
|
to: U,
|
|
|
|
|
): T & U {
|
|
|
|
|
return Object.defineProperties(
|
|
|
|
|
to,
|
|
|
|
|
Object.getOwnPropertyDescriptors(from),
|
|
|
|
|
) as T & U
|
|
|
|
|
}
|