@westacks/vortex
Version:
Server-based routing for SPAs
36 lines (35 loc) • 1.07 kB
JavaScript
import { s as setPage } from "./page-ILOxo6kg.js";
import { g, a } from "./page-ILOxo6kg.js";
import { c as createRouter, d as destroyRouter } from "./router-CgFdQeyO.js";
import { a as a2, i, l } from "./router-CgFdQeyO.js";
import { u } from "./form-Cv6npAGh.js";
async function createVortex(setup, element = "#app") {
var _a, _b;
if (typeof element === "string") {
element = document.querySelector(element);
}
if (!element) throw new Error("Root element not found!");
const page = JSON.parse(((_a = element.dataset) == null ? void 0 : _a.page) ?? "null");
if (!page) throw new Error("Initial page data not defined!");
setPage(page);
createRouter();
const dispose = await setup(element, page, !!((_b = element.dataset) == null ? void 0 : _b.ssr));
delete element.dataset.page;
delete element.dataset.ssr;
return () => {
if (dispose instanceof Function) {
dispose();
}
destroyRouter();
};
}
export {
a2 as axios,
createVortex,
g as getPage,
i as install,
l as link,
setPage,
a as subscribe,
u as useForm
};