Ok so globals now are a thing
Some checks failed
test / run-tests-client (push) Successful in 18s
test / run-tests-backend (push) Failing after 15s

This commit is contained in:
BinarySandia04 2024-10-16 13:12:29 +02:00
parent d4f1f631cd
commit 0d0b322766
3 changed files with 27 additions and 12 deletions

View File

@ -0,0 +1,13 @@
// We store it in window because i don't know somewhere else to
// store global variables
const Global = (plugin) => {
if(window['__DRAGONROLL'] === undefined) window['__DRAGONROLL'] = {};
if(window['__DRAGONROLL'][plugin] === undefined) window['__DRAGONROLL'][plugin] = {};
return window.__DRAGONROLL[plugin];
}
export {
Global
}

View File

@ -1,16 +1,17 @@
import Server from '@/services/Server' import Server from '@/services/Server'
import { reactive } from 'vue'; import { reactive } from 'vue';
import { Global } from '@/services/PluginGlobals';
import { GetCampaign } from "@/services/Dragonroll"; import { GetCampaign } from "@/services/Dragonroll";
let data = reactive({}); let data = reactive({});
let Api; let Api = Global('dnd-5e')['api'];
let dndModule; let dndModule = Global('dnd-5e')['dndModule'];
function InitData(api, module){ function InitData(){
Api = api; Api = Global('dnd-5e')['api'];
dndModule = module; dndModule = Global('dnd-5e')['dndModule'];
data.value = { data.value = {
concepts: [] concepts: []

View File

@ -1,12 +1,10 @@
import { FetchConcepts, FetchData, InitData } from "./data"; import { FetchConcepts, FetchData, InitData } from "./data";
import { Global } from '@/services/PluginGlobals';
// Entrypoint var dndModule;
let Api;
let dndModule;
function Main(api){
Api = api
function Main(Api){
Global('dnd-5e')['api'] = Api;
console.log("Module registered!"); console.log("Module registered!");
dndModule = Api.createModule('dnd-5e'); dndModule = Api.createModule('dnd-5e');
@ -66,11 +64,14 @@ function Main(api){
// Api.windows.registerWindow('create_item_prompt', Api.createView('CreateItemPrompt')); // Api.windows.registerWindow('create_item_prompt', Api.createView('CreateItemPrompt'));
dndModule.onInit = () => { dndModule.onInit = () => {
InitData(Api, dndModule); InitData();
FetchData(); FetchData();
} }
Api.registerModule(dndModule); Api.registerModule(dndModule);
Global('dnd-5e')['dndModule'] = dndModule;
} }
export { export {