@vibes.diy/vibe-runtime 14.3.94 → 14.3.96
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/boot-marks.d.ts +2 -0
- package/boot-marks.js +2 -0
- package/boot-marks.js.map +1 -1
- package/boot-span-report.d.ts +14 -0
- package/boot-span-report.js +51 -0
- package/boot-span-report.js.map +1 -1
- package/edit-text.d.ts +8 -0
- package/edit-text.js +285 -0
- package/edit-text.js.map +1 -0
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/mirror-store.d.ts +21 -0
- package/mirror-store.js +155 -12
- package/mirror-store.js.map +1 -1
- package/package.json +4 -4
- package/register-dependencies.js +11 -5
- package/register-dependencies.js.map +1 -1
- package/runtime-page-closed.d.ts +2 -0
- package/runtime-page-closed.js +6 -0
- package/runtime-page-closed.js.map +1 -0
- package/use-fireproof-local.js.map +1 -1
package/boot-marks.d.ts
CHANGED
|
@@ -12,6 +12,8 @@ export declare const BootMark: {
|
|
|
12
12
|
readonly whoamiResponded: "vibes:boot:whoami-responded";
|
|
13
13
|
readonly firstAuthedPullIssued: "vibes:boot:first-authed-pull-issued";
|
|
14
14
|
readonly syncSettled: "vibes:boot:sync-settled";
|
|
15
|
+
readonly runtimeAck: "vibes:boot:runtime-ack";
|
|
16
|
+
readonly firstMirrorSnapshot: "vibes:boot:first-mirror-snapshot";
|
|
15
17
|
};
|
|
16
18
|
export type BootMarkName = (typeof BootMark)[keyof typeof BootMark];
|
|
17
19
|
export declare function bootMark(name: BootMarkName): void;
|
package/boot-marks.js
CHANGED
|
@@ -12,6 +12,8 @@ export const BootMark = {
|
|
|
12
12
|
whoamiResponded: `${BOOT_MARK_PREFIX}whoami-responded`,
|
|
13
13
|
firstAuthedPullIssued: `${BOOT_MARK_PREFIX}first-authed-pull-issued`,
|
|
14
14
|
syncSettled: `${BOOT_MARK_PREFIX}sync-settled`,
|
|
15
|
+
runtimeAck: `${BOOT_MARK_PREFIX}runtime-ack`,
|
|
16
|
+
firstMirrorSnapshot: `${BOOT_MARK_PREFIX}first-mirror-snapshot`,
|
|
15
17
|
};
|
|
16
18
|
export function bootMark(name) {
|
|
17
19
|
try {
|
package/boot-marks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boot-marks.js","sourceRoot":"","sources":["../jsr/boot-marks.ts"],"names":[],"mappings":"AA2BA,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAQ9C,MAAM,CAAC,MAAM,QAAQ,GAAG;IAItB,mBAAmB,EAAE,GAAG,gBAAgB,uBAAuB;IAG/D,mBAAmB,EAAE,GAAG,gBAAgB,sBAAsB;IAM9D,gBAAgB,EAAE,GAAG,gBAAgB,oBAAoB;IAGzD,sBAAsB,EAAE,GAAG,gBAAgB,2BAA2B;IAGtE,kBAAkB,EAAE,GAAG,gBAAgB,sBAAsB;IAI7D,mBAAmB,EAAE,GAAG,gBAAgB,uBAAuB;IAI/D,yBAAyB,EAAE,GAAG,gBAAgB,8BAA8B;IAM5E,YAAY,EAAE,GAAG,gBAAgB,eAAe;IAKhD,gBAAgB,EAAE,GAAG,gBAAgB,mBAAmB;IAGxD,eAAe,EAAE,GAAG,gBAAgB,kBAAkB;IAYtD,qBAAqB,EAAE,GAAG,gBAAgB,0BAA0B;IAqBpE,WAAW,EAAE,GAAG,gBAAgB,cAAc;
|
|
1
|
+
{"version":3,"file":"boot-marks.js","sourceRoot":"","sources":["../jsr/boot-marks.ts"],"names":[],"mappings":"AA2BA,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAQ9C,MAAM,CAAC,MAAM,QAAQ,GAAG;IAItB,mBAAmB,EAAE,GAAG,gBAAgB,uBAAuB;IAG/D,mBAAmB,EAAE,GAAG,gBAAgB,sBAAsB;IAM9D,gBAAgB,EAAE,GAAG,gBAAgB,oBAAoB;IAGzD,sBAAsB,EAAE,GAAG,gBAAgB,2BAA2B;IAGtE,kBAAkB,EAAE,GAAG,gBAAgB,sBAAsB;IAI7D,mBAAmB,EAAE,GAAG,gBAAgB,uBAAuB;IAI/D,yBAAyB,EAAE,GAAG,gBAAgB,8BAA8B;IAM5E,YAAY,EAAE,GAAG,gBAAgB,eAAe;IAKhD,gBAAgB,EAAE,GAAG,gBAAgB,mBAAmB;IAGxD,eAAe,EAAE,GAAG,gBAAgB,kBAAkB;IAYtD,qBAAqB,EAAE,GAAG,gBAAgB,0BAA0B;IAqBpE,WAAW,EAAE,GAAG,gBAAgB,cAAc;IAI9C,UAAU,EAAE,GAAG,gBAAgB,aAAa;IAI5C,mBAAmB,EAAE,GAAG,gBAAgB,uBAAuB;CACvD,CAAC;AASX,MAAM,UAAU,QAAQ,CAAC,IAAkB;IACzC,IAAI,CAAC;QACH,UAAU,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;IAET,CAAC;AACH,CAAC;AAID,MAAM,UAAU,aAAa;IAC3B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,EAAE,gBAAgB,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACzE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAC3H,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
|
package/boot-span-report.d.ts
CHANGED
|
@@ -17,6 +17,11 @@ export interface BootSpans {
|
|
|
17
17
|
readonly settleProvenance?: SettleProvenance;
|
|
18
18
|
readonly outcome?: BootOutcome;
|
|
19
19
|
readonly firstRenderDegraded?: string;
|
|
20
|
+
readonly ackMs?: number;
|
|
21
|
+
readonly firstSnapshotMs?: number;
|
|
22
|
+
readonly pendingRounds?: number;
|
|
23
|
+
readonly subscribeTimeouts?: number;
|
|
24
|
+
readonly recoveredAfterDegradeMs?: number;
|
|
20
25
|
}
|
|
21
26
|
interface MarkEntry {
|
|
22
27
|
readonly name: string;
|
|
@@ -25,6 +30,15 @@ interface MarkEntry {
|
|
|
25
30
|
export declare function computeBootSpans(marks: readonly MarkEntry[], provenance?: SettleProvenance): BootSpans;
|
|
26
31
|
export declare function noteFirstRenderDegraded(reason: string): void;
|
|
27
32
|
export declare function __firstRenderDegradedForTests(): string | undefined;
|
|
33
|
+
export declare function noteRuntimeAck(): void;
|
|
34
|
+
export declare function noteMirrorPendingRound(): void;
|
|
35
|
+
export declare function noteMirrorSubscribeTimeout(): void;
|
|
36
|
+
export declare function noteMirrorAuthoritative(): void;
|
|
37
|
+
export declare function __bootHandshakeCountersForTests(): {
|
|
38
|
+
pendingRounds: number;
|
|
39
|
+
subscribeTimeouts: number;
|
|
40
|
+
recoveredAfterDegradeMs: number | undefined;
|
|
41
|
+
};
|
|
28
42
|
export type IdentityVerdict = "anonymous" | "signed-in";
|
|
29
43
|
export type SettleProvenance = "confirmed" | "anon" | "legacy";
|
|
30
44
|
export declare function __resetBootSpanReportForTests(): void;
|
package/boot-span-report.js
CHANGED
|
@@ -22,6 +22,8 @@ export function computeBootSpans(marks, provenance) {
|
|
|
22
22
|
const pullIssued = firstAt(marks, BootMark.firstAuthedPullIssued);
|
|
23
23
|
const settle = firstAt(marks, BootMark.syncSettled);
|
|
24
24
|
const firstRender = firstAt(marks, BootMark.firstLocalRender);
|
|
25
|
+
const ack = firstAt(marks, BootMark.runtimeAck);
|
|
26
|
+
const firstSnapshot = firstAt(marks, BootMark.firstMirrorSnapshot);
|
|
25
27
|
const anonVerdict = firstAt(marks, BootMark.authAnonymousSignedOut)
|
|
26
28
|
? "signed-out"
|
|
27
29
|
: firstAt(marks, BootMark.authAnonymousOtherAccount)
|
|
@@ -37,6 +39,8 @@ export function computeBootSpans(marks, provenance) {
|
|
|
37
39
|
...withMs("pullIssuedMs", pullIssued),
|
|
38
40
|
...withMs("settleMs", settle),
|
|
39
41
|
...withMs("firstRenderMs", firstRender),
|
|
42
|
+
...withMs("ackMs", ack),
|
|
43
|
+
...withMs("firstSnapshotMs", firstSnapshot),
|
|
40
44
|
...withMs("hostAckMs", span(dispatched, queued)),
|
|
41
45
|
...withMs("whoamiMs", span(responded, dispatched)),
|
|
42
46
|
...withMs("edgeToPullMs", span(pullIssued, authoritative)),
|
|
@@ -57,6 +61,48 @@ export function noteFirstRenderDegraded(reason) {
|
|
|
57
61
|
export function __firstRenderDegradedForTests() {
|
|
58
62
|
return firstRenderDegraded;
|
|
59
63
|
}
|
|
64
|
+
let pendingRounds = 0;
|
|
65
|
+
let subscribeTimeouts = 0;
|
|
66
|
+
let firstMirrorSnapshotNoted = false;
|
|
67
|
+
let recoveredAfterDegradeMs;
|
|
68
|
+
export function noteRuntimeAck() {
|
|
69
|
+
bootMark(BootMark.runtimeAck);
|
|
70
|
+
}
|
|
71
|
+
export function noteMirrorPendingRound() {
|
|
72
|
+
pendingRounds += 1;
|
|
73
|
+
}
|
|
74
|
+
export function noteMirrorSubscribeTimeout() {
|
|
75
|
+
subscribeTimeouts += 1;
|
|
76
|
+
}
|
|
77
|
+
export function noteMirrorAuthoritative() {
|
|
78
|
+
try {
|
|
79
|
+
if (!firstMirrorSnapshotNoted) {
|
|
80
|
+
firstMirrorSnapshotNoted = true;
|
|
81
|
+
bootMark(BootMark.firstMirrorSnapshot);
|
|
82
|
+
}
|
|
83
|
+
if (recoveredAfterDegradeMs !== undefined || firstRenderDegraded === undefined)
|
|
84
|
+
return;
|
|
85
|
+
const release = firstAt(readBootMarks(), BootMark.firstLocalRender);
|
|
86
|
+
const now = globalThis.performance?.now?.();
|
|
87
|
+
if (release === undefined || now === undefined)
|
|
88
|
+
return;
|
|
89
|
+
recoveredAfterDegradeMs = Math.max(0, now - release);
|
|
90
|
+
if (reported)
|
|
91
|
+
vibeLog("info", "boot-recovered", { recoveredAfterDegradeMs, firstRenderDegraded });
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
export function __bootHandshakeCountersForTests() {
|
|
97
|
+
return { pendingRounds, subscribeTimeouts, recoveredAfterDegradeMs };
|
|
98
|
+
}
|
|
99
|
+
function handshakeReadings() {
|
|
100
|
+
return {
|
|
101
|
+
...(pendingRounds > 0 ? { pendingRounds } : {}),
|
|
102
|
+
...(subscribeTimeouts > 0 ? { subscribeTimeouts } : {}),
|
|
103
|
+
...withMs("recoveredAfterDegradeMs", recoveredAfterDegradeMs),
|
|
104
|
+
};
|
|
105
|
+
}
|
|
60
106
|
let identityVerdict;
|
|
61
107
|
let settledNow = false;
|
|
62
108
|
let confirmedNow;
|
|
@@ -65,6 +111,10 @@ export function __resetBootSpanReportForTests() {
|
|
|
65
111
|
reported = false;
|
|
66
112
|
settleProvenance = undefined;
|
|
67
113
|
firstRenderDegraded = undefined;
|
|
114
|
+
pendingRounds = 0;
|
|
115
|
+
subscribeTimeouts = 0;
|
|
116
|
+
firstMirrorSnapshotNoted = false;
|
|
117
|
+
recoveredAfterDegradeMs = undefined;
|
|
68
118
|
identityVerdict = undefined;
|
|
69
119
|
settledNow = false;
|
|
70
120
|
confirmedNow = undefined;
|
|
@@ -114,6 +164,7 @@ export function reportBootSpans(outcome = "settled") {
|
|
|
114
164
|
...computeBootSpans(readBootMarks(), settleProvenance),
|
|
115
165
|
outcome,
|
|
116
166
|
...(firstRenderDegraded === undefined ? {} : { firstRenderDegraded }),
|
|
167
|
+
...handshakeReadings(),
|
|
117
168
|
});
|
|
118
169
|
}
|
|
119
170
|
catch {
|
package/boot-span-report.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boot-span-report.js","sourceRoot":"","sources":["../jsr/boot-span-report.ts"],"names":[],"mappings":"AA0DA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGtD,MAAM,CAAC,MAAM,aAAa,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"boot-span-report.js","sourceRoot":"","sources":["../jsr/boot-span-report.ts"],"names":[],"mappings":"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"}
|
package/edit-text.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type EvtVibeEditMode, type EvtVibeEditRequest, type EvtVibeEditText } from "@vibes.diy/vibe-types";
|
|
2
|
+
export interface EditTextHooks {
|
|
3
|
+
readonly post?: (m: EvtVibeEditText | EvtVibeEditRequest) => void;
|
|
4
|
+
readonly root?: Document;
|
|
5
|
+
}
|
|
6
|
+
export declare function installEditText(msg: EvtVibeEditMode, hooks?: EditTextHooks): void;
|
|
7
|
+
export declare function registerEditTextHandler(hooks?: EditTextHooks): void;
|
|
8
|
+
export declare function __resetEditTextForTests(): void;
|
package/edit-text.js
ADDED
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
import { exception2Result } from "@adviser/cement";
|
|
2
|
+
import { isEvtVibeEditMode } from "@vibes.diy/vibe-types";
|
|
3
|
+
const EDITABLE_CLASS = "vibe-edit-text-editable";
|
|
4
|
+
const PAUSED_CLASS = "vibe-edit-text-paused";
|
|
5
|
+
const EDITOR_ATTR = "data-edit-for";
|
|
6
|
+
const TAGGED = "[data-vid]";
|
|
7
|
+
const OVERLAY_CSS = [
|
|
8
|
+
`html:not(.${PAUSED_CLASS}) ${TAGGED}:hover { outline: 1px dashed rgba(120, 120, 255, 0.6); outline-offset: 2px; }`,
|
|
9
|
+
`html:not(.${PAUSED_CLASS}) ${TAGGED} { cursor: pointer; }`,
|
|
10
|
+
`html:not(.${PAUSED_CLASS}) ${TAGGED}.${EDITABLE_CLASS}:hover { outline: 2px solid #4f6bff; outline-offset: 2px; }`,
|
|
11
|
+
].join("\n");
|
|
12
|
+
const COPIED_STYLE_PROPS = [
|
|
13
|
+
"font-family",
|
|
14
|
+
"font-size",
|
|
15
|
+
"font-weight",
|
|
16
|
+
"font-style",
|
|
17
|
+
"font-variant",
|
|
18
|
+
"letter-spacing",
|
|
19
|
+
"line-height",
|
|
20
|
+
"color",
|
|
21
|
+
"text-align",
|
|
22
|
+
"text-transform",
|
|
23
|
+
"padding-top",
|
|
24
|
+
"padding-right",
|
|
25
|
+
"padding-bottom",
|
|
26
|
+
"padding-left",
|
|
27
|
+
];
|
|
28
|
+
let session;
|
|
29
|
+
let handlerRegistered = false;
|
|
30
|
+
let registeredHooks;
|
|
31
|
+
function isElement(node) {
|
|
32
|
+
return typeof node === "object" && node !== null && "nodeType" in node && node.nodeType === Node.ELEMENT_NODE;
|
|
33
|
+
}
|
|
34
|
+
function isNode(target) {
|
|
35
|
+
return typeof target === "object" && target !== null && "nodeType" in target && typeof target.nodeType === "number";
|
|
36
|
+
}
|
|
37
|
+
function vidOf(el) {
|
|
38
|
+
const vid = Number(el.getAttribute("data-vid"));
|
|
39
|
+
return Number.isInteger(vid) ? vid : undefined;
|
|
40
|
+
}
|
|
41
|
+
function postToParent(m) {
|
|
42
|
+
if (window.parent === window)
|
|
43
|
+
return;
|
|
44
|
+
const posted = exception2Result(() => window.parent.postMessage(m, "*"));
|
|
45
|
+
if (posted.isErr()) {
|
|
46
|
+
console.error("[vibe edit-text] could not notify host:", posted.Err());
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function applyText(el, text) {
|
|
50
|
+
const textNode = Array.from(el.childNodes).find((n) => n.nodeType === Node.TEXT_NODE && (n.nodeValue ?? "").trim().length > 0);
|
|
51
|
+
if (textNode === undefined || textNode.nodeValue === text)
|
|
52
|
+
return;
|
|
53
|
+
textNode.nodeValue = text;
|
|
54
|
+
}
|
|
55
|
+
function ownText(el) {
|
|
56
|
+
return Array.from(el.childNodes)
|
|
57
|
+
.filter((n) => n.nodeType === Node.TEXT_NODE)
|
|
58
|
+
.map((n) => n.nodeValue ?? "")
|
|
59
|
+
.join("")
|
|
60
|
+
.replace(/\s+/g, " ")
|
|
61
|
+
.trim();
|
|
62
|
+
}
|
|
63
|
+
function taggedWithin(node) {
|
|
64
|
+
const inner = Array.from(node.querySelectorAll(TAGGED));
|
|
65
|
+
return node.matches(TAGGED) ? [node, ...inner] : inner;
|
|
66
|
+
}
|
|
67
|
+
function markAndReapply(s, node) {
|
|
68
|
+
for (const el of taggedWithin(node)) {
|
|
69
|
+
const vid = vidOf(el);
|
|
70
|
+
if (vid === undefined)
|
|
71
|
+
continue;
|
|
72
|
+
el.classList.toggle(EDITABLE_CLASS, s.editable.has(vid));
|
|
73
|
+
const text = s.pending.get(vid);
|
|
74
|
+
if (text !== undefined)
|
|
75
|
+
applyText(el, text);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
function onMutations(records) {
|
|
79
|
+
const s = session;
|
|
80
|
+
if (s === undefined)
|
|
81
|
+
return;
|
|
82
|
+
for (const record of records) {
|
|
83
|
+
if (record.type === "childList") {
|
|
84
|
+
for (const added of Array.from(record.addedNodes)) {
|
|
85
|
+
if (isElement(added))
|
|
86
|
+
markAndReapply(s, added);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
else if (record.type === "characterData") {
|
|
90
|
+
const owner = record.target.parentElement?.closest(TAGGED);
|
|
91
|
+
if (owner === null || owner === undefined)
|
|
92
|
+
continue;
|
|
93
|
+
const vid = vidOf(owner);
|
|
94
|
+
const text = vid === undefined ? undefined : s.pending.get(vid);
|
|
95
|
+
if (text !== undefined)
|
|
96
|
+
applyText(owner, text);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
function commitText(s, edit) {
|
|
101
|
+
s.pending.set(edit.vid, edit.text);
|
|
102
|
+
for (const el of Array.from(s.doc.querySelectorAll(`[data-vid="${edit.vid}"]`)))
|
|
103
|
+
applyText(el, edit.text);
|
|
104
|
+
s.post({ type: "vibe.evt.edit-text", vid: edit.vid, text: edit.text });
|
|
105
|
+
}
|
|
106
|
+
function paintedBackground(el) {
|
|
107
|
+
const view = el.ownerDocument.defaultView;
|
|
108
|
+
if (view === null)
|
|
109
|
+
return "white";
|
|
110
|
+
for (let cur = el; cur !== null; cur = cur.parentElement) {
|
|
111
|
+
const bg = view.getComputedStyle(cur).backgroundColor;
|
|
112
|
+
if (bg !== "transparent" && bg !== "rgba(0, 0, 0, 0)")
|
|
113
|
+
return bg;
|
|
114
|
+
}
|
|
115
|
+
return "white";
|
|
116
|
+
}
|
|
117
|
+
function placeCaretAtEnd(doc, el) {
|
|
118
|
+
const selection = doc.getSelection();
|
|
119
|
+
if (selection === null)
|
|
120
|
+
return;
|
|
121
|
+
selection.selectAllChildren(el);
|
|
122
|
+
selection.collapseToEnd();
|
|
123
|
+
}
|
|
124
|
+
function openEditor(s, target) {
|
|
125
|
+
s.editor?.close(true);
|
|
126
|
+
const view = s.doc.defaultView;
|
|
127
|
+
if (view === null)
|
|
128
|
+
return;
|
|
129
|
+
const rect = target.el.getBoundingClientRect();
|
|
130
|
+
const computed = view.getComputedStyle(target.el);
|
|
131
|
+
const initialText = (target.el.textContent ?? "").trim();
|
|
132
|
+
const el = s.doc.createElement("div");
|
|
133
|
+
el.setAttribute(EDITOR_ATTR, String(target.vid));
|
|
134
|
+
el.contentEditable = "plaintext-only";
|
|
135
|
+
for (const prop of COPIED_STYLE_PROPS)
|
|
136
|
+
el.style.setProperty(prop, computed.getPropertyValue(prop));
|
|
137
|
+
el.style.setProperty("position", "fixed");
|
|
138
|
+
el.style.setProperty("z-index", "2147483647");
|
|
139
|
+
el.style.setProperty("box-sizing", "border-box");
|
|
140
|
+
el.style.setProperty("margin", "0");
|
|
141
|
+
el.style.setProperty("white-space", "pre-wrap");
|
|
142
|
+
el.style.setProperty("outline", "2px solid #ff4fa3");
|
|
143
|
+
el.style.setProperty("background", paintedBackground(target.el));
|
|
144
|
+
el.style.setProperty("left", `${rect.left}px`);
|
|
145
|
+
el.style.setProperty("top", `${rect.top}px`);
|
|
146
|
+
el.style.setProperty("width", `${rect.width}px`);
|
|
147
|
+
el.style.setProperty("min-height", `${rect.height}px`);
|
|
148
|
+
el.textContent = initialText;
|
|
149
|
+
let closed = false;
|
|
150
|
+
const editor = {
|
|
151
|
+
el,
|
|
152
|
+
vid: target.vid,
|
|
153
|
+
close(commit) {
|
|
154
|
+
if (closed)
|
|
155
|
+
return;
|
|
156
|
+
closed = true;
|
|
157
|
+
if (s.editor === editor)
|
|
158
|
+
s.editor = undefined;
|
|
159
|
+
const text = el.textContent ?? "";
|
|
160
|
+
el.remove();
|
|
161
|
+
if (commit && text !== initialText)
|
|
162
|
+
commitText(s, { vid: target.vid, text });
|
|
163
|
+
},
|
|
164
|
+
};
|
|
165
|
+
el.addEventListener("keydown", function onEditorKeydown(e) {
|
|
166
|
+
e.stopPropagation();
|
|
167
|
+
if (e.isComposing || e.keyCode === 229)
|
|
168
|
+
return;
|
|
169
|
+
if (e.key === "Enter") {
|
|
170
|
+
e.preventDefault();
|
|
171
|
+
editor.close(true);
|
|
172
|
+
}
|
|
173
|
+
else if (e.key === "Escape") {
|
|
174
|
+
e.preventDefault();
|
|
175
|
+
editor.close(false);
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
el.addEventListener("blur", function onEditorBlur() {
|
|
179
|
+
editor.close(true);
|
|
180
|
+
});
|
|
181
|
+
s.editor = editor;
|
|
182
|
+
(s.doc.body ?? s.doc.documentElement).appendChild(el);
|
|
183
|
+
el.focus();
|
|
184
|
+
placeCaretAtEnd(s.doc, el);
|
|
185
|
+
}
|
|
186
|
+
function onDocumentClick(e) {
|
|
187
|
+
const s = session;
|
|
188
|
+
if (s === undefined)
|
|
189
|
+
return;
|
|
190
|
+
const target = e.target;
|
|
191
|
+
if (s.editor !== undefined && isNode(target) && s.editor.el.contains(target))
|
|
192
|
+
return;
|
|
193
|
+
if (e.altKey || s.paused)
|
|
194
|
+
return;
|
|
195
|
+
const tagged = isElement(target) ? target.closest(TAGGED) : null;
|
|
196
|
+
if (tagged === null)
|
|
197
|
+
return;
|
|
198
|
+
const vid = vidOf(tagged);
|
|
199
|
+
if (vid === undefined)
|
|
200
|
+
return;
|
|
201
|
+
if (s.editable.has(vid) === false) {
|
|
202
|
+
const own = ownText(tagged);
|
|
203
|
+
if (own !== "")
|
|
204
|
+
s.post({ type: "vibe.evt.edit-request", vid, text: own });
|
|
205
|
+
return;
|
|
206
|
+
}
|
|
207
|
+
e.preventDefault();
|
|
208
|
+
e.stopPropagation();
|
|
209
|
+
openEditor(s, { el: tagged, vid });
|
|
210
|
+
}
|
|
211
|
+
function setPaused(s, paused) {
|
|
212
|
+
s.paused = paused;
|
|
213
|
+
s.doc.documentElement.classList.toggle(PAUSED_CLASS, paused);
|
|
214
|
+
if (paused)
|
|
215
|
+
s.editor?.close(true);
|
|
216
|
+
}
|
|
217
|
+
function teardown(s) {
|
|
218
|
+
s.editor?.close(false);
|
|
219
|
+
s.observer.disconnect();
|
|
220
|
+
s.doc.removeEventListener("click", onDocumentClick, true);
|
|
221
|
+
s.style.remove();
|
|
222
|
+
s.doc.documentElement.classList.remove(PAUSED_CLASS);
|
|
223
|
+
for (const el of Array.from(s.doc.querySelectorAll(`.${EDITABLE_CLASS}`)))
|
|
224
|
+
el.classList.remove(EDITABLE_CLASS);
|
|
225
|
+
s.pending.clear();
|
|
226
|
+
}
|
|
227
|
+
function startSession(msg, hooks) {
|
|
228
|
+
const doc = hooks?.root ?? document;
|
|
229
|
+
const style = doc.createElement("style");
|
|
230
|
+
style.setAttribute("data-vibe-edit-text", "true");
|
|
231
|
+
style.textContent = OVERLAY_CSS;
|
|
232
|
+
(doc.head ?? doc.documentElement).appendChild(style);
|
|
233
|
+
const s = {
|
|
234
|
+
doc,
|
|
235
|
+
post: hooks?.post ?? postToParent,
|
|
236
|
+
style,
|
|
237
|
+
observer: new MutationObserver(onMutations),
|
|
238
|
+
pending: new Map(),
|
|
239
|
+
editable: new Set(msg.editable),
|
|
240
|
+
paused: false,
|
|
241
|
+
editor: undefined,
|
|
242
|
+
};
|
|
243
|
+
s.observer.observe(doc.documentElement, { childList: true, subtree: true, characterData: true });
|
|
244
|
+
doc.addEventListener("click", onDocumentClick, true);
|
|
245
|
+
return s;
|
|
246
|
+
}
|
|
247
|
+
export function installEditText(msg, hooks) {
|
|
248
|
+
if (msg.on === false) {
|
|
249
|
+
if (session !== undefined)
|
|
250
|
+
teardown(session);
|
|
251
|
+
session = undefined;
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
254
|
+
const s = session ?? startSession(msg, hooks);
|
|
255
|
+
session = s;
|
|
256
|
+
s.editable = new Set(msg.editable);
|
|
257
|
+
setPaused(s, msg.paused === true);
|
|
258
|
+
for (const edit of msg.pending ?? [])
|
|
259
|
+
s.pending.set(edit.vid, edit.text);
|
|
260
|
+
markAndReapply(s, s.doc.documentElement);
|
|
261
|
+
}
|
|
262
|
+
function onEditModeMessage(event) {
|
|
263
|
+
if (isEvtVibeEditMode(event.data) === false)
|
|
264
|
+
return;
|
|
265
|
+
const host = window.parent;
|
|
266
|
+
if (host === window || event.source !== host)
|
|
267
|
+
return;
|
|
268
|
+
installEditText(event.data, registeredHooks);
|
|
269
|
+
}
|
|
270
|
+
export function registerEditTextHandler(hooks) {
|
|
271
|
+
if (handlerRegistered)
|
|
272
|
+
return;
|
|
273
|
+
handlerRegistered = true;
|
|
274
|
+
registeredHooks = hooks;
|
|
275
|
+
window.addEventListener("message", onEditModeMessage);
|
|
276
|
+
}
|
|
277
|
+
export function __resetEditTextForTests() {
|
|
278
|
+
window.removeEventListener("message", onEditModeMessage);
|
|
279
|
+
if (session !== undefined)
|
|
280
|
+
teardown(session);
|
|
281
|
+
session = undefined;
|
|
282
|
+
handlerRegistered = false;
|
|
283
|
+
registeredHooks = undefined;
|
|
284
|
+
}
|
|
285
|
+
//# sourceMappingURL=edit-text.js.map
|
package/edit-text.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit-text.js","sourceRoot":"","sources":["../jsr/edit-text.ts"],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export { RUNTIME_BUILD, RUNTIME_BUILD_GLOBAL, announceRuntimeBuild, formatRuntim
|
|
|
7
7
|
export { beginHotSwap, beginHotSwapRollback, createHotSwapState, finishHotSwapRollback, isHotSwapAttemptCurrent, isHotSwapRollbackCurrent, markHotSwapApplied, promoteHotSwap, type HotSwapAttempt, type HotSwapRollbackToken, type HotSwapState, } from "./hot-swap-state.js";
|
|
8
8
|
export { noteBuildActivity, noteHotSwapApplied, noteHotSwapPainted, isCurrentHotSwapAttempt, isCurrentHotSwapRollback, isBuildCalmActive, onUncaughtVibeError, reportHotSwapFailure, postHotSwapErrorToParent, postHotSwapOkToParent, postBootErrorToParent, setHotSwapRuntimeId, installCalmErrorHandlers, setAppContainer, setHotSwapRestore, seedHotSwapBootSource, __setReportSinkForTests, __setContentProbeForTests, __setCalmWindowMsForTests, __resetCalmErrorsForTests, __setHotSwapParentPostMessageForTests, __setBootErrorParentPostMessageForTests, type HotSwapParentMessage, type BootErrorParentMessage, type CalmReport, } from "./calm-errors.js";
|
|
9
9
|
export { installPullToRefresh, registerPullToRefreshHandler, __resetPullToRefreshForTests, type PullToRefreshHooks, } from "./pull-to-refresh.js";
|
|
10
|
+
export { installEditText, registerEditTextHandler, __resetEditTextForTests, type EditTextHooks } from "./edit-text.js";
|
|
10
11
|
export { registerUrlStateBridge, stripHostInjectedParams, urlStateChanged, HOST_INJECTED_IFRAME_PARAMS, __resetUrlStateForTests, type UrlStateHooks, type UrlStatePair, } from "./url-state.js";
|
|
11
12
|
export { registerContentHeightBridge, contentHeightChanged, measureContentHeight, isEmbeddedDocumentSearch, EMBED_DOCUMENT_PARAM, __resetContentHeightForTests, type ContentHeightHooks, } from "./content-height.js";
|
|
12
13
|
export { rewriteBareSpecifiers, rewriteRelativeSpecifiers, rewriteRelativeSpecifiersWithBlobs, rewriteHotSwapEntrySpecifiers, resolveCompanionPath, collectRelativeImports, orderCompanionGraph, getActiveImportMap, entryDirBase, getHotSwapBaseUrl, HOT_SWAP_ENTRY_PATH, } from "./bare-specifier-rewrite.js";
|
package/index.js
CHANGED
|
@@ -6,6 +6,7 @@ export { RUNTIME_BUILD, RUNTIME_BUILD_GLOBAL, announceRuntimeBuild, formatRuntim
|
|
|
6
6
|
export { beginHotSwap, beginHotSwapRollback, createHotSwapState, finishHotSwapRollback, isHotSwapAttemptCurrent, isHotSwapRollbackCurrent, markHotSwapApplied, promoteHotSwap, } from "./hot-swap-state.js";
|
|
7
7
|
export { noteBuildActivity, noteHotSwapApplied, noteHotSwapPainted, isCurrentHotSwapAttempt, isCurrentHotSwapRollback, isBuildCalmActive, onUncaughtVibeError, reportHotSwapFailure, postHotSwapErrorToParent, postHotSwapOkToParent, postBootErrorToParent, setHotSwapRuntimeId, installCalmErrorHandlers, setAppContainer, setHotSwapRestore, seedHotSwapBootSource, __setReportSinkForTests, __setContentProbeForTests, __setCalmWindowMsForTests, __resetCalmErrorsForTests, __setHotSwapParentPostMessageForTests, __setBootErrorParentPostMessageForTests, } from "./calm-errors.js";
|
|
8
8
|
export { installPullToRefresh, registerPullToRefreshHandler, __resetPullToRefreshForTests, } from "./pull-to-refresh.js";
|
|
9
|
+
export { installEditText, registerEditTextHandler, __resetEditTextForTests } from "./edit-text.js";
|
|
9
10
|
export { registerUrlStateBridge, stripHostInjectedParams, urlStateChanged, HOST_INJECTED_IFRAME_PARAMS, __resetUrlStateForTests, } from "./url-state.js";
|
|
10
11
|
export { registerContentHeightBridge, contentHeightChanged, measureContentHeight, isEmbeddedDocumentSearch, EMBED_DOCUMENT_PARAM, __resetContentHeightForTests, } from "./content-height.js";
|
|
11
12
|
export { rewriteBareSpecifiers, rewriteRelativeSpecifiers, rewriteRelativeSpecifiersWithBlobs, rewriteHotSwapEntrySpecifiers, resolveCompanionPath, collectRelativeImports, orderCompanionGraph, getActiveImportMap, entryDirBase, getHotSwapBaseUrl, HOT_SWAP_ENTRY_PATH, } from "./bare-specifier-rewrite.js";
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"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"}
|
package/mirror-store.d.ts
CHANGED
|
@@ -62,6 +62,13 @@ export interface MirrorStoreOptions {
|
|
|
62
62
|
readonly api: MirrorTransport;
|
|
63
63
|
readonly legacyBackend: () => IndexedDbStore;
|
|
64
64
|
readonly legacySettled?: () => SyncSettledSource | undefined;
|
|
65
|
+
readonly visibility?: MirrorVisibility;
|
|
66
|
+
readonly lifecycleTarget?: Pick<EventTarget, "addEventListener" | "removeEventListener">;
|
|
67
|
+
}
|
|
68
|
+
export interface MirrorVisibility {
|
|
69
|
+
readonly hidden: boolean;
|
|
70
|
+
addEventListener?(type: "visibilitychange", listener: () => void): void;
|
|
71
|
+
removeEventListener?(type: "visibilitychange", listener: () => void): void;
|
|
65
72
|
}
|
|
66
73
|
export declare class MirrorStore implements FireflyQueryDatabase {
|
|
67
74
|
readonly name: string;
|
|
@@ -81,11 +88,22 @@ export declare class MirrorStore implements FireflyQueryDatabase {
|
|
|
81
88
|
private legacy?;
|
|
82
89
|
private legacyUnsub?;
|
|
83
90
|
private resubscribing;
|
|
91
|
+
private hasAuthoritative;
|
|
92
|
+
private deferredSettled?;
|
|
93
|
+
private stopped;
|
|
94
|
+
private wakeRetry?;
|
|
95
|
+
private readonly visibility?;
|
|
96
|
+
private readonly lifecycleTarget?;
|
|
97
|
+
private readonly onPageHide;
|
|
84
98
|
private ephemeral?;
|
|
85
99
|
private ephemeralBroadcast?;
|
|
86
100
|
constructor(opts: MirrorStoreOptions);
|
|
87
101
|
private degradeAfterResolveThrew;
|
|
88
102
|
private resolveBackend;
|
|
103
|
+
private subscribeUntilAuthoritative;
|
|
104
|
+
private subscribeLoopLive;
|
|
105
|
+
private stopRetrying;
|
|
106
|
+
private waitVisibleMs;
|
|
89
107
|
get initialSyncSettled(): boolean;
|
|
90
108
|
get initialSyncConfirmed(): boolean | undefined;
|
|
91
109
|
onSettledChange(cb: (settled: boolean, confirmed: boolean | undefined) => void): () => void;
|
|
@@ -93,6 +111,9 @@ export declare class MirrorStore implements FireflyQueryDatabase {
|
|
|
93
111
|
private degradeToLegacy;
|
|
94
112
|
private wireMirrorInbound;
|
|
95
113
|
private applySubscribeResult;
|
|
114
|
+
private applyAuthoritativeAnswer;
|
|
115
|
+
private applyLateAnswer;
|
|
116
|
+
private markAuthoritative;
|
|
96
117
|
private resubscribeFromSeq;
|
|
97
118
|
ready(): Promise<void>;
|
|
98
119
|
get<T extends DocTypes>(id: string): Promise<DocWithId<T>>;
|