diff --git a/.gitignore b/.gitignore
index 927d17b..b0290a3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,3 +16,4 @@ npm-debug.log*
yarn-debug.log*
yarn-error.log*
+.vercel
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index dd5ff0e..ec52ba3 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -5,14 +5,26 @@
+
+
+
-
+
+
+
+
+
+
@@ -27,21 +39,23 @@
- {
- "keyToString": {
- "RunOnceActivity.OpenProjectViewOnStart": "true",
- "RunOnceActivity.ShowReadmeOnStart": "true",
- "WebServerToolWindowFactoryState": "false",
- "git-widget-placeholder": "dev",
- "last_opened_file_path": "/home/user/Documents/fd_data-structures/pj/frontend",
- "node.js.detected.package.eslint": "true",
- "node.js.detected.package.tslint": "true",
- "node.js.selected.package.eslint": "(autodetect)",
- "node.js.selected.package.tslint": "(autodetect)",
- "nodejs_package_manager_path": "npm",
- "vue.rearranger.settings.migration": "true"
+
+}]]>
@@ -69,7 +83,8 @@
1700814200305
-
+
+
diff --git a/api/click.js b/api/click.js
new file mode 100644
index 0000000..8c064ce
--- /dev/null
+++ b/api/click.js
@@ -0,0 +1,7 @@
+const getArgs=(s)=>s.split('@@')
+
+export default function handler(req,res){
+ res.status(200).json({
+ log: `Method: click\nArgs: ${getArgs(req.query.query)}`,
+ });
+}
\ No newline at end of file
diff --git a/api/handshake.js b/api/handshake.js
new file mode 100644
index 0000000..2560e65
--- /dev/null
+++ b/api/handshake.js
@@ -0,0 +1,12 @@
+const __DEBUG__=1,
+ __APP_VERSION__='v1.0a1',
+ __APP_INTRO__='\n' +
+ ' We can actively detect the connection status now!\n' +
+ '
';
+
+export default function handler(req,res){
+ res.status(200).json({
+ version: __APP_VERSION__,
+ intro: __APP_INTRO__,
+ });
+}
\ No newline at end of file
diff --git a/src/App.js b/src/App.js
index e78c0e3..6f0b945 100644
--- a/src/App.js
+++ b/src/App.js
@@ -22,7 +22,7 @@ export default function App() {
const [intro, setIntro] = useState('');
const hs = setInterval(() => {
post('handshake', []).then((response) => {
- const [version, intro] = response.split('@@');
+ const {version, intro} = response;
setVersion(version);
setIntro(intro);
clearInterval(hs);
diff --git a/src/Networking.js b/src/Networking.js
index c0c48e3..0f2107b 100644
--- a/src/Networking.js
+++ b/src/Networking.js
@@ -1,15 +1,13 @@
export function post(method,args) {
- const data = new FormData();
- data.append('method', method)
- data.append('payload', args.join(','));
+ const payload=args.join('@@');
let res = '';
let ft = async () => {
- const response = await fetch('http://127.0.0.1:825/', {
- method: 'POST',
- body: data
+ const response = await fetch(`/api/${method}${payload.length?"?query=":""}${payload}`, {
+ method: 'GET',
+ // body: data
});
- const response_data = await response.text();
- console.log(`Received: ${response_data}`);
+ const response_data = await response.json();
+ console.log(`Received: ${JSON.stringify(response_data)}`);
return response_data;
};
return ft();
diff --git a/src/UMap.js b/src/UMap.js
index c6ae8a3..464f2fb 100644
--- a/src/UMap.js
+++ b/src/UMap.js
@@ -70,9 +70,11 @@ function MapClickHandler({mks}) {
const lat = e.latlng.lat, lng = e.latlng.lng;
console.info(`Clicking on ${lat} ${lng}`);
mks.current.addMarker(lat, lng);
- post('click', [lat, lng]).catch((e)=>{
+ post('click', [lat, lng]).then((response)=>{
+ console.log(`Response:\n${response['log']}`)
+ }).catch((e)=>{
console.error(e);
- location.reload();
+ // location.reload();
});
},
// TODO
@@ -148,7 +150,7 @@ function ChangeView({center,zoom}){
export default function UMap() {
const markersRef = useRef(null);
- const [focus, setFocus]=useState([37.334835049999995,-122.01139165956805]);
+ const [focus, setFocus]=useState(AppleParkLoc);
const zoom=16;
const sf=(a)=>{setFocus(a);console.log(`triggered focus update, new focus is ${focus}`);};
return (