@quilla-be-kit/persistence 2.1.0 → 2.1.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.
- package/README.md +13 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -237,6 +237,19 @@ never matches in Postgres.
|
|
|
237
237
|
`status IS NULL` too, not just rows with some other non-`DONE` status. Confirm
|
|
238
238
|
that's actually intended before using `__notIn` in a `delete` or `update`.
|
|
239
239
|
|
|
240
|
+
**Migration note — casting to `FilterQuery<T>` inside a generic method:**
|
|
241
|
+
`FilterQuery<T>` is now an intersection of several mapped types (the base
|
|
242
|
+
shape plus one per operator group). TypeScript can verify `Partial<Row>`
|
|
243
|
+
against `FilterQuery<Row>` for a *concrete* `Row`, but it can't verify
|
|
244
|
+
`Partial<T>` against `FilterQuery<T>` when `T` is still an unresolved generic
|
|
245
|
+
parameter — even though every added property is optional. If you have a
|
|
246
|
+
generic base repository/DAO method that builds a `Partial<TRow>` and passes
|
|
247
|
+
it somewhere typed `FilterQuery<TRow>`, that assignment will now fail to
|
|
248
|
+
compile. Cast directly to `FilterQuery<TRow>` instead of routing through
|
|
249
|
+
`Partial<TRow>` first — e.g. `{ id } as FilterQuery<TRow>`, not
|
|
250
|
+
`{ id } as Partial<TRow>` — which sidesteps the generic-assignability gap
|
|
251
|
+
entirely (this is the pattern `BaseWriteDao` uses internally).
|
|
252
|
+
|
|
240
253
|
## Mappers — row ↔ aggregate conversion
|
|
241
254
|
|
|
242
255
|
`BasePersistenceMapper` handles the bidirectional row↔aggregate conversion
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quilla-be-kit/persistence",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.1",
|
|
4
4
|
"description": "Persistence primitives: Database, DAOs with audit injection and optimistic locking, aggregate repositories with scope isolation, UnitOfWork with pluggable outbox.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Max Martinez",
|
|
@@ -71,8 +71,8 @@
|
|
|
71
71
|
"pg": "^8.20.0",
|
|
72
72
|
"vitest": "^2.1.3",
|
|
73
73
|
"zod": "^4.0.0",
|
|
74
|
-
"@quilla-be-kit/ddd": "^0.2.1",
|
|
75
74
|
"@quilla-be-kit/errors": "^0.3.0",
|
|
75
|
+
"@quilla-be-kit/ddd": "^0.2.1",
|
|
76
76
|
"@quilla-be-kit/execution-context": "^0.3.1"
|
|
77
77
|
},
|
|
78
78
|
"scripts": {
|