Set up bridge folder + changes to Events/Jobs

- Copied bridge folder from frm.so
- All handlers in handlers.js added from frm.so
- Modified Events and Jobs pages' default events/jobs to model data structure from SQL/server
- Set up getJobs(), checkForUpdates() on both Events/Jobs to fetch new items and update when needed
This commit is contained in:
2026-03-15 16:00:37 -04:00
parent cb11d68fa7
commit 0d5e68188d
6 changed files with 136 additions and 20 deletions

View File

@@ -1,4 +1,4 @@
const IS_NODE =
export const IS_NODE =
typeof process !== "undefined" &&
process.versions?.node != null
@@ -9,9 +9,7 @@ async function bridgeSend(name, args) {
args: args
})
const json = await res.json()
if (!res.ok) throw new Error(json.error)
return json.result
return res
}
/**
@@ -24,8 +22,6 @@ export function createBridge(funcs) {
get(target, prop) {
const orig = target[prop]
if (typeof orig !== "function") return orig
return function (...args) {
if (IS_NODE) {
return orig(...args)

View File

@@ -0,0 +1,47 @@
const handlers = {
async getStripeProfile(networkId) {
return global.payments.getProfile(networkId)
},
async addEvent(newEvent, networkId, creatorId) {
return await global.db.events.add(newEvent, networkId, creatorId)
},
async editEvent(id, updatedEvent, networkId, userId) {
return await global.db.events.add(id, updatedEvent, networkId, userId);
},
async deleteEvent(id, networkId, userId) {
return await global.db.events.add(id, networkId, userId);
},
async getEvent(id) {
return global.db.events.getById(id)
},
async getEvents(networkId) {
return global.db.events.getByNetwork(networkId)
},
async addJob(newJob, networkId, creatorId) {
return await global.db.jobs.add(newJob, networkId, creatorId);
},
async editJob(id, updatedJob, networkId, userId) {
return await global.db.jobs.add(id, updatedJob, networkId, userId);
},
async deleteJob(id, networkId, userId) {
return await global.db.jobs.add(id, networkId, userId);
},
async getJob(id) {
return await global.db.jobs.getById(id)
},
async getJobs(networkId) {
return global.db.jobs.getByNetwork(networkId)
},
}
export default handlers

View File

@@ -1,11 +1,10 @@
import fs from "fs"
import { createBridge } from "./bridge.js"
import { createBridge, IS_NODE } from "./bridge.js"
const handlers = {
getProfile(one, two) {
fs.writeFileSync("output.txt", `${one} ${two}`)
return "written to disk"
},
let handlers = {}
if (IS_NODE) {
const mod = await import("./handlers.js")
handlers = mod.default
}
export const { getProfile } = createBridge(handlers)
export default createBridge(handlers)