mirror of
https://github.com/sern-handler/handler
synced 2026-06-06 01:16:55 +00:00
working on bun compat
This commit is contained in:
@@ -7,22 +7,23 @@ import type {
|
||||
} from '../types/core-modules';
|
||||
import { type _Module, partitionPlugins } from './_internal';
|
||||
import type { Awaitable } from '../types/utility';
|
||||
import callsites from 'callsites';
|
||||
import callsites, { type CallSite } from 'callsites';
|
||||
import * as Files from './module-loading'
|
||||
import * as Id from './id'
|
||||
|
||||
const get_callsite = (css: CallSite[]) => {
|
||||
return css.map(cs => cs.getFileName()).filter(Boolean)
|
||||
}
|
||||
/**
|
||||
* @since 1.0.0 The wrapper function to define command modules for sern
|
||||
* @param mod
|
||||
*/
|
||||
export function commandModule(mod: InputCommand): _Module {
|
||||
const [onEvent, plugins] = partitionPlugins(mod.plugins);
|
||||
const initCallsite = callsites().at(-2)?.getFileName();
|
||||
const initCallsite = get_callsite(callsites()).at(-2);
|
||||
if(!initCallsite) throw Error("initCallsite is null");
|
||||
|
||||
const { name, absPath } = Files.parseCallsite(initCallsite);
|
||||
mod.name ??= name;
|
||||
mod.description ??= '...'
|
||||
mod.name ??= name; mod.description ??= '...'
|
||||
//@ts-ignore
|
||||
return {
|
||||
...mod,
|
||||
@@ -41,11 +42,10 @@ export function commandModule(mod: InputCommand): _Module {
|
||||
*/
|
||||
export function eventModule(mod: InputEvent): _Module {
|
||||
const [onEvent, plugins] = partitionPlugins(mod.plugins);
|
||||
const initCallsite = callsites().at(-2)?.getFileName();
|
||||
const initCallsite = get_callsite(callsites()).at(-2);
|
||||
if(!initCallsite) throw Error("initCallsite is null");
|
||||
const { name, absPath } = Files.parseCallsite(initCallsite);
|
||||
mod.name ??= name;
|
||||
mod.description ??= '...'
|
||||
mod.name ??= name; mod.description ??= '...'
|
||||
//@ts-ignore
|
||||
return {
|
||||
...mod,
|
||||
|
||||
Reference in New Issue
Block a user