vasille-jsx
Version:
The same framework which is designed to build bulletproof frontends (JSX components)
24 lines (23 loc) • 905 B
JavaScript
import { setErrorHandler as coreSetErrorHandler } from "vasille";
import { errorToString } from "vasille/dev";
import { earlyInspector } from "./early-inspector.js";
export { DevDelay, DevWatch, DevFor, DevSwitch, DevSlot } from "./components.js";
export { devStore, devModel, devMount, devView } from "./compose.js";
export { devArrayModel, devMapModel, devEnsure, devExpr, devMatch, devSetModel, devRef, devSet } from "./internal.js";
export { devAwaited } from "./library.js";
export { AbstractInspector, EarlyInspector, earlyInspector } from "./early-inspector.js";
function devErrorHandler(e) {
earlyInspector.reportError({
targetId: 0,
error: errorToString(e),
time: Date.now(),
});
console.error(e);
}
coreSetErrorHandler(devErrorHandler);
export function setErrorHandler(fn) {
coreSetErrorHandler(e => {
devErrorHandler(e);
fn(e);
});
}