@neon-rs/load
Advanced tools
Comparing version 0.0.153 to 0.0.154
@@ -95,3 +95,10 @@ "use strict"; | ||
exports.bin = bin; | ||
function lazy(loaders, exports) { | ||
function lazyV1(loaders, exports) { | ||
return lazyV2({ | ||
targets: loaders, | ||
exports | ||
}); | ||
} | ||
function lazyV2(options) { | ||
const loaders = options.targets; | ||
let loaded = null; | ||
@@ -106,3 +113,13 @@ function load() { | ||
} | ||
loaded = loaders[target](); | ||
if (options.debug) { | ||
try { | ||
loaded = options.debug(); | ||
} | ||
catch (_e) { | ||
loaded = null; | ||
} | ||
} | ||
if (!loaded) { | ||
loaded = loaders[target](); | ||
} | ||
return loaded; | ||
@@ -116,2 +133,7 @@ } | ||
} | ||
function lazy(optionsOrLoaders, exports) { | ||
return exports | ||
? lazyV1(optionsOrLoaders, exports) | ||
: lazyV2(optionsOrLoaders); | ||
} | ||
exports.lazy = lazy; |
{ | ||
"name": "@neon-rs/load", | ||
"version": "0.0.153", | ||
"version": "0.0.154", | ||
"description": "Utilities for loading Neon modules.", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
export declare function currentTarget(): string; | ||
export declare function bin(scope: string[], ...rest: string[]): string; | ||
export type LazyOptions = { | ||
targets: Record<string, () => any>; | ||
exports: string[]; | ||
debug?: () => any; | ||
}; | ||
export declare function lazy(loaders: Record<string, () => any>, exports: string[]): any; | ||
export declare function lazy(options: LazyOptions): any; |
6401
145