Add rate limiting, security headers, fix CORS for production

This commit is contained in:
BizzleBot
2026-02-19 16:37:47 +00:00
parent a85fa0d211
commit c6b8fb752a
3449 changed files with 926916 additions and 4142 deletions
+1
View File
@@ -0,0 +1 @@
export * from "./index"
+1
View File
@@ -0,0 +1 @@
module.exports = { ...require('.') }
+9
View File
@@ -0,0 +1,9 @@
class PrismaClient {
constructor() {
throw new Error(
'@prisma/client/deno/edge did not initialize yet. Please run "prisma generate" and try to import it again.',
)
}
}
export { PrismaClient }
+1
View File
@@ -0,0 +1 @@
export * from "./default"
+310
View File
File diff suppressed because one or more lines are too long
+303
View File
@@ -0,0 +1,303 @@
Object.defineProperty(exports, "__esModule", { value: true });
const {
Decimal,
objectEnumValues,
makeStrictEnum,
Public,
getRuntime,
skip
} = require('@prisma/client/runtime/index-browser.js')
const Prisma = {}
exports.Prisma = Prisma
exports.$Enums = {}
/**
* Prisma Client JS version: 5.22.0
* Query Engine version: 605197351a3c8bdd595af2d2a9bc3025bca48ea2
*/
Prisma.prismaVersion = {
client: "5.22.0",
engine: "605197351a3c8bdd595af2d2a9bc3025bca48ea2"
}
Prisma.PrismaClientKnownRequestError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientKnownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)};
Prisma.PrismaClientUnknownRequestError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientUnknownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.PrismaClientRustPanicError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientRustPanicError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.PrismaClientInitializationError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientInitializationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.PrismaClientValidationError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientValidationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.NotFoundError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`NotFoundError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.Decimal = Decimal
/**
* Re-export of sql-template-tag
*/
Prisma.sql = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`sqltag is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.empty = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`empty is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.join = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`join is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.raw = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`raw is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.validator = Public.validator
/**
* Extensions
*/
Prisma.getExtensionContext = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`Extensions.getExtensionContext is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.defineExtension = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`Extensions.defineExtension is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
/**
* Shorthand utilities for JSON filtering
*/
Prisma.DbNull = objectEnumValues.instances.DbNull
Prisma.JsonNull = objectEnumValues.instances.JsonNull
Prisma.AnyNull = objectEnumValues.instances.AnyNull
Prisma.NullTypes = {
DbNull: objectEnumValues.classes.DbNull,
JsonNull: objectEnumValues.classes.JsonNull,
AnyNull: objectEnumValues.classes.AnyNull
}
/**
* Enums
*/
exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
ReadUncommitted: 'ReadUncommitted',
ReadCommitted: 'ReadCommitted',
RepeatableRead: 'RepeatableRead',
Serializable: 'Serializable'
});
exports.Prisma.UserScalarFieldEnum = {
id: 'id',
email: 'email',
name: 'name',
role: 'role',
password_hash: 'password_hash',
created_at: 'created_at'
};
exports.Prisma.BurrowScalarFieldEnum = {
id: 'id',
gps_lat: 'gps_lat',
gps_lng: 'gps_lng',
status: 'status',
location_description: 'location_description',
photos: 'photos',
assigned_volunteer_id: 'assigned_volunteer_id',
created_at: 'created_at'
};
exports.Prisma.DonationScalarFieldEnum = {
id: 'id',
donor_id: 'donor_id',
amount: 'amount',
campaign: 'campaign',
stripe_payment_id: 'stripe_payment_id',
created_at: 'created_at'
};
exports.Prisma.WildlifeSightingScalarFieldEnum = {
id: 'id',
reporter_id: 'reporter_id',
species: 'species',
gps_lat: 'gps_lat',
gps_lng: 'gps_lng',
photo_url: 'photo_url',
description: 'description',
verified: 'verified',
created_at: 'created_at'
};
exports.Prisma.EventScalarFieldEnum = {
id: 'id',
title: 'title',
description: 'description',
date: 'date',
location: 'location',
max_attendees: 'max_attendees',
type: 'type',
created_at: 'created_at'
};
exports.Prisma.EventRSVPScalarFieldEnum = {
event_id: 'event_id',
user_id: 'user_id',
created_at: 'created_at'
};
exports.Prisma.LivestreamSourceScalarFieldEnum = {
id: 'id',
name: 'name',
stream_url: 'stream_url',
camera_location: 'camera_location',
status: 'status',
thumbnail_url: 'thumbnail_url',
created_at: 'created_at'
};
exports.Prisma.VolunteerHourScalarFieldEnum = {
id: 'id',
volunteer_id: 'volunteer_id',
date: 'date',
hours: 'hours',
task_description: 'task_description',
verified_by: 'verified_by',
created_at: 'created_at'
};
exports.Prisma.EquipmentItemScalarFieldEnum = {
id: 'id',
name: 'name',
description: 'description',
status: 'status',
checked_out_by: 'checked_out_by',
checked_out_at: 'checked_out_at',
created_at: 'created_at'
};
exports.Prisma.SortOrder = {
asc: 'asc',
desc: 'desc'
};
exports.Prisma.QueryMode = {
default: 'default',
insensitive: 'insensitive'
};
exports.Prisma.NullsOrder = {
first: 'first',
last: 'last'
};
exports.UserRole = exports.$Enums.UserRole = {
admin: 'admin',
volunteer: 'volunteer',
donor: 'donor',
public: 'public'
};
exports.BurrowStatus = exports.$Enums.BurrowStatus = {
active: 'active',
inactive: 'inactive',
destroyed: 'destroyed'
};
exports.DonationCampaign = exports.$Enums.DonationCampaign = {
land_preservation: 'land_preservation',
volunteer_equipment: 'volunteer_equipment',
general: 'general'
};
exports.EventType = exports.$Enums.EventType = {
cleanup: 'cleanup',
educational: 'educational',
fundraiser: 'fundraiser'
};
exports.StreamStatus = exports.$Enums.StreamStatus = {
live: 'live',
offline: 'offline'
};
exports.EquipmentStatus = exports.$Enums.EquipmentStatus = {
available: 'available',
checked_out: 'checked_out'
};
exports.Prisma.ModelName = {
User: 'User',
Burrow: 'Burrow',
Donation: 'Donation',
WildlifeSighting: 'WildlifeSighting',
Event: 'Event',
EventRSVP: 'EventRSVP',
LivestreamSource: 'LivestreamSource',
VolunteerHour: 'VolunteerHour',
EquipmentItem: 'EquipmentItem'
};
/**
* This is a stub Prisma Client that will error at runtime if called.
*/
class PrismaClient {
constructor() {
return new Proxy(this, {
get(target, prop) {
let message
const runtime = getRuntime()
if (runtime.isEdge) {
message = `PrismaClient is not configured to run in ${runtime.prettyName}. In order to run Prisma Client on edge runtime, either:
- Use Prisma Accelerate: https://pris.ly/d/accelerate
- Use Driver Adapters: https://pris.ly/d/driver-adapters
`;
} else {
message = 'PrismaClient is unable to run in this browser environment, or has been bundled for the browser (running in `' + runtime.prettyName + '`).'
}
message += `
If this is unexpected, please open an issue: https://pris.ly/prisma-prisma-bug-report`
throw new Error(message)
}
})
}
}
exports.PrismaClient = PrismaClient
Object.assign(exports, Prisma)
+15103
View File
File diff suppressed because it is too large Load Diff
+331
View File
File diff suppressed because one or more lines are too long
Binary file not shown.
+97
View File
@@ -0,0 +1,97 @@
{
"name": "prisma-client-249312ccdf6fbda509f1ee88be4e8f4171687091556513dc44a1589fe5bc12fe",
"main": "index.js",
"types": "index.d.ts",
"browser": "index-browser.js",
"exports": {
"./package.json": "./package.json",
".": {
"require": {
"node": "./index.js",
"edge-light": "./wasm.js",
"workerd": "./wasm.js",
"worker": "./wasm.js",
"browser": "./index-browser.js",
"default": "./index.js"
},
"import": {
"node": "./index.js",
"edge-light": "./wasm.js",
"workerd": "./wasm.js",
"worker": "./wasm.js",
"browser": "./index-browser.js",
"default": "./index.js"
},
"default": "./index.js"
},
"./edge": {
"types": "./edge.d.ts",
"require": "./edge.js",
"import": "./edge.js",
"default": "./edge.js"
},
"./react-native": {
"types": "./react-native.d.ts",
"require": "./react-native.js",
"import": "./react-native.js",
"default": "./react-native.js"
},
"./extension": {
"types": "./extension.d.ts",
"require": "./extension.js",
"import": "./extension.js",
"default": "./extension.js"
},
"./index-browser": {
"types": "./index.d.ts",
"require": "./index-browser.js",
"import": "./index-browser.js",
"default": "./index-browser.js"
},
"./index": {
"types": "./index.d.ts",
"require": "./index.js",
"import": "./index.js",
"default": "./index.js"
},
"./wasm": {
"types": "./wasm.d.ts",
"require": "./wasm.js",
"import": "./wasm.js",
"default": "./wasm.js"
},
"./runtime/library": {
"types": "./runtime/library.d.ts",
"require": "./runtime/library.js",
"import": "./runtime/library.js",
"default": "./runtime/library.js"
},
"./runtime/binary": {
"types": "./runtime/binary.d.ts",
"require": "./runtime/binary.js",
"import": "./runtime/binary.js",
"default": "./runtime/binary.js"
},
"./generator-build": {
"require": "./generator-build/index.js",
"import": "./generator-build/index.js",
"default": "./generator-build/index.js"
},
"./sql": {
"require": {
"types": "./sql.d.ts",
"node": "./sql.js",
"default": "./sql.js"
},
"import": {
"types": "./sql.d.ts",
"node": "./sql.mjs",
"default": "./sql.mjs"
},
"default": "./sql.js"
},
"./*": "./*"
},
"version": "5.22.0",
"sideEffects": false
}
+174
View File
@@ -0,0 +1,174 @@
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
enum UserRole {
admin
volunteer
donor
public
}
enum BurrowStatus {
active
inactive
destroyed
}
enum DonationCampaign {
land_preservation
volunteer_equipment
general
}
enum EventType {
cleanup
educational
fundraiser
}
enum StreamStatus {
live
offline
}
enum EquipmentStatus {
available
checked_out
}
model User {
id String @id @default(cuid())
email String @unique
name String
role UserRole @default(public)
password_hash String
created_at DateTime @default(now())
burrows Burrow[] @relation("AssignedVolunteer")
donations Donation[]
sightings WildlifeSighting[] @relation("SightingReporter")
event_rsvps EventRSVP[]
volunteer_hours VolunteerHour[]
equipment_items EquipmentItem[] @relation("CheckedOutBy")
verified_hours VolunteerHour[] @relation("VerifiedBy")
@@map("users")
}
model Burrow {
id String @id @default(cuid())
gps_lat Float
gps_lng Float
status BurrowStatus @default(active)
location_description String?
photos String[] @default([])
assigned_volunteer_id String?
created_at DateTime @default(now())
assigned_volunteer User? @relation("AssignedVolunteer", fields: [assigned_volunteer_id], references: [id], onDelete: SetNull)
@@map("burrows")
}
model Donation {
id String @id @default(cuid())
donor_id String?
amount Float
campaign DonationCampaign @default(general)
stripe_payment_id String?
created_at DateTime @default(now())
donor User? @relation(fields: [donor_id], references: [id], onDelete: SetNull)
@@map("donations")
}
model WildlifeSighting {
id String @id @default(cuid())
reporter_id String?
species String
gps_lat Float
gps_lng Float
photo_url String?
description String?
verified Boolean @default(false)
created_at DateTime @default(now())
reporter User? @relation("SightingReporter", fields: [reporter_id], references: [id], onDelete: SetNull)
@@map("wildlife_sightings")
}
model Event {
id String @id @default(cuid())
title String
description String?
date DateTime
location String
max_attendees Int?
type EventType
created_at DateTime @default(now())
rsvps EventRSVP[]
@@map("events")
}
model EventRSVP {
event_id String
user_id String
created_at DateTime @default(now())
event Event @relation(fields: [event_id], references: [id], onDelete: Cascade)
user User @relation(fields: [user_id], references: [id], onDelete: Cascade)
@@id([event_id, user_id])
@@map("event_rsvps")
}
model LivestreamSource {
id String @id @default(cuid())
name String
stream_url String
camera_location String
status StreamStatus @default(offline)
thumbnail_url String?
created_at DateTime @default(now())
@@map("livestream_sources")
}
model VolunteerHour {
id String @id @default(cuid())
volunteer_id String
date DateTime
hours Float
task_description String
verified_by String?
created_at DateTime @default(now())
volunteer User @relation(fields: [volunteer_id], references: [id], onDelete: Cascade)
verifier User? @relation("VerifiedBy", fields: [verified_by], references: [id], onDelete: SetNull)
@@map("volunteer_hours")
}
model EquipmentItem {
id String @id @default(cuid())
name String
description String?
status EquipmentStatus @default(available)
checked_out_by String?
checked_out_at DateTime?
created_at DateTime @default(now())
checker User? @relation("CheckedOutBy", fields: [checked_out_by], references: [id], onDelete: SetNull)
@@map("equipment_items")
}
+1
View File
@@ -0,0 +1 @@
export * from "./index"
+303
View File
@@ -0,0 +1,303 @@
Object.defineProperty(exports, "__esModule", { value: true });
const {
Decimal,
objectEnumValues,
makeStrictEnum,
Public,
getRuntime,
skip
} = require('@prisma/client/runtime/index-browser.js')
const Prisma = {}
exports.Prisma = Prisma
exports.$Enums = {}
/**
* Prisma Client JS version: 5.22.0
* Query Engine version: 605197351a3c8bdd595af2d2a9bc3025bca48ea2
*/
Prisma.prismaVersion = {
client: "5.22.0",
engine: "605197351a3c8bdd595af2d2a9bc3025bca48ea2"
}
Prisma.PrismaClientKnownRequestError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientKnownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)};
Prisma.PrismaClientUnknownRequestError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientUnknownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.PrismaClientRustPanicError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientRustPanicError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.PrismaClientInitializationError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientInitializationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.PrismaClientValidationError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`PrismaClientValidationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.NotFoundError = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`NotFoundError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.Decimal = Decimal
/**
* Re-export of sql-template-tag
*/
Prisma.sql = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`sqltag is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.empty = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`empty is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.join = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`join is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.raw = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`raw is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.validator = Public.validator
/**
* Extensions
*/
Prisma.getExtensionContext = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`Extensions.getExtensionContext is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
Prisma.defineExtension = () => {
const runtimeName = getRuntime().prettyName;
throw new Error(`Extensions.defineExtension is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
)}
/**
* Shorthand utilities for JSON filtering
*/
Prisma.DbNull = objectEnumValues.instances.DbNull
Prisma.JsonNull = objectEnumValues.instances.JsonNull
Prisma.AnyNull = objectEnumValues.instances.AnyNull
Prisma.NullTypes = {
DbNull: objectEnumValues.classes.DbNull,
JsonNull: objectEnumValues.classes.JsonNull,
AnyNull: objectEnumValues.classes.AnyNull
}
/**
* Enums
*/
exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
ReadUncommitted: 'ReadUncommitted',
ReadCommitted: 'ReadCommitted',
RepeatableRead: 'RepeatableRead',
Serializable: 'Serializable'
});
exports.Prisma.UserScalarFieldEnum = {
id: 'id',
email: 'email',
name: 'name',
role: 'role',
password_hash: 'password_hash',
created_at: 'created_at'
};
exports.Prisma.BurrowScalarFieldEnum = {
id: 'id',
gps_lat: 'gps_lat',
gps_lng: 'gps_lng',
status: 'status',
location_description: 'location_description',
photos: 'photos',
assigned_volunteer_id: 'assigned_volunteer_id',
created_at: 'created_at'
};
exports.Prisma.DonationScalarFieldEnum = {
id: 'id',
donor_id: 'donor_id',
amount: 'amount',
campaign: 'campaign',
stripe_payment_id: 'stripe_payment_id',
created_at: 'created_at'
};
exports.Prisma.WildlifeSightingScalarFieldEnum = {
id: 'id',
reporter_id: 'reporter_id',
species: 'species',
gps_lat: 'gps_lat',
gps_lng: 'gps_lng',
photo_url: 'photo_url',
description: 'description',
verified: 'verified',
created_at: 'created_at'
};
exports.Prisma.EventScalarFieldEnum = {
id: 'id',
title: 'title',
description: 'description',
date: 'date',
location: 'location',
max_attendees: 'max_attendees',
type: 'type',
created_at: 'created_at'
};
exports.Prisma.EventRSVPScalarFieldEnum = {
event_id: 'event_id',
user_id: 'user_id',
created_at: 'created_at'
};
exports.Prisma.LivestreamSourceScalarFieldEnum = {
id: 'id',
name: 'name',
stream_url: 'stream_url',
camera_location: 'camera_location',
status: 'status',
thumbnail_url: 'thumbnail_url',
created_at: 'created_at'
};
exports.Prisma.VolunteerHourScalarFieldEnum = {
id: 'id',
volunteer_id: 'volunteer_id',
date: 'date',
hours: 'hours',
task_description: 'task_description',
verified_by: 'verified_by',
created_at: 'created_at'
};
exports.Prisma.EquipmentItemScalarFieldEnum = {
id: 'id',
name: 'name',
description: 'description',
status: 'status',
checked_out_by: 'checked_out_by',
checked_out_at: 'checked_out_at',
created_at: 'created_at'
};
exports.Prisma.SortOrder = {
asc: 'asc',
desc: 'desc'
};
exports.Prisma.QueryMode = {
default: 'default',
insensitive: 'insensitive'
};
exports.Prisma.NullsOrder = {
first: 'first',
last: 'last'
};
exports.UserRole = exports.$Enums.UserRole = {
admin: 'admin',
volunteer: 'volunteer',
donor: 'donor',
public: 'public'
};
exports.BurrowStatus = exports.$Enums.BurrowStatus = {
active: 'active',
inactive: 'inactive',
destroyed: 'destroyed'
};
exports.DonationCampaign = exports.$Enums.DonationCampaign = {
land_preservation: 'land_preservation',
volunteer_equipment: 'volunteer_equipment',
general: 'general'
};
exports.EventType = exports.$Enums.EventType = {
cleanup: 'cleanup',
educational: 'educational',
fundraiser: 'fundraiser'
};
exports.StreamStatus = exports.$Enums.StreamStatus = {
live: 'live',
offline: 'offline'
};
exports.EquipmentStatus = exports.$Enums.EquipmentStatus = {
available: 'available',
checked_out: 'checked_out'
};
exports.Prisma.ModelName = {
User: 'User',
Burrow: 'Burrow',
Donation: 'Donation',
WildlifeSighting: 'WildlifeSighting',
Event: 'Event',
EventRSVP: 'EventRSVP',
LivestreamSource: 'LivestreamSource',
VolunteerHour: 'VolunteerHour',
EquipmentItem: 'EquipmentItem'
};
/**
* This is a stub Prisma Client that will error at runtime if called.
*/
class PrismaClient {
constructor() {
return new Proxy(this, {
get(target, prop) {
let message
const runtime = getRuntime()
if (runtime.isEdge) {
message = `PrismaClient is not configured to run in ${runtime.prettyName}. In order to run Prisma Client on edge runtime, either:
- Use Prisma Accelerate: https://pris.ly/d/accelerate
- Use Driver Adapters: https://pris.ly/d/driver-adapters
`;
} else {
message = 'PrismaClient is unable to run in this browser environment, or has been bundled for the browser (running in `' + runtime.prettyName + '`).'
}
message += `
If this is unexpected, please open an issue: https://pris.ly/prisma-prisma-bug-report`
throw new Error(message)
}
})
}
}
exports.PrismaClient = PrismaClient
Object.assign(exports, Prisma)