adding stripe section, parts of dashboard
This commit is contained in:
@@ -3,6 +3,7 @@ import chalk from 'chalk';
|
||||
import path from 'path';
|
||||
|
||||
import Titles from "./model/Titles.js"
|
||||
import Networks from "./model/Networks.js"
|
||||
import Members from './model/Members.js'
|
||||
import Tokens from './model/Tokens.js'
|
||||
import Payments from "./model/Payments.js"
|
||||
@@ -12,6 +13,7 @@ import Messages from "./model/Messages/Messages.js"
|
||||
|
||||
export default class Database {
|
||||
titles = new Titles()
|
||||
networks = new Networks()
|
||||
members = new Members()
|
||||
tokens = new Tokens()
|
||||
payments = new Payments()
|
||||
@@ -20,8 +22,9 @@ export default class Database {
|
||||
messages = new Messages()
|
||||
|
||||
fromID = {
|
||||
"HY": this.titles,
|
||||
"MEMBER": this.members,
|
||||
"NETWORK": this.networks,
|
||||
"TITLE": this.titles,
|
||||
"TOKEN": this.tokens,
|
||||
"PAYMENT": this.payments,
|
||||
"POST": this.posts,
|
||||
|
||||
@@ -22,6 +22,7 @@ export default class Members extends OrderedObject {
|
||||
),
|
||||
joined: z.string(),
|
||||
address: this.addressSchema,
|
||||
networks: z.array(z.number())
|
||||
})
|
||||
|
||||
isHashed = (s) => {return s.startsWith("$argon2")}
|
||||
|
||||
39
server/db/model/Networks.js
Normal file
39
server/db/model/Networks.js
Normal file
@@ -0,0 +1,39 @@
|
||||
import OrderedObject from "./OrderedObject.js"
|
||||
import { z } from 'zod';
|
||||
|
||||
export default class Networks extends OrderedObject {
|
||||
prefix = `NETWORK`
|
||||
|
||||
schema = z.object({
|
||||
id: z.number(),
|
||||
name: z.string(),
|
||||
})
|
||||
|
||||
save(n) {
|
||||
let id = `${this.prefix}-${n.id}`
|
||||
let result = this.schema.safeParse(n)
|
||||
if(result.success) {
|
||||
try {
|
||||
super.add(id, n)
|
||||
} catch(e) {
|
||||
console.error(e)
|
||||
throw e
|
||||
}
|
||||
} else {
|
||||
console.error(result.error)
|
||||
throw new global.ServerError(400, "Invalid Member Data!");
|
||||
}
|
||||
}
|
||||
|
||||
add(n) {
|
||||
let toSave = {
|
||||
id: this.entries.length+1,
|
||||
...n
|
||||
}
|
||||
this.save(toSave)
|
||||
}
|
||||
|
||||
get(id) {
|
||||
return this.entries[this.ids[`${this.prefix}-${id}`]]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user