@brightchain/brightchain-api-lib 0.29.7 → 0.29.8
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/package.json +4 -4
- package/src/lib/controllers/api/index.d.ts +1 -0
- package/src/lib/controllers/api/index.d.ts.map +1 -1
- package/src/lib/controllers/api/index.js +1 -0
- package/src/lib/controllers/api/index.js.map +1 -1
- package/src/lib/controllers/api/unifiedNotifications.d.ts +56 -0
- package/src/lib/controllers/api/unifiedNotifications.d.ts.map +1 -0
- package/src/lib/controllers/api/unifiedNotifications.js +206 -0
- package/src/lib/controllers/api/unifiedNotifications.js.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-unified-notification-response.d.ts +16 -0
- package/src/lib/interfaces/responses/brighthub/api-unified-notification-response.d.ts.map +1 -0
- package/src/lib/interfaces/responses/brighthub/api-unified-notification-response.js +3 -0
- package/src/lib/interfaces/responses/brighthub/api-unified-notification-response.js.map +1 -0
- package/src/lib/interfaces/responses/brighthub/index.d.ts +1 -0
- package/src/lib/interfaces/responses/brighthub/index.d.ts.map +1 -1
- package/src/lib/routers/api.d.ts +1 -0
- package/src/lib/routers/api.d.ts.map +1 -1
- package/src/lib/routers/api.js +8 -0
- package/src/lib/routers/api.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@brightchain/brightchain-api-lib",
|
|
3
|
-
"version": "0.29.
|
|
3
|
+
"version": "0.29.8",
|
|
4
4
|
"main": "./src/index.js",
|
|
5
5
|
"types": "./src/index.d.ts",
|
|
6
6
|
"files": [
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
],
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"@aws-sdk/client-ses": "^3.859.0",
|
|
12
|
-
"@brightchain/brightchain-lib": "^0.29.
|
|
13
|
-
"@brightchain/db": "^0.29.
|
|
14
|
-
"@brightchain/node-express-suite": "^0.29.
|
|
12
|
+
"@brightchain/brightchain-lib": "^0.29.8",
|
|
13
|
+
"@brightchain/db": "^0.29.8",
|
|
14
|
+
"@brightchain/node-express-suite": "^0.29.15",
|
|
15
15
|
"@digitaldefiance/branded-enum": "^0.0.7",
|
|
16
16
|
"@digitaldefiance/ecies-lib": "^4.20.2",
|
|
17
17
|
"@digitaldefiance/enclave-bridge-client": "^1.1.0",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/controllers/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/controllers/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,wBAAwB,CAAC;AACvC,cAAc,QAAQ,CAAC"}
|
|
@@ -22,5 +22,6 @@ tslib_1.__exportStar(require("./quorum"), exports);
|
|
|
22
22
|
tslib_1.__exportStar(require("./scbl"), exports);
|
|
23
23
|
tslib_1.__exportStar(require("./sessions"), exports);
|
|
24
24
|
tslib_1.__exportStar(require("./sync"), exports);
|
|
25
|
+
tslib_1.__exportStar(require("./unifiedNotifications"), exports);
|
|
25
26
|
tslib_1.__exportStar(require("./user"), exports);
|
|
26
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/controllers/api/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,sDAA4B;AAC5B,uDAA6B;AAC7B,gDAAsB;AACtB,qDAA2B;AAC3B,0DAAgC;AAChC,iDAAuB;AACvB,mDAAyB;AACzB,mDAAyB;AACzB,8DAAoC;AACpC,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,0DAAgC;AAChC,oDAA0B;AAC1B,qDAA2B;AAC3B,kDAAwB;AACxB,mDAAyB;AACzB,iDAAuB;AACvB,qDAA2B;AAC3B,iDAAuB;AACvB,iDAAuB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/controllers/api/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,sDAA4B;AAC5B,uDAA6B;AAC7B,gDAAsB;AACtB,qDAA2B;AAC3B,0DAAgC;AAChC,iDAAuB;AACvB,mDAAyB;AACzB,mDAAyB;AACzB,8DAAoC;AACpC,mDAAyB;AACzB,mDAAyB;AACzB,iDAAuB;AACvB,0DAAgC;AAChC,oDAA0B;AAC1B,qDAA2B;AAC3B,kDAAwB;AACxB,mDAAyB;AACzB,iDAAuB;AACvB,qDAA2B;AAC3B,iDAAuB;AACvB,iEAAuC;AACvC,iDAAuB"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UnifiedNotificationController — thin aggregation endpoint.
|
|
3
|
+
*
|
|
4
|
+
* Fans out to Hub NotificationService and Email MessagePassingService
|
|
5
|
+
* via Promise.all, merges unread counts, and returns a single response.
|
|
6
|
+
* BrightChat is a placeholder (returns 0) until ConversationService
|
|
7
|
+
* exposes an unread count method.
|
|
8
|
+
*
|
|
9
|
+
* Routes:
|
|
10
|
+
* GET /unified-notifications/unread-counts — aggregated unread counts
|
|
11
|
+
* GET /unified-notifications/recent — merged recent notifications
|
|
12
|
+
*/
|
|
13
|
+
import { INotificationService } from '@brightchain/brighthub-lib';
|
|
14
|
+
import { CoreLanguageCode } from '@digitaldefiance/i18n-lib';
|
|
15
|
+
import { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
16
|
+
import { ApiErrorResponse, ApiRequestHandler, TypedHandlers } from '@digitaldefiance/node-express-suite';
|
|
17
|
+
import { IBrightChainApplication } from '../../interfaces/application';
|
|
18
|
+
import { IUnifiedNotificationCountsApiResponse, IUnifiedNotificationsListApiResponse } from '../../interfaces/responses/brighthub';
|
|
19
|
+
import { MessagePassingService } from '../../services/messagePassingService';
|
|
20
|
+
import { DefaultBackendIdType } from '../../shared-types';
|
|
21
|
+
import { BaseController } from '../base';
|
|
22
|
+
type UnifiedNotificationApiResponse = IUnifiedNotificationCountsApiResponse | IUnifiedNotificationsListApiResponse | ApiErrorResponse;
|
|
23
|
+
interface IUnifiedNotificationHandlers extends TypedHandlers {
|
|
24
|
+
getUnreadCounts: ApiRequestHandler<UnifiedNotificationApiResponse>;
|
|
25
|
+
getRecent: ApiRequestHandler<UnifiedNotificationApiResponse>;
|
|
26
|
+
}
|
|
27
|
+
export declare class UnifiedNotificationController<TID extends PlatformID = DefaultBackendIdType> extends BaseController<TID, UnifiedNotificationApiResponse, IUnifiedNotificationHandlers, CoreLanguageCode> {
|
|
28
|
+
private notificationService;
|
|
29
|
+
private messagePassingService;
|
|
30
|
+
constructor(application: IBrightChainApplication<TID>);
|
|
31
|
+
setNotificationService(service: INotificationService): void;
|
|
32
|
+
setMessagePassingService(service: MessagePassingService): void;
|
|
33
|
+
protected initRouteDefinitions(): void;
|
|
34
|
+
/**
|
|
35
|
+
* GET /api/unified-notifications/unread-counts?userId=...
|
|
36
|
+
*/
|
|
37
|
+
private handleGetUnreadCounts;
|
|
38
|
+
/**
|
|
39
|
+
* GET /api/unified-notifications/recent?userId=...&limit=20&cursor=...
|
|
40
|
+
*
|
|
41
|
+
* Fetches recent notifications from Hub and recent unread emails from Mail,
|
|
42
|
+
* normalizes them into IUnifiedNotificationItem[], merges, sorts by date
|
|
43
|
+
* descending, and returns a paginated slice.
|
|
44
|
+
*/
|
|
45
|
+
private handleGetRecent;
|
|
46
|
+
/**
|
|
47
|
+
* Fetch Hub notifications and normalize to IUnifiedNotificationItem[].
|
|
48
|
+
*/
|
|
49
|
+
private fetchHubNotifications;
|
|
50
|
+
/**
|
|
51
|
+
* Fetch recent unread emails and normalize to IUnifiedNotificationItem[].
|
|
52
|
+
*/
|
|
53
|
+
private fetchMailNotifications;
|
|
54
|
+
}
|
|
55
|
+
export {};
|
|
56
|
+
//# sourceMappingURL=unifiedNotifications.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unifiedNotifications.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/controllers/api/unifiedNotifications.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EAGjB,aAAa,EACd,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EACL,qCAAqC,EACrC,oCAAoC,EACrC,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,KAAK,8BAA8B,GAC/B,qCAAqC,GACrC,oCAAoC,GACpC,gBAAgB,CAAC;AAErB,UAAU,4BAA6B,SAAQ,aAAa;IAC1D,eAAe,EAAE,iBAAiB,CAAC,8BAA8B,CAAC,CAAC;IACnE,SAAS,EAAE,iBAAiB,CAAC,8BAA8B,CAAC,CAAC;CAC9D;AAED,qBAAa,6BAA6B,CACxC,GAAG,SAAS,UAAU,GAAG,oBAAoB,CAC7C,SAAQ,cAAc,CACtB,GAAG,EACH,8BAA8B,EAC9B,4BAA4B,EAC5B,gBAAgB,CACjB;IACC,OAAO,CAAC,mBAAmB,CAAqC;IAChE,OAAO,CAAC,qBAAqB,CAAsC;gBAEvD,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC;IAI9C,sBAAsB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAI3D,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAIrE,SAAS,CAAC,oBAAoB,IAAI,IAAI;IA8CtC;;OAEG;YACW,qBAAqB;IAoCnC;;;;;;OAMG;YACW,eAAe;IAqD7B;;OAEG;YACW,qBAAqB;IAwBnC;;OAEG;YACW,sBAAsB;CA0BrC"}
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* UnifiedNotificationController — thin aggregation endpoint.
|
|
4
|
+
*
|
|
5
|
+
* Fans out to Hub NotificationService and Email MessagePassingService
|
|
6
|
+
* via Promise.all, merges unread counts, and returns a single response.
|
|
7
|
+
* BrightChat is a placeholder (returns 0) until ConversationService
|
|
8
|
+
* exposes an unread count method.
|
|
9
|
+
*
|
|
10
|
+
* Routes:
|
|
11
|
+
* GET /unified-notifications/unread-counts — aggregated unread counts
|
|
12
|
+
* GET /unified-notifications/recent — merged recent notifications
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.UnifiedNotificationController = void 0;
|
|
16
|
+
const node_express_suite_1 = require("@digitaldefiance/node-express-suite");
|
|
17
|
+
const errorResponse_1 = require("../../utils/errorResponse");
|
|
18
|
+
const base_1 = require("../base");
|
|
19
|
+
class UnifiedNotificationController extends base_1.BaseController {
|
|
20
|
+
notificationService = null;
|
|
21
|
+
messagePassingService = null;
|
|
22
|
+
constructor(application) {
|
|
23
|
+
super(application);
|
|
24
|
+
}
|
|
25
|
+
setNotificationService(service) {
|
|
26
|
+
this.notificationService = service;
|
|
27
|
+
}
|
|
28
|
+
setMessagePassingService(service) {
|
|
29
|
+
this.messagePassingService = service;
|
|
30
|
+
}
|
|
31
|
+
initRouteDefinitions() {
|
|
32
|
+
this.routeDefinitions = [
|
|
33
|
+
(0, node_express_suite_1.routeConfig)('get', '/unread-counts', {
|
|
34
|
+
handlerKey: 'getUnreadCounts',
|
|
35
|
+
useAuthentication: false,
|
|
36
|
+
useCryptoAuthentication: false,
|
|
37
|
+
openapi: {
|
|
38
|
+
summary: 'Get unified unread notification counts across all modules',
|
|
39
|
+
tags: ['Unified Notifications'],
|
|
40
|
+
responses: {
|
|
41
|
+
200: {
|
|
42
|
+
schema: 'UnifiedNotificationCountsResponse',
|
|
43
|
+
description: 'Aggregated unread counts',
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
}),
|
|
48
|
+
(0, node_express_suite_1.routeConfig)('get', '/recent', {
|
|
49
|
+
handlerKey: 'getRecent',
|
|
50
|
+
useAuthentication: false,
|
|
51
|
+
useCryptoAuthentication: false,
|
|
52
|
+
openapi: {
|
|
53
|
+
summary: 'Get recent notifications merged across all modules',
|
|
54
|
+
tags: ['Unified Notifications'],
|
|
55
|
+
responses: {
|
|
56
|
+
200: {
|
|
57
|
+
schema: 'UnifiedNotificationsListResponse',
|
|
58
|
+
description: 'Merged recent notifications',
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
}),
|
|
63
|
+
];
|
|
64
|
+
node_express_suite_1.ControllerRegistry.register('/unified-notifications', 'UnifiedNotificationController', this.routeDefinitions);
|
|
65
|
+
this.handlers = {
|
|
66
|
+
getUnreadCounts: this.handleGetUnreadCounts.bind(this),
|
|
67
|
+
getRecent: this.handleGetRecent.bind(this),
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* GET /api/unified-notifications/unread-counts?userId=...
|
|
72
|
+
*/
|
|
73
|
+
async handleGetUnreadCounts(req) {
|
|
74
|
+
try {
|
|
75
|
+
const typedReq = req;
|
|
76
|
+
const userId = typedReq.query['userId'];
|
|
77
|
+
if (!userId)
|
|
78
|
+
return (0, errorResponse_1.validationError)('Missing required query parameter: userId');
|
|
79
|
+
const [hub, mail, chat, pass] = await Promise.all([
|
|
80
|
+
this.notificationService
|
|
81
|
+
? this.notificationService.getUnreadCount(userId).catch(() => 0)
|
|
82
|
+
: Promise.resolve(0),
|
|
83
|
+
this.messagePassingService
|
|
84
|
+
? this.messagePassingService.getUnreadEmailCount(userId).catch(() => 0)
|
|
85
|
+
: Promise.resolve(0),
|
|
86
|
+
// BrightChat — wire when ConversationService gains getUnreadCount
|
|
87
|
+
Promise.resolve(0),
|
|
88
|
+
// BrightPass — wire when pass notification service is available
|
|
89
|
+
Promise.resolve(0),
|
|
90
|
+
]);
|
|
91
|
+
const total = hub + mail + chat + pass;
|
|
92
|
+
return {
|
|
93
|
+
statusCode: 200,
|
|
94
|
+
response: {
|
|
95
|
+
message: 'OK',
|
|
96
|
+
data: { total, hub, mail, chat, pass },
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
return (0, errorResponse_1.handleError)(error);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* GET /api/unified-notifications/recent?userId=...&limit=20&cursor=...
|
|
106
|
+
*
|
|
107
|
+
* Fetches recent notifications from Hub and recent unread emails from Mail,
|
|
108
|
+
* normalizes them into IUnifiedNotificationItem[], merges, sorts by date
|
|
109
|
+
* descending, and returns a paginated slice.
|
|
110
|
+
*/
|
|
111
|
+
async handleGetRecent(req) {
|
|
112
|
+
try {
|
|
113
|
+
const typedReq = req;
|
|
114
|
+
const userId = typedReq.query['userId'];
|
|
115
|
+
if (!userId)
|
|
116
|
+
return (0, errorResponse_1.validationError)('Missing required query parameter: userId');
|
|
117
|
+
const limit = Math.min(Math.max(1, parseInt(typedReq.query['limit'] ?? '20', 10) || 20), 50);
|
|
118
|
+
// Fan out to available services
|
|
119
|
+
const [hubItems, mailItems] = await Promise.all([
|
|
120
|
+
this.fetchHubNotifications(userId, limit),
|
|
121
|
+
this.fetchMailNotifications(userId, limit),
|
|
122
|
+
]);
|
|
123
|
+
// Merge and sort by date descending
|
|
124
|
+
const merged = [...hubItems, ...mailItems].sort((a, b) => new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime());
|
|
125
|
+
// Apply cursor-based pagination
|
|
126
|
+
let startIndex = 0;
|
|
127
|
+
const cursor = typedReq.query['cursor'];
|
|
128
|
+
if (cursor) {
|
|
129
|
+
const idx = merged.findIndex((item) => item.id === cursor);
|
|
130
|
+
if (idx >= 0)
|
|
131
|
+
startIndex = idx + 1;
|
|
132
|
+
}
|
|
133
|
+
const sliced = merged.slice(startIndex, startIndex + limit + 1);
|
|
134
|
+
const hasMore = sliced.length > limit;
|
|
135
|
+
const items = sliced.slice(0, limit);
|
|
136
|
+
const nextCursor = hasMore && items.length > 0
|
|
137
|
+
? items[items.length - 1].id
|
|
138
|
+
: undefined;
|
|
139
|
+
return {
|
|
140
|
+
statusCode: 200,
|
|
141
|
+
response: {
|
|
142
|
+
message: 'OK',
|
|
143
|
+
data: { items, hasMore, cursor: nextCursor },
|
|
144
|
+
},
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
catch (error) {
|
|
148
|
+
return (0, errorResponse_1.handleError)(error);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Fetch Hub notifications and normalize to IUnifiedNotificationItem[].
|
|
153
|
+
*/
|
|
154
|
+
async fetchHubNotifications(userId, limit) {
|
|
155
|
+
if (!this.notificationService)
|
|
156
|
+
return [];
|
|
157
|
+
try {
|
|
158
|
+
const result = await this.notificationService.getNotifications(userId, {
|
|
159
|
+
limit,
|
|
160
|
+
});
|
|
161
|
+
return result.items.map((n) => ({
|
|
162
|
+
id: n._id,
|
|
163
|
+
source: 'hub',
|
|
164
|
+
type: n.type,
|
|
165
|
+
content: n.content,
|
|
166
|
+
isRead: n.isRead,
|
|
167
|
+
createdAt: n.createdAt,
|
|
168
|
+
clickThroughUrl: n.clickThroughUrl,
|
|
169
|
+
actorId: n.actorId,
|
|
170
|
+
}));
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
return [];
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Fetch recent unread emails and normalize to IUnifiedNotificationItem[].
|
|
178
|
+
*/
|
|
179
|
+
async fetchMailNotifications(userId, limit) {
|
|
180
|
+
if (!this.messagePassingService)
|
|
181
|
+
return [];
|
|
182
|
+
try {
|
|
183
|
+
const result = await this.messagePassingService.queryInbox(userId, {
|
|
184
|
+
readStatus: 'unread',
|
|
185
|
+
sortBy: 'date',
|
|
186
|
+
sortDirection: 'desc',
|
|
187
|
+
pageSize: limit,
|
|
188
|
+
});
|
|
189
|
+
return result.emails.map((email) => ({
|
|
190
|
+
id: email.messageId,
|
|
191
|
+
source: 'mail',
|
|
192
|
+
type: 'email',
|
|
193
|
+
content: email.subject ?? '(no subject)',
|
|
194
|
+
isRead: false,
|
|
195
|
+
createdAt: email.date?.toISOString() ?? new Date().toISOString(),
|
|
196
|
+
clickThroughUrl: `/brightmail/${email.messageId}`,
|
|
197
|
+
actorId: email.from?.address,
|
|
198
|
+
}));
|
|
199
|
+
}
|
|
200
|
+
catch {
|
|
201
|
+
return [];
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
exports.UnifiedNotificationController = UnifiedNotificationController;
|
|
206
|
+
//# sourceMappingURL=unifiedNotifications.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unifiedNotifications.js","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/controllers/api/unifiedNotifications.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IUnifiedNotificationCounts, IUnifiedNotificationsResult } from '@brightchain/brightchain-lib';
|
|
2
|
+
import { IApiMessageResponse } from '@digitaldefiance/node-express-suite';
|
|
3
|
+
/**
|
|
4
|
+
* API response for unified notification counts across all modules.
|
|
5
|
+
* @see Requirements: 57.2, 13.8
|
|
6
|
+
*/
|
|
7
|
+
export interface IUnifiedNotificationCountsApiResponse extends IApiMessageResponse {
|
|
8
|
+
data: IUnifiedNotificationCounts;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* API response for unified recent notifications list.
|
|
12
|
+
*/
|
|
13
|
+
export interface IUnifiedNotificationsListApiResponse extends IApiMessageResponse {
|
|
14
|
+
data: IUnifiedNotificationsResult;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=api-unified-notification-response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-unified-notification-response.d.ts","sourceRoot":"","sources":["../../../../../../../brightchain-api-lib/src/lib/interfaces/responses/brighthub/api-unified-notification-response.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E;;;GAGG;AACH,MAAM,WAAW,qCACf,SAAQ,mBAAmB;IAC3B,IAAI,EAAE,0BAA0B,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,oCACf,SAAQ,mBAAmB;IAC3B,IAAI,EAAE,2BAA2B,CAAC;CACnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-unified-notification-response.js","sourceRoot":"","sources":["../../../../../../../brightchain-api-lib/src/lib/interfaces/responses/brighthub/api-unified-notification-response.ts"],"names":[],"mappings":""}
|
|
@@ -9,5 +9,6 @@ export type * from './api-messaging-response';
|
|
|
9
9
|
export type * from './api-notification-response';
|
|
10
10
|
export type * from './api-post-response';
|
|
11
11
|
export type * from './api-timeline-response';
|
|
12
|
+
export type * from './api-unified-notification-response';
|
|
12
13
|
export type * from './api-user-profile-response';
|
|
13
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../brightchain-api-lib/src/lib/interfaces/responses/brighthub/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,mBAAmB,2BAA2B,CAAC;AAG/C,mBAAmB,0BAA0B,CAAC;AAG9C,mBAAmB,6BAA6B,CAAC;AAGjD,mBAAmB,qBAAqB,CAAC;AAGzC,mBAAmB,yBAAyB,CAAC;AAG7C,mBAAmB,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../brightchain-api-lib/src/lib/interfaces/responses/brighthub/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,mBAAmB,2BAA2B,CAAC;AAG/C,mBAAmB,0BAA0B,CAAC;AAG9C,mBAAmB,6BAA6B,CAAC;AAGjD,mBAAmB,qBAAqB,CAAC;AAGzC,mBAAmB,yBAAyB,CAAC;AAG7C,mBAAmB,qCAAqC,CAAC;AAGzD,mBAAmB,6BAA6B,CAAC"}
|
package/src/lib/routers/api.d.ts
CHANGED
|
@@ -48,6 +48,7 @@ export declare class ApiRouter<TID extends PlatformID = DefaultBackendIdType> ex
|
|
|
48
48
|
private readonly brightHubNotificationController;
|
|
49
49
|
private readonly brightHubConnectionController;
|
|
50
50
|
private readonly brightHubTimelineController;
|
|
51
|
+
private readonly unifiedNotificationController;
|
|
51
52
|
private introspectionController;
|
|
52
53
|
private readonly brightchainApplication;
|
|
53
54
|
private readonly emailService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,WAAW,EACX,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,cAAc,EACd,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAA0B,MAAM,iCAAiC,CAAC;AAE5F,OAAO,EAAgB,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAK3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,EACL,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,EAC/B,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":"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"}
|
package/src/lib/routers/api.js
CHANGED
|
@@ -23,6 +23,7 @@ const nodes_1 = require("../controllers/api/nodes");
|
|
|
23
23
|
const quorum_1 = require("../controllers/api/quorum");
|
|
24
24
|
const scbl_1 = require("../controllers/api/scbl");
|
|
25
25
|
const sync_1 = require("../controllers/api/sync");
|
|
26
|
+
const unifiedNotifications_1 = require("../controllers/api/unifiedNotifications");
|
|
26
27
|
const user_1 = require("../controllers/api/user");
|
|
27
28
|
const email_1 = require("../services/email");
|
|
28
29
|
/**
|
|
@@ -58,6 +59,7 @@ class ApiRouter extends node_express_suite_1.BrightDbApiRouter {
|
|
|
58
59
|
brightHubNotificationController;
|
|
59
60
|
brightHubConnectionController;
|
|
60
61
|
brightHubTimelineController;
|
|
62
|
+
unifiedNotificationController;
|
|
61
63
|
introspectionController = null;
|
|
62
64
|
brightchainApplication;
|
|
63
65
|
emailService;
|
|
@@ -102,6 +104,8 @@ class ApiRouter extends node_express_suite_1.BrightDbApiRouter {
|
|
|
102
104
|
this.brightHubNotificationController = new brighthub_1.BrightHubNotificationController(application);
|
|
103
105
|
this.brightHubConnectionController = new brighthub_1.BrightHubConnectionController(application);
|
|
104
106
|
this.brightHubTimelineController = new brighthub_1.BrightHubTimelineController(application);
|
|
107
|
+
// Unified notification aggregation controller
|
|
108
|
+
this.unifiedNotificationController = new unifiedNotifications_1.UnifiedNotificationController(application);
|
|
105
109
|
this.router.use('/blocks', this.blocksController.router);
|
|
106
110
|
this.router.use('/brightpass', this.brightPassController.router);
|
|
107
111
|
this.router.use('/brightchat/channels', this.channelController.router);
|
|
@@ -124,6 +128,8 @@ class ApiRouter extends node_express_suite_1.BrightDbApiRouter {
|
|
|
124
128
|
this.router.use('/brighthub/notifications', this.brightHubNotificationController.router);
|
|
125
129
|
this.router.use('/brighthub', this.brightHubConnectionController.router);
|
|
126
130
|
this.router.use('/brighthub', this.brightHubTimelineController.router);
|
|
131
|
+
// Unified notification aggregation
|
|
132
|
+
this.router.use('/unified-notifications', this.unifiedNotificationController.router);
|
|
127
133
|
}
|
|
128
134
|
/**
|
|
129
135
|
* Factory override: creates the domain-specific UserController
|
|
@@ -245,6 +251,7 @@ class ApiRouter extends node_express_suite_1.BrightDbApiRouter {
|
|
|
245
251
|
*/
|
|
246
252
|
setMessagePassingServiceForEmail(service) {
|
|
247
253
|
this.emailController.setMessagePassingService(service);
|
|
254
|
+
this.unifiedNotificationController.setMessagePassingService(service);
|
|
248
255
|
}
|
|
249
256
|
/**
|
|
250
257
|
* Get the DirectMessageController instance.
|
|
@@ -292,6 +299,7 @@ class ApiRouter extends node_express_suite_1.BrightDbApiRouter {
|
|
|
292
299
|
*/
|
|
293
300
|
setBrightHubNotificationService(service) {
|
|
294
301
|
this.brightHubNotificationController.setNotificationService(service);
|
|
302
|
+
this.unifiedNotificationController.setNotificationService(service);
|
|
295
303
|
}
|
|
296
304
|
/**
|
|
297
305
|
* Set the ConnectionService for the BrightHub connection controller.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":";;;AAqBA,wEAA4F;AAE5F,oEAA2E;AAC3E,4EAE6C;AAC7C,kDAA+C;AAG/C,sDAA6D;AAC7D,4DAMsC;AACtC,8DAAqE;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/routers/api.ts"],"names":[],"mappings":"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"}
|