@rpcbase/server 0.477.0 → 0.478.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/dist/rts/index.d.ts.map +1 -1
- package/dist/rts/index.js +11 -10
- package/package.json +1 -1
package/dist/rts/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/rts/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAmB,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAA;AAGtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,OAAO,EAAmH,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAGlK,OAAO,EAAiC,KAAK,SAAS,EAAE,MAAM,IAAI,CAAA;AAqBlE,KAAK,UAAU,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,UAAU,CAAA;CACpB,CAAA;AAoBD,KAAK,SAAS,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAA;AAiC3D,cAAM,SAAS;IACb,SAAgB,EAAE,EAAE,MAAM,CAAA;IAC1B,SAAgB,QAAQ,EAAE,MAAM,CAAA;IAChC,SAAgB,MAAM,EAAE,MAAM,CAAA;IAE9B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqD;gBAE3D,EACjB,EAAE,EACF,EAAE,EACF,IAAI,GACL,EAAE;QACD,EAAE,EAAE,MAAM,CAAA;QACV,EAAE,EAAE,SAAS,CAAA;QACb,IAAI,EAAE,UAAU,CAAA;KACjB;IAOM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;IAOlE,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAO7D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI;IAI5C,KAAK,IAAI,IAAI;IAQb,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;CAOvD;AA+iBD,eAAO,MAAM,OAAO,GAAI,4NAQrB;IACD,MAAM,EAAE,UAAU,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,iBAAiB,CAAC,EAAE,cAAc,CAAA;IAClC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,yBAAyB,CAAC,EAAE,MAAM,CAAA;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B,KAAG,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/rts/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAmB,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAA;AAGtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,OAAO,EAAmH,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAGlK,OAAO,EAAiC,KAAK,SAAS,EAAE,MAAM,IAAI,CAAA;AAqBlE,KAAK,UAAU,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,UAAU,CAAA;CACpB,CAAA;AAoBD,KAAK,SAAS,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAA;AAiC3D,cAAM,SAAS;IACb,SAAgB,EAAE,EAAE,MAAM,CAAA;IAC1B,SAAgB,QAAQ,EAAE,MAAM,CAAA;IAChC,SAAgB,MAAM,EAAE,MAAM,CAAA;IAE9B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqD;gBAE3D,EACjB,EAAE,EACF,EAAE,EACF,IAAI,GACL,EAAE;QACD,EAAE,EAAE,MAAM,CAAA;QACV,EAAE,EAAE,SAAS,CAAA;QACb,IAAI,EAAE,UAAU,CAAA;KACjB;IAOM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;IAOlE,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAO7D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI;IAI5C,KAAK,IAAI,IAAI;IAQb,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;CAOvD;AA+iBD,eAAO,MAAM,OAAO,GAAI,4NAQrB;IACD,MAAM,EAAE,UAAU,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,iBAAiB,CAAC,EAAE,cAAc,CAAA;IAClC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,yBAAyB,CAAC,EAAE,MAAM,CAAA;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B,KAAG,IAoHH,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,SAAS,SAAS,KAAG,IAEvD,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,UAAU,MAAM,EAAE,WAAW,MAAM,KAAG,IAE3E,CAAA;AAED,cAAc,UAAU,CAAA"}
|
package/dist/rts/index.js
CHANGED
|
@@ -233,7 +233,7 @@ const runAndSendQuery = async ({
|
|
|
233
233
|
options
|
|
234
234
|
}) => {
|
|
235
235
|
if (!ability.can("read", modelName)) {
|
|
236
|
-
const payload2 = { type: "
|
|
236
|
+
const payload2 = { type: "query-payload", modelName, queryKey, error: "forbidden" };
|
|
237
237
|
for (const socketId of targetSocketIds) {
|
|
238
238
|
const ws = sockets.get(socketId);
|
|
239
239
|
if (!ws) continue;
|
|
@@ -253,7 +253,7 @@ const runAndSendQuery = async ({
|
|
|
253
253
|
}
|
|
254
254
|
queryPromise.limit(limit);
|
|
255
255
|
const data = await queryPromise;
|
|
256
|
-
const payload = { type: "
|
|
256
|
+
const payload = { type: "query-payload", modelName, queryKey, data };
|
|
257
257
|
for (const socketId of targetSocketIds) {
|
|
258
258
|
const ws = sockets.get(socketId);
|
|
259
259
|
if (!ws) continue;
|
|
@@ -285,7 +285,7 @@ const dispatchSubscriptionsForModel = async (tenantId, modelName) => {
|
|
|
285
285
|
});
|
|
286
286
|
} catch (err) {
|
|
287
287
|
const error = redactErrorMessage(err);
|
|
288
|
-
const payload = { type: "
|
|
288
|
+
const payload = { type: "query-payload", modelName, queryKey, error };
|
|
289
289
|
for (const socketId2 of targetSocketIds) {
|
|
290
290
|
const ws = sockets.get(socketId2);
|
|
291
291
|
if (!ws) continue;
|
|
@@ -453,12 +453,12 @@ const handleClientMessage = async ({
|
|
|
453
453
|
}
|
|
454
454
|
if (!message.modelName || typeof message.modelName !== "string") return;
|
|
455
455
|
if (!allowInternalModels && INTERNAL_MODEL_NAMES.has(message.modelName)) {
|
|
456
|
-
sendWs(ws, { type: "
|
|
456
|
+
sendWs(ws, { type: "query-payload", modelName: message.modelName, queryKey: message.queryKey ?? "", error: "Model not allowed" });
|
|
457
457
|
return;
|
|
458
458
|
}
|
|
459
459
|
if (!message.queryKey || typeof message.queryKey !== "string") return;
|
|
460
460
|
if (message.queryKey.length > QUERY_KEY_MAX_LEN) return;
|
|
461
|
-
if (message.type === "
|
|
461
|
+
if (message.type === "remove-query") {
|
|
462
462
|
removeSocketSubscription({
|
|
463
463
|
socketId,
|
|
464
464
|
tenantId: meta.tenantId,
|
|
@@ -472,10 +472,10 @@ const handleClientMessage = async ({
|
|
|
472
472
|
const options = normalizeOptions(message.options);
|
|
473
473
|
const ability = meta.ability;
|
|
474
474
|
if (!ability.can("read", message.modelName)) {
|
|
475
|
-
sendWs(ws, { type: "
|
|
475
|
+
sendWs(ws, { type: "query-payload", modelName: message.modelName, queryKey: message.queryKey, error: "forbidden" });
|
|
476
476
|
return;
|
|
477
477
|
}
|
|
478
|
-
if (message.type === "
|
|
478
|
+
if (message.type === "register-query") {
|
|
479
479
|
const existing = socketSubscriptions.get(socketId)?.get(message.modelName)?.has(message.queryKey) ?? false;
|
|
480
480
|
if (!existing) {
|
|
481
481
|
let count = 0;
|
|
@@ -484,7 +484,7 @@ const handleClientMessage = async ({
|
|
|
484
484
|
for (const set of byModel.values()) count += set.size;
|
|
485
485
|
}
|
|
486
486
|
if (count >= maxSubscriptionsPerSocket) {
|
|
487
|
-
sendWs(ws, { type: "
|
|
487
|
+
sendWs(ws, { type: "query-payload", modelName: message.modelName, queryKey: message.queryKey, error: "Too many subscriptions" });
|
|
488
488
|
return;
|
|
489
489
|
}
|
|
490
490
|
}
|
|
@@ -501,7 +501,7 @@ const handleClientMessage = async ({
|
|
|
501
501
|
await ensureChangeStream(meta.tenantId, message.modelName);
|
|
502
502
|
} catch (err) {
|
|
503
503
|
const error = redactErrorMessage(err);
|
|
504
|
-
sendWs(ws, { type: "
|
|
504
|
+
sendWs(ws, { type: "query-payload", modelName: message.modelName, queryKey: message.queryKey, error });
|
|
505
505
|
return;
|
|
506
506
|
}
|
|
507
507
|
}
|
|
@@ -517,7 +517,7 @@ const handleClientMessage = async ({
|
|
|
517
517
|
});
|
|
518
518
|
} catch (err) {
|
|
519
519
|
const error = redactErrorMessage(err);
|
|
520
|
-
sendWs(ws, { type: "
|
|
520
|
+
sendWs(ws, { type: "query-payload", modelName: message.modelName, queryKey: message.queryKey, error });
|
|
521
521
|
}
|
|
522
522
|
};
|
|
523
523
|
const initRts = ({
|
|
@@ -605,6 +605,7 @@ const initRts = ({
|
|
|
605
605
|
}
|
|
606
606
|
if (!parsed || typeof parsed !== "object") return;
|
|
607
607
|
const message = parsed;
|
|
608
|
+
if (message.type !== "event" && message.type !== "run-query" && message.type !== "register-query" && message.type !== "remove-query") return;
|
|
608
609
|
void handleClientMessage({ socketId, meta, message });
|
|
609
610
|
});
|
|
610
611
|
ws.on("close", () => {
|