@vibes.diy/api-svc 10.8.2 → 10.8.4
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/cf-serve.js +3 -2
- package/cf-serve.js.map +1 -1
- package/create-handler.js +2 -0
- package/create-handler.js.map +1 -1
- package/evento-handler-manifest.js +2 -0
- package/evento-handler-manifest.js.map +1 -1
- package/intern/components/vibe-page.js +10 -1
- package/intern/components/vibe-page.js.map +1 -1
- package/intern/read-anonymous-seed-docs.js +1 -0
- package/intern/read-anonymous-seed-docs.js.map +1 -1
- package/intern/render-vibe.d.ts +3 -1
- package/intern/render-vibe.js +38 -23
- package/intern/render-vibe.js.map +1 -1
- package/intern/swr-html-cache.js +1 -0
- package/intern/swr-html-cache.js.map +1 -1
- package/intern/swr-wrapper-html-cache.js.map +1 -1
- package/package.json +11 -11
- package/public/app-documents-read-eventos.js +25 -0
- package/public/app-documents-read-eventos.js.map +1 -1
- package/public/interest-channels.d.ts +29 -0
- package/public/interest-channels.js +111 -0
- package/public/interest-channels.js.map +1 -0
- package/public/profile-info.d.ts +13 -0
- package/public/profile-info.js +39 -0
- package/public/profile-info.js.map +1 -0
- package/public/report-cache.js +1 -6
- package/public/report-cache.js.map +1 -1
- package/public/report-campaign-health.js +0 -10
- package/public/report-campaign-health.js.map +1 -1
- package/public/root-html-live-inputs.d.ts +16 -0
- package/public/root-html-live-inputs.js +10 -0
- package/public/root-html-live-inputs.js.map +1 -0
- package/public/serv-entry-point.js +18 -13
- package/public/serv-entry-point.js.map +1 -1
- package/public/sync-eventos.js +29 -3
- package/public/sync-eventos.js.map +1 -1
- package/public/sync-pull-core.d.ts +3 -0
- package/public/sync-pull-core.js +35 -14
- package/public/sync-pull-core.js.map +1 -1
- package/public/viewer-channel-resolver.d.ts +1 -0
- package/public/viewer-channel-resolver.js +10 -8
- package/public/viewer-channel-resolver.js.map +1 -1
- package/request-timings.d.ts +15 -0
- package/request-timings.js +82 -0
- package/request-timings.js.map +1 -0
- package/svc-http-send-provider.js +29 -5
- package/svc-http-send-provider.js.map +1 -1
- package/svc-ws-send-provider.d.ts +2 -0
- package/svc-ws-send-provider.js +2 -0
- package/svc-ws-send-provider.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-pull-core.js","sourceRoot":"","sources":["../../jsr/public/sync-pull-core.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sync-pull-core.js","sourceRoot":"","sources":["../../jsr/public/sync-pull-core.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export interface ResolveViewerChannelsParams {
|
|
|
11
11
|
readonly access: DocAccessLevel;
|
|
12
12
|
readonly decodedOutputs: readonly DecodedAccessOutputRow[];
|
|
13
13
|
readonly actingHandle?: string;
|
|
14
|
+
readonly derivation: "readable" | "pull";
|
|
14
15
|
}
|
|
15
16
|
export interface ViewerChannelResolution {
|
|
16
17
|
readonly userHandle: string | null;
|
|
@@ -40,14 +40,16 @@ export async function resolveViewerChannels(vctx, p) {
|
|
|
40
40
|
for (const ch of audienceChannelsForReader(membership))
|
|
41
41
|
effectiveChannels.add(ch);
|
|
42
42
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
43
|
+
if (p.derivation === "readable") {
|
|
44
|
+
const publicChannels = await resolvePublicAudienceChannelsFailClosed(vctx, {
|
|
45
|
+
handle: userHandle,
|
|
46
|
+
subjects,
|
|
47
|
+
ownerHandle: p.ownerHandle,
|
|
48
|
+
appSlug: p.appSlug,
|
|
49
|
+
});
|
|
50
|
+
for (const ch of publicChannels)
|
|
51
|
+
effectiveChannels.add(ch);
|
|
52
|
+
}
|
|
51
53
|
}
|
|
52
54
|
}
|
|
53
55
|
if (p.access !== "override") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewer-channel-resolver.js","sourceRoot":"","sources":["../../jsr/public/viewer-channel-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,uCAAuC,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"viewer-channel-resolver.js","sourceRoot":"","sources":["../../jsr/public/viewer-channel-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,uCAAuC,EAAE,MAAM,+BAA+B,CAAC;AA2DxF,MAAM,UAAU,yBAAyB,CAAC,UAA4B;IACpE,OAAO,CACL,CAAC,UAAU,CAAC,OAAO,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1E,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACnF,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACnF,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CACzE,CAAC;AACJ,CAAC;AAoDD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAAoB,EACpB,CAA8B;IAE9B,MAAM,UAAU,GACd,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,uBAAuB,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnH,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAC1D,KAAK,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;QACnD,IAAI,yBAAyB,CAAC,UAAU,CAAC;YAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC;IACvG,CAAC;IAED,MAAM,UAAU,GACd,CAAC,CAAC,MAAM,KAAK,IAAI;QACf,CAAC,CAAC,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,CAAC,CAAC,MAAM,0BAA0B,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,IAAI,CAAC;YAC7E,CAAC,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS;gBAC5B,CAAC,CAAC,CAAC,CAAC,YAAY;gBAChB,CAAC,CAAC,CAAC,CAAC,MAAM,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC;QAC3D,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,iBAAiB,GAAG,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAU,CAAC;IAEhH,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAC/F,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAGxB,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gBACxB,MAAM,UAAU,GAAG,MAAM,mCAAmC,CAAC,IAAI,EAAE;oBACjE,MAAM,EAAE,UAAU;oBAClB,QAAQ;oBACR,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;iBACnB,CAAC,CAAC;gBACH,KAAK,MAAM,EAAE,IAAI,yBAAyB,CAAC,UAAU,CAAC;oBAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpF,CAAC;YAgBD,IAAI,CAAC,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gBAChC,MAAM,cAAc,GAAG,MAAM,uCAAuC,CAAC,IAAI,EAAE;oBACzE,MAAM,EAAE,UAAU;oBAClB,QAAQ;oBACR,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;iBACnB,CAAC,CAAC;gBACH,KAAK,MAAM,EAAE,IAAI,cAAc;oBAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAAC,IAAI,EAAE;YACvD,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,OAAO,EAAE,CAAC,CAAC,cAAc;YACzB,UAAU;YACV,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,UAAU;SACX,CAAC,CAAC;QACH,KAAK,MAAM,EAAE,IAAI,SAAS;YAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC;AAClF,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const TIMING_LEGEND_METRIC = "_note";
|
|
2
|
+
export declare function serverTimingTotal(startTime: Date | undefined, now?: () => number): string | undefined;
|
|
3
|
+
export declare class RequestTimings {
|
|
4
|
+
private readonly phases;
|
|
5
|
+
private readonly now;
|
|
6
|
+
constructor(now?: () => number);
|
|
7
|
+
record(name: string, durationMs: number, desc?: string): void;
|
|
8
|
+
private timed;
|
|
9
|
+
measure<T>(name: string, fn: () => Promise<T>): Promise<T>;
|
|
10
|
+
measureGroup<T>(group: string, fn: () => Promise<T>): Promise<T>;
|
|
11
|
+
measureInGroup<T>(group: string, name: string, fn: () => Promise<T>): Promise<T>;
|
|
12
|
+
measureBackground<T>(name: string, fn: () => Promise<T>): Promise<T>;
|
|
13
|
+
measureCpu<T>(name: string, fn: () => Promise<T>): Promise<T>;
|
|
14
|
+
serverTiming(): string | undefined;
|
|
15
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
const SERVER_TIMING_TOKEN = /^[A-Za-z0-9!#$%&'*+\-.^_`|~]+$/;
|
|
2
|
+
const DESC_ALLOWED = /[^A-Za-z0-9 .:=*/_+()-]/g;
|
|
3
|
+
export const TIMING_LEGEND_METRIC = "_note";
|
|
4
|
+
const TIMING_LEGEND_DESC = "wall-clock i/o spans. cpu time NOT captured (workerd clock is pinned to i/o - cpu-tagged phases read 0.00 and total omits the cpu tail). " +
|
|
5
|
+
"par:X = ran concurrently in group X - do not sum siblings - read metric X for the real cost. bg = overlapped work / off the critical path";
|
|
6
|
+
function isValidName(name) {
|
|
7
|
+
return name.length > 0 && SERVER_TIMING_TOKEN.test(name);
|
|
8
|
+
}
|
|
9
|
+
function isValidDuration(durationMs) {
|
|
10
|
+
return Number.isFinite(durationMs) && durationMs >= 0;
|
|
11
|
+
}
|
|
12
|
+
function sanitizeDesc(desc) {
|
|
13
|
+
const clean = desc.replace(DESC_ALLOWED, "").trim();
|
|
14
|
+
return clean.length > 0 ? clean : undefined;
|
|
15
|
+
}
|
|
16
|
+
export function serverTimingTotal(startTime, now = Date.now) {
|
|
17
|
+
if (!(startTime instanceof Date))
|
|
18
|
+
return undefined;
|
|
19
|
+
const startMs = startTime.getTime();
|
|
20
|
+
if (!Number.isFinite(startMs) || startMs <= 0)
|
|
21
|
+
return undefined;
|
|
22
|
+
const dur = now() - startMs;
|
|
23
|
+
if (!isValidDuration(dur))
|
|
24
|
+
return undefined;
|
|
25
|
+
return `total;dur=${dur.toFixed(2)}`;
|
|
26
|
+
}
|
|
27
|
+
export class RequestTimings {
|
|
28
|
+
phases = new Map();
|
|
29
|
+
now;
|
|
30
|
+
constructor(now = Date.now) {
|
|
31
|
+
this.now = now;
|
|
32
|
+
}
|
|
33
|
+
record(name, durationMs, desc) {
|
|
34
|
+
if (!isValidName(name) || !isValidDuration(durationMs))
|
|
35
|
+
return;
|
|
36
|
+
const cleanDesc = desc === undefined ? undefined : sanitizeDesc(desc);
|
|
37
|
+
const prev = this.phases.get(name);
|
|
38
|
+
if (prev) {
|
|
39
|
+
prev.dur += durationMs;
|
|
40
|
+
if (prev.desc === undefined && cleanDesc !== undefined)
|
|
41
|
+
prev.desc = cleanDesc;
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
this.phases.set(name, cleanDesc === undefined ? { dur: durationMs } : { dur: durationMs, desc: cleanDesc });
|
|
45
|
+
}
|
|
46
|
+
async timed(name, desc, fn) {
|
|
47
|
+
const started = this.now();
|
|
48
|
+
try {
|
|
49
|
+
return await fn();
|
|
50
|
+
}
|
|
51
|
+
finally {
|
|
52
|
+
this.record(name, this.now() - started, desc);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
measure(name, fn) {
|
|
56
|
+
return this.timed(name, undefined, fn);
|
|
57
|
+
}
|
|
58
|
+
measureGroup(group, fn) {
|
|
59
|
+
return this.timed(group, "group", fn);
|
|
60
|
+
}
|
|
61
|
+
measureInGroup(group, name, fn) {
|
|
62
|
+
return this.timed(name, `par:${group}`, fn);
|
|
63
|
+
}
|
|
64
|
+
measureBackground(name, fn) {
|
|
65
|
+
return this.timed(name, "bg", fn);
|
|
66
|
+
}
|
|
67
|
+
measureCpu(name, fn) {
|
|
68
|
+
return this.timed(name, "cpu", fn);
|
|
69
|
+
}
|
|
70
|
+
serverTiming() {
|
|
71
|
+
if (this.phases.size === 0)
|
|
72
|
+
return undefined;
|
|
73
|
+
const parts = [];
|
|
74
|
+
for (const [name, phase] of this.phases) {
|
|
75
|
+
const base = `${name};dur=${phase.dur.toFixed(2)}`;
|
|
76
|
+
parts.push(phase.desc === undefined ? base : `${base};desc="${phase.desc}"`);
|
|
77
|
+
}
|
|
78
|
+
parts.push(`${TIMING_LEGEND_METRIC};desc="${TIMING_LEGEND_DESC}"`);
|
|
79
|
+
return parts.join(", ");
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=request-timings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-timings.js","sourceRoot":"","sources":["../jsr/request-timings.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,25 @@
|
|
|
1
1
|
import { HttpHeader, Lazy, Result } from "@adviser/cement";
|
|
2
2
|
import { HttpResponseBodyType, HttpResponseJsonType } from "@vibes.diy/api-types";
|
|
3
3
|
import { type } from "arktype";
|
|
4
|
+
import { serverTimingTotal } from "./request-timings.js";
|
|
5
|
+
function totalMetric(ctx) {
|
|
6
|
+
return serverTimingTotal(ctx.stats?.request?.startTime);
|
|
7
|
+
}
|
|
8
|
+
function mergeServerTiming(ctx, handlerValues) {
|
|
9
|
+
const parts = [totalMetric(ctx), ...handlerValues].filter((v) => !!v);
|
|
10
|
+
return parts.length > 0 ? parts.join(", ") : undefined;
|
|
11
|
+
}
|
|
12
|
+
function collectHeaders(headers, name) {
|
|
13
|
+
if (!headers)
|
|
14
|
+
return [];
|
|
15
|
+
const lower = name.toLowerCase();
|
|
16
|
+
const found = [];
|
|
17
|
+
for (const [k, v] of Object.entries(headers)) {
|
|
18
|
+
if (k.toLowerCase() === lower && v.trim().length > 0)
|
|
19
|
+
found.push(v.trim());
|
|
20
|
+
}
|
|
21
|
+
return found;
|
|
22
|
+
}
|
|
4
23
|
const defaultHttpHeaders = Lazy(() => HttpHeader.from({
|
|
5
24
|
"Access-Control-Allow-Origin": "*",
|
|
6
25
|
"Access-Control-Allow-Methods": "GET,POST,OPTIONS,PUT,DELETE",
|
|
@@ -49,23 +68,28 @@ export class HTTPSendProvider {
|
|
|
49
68
|
return Result.Err("response does not match expected types");
|
|
50
69
|
}
|
|
51
70
|
if (!(json instanceof type.errors)) {
|
|
71
|
+
const jsonServerTiming = totalMetric(ctx);
|
|
52
72
|
this.response = new Response(JSON.stringify(json.json), {
|
|
53
73
|
status: json.status,
|
|
54
74
|
headers: DefaultHttpHeaders({
|
|
55
75
|
"Content-Type": "application/json",
|
|
56
|
-
"Server-Timing":
|
|
76
|
+
...(jsonServerTiming ? { "Server-Timing": jsonServerTiming } : {}),
|
|
57
77
|
}),
|
|
58
78
|
});
|
|
59
79
|
ctx.send.send(ctx, this.response);
|
|
60
80
|
return Result.Ok(json);
|
|
61
81
|
}
|
|
62
82
|
if (!(body instanceof type.errors)) {
|
|
83
|
+
const bodyHeaders = body.headers;
|
|
84
|
+
const bodyServerTiming = mergeServerTiming(ctx, collectHeaders(bodyHeaders, "Server-Timing"));
|
|
63
85
|
const headers = new Headers(DefaultHttpHeaders({
|
|
64
|
-
"Content-Type":
|
|
65
|
-
"Server-Timing":
|
|
86
|
+
"Content-Type": bodyHeaders?.["Content-Type"] ?? "application/octet-stream",
|
|
87
|
+
...(bodyServerTiming ? { "Server-Timing": bodyServerTiming } : {}),
|
|
66
88
|
}));
|
|
67
|
-
if (
|
|
68
|
-
for (const [k, v] of Object.entries(
|
|
89
|
+
if (bodyHeaders) {
|
|
90
|
+
for (const [k, v] of Object.entries(bodyHeaders)) {
|
|
91
|
+
if (k.toLowerCase() === "server-timing")
|
|
92
|
+
continue;
|
|
69
93
|
headers.set(k, v);
|
|
70
94
|
}
|
|
71
95
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svc-http-send-provider.js","sourceRoot":"","sources":["../jsr/svc-http-send-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4D,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACrH,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"svc-http-send-provider.js","sourceRoot":"","sources":["../jsr/svc-http-send-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,8 @@ export declare class WSSendProvider implements EventoSendProvider<W3CWebSocketEv
|
|
|
9
9
|
readonly ende: JSONEnDecoder;
|
|
10
10
|
readonly chatIds: Map<string, ChatIdCtx>;
|
|
11
11
|
readonly subscribedDocKeys: Set<string>;
|
|
12
|
+
readonly interestKeyLeases: Map<string, number>;
|
|
13
|
+
interestHighWaterMark: number;
|
|
12
14
|
readonly subscribedRequestGrantKeys: Set<string>;
|
|
13
15
|
readonly subscribedSocialKeys: Set<string>;
|
|
14
16
|
readonly subscribedViewerGrantKeys: Set<string>;
|
package/svc-ws-send-provider.js
CHANGED
|
@@ -6,6 +6,8 @@ export class WSSendProvider {
|
|
|
6
6
|
ende;
|
|
7
7
|
chatIds = new Map();
|
|
8
8
|
subscribedDocKeys = new Set();
|
|
9
|
+
interestKeyLeases = new Map();
|
|
10
|
+
interestHighWaterMark = 0;
|
|
9
11
|
subscribedRequestGrantKeys = new Set();
|
|
10
12
|
subscribedSocialKeys = new Set();
|
|
11
13
|
subscribedViewerGrantKeys = new Set();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svc-ws-send-provider.js","sourceRoot":"","sources":["../jsr/svc-ws-send-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuD,sBAAsB,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACtH,OAAO,EAAE,OAAO,EAA8B,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAO/B,MAAM,OAAO,cAAc;IAChB,EAAE,CAAY;IACd,IAAI,CAAgB;IACpB,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAC;IAQvC,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"svc-ws-send-provider.js","sourceRoot":"","sources":["../jsr/svc-ws-send-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuD,sBAAsB,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACtH,OAAO,EAAE,OAAO,EAA8B,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAO/B,MAAM,OAAO,cAAc;IAChB,EAAE,CAAY;IACd,IAAI,CAAgB;IACpB,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAC;IAQvC,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;IAYtC,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAGvD,qBAAqB,GAAG,CAAC,CAAC;IAGjB,0BAA0B,GAAG,IAAI,GAAG,EAAU,CAAC;IAG/C,oBAAoB,GAAG,IAAI,GAAG,EAAU,CAAC;IAGzC,yBAAyB,GAAG,IAAI,GAAG,EAAU,CAAC;IAIvD,iBAAiB,GAAuB,SAAS,CAAC;IAQlD,mBAAmB,GAAuB,SAAS,CAAC;IACpD,SAAS,GAAG,KAAK,CAAC;IAKT,MAAM,GAAW,MAAM,CAAC,UAAU,EAAE,CAAC;IAC9C,YAAY,EAAa,EAAE,IAAoB;QAC7C,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,sBAAsB,EAAE,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,IAAI,CAAI,GAA0D,EAAE,GAAY;QACpF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,GAAG,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC;YACzF,OAAO,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,OAAgB,CAAC;QACrB,IAAI,MAAM,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO,GAAG;gBACR,GAAG,EAAE,GAAG,CAAC,GAAG;gBACZ,GAAG,EAAE,GAAG,CAAC,GAAG;gBACZ,GAAG,EAAE,GAAG,CAAC,GAAG;gBACZ,GAAG,EAAE,EAAE;gBACP,OAAO,EAAE,GAAG;aACb,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,MAAM,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC,EAAE,CAAC,OAAuB,CAAC,CAAC;IAC5C,CAAC;CACF"}
|