@warlock.js/notifications 5.25.0 → 5.26.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/CHANGELOG.md +6 -0
- package/llms-full.txt +12 -2
- package/package.json +7 -7
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,12 @@ All notable changes to `@warlock.js/notifications` are documented in this file.
|
|
|
4
4
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). `@warlock.js/*` packages are released in lockstep — every package shares the same version number, so a version below may list only the changes that affected this package.
|
|
6
6
|
|
|
7
|
+
## 5.26.0 - 2026-09-30
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
|
|
11
|
+
- Lockstep release; package APIs are unchanged.
|
|
12
|
+
|
|
7
13
|
## 5.25.0 - 2026-09-28
|
|
8
14
|
|
|
9
15
|
### Changed
|
package/llms-full.txt
CHANGED
|
@@ -959,7 +959,7 @@ database: inApp.configure({ repository: notificationsRepository }),
|
|
|
959
959
|
|
|
960
960
|
---
|
|
961
961
|
name: write-notification-migration
|
|
962
|
-
description: 'Create the notifications table with the `notificationColumns(Notification)` factory + cascade `Migration.create`. Column NAMES come from the model''s `columnMap` (recipient / tenant / readAt / isRead); the fixed columns are `type` / `title` / `body` / `payload` / `idempotency_key`. Read-state follows columnMap presence: `readAt` → nullable timestamp, `isRead` → indexed boolean, both → both. Defaults to `user_id` + `read_at` when no columnMap. Spread + extend for extras (FK references, composite indexes). Triggers: `notificationColumns`, `Migration.create` for notifications, "create the notifications table", "notification migration", "add organization_id to notifications", `is_read` column, `read_at` column, `idempotency_key` column; typical import `import { Migration } from "@warlock.js/cascade"; import { notificationColumns } from "@warlock.js/notifications"`. Skip: generic cascade migration writing — `@warlock.js/cascade/write-migration/SKILL.md`; the model itself — `@warlock.js/notifications/use-in-app/SKILL.md`.'
|
|
962
|
+
description: 'Create the notifications table with the `notificationColumns(Notification)` factory + cascade `Migration.create`. Column NAMES come from the model''s `columnMap` (recipient / tenant / readAt / isRead); the fixed columns are `type` / `title` / `body` / `payload` / `idempotency_key`. Set `{ idType: "bigint" }` for integer-key apps; UUID remains the default. Read-state follows columnMap presence: `readAt` → nullable timestamp, `isRead` → indexed boolean, both → both. Defaults to `user_id` + `read_at` when no columnMap. Spread + extend for extras (FK references, composite indexes). Triggers: `notificationColumns`, `Migration.create` for notifications, "create the notifications table", "notification migration", "add organization_id to notifications", `is_read` column, `read_at` column, `idempotency_key` column; typical import `import { Migration } from "@warlock.js/cascade"; import { notificationColumns } from "@warlock.js/notifications"`. Skip: generic cascade migration writing — `@warlock.js/cascade/write-migration/SKILL.md`; the model itself — `@warlock.js/notifications/use-in-app/SKILL.md`.'
|
|
963
963
|
---
|
|
964
964
|
|
|
965
965
|
# Write the notifications migration
|
|
@@ -992,6 +992,16 @@ The recipient / tenant / read-state column NAMES come from `columnMap`; `type` /
|
|
|
992
992
|
`title` / `body` / `payload` / `idempotency_key` are fixed. `id` / `createdAt` /
|
|
993
993
|
`updatedAt` are added automatically by cascade.
|
|
994
994
|
|
|
995
|
+
## Match your app's identifier type
|
|
996
|
+
|
|
997
|
+
Recipient and tenant columns default to UUID. For applications whose primary keys
|
|
998
|
+
are `bigint`, `integer`, or strings, pass `idType`; it is applied to every
|
|
999
|
+
identifier column the factory creates:
|
|
1000
|
+
|
|
1001
|
+
```ts
|
|
1002
|
+
export default Migration.create(Notification, notificationColumns(Notification, { idType: "bigint" }));
|
|
1003
|
+
```
|
|
1004
|
+
|
|
995
1005
|
## With extras — spread + extend
|
|
996
1006
|
|
|
997
1007
|
Add your own columns — a category, a source channel, a tenant id, anything:
|
|
@@ -1002,7 +1012,7 @@ import { notificationColumns } from "@warlock.js/notifications";
|
|
|
1002
1012
|
import { Notification } from "../notification.model";
|
|
1003
1013
|
|
|
1004
1014
|
export default Migration.create(Notification, {
|
|
1005
|
-
...notificationColumns(Notification),
|
|
1015
|
+
...notificationColumns(Notification, { idType: "bigint" }),
|
|
1006
1016
|
category: string().index().nullable(),
|
|
1007
1017
|
});
|
|
1008
1018
|
```
|
package/package.json
CHANGED
|
@@ -5,16 +5,16 @@
|
|
|
5
5
|
"environment": "server"
|
|
6
6
|
},
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@warlock.js/cache": "5.
|
|
9
|
-
"@warlock.js/cascade": "5.
|
|
10
|
-
"@warlock.js/core": "5.
|
|
11
|
-
"@warlock.js/logger": "5.
|
|
8
|
+
"@warlock.js/cache": "5.26.0",
|
|
9
|
+
"@warlock.js/cascade": "5.26.0",
|
|
10
|
+
"@warlock.js/core": "5.26.0",
|
|
11
|
+
"@warlock.js/logger": "5.26.0"
|
|
12
12
|
},
|
|
13
13
|
"optionalDependencies": {
|
|
14
|
-
"@warlock.js/herald": "5.
|
|
14
|
+
"@warlock.js/herald": "5.26.0"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
|
-
"@warlock.js/queue": "5.
|
|
17
|
+
"@warlock.js/queue": "5.26.0"
|
|
18
18
|
},
|
|
19
19
|
"peerDependenciesMeta": {
|
|
20
20
|
"@warlock.js/queue": {
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
],
|
|
36
36
|
"author": "hassanzohdy",
|
|
37
37
|
"license": "MIT",
|
|
38
|
-
"version": "5.
|
|
38
|
+
"version": "5.26.0",
|
|
39
39
|
"main": "./cjs/index.cjs",
|
|
40
40
|
"module": "./esm/index.mjs",
|
|
41
41
|
"types": "./esm/index.d.mts",
|