@opensaas/stack-core 0.9.0 → 0.11.0
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.
- package/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +174 -0
- package/dist/config/types.d.ts +165 -20
- package/dist/config/types.d.ts.map +1 -1
- package/dist/context/index.d.ts.map +1 -1
- package/dist/context/index.js +14 -6
- package/dist/context/index.js.map +1 -1
- package/dist/context/nested-operations.d.ts.map +1 -1
- package/dist/context/nested-operations.js +2 -0
- package/dist/context/nested-operations.js.map +1 -1
- package/dist/fields/index.d.ts +45 -1
- package/dist/fields/index.d.ts.map +1 -1
- package/dist/fields/index.js +215 -12
- package/dist/fields/index.js.map +1 -1
- package/dist/hooks/index.d.ts +24 -12
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +0 -2
- package/dist/hooks/index.js.map +1 -1
- package/package.json +1 -1
- package/src/config/types.ts +207 -43
- package/src/context/index.ts +13 -0
- package/src/context/nested-operations.ts +2 -0
- package/src/fields/index.ts +257 -12
- package/src/hooks/index.ts +43 -35
- package/tests/hooks.test.ts +64 -0
- package/tsconfig.tsbuildinfo +1 -1
package/.turbo/turbo-build.log
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,179 @@
|
|
|
1
1
|
# @opensaas/stack-core
|
|
2
2
|
|
|
3
|
+
## 0.11.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#271](https://github.com/OpenSaasAU/stack/pull/271) [`ec53708`](https://github.com/OpenSaasAU/stack/commit/ec53708898579dcc7de80eb9fc9a3a99c45367c9) Thanks [@borisno2](https://github.com/borisno2)! - Add decimal field type for precise numeric values
|
|
8
|
+
|
|
9
|
+
You can now use the `decimal()` field type for storing precise decimal numbers, ideal for currency, measurements, and financial calculations:
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
import { decimal } from '@opensaas/stack-core/fields'
|
|
13
|
+
|
|
14
|
+
fields: {
|
|
15
|
+
price: decimal({
|
|
16
|
+
precision: 10,
|
|
17
|
+
scale: 2,
|
|
18
|
+
validation: {
|
|
19
|
+
isRequired: true,
|
|
20
|
+
min: '0',
|
|
21
|
+
max: '999999.99'
|
|
22
|
+
}
|
|
23
|
+
}),
|
|
24
|
+
latitude: decimal({
|
|
25
|
+
precision: 18,
|
|
26
|
+
scale: 8,
|
|
27
|
+
db: { map: 'lat' }
|
|
28
|
+
})
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Features:
|
|
33
|
+
- Configurable precision (default: 18) and scale (default: 4)
|
|
34
|
+
- Min/max validation with string values for precision
|
|
35
|
+
- Database column mapping via `db.map`
|
|
36
|
+
- Nullability control via `db.isNullable`
|
|
37
|
+
- Index support (`isIndexed: true` or `isIndexed: 'unique'`)
|
|
38
|
+
- Uses Prisma's Decimal type backed by decimal.js for precision
|
|
39
|
+
- Generates proper TypeScript types with `import('decimal.js').Decimal`
|
|
40
|
+
|
|
41
|
+
- [#270](https://github.com/OpenSaasAU/stack/pull/270) [`8a476a5`](https://github.com/OpenSaasAU/stack/commit/8a476a563761f3b268ad43269058267871e43b73) Thanks [@relationship({](https://github.com/relationship({)! - Add support for custom database column names via `db.map`
|
|
42
|
+
|
|
43
|
+
You can now customize database column names using Prisma's @map attribute, following Keystone's pattern:
|
|
44
|
+
|
|
45
|
+
**Regular fields:**
|
|
46
|
+
|
|
47
|
+
```typescript
|
|
48
|
+
fields: {
|
|
49
|
+
firstName: text({
|
|
50
|
+
db: { map: 'first_name' }
|
|
51
|
+
}),
|
|
52
|
+
email: text({
|
|
53
|
+
isIndexed: 'unique',
|
|
54
|
+
db: { map: 'email_address' }
|
|
55
|
+
})
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**Relationship foreign keys:**
|
|
60
|
+
|
|
61
|
+
```typescript
|
|
62
|
+
fields: {
|
|
63
|
+
|
|
64
|
+
ref: 'User.posts',
|
|
65
|
+
db: { foreignKey: { map: 'author_user_id' } },
|
|
66
|
+
})
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Foreign key columns now default to the field name (not `fieldNameId`) for better consistency with Keystone's behavior.
|
|
71
|
+
|
|
72
|
+
- [#273](https://github.com/OpenSaasAU/stack/pull/273) [`bbe7f05`](https://github.com/OpenSaasAU/stack/commit/bbe7f051428013b327cbadc5fda7920d5885a6bc) Thanks [@borisno2](https://github.com/borisno2)! - Add `originalItem` parameter to `afterOperation` hooks for comparing previous and new values
|
|
73
|
+
|
|
74
|
+
Both field-level and list-level `afterOperation` hooks now receive an `originalItem` parameter containing the item's state before the operation. This enables use cases like detecting field changes, cleaning up old files, tracking state transitions, and sending conditional notifications.
|
|
75
|
+
|
|
76
|
+
Usage in list-level hooks:
|
|
77
|
+
|
|
78
|
+
```typescript
|
|
79
|
+
Post: list({
|
|
80
|
+
hooks: {
|
|
81
|
+
afterOperation: async ({ operation, item, originalItem, context }) => {
|
|
82
|
+
if (operation === 'update' && originalItem) {
|
|
83
|
+
// Compare previous and new values
|
|
84
|
+
if (originalItem.status !== item.status) {
|
|
85
|
+
await notifyStatusChange(originalItem.status, item.status)
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
})
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Usage in field-level hooks:
|
|
94
|
+
|
|
95
|
+
```typescript
|
|
96
|
+
fields: {
|
|
97
|
+
thumbnail: text({
|
|
98
|
+
hooks: {
|
|
99
|
+
afterOperation: async ({ operation, value, item, originalItem }) => {
|
|
100
|
+
if (operation === 'update' && originalItem) {
|
|
101
|
+
const oldValue = originalItem.thumbnail
|
|
102
|
+
if (oldValue !== value && oldValue) {
|
|
103
|
+
// Clean up old file when thumbnail changes
|
|
104
|
+
await deleteFromCDN(oldValue)
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
},
|
|
109
|
+
})
|
|
110
|
+
}
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
The `originalItem` parameter is:
|
|
114
|
+
- `undefined` for `create` and `query` operations (no previous state)
|
|
115
|
+
- The item before the update for `update` operations
|
|
116
|
+
- The item before deletion for `delete` operations
|
|
117
|
+
|
|
118
|
+
### Patch Changes
|
|
119
|
+
|
|
120
|
+
- [#269](https://github.com/OpenSaasAU/stack/pull/269) [`ba9bfa8`](https://github.com/OpenSaasAU/stack/commit/ba9bfa80e88f125d00d621e3b7fe8e39ffaeb145) Thanks [@borisno2](https://github.com/borisno2)! - Fix select field ignoring validation.isRequired in Prisma schema generation
|
|
121
|
+
|
|
122
|
+
- [#274](https://github.com/OpenSaasAU/stack/pull/274) [`38337cc`](https://github.com/OpenSaasAU/stack/commit/38337ccc17a9c3e78b3767bf2422d0ca9ea16230) Thanks [@borisno2](https://github.com/borisno2)! - Fix hook argument types for operations
|
|
123
|
+
|
|
124
|
+
## 0.10.0
|
|
125
|
+
|
|
126
|
+
### Minor Changes
|
|
127
|
+
|
|
128
|
+
- [#259](https://github.com/OpenSaasAU/stack/pull/259) [`9aa5d8f`](https://github.com/OpenSaasAU/stack/commit/9aa5d8f60578abfdf7c36f3460b61b2fcfea6066) Thanks [@list({](https://github.com/list({), [@relationship({](https://github.com/relationship({)! - Add db.foreignKey configuration for one-to-one relationships
|
|
129
|
+
|
|
130
|
+
Fixes issue #258 where one-to-one relationships generated invalid Prisma schemas with foreign keys on both sides. You can now explicitly control which side of a one-to-one relationship stores the foreign key.
|
|
131
|
+
|
|
132
|
+
**Usage:**
|
|
133
|
+
|
|
134
|
+
```typescript
|
|
135
|
+
// Specify which side has the foreign key
|
|
136
|
+
lists: {
|
|
137
|
+
|
|
138
|
+
fields: {
|
|
139
|
+
account: relationship({
|
|
140
|
+
ref: 'Account.user',
|
|
141
|
+
db: { foreignKey: true }
|
|
142
|
+
})
|
|
143
|
+
}
|
|
144
|
+
}),
|
|
145
|
+
Account: list({
|
|
146
|
+
fields: {
|
|
147
|
+
ref: 'User.account' })
|
|
148
|
+
}
|
|
149
|
+
})
|
|
150
|
+
}
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
**Default behavior (without explicit db.foreignKey):**
|
|
154
|
+
|
|
155
|
+
For one-to-one relationships without explicit configuration, the foreign key is placed on the alphabetically first list name. For example, in a `User ↔ Profile` relationship, the `Profile` model will have the `userId` foreign key.
|
|
156
|
+
|
|
157
|
+
**Generated Prisma schema:**
|
|
158
|
+
|
|
159
|
+
```prisma
|
|
160
|
+
model User {
|
|
161
|
+
id String @id @default(cuid())
|
|
162
|
+
accountId String? @unique
|
|
163
|
+
account Account? @relation(fields: [accountId], references: [id])
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
model Account {
|
|
167
|
+
id String @id @default(cuid())
|
|
168
|
+
user User?
|
|
169
|
+
}
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**Validation:**
|
|
173
|
+
- `db.foreignKey` can only be used on single relationships (not many-side)
|
|
174
|
+
- Cannot be set to `true` on both sides of a one-to-one relationship
|
|
175
|
+
- Only applies to bidirectional relationships (with target field specified)
|
|
176
|
+
|
|
3
177
|
## 0.9.0
|
|
4
178
|
|
|
5
179
|
### Minor Changes
|
package/dist/config/types.d.ts
CHANGED
|
@@ -30,7 +30,9 @@ export type FieldHooks<TTypeInfo extends TypeInfo, TFieldKey extends FieldKeys<T
|
|
|
30
30
|
*
|
|
31
31
|
* @example
|
|
32
32
|
* ```typescript
|
|
33
|
-
* resolveInput: async ({ inputValue, operation }) => {
|
|
33
|
+
* resolveInput: async ({ inputValue, operation, item }) => {
|
|
34
|
+
* // For create operations, item is undefined
|
|
35
|
+
* // For update operations, item is the existing record
|
|
34
36
|
* if (typeof inputValue === 'string' && !isHashedPassword(inputValue)) {
|
|
35
37
|
* return await hashPassword(inputValue)
|
|
36
38
|
* }
|
|
@@ -39,9 +41,16 @@ export type FieldHooks<TTypeInfo extends TypeInfo, TFieldKey extends FieldKeys<T
|
|
|
39
41
|
* ```
|
|
40
42
|
*/
|
|
41
43
|
resolveInput?: (args: {
|
|
42
|
-
operation: 'create'
|
|
44
|
+
operation: 'create';
|
|
43
45
|
inputValue: GetFieldValueType<TTypeInfo['fields'], TFieldKey> | undefined;
|
|
44
|
-
item
|
|
46
|
+
item: undefined;
|
|
47
|
+
listKey: string;
|
|
48
|
+
fieldName: TFieldKey;
|
|
49
|
+
context: import('../access/types.js').AccessContext;
|
|
50
|
+
} | {
|
|
51
|
+
operation: 'update';
|
|
52
|
+
inputValue: GetFieldValueType<TTypeInfo['fields'], TFieldKey> | undefined;
|
|
53
|
+
item: TTypeInfo['item'];
|
|
45
54
|
listKey: string;
|
|
46
55
|
fieldName: TFieldKey;
|
|
47
56
|
context: import('../access/types.js').AccessContext;
|
|
@@ -54,15 +63,26 @@ export type FieldHooks<TTypeInfo extends TypeInfo, TFieldKey extends FieldKeys<T
|
|
|
54
63
|
* @example
|
|
55
64
|
* ```typescript
|
|
56
65
|
* beforeOperation: async ({ resolvedValue, operation, item }) => {
|
|
57
|
-
*
|
|
66
|
+
* // For create operations, item is undefined
|
|
67
|
+
* // For update/delete operations, item is the existing record
|
|
68
|
+
* if (operation === 'update' && item) {
|
|
69
|
+
* console.log(`Updating field from ${item.fieldName} to ${resolvedValue}`)
|
|
70
|
+
* }
|
|
58
71
|
* await sendAuditLog({ operation, item })
|
|
59
72
|
* }
|
|
60
73
|
* ```
|
|
61
74
|
*/
|
|
62
75
|
beforeOperation?: (args: {
|
|
63
|
-
operation: 'create'
|
|
76
|
+
operation: 'create';
|
|
77
|
+
resolvedValue: GetFieldValueType<TTypeInfo['fields'], TFieldKey> | undefined;
|
|
78
|
+
item: undefined;
|
|
79
|
+
listKey: string;
|
|
80
|
+
fieldName: TFieldKey;
|
|
81
|
+
context: import('../access/types.js').AccessContext;
|
|
82
|
+
} | {
|
|
83
|
+
operation: 'update' | 'delete';
|
|
64
84
|
resolvedValue: GetFieldValueType<TTypeInfo['fields'], TFieldKey> | undefined;
|
|
65
|
-
item
|
|
85
|
+
item: TTypeInfo['item'];
|
|
66
86
|
listKey: string;
|
|
67
87
|
fieldName: TFieldKey;
|
|
68
88
|
context: import('../access/types.js').AccessContext;
|
|
@@ -74,16 +94,30 @@ export type FieldHooks<TTypeInfo extends TypeInfo, TFieldKey extends FieldKeys<T
|
|
|
74
94
|
*
|
|
75
95
|
* @example
|
|
76
96
|
* ```typescript
|
|
77
|
-
* afterOperation: async ({ operation, value, item }) => {
|
|
97
|
+
* afterOperation: async ({ operation, value, item, originalItem }) => {
|
|
98
|
+
* // For query/create operations, originalItem is undefined
|
|
99
|
+
* // For update/delete operations, originalItem is the item before the operation
|
|
100
|
+
* if (operation === 'update' && originalItem) {
|
|
101
|
+
* console.log('Changed from:', originalItem[fieldName], 'to:', value)
|
|
102
|
+
* }
|
|
78
103
|
* await invalidateCache({ listKey, itemId: item.id })
|
|
79
104
|
* await sendWebhook({ operation, item })
|
|
80
105
|
* }
|
|
81
106
|
* ```
|
|
82
107
|
*/
|
|
83
108
|
afterOperation?: (args: {
|
|
84
|
-
operation: '
|
|
109
|
+
operation: 'query' | 'create';
|
|
85
110
|
value: GetFieldValueType<TTypeInfo['fields'], TFieldKey> | undefined;
|
|
86
111
|
item: TTypeInfo['item'];
|
|
112
|
+
originalItem: undefined;
|
|
113
|
+
listKey: string;
|
|
114
|
+
fieldName: TFieldKey;
|
|
115
|
+
context: import('../access/types.js').AccessContext;
|
|
116
|
+
} | {
|
|
117
|
+
operation: 'update' | 'delete';
|
|
118
|
+
value: GetFieldValueType<TTypeInfo['fields'], TFieldKey> | undefined;
|
|
119
|
+
item: TTypeInfo['item'];
|
|
120
|
+
originalItem: TTypeInfo['item'];
|
|
87
121
|
listKey: string;
|
|
88
122
|
fieldName: TFieldKey;
|
|
89
123
|
context: import('../access/types.js').AccessContext;
|
|
@@ -154,6 +188,23 @@ export type BaseFieldConfig<TTypeInfo extends TypeInfo> = {
|
|
|
154
188
|
* Transforms field values and types in query results using Prisma's native extension system
|
|
155
189
|
*/
|
|
156
190
|
resultExtension?: ResultExtensionConfig;
|
|
191
|
+
/**
|
|
192
|
+
* Database configuration
|
|
193
|
+
*/
|
|
194
|
+
db?: {
|
|
195
|
+
/**
|
|
196
|
+
* Custom database column name
|
|
197
|
+
* Adds a @map attribute in Prisma schema
|
|
198
|
+
* @example
|
|
199
|
+
* ```typescript
|
|
200
|
+
* fields: {
|
|
201
|
+
* firstName: text({ db: { map: 'first_name' } })
|
|
202
|
+
* }
|
|
203
|
+
* // Generates: firstName String @map("first_name")
|
|
204
|
+
* ```
|
|
205
|
+
*/
|
|
206
|
+
map?: string;
|
|
207
|
+
};
|
|
157
208
|
ui?: {
|
|
158
209
|
/**
|
|
159
210
|
* Custom React component to render this field
|
|
@@ -252,6 +303,22 @@ export type IntegerField<TTypeInfo extends TypeInfo = TypeInfo> = BaseFieldConfi
|
|
|
252
303
|
max?: number;
|
|
253
304
|
};
|
|
254
305
|
};
|
|
306
|
+
export type DecimalField<TTypeInfo extends TypeInfo = TypeInfo> = BaseFieldConfig<TTypeInfo> & {
|
|
307
|
+
type: 'decimal';
|
|
308
|
+
defaultValue?: string;
|
|
309
|
+
precision?: number;
|
|
310
|
+
scale?: number;
|
|
311
|
+
db?: {
|
|
312
|
+
map?: string;
|
|
313
|
+
isNullable?: boolean;
|
|
314
|
+
};
|
|
315
|
+
validation?: {
|
|
316
|
+
isRequired?: boolean;
|
|
317
|
+
min?: string;
|
|
318
|
+
max?: string;
|
|
319
|
+
};
|
|
320
|
+
isIndexed?: boolean | 'unique';
|
|
321
|
+
};
|
|
255
322
|
export type CheckboxField<TTypeInfo extends TypeInfo = TypeInfo> = BaseFieldConfig<TTypeInfo> & {
|
|
256
323
|
type: 'checkbox';
|
|
257
324
|
};
|
|
@@ -284,6 +351,45 @@ export type RelationshipField<TTypeInfo extends TypeInfo = TypeInfo> = BaseField
|
|
|
284
351
|
type: 'relationship';
|
|
285
352
|
ref: string;
|
|
286
353
|
many?: boolean;
|
|
354
|
+
db?: {
|
|
355
|
+
/**
|
|
356
|
+
* Controls foreign key placement and column name for bidirectional relationships
|
|
357
|
+
* Can be a boolean or an object with a map property
|
|
358
|
+
* Only valid on single (non-many) relationships
|
|
359
|
+
* Cannot be true on both sides of a one-to-one relationship
|
|
360
|
+
*
|
|
361
|
+
* When a boolean, defaults the foreign key column name to the field name
|
|
362
|
+
* When an object with map, uses the provided column name
|
|
363
|
+
*
|
|
364
|
+
* @example
|
|
365
|
+
* ```typescript
|
|
366
|
+
* // One-to-one: User has one Account (default foreign key name)
|
|
367
|
+
* User: list({
|
|
368
|
+
* fields: {
|
|
369
|
+
* account: relationship({ ref: 'Account.user', db: { foreignKey: true } })
|
|
370
|
+
* // Generates: accountId String? @unique
|
|
371
|
+
* }
|
|
372
|
+
* })
|
|
373
|
+
*
|
|
374
|
+
* // One-to-one: User has one Account (custom foreign key name)
|
|
375
|
+
* User: list({
|
|
376
|
+
* fields: {
|
|
377
|
+
* account: relationship({ ref: 'Account.user', db: { foreignKey: { map: 'account_id' } } })
|
|
378
|
+
* // Generates: accountId String? @unique @map("account_id")
|
|
379
|
+
* }
|
|
380
|
+
* })
|
|
381
|
+
*
|
|
382
|
+
* Account: list({
|
|
383
|
+
* fields: {
|
|
384
|
+
* user: relationship({ ref: 'User.account' }) // No foreign key on this side
|
|
385
|
+
* }
|
|
386
|
+
* })
|
|
387
|
+
* ```
|
|
388
|
+
*/
|
|
389
|
+
foreignKey?: boolean | {
|
|
390
|
+
map?: string;
|
|
391
|
+
};
|
|
392
|
+
};
|
|
287
393
|
ui?: {
|
|
288
394
|
displayMode?: 'select' | 'cards';
|
|
289
395
|
};
|
|
@@ -469,23 +575,62 @@ export type ResolveInputHookArgs<TOutput = Record<string, unknown>, TCreateInput
|
|
|
469
575
|
context: import('../access/types.js').AccessContext;
|
|
470
576
|
};
|
|
471
577
|
/**
|
|
472
|
-
* Hook arguments for
|
|
473
|
-
*
|
|
578
|
+
* Hook arguments for validateInput hook
|
|
579
|
+
* Uses discriminated union to provide proper types based on operation
|
|
580
|
+
* - create: resolvedData is CreateInput, item is undefined
|
|
581
|
+
* - update: resolvedData is UpdateInput, item is the existing record
|
|
582
|
+
*/
|
|
583
|
+
export type ValidateInputHookArgs<TOutput = Record<string, unknown>, TCreateInput = Record<string, unknown>, TUpdateInput = Record<string, unknown>> = {
|
|
584
|
+
operation: 'create';
|
|
585
|
+
resolvedData: TCreateInput;
|
|
586
|
+
item: undefined;
|
|
587
|
+
context: import('../access/types.js').AccessContext;
|
|
588
|
+
addValidationError: (msg: string) => void;
|
|
589
|
+
} | {
|
|
590
|
+
operation: 'update';
|
|
591
|
+
resolvedData: TUpdateInput;
|
|
592
|
+
item: TOutput;
|
|
593
|
+
context: import('../access/types.js').AccessContext;
|
|
594
|
+
addValidationError: (msg: string) => void;
|
|
595
|
+
};
|
|
596
|
+
/**
|
|
597
|
+
* Hook arguments for beforeOperation hook
|
|
598
|
+
* Uses discriminated union to provide proper types based on operation
|
|
599
|
+
* - create: no resolvedData, no item
|
|
600
|
+
* - update: no resolvedData, has item
|
|
601
|
+
* - delete: no resolvedData, has item
|
|
602
|
+
*/
|
|
603
|
+
export type BeforeOperationHookArgs<TOutput = Record<string, unknown>> = {
|
|
604
|
+
operation: 'create';
|
|
605
|
+
context: import('../access/types.js').AccessContext;
|
|
606
|
+
} | {
|
|
607
|
+
operation: 'update' | 'delete';
|
|
608
|
+
item: TOutput;
|
|
609
|
+
context: import('../access/types.js').AccessContext;
|
|
610
|
+
};
|
|
611
|
+
/**
|
|
612
|
+
* Hook arguments for afterOperation hook
|
|
613
|
+
* Uses discriminated union to provide proper types based on operation
|
|
614
|
+
* - create: has item, no originalItem
|
|
615
|
+
* - update: has item, has originalItem
|
|
616
|
+
* - delete: has item, has originalItem
|
|
474
617
|
*/
|
|
475
|
-
export type
|
|
476
|
-
operation: 'create'
|
|
477
|
-
|
|
478
|
-
|
|
618
|
+
export type AfterOperationHookArgs<TOutput = Record<string, unknown>> = {
|
|
619
|
+
operation: 'create';
|
|
620
|
+
item: TOutput;
|
|
621
|
+
originalItem: undefined;
|
|
622
|
+
context: import('../access/types.js').AccessContext;
|
|
623
|
+
} | {
|
|
624
|
+
operation: 'update' | 'delete';
|
|
625
|
+
item: TOutput;
|
|
626
|
+
originalItem: TOutput;
|
|
479
627
|
context: import('../access/types.js').AccessContext;
|
|
480
628
|
};
|
|
481
629
|
export type Hooks<TOutput = Record<string, unknown>, TCreateInput = Record<string, unknown>, TUpdateInput = Record<string, unknown>> = {
|
|
482
630
|
resolveInput?: (args: ResolveInputHookArgs<TOutput, TCreateInput, TUpdateInput>) => Promise<TCreateInput | TUpdateInput>;
|
|
483
|
-
validateInput?: (args:
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
}) => Promise<void>;
|
|
487
|
-
beforeOperation?: (args: HookArgs<TOutput, TCreateInput, TUpdateInput>) => Promise<void>;
|
|
488
|
-
afterOperation?: (args: HookArgs<TOutput, TCreateInput, TUpdateInput>) => Promise<void>;
|
|
631
|
+
validateInput?: (args: ValidateInputHookArgs<TOutput, TCreateInput, TUpdateInput>) => Promise<void>;
|
|
632
|
+
beforeOperation?: (args: BeforeOperationHookArgs<TOutput>) => Promise<void>;
|
|
633
|
+
afterOperation?: (args: AfterOperationHookArgs<TOutput>) => Promise<void>;
|
|
489
634
|
};
|
|
490
635
|
export type ListConfig<TTypeInfo extends TypeInfo> = {
|
|
491
636
|
fields: FieldsWithTypeInfo<TTypeInfo>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,oBAAoB,CAAA;AACpE,OAAO,KAAK,EAAE,OAAO,EAAiB,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAmBlG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,oBAAoB,CAAA;AACpE,OAAO,KAAK,EAAE,OAAO,EAAiB,kBAAkB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAmBlG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAgH1D,MAAM,MAAM,iBAAiB,GACzB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GACpE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAChF;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAA;AAiErD;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,OAAO,SAAS,cAAc,EAC9B,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,EAEnD,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,OAAO,GAAG,IAAI,EACvB,OAAO,CAAC,EAAE,YAAY,EACtB,OAAO,GAAE,OAAe,GACvB;IACD,EAAE,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC/B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IACvB,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,YAAY,CAAA;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,YAAY,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5D,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM;QACV,EAAE,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAA;QAC/B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;QACvB,MAAM,EAAE,OAAO,CAAA;QACf,OAAO,EAAE,YAAY,CAAA;QACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAChC,YAAY,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;QAC5D,IAAI,EAAE,MAAM,OAAO,CAAA;QACnB,OAAO,EAAE,OAAO,CAAA;KACjB,CAAA;CACF,CA0KA"}
|
package/dist/context/index.js
CHANGED
|
@@ -67,7 +67,9 @@ item) {
|
|
|
67
67
|
*/
|
|
68
68
|
async function executeFieldAfterOperationHooks(
|
|
69
69
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
70
|
-
item, data, fields, operation, context, listKey
|
|
70
|
+
item, data, fields, operation, context, listKey,
|
|
71
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
72
|
+
originalItem) {
|
|
71
73
|
for (const [fieldName, fieldConfig] of Object.entries(fields)) {
|
|
72
74
|
// Skip if no hooks defined
|
|
73
75
|
if (!fieldConfig.hooks?.afterOperation)
|
|
@@ -81,6 +83,7 @@ item, data, fields, operation, context, listKey) {
|
|
|
81
83
|
fieldName,
|
|
82
84
|
listKey,
|
|
83
85
|
item,
|
|
86
|
+
originalItem,
|
|
84
87
|
context,
|
|
85
88
|
});
|
|
86
89
|
}
|
|
@@ -330,7 +333,7 @@ listConfig, prisma, context, config) {
|
|
|
330
333
|
context: { ...context, _isSudo: context._isSudo },
|
|
331
334
|
}, config, 0, listName);
|
|
332
335
|
// Execute field afterOperation hooks (side effects only)
|
|
333
|
-
await executeFieldAfterOperationHooks(filtered, undefined, listConfig.fields, 'query', context, listName);
|
|
336
|
+
await executeFieldAfterOperationHooks(filtered, undefined, listConfig.fields, 'query', context, listName, undefined);
|
|
334
337
|
return filtered;
|
|
335
338
|
};
|
|
336
339
|
}
|
|
@@ -383,7 +386,7 @@ listConfig, prisma, context, config) {
|
|
|
383
386
|
context: { ...context, _isSudo: context._isSudo },
|
|
384
387
|
}, config, 0, listName)));
|
|
385
388
|
// Execute field afterOperation hooks for each item (side effects only)
|
|
386
|
-
await Promise.all(filtered.map((item) => executeFieldAfterOperationHooks(item, undefined, listConfig.fields, 'query', context, listName)));
|
|
389
|
+
await Promise.all(filtered.map((item) => executeFieldAfterOperationHooks(item, undefined, listConfig.fields, 'query', context, listName, undefined)));
|
|
387
390
|
return filtered;
|
|
388
391
|
};
|
|
389
392
|
}
|
|
@@ -409,6 +412,7 @@ listConfig, prisma, context, config) {
|
|
|
409
412
|
let resolvedData = await executeResolveInput(listConfig.hooks, {
|
|
410
413
|
operation: 'create',
|
|
411
414
|
resolvedData: args.data,
|
|
415
|
+
item: undefined,
|
|
412
416
|
context,
|
|
413
417
|
});
|
|
414
418
|
// 2.5. Execute field-level resolveInput hooks (e.g., hash passwords)
|
|
@@ -417,6 +421,7 @@ listConfig, prisma, context, config) {
|
|
|
417
421
|
await executeValidateInput(listConfig.hooks, {
|
|
418
422
|
operation: 'create',
|
|
419
423
|
resolvedData,
|
|
424
|
+
item: undefined,
|
|
420
425
|
context,
|
|
421
426
|
});
|
|
422
427
|
// 4. Field validation (isRequired, length, etc.)
|
|
@@ -449,10 +454,11 @@ listConfig, prisma, context, config) {
|
|
|
449
454
|
await executeAfterOperation(listConfig.hooks, {
|
|
450
455
|
operation: 'create',
|
|
451
456
|
item,
|
|
457
|
+
originalItem: undefined,
|
|
452
458
|
context,
|
|
453
459
|
});
|
|
454
460
|
// 10. Execute field-level afterOperation hooks (side effects only)
|
|
455
|
-
await executeFieldAfterOperationHooks(item, data, listConfig.fields, 'create', context, listName);
|
|
461
|
+
await executeFieldAfterOperationHooks(item, data, listConfig.fields, 'create', context, listName, undefined);
|
|
456
462
|
// 11. Filter readable fields and apply resolveOutput hooks (including nested relationships)
|
|
457
463
|
// Pass sudo flag through context to skip field-level access checks
|
|
458
464
|
const filtered = await filterReadableFields(item, listConfig.fields, {
|
|
@@ -546,10 +552,11 @@ listConfig, prisma, context, config) {
|
|
|
546
552
|
await executeAfterOperation(listConfig.hooks, {
|
|
547
553
|
operation: 'update',
|
|
548
554
|
item: updated,
|
|
555
|
+
originalItem: item, // item is the original item before the update
|
|
549
556
|
context,
|
|
550
557
|
});
|
|
551
558
|
// 11. Execute field-level afterOperation hooks (side effects only)
|
|
552
|
-
await executeFieldAfterOperationHooks(updated, data, listConfig.fields, 'update', context, listName);
|
|
559
|
+
await executeFieldAfterOperationHooks(updated, data, listConfig.fields, 'update', context, listName, item);
|
|
553
560
|
// 12. Filter readable fields and apply resolveOutput hooks (including nested relationships)
|
|
554
561
|
// Pass sudo flag through context to skip field-level access checks
|
|
555
562
|
const filtered = await filterReadableFields(updated, listConfig.fields, {
|
|
@@ -613,10 +620,11 @@ listConfig, prisma, context) {
|
|
|
613
620
|
await executeAfterOperation(listConfig.hooks, {
|
|
614
621
|
operation: 'delete',
|
|
615
622
|
item: deleted,
|
|
623
|
+
originalItem: item, // item is the original item before deletion
|
|
616
624
|
context,
|
|
617
625
|
});
|
|
618
626
|
// 7. Execute field-level afterOperation hooks (side effects only)
|
|
619
|
-
await executeFieldAfterOperationHooks(deleted, undefined, listConfig.fields, 'delete', context, listName);
|
|
627
|
+
await executeFieldAfterOperationHooks(deleted, undefined, listConfig.fields, 'delete', context, listName, item);
|
|
620
628
|
return deleted;
|
|
621
629
|
};
|
|
622
630
|
}
|