You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adds new EVENT_TYPE.MD = "md" and instruments the high-value markdown
editor surfaces. All payloads are metadata-only — no markdown content,
file paths, image data, or user keystrokes cross any boundary.
Bridge:
- New mdviewrMetric event in MarkdownSync routes
{ kind, subcat, label, value? } from the iframe to Metrics.countEvent
/ valueEvent under EVENT_TYPE.MD with type validation.
- src-mdviewer/src/bridge.js exports metricCount / metricValue helpers
iframe modules call directly.
Host-side metrics (MarkdownSync.js + main.js + EditorCommandHandlers):
- md/theme/{dark,light} initial theme on iframe-ready, plus every
mdviewrThemeToggle.
- md/mode/{edit,reader} every mode transition.
- md/doc/edited at most once per file per session (first
iframe content change).
- md/upsell/shown live-preview md edit upsell opens for a
free user (mirror of the existing
lp-edit/mdEditUpsell/show metric).
- md/image/pasteCM image pasted in the CodeMirror markdown
editor.
Iframe-side metrics (via mdviewrMetric):
- md/nav/formatClick bold / italic / strike / underline /
inline code / heading dropdown.
- md/nav/itemClick every other top-toolbar button (link,
lists, task, quote, hr, table, codeblock,
image-url, image-upload).
- md/image/insert image-insert toolbar buttons (paired
with the itemClick above for cross-
feature roll-up).
- md/image/pasteLP image paste inside the LP iframe.
- md/print/click print toolbar button.
- md/slash/popup slash menu becomes visible.
- md/slash/select a slash item was picked (no item id
recorded; recordUsage already tracks
local prioritisation).
- md/table/{rowEdit,colEdit} any row-handle / column-handle menu
action — single bucket per type so we
keep cardinality low.
0 commit comments