@plurnk/plurnk-service 1.3.2 → 1.3.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/.env.defaults +16 -3
- package/INSTALL.md +7 -3
- package/README.md +9 -0
- package/SPEC.md +82 -34
- package/dist/build-info.json +1 -1
- package/dist/content/edit-receipt.d.ts +35 -0
- package/dist/content/edit-receipt.d.ts.map +1 -0
- package/dist/content/edit-receipt.js +158 -0
- package/dist/content/edit-receipt.js.map +1 -0
- package/dist/content/index.d.ts +2 -0
- package/dist/content/index.d.ts.map +1 -1
- package/dist/content/index.js +1 -0
- package/dist/content/index.js.map +1 -1
- package/dist/content/line-marker.d.ts +3 -1
- package/dist/content/line-marker.d.ts.map +1 -1
- package/dist/content/line-marker.js +2 -0
- package/dist/content/line-marker.js.map +1 -1
- package/dist/core/ChannelWrite.d.ts +2 -1
- package/dist/core/ChannelWrite.d.ts.map +1 -1
- package/dist/core/ChannelWrite.js +7 -6
- package/dist/core/ChannelWrite.js.map +1 -1
- package/dist/core/CoreSchemeServices.d.ts +31 -0
- package/dist/core/CoreSchemeServices.d.ts.map +1 -0
- package/dist/core/CoreSchemeServices.js +37 -0
- package/dist/core/CoreSchemeServices.js.map +1 -0
- package/dist/core/Db.d.ts +2 -13
- package/dist/core/Db.d.ts.map +1 -1
- package/dist/core/Db.js +0 -5
- package/dist/core/Db.js.map +1 -1
- package/dist/core/Dispatcher.d.ts +7 -3
- package/dist/core/Dispatcher.d.ts.map +1 -1
- package/dist/core/Dispatcher.js +266 -70
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/Engine.d.ts +4 -2
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +55 -37
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/Engine.sql +26 -40
- package/dist/core/LiveSubscriptions.d.ts +8 -0
- package/dist/core/LiveSubscriptions.d.ts.map +1 -0
- package/dist/core/LiveSubscriptions.js +32 -0
- package/dist/core/LiveSubscriptions.js.map +1 -0
- package/dist/core/LoopLifecycle.d.ts +20 -0
- package/dist/core/LoopLifecycle.d.ts.map +1 -0
- package/dist/core/LoopLifecycle.js +56 -0
- package/dist/core/LoopLifecycle.js.map +1 -0
- package/dist/core/LoopLifecycle.sql +60 -0
- package/dist/core/Owner.d.ts.map +1 -1
- package/dist/core/Owner.js.map +1 -1
- package/dist/core/PacketBuilder.d.ts.map +1 -1
- package/dist/core/PacketBuilder.js.map +1 -1
- package/dist/core/ProposalLifecycle.d.ts +4 -1
- package/dist/core/ProposalLifecycle.d.ts.map +1 -1
- package/dist/core/ProposalLifecycle.js +12 -6
- package/dist/core/ProposalLifecycle.js.map +1 -1
- package/dist/core/ProviderInstantiate.d.ts.map +1 -1
- package/dist/core/ProviderInstantiate.js +10 -22
- package/dist/core/ProviderInstantiate.js.map +1 -1
- package/dist/core/SchemeRegistry.d.ts +3 -0
- package/dist/core/SchemeRegistry.d.ts.map +1 -1
- package/dist/core/SchemeRegistry.js +23 -0
- package/dist/core/SchemeRegistry.js.map +1 -1
- package/dist/core/TelemetryChannel.d.ts.map +1 -1
- package/dist/core/TelemetryChannel.js.map +1 -1
- package/dist/core/caps/CapsResolve.d.ts.map +1 -1
- package/dist/core/caps/CapsResolve.js.map +1 -1
- package/dist/core/caps/DbChannelCaps.d.ts.map +1 -1
- package/dist/core/caps/DbChannelCaps.js.map +1 -1
- package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
- package/dist/core/caps/DbEntryCaps.js +8 -4
- package/dist/core/caps/DbEntryCaps.js.map +1 -1
- package/dist/core/caps/DbSubscriptionCaps.d.ts +3 -2
- package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
- package/dist/core/caps/DbSubscriptionCaps.js +20 -9
- package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
- package/dist/core/caps/DbTagCaps.d.ts.map +1 -1
- package/dist/core/caps/DbTagCaps.js.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.d.ts +3 -16
- package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.js +4 -23
- package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
- package/dist/core/fork.d.ts.map +1 -1
- package/dist/core/fork.js.map +1 -1
- package/dist/core/git-iso.d.ts +3 -0
- package/dist/core/git-iso.d.ts.map +1 -1
- package/dist/core/git-iso.js +35 -4
- package/dist/core/git-iso.js.map +1 -1
- package/dist/core/git-membership.d.ts.map +1 -1
- package/dist/core/git-membership.js.map +1 -1
- package/dist/core/git-state.d.ts.map +1 -1
- package/dist/core/git-state.js +3 -6
- package/dist/core/git-state.js.map +1 -1
- package/dist/core/packet-wire.d.ts.map +1 -1
- package/dist/core/packet-wire.js +37 -11
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/core/run-ops.sql +1 -1
- package/dist/core/scheme-types.d.ts.map +1 -1
- package/dist/core/scheme-types.js +3 -4
- package/dist/core/scheme-types.js.map +1 -1
- package/dist/core/turn-scheduler.d.ts +3 -0
- package/dist/core/turn-scheduler.d.ts.map +1 -0
- package/dist/core/turn-scheduler.js +20 -0
- package/dist/core/turn-scheduler.js.map +1 -0
- package/dist/core/worker-cap.d.ts.map +1 -1
- package/dist/core/worker-cap.js.map +1 -1
- package/dist/core/workspace-settings.d.ts.map +1 -1
- package/dist/core/workspace-settings.js.map +1 -1
- package/dist/core/world-state.d.ts.map +1 -1
- package/dist/core/world-state.js.map +1 -1
- package/dist/digest/Digest.d.ts.map +1 -1
- package/dist/digest/Digest.js +4 -6
- package/dist/digest/Digest.js.map +1 -1
- package/dist/schemes/Exec.d.ts +11 -10
- package/dist/schemes/Exec.d.ts.map +1 -1
- package/dist/schemes/Exec.js +45 -38
- package/dist/schemes/Exec.js.map +1 -1
- package/dist/schemes/ExecOutputScheme.d.ts +8 -6
- package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
- package/dist/schemes/ExecOutputScheme.js +11 -6
- package/dist/schemes/ExecOutputScheme.js.map +1 -1
- package/dist/schemes/File.d.ts +16 -9
- package/dist/schemes/File.d.ts.map +1 -1
- package/dist/schemes/File.js +75 -26
- package/dist/schemes/File.js.map +1 -1
- package/dist/schemes/Log.d.ts +9 -7
- package/dist/schemes/Log.d.ts.map +1 -1
- package/dist/schemes/Log.js +21 -9
- package/dist/schemes/Log.js.map +1 -1
- package/dist/schemes/Prompt.d.ts +1 -4
- package/dist/schemes/Prompt.d.ts.map +1 -1
- package/dist/schemes/Prompt.js +2 -7
- package/dist/schemes/Prompt.js.map +1 -1
- package/dist/schemes/Skill.d.ts +1 -5
- package/dist/schemes/Skill.d.ts.map +1 -1
- package/dist/schemes/Skill.js +4 -11
- package/dist/schemes/Skill.js.map +1 -1
- package/dist/schemes/Worker.d.ts +15 -10
- package/dist/schemes/Worker.d.ts.map +1 -1
- package/dist/schemes/Worker.js +40 -29
- package/dist/schemes/Worker.js.map +1 -1
- package/dist/schemes/_entry-crud.d.ts.map +1 -1
- package/dist/schemes/_entry-crud.js.map +1 -1
- package/dist/schemes/_entry-find.d.ts +8 -8
- package/dist/schemes/_entry-find.d.ts.map +1 -1
- package/dist/schemes/_entry-find.js +76 -23
- package/dist/schemes/_entry-find.js.map +1 -1
- package/dist/schemes/_entry-find.sql +20 -0
- package/dist/schemes/_entry-graph.d.ts.map +1 -1
- package/dist/schemes/_entry-graph.js.map +1 -1
- package/dist/schemes/_entry-manifest.d.ts.map +1 -1
- package/dist/schemes/_entry-manifest.js.map +1 -1
- package/dist/schemes/_entry-ops.d.ts +3 -2
- package/dist/schemes/_entry-ops.d.ts.map +1 -1
- package/dist/schemes/_entry-ops.js +41 -13
- package/dist/schemes/_entry-ops.js.map +1 -1
- package/dist/schemes/_entry-semantic.d.ts +2 -1
- package/dist/schemes/_entry-semantic.d.ts.map +1 -1
- package/dist/schemes/_entry-semantic.js +15 -4
- package/dist/schemes/_entry-semantic.js.map +1 -1
- package/dist/schemes/_entry-semantic.sql +3 -0
- package/dist/schemes/_entry-send.d.ts.map +1 -1
- package/dist/schemes/_entry-send.js.map +1 -1
- package/dist/server/Daemon.d.ts +9 -1
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +161 -74
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/DaemonLock.d.ts +7 -0
- package/dist/server/DaemonLock.d.ts.map +1 -0
- package/dist/server/DaemonLock.js +85 -0
- package/dist/server/DaemonLock.js.map +1 -0
- package/dist/server/clientTurn.d.ts.map +1 -1
- package/dist/server/clientTurn.js +2 -3
- package/dist/server/clientTurn.js.map +1 -1
- package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
- package/dist/server/dispatch-as-plurnk.js +20 -2
- package/dist/server/dispatch-as-plurnk.js.map +1 -1
- package/dist/server/drain.sql +4 -8
- package/dist/server/envelope.d.ts.map +1 -1
- package/dist/server/envelope.js +2 -3
- package/dist/server/envelope.js.map +1 -1
- package/dist/server/lifecycle-recovery.sql +68 -0
- package/dist/server/logEntry.d.ts.map +1 -1
- package/dist/server/logEntry.js.map +1 -1
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +61 -40
- package/dist/service.js.map +1 -1
- package/migrations/0000-00-00.01_schema.sql +5 -5
- package/package.json +21 -18
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { LineMarker } from "@plurnk/plurnk-grammar";
|
|
2
|
+
export interface ReceiptEdit {
|
|
3
|
+
readonly marker: LineMarker;
|
|
4
|
+
readonly body: string;
|
|
5
|
+
}
|
|
6
|
+
interface ReceiptOptions {
|
|
7
|
+
readonly unit?: "lines" | "items";
|
|
8
|
+
}
|
|
9
|
+
export interface EditEffectReceipt {
|
|
10
|
+
readonly requested: string;
|
|
11
|
+
readonly source: string;
|
|
12
|
+
readonly result: string;
|
|
13
|
+
readonly removed: number;
|
|
14
|
+
readonly inserted: number;
|
|
15
|
+
readonly context: string;
|
|
16
|
+
}
|
|
17
|
+
export interface EditBatchReceipt {
|
|
18
|
+
readonly revision: string;
|
|
19
|
+
readonly unit: "lines" | "items";
|
|
20
|
+
readonly before: number;
|
|
21
|
+
readonly after: number;
|
|
22
|
+
readonly effects: readonly EditEffectReceipt[];
|
|
23
|
+
}
|
|
24
|
+
export interface EditReceipt {
|
|
25
|
+
readonly revision: string;
|
|
26
|
+
readonly unit: "lines" | "items";
|
|
27
|
+
readonly before: number;
|
|
28
|
+
readonly after: number;
|
|
29
|
+
readonly effect: EditEffectReceipt;
|
|
30
|
+
}
|
|
31
|
+
export declare const editReceiptUnit: (structuralJson: boolean, original: string, updated: string) => "lines" | "items";
|
|
32
|
+
export declare const projectEditReceipt: (receipt: EditBatchReceipt, index: number) => EditReceipt;
|
|
33
|
+
export declare const editReceipt: (original: string, updated: string, edits: readonly ReceiptEdit[], options?: ReceiptOptions) => EditBatchReceipt;
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=edit-receipt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit-receipt.d.ts","sourceRoot":"","sources":["../../src/content/edit-receipt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAED,UAAU,cAAc;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAClD;AAED,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;CACtC;AAED,eAAO,MAAM,eAAe,mBACR,OAAO,YACb,MAAM,WACP,MAAM,KAChB,OAAO,GAAG,OASZ,CAAC;AAEF,eAAO,MAAM,kBAAkB,YAAa,gBAAgB,SAAS,MAAM,KAAG,WAU7E,CAAC;AA4BF,eAAO,MAAM,WAAW,aACV,MAAM,WACP,MAAM,SACR,SAAS,WAAW,EAAE,YACpB,cAAc,KACxB,gBAqGF,CAAC"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
export const editReceiptUnit = (structuralJson, original, updated) => {
|
|
3
|
+
if (!structuralJson)
|
|
4
|
+
return "lines";
|
|
5
|
+
try {
|
|
6
|
+
if (original.length > 0)
|
|
7
|
+
JSON.parse(original);
|
|
8
|
+
if (updated.length > 0)
|
|
9
|
+
JSON.parse(updated);
|
|
10
|
+
return "items";
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
return "lines";
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
export const projectEditReceipt = (receipt, index) => {
|
|
17
|
+
const effect = receipt.effects[index];
|
|
18
|
+
if (effect === undefined)
|
|
19
|
+
throw new Error(`EDIT receipt has no effect at index ${index}`);
|
|
20
|
+
return {
|
|
21
|
+
revision: receipt.revision,
|
|
22
|
+
unit: receipt.unit,
|
|
23
|
+
before: receipt.before,
|
|
24
|
+
after: receipt.after,
|
|
25
|
+
effect,
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
const splitLines = (content) => {
|
|
29
|
+
if (content.length === 0)
|
|
30
|
+
return [];
|
|
31
|
+
const lines = content.split("\n");
|
|
32
|
+
if (content.endsWith("\n"))
|
|
33
|
+
lines.pop();
|
|
34
|
+
return lines;
|
|
35
|
+
};
|
|
36
|
+
const markerText = ({ marks }) => `<${marks.join(",")}>`;
|
|
37
|
+
const sourceRange = (marker, total) => {
|
|
38
|
+
const first = marker.marks[0];
|
|
39
|
+
const last = marker.marks[1];
|
|
40
|
+
if (last !== undefined) {
|
|
41
|
+
const start = first === 0 ? 1 : first;
|
|
42
|
+
const end = last === -1 ? total : last;
|
|
43
|
+
return { start, end, removed: Math.max(0, end - start + 1) };
|
|
44
|
+
}
|
|
45
|
+
if (first === 0)
|
|
46
|
+
return { start: 1, end: 0, removed: 0 };
|
|
47
|
+
if (first === -1)
|
|
48
|
+
return { start: total + 1, end: total, removed: 0 };
|
|
49
|
+
if (!Number.isInteger(first)) {
|
|
50
|
+
const start = Math.floor(first) + 1;
|
|
51
|
+
return { start, end: start - 1, removed: 0 };
|
|
52
|
+
}
|
|
53
|
+
return { start: first, end: first, removed: 1 };
|
|
54
|
+
};
|
|
55
|
+
export const editReceipt = (original, updated, edits, options = {}) => {
|
|
56
|
+
const { unit = "lines" } = options;
|
|
57
|
+
const before = splitLines(original);
|
|
58
|
+
const after = splitLines(updated);
|
|
59
|
+
let sourceShape = "scalar";
|
|
60
|
+
const itemCount = (content) => {
|
|
61
|
+
if (content.length === 0)
|
|
62
|
+
return 0;
|
|
63
|
+
const parsed = JSON.parse(content);
|
|
64
|
+
if (Array.isArray(parsed))
|
|
65
|
+
return parsed.length;
|
|
66
|
+
if (parsed !== null && typeof parsed === "object")
|
|
67
|
+
return Object.keys(parsed).length;
|
|
68
|
+
return 1;
|
|
69
|
+
};
|
|
70
|
+
if (unit === "items" && (original.length > 0 || updated.length > 0)) {
|
|
71
|
+
const parsed = JSON.parse(original.length > 0 ? original : updated);
|
|
72
|
+
sourceShape = Array.isArray(parsed) ? "array" : parsed !== null && typeof parsed === "object" ? "object" : "scalar";
|
|
73
|
+
}
|
|
74
|
+
const countBody = (body) => {
|
|
75
|
+
if (unit === "lines")
|
|
76
|
+
return splitLines(body).length;
|
|
77
|
+
if (body.length === 0)
|
|
78
|
+
return 0;
|
|
79
|
+
const parsed = JSON.parse(body);
|
|
80
|
+
if (sourceShape === "array")
|
|
81
|
+
return Array.isArray(parsed) ? parsed.length : 1;
|
|
82
|
+
if (sourceShape === "object") {
|
|
83
|
+
const values = Array.isArray(parsed) ? parsed : [parsed];
|
|
84
|
+
return values.reduce((count, value) => count + (value !== null && typeof value === "object" && !Array.isArray(value) ? Object.keys(value).length : 0), 0);
|
|
85
|
+
}
|
|
86
|
+
return Array.isArray(parsed) ? parsed.length : 1;
|
|
87
|
+
};
|
|
88
|
+
const beforeExtent = unit === "lines" ? before.length : itemCount(original);
|
|
89
|
+
const afterExtent = unit === "lines" ? after.length : itemCount(updated);
|
|
90
|
+
let offset = 0;
|
|
91
|
+
const effectsByIndex = new Array(edits.length);
|
|
92
|
+
edits
|
|
93
|
+
.map((edit, index) => ({ edit, index, source: sourceRange(edit.marker, beforeExtent) }))
|
|
94
|
+
.sort((a, b) => a.source.start - b.source.start)
|
|
95
|
+
.forEach(({ edit, index, source }) => {
|
|
96
|
+
const inserted = countBody(edit.body);
|
|
97
|
+
const resultStart = source.start + offset;
|
|
98
|
+
const resultEnd = inserted === 0 ? resultStart - 1 : resultStart + inserted - 1;
|
|
99
|
+
offset += inserted - source.removed;
|
|
100
|
+
effectsByIndex[index] = {
|
|
101
|
+
marker: markerText(edit.marker),
|
|
102
|
+
source,
|
|
103
|
+
inserted,
|
|
104
|
+
resultStart,
|
|
105
|
+
resultEnd,
|
|
106
|
+
};
|
|
107
|
+
});
|
|
108
|
+
const effects = effectsByIndex.map((effect, index) => {
|
|
109
|
+
if (effect === undefined)
|
|
110
|
+
throw new Error(`EDIT receipt calculation omitted effect ${index}`);
|
|
111
|
+
return effect;
|
|
112
|
+
});
|
|
113
|
+
const joinRadiusRaw = process.env.PLURNK_SERVICE_EDIT_RECEIPT_CONTEXT_LINES;
|
|
114
|
+
const joinRadius = Number(joinRadiusRaw);
|
|
115
|
+
if (!Number.isSafeInteger(joinRadius) || joinRadius < 0) {
|
|
116
|
+
throw new Error(`PLURNK_SERVICE_EDIT_RECEIPT_CONTEXT_LINES must be a non-negative safe integer, got ${JSON.stringify(joinRadiusRaw)}`);
|
|
117
|
+
}
|
|
118
|
+
const contextItems = unit === "lines"
|
|
119
|
+
? after
|
|
120
|
+
: (() => {
|
|
121
|
+
if (updated.length === 0)
|
|
122
|
+
return [];
|
|
123
|
+
const parsed = JSON.parse(updated);
|
|
124
|
+
if (Array.isArray(parsed))
|
|
125
|
+
return parsed.map((item) => JSON.stringify(item));
|
|
126
|
+
if (parsed !== null && typeof parsed === "object")
|
|
127
|
+
return Object.entries(parsed).map(([key, value]) => JSON.stringify({ [key]: value }));
|
|
128
|
+
return [JSON.stringify(parsed)];
|
|
129
|
+
})();
|
|
130
|
+
const withContext = effects.map((effect) => {
|
|
131
|
+
const visible = new Set();
|
|
132
|
+
const join = Math.min(Math.max(effect.resultStart, 1), Math.max(contextItems.length, 1));
|
|
133
|
+
const end = Math.max(join, effect.resultEnd);
|
|
134
|
+
for (let line = Math.max(1, join - joinRadius); line <= Math.min(contextItems.length, end + joinRadius); line += 1) {
|
|
135
|
+
visible.add(line);
|
|
136
|
+
}
|
|
137
|
+
const contextRows = [...visible].sort((a, b) => a - b).map((line) => `${line}:${contextItems[line - 1]}`);
|
|
138
|
+
const sourceText = effect.source.removed === 0 ? `${effect.source.start}^` : effect.source.start === effect.source.end ? `${effect.source.start}` : `${effect.source.start}-${effect.source.end}`;
|
|
139
|
+
const resultText = effect.resultEnd < effect.resultStart ? `${effect.resultStart}^` : effect.resultStart === effect.resultEnd ? `${effect.resultStart}` : `${effect.resultStart}-${effect.resultEnd}`;
|
|
140
|
+
return {
|
|
141
|
+
requested: effect.marker,
|
|
142
|
+
source: sourceText,
|
|
143
|
+
result: resultText,
|
|
144
|
+
removed: effect.source.removed,
|
|
145
|
+
inserted: effect.inserted,
|
|
146
|
+
context: contextRows.join("\n"),
|
|
147
|
+
};
|
|
148
|
+
});
|
|
149
|
+
const revision = createHash("sha256").update(updated).digest("hex");
|
|
150
|
+
return {
|
|
151
|
+
revision,
|
|
152
|
+
unit,
|
|
153
|
+
before: beforeExtent,
|
|
154
|
+
after: afterExtent,
|
|
155
|
+
effects: withContext,
|
|
156
|
+
};
|
|
157
|
+
};
|
|
158
|
+
//# sourceMappingURL=edit-receipt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit-receipt.js","sourceRoot":"","sources":["../../src/content/edit-receipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAqCzC,MAAM,CAAC,MAAM,eAAe,GAAG,CAC3B,cAAuB,EACvB,QAAgB,EAChB,OAAe,EACE,EAAE;IACnB,IAAI,CAAC,cAAc;QAAE,OAAO,OAAO,CAAC;IACpC,IAAI,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,OAAO,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,OAAO,CAAC;IACnB,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAyB,EAAE,KAAa,EAAe,EAAE;IACxF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtC,IAAI,MAAM,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,EAAE,CAAC,CAAC;IAC1F,OAAO;QACH,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM;KACT,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,OAAe,EAAY,EAAE;IAC7C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IACxC,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,EAAc,EAAU,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAE7E,MAAM,WAAW,GAAG,CAAC,MAAkB,EAAE,KAAa,EAAmD,EAAE;IACvG,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACvC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACzD,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACtE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACjD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AACpD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CACvB,QAAgB,EAChB,OAAe,EACf,KAA6B,EAC7B,OAAO,GAAmB,EAAE,EACZ,EAAE;IAClB,MAAM,EAAE,IAAI,GAAG,OAAO,EAAE,GAAG,OAAO,CAAC;IACnC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,WAAW,GAAkC,QAAQ,CAAC;IAC1D,MAAM,SAAS,GAAG,CAAC,OAAe,EAAU,EAAE;QAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;QAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC,MAAM,CAAC;QAChD,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;QACrF,OAAO,CAAC,CAAC;IACb,CAAC,CAAC;IACF,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAY,CAAC;QAC/E,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;IACxH,CAAC;IACD,MAAM,SAAS,GAAG,CAAC,IAAY,EAAU,EAAE;QACvC,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QACrD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;QAC3C,IAAI,WAAW,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACzD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAClC,KAAK,GAAG,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3H,CAAC;QACD,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC5E,MAAM,WAAW,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACzE,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,cAAc,GAMH,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzC,KAAK;SACA,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;SACvF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC/C,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QACjC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC;QAC1C,MAAM,SAAS,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,QAAQ,GAAG,CAAC,CAAC;QAChF,MAAM,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QACpC,cAAc,CAAC,KAAK,CAAC,GAAG;YACpB,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/B,MAAM;YACN,QAAQ;YACR,WAAW;YACX,SAAS;SACZ,CAAC;IACN,CAAC,CAAC,CAAC;IACP,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACjD,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,KAAK,EAAE,CAAC,CAAC;QAC9F,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC;IAC5E,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,sFAAsF,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAC3I,CAAC;IACD,MAAM,YAAY,GAAG,IAAI,KAAK,OAAO;QACjC,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,CAAC,GAAG,EAAE;YACJ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;YAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7E,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YACzI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACvC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QACzF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAC7C,KAAK,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,UAAU,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,UAAU,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;YACjH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;QACD,MAAM,WAAW,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1G,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAClM,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACtM,OAAO;YACH,SAAS,EAAE,MAAM,CAAC,MAAM;YACxB,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;YAC9B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;SAClC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACpE,OAAO;QACH,QAAQ;QACR,IAAI;QACJ,MAAM,EAAE,YAAY;QACpB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,WAAW;KACvB,CAAC;AACN,CAAC,CAAC"}
|
package/dist/content/index.d.ts
CHANGED
|
@@ -7,4 +7,6 @@ export type { MatchResult } from "./matcher.ts";
|
|
|
7
7
|
export { default as ReadResolve } from "./read-resolve.ts";
|
|
8
8
|
export type { ReadSliceResult } from "./read-resolve.ts";
|
|
9
9
|
export { editedSpan } from "./edited-span.ts";
|
|
10
|
+
export { editReceipt, editReceiptUnit, projectEditReceipt } from "./edit-receipt.ts";
|
|
11
|
+
export type { EditBatchReceipt, EditEffectReceipt, EditReceipt, ReceiptEdit } from "./edit-receipt.ts";
|
|
10
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,UAAU,IAAI,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEnG,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,UAAU,IAAI,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEnG,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACrF,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/content/index.js
CHANGED
|
@@ -8,4 +8,5 @@ export { default as PathMimetype } from "./path-mimetype.js";
|
|
|
8
8
|
export { default as Matcher } from "./matcher.js";
|
|
9
9
|
export { default as ReadResolve } from "./read-resolve.js";
|
|
10
10
|
export { editedSpan } from "./edited-span.js";
|
|
11
|
+
export { editReceipt, editReceiptUnit, projectEditReceipt } from "./edit-receipt.js";
|
|
11
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,2EAA2E;AAC3E,qEAAqE;AACrE,wEAAwE;AAExE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAG5D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/content/index.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,2EAA2E;AAC3E,qEAAqE;AACrE,wEAAwE;AAExE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAG5D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { SliceResult, JsonSliceResult, LineEditResult as EditResult } from "@plurnk/plurnk-schemes";
|
|
1
|
+
import type { SliceResult, JsonSliceResult, LineEditResult as EditResult, BatchEdit } from "@plurnk/plurnk-schemes";
|
|
2
2
|
import type { LineMarker } from "@plurnk/plurnk-grammar";
|
|
3
3
|
export type { SliceResult, JsonSliceResult, EditResult };
|
|
4
4
|
export default class LineMarkerOps {
|
|
@@ -7,6 +7,8 @@ export default class LineMarkerOps {
|
|
|
7
7
|
static applyJsonItemEdit(content: string, marker: LineMarker, body: string): EditResult;
|
|
8
8
|
static sliceLinesRaw(content: string, marker: LineMarker): SliceResult;
|
|
9
9
|
static applyLineMarkerEdit(content: string, marker: LineMarker, body: string): EditResult;
|
|
10
|
+
static applyLineMarkerEditBatch(content: string, edits: readonly BatchEdit[]): EditResult;
|
|
11
|
+
static applyJsonItemEditBatch(content: string, edits: readonly BatchEdit[]): EditResult;
|
|
10
12
|
static firstLast(marker: LineMarker): {
|
|
11
13
|
first: number;
|
|
12
14
|
last: number | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line-marker.d.ts","sourceRoot":"","sources":["../../src/content/line-marker.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"line-marker.d.ts","sourceRoot":"","sources":["../../src/content/line-marker.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,IAAI,UAAU,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACpH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AAEzD,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,WAAW,CAA0C;IAC7G,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,eAAe,CAA8C;IACzH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAuD;IAC9I,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,WAAW,CAA6C;IACnH,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAyD;IAClJ,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,SAAS,EAAE,GAAG,UAAU,CAAuD;IAChJ,MAAM,CAAC,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,SAAS,EAAE,GAAG,UAAU,CAAqD;IAK5I,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAE3E;CACJ"}
|
|
@@ -11,6 +11,8 @@ export default class LineMarkerOps {
|
|
|
11
11
|
static applyJsonItemEdit(content, marker, body) { return Slicer.jsonItemEdit(content, marker, body); } // structural JSON item edit; malformed JSON → 400 — §json-edit-structural-json-edit §json-edit-json-parse-fail-400
|
|
12
12
|
static sliceLinesRaw(content, marker) { return Slicer.linesRaw(content, marker); }
|
|
13
13
|
static applyLineMarkerEdit(content, marker, body) { return Slicer.lineMarkerEdit(content, marker, body); }
|
|
14
|
+
static applyLineMarkerEditBatch(content, edits) { return Slicer.lineMarkerEditBatch(content, edits); }
|
|
15
|
+
static applyJsonItemEditBatch(content, edits) { return Slicer.jsonItemEditBatch(content, edits); }
|
|
14
16
|
// grammar 0.49+: the <L> parser carries raw numbers in `marks`; role-assignment is the
|
|
15
17
|
// consumer's. We read the first mark as start and the second as end (<N,M> range), null for
|
|
16
18
|
// a lone <N>. Used by the service's own range/threshold consumers (paginate, ~query top-K).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line-marker.js","sourceRoot":"","sources":["../../src/content/line-marker.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,4EAA4E;AAC5E,iFAAiF;AACjF,EAAE;AACF,6EAA6E;AAC7E,wDAAwD;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAMhD,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,UAAU,CAAC,OAAe,EAAE,MAAkB,IAAiB,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7G,MAAM,CAAC,cAAc,CAAC,OAAe,EAAE,MAAkB,IAAqB,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACzH,MAAM,CAAC,iBAAiB,CAAC,OAAe,EAAE,MAAkB,EAAE,IAAY,IAAgB,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,mHAAmH;IAClQ,MAAM,CAAC,aAAa,CAAC,OAAe,EAAE,MAAkB,IAAiB,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACnH,MAAM,CAAC,mBAAmB,CAAC,OAAe,EAAE,MAAkB,EAAE,IAAY,IAAgB,OAAO,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"line-marker.js","sourceRoot":"","sources":["../../src/content/line-marker.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,4EAA4E;AAC5E,iFAAiF;AACjF,EAAE;AACF,6EAA6E;AAC7E,wDAAwD;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAMhD,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,UAAU,CAAC,OAAe,EAAE,MAAkB,IAAiB,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7G,MAAM,CAAC,cAAc,CAAC,OAAe,EAAE,MAAkB,IAAqB,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACzH,MAAM,CAAC,iBAAiB,CAAC,OAAe,EAAE,MAAkB,EAAE,IAAY,IAAgB,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,mHAAmH;IAClQ,MAAM,CAAC,aAAa,CAAC,OAAe,EAAE,MAAkB,IAAiB,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACnH,MAAM,CAAC,mBAAmB,CAAC,OAAe,EAAE,MAAkB,EAAE,IAAY,IAAgB,OAAO,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAClJ,MAAM,CAAC,wBAAwB,CAAC,OAAe,EAAE,KAA2B,IAAgB,OAAO,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAChJ,MAAM,CAAC,sBAAsB,CAAC,OAAe,EAAE,KAA2B,IAAgB,OAAO,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAE5I,uFAAuF;IACvF,4FAA4F;IAC5F,4FAA4F;IAC5F,MAAM,CAAC,SAAS,CAAC,MAAkB;QAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9F,CAAC;CACJ"}
|
|
@@ -41,7 +41,8 @@ export type InjectWorkerNotify = (args: {
|
|
|
41
41
|
action: "injected_next_turn" | "enqueued_new_loop";
|
|
42
42
|
loopId: number;
|
|
43
43
|
}>;
|
|
44
|
-
export type CancelWorkerNotify = (workerId: number) =>
|
|
44
|
+
export type CancelWorkerNotify = (workerId: number, reason: string) => Promise<void>;
|
|
45
|
+
export type CancelDescendantsNotify = (workerId: number, reason: string) => Promise<void>;
|
|
45
46
|
export interface TelemetryEventPayload {
|
|
46
47
|
loopId: number;
|
|
47
48
|
event: object;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelWrite.d.ts","sourceRoot":"","sources":["../../src/core/ChannelWrite.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"ChannelWrite.d.ts","sourceRoot":"","sources":["../../src/core/ChannelWrite.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,8 +55,10 @@ export default class ChannelWrite {
|
|
|
55
55
|
return;
|
|
56
56
|
notify(meta.workspace_id, { entryId, target: ChannelWrite.#targetUri(meta.scheme, meta.pathname), channel, state: meta.state, contentLength: meta.contentLength, mimetype: meta.mimetype, ...coordinate });
|
|
57
57
|
}
|
|
58
|
-
// The
|
|
59
|
-
//
|
|
58
|
+
// The durable half of subscription ownership. Its row identifies what is
|
|
59
|
+
// open; the process-local LiveSubscriptions registry owns the exact callable
|
|
60
|
+
// used by SEND[499] / KILL.
|
|
61
|
+
// §subscriptions-subscription-registry-routes-cancellation
|
|
60
62
|
static async openSubscription(db, { workerId, entryId, scheme, handle, pollSeconds, turnScoped, publishedChannel }) {
|
|
61
63
|
const row = await ChannelWrite.#openSubStmt(db).get({
|
|
62
64
|
worker_id: workerId, entry_id: entryId, scheme, handle,
|
|
@@ -82,10 +84,9 @@ export default class ChannelWrite {
|
|
|
82
84
|
return row ?? null;
|
|
83
85
|
}
|
|
84
86
|
// The worker's still-open subscriptions — the registry-routed reap
|
|
85
|
-
// (§worker-lifecycle-total-reap). A cancel iterates these
|
|
86
|
-
//
|
|
87
|
-
//
|
|
88
|
-
// signal an optimization.
|
|
87
|
+
// (§worker-lifecycle-total-reap). A cancel iterates these durable identities
|
|
88
|
+
// and invokes each exact callable through LiveSubscriptions, so a
|
|
89
|
+
// backgrounded exec is reaped regardless of AbortSignal-listener timing.
|
|
89
90
|
static async findOpenSubscriptionsForWorker(db, workerId) {
|
|
90
91
|
return ChannelWrite.#openSubsForWorkerStmt(db).all({ worker_id: workerId });
|
|
91
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelWrite.js","sourceRoot":"","sources":["../../src/core/ChannelWrite.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sFAAsF;AACtF,EAAE;AACF,mFAAmF;AACnF,4FAA4F;AAC5F,8EAA8E;AAC9E,6EAA6E;AAC7E,gCAAgC;AAIhC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChannelWrite.js","sourceRoot":"","sources":["../../src/core/ChannelWrite.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { Db } from "./Db.ts";
|
|
2
|
+
import type { Mimetypes } from "@plurnk/plurnk-mimetypes";
|
|
3
|
+
import type ExecutorRegistry from "./ExecutorRegistry.ts";
|
|
4
|
+
import type { InjectWorkerNotify, StreamEventNotify, WakeWorkerNotify } from "./ChannelWrite.ts";
|
|
5
|
+
import type { TelemetryEvent } from "./results.ts";
|
|
6
|
+
import type { PlurnkSchemeContext } from "./scheme-types.ts";
|
|
7
|
+
import type { SchemeCtx } from "@plurnk/plurnk-schemes";
|
|
8
|
+
import type LiveSubscriptions from "./LiveSubscriptions.ts";
|
|
9
|
+
export interface CoreSchemeServices {
|
|
10
|
+
readonly db: Db;
|
|
11
|
+
readonly mimetypes: Mimetypes;
|
|
12
|
+
readonly executors: () => ExecutorRegistry | undefined;
|
|
13
|
+
readonly tokenize: (text: string) => number;
|
|
14
|
+
readonly streamEventNotify: StreamEventNotify | undefined;
|
|
15
|
+
readonly wakeWorkerNotify: WakeWorkerNotify | undefined;
|
|
16
|
+
readonly injectWorker: InjectWorkerNotify | undefined;
|
|
17
|
+
readonly pushTelemetry: (workspaceId: number, loopId: number, event: TelemetryEvent) => void;
|
|
18
|
+
readonly defaultChannelFor: (scheme: string | null) => string;
|
|
19
|
+
readonly liveSubscriptions: LiveSubscriptions;
|
|
20
|
+
}
|
|
21
|
+
export interface CoreSchemeAdapter {
|
|
22
|
+
bindCore(services: CoreSchemeServices): void;
|
|
23
|
+
}
|
|
24
|
+
export type CoreSchemeCallContext = SchemeCtx | PlurnkSchemeContext;
|
|
25
|
+
export declare abstract class CoreSchemeAdapterBase implements CoreSchemeAdapter {
|
|
26
|
+
#private;
|
|
27
|
+
bindCore(services: CoreSchemeServices): void;
|
|
28
|
+
protected coreContext(ctx: CoreSchemeCallContext): PlurnkSchemeContext;
|
|
29
|
+
protected liveSubscriptions(): LiveSubscriptions;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=CoreSchemeServices.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CoreSchemeServices.d.ts","sourceRoot":"","sources":["../../src/core/CoreSchemeServices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAC;AAE5D,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC;IAChB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,gBAAgB,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC1D,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACxD,QAAQ,CAAC,YAAY,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,aAAa,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAC7F,QAAQ,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,MAAM,CAAC;IAC9D,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;CACjD;AAED,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;CAChD;AAMD,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,mBAAmB,CAAC;AAEpE,8BAAsB,qBAAsB,YAAW,iBAAiB;;IAGpE,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAE3C;IAED,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,qBAAqB,GAAG,mBAAmB,CAqBrE;IAED,SAAS,CAAC,iBAAiB,IAAI,iBAAiB,CAI/C;CACJ"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export class CoreSchemeAdapterBase {
|
|
2
|
+
#services;
|
|
3
|
+
bindCore(services) {
|
|
4
|
+
this.#services = services;
|
|
5
|
+
}
|
|
6
|
+
coreContext(ctx) {
|
|
7
|
+
if ("db" in ctx)
|
|
8
|
+
return ctx;
|
|
9
|
+
const services = this.#services;
|
|
10
|
+
if (services === undefined)
|
|
11
|
+
throw new Error(`${this.constructor.name}: core services are not bound`);
|
|
12
|
+
return {
|
|
13
|
+
db: services.db,
|
|
14
|
+
workspaceId: ctx.workspaceId,
|
|
15
|
+
workerId: ctx.workerId,
|
|
16
|
+
loopId: ctx.loopId,
|
|
17
|
+
turnId: ctx.turnId,
|
|
18
|
+
writer: ctx.writer,
|
|
19
|
+
signal: ctx.signal,
|
|
20
|
+
streamEventNotify: services.streamEventNotify,
|
|
21
|
+
wakeWorkerNotify: services.wakeWorkerNotify,
|
|
22
|
+
injectWorker: services.injectWorker,
|
|
23
|
+
mimetypes: services.mimetypes,
|
|
24
|
+
executors: services.executors(),
|
|
25
|
+
tokenize: services.tokenize,
|
|
26
|
+
defaultChannelFor: services.defaultChannelFor,
|
|
27
|
+
pushTelemetry: (event) => services.pushTelemetry(ctx.workspaceId, ctx.loopId, event),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
liveSubscriptions() {
|
|
31
|
+
const services = this.#services;
|
|
32
|
+
if (services === undefined)
|
|
33
|
+
throw new Error(`${this.constructor.name}: core services are not bound`);
|
|
34
|
+
return services.liveSubscriptions;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=CoreSchemeServices.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CoreSchemeServices.js","sourceRoot":"","sources":["../../src/core/CoreSchemeServices.ts"],"names":[],"mappings":"AAgCA,MAAM,OAAgB,qBAAqB;IACvC,SAAS,CAAiC;IAE1C,QAAQ,CAAC,QAA4B;QACjC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAES,WAAW,CAAC,GAA0B;QAC5C,IAAI,IAAI,IAAI,GAAG;YAAE,OAAO,GAAG,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,QAAQ,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,+BAA+B,CAAC,CAAC;QACrG,OAAO;YACH,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE;YAC/B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;SACvF,CAAC;IACN,CAAC;IAES,iBAAiB;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,QAAQ,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,+BAA+B,CAAC,CAAC;QACrG,OAAO,QAAQ,CAAC,iBAAiB,CAAC;IACtC,CAAC;CACJ"}
|
package/dist/core/Db.d.ts
CHANGED
|
@@ -1,14 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
changes: number;
|
|
4
|
-
lastInsertRowid: number;
|
|
5
|
-
}>;
|
|
6
|
-
get<T = Record<string, unknown>>(params?: object): Promise<T | undefined>;
|
|
7
|
-
all<T = Record<string, unknown>>(params?: object): Promise<T[]>;
|
|
8
|
-
}
|
|
9
|
-
export type ExecMethod = (params?: object) => Promise<unknown>;
|
|
10
|
-
export type Db = {
|
|
11
|
-
close(): Promise<void>;
|
|
12
|
-
ready(): Promise<unknown>;
|
|
13
|
-
} & Record<string, PrepMethod | ExecMethod>;
|
|
1
|
+
import type SqlRite from "@possumtech/sqlrite";
|
|
2
|
+
export type Db = SqlRite;
|
|
14
3
|
//# sourceMappingURL=Db.d.ts.map
|
package/dist/core/Db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Db.d.ts","sourceRoot":"","sources":["../../src/core/Db.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Db.d.ts","sourceRoot":"","sources":["../../src/core/Db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAE/C,MAAM,MAAM,EAAE,GAAG,OAAO,CAAC"}
|
package/dist/core/Db.js
CHANGED
|
@@ -1,7 +1,2 @@
|
|
|
1
|
-
// Permissive structural type for SqlRite-managed database handles. SqlRite
|
|
2
|
-
// generates statement-named accessors at runtime (`db.<prep_name>.run/.get/.all`
|
|
3
|
-
// per `-- PREP:` blocks in .sql files). `npm run build:types` from
|
|
4
|
-
// @possumtech/sqlrite produces precise codegen; this alias is the manual
|
|
5
|
-
// fallback typing until that's wired into the build.
|
|
6
1
|
export {};
|
|
7
2
|
//# sourceMappingURL=Db.js.map
|
package/dist/core/Db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Db.js","sourceRoot":"","sources":["../../src/core/Db.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Db.js","sourceRoot":"","sources":["../../src/core/Db.ts"],"names":[],"mappings":""}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PlurnkStatement } from "@plurnk/plurnk-grammar";
|
|
1
|
+
import type { PlurnkStatement, EditStatement } from "@plurnk/plurnk-grammar";
|
|
2
2
|
import type { Mimetypes } from "@plurnk/plurnk-mimetypes";
|
|
3
3
|
import type { Db } from "./Db.ts";
|
|
4
4
|
import type SchemeRegistry from "./SchemeRegistry.ts";
|
|
@@ -6,7 +6,8 @@ import type ExecutorRegistry from "./ExecutorRegistry.ts";
|
|
|
6
6
|
import type TelemetryChannel from "./TelemetryChannel.ts";
|
|
7
7
|
import type ProposalLifecycle from "./ProposalLifecycle.ts";
|
|
8
8
|
import type { WriterTier } from "./scheme-types.ts";
|
|
9
|
-
import type
|
|
9
|
+
import { type StreamEventNotify, type WakeWorkerNotify, type InjectWorkerNotify, type CancelWorkerNotify, type CancelDescendantsNotify } from "./ChannelWrite.ts";
|
|
10
|
+
import type LiveSubscriptions from "./LiveSubscriptions.ts";
|
|
10
11
|
export type DispatchContext = {
|
|
11
12
|
statement: PlurnkStatement;
|
|
12
13
|
workspaceId: number;
|
|
@@ -25,7 +26,7 @@ export type DispatchResult = {
|
|
|
25
26
|
};
|
|
26
27
|
export default class Dispatcher {
|
|
27
28
|
#private;
|
|
28
|
-
constructor({ db, schemes, mimetypes, tokenize, telemetry, proposals, executors, loopSignal, streamEventNotify, wakeWorkerNotify, injectWorker, cancelWorker, searchGate, parkDeadlines, joinTargets }: {
|
|
29
|
+
constructor({ db, schemes, mimetypes, tokenize, telemetry, proposals, executors, loopSignal, streamEventNotify, wakeWorkerNotify, injectWorker, cancelWorker, cancelDescendants, searchGate, parkDeadlines, joinTargets, liveSubscriptions }: {
|
|
29
30
|
db: Db;
|
|
30
31
|
schemes: SchemeRegistry;
|
|
31
32
|
mimetypes: Mimetypes;
|
|
@@ -38,10 +39,13 @@ export default class Dispatcher {
|
|
|
38
39
|
wakeWorkerNotify?: WakeWorkerNotify;
|
|
39
40
|
injectWorker?: InjectWorkerNotify;
|
|
40
41
|
cancelWorker?: CancelWorkerNotify;
|
|
42
|
+
cancelDescendants?: CancelDescendantsNotify;
|
|
41
43
|
parkDeadlines?: Map<number, number>;
|
|
42
44
|
searchGate?: import("./search-gate.ts").default;
|
|
43
45
|
joinTargets?: Set<number>;
|
|
46
|
+
liveSubscriptions: LiveSubscriptions;
|
|
44
47
|
});
|
|
48
|
+
prepareEditBatches(statements: readonly EditStatement[], context: Omit<DispatchContext, "statement" | "sequence">): Promise<void>;
|
|
45
49
|
dispatch(context: DispatchContext): Promise<DispatchResult>;
|
|
46
50
|
look(context: {
|
|
47
51
|
statement: PlurnkStatement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dispatcher.d.ts","sourceRoot":"","sources":["../../src/core/Dispatcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAmD,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"Dispatcher.d.ts","sourceRoot":"","sources":["../../src/core/Dispatcher.ts"],"names":[],"mappings":"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"}
|