kfreelance-project-postgresql-prisma-2 0.0.1

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 (47) hide show
  1. package/README.MD +217 -0
  2. package/dist/client.d.ts +3 -0
  3. package/dist/client.d.ts.map +1 -0
  4. package/dist/client.js +7 -0
  5. package/dist/client.js.map +1 -0
  6. package/dist/index.d.ts +10 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +29 -0
  9. package/dist/index.js.map +1 -0
  10. package/generated/prisma/client.d.ts +1 -0
  11. package/generated/prisma/client.js +4 -0
  12. package/generated/prisma/default.d.ts +1 -0
  13. package/generated/prisma/default.js +4 -0
  14. package/generated/prisma/edge.d.ts +1 -0
  15. package/generated/prisma/edge.js +363 -0
  16. package/generated/prisma/index-browser.js +345 -0
  17. package/generated/prisma/index.d.ts +19091 -0
  18. package/generated/prisma/index.js +388 -0
  19. package/generated/prisma/libquery_engine-darwin-arm64.dylib.node +0 -0
  20. package/generated/prisma/libquery_engine-linux-musl-arm64-openssl-3.0.x.so.node +0 -0
  21. package/generated/prisma/package.json +183 -0
  22. package/generated/prisma/query_engine_bg.js +2 -0
  23. package/generated/prisma/query_engine_bg.wasm +0 -0
  24. package/generated/prisma/runtime/edge-esm.js +34 -0
  25. package/generated/prisma/runtime/edge.js +34 -0
  26. package/generated/prisma/runtime/index-browser.d.ts +370 -0
  27. package/generated/prisma/runtime/index-browser.js +16 -0
  28. package/generated/prisma/runtime/library.d.ts +3976 -0
  29. package/generated/prisma/runtime/library.js +146 -0
  30. package/generated/prisma/runtime/react-native.js +83 -0
  31. package/generated/prisma/runtime/wasm-compiler-edge.js +84 -0
  32. package/generated/prisma/runtime/wasm-engine-edge.js +36 -0
  33. package/generated/prisma/schema.prisma +212 -0
  34. package/generated/prisma/wasm-edge-light-loader.mjs +4 -0
  35. package/generated/prisma/wasm-worker-loader.mjs +4 -0
  36. package/generated/prisma/wasm.d.ts +1 -0
  37. package/generated/prisma/wasm.js +370 -0
  38. package/package.json +55 -0
  39. package/prisma/migrations/20251003030244_init/migration.sql +33 -0
  40. package/prisma/migrations/20251006071441_update_user_columns_name/migration.sql +10 -0
  41. package/prisma/migrations/20251229080245_add_is_admin_in_user/migration.sql +2 -0
  42. package/prisma/migrations/20251229092526_remove_passort_reset/migration.sql +11 -0
  43. package/prisma/migrations/20251229101534_init_trip_domain/migration.sql +186 -0
  44. package/prisma/migrations/migration_lock.toml +3 -0
  45. package/prisma/models/trips.prisma +183 -0
  46. package/prisma/models/users.prisma +11 -0
  47. package/prisma/schema.prisma +16 -0
