import {
config,
createBlock,
html,
list,
mount as blockMount,
multi,
patch,
remove,
text,
toggler,
} from "./blockdom";
import { mainEventHandler } from "./component/handler";
import { EventBus, whenReady, loadFile } from "./utils";
config.shouldNormalizeDom = false;
config.mainEventHandler = mainEventHandler;
export const blockDom = {
config,
// bdom entry points
mount: blockMount,
patch,
remove,
// bdom block types
list,
multi,
text,
toggler,
createBlock,
html,
};
import { App } from "./app/app";
import { Component } from "./component/component";
import { getCurrent } from "./component/component_node";
export { App, Component };
export async function mount(
C: T,
target: HTMLElement
): Promise> {
const app = new App(C);
return app.mount(target);
}
export function useComponent(): Component {
const current = getCurrent();
return current!.component;
}
export { status } from "./component/status";
export { Portal } from "./misc/portal";
export { Memo } from "./misc/memo";
export { css, xml } from "./tags";
export { useState } from "./reactivity";
export { useRef, useEnv, useSubEnv } from "./hooks";
export const utils = { EventBus, whenReady, loadFile };
export {
onWillStart,
onMounted,
onWillUnmount,
onWillUpdateProps,
onWillPatch,
onPatched,
onRender,
onDestroyed,
onError,
} from "./component/lifecycle_hooks";
export const __info__ = {};