fix
This commit is contained in:
parent
2d42d9e482
commit
a2fe29da7a
File diff suppressed because one or more lines are too long
|
|
@ -4,59 +4,34 @@ import { fetchViaProxy } from "../proxy";
|
|||
|
||||
export const loadApiProxyDef = async (_url: string, with_types: boolean) => {
|
||||
const url = trim(_url, "/");
|
||||
const raw = await fetchViaProxy(urlPath(url, "/_prasi/_"));
|
||||
let ver = "";
|
||||
if (raw && (raw as any).prasi) {
|
||||
ver = (raw as any).prasi;
|
||||
}
|
||||
|
||||
const base = baseUrl(url);
|
||||
|
||||
if (ver === "v2") {
|
||||
await new Promise<void>((done) => {
|
||||
const d = document;
|
||||
const script = d.createElement("script");
|
||||
script.onload = async () => {
|
||||
done();
|
||||
};
|
||||
|
||||
if (!localStorage.getItem("api-ts-" + url)) {
|
||||
localStorage.setItem("api-ts-" + url, Date.now().toString());
|
||||
}
|
||||
|
||||
const ts = localStorage.getItem("api-ts-" + url);
|
||||
|
||||
if (with_types) {
|
||||
script.src = `${base}/_prasi/load.js?url=${url}&v3&dev=1&ts=${ts}`;
|
||||
} else {
|
||||
script.src = `${base}/_prasi/load.js?url=${url}&v3&ts=${ts}`;
|
||||
}
|
||||
|
||||
if (!document.querySelector(`script[src="${script.src}"]`)) {
|
||||
d.body.appendChild(script);
|
||||
} else {
|
||||
done();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
const apiEntry = await fetch(base + "/_prasi/api-entry");
|
||||
w.prasiApi[url] = {
|
||||
apiEntry: (await apiEntry.json()).srv,
|
||||
await new Promise<void>((done) => {
|
||||
const d = document;
|
||||
const script = d.createElement("script");
|
||||
script.onload = async () => {
|
||||
done();
|
||||
};
|
||||
|
||||
if (with_types) {
|
||||
const apiTypes = await fetch(base + "/_prasi/api-types");
|
||||
w.prasiApi[url].apiTypes = await apiTypes.text();
|
||||
w.prasiApi[url].prismaTypes = {
|
||||
"prisma.d.ts": await loadText(`${base}/_prasi/prisma/index.d.ts`),
|
||||
"runtime/index.d.ts": await loadText(
|
||||
`${base}/_prasi/prisma/runtime/index.d.ts`
|
||||
),
|
||||
"runtime/library.d.ts": await loadText(
|
||||
`${base}/_prasi/prisma/runtime/library.d.ts`
|
||||
),
|
||||
};
|
||||
if (!localStorage.getItem("api-ts-" + url)) {
|
||||
localStorage.setItem("api-ts-" + url, Date.now().toString());
|
||||
}
|
||||
}
|
||||
|
||||
const ts = localStorage.getItem("api-ts-" + url);
|
||||
|
||||
if (with_types) {
|
||||
script.src = `${base}/_prasi/load.js?url=${url}&v3&dev=1&ts=${ts}`;
|
||||
} else {
|
||||
script.src = `${base}/_prasi/load.js?url=${url}&v3&ts=${ts}`;
|
||||
}
|
||||
|
||||
if (!document.querySelector(`script[src="${script.src}"]`)) {
|
||||
d.body.appendChild(script);
|
||||
} else {
|
||||
done();
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
const baseUrl = (url: string) => {
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ export const startDevWatcher = async () => {
|
|||
await dirAsync(dir.path(`app/srv/api`));
|
||||
watch(dir.path(`app/srv/api`), async (event, filename) => {
|
||||
const s = file(dir.path(`app/srv/api/${filename}`));
|
||||
if (s.size === 0) {
|
||||
if (s.size === 0 && filename?.endsWith(".ts") && (await s.exists())) {
|
||||
await Bun.write(
|
||||
`app/srv/api/${filename}`,
|
||||
`\
|
||||
|
|
|
|||
Loading…
Reference in New Issue