@danielcok17/prisma-db 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/README.md +34 -19
  2. package/dist/index.d.ts +2 -2
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +5 -3
  5. package/dist/index.js.map +1 -1
  6. package/dist/utils.d.ts +4 -2
  7. package/dist/utils.d.ts.map +1 -1
  8. package/dist/utils.js +7 -4
  9. package/dist/utils.js.map +1 -1
  10. package/package.json +8 -7
  11. package/prisma/{schema.prisma → app.prisma} +5 -0
  12. package/prisma/generated/app/client.d.ts +1 -0
  13. package/prisma/generated/app/client.js +4 -0
  14. package/prisma/generated/app/default.d.ts +1 -0
  15. package/prisma/generated/app/default.js +4 -0
  16. package/prisma/generated/app/edge.d.ts +1 -0
  17. package/prisma/generated/app/edge.js +393 -0
  18. package/prisma/generated/app/index-browser.js +379 -0
  19. package/prisma/generated/app/index.d.ts +22559 -0
  20. package/prisma/generated/app/index.js +414 -0
  21. package/prisma/generated/app/libquery_engine-darwin-arm64.dylib.node +0 -0
  22. package/prisma/generated/app/package.json +150 -0
  23. package/prisma/generated/app/runtime/edge-esm.js +34 -0
  24. package/prisma/generated/app/runtime/edge.js +34 -0
  25. package/prisma/generated/app/runtime/index-browser.d.ts +370 -0
  26. package/prisma/generated/app/runtime/index-browser.js +16 -0
  27. package/prisma/generated/app/runtime/library.d.ts +4002 -0
  28. package/prisma/generated/app/runtime/library.js +146 -0
  29. package/prisma/generated/app/runtime/react-native.js +83 -0
  30. package/prisma/generated/app/runtime/wasm-compiler-edge.js +83 -0
  31. package/prisma/generated/app/runtime/wasm-engine-edge.js +35 -0
  32. package/prisma/generated/app/schema.prisma +286 -0
  33. package/prisma/generated/app/wasm.d.ts +1 -0
  34. package/prisma/generated/app/wasm.js +379 -0
  35. package/prisma/generated/law/client.d.ts +1 -0
  36. package/prisma/generated/law/client.js +4 -0
  37. package/prisma/generated/law/default.d.ts +1 -0
  38. package/prisma/generated/law/default.js +4 -0
  39. package/prisma/generated/law/edge.d.ts +1 -0
  40. package/prisma/generated/law/edge.js +251 -0
  41. package/prisma/generated/law/index-browser.js +237 -0
  42. package/prisma/generated/law/index.d.ts +6827 -0
  43. package/prisma/generated/law/index.js +272 -0
  44. package/prisma/generated/law/libquery_engine-darwin-arm64.dylib.node +0 -0
  45. package/prisma/generated/law/package.json +150 -0
  46. package/prisma/generated/law/runtime/edge-esm.js +34 -0
  47. package/prisma/generated/law/runtime/edge.js +34 -0
  48. package/prisma/generated/law/runtime/index-browser.d.ts +370 -0
  49. package/prisma/generated/law/runtime/index-browser.js +16 -0
  50. package/prisma/generated/law/runtime/library.d.ts +4002 -0
  51. package/prisma/generated/law/runtime/library.js +146 -0
  52. package/prisma/generated/law/runtime/react-native.js +83 -0
  53. package/prisma/generated/law/runtime/wasm-compiler-edge.js +83 -0
  54. package/prisma/generated/law/runtime/wasm-engine-edge.js +35 -0
  55. package/prisma/generated/law/schema.prisma +80 -0
  56. package/prisma/generated/law/wasm.d.ts +1 -0
  57. package/prisma/generated/law/wasm.js +237 -0
  58. package/prisma/law.prisma +82 -0
  59. package/prisma/migrations/20250818134929_init/migration.sql +374 -0
  60. package/prisma/migrations/migration_lock.toml +3 -0
  61. package/prisma/seed.ts +0 -0
package/README.md CHANGED
@@ -1,23 +1,38 @@
1
1
  # @legal-ai/prisma-db
2
2
 