@@ -0,0 +1,370 @@
1
+
2
+ /* !!! This is code generated by Prisma. Do not edit directly. !!!
3
+ /* eslint-disable */
4
+
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+
7
+ const {
8
+ PrismaClientKnownRequestError,
9
+ PrismaClientUnknownRequestError,
10
+ PrismaClientRustPanicError,
11
+ PrismaClientInitializationError,
12
+ PrismaClientValidationError,
13
+ getPrismaClient,
14
+ sqltag,
15
+ empty,
16
+ join,
17
+ raw,
18
+ skip,
19
+ Decimal,
20
+ Debug,
21
+ objectEnumValues,
22
+ makeStrictEnum,
23
+ Extensions,
24
+ warnOnce,
25
+ defineDmmfProperty,
26
+ Public,
27
+ getRuntime,
28
+ createParam,
29
+ } = require('./runtime/wasm-engine-edge.js')
30
+
31
+
32
+ const Prisma = {}
33
+
34
+ exports.Prisma = Prisma
35
+ exports.$Enums = {}
36
+
37
+ /**
38
+ * Prisma Client JS version: 6.16.3
39
+ * Query Engine version: bb420e667c1820a8c05a38023385f6cc7ef8e83a
40
+ */
41
+ Prisma.prismaVersion = {
42
+ client: "6.16.3",
43
+ engine: "bb420e667c1820a8c05a38023385f6cc7ef8e83a"
44
+ }
45
+
46
+ Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError;
47
+ Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError
48
+ Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError
49
+ Prisma.PrismaClientInitializationError = PrismaClientInitializationError
50
+ Prisma.PrismaClientValidationError = PrismaClientValidationError
51
+ Prisma.Decimal = Decimal
52
+
53
+ /**
54
+ * Re-export of sql-template-tag
55
+ */
56
+ Prisma.sql = sqltag
57
+ Prisma.empty = empty
58
+ Prisma.join = join
59
+ Prisma.raw = raw
60
+ Prisma.validator = Public.validator
61
+
62
+ /**
63
+ * Extensions
64
+ */
65
+ Prisma.getExtensionContext = Extensions.getExtensionContext
66
+ Prisma.defineExtension = Extensions.defineExtension
67
+
68
+ /**
69
+ * Shorthand utilities for JSON filtering
70
+ */
71
+ Prisma.DbNull = objectEnumValues.instances.DbNull
72
+ Prisma.JsonNull = objectEnumValues.instances.JsonNull
73
+ Prisma.AnyNull = objectEnumValues.instances.AnyNull
74
+
75
+ Prisma.NullTypes = {
76
+ DbNull: objectEnumValues.classes.DbNull,
77
+ JsonNull: objectEnumValues.classes.JsonNull,
78
+ AnyNull: objectEnumValues.classes.AnyNull
79
+ }
80
+
81
+
82
+
83
+
84
+
85
+ /**
86
+ * Enums
87
+ */
88
+ exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
89
+ ReadUncommitted: 'ReadUncommitted',
90
+ ReadCommitted: 'ReadCommitted',
91
+ RepeatableRead: 'RepeatableRead',
92
+ Serializable: 'Serializable'
93
+ });
94
+
95
+ exports.Prisma.TripScalarFieldEnum = {
96
+ id: 'id',
97
+ title: 'title',
98
+ destination_summary: 'destination_summary',
99
+ start_date: 'start_date',
100
+ end_date: 'end_date',
101
+ trip_type: 'trip_type',
102
+ owner_id: 'owner_id',
103
+ status: 'status',
104
+ created_at: 'created_at',
105
+ updated_at: 'updated_at'
106
+ };
107
+
108
+ exports.Prisma.TripMemeberScalarFieldEnum = {
109
+ id: 'id',
110
+ trip_id: 'trip_id',
111
+ user_id: 'user_id',
112
+ role: 'role',
113
+ joined_at: 'joined_at',
114
+ invite_status: 'invite_status'
115
+ };
116
+
117
+ exports.Prisma.DayScalarFieldEnum = {
118
+ id: 'id',
119
+ trip_id: 'trip_id',
120
+ date: 'date',
121
+ day_index: 'day_index',
122
+ notes: 'notes',
123
+ created_at: 'created_at',
124
+ updated_at: 'updated_at'
125
+ };
126
+
127
+ exports.Prisma.ActivityScalarFieldEnum = {
128
+ id: 'id',
129
+ day_id: 'day_id',
130
+ title: 'title',
131
+ description: 'description',
132
+ start_time: 'start_time',
133
+ end_time: 'end_time',
134
+ location_name: 'location_name',
135
+ latitude: 'latitude',
136
+ longitude: 'longitude',
137
+ created_by: 'created_by',
138
+ order_index: 'order_index',
139
+ status: 'status',
140
+ created_at: 'created_at',
141
+ updated_at: 'updated_at'
142
+ };
143
+
144
+ exports.Prisma.ActivitySuggestionScalarFieldEnum = {
145
+ id: 'id',
146
+ trip_id: 'trip_id',
147
+ activity_draft: 'activity_draft',
148
+ suggested_by: 'suggested_by',
149
+ created_at: 'created_at',
150
+ status: 'status'
151
+ };
152
+
153
+ exports.Prisma.VoteScalarFieldEnum = {
154
+ id: 'id',
155
+ suggestion_id: 'suggestion_id',
156
+ user_id: 'user_id',
157
+ vote_value: 'vote_value',
158
+ voted_at: 'voted_at'
159
+ };
160
+
161
+ exports.Prisma.CommmentScalarFieldEnum = {
162
+ id: 'id',
163
+ entity_type: 'entity_type',
164
+ user_id: 'user_id',
165
+ content: 'content',
166
+ created_at: 'created_at',
167
+ activityId: 'activityId',
168
+ activitySuggestionId: 'activitySuggestionId'
169
+ };
170
+
171
+ exports.Prisma.DocumentScalarFieldEnum = {
172
+ id: 'id',
173
+ trip_id: 'trip_id',
174
+ linked_entity_type: 'linked_entity_type',
175
+ file_name: 'file_name',
176
+ file_type: 'file_type',
177
+ file_url: 'file_url',
178
+ uploaded_by: 'uploaded_by',
179
+ available_offline: 'available_offline',
180
+ uploaded_at: 'uploaded_at',
181
+ dayId: 'dayId',
182
+ activityId: 'activityId'
183
+ };
184
+
185
+ exports.Prisma.NotificationScalarFieldEnum = {
186
+ id: 'id',
187
+ user_id: 'user_id',
188
+ trip_id: 'trip_id',
189
+ type: 'type',
190
+ payload: 'payload',
191
+ is_read: 'is_read',
192
+ created_at: 'created_at'
193
+ };
194
+
195
+ exports.Prisma.UserScalarFieldEnum = {
196
+ id: 'id',
197
+ username: 'username',
198
+ email: 'email',
199
+ password_hash: 'password_hash',
200
+ is_admin: 'is_admin',
201
+ is_active: 'is_active',
202
+ must_reset_password: 'must_reset_password',
203
+ created_at: 'created_at',
204
+ updated_at: 'updated_at'
205
+ };
206
+
207
+ exports.Prisma.SortOrder = {
208
+ asc: 'asc',
209
+ desc: 'desc'
210
+ };
211
+
212
+ exports.Prisma.QueryMode = {
213
+ default: 'default',
214
+ insensitive: 'insensitive'
215
+ };
216
+
217
+ exports.Prisma.NullsOrder = {
218
+ first: 'first',
219
+ last: 'last'
220
+ };
221
+ exports.TripType = exports.$Enums.TripType = {
222
+ SOLO: 'SOLO',
223
+ GROUP: 'GROUP'
224
+ };
225
+
226
+ exports.TripStatus = exports.$Enums.TripStatus = {
227
+ DRAFT: 'DRAFT',
228
+ ACTIVE: 'ACTIVE',
229
+ COMPLETED: 'COMPLETED'
230
+ };
231
+
232
+ exports.MemberRole = exports.$Enums.MemberRole = {
233
+ OWNER: 'OWNER',
234
+ MEMBER: 'MEMBER'
235
+ };
236
+
237
+ exports.InviteStatus = exports.$Enums.InviteStatus = {
238
+ PENDING: 'PENDING',
239
+ ACCEPTED: 'ACCEPTED',
240
+ DECLINED: 'DECLINED'
241
+ };
242
+
243
+ exports.ActivityStatus = exports.$Enums.ActivityStatus = {
244
+ PLANNED: 'PLANNED',
245
+ SUGGESTED: 'SUGGESTED',
246
+ CONFIRMED: 'CONFIRMED'
247
+ };
248
+
249
+ exports.ActivitySuggestionStatus = exports.$Enums.ActivitySuggestionStatus = {
250
+ SUGGESTED: 'SUGGESTED',
251
+ ACCEPTED: 'ACCEPTED',
252
+ REJECTED: 'REJECTED'
253
+ };
254
+
255
+ exports.VoteValue = exports.$Enums.VoteValue = {
256
+ YES: 'YES',
257
+ NO: 'NO',
258
+ MAYBE: 'MAYBE'
259
+ };
260
+
261
+ exports.EntityType = exports.$Enums.EntityType = {
262
+ TRIP: 'TRIP',
263
+ DAY: 'DAY',
264
+ ACTIVITY: 'ACTIVITY',
265
+ SUGGESTION: 'SUGGESTION'
266
+ };
267
+
268
+ exports.NotificationType = exports.$Enums.NotificationType = {
269
+ INVITE: 'INVITE',
270
+ CHANGE: 'CHANGE',
271
+ VOTE: 'VOTE',
272
+ COMMENT: 'COMMENT'
273
+ };
274
+
275
+ exports.Prisma.ModelName = {
276
+ Trip: 'Trip',
277
+ TripMemeber: 'TripMemeber',
278
+ Day: 'Day',
279
+ Activity: 'Activity',
280
+ ActivitySuggestion: 'ActivitySuggestion',
281
+ Vote: 'Vote',
282
+ Commment: 'Commment',
283
+ Document: 'Document',
284
+ Notification: 'Notification',
285
+ User: 'User'
286
+ };
287
+ /**
288
+ * Create the Client
289
+ */
290
+ const config = {
291
+ "generator": {
292
+ "name": "client",
293
+ "provider": {
294
+ "fromEnvVar": null,
295
+ "value": "prisma-client-js"
296
+ },
297
+ "output": {
298
+ "value": "/Users/devuser01/Documents/MartinGithub/freelance-project/postgresql-prisma/generated/prisma",
299
+ "fromEnvVar": null
300
+ },
301
+ "config": {
302
+ "engineType": "library"
303
+ },
304
+ "binaryTargets": [
305
+ {
306
+ "fromEnvVar": null,
307
+ "value": "darwin-arm64",
308
+ "native": true
309
+ },
310
+ {
311
+ "fromEnvVar": null,
312
+ "value": "linux-musl-arm64-openssl-3.0.x"
313
+ }
314
+ ],
315
+ "previewFeatures": [],
316
+ "sourceFilePath": "/Users/devuser01/Documents/MartinGithub/freelance-project/postgresql-prisma/prisma/schema.prisma",
317
+ "isCustomOutput": true
318
+ },
319
+ "relativeEnvPaths": {
320
+ "rootEnvPath": null,
321
+ "schemaEnvPath": "../../.env"
322
+ },
323
+ "relativePath": "../../prisma",
324
+ "clientVersion": "6.16.3",
325
+ "engineVersion": "bb420e667c1820a8c05a38023385f6cc7ef8e83a",
326
+ "datasourceNames": [
327
+ "db"
328
+ ],
329
+ "activeProvider": "postgresql",
330
+ "postinstall": false,
331
+ "inlineDatasources": {
332
+ "db": {
333
+ "url": {
334
+ "fromEnvVar": "DATABASE_URL",
335
+ "value": null
336
+ }
337
+ }
338
+ },
339
+ "inlineSchema": "model Trip {\n id String @id @default(uuid())\n title String\n destination_summary String\n start_date DateTime\n end_date DateTime\n trip_type TripType\n owner_id String\n status TripStatus @default(DRAFT)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n members TripMemeber[]\n days Day[]\n activitySuggestions ActivitySuggestion[]\n documents Document[]\n notifications Notification[]\n}\n\nmodel TripMemeber {\n id String @id @default(uuid())\n trip_id String\n user_id String\n role MemberRole\n joined_at DateTime @default(now())\n invite_status InviteStatus @default(PENDING)\n trip Trip @relation(fields: [trip_id], references: [id])\n}\n\nmodel Day {\n id String @id @default(uuid())\n trip_id String\n date DateTime\n day_index Int\n notes String?\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n trip Trip @relation(fields: [trip_id], references: [id])\n activities Activity[]\n documents Document[]\n}\n\nmodel Activity {\n id String @id @default(uuid())\n day_id String\n title String\n description String?\n start_time DateTime\n end_time DateTime\n location_name String?\n latitude Float?\n longitude Float?\n created_by String\n order_index Int\n status ActivityStatus @default(PLANNED)\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n\n day Day @relation(fields: [day_id], references: [id])\n documents Document[]\n comments Commment[]\n}\n\nmodel ActivitySuggestion {\n id String @id @default(uuid())\n trip_id String\n activity_draft String\n suggested_by String\n created_at DateTime @default(now())\n status ActivitySuggestionStatus @default(SUGGESTED)\n\n trip Trip @relation(fields: [trip_id], references: [id])\n votes Vote[]\n commments Commment[]\n}\n\nmodel Vote {\n id String @id @default(uuid())\n suggestion_id String\n user_id String\n vote_value VoteValue\n voted_at DateTime @default(now())\n\n activitySuggestion ActivitySuggestion @relation(fields: [suggestion_id], references: [id])\n}\n\nmodel Commment {\n id String @id @default(uuid())\n entity_type EntityType\n user_id String\n content String\n created_at DateTime @default(now())\n\n activity Activity? @relation(fields: [activityId], references: [id])\n activityId String?\n activitySuggestion ActivitySuggestion? @relation(fields: [activitySuggestionId], references: [id])\n activitySuggestionId String?\n}\n\nmodel Document {\n id String @id @default(uuid())\n trip_id String\n linked_entity_type EntityType\n file_name String\n file_type String\n file_url String\n uploaded_by String\n available_offline Boolean @default(false)\n uploaded_at DateTime @default(now())\n\n trip Trip @relation(fields: [trip_id], references: [id])\n day Day? @relation(fields: [dayId], references: [id])\n dayId String?\n activity Activity? @relation(fields: [activityId], references: [id])\n activityId String?\n}\n\nmodel Notification {\n id String @id @default(uuid())\n user_id String\n trip_id String\n type NotificationType\n payload String\n is_read Boolean @default(false)\n created_at DateTime @default(now())\n\n trip Trip @relation(fields: [trip_id], references: [id])\n}\n\nenum TripType {\n SOLO\n GROUP\n}\n\nenum TripStatus {\n DRAFT\n ACTIVE\n COMPLETED\n}\n\nenum MemberRole {\n OWNER\n MEMBER\n}\n\nenum InviteStatus {\n PENDING\n ACCEPTED\n DECLINED\n}\n\nenum ActivityStatus {\n PLANNED\n SUGGESTED\n CONFIRMED\n}\n\nenum ActivitySuggestionStatus {\n SUGGESTED\n ACCEPTED\n REJECTED\n}\n\nenum VoteValue {\n YES\n NO\n MAYBE\n}\n\nenum EntityType {\n TRIP\n DAY\n ACTIVITY\n SUGGESTION\n}\n\nenum NotificationType {\n INVITE\n CHANGE\n VOTE\n COMMENT\n}\n\nmodel User {\n id String @id @default(uuid())\n username String @unique\n email String @unique\n password_hash String // Hashed password\n is_admin Boolean @default(false)\n is_active Boolean\n must_reset_password Boolean\n created_at DateTime @default(now())\n updated_at DateTime @updatedAt\n}\n\n// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\n// Looking for ways to speed up your queries, or scale easily with your serverless or edge functions?\n// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init\n\ngenerator client {\n provider = \"prisma-client-js\"\n output = \"../generated/prisma\"\n binaryTargets = [\"native\", \"linux-musl-arm64-openssl-3.0.x\"]\n}\n\ndatasource db {\n provider = \"postgresql\"\n url = env(\"DATABASE_URL\")\n}\n",
340
+ "inlineSchemaHash": "f582463ffe5fedbf935ddcd801b149bed16fd6e79ae02adbe6cb0d81b47822e6",
341
+ "copyEngine": true
342
+ }
343
+ config.dirname = '/'
344
+
345
+ config.runtimeDataModel = JSON.parse("{\"models\":{\"Trip\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"destination_summary\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"start_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"end_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"trip_type\",\"kind\":\"enum\",\"type\":\"TripType\"},{\"name\":\"owner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"TripStatus\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"members\",\"kind\":\"object\",\"type\":\"TripMemeber\",\"relationName\":\"TripToTripMemeber\"},{\"name\":\"days\",\"kind\":\"object\",\"type\":\"Day\",\"relationName\":\"DayToTrip\"},{\"name\":\"activitySuggestions\",\"kind\":\"object\",\"type\":\"ActivitySuggestion\",\"relationName\":\"ActivitySuggestionToTrip\"},{\"name\":\"documents\",\"kind\":\"object\",\"type\":\"Document\",\"relationName\":\"DocumentToTrip\"},{\"name\":\"notifications\",\"kind\":\"object\",\"type\":\"Notification\",\"relationName\":\"NotificationToTrip\"}],\"dbName\":null},\"TripMemeber\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"trip_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"MemberRole\"},{\"name\":\"joined_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"invite_status\",\"kind\":\"enum\",\"type\":\"InviteStatus\"},{\"name\":\"trip\",\"kind\":\"object\",\"type\":\"Trip\",\"relationName\":\"TripToTripMemeber\"}],\"dbName\":null},\"Day\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"trip_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"day_index\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"notes\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"trip\",\"kind\":\"object\",\"type\":\"Trip\",\"relationName\":\"DayToTrip\"},{\"name\":\"activities\",\"kind\":\"object\",\"type\":\"Activity\",\"relationName\":\"ActivityToDay\"},{\"name\":\"documents\",\"kind\":\"object\",\"type\":\"Document\",\"relationName\":\"DayToDocument\"}],\"dbName\":null},\"Activity\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"day_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"start_time\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"end_time\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"location_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"latitude\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"longitude\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"created_by\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"order_index\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"ActivityStatus\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"day\",\"kind\":\"object\",\"type\":\"Day\",\"relationName\":\"ActivityToDay\"},{\"name\":\"documents\",\"kind\":\"object\",\"type\":\"Document\",\"relationName\":\"ActivityToDocument\"},{\"name\":\"comments\",\"kind\":\"object\",\"type\":\"Commment\",\"relationName\":\"ActivityToCommment\"}],\"dbName\":null},\"ActivitySuggestion\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"trip_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activity_draft\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"suggested_by\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"ActivitySuggestionStatus\"},{\"name\":\"trip\",\"kind\":\"object\",\"type\":\"Trip\",\"relationName\":\"ActivitySuggestionToTrip\"},{\"name\":\"votes\",\"kind\":\"object\",\"type\":\"Vote\",\"relationName\":\"ActivitySuggestionToVote\"},{\"name\":\"commments\",\"kind\":\"object\",\"type\":\"Commment\",\"relationName\":\"ActivitySuggestionToCommment\"}],\"dbName\":null},\"Vote\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"suggestion_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"vote_value\",\"kind\":\"enum\",\"type\":\"VoteValue\"},{\"name\":\"voted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"activitySuggestion\",\"kind\":\"object\",\"type\":\"ActivitySuggestion\",\"relationName\":\"ActivitySuggestionToVote\"}],\"dbName\":null},\"Commment\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"entity_type\",\"kind\":\"enum\",\"type\":\"EntityType\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"content\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"activity\",\"kind\":\"object\",\"type\":\"Activity\",\"relationName\":\"ActivityToCommment\"},{\"name\":\"activityId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activitySuggestion\",\"kind\":\"object\",\"type\":\"ActivitySuggestion\",\"relationName\":\"ActivitySuggestionToCommment\"},{\"name\":\"activitySuggestionId\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null},\"Document\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"trip_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"linked_entity_type\",\"kind\":\"enum\",\"type\":\"EntityType\"},{\"name\":\"file_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"file_type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"file_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"uploaded_by\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"available_offline\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"uploaded_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"trip\",\"kind\":\"object\",\"type\":\"Trip\",\"relationName\":\"DocumentToTrip\"},{\"name\":\"day\",\"kind\":\"object\",\"type\":\"Day\",\"relationName\":\"DayToDocument\"},{\"name\":\"dayId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activity\",\"kind\":\"object\",\"type\":\"Activity\",\"relationName\":\"ActivityToDocument\"},{\"name\":\"activityId\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null},\"Notification\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"trip_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"NotificationType\"},{\"name\":\"payload\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_read\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"trip\",\"kind\":\"object\",\"type\":\"Trip\",\"relationName\":\"NotificationToTrip\"}],\"dbName\":null},\"User\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"username\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"password_hash\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_admin\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"is_active\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"must_reset_password\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}")
346
+ defineDmmfProperty(exports.Prisma, config.runtimeDataModel)
347
+ config.engineWasm = {
348
+ getRuntime: async () => require('./query_engine_bg.js'),
349
+ getQueryEngineWasmModule: async () => {
350
+ const loader = (await import('#wasm-engine-loader')).default
351
+ const engine = (await loader).default
352
+ return engine
353
+ }
354
+ }
355
+ config.compilerWasm = undefined
356
+
357
+ config.injectableEdgeEnv = () => ({
358
+ parsed: {
359
+ DATABASE_URL: typeof globalThis !== 'undefined' && globalThis['DATABASE_URL'] || typeof process !== 'undefined' && process.env && process.env.DATABASE_URL || undefined
360
+ }
361
+ })
362
+
363
+ if (typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) {
364
+ Debug.enable(typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined)
365
+ }
366
+
367
+ const PrismaClient = getPrismaClient(config)
368
+ exports.PrismaClient = PrismaClient
369
+ Object.assign(exports, Prisma)
370
+
package/package.json ADDED
@@ -0,0 +1,55 @@
1
+ {
2
+ "name": "kfreelance-project-postgresql-prisma-2",
3
+ "version": "0.0.1",
4
+ "description": "Shared Prisma client library for microservices",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./dist/index.d.ts",
10
+ "import": "./dist/index.js",
11
+ "require": "./dist/index.js"
12
+ },
13
+ "./client": {
14
+ "types": "./dist/client.d.ts",
15
+ "import": "./dist/client.js",
16
+ "require": "./dist/client.js"
17
+ },
18
+ "./generated/*": "./generated/*",
19
+ "./package.json": "./package.json"
20
+ },
21
+ "files": [
22
+ "dist",
23
+ "generated",
24
+ "prisma",
25
+ "README.md"
26
+ ],
27
+ "scripts": {
28
+ "build": "tsc && npm run generate",
29
+ "generate": "prisma generate",
30
+ "dev": "tsx index.ts",
31
+ "prepublishOnly": "npm run build",
32
+ "test": "echo \"Error: no test specified\" && exit 1"
33
+ },
34
+ "keywords": [
35
+ "prisma",
36
+ "postgresql",
37
+ "orm",
38
+ "database",
39
+ "microservices"
40
+ ],
41
+ "author": "",
42
+ "license": "ISC",
43
+ "devDependencies": {
44
+ "@types/node": "^24.6.2",
45
+ "prisma": "^6.16.3",
46
+ "tsx": "^4.20.6",
47
+ "typescript": "^5.9.3"
48
+ },
49
+ "dependencies": {
50
+ "@prisma/client": "^6.16.3"
51
+ },
52
+ "prisma": {
53
+ "schema": "./prisma"
54
+ }
55
+ }
@@ -0,0 +1,33 @@
1
+ -- CreateTable
2
+ CREATE TABLE "User" (
3
+ "id" TEXT NOT NULL,
4
+ "username" TEXT NOT NULL,
5
+ "email" TEXT NOT NULL,
6
+ "passwordHash" TEXT NOT NULL,
7
+ "is_active" BOOLEAN NOT NULL,
8
+ "must_reset_password" BOOLEAN NOT NULL,
9
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
10
+ "updated_at" TIMESTAMP(3) NOT NULL,
11
+
12
+ CONSTRAINT "User_pkey" PRIMARY KEY ("id")
13
+ );
14
+
15
+ -- CreateTable
16
+ CREATE TABLE "PasswordResetToken" (
17
+ "id" TEXT NOT NULL,
18
+ "user_id" TEXT NOT NULL,
19
+ "reset_token" TEXT NOT NULL,
20
+ "expires_at" TIMESTAMP(3) NOT NULL,
21
+ "used" BOOLEAN NOT NULL,
22
+
23
+ CONSTRAINT "PasswordResetToken_pkey" PRIMARY KEY ("id")
24
+ );
25
+
26
+ -- CreateIndex
27
+ CREATE UNIQUE INDEX "User_username_key" ON "User"("username");
28
+
29
+ -- CreateIndex
30
+ CREATE UNIQUE INDEX "User_email_key" ON "User"("email");
31
+
32
+ -- AddForeignKey
33
+ ALTER TABLE "PasswordResetToken" ADD CONSTRAINT "PasswordResetToken_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "User"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
@@ -0,0 +1,10 @@
1
+ /*
2
+ Warnings:
3
+
4
+ - You are about to drop the column `passwordHash` on the `User` table. All the data in the column will be lost.
5
+ - Added the required column `password_hash` to the `User` table without a default value. This is not possible if the table is not empty.
6
+
7
+ */
8
+ -- AlterTable
9
+ ALTER TABLE "User" DROP COLUMN "passwordHash",
10
+ ADD COLUMN "password_hash" TEXT NOT NULL;
@@ -0,0 +1,2 @@
1
+ -- AlterTable
2
+ ALTER TABLE "User" ADD COLUMN "is_admin" BOOLEAN NOT NULL DEFAULT false;
@@ -0,0 +1,11 @@
1
+ /*
2
+ Warnings:
3
+
4
+ - You are about to drop the `PasswordResetToken` table. If the table is not empty, all the data it contains will be lost.
5
+
6
+ */
7
+ -- DropForeignKey
8
+ ALTER TABLE "public"."PasswordResetToken" DROP CONSTRAINT "PasswordResetToken_user_id_fkey";
9
+
10
+ -- DropTable
11
+ DROP TABLE "public"."PasswordResetToken";