Skip to content

Commit 84a683d

Browse files
committed
fix: solve multiple issue
1 parent c23c726 commit 84a683d

File tree

3 files changed

+39
-5
lines changed

3 files changed

+39
-5
lines changed

public/configuration.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{}

src/App.jsx

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ function Editor({ endpoint, queries, prefix }) {
99
const [yasgui, setYasgui] = useState();
1010
const [counter, setCounter] = useState(0);
1111
const ref = useRef(null);
12+
const editorRef = useRef(null);
1213

1314
const [inserted, setInserted] = useState(false);
1415

@@ -33,10 +34,15 @@ function Editor({ endpoint, queries, prefix }) {
3334
};
3435

3536
useLayoutEffect(() => {
37+
if (editorRef.current.getAttribute("data-yasgui") === "true") {
38+
return;
39+
}
40+
3641
localStorage.removeItem("yagui__config");
42+
editorRef.current.setAttribute("data-yasgui", "true");
3743
setYasgui(
3844
// eslint-disable-next-line no-undef
39-
new Yasgui(document.getElementById("editor"), {
45+
new Yasgui(editorRef.current, {
4046
requestConfig: {
4147
endpoint
4248
}
@@ -48,14 +54,15 @@ function Editor({ endpoint, queries, prefix }) {
4854
<>
4955
<div className="queries-block" ref={ref}>
5056
{queries.map((query, i) => (
51-
<button key={i} onClick={() => click(query)}>
57+
<button type="button" key={i} onClick={() => click(query)}>
5258
{" "}
5359
{query.label}{" "}
5460
</button>
5561
))}
5662
</div>
5763
<div
5864
id="editor"
65+
ref={editorRef}
5966
onClick={e => {
6067
if (
6168
endpoint !== defaultEndpoint &&

vite.config.ts

Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
import { defineConfig } from 'vite'
2-
import react from '@vitejs/plugin-react-swc'
1+
import { defineConfig } from "vite";
2+
import react from "@vitejs/plugin-react-swc";
33
import { configDefaults } from "vitest/config";
4+
import { readFileSync } from "fs";
5+
import { resolve } from "path";
46

57
// https://vitejs.dev/config/
68
export default defineConfig({
@@ -19,6 +21,30 @@ export default defineConfig({
1921
outDir: "temp_dist"
2022
},
2123
server: {
22-
port: 3000
24+
port: 3000,
25+
proxy: {
26+
"/queries/queries.json": {
27+
bypass: function (req, res) {
28+
res.setHeader("Content-Type", "application/json");
29+
res.end(
30+
readFileSync(
31+
resolve(import.meta.dirname, "pages/queries/queries.json")
32+
).toString()
33+
);
34+
return false;
35+
}
36+
},
37+
"^/queries/.*.txt": {
38+
bypass: function (req, res) {
39+
res.setHeader("Content-Type", "application/json");
40+
res.end(
41+
readFileSync(
42+
resolve(import.meta.dirname, "pages/", req.url!.replace("/", ""))
43+
).toString()
44+
);
45+
return false;
46+
}
47+
}
48+
}
2349
}
2450
});

0 commit comments

Comments
 (0)