UNPKG

client-side-router

Version:

A client-side router for vanilla JavaScript projects.

38 lines (31 loc) 571 B
function Route({ path, component, name }: { path: string; component: Component; name?: string; }): I1 { return { name: name ?? "no-name", component, regex: RegExp(path) }; } function Router({ children }: { children: I1[]; }) { return new RouterOutlet(children); } class RouterOutlet extends HTMLElement { private readonly i1: I1[]; public constructor(i1: I1[]) { super(); this.i1 = i1; } connectedCallback(): void { } } type Component = () => Node; type I1 = { name: string; component: Component; regex: RegExp; };