Query
Some checks failed
test / run-tests-client (push) Successful in 19s
test / run-tests-backend (push) Failing after 15s

This commit is contained in:
BinarySandia04 2024-10-15 23:05:07 +02:00
parent 62471fa858
commit 65741da5cf
3 changed files with 26 additions and 12 deletions

View File

@ -216,6 +216,17 @@ class ClientSocket {
} }
} }
function ParseQuery(queryData){
let keys = Object.keys(queryData);
if(keys.length == 0) return "";
let res = "?";
for(let i = 0; i < keys.length; i++){
res += keys[i] + "=" + queryData[keys];
if(i != keys.length - 1) res += "&";
}
return res;
}
/** /**
* @typedef {Object} Response * @typedef {Object} Response
* @property {Object} data * @property {Object} data
@ -237,25 +248,27 @@ class ClientSocket {
*/ */
class ClientRouter { class ClientRouter {
#_path; #_path;
#_defParams;
constructor(path){ constructor(path, defParams){
this.#_path = path; this.#_path = path;
this.#_defParams = defParams;
} }
get(route){ get(route, query){
return Server().get(`${path}/${route}`); return Server().get(`${this.#_path}/${route}${ParseQuery({...this.#_defParams, ...query})}`);
} }
post(route, data = {}){ post(route, query, data = {}){
return Server().post(`${path}/${route}`, data); return Server().post(`${this.#_path}/${route}${ParseQuery({...this.#_defParams, ...query})}`, data);
} }
put(route, data = {}){ put(route, query, data = {}){
return Server().put(`${path}/${route}`, data); return Server().put(`${this.#_path}/${route}${ParseQuery({...this.#_defParams, ...query})}`, data);
} }
delete(route){ delete(route, query){
return Server().delete(`${route}`); return Server().delete(`${this.#_path}/${route}${ParseQuery({...this.#_defParams, ...query})}`);
} }
} }

View File

@ -14,6 +14,7 @@ function InitData(){
} }
function FetchConcepts(){ function FetchConcepts(){
console.log(Api.router)
Server().get('/concept/list?campaign=' + GetCampaign()._id).then(response => { Server().get('/concept/list?campaign=' + GetCampaign()._id).then(response => {
data.value.concepts = response.data.data; data.value.concepts = response.data.data;
}).catch((err) => console.log(err)); }).catch((err) => console.log(err));

View File

@ -26,9 +26,9 @@ function Main(api){
let databaseWindow = Api.registerWindow('database', Api.createView('Database')); let databaseWindow = Api.registerWindow('database', Api.createView('Database'));
let actorsWindow = Api.registerWindow('actors', Api.createView('Actors')); let actorsWindow = Api.registerWindow('actors', Api.createView('Actors'));
let characterSheetWindow = Api.registerWindow('character_sheet', Api.createView('CharacterSheet')); Api.registerWindow('character_sheet', Api.createView('CharacterSheet'));
let itemSheetWindow = Api.registerWindow('item_sheet', Api.createView('ItemSheet')); Api.registerWindow('item_sheet', Api.createView('ItemSheet'));
let createItemPromptWindow = Api.registerWindow('create_item_prompt', Api.createView('CreateItemPrompt')); Api.registerWindow('create_item_prompt', Api.createView('CreateItemPrompt'));
dndModule.setButtons({ dndModule.setButtons({
right: [ right: [