import { Organization } from "./../entities/Organization"; import { DataSource } from "apollo-datasource"; import { Organization } from "../entities/Organization"; export class D1Organizations extends DataSource { constructor(private database: D1Database) { super(); } async findAll(): Promise { const result = await this.database .prepare("SELECT * FROM organizations") .all(); if (result.error || !result.results) throw result.error; return result.results; } async save(org: Organization) { const result = await this.database .prepare( `INSERT INTO organizations (id, name, description, total_donations) VALUES(?1, ?2, ?3, ?4)` ) .bind(org.id, org.name, org.description, org.total_donations) .run(); if (result.error) throw result.error; return org; } }