api: introduce our lib/prisma hook

Pedro Lucas Porcellis porcellis@eletrotupi.com 3 months ago d8d5ed45baef322e821b14c56c6087e61b0eb99c
Parents: 836d353
3 file(s) changed
  • api/package-lock.json +23 -4
  • api/package.json +1 -0
  • api/src/lib/prisma.ts +12 -0
api/package-lock.json
@@ -9,6 +9,7 @@ "name": "orbit-api",
9 9 "version": "0.0.0",
10 10 "license": "ISC",
11 11 "dependencies": {
12 + "@prisma/adapter-better-sqlite3": "^7.5.0",
12 13 "bcryptjs": "^3.0.3",
13 14 "better-sqlite3": "^12.5.0",
14 15 "date-fns": "^4.1.0",
@@ -266,6 +267,16 @@ "engines": {
266 267 "node": ">=14"
267 268 }
268 269 },
270 + "node_modules/@prisma/adapter-better-sqlite3": {
271 + "version": "7.5.0",
272 + "resolved": "https://registry.npmjs.org/@prisma/adapter-better-sqlite3/-/adapter-better-sqlite3-7.5.0.tgz",
273 + "integrity": "sha512-ThP6y1cAZW/BdHuuTKzO+j8vzEzXDMZaDPmboJyrkdbJvO9LRiHdnG5LNKAht8YYwjHgQoq7G7NtKbaW7NebVQ==",
274 + "license": "Apache-2.0",
275 + "dependencies": {
276 + "@prisma/driver-adapter-utils": "7.5.0",
277 + "better-sqlite3": "^12.6.0"
278 + }
279 + },
269 280 "node_modules/@prisma/config": {
270 281 "version": "7.5.0",
271 282 "resolved": "https://registry.npmjs.org/@prisma/config/-/config-7.5.0.tgz",
@@ -283,7 +294,6 @@ "node_modules/@prisma/debug": {
283 294 "version": "7.5.0",
284 295 "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-7.5.0.tgz",
285 296 "integrity": "sha512-163+nffny0JoPEkDhfNco0vcuT3ymIJc9+WX7MHSQhfkeKUmKe9/wqvGk5SjppT93DtBjVwr5HPJYlXbzm6qtg==",
286 - "dev": true,
287 297 "license": "Apache-2.0"
288 298 },
289 299 "node_modules/@prisma/dev": {
@@ -310,6 +320,15 @@ "remeda": "2.33.4",
310 320 "std-env": "3.10.0",
311 321 "valibot": "1.2.0",
312 322 "zeptomatch": "2.1.0"
323 + }
324 + },
325 + "node_modules/@prisma/driver-adapter-utils": {
326 + "version": "7.5.0",
327 + "resolved": "https://registry.npmjs.org/@prisma/driver-adapter-utils/-/driver-adapter-utils-7.5.0.tgz",
328 + "integrity": "sha512-B79N/amgV677mFesFDBAdrW0OIaqawap9E0sjgLBtzIz2R3hIMS1QB8mLZuUEiS4q5Y8Oh3I25Kw4SLxMypk9Q==",
329 + "license": "Apache-2.0",
330 + "dependencies": {
331 + "@prisma/debug": "7.5.0"
313 332 }
314 333 },
315 334 "node_modules/@prisma/engines": {
@@ -782,9 +801,9 @@ "bcrypt": "bin/bcrypt"
782 801 }
783 802 },
784 803 "node_modules/better-sqlite3": {
785 - "version": "12.5.0",
786 - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-12.5.0.tgz",
787 - "integrity": "sha512-WwCZ/5Diz7rsF29o27o0Gcc1Du+l7Zsv7SYtVPG0X3G/uUI1LqdxrQI7c9Hs2FWpqXXERjW9hp6g3/tH7DlVKg==",
804 + "version": "12.8.0",
805 + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-12.8.0.tgz",
806 + "integrity": "sha512-RxD2Vd96sQDjQr20kdP+F+dK/1OUNiVOl200vKBZY8u0vTwysfolF6Hq+3ZK2+h8My9YvZhHsF+RSGZW2VYrPQ==",
788 807 "hasInstallScript": true,
789 808 "license": "MIT",
790 809 "dependencies": {
api/package.json
@@ -14,6 +14,7 @@ "start": "node src/app.js",
14 14 "test": "npx ava"
15 15 },
16 16 "dependencies": {
17 + "@prisma/adapter-better-sqlite3": "^7.5.0",
17 18 "bcryptjs": "^3.0.3",
18 19 "better-sqlite3": "^12.5.0",
19 20 "date-fns": "^4.1.0",
api/src/lib/prisma.ts
@@ -0,0 +1,12 @@
1 + import "dotenv/config"
2 + import { PrismaBetterSqlite3 } from '@prisma/adapter-better-sqlite3';
3 + import { PrismaClient } from '../generated/prisma/client';
4 +
5 + const connectionStr = `${process.env.DATABASE_URL}`;
6 +
7 + const adapter = new PrismaBetterSqlite3({ url: connectionStr });
8 + const prisma = new PrismaClient({ adapter });
9 +
10 + export {
11 + prisma
12 + }