api: introduce our lib/prisma hook
Pedro Lucas Porcellis porcellis@eletrotupi.com · 7 months ago
d8d5ed45baef322e821b14c56c6087e61b0eb99c Browse filesParents
836d353Changed files
3
Additions
+36
Deletions
-4
api/package-lock.json
1 1
{
2 2
"name": "orbit-api",
3 3
"version": "0.0.0",
4 4
"lockfileVersion": 3,
5 5
"requires": true,
7 7
"": {
8 8
"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",
15 16
"express": "^5.2.1"
16 17
},
264 265
"optional": true,
265 266
"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",
272 283
"integrity": "sha512-1J/9YEX7A889xM46PYg9e8VAuSL1IUmXJW3tEhMv7XQHDWlfC9YSkIw9sTYRaq5GswGlxZ+GnnyiNsUZ9JJhSQ==",
273 284
"dev": true,
281 292
},
282 293
"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": {
290 300
"version": "0.20.0",
291 301
"resolved": "https://registry.npmjs.org/@prisma/dev/-/dev-0.20.0.tgz",
308 318
"proper-lockfile": "4.1.2",
309 319
"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": {
316 335
"version": "7.5.0",
317 336
"resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-7.5.0.tgz",
780 799
"bin": {
781 800
"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": {
791 810
"bindings": "^1.5.0",
792 811
"prebuild-install": "^7.1.1"
4687 4706
"graphmatch": "^1.1.0"
4688 4707
}
4689 4708
}
4690 4709
}
4691 4710
}
api/package.json
1 1
{
2 2
"name": "orbit-api",
3 3
"version": "0.0.0",
4 4
"description": "",
5 5
"license": "ISC",
12 12
"scripts": {
13 13
"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",
20 21
"express": "^5.2.1"
21 22
},
25 26
"ava": "^6.4.1",
26 27
"prisma": "^7.5.0",
27 28
"supertest": "^7.1.4"
28 29
}
29 30
}
/dev/null → api/src/lib/prisma.ts
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 +
}