3
- Shared Prisma schema, migrations, client and helpers for Legal AI applications.
3
+ Shared Prisma setup with dual Prisma clients: one for your app tables (`app` schema), one for existing law tables (`public` schema).
4
+
5
+ ## Structure
6
+ - `prisma/app.prisma` — your models, migrate here (uses schema `app`)
7
+ - `prisma/law.prisma` — existing `public.law_*` and `public.version_paragraphs` tables (introspection only)
8
+ - `src/utils.ts` — exports `appPrisma` and `lawPrisma`
9
+
10
+ ## Scripts
11
+ - `npm run db:generate` — generate both Prisma clients
12
+ - `npm run db:migrate` — run migrations for `app.prisma` only
13
+ - `npm run db:migrate:prod` — deploy migrations (app)
14
+ - `npm run db:pull:law` — introspect existing public law tables
15
+ - `npm run db:studio` — open Prisma Studio for `app`
16
+
17
+ ## Import
18
+ ```ts
19
+ import { appPrisma, lawPrisma } from '@danielcok17/prisma-db';
20
+ // or direct clients if you need advanced typing control
21
+ import { AppPrismaClient, LawPrismaClient } from '@danielcok17/prisma-db';
22
+ ```
23
+
24
+ ## Environment
25
+ Set the following env vars in your runtime/build:
26
+
27
+ ```
28
+ DATABASE_URL_APP=postgres://USER:PASS@HOST:PORT/DB?schema=app
29
+ DATABASE_URL_APP_DIRECT=postgres://USER:PASS@HOST:PORT/DB?schema=app
30
+ DATABASE_URL_LAW=postgres://READONLY_USER:PASS@HOST:PORT/DB
31
+ DATABASE_URL_LAW_DIRECT=postgres://READONLY_USER:PASS@HOST:PORT/DB
32
+ ```
33
+
34
+ Notes:
35
+ - Use a read-only role for `DATABASE_URL_LAW`.
36
+ - Ensure DB has `CREATE SCHEMA IF NOT EXISTS app;` executed once.
4
37
 
5
- ## Usage
6
-
7
- - Install as dependency in your apps (Git URL or npm registry)
8
- - Ensure is set in the app runtime
9
-
10
- ### Scripts
11
- - (dev migrations)
12
- - (deploy migrations)
13
- - (prototype)
14
- - (generate client)
15
- - (seed data)
16
- - (Prisma Studio)
17
-
18
- ### Import
19
-
20
-
21
- ### Env
22
- Create with:
23
38
 
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { PrismaClient } from '@prisma/client';
2
- export type * from '@prisma/client';
1
+ export { PrismaClient as AppPrismaClient } from '../prisma/generated/app';
2
+ export { PrismaClient as LawPrismaClient } from '../prisma/generated/law';
3
3
  export * from './utils';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,mBAAmB,gBAAgB,CAAC;AACpC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,YAAY,IAAI,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1E,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -14,8 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.PrismaClient = void 0;
18
- var client_1 = require("@prisma/client");
19
- Object.defineProperty(exports, "PrismaClient", { enumerable: true, get: function () { return client_1.PrismaClient; } });
17
+ exports.LawPrismaClient = exports.AppPrismaClient = void 0;
18
+ var app_1 = require("../prisma/generated/app");
19
+ Object.defineProperty(exports, "AppPrismaClient", { enumerable: true, get: function () { return app_1.PrismaClient; } });
20
+ var law_1 = require("../prisma/generated/law");
21
+ Object.defineProperty(exports, "LawPrismaClient", { enumerable: true, get: function () { return law_1.PrismaClient; } });
20
22
  __exportStar(require("./utils"), exports);
21
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yCAA8C;AAArC,sGAAA,YAAY,OAAA;AAErB,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+CAA0E;AAAjE,sGAAA,YAAY,OAAmB;AACxC,+CAA0E;AAAjE,sGAAA,YAAY,OAAmB;AACxC,0CAAwB"}
package/dist/utils.d.ts CHANGED
@@ -1,3 +1,5 @@
1
- import { PrismaClient } from '@prisma/client';
2
- export declare const prisma: PrismaClient<import(".prisma/client").Prisma.PrismaClientOptions, never, import("@prisma/client/runtime/library").DefaultArgs>;
1
+ import { PrismaClient as AppPrismaClient } from '../prisma/generated/app';
2
+ import { PrismaClient as LawPrismaClient } from '../prisma/generated/law';
3
+ export declare const appPrisma: AppPrismaClient<import("../prisma/generated/app").Prisma.PrismaClientOptions, never, import("../prisma/generated/app/runtime/library").DefaultArgs>;
4
+ export declare const lawPrisma: LawPrismaClient<import("../prisma/generated/law").Prisma.PrismaClientOptions, never, import("../prisma/generated/law/runtime/library").DefaultArgs>;
3
5
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C,eAAO,MAAM,MAAM,gIAA+C,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,YAAY,IAAI,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAO1E,eAAO,MAAM,SAAS,qJAAqD,CAAC;AAC5E,eAAO,MAAM,SAAS,qJAAqD,CAAC"}
package/dist/utils.js CHANGED
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.prisma = void 0;
4
- const client_1 = require("@prisma/client");
3
+ exports.lawPrisma = exports.appPrisma = void 0;
4
+ const app_1 = require("../prisma/generated/app");
5
+ const law_1 = require("../prisma/generated/law");
5
6
  const globalForPrisma = globalThis;
6
- exports.prisma = globalForPrisma.prisma ?? new client_1.PrismaClient();
7
+ exports.appPrisma = globalForPrisma.appPrisma ?? new app_1.PrismaClient();
8
+ exports.lawPrisma = globalForPrisma.lawPrisma ?? new law_1.PrismaClient();
7
9
  if (process.env.NODE_ENV !== 'production') {
8
- globalForPrisma.prisma = exports.prisma;
10
+ globalForPrisma.appPrisma = exports.appPrisma;
11
+ globalForPrisma.lawPrisma = exports.lawPrisma;
9
12
  }
10
13
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,2CAA8C;AAE9C,MAAM,eAAe,GAAG,UAA6D,CAAC;AAEzE,QAAA,MAAM,GAAG,eAAe,CAAC,MAAM,IAAI,IAAI,qBAAY,EAAE,CAAC;AAEnE,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;IAC1C,eAAe,CAAC,MAAM,GAAG,cAAM,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,iDAA0E;AAC1E,iDAA0E;AAE1E,MAAM,eAAe,GAAG,UAGvB,CAAC;AAEW,QAAA,SAAS,GAAG,eAAe,CAAC,SAAS,IAAI,IAAI,kBAAe,EAAE,CAAC;AAC/D,QAAA,SAAS,GAAG,eAAe,CAAC,SAAS,IAAI,IAAI,kBAAe,EAAE,CAAC;AAE5E,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;IAC1C,eAAe,CAAC,SAAS,GAAG,iBAAS,CAAC;IACtC,eAAe,CAAC,SAAS,GAAG,iBAAS,CAAC;AACxC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@danielcok17/prisma-db",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "Shared Prisma schema for Legal AI applications",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -14,13 +14,14 @@
14
14
  "scripts": {
15
15
  "build": "npm run db:generate && tsc",
16
16
  "dev": "tsc --watch",
17
- "db:generate": "prisma generate --schema ./prisma/schema.prisma",
18
- "db:push": "prisma db push --schema ./prisma/schema.prisma",
19
- "db:migrate": "prisma migrate dev --schema ./prisma/schema.prisma",
20
- "db:migrate:prod": "prisma migrate deploy --schema ./prisma/schema.prisma",
21
- "db:studio": "prisma studio --schema ./prisma/schema.prisma",
17
+ "db:generate": "prisma generate --schema ./prisma/app.prisma && prisma generate --schema ./prisma/law.prisma",
18
+ "db:push": "prisma db push --schema ./prisma/app.prisma",
19
+ "db:migrate": "prisma migrate dev --schema ./prisma/app.prisma",
20
+ "db:migrate:prod": "prisma migrate deploy --schema ./prisma/app.prisma",
21
+ "db:studio": "prisma studio --schema ./prisma/app.prisma",
22
+ "db:pull:law": "prisma db pull --schema ./prisma/law.prisma",
22
23
  "db:seed": "tsx prisma/seed.ts",
23
- "postinstall": "prisma generate --schema ./prisma/schema.prisma"
24
+ "postinstall": "npm run db:generate"
24
25
  },
25
26
  "keywords": [
26
27
  "prisma",
@@ -1,5 +1,6 @@
1
1
  generator client {
2
2
  provider = "prisma-client-js"
3
+ output = "./generated/app"
3
4
  }
4
5
 
5
6
  datasource db {
@@ -84,6 +85,8 @@ model Conversation {
84
85
  sharedAt DateTime?
85
86
  createdAt DateTime @default(now())
86
87
  updatedAt DateTime @updatedAt
88
+ summary String?
89
+ messagesSinceLastSummary Int? @default(0)
87
90
  // Relácie
88
91
  answers Answer[]
89
92
  user User @relation(fields: [userId], references: [id])
@@ -281,3 +284,5 @@ model AdminActionLog {
281
284
  @@index([adminEmail])
282
285
  @@index([createdAt])
283
286
  }
287
+
288
+
@@ -0,0 +1 @@
1
+ export * from "./index"
@@ -0,0 +1,4 @@
1
+
2
+ /* !!! This is code generated by Prisma. Do not edit directly. !!!
3
+ /* eslint-disable */
4
+ module.exports = { ...require('.') }
@@ -0,0 +1 @@
1
+ export * from "./index"
@@ -0,0 +1,4 @@
1
+
2
+ /* !!! This is code generated by Prisma. Do not edit directly. !!!
3
+ /* eslint-disable */
4
+ module.exports = { ...require('.') }
@@ -0,0 +1 @@
1
+ export * from "./default"