UNPKG

entry-script

Version:
24 lines (23 loc) 797 B
import { defaultImport } from 'default-import'; import { MainNotImplementedError } from '#not-implemented-error'; import { args, bin } from '#process-argv'; export class EntryScript { async main() { throw new MainNotImplementedError(true); } static async main() { throw new MainNotImplementedError(false); } } const isEntryScript = (x)=>Object.prototype.isPrototypeOf.call(EntryScript, x); export const runAsMain = async (url)=>{ if (url) { const rawEntryScript = await import(url).catch(()=>null); const script = defaultImport(rawEntryScript); if (script && (script instanceof EntryScript || isEntryScript(script))) { await script.main(args); } } }; void runAsMain(bin); //# sourceMappingURL=entry-script.js.map