@launchsecure/launch-kit 0.0.29 → 0.0.30

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.
Files changed (191) hide show
  1. package/dist/beacon/beacon.mjs +2759 -1246
  2. package/dist/beacon/beacon.mjs.map +1 -1
  3. package/dist/beacon/beacon.umd.js +710 -95
  4. package/dist/beacon/beacon.umd.js.map +1 -1
  5. package/dist/beacon/types/core.d.ts +14 -0
  6. package/dist/beacon/types/core.d.ts.map +1 -0
  7. package/dist/beacon/types/ctx.d.ts +14 -0
  8. package/dist/beacon/types/ctx.d.ts.map +1 -0
  9. package/dist/beacon/types/element.d.ts +16 -48
  10. package/dist/beacon/types/element.d.ts.map +1 -1
  11. package/dist/beacon/types/index.d.ts +5 -4
  12. package/dist/beacon/types/index.d.ts.map +1 -1
  13. package/dist/beacon/types/internal/annotation-cache.d.ts +10 -0
  14. package/dist/beacon/types/internal/annotation-cache.d.ts.map +1 -0
  15. package/dist/beacon/types/internal/element-capture.d.ts +19 -0
  16. package/dist/beacon/types/internal/element-capture.d.ts.map +1 -0
  17. package/dist/beacon/types/internal/event-buffer.d.ts +16 -0
  18. package/dist/beacon/types/internal/event-buffer.d.ts.map +1 -0
  19. package/dist/beacon/types/internal/framework-detect.d.ts +6 -0
  20. package/dist/beacon/types/internal/framework-detect.d.ts.map +1 -0
  21. package/dist/beacon/types/internal/markers.d.ts +17 -0
  22. package/dist/beacon/types/internal/markers.d.ts.map +1 -0
  23. package/dist/beacon/types/internal/monitor/capture-dom.d.ts +14 -0
  24. package/dist/beacon/types/internal/monitor/capture-dom.d.ts.map +1 -0
  25. package/dist/beacon/types/internal/monitor/capture-network.d.ts +12 -0
  26. package/dist/beacon/types/internal/monitor/capture-network.d.ts.map +1 -0
  27. package/dist/beacon/types/internal/monitor/overlay.d.ts +16 -0
  28. package/dist/beacon/types/internal/monitor/overlay.d.ts.map +1 -0
  29. package/dist/beacon/types/internal/monitor/session.d.ts +41 -0
  30. package/dist/beacon/types/internal/monitor/session.d.ts.map +1 -0
  31. package/dist/beacon/types/{monitor → internal/monitor}/transport.d.ts +3 -3
  32. package/dist/beacon/types/internal/monitor/transport.d.ts.map +1 -0
  33. package/dist/beacon/types/{monitor/types.d.ts → internal/monitor/wire.d.ts} +69 -27
  34. package/dist/beacon/types/internal/monitor/wire.d.ts.map +1 -0
  35. package/dist/beacon/types/{ui → internal}/pick-mode-overlay.d.ts +4 -5
  36. package/dist/beacon/types/internal/pick-mode-overlay.d.ts.map +1 -0
  37. package/dist/beacon/types/{capture → internal}/picker.d.ts +0 -1
  38. package/dist/beacon/types/internal/picker.d.ts.map +1 -0
  39. package/dist/beacon/types/{ui → internal}/pin-popover.d.ts +1 -1
  40. package/dist/beacon/types/internal/pin-popover.d.ts.map +1 -0
  41. package/dist/beacon/types/{capture → internal}/screenshot.d.ts +1 -0
  42. package/dist/beacon/types/internal/screenshot.d.ts.map +1 -0
  43. package/dist/beacon/types/internal/selector.d.ts.map +1 -0
  44. package/dist/beacon/types/plugins/domEle.d.ts +14 -0
  45. package/dist/beacon/types/plugins/domEle.d.ts.map +1 -0
  46. package/dist/beacon/types/plugins/domSS.d.ts +8 -0
  47. package/dist/beacon/types/plugins/domSS.d.ts.map +1 -0
  48. package/dist/beacon/types/plugins/errors.d.ts +3 -0
  49. package/dist/beacon/types/plugins/errors.d.ts.map +1 -0
  50. package/dist/beacon/types/plugins/index.d.ts +8 -0
  51. package/dist/beacon/types/plugins/index.d.ts.map +1 -0
  52. package/dist/beacon/types/plugins/liveMonitor.d.ts +14 -0
  53. package/dist/beacon/types/plugins/liveMonitor.d.ts.map +1 -0
  54. package/dist/beacon/types/plugins/metadata.d.ts +3 -0
  55. package/dist/beacon/types/plugins/metadata.d.ts.map +1 -0
  56. package/dist/beacon/types/registry.d.ts +33 -0
  57. package/dist/beacon/types/registry.d.ts.map +1 -0
  58. package/dist/beacon/types/styles.d.ts +8 -0
  59. package/dist/beacon/types/styles.d.ts.map +1 -0
  60. package/dist/beacon/types/transport.d.ts +3 -0
  61. package/dist/beacon/types/transport.d.ts.map +1 -0
  62. package/dist/beacon/types/types.d.ts +152 -68
  63. package/dist/beacon/types/types.d.ts.map +1 -1
  64. package/dist/beacon/types/ui/dialog.d.ts +53 -0
  65. package/dist/beacon/types/ui/dialog.d.ts.map +1 -0
  66. package/dist/beacon/types/ui/form.d.ts +7 -0
  67. package/dist/beacon/types/ui/form.d.ts.map +1 -0
  68. package/dist/beacon/types/ui/overlay.d.ts +6 -0
  69. package/dist/beacon/types/ui/overlay.d.ts.map +1 -0
  70. package/dist/deck-client/assets/{_baseUniq-W2JQDmje.js → _baseUniq-DCt2IMRR.js} +1 -1
  71. package/dist/deck-client/assets/{arc-DIBWAId9.js → arc-h-ifqmNR.js} +1 -1
  72. package/dist/deck-client/assets/{architectureDiagram-Q4EWVU46-CAIRMvJK.js → architectureDiagram-Q4EWVU46-C9dITSPv.js} +1 -1
  73. package/dist/deck-client/assets/{blockDiagram-DXYQGD6D-BeNaNiOi.js → blockDiagram-DXYQGD6D-BHuJT34t.js} +1 -1
  74. package/dist/deck-client/assets/{c4Diagram-AHTNJAMY-B9Ozi62h.js → c4Diagram-AHTNJAMY-CpvMGtDG.js} +1 -1
  75. package/dist/deck-client/assets/channel-2PZVMiXf.js +1 -0
  76. package/dist/deck-client/assets/{chunk-4BX2VUAB-D7AZ47dt.js → chunk-4BX2VUAB-B6md1VIm.js} +1 -1
  77. package/dist/deck-client/assets/{chunk-4TB4RGXK-DnVnNPcI.js → chunk-4TB4RGXK-BmEnX8ik.js} +1 -1
  78. package/dist/deck-client/assets/{chunk-55IACEB6-UKYs-YNd.js → chunk-55IACEB6-BZPUyZAZ.js} +1 -1
  79. package/dist/deck-client/assets/{chunk-EDXVE4YY-D43b-SKn.js → chunk-EDXVE4YY-BWwNUK-l.js} +1 -1
  80. package/dist/deck-client/assets/{chunk-FMBD7UC4-QzBAoyyW.js → chunk-FMBD7UC4-o7gSppGI.js} +1 -1
  81. package/dist/deck-client/assets/{chunk-OYMX7WX6-Cjif4r6W.js → chunk-OYMX7WX6-C4KoTL5p.js} +1 -1
  82. package/dist/deck-client/assets/{chunk-QZHKN3VN-CqLDirEI.js → chunk-QZHKN3VN-jkf68sDs.js} +1 -1
  83. package/dist/deck-client/assets/{chunk-YZCP3GAM-_FQvmMs4.js → chunk-YZCP3GAM-Cd4yBE7o.js} +1 -1
  84. package/dist/deck-client/assets/classDiagram-6PBFFD2Q-Bt8xBAof.js +1 -0
  85. package/dist/deck-client/assets/classDiagram-v2-HSJHXN6E-Bt8xBAof.js +1 -0
  86. package/dist/deck-client/assets/clone-BHQryoDl.js +1 -0
  87. package/dist/deck-client/assets/{cose-bilkent-S5V4N54A-rfrocesE.js → cose-bilkent-S5V4N54A-DeGFUgAV.js} +1 -1
  88. package/dist/deck-client/assets/{dagre-KV5264BT-Bv_7DJat.js → dagre-KV5264BT-ekcYJuUV.js} +1 -1
  89. package/dist/deck-client/assets/{diagram-5BDNPKRD-4F1414G5.js → diagram-5BDNPKRD-YHPk4rV2.js} +1 -1
  90. package/dist/deck-client/assets/{diagram-G4DWMVQ6-C4-Pszqm.js → diagram-G4DWMVQ6-DM-JCd_B.js} +1 -1
  91. package/dist/deck-client/assets/{diagram-MMDJMWI5-B647TIx9.js → diagram-MMDJMWI5-l5FK1ybk.js} +1 -1
  92. package/dist/deck-client/assets/{diagram-TYMM5635-BFAqpezd.js → diagram-TYMM5635-CIN4_1-j.js} +1 -1
  93. package/dist/deck-client/assets/{erDiagram-SMLLAGMA-BfBfrJOC.js → erDiagram-SMLLAGMA-MyinSkEl.js} +1 -1
  94. package/dist/deck-client/assets/{flowDiagram-DWJPFMVM-DX9YAYes.js → flowDiagram-DWJPFMVM-Dk8nn42x.js} +1 -1
  95. package/dist/deck-client/assets/{ganttDiagram-T4ZO3ILL-DCuiy7wF.js → ganttDiagram-T4ZO3ILL-BU1ihicu.js} +1 -1
  96. package/dist/deck-client/assets/{gitGraphDiagram-UUTBAWPF-CGp1IXUh.js → gitGraphDiagram-UUTBAWPF-BjsTL13C.js} +1 -1
  97. package/dist/deck-client/assets/{graph-B7g8aoxv.js → graph-DJmh-xi7.js} +1 -1
  98. package/dist/deck-client/assets/{index-Dg1r-WSN.js → index-KsShfCV-.js} +3 -3
  99. package/dist/deck-client/assets/{infoDiagram-42DDH7IO-L3fahMkF.js → infoDiagram-42DDH7IO-Dxvy_RB4.js} +1 -1
  100. package/dist/deck-client/assets/{ishikawaDiagram-UXIWVN3A-aS_EjWBZ.js → ishikawaDiagram-UXIWVN3A-DPOaNF1l.js} +1 -1
  101. package/dist/deck-client/assets/{journeyDiagram-VCZTEJTY-djTSQZF9.js → journeyDiagram-VCZTEJTY-DMew3K5c.js} +1 -1
  102. package/dist/deck-client/assets/{kanban-definition-6JOO6SKY-CcTHo4CM.js → kanban-definition-6JOO6SKY-csciJFuk.js} +1 -1
  103. package/dist/deck-client/assets/{layout-mEJiadb7.js → layout-Dg4yyms2.js} +1 -1
  104. package/dist/deck-client/assets/{linear-XgTKqyRu.js → linear-BA3zU6gq.js} +1 -1
  105. package/dist/deck-client/assets/{min-Ct9jZdpd.js → min-lz-Ird-p.js} +1 -1
  106. package/dist/deck-client/assets/{mindmap-definition-QFDTVHPH-BaFxCGNU.js → mindmap-definition-QFDTVHPH-CCEN8OQV.js} +1 -1
  107. package/dist/deck-client/assets/{pieDiagram-DEJITSTG-CIbYYjtw.js → pieDiagram-DEJITSTG-DM6n1HY7.js} +1 -1
  108. package/dist/deck-client/assets/{quadrantDiagram-34T5L4WZ-D9EtCOvh.js → quadrantDiagram-34T5L4WZ-_ULoR66n.js} +1 -1
  109. package/dist/deck-client/assets/{requirementDiagram-MS252O5E-xeni9eVG.js → requirementDiagram-MS252O5E-BuwJs7Tn.js} +1 -1
  110. package/dist/deck-client/assets/{sankeyDiagram-XADWPNL6-LYeknz9h.js → sankeyDiagram-XADWPNL6-BEsuzkW4.js} +1 -1
  111. package/dist/deck-client/assets/{sequenceDiagram-FGHM5R23-RDbsKFZf.js → sequenceDiagram-FGHM5R23-CP2H0YWf.js} +1 -1
  112. package/dist/deck-client/assets/{stateDiagram-FHFEXIEX-BH1Zjglk.js → stateDiagram-FHFEXIEX-B5Gw_NNL.js} +1 -1
  113. package/dist/deck-client/assets/stateDiagram-v2-QKLJ7IA2-4T4wMDXr.js +1 -0
  114. package/dist/deck-client/assets/{timeline-definition-GMOUNBTQ-IFXxKptt.js → timeline-definition-GMOUNBTQ-DsoYydQa.js} +1 -1
  115. package/dist/deck-client/assets/{vennDiagram-DHZGUBPP-D-sLkQs9.js → vennDiagram-DHZGUBPP-Dz8JT_ob.js} +1 -1
  116. package/dist/deck-client/assets/wardley-RL74JXVD-DGHQ_Ijv.js +162 -0
  117. package/dist/deck-client/assets/{wardleyDiagram-NUSXRM2D-BTjjuDU3.js → wardleyDiagram-NUSXRM2D-DN1LJMB1.js} +1 -1
  118. package/dist/deck-client/assets/{xychartDiagram-5P7HB3ND-AYbv92n-.js → xychartDiagram-5P7HB3ND-nb0oSfrQ.js} +1 -1
  119. package/dist/deck-client/index.html +1 -1
  120. package/dist/server/beacon-monitor-entry.js +548 -6
  121. package/dist/server/chart-serve.js +917 -248
  122. package/dist/server/cli.js +1368 -374
  123. package/dist/server/council-entry.js +0 -0
  124. package/dist/server/fb-wizard.js +0 -0
  125. package/dist/server/graph-mcp-entry.js +1326 -322
  126. package/dist/server/init-entry.js +16 -11
  127. package/dist/server/orbit-entry.js +135 -7
  128. package/dist/server/parse-worker-entry.js +918 -247
  129. package/package.json +22 -22
  130. package/scaffolds/ls-marketplace/plugins/kit/skills/beacon-array.md +107 -0
  131. package/scaffolds/ls-marketplace/plugins/kit/skills/beacon-clear.md +94 -0
  132. package/scaffolds/ls-marketplace/plugins/kit/skills/beacon-pulse.md +82 -0
  133. package/scaffolds/ls-marketplace/plugins/kit/skills/beacon-scan.md +66 -0
  134. package/scaffolds/ls-marketplace/plugins/kit/skills/blast-radius.md +101 -0
  135. package/scaffolds/ls-marketplace/plugins/kit/skills/brief.md +112 -0
  136. package/scaffolds/ls-marketplace/plugins/kit/skills/course.md +84 -0
  137. package/scaffolds/ls-marketplace/plugins/kit/skills/debug.md +92 -0
  138. package/scaffolds/ls-marketplace/plugins/kit/skills/deploy-check.md +160 -0
  139. package/scaffolds/ls-marketplace/plugins/kit/skills/diagram.md +134 -0
  140. package/scaffolds/ls-marketplace/plugins/kit/skills/orbit.md +87 -0
  141. package/scaffolds/ls-marketplace/plugins/kit/skills/prototype.md +90 -0
  142. package/scaffolds/ls-marketplace/plugins/kit/skills/recall.md +83 -0
  143. package/scaffolds/ls-marketplace/plugins/kit/{commands → skills}/show-mcp-status.md +4 -4
  144. package/scaffolds/ls-marketplace/plugins/kit/skills/wireframe.md +70 -0
  145. package/scaffolds/migrate-safety/scripts/migrate-with-backup.sh +0 -0
  146. package/scaffolds/recall-hook/scripts/ensure-recall.sh +0 -0
  147. package/scaffolds/statusline/statusline-mcp.sh +21 -9
  148. package/dist/beacon/types/capture/element.d.ts +0 -3
  149. package/dist/beacon/types/capture/element.d.ts.map +0 -1
  150. package/dist/beacon/types/capture/events.d.ts +0 -20
  151. package/dist/beacon/types/capture/events.d.ts.map +0 -1
  152. package/dist/beacon/types/capture/framework.d.ts +0 -3
  153. package/dist/beacon/types/capture/framework.d.ts.map +0 -1
  154. package/dist/beacon/types/capture/metadata.d.ts +0 -3
  155. package/dist/beacon/types/capture/metadata.d.ts.map +0 -1
  156. package/dist/beacon/types/capture/overlay.d.ts +0 -7
  157. package/dist/beacon/types/capture/overlay.d.ts.map +0 -1
  158. package/dist/beacon/types/capture/picker.d.ts.map +0 -1
  159. package/dist/beacon/types/capture/screenshot.d.ts.map +0 -1
  160. package/dist/beacon/types/capture/selector.d.ts.map +0 -1
  161. package/dist/beacon/types/monitor/dom.d.ts +0 -13
  162. package/dist/beacon/types/monitor/dom.d.ts.map +0 -1
  163. package/dist/beacon/types/monitor/index.d.ts +0 -19
  164. package/dist/beacon/types/monitor/index.d.ts.map +0 -1
  165. package/dist/beacon/types/monitor/network.d.ts +0 -12
  166. package/dist/beacon/types/monitor/network.d.ts.map +0 -1
  167. package/dist/beacon/types/monitor/transport.d.ts.map +0 -1
  168. package/dist/beacon/types/monitor/types.d.ts.map +0 -1
  169. package/dist/beacon/types/transport/submit.d.ts +0 -3
  170. package/dist/beacon/types/transport/submit.d.ts.map +0 -1
  171. package/dist/beacon/types/ui/button.d.ts +0 -2
  172. package/dist/beacon/types/ui/button.d.ts.map +0 -1
  173. package/dist/beacon/types/ui/drawer.d.ts +0 -33
  174. package/dist/beacon/types/ui/drawer.d.ts.map +0 -1
  175. package/dist/beacon/types/ui/icons.d.ts +0 -9
  176. package/dist/beacon/types/ui/icons.d.ts.map +0 -1
  177. package/dist/beacon/types/ui/monitor-panel.d.ts +0 -19
  178. package/dist/beacon/types/ui/monitor-panel.d.ts.map +0 -1
  179. package/dist/beacon/types/ui/pick-mode-overlay.d.ts.map +0 -1
  180. package/dist/beacon/types/ui/pin-popover.d.ts.map +0 -1
  181. package/dist/deck-client/assets/channel-CRdozqbp.js +0 -1
  182. package/dist/deck-client/assets/classDiagram-6PBFFD2Q-lIZMp57W.js +0 -1
  183. package/dist/deck-client/assets/classDiagram-v2-HSJHXN6E-lIZMp57W.js +0 -1
  184. package/dist/deck-client/assets/clone-BtWeSTyJ.js +0 -1
  185. package/dist/deck-client/assets/stateDiagram-v2-QKLJ7IA2-BrV78NDR.js +0 -1
  186. package/dist/deck-client/assets/wardley-RL74JXVD-C010F8l4.js +0 -162
  187. package/scaffolds/ls-marketplace/plugins/kit/commands/beacon-array.md +0 -92
  188. package/scaffolds/ls-marketplace/plugins/kit/commands/beacon-clear.md +0 -68
  189. package/scaffolds/ls-marketplace/plugins/kit/commands/beacon-pulse.md +0 -80
  190. package/scaffolds/ls-marketplace/plugins/kit/commands/beacon-scan.md +0 -62
  191. /package/dist/beacon/types/{capture → internal}/selector.d.ts +0 -0
@@ -0,0 +1,14 @@
1
+ import type { BeaconStatus, InitOptions, PluginStatus, Severity, SystemEvent, SystemEventPayload } from './types';
2
+ export declare function init(opts: InitOptions): void;
3
+ export declare function show(): void;
4
+ export declare function hide(): void;
5
+ export declare function destroy(): void;
6
+ export declare function status(): BeaconStatus;
7
+ export declare function on<E extends SystemEvent>(event: E, handler: (payload: SystemEventPayload<E>) => void): () => void;
8
+ export declare function off<E extends SystemEvent>(event: E, handler: (payload: SystemEventPayload<E>) => void): void;
9
+ export declare const __testing: {
10
+ resetForTests(): void;
11
+ getCurrent(): unknown;
12
+ };
13
+ export type { Severity, BeaconStatus, PluginStatus };
14
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/beacon/core.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAIV,YAAY,EAMZ,WAAW,EAKX,YAAY,EAEZ,QAAQ,EACR,WAAW,EACX,kBAAkB,EAGnB,MAAM,SAAS,CAAC;AAoDjB,wBAAgB,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAqF5C;AAED,wBAAgB,IAAI,IAAI,IAAI,CAkC3B;AAED,wBAAgB,IAAI,IAAI,IAAI,CAI3B;AAED,wBAAgB,OAAO,IAAI,IAAI,CAkB9B;AAED,wBAAgB,MAAM,IAAI,YAAY,CAUrC;AAED,wBAAgB,EAAE,CAAC,CAAC,SAAS,WAAW,EACtC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,KAAK,IAAI,GAChD,MAAM,IAAI,CAGZ;AAED,wBAAgB,GAAG,CAAC,CAAC,SAAS,WAAW,EACvC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,KAAK,IAAI,GAChD,IAAI,CAEN;AA2OD,eAAO,MAAM,SAAS;qBACH,IAAI;kBAIP,OAAO;CAGtB,CAAC;AAGF,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { BeaconCtx, BeaconLifecycleEvent, Mode, PluginEntry } from './types';
2
+ export interface CtxHost {
3
+ getCaptured(name: string): PluginEntry | undefined;
4
+ getFormValues(pluginName: string): Record<string, unknown>;
5
+ getCaptureSignal(): AbortSignal | undefined;
6
+ getInitSignal(): AbortSignal;
7
+ requestMode(mode: Mode): Promise<() => void>;
8
+ overlay(opts: {
9
+ render: (slot: HTMLElement) => void | (() => void);
10
+ }): () => void;
11
+ onLifecycle(ev: 'open' | 'close' | 'beforeSubmit' | 'afterSubmit', handler: (e: BeaconLifecycleEvent) => void): () => void;
12
+ }
13
+ export declare function createCtx(pluginName: string, host: CtxHost): BeaconCtx;
14
+ //# sourceMappingURL=ctx.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ctx.d.ts","sourceRoot":"","sources":["../../../src/beacon/ctx.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,SAAS,EACT,oBAAoB,EACpB,IAAI,EACJ,WAAW,EACZ,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,OAAO;IAEtB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;IAEnD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE3D,gBAAgB,IAAI,WAAW,GAAG,SAAS,CAAC;IAE5C,aAAa,IAAI,WAAW,CAAC;IAE7B,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IAE7C,OAAO,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAA;KAAE,GAAG,MAAM,IAAI,CAAC;IAElF,WAAW,CACT,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,cAAc,GAAG,aAAa,EACrD,OAAO,EAAE,CAAC,CAAC,EAAE,oBAAoB,KAAK,IAAI,GACzC,MAAM,IAAI,CAAC;CACf;AAED,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,SAAS,CAWtE"}
@@ -1,51 +1,19 @@
1
- import type { BeaconConfig } from './types';
2
- export declare class LaunchKitBeacon extends HTMLElement {
3
- static get observedAttributes(): string[];
4
- private shadow;
5
- private trigger?;
6
- private drawer?;
7
- private slotEl?;
8
- private _config;
9
- private pins;
10
- private pinElements;
11
- private description;
12
- private severity;
13
- private documentClickBlocker?;
14
- private submitSucceeded;
15
- private eventsUnsubscribe?;
16
- /** Public — wrappers can set `widget.config = {...}` for dynamic endpoint/headers/context. */
17
- set config(value: BeaconConfig);
18
- get config(): BeaconConfig | null;
1
+ export declare const BEACON_TAG = "launch-kit-beacon";
2
+ declare const HTMLElementBase: typeof HTMLElement;
3
+ export declare class LaunchKitBeacon extends HTMLElementBase {
4
+ shadow: ShadowRoot;
5
+ triggerSlot: HTMLSlotElement;
6
+ defaultTrigger: HTMLButtonElement;
7
+ healthDot: HTMLSpanElement;
8
+ onTriggerClick: (() => void) | null;
19
9
  connectedCallback(): void;
20
- attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
21
- open(): void;
22
- close(): void;
23
- disconnectedCallback(): void;
24
- openWithPicker(): Promise<void>;
25
- private startAnnotate;
26
- private updatePinNote;
27
- private deletePin;
28
- private handleSubmit;
29
- /**
30
- * Resolved accent color — reads --beacon-accent from the host's computed style
31
- * (which picks up any inline `style="--beacon-accent: …"` or stylesheet override
32
- * targeting the host). Falls back to the default sky-blue if unset.
33
- */
34
- private getAccentColor;
35
- /**
36
- * Mirror every customizable --beacon-* var from the host onto the body-mounted
37
- * drawer. CSS inheritance stops at the body boundary, so we copy the host's
38
- * resolved values forward. Called on open() so changes mid-session are picked up.
39
- */
40
- private syncCustomProperties;
41
- private hasUnsavedData;
42
- private resetState;
43
- private forceClose;
44
- private installClickBlocker;
45
- private uninstallClickBlocker;
46
- private resolveHeaders;
47
- private resolveContext;
48
- private parseSeverities;
10
+ setTriggerLabel(label: string): void;
11
+ setHealthIndicator(visible: boolean): void;
49
12
  }
50
- export declare function defineBeacon(tagName?: string): void;
13
+ /**
14
+ * Register the custom element. Guarded so HMR re-imports don't throw.
15
+ * The only module-load side effect — no listeners, no globals.
16
+ */
17
+ export declare function defineBeaconElement(): void;
18
+ export {};
51
19
  //# sourceMappingURL=element.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../../../src/beacon-client/element.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAiD,MAAM,SAAS,CAAC;AAiD3F,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,MAAM,KAAK,kBAAkB,IAAgC,MAAM,EAAE,CAAG;IAExE,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,MAAM,CAAC,CAAa;IAC5B,OAAO,CAAC,MAAM,CAAC,CAAkB;IAEjC,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,IAAI,CAAa;IAGzB,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,QAAQ,CAAmB;IAGnC,OAAO,CAAC,oBAAoB,CAAC,CAA0B;IAIvD,OAAO,CAAC,eAAe,CAAS;IAGhC,OAAO,CAAC,iBAAiB,CAAC,CAAa;IAEvC,8FAA8F;IAC9F,IAAI,MAAM,CAAC,KAAK,EAAE,YAAY,EAE7B;IACD,IAAI,MAAM,IAAI,YAAY,GAAG,IAAI,CAIhC;IAED,iBAAiB;IA8DjB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAgBvF,IAAI;IAqBJ,KAAK;IAUL,oBAAoB;IAad,cAAc;YAQN,aAAa;IAsF3B,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,SAAS;YAYH,YAAY;IAqG1B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAMtB;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,mBAAmB;IAsB3B,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,eAAe;CAKxB;AAED,wBAAgB,YAAY,CAAC,OAAO,SAAsB,GAAG,IAAI,CAKhE"}
1
+ {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../../../src/beacon/element.ts"],"names":[],"mappings":"AA4BA,eAAO,MAAM,UAAU,sBAAsB,CAAC;AAQ9C,QAAA,MAAM,eAAe,EAAE,OAAO,WAGmB,CAAC;AAElD,qBAAa,eAAgB,SAAQ,eAAe;IAClD,MAAM,EAAG,UAAU,CAAC;IACpB,WAAW,EAAG,eAAe,CAAC;IAC9B,cAAc,EAAG,iBAAiB,CAAC;IACnC,SAAS,EAAG,eAAe,CAAC;IAK5B,cAAc,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAQ;IAE3C,iBAAiB;IA0CjB,eAAe,CAAC,KAAK,EAAE,MAAM;IAM7B,kBAAkB,CAAC,OAAO,EAAE,OAAO;CAGpC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAK1C"}
@@ -1,5 +1,6 @@
1
- import { defineBeacon, LaunchKitBeacon } from './element';
2
- export { LaunchKitBeacon, defineBeacon };
3
- export type { BeaconConfig, CapturedEvent, FeedbackPayload, Pin, Metadata, Severity, HeaderProvider, ContextProvider, SubmitResponse, } from './types';
4
- export type { MonitorConfig, MonitorEvent, MonitorEventKind, MonitorBatch, MonitorPublicAPI, MonitorErrorEvent, MonitorNetworkEvent, MonitorClickEvent, MonitorRouteEvent, MonitorDialogEvent, MonitorProbeEvent, } from './monitor/types';
1
+ export { init, show, hide, destroy, on, off, status } from './core';
2
+ export { metadata, errors, domEle, domSS, liveMonitor, startMonitor, stopMonitor, probe, isMonitorActive, currentMonitorUrl, } from './plugins';
3
+ export type { LiveMonitorOptions, MonitorConfig } from './plugins';
4
+ export type { BeaconCtx, BeaconPlugin, BeaconLifecycleEvent, BeaconStatus, FeedbackPayload, FormField, InitOptions, LabelMap, PluginEntry, PluginFailureEntry, PluginStatus, PluginSuccessEntry, Position, Severity, SystemEvent, Theme, TransportResponse, } from './types';
5
+ export { isPluginFailure } from './types';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/beacon-client/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAI1D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC;AACzC,YAAY,EACV,YAAY,EACZ,aAAa,EACb,eAAe,EACf,GAAG,EACH,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/beacon/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACpE,OAAO,EACL,QAAQ,EACR,MAAM,EACN,MAAM,EACN,KAAK,EACL,WAAW,EACX,YAAY,EACZ,WAAW,EACX,KAAK,EACL,eAAe,EACf,iBAAiB,GAClB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACnE,YAAY,EACV,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,SAAS,EACT,WAAW,EACX,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,KAAK,EACL,iBAAiB,GAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare function setAnnotationCache(entry: {
2
+ dataUrl: string;
3
+ mime: 'image/jpeg' | 'image/png';
4
+ }): void;
5
+ export declare function getAnnotationCache(): {
6
+ dataUrl: string;
7
+ mime: 'image/jpeg' | 'image/png';
8
+ } | null;
9
+ export declare function clearAnnotationCache(): void;
10
+ //# sourceMappingURL=annotation-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotation-cache.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/annotation-cache.ts"],"names":[],"mappings":"AAUA,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,YAAY,GAAG,WAAW,CAAA;CAAE,GAAG,IAAI,CAErG;AAED,wBAAgB,kBAAkB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,YAAY,GAAG,WAAW,CAAA;CAAE,GAAG,IAAI,CAEjG;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
@@ -0,0 +1,19 @@
1
+ import { type FrameworkHint } from './framework-detect';
2
+ export interface ElementCapture {
3
+ selector: string;
4
+ tagName: string;
5
+ id: string | null;
6
+ classList: string[];
7
+ outerHTML: string;
8
+ parentOuterHTML?: string;
9
+ computedStyles: Record<string, string>;
10
+ boundingRect: {
11
+ x: number;
12
+ y: number;
13
+ w: number;
14
+ h: number;
15
+ };
16
+ framework?: FrameworkHint;
17
+ }
18
+ export declare function captureElement(el: Element): ElementCapture;
19
+ //# sourceMappingURL=element-capture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-capture.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/element-capture.ts"],"names":[],"mappings":"AAGA,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAuBzE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,YAAY,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B;AAyBD,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,cAAc,CAuB1D"}
@@ -0,0 +1,16 @@
1
+ export interface CapturedRuntimeEvent {
2
+ ts: number;
3
+ kind: 'error' | 'unhandledrejection';
4
+ message: string;
5
+ stack?: string;
6
+ source?: string;
7
+ line?: number;
8
+ col?: number;
9
+ }
10
+ export interface EventBuffer {
11
+ install(): () => void;
12
+ snapshot(): CapturedRuntimeEvent[];
13
+ subscribe(fn: () => void): () => void;
14
+ }
15
+ export declare function createEventBuffer(): EventBuffer;
16
+ //# sourceMappingURL=event-buffer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-buffer.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/event-buffer.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,GAAG,oBAAoB,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAgCD,MAAM,WAAW,WAAW;IAC1B,OAAO,IAAI,MAAM,IAAI,CAAC;IACtB,QAAQ,IAAI,oBAAoB,EAAE,CAAC;IACnC,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;CACvC;AAED,wBAAgB,iBAAiB,IAAI,WAAW,CAqF/C"}
@@ -0,0 +1,6 @@
1
+ export type FrameworkHint = {
2
+ lib: 'react' | 'vue' | 'angular' | 'svelte' | null;
3
+ name?: string;
4
+ };
5
+ export declare function detectFramework(el: Element): FrameworkHint | undefined;
6
+ //# sourceMappingURL=framework-detect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework-detect.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/framework-detect.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,aAAa,GAAG;IAAE,GAAG,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAsDlG,wBAAgB,eAAe,CAAC,EAAE,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,CAEtE"}
@@ -0,0 +1,17 @@
1
+ export interface PinMarker {
2
+ number: number;
3
+ selector?: string;
4
+ boundingRect: {
5
+ x: number;
6
+ y: number;
7
+ w: number;
8
+ h: number;
9
+ };
10
+ liveElement?: Element;
11
+ }
12
+ export declare function drawMarkers(screenshotDataUrl: string, pins: PinMarker[], viewport: {
13
+ w: number;
14
+ h: number;
15
+ dpr: number;
16
+ }, accent?: string): Promise<string>;
17
+ //# sourceMappingURL=markers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markers.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/markers.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAQD,wBAAsB,WAAW,CAC/B,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,SAAS,EAAE,EACjB,QAAQ,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,EAC/C,MAAM,GAAE,MAAuB,GAC9B,OAAO,CAAC,MAAM,CAAC,CA8CjB"}
@@ -0,0 +1,14 @@
1
+ import type { MonitorClickEvent, MonitorDialogEvent, MonitorRouteEvent, MonitorSubmitEvent } from './wire';
2
+ type Emit<E> = (event: Omit<E, 'ts' | 'sessionId' | 'seq'>) => void;
3
+ export interface DomCaptureCallbacks {
4
+ emitClick: Emit<MonitorClickEvent>;
5
+ emitRoute: Emit<MonitorRouteEvent>;
6
+ emitDialog: Emit<MonitorDialogEvent>;
7
+ emitSubmit: Emit<MonitorSubmitEvent>;
8
+ }
9
+ export interface DomCaptureInstallation {
10
+ uninstall(): void;
11
+ }
12
+ export declare function installDomCapture(cb: DomCaptureCallbacks): DomCaptureInstallation;
13
+ export {};
14
+ //# sourceMappingURL=capture-dom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture-dom.d.ts","sourceRoot":"","sources":["../../../../../src/beacon/internal/monitor/capture-dom.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,iBAAiB,EAEjB,kBAAkB,EAElB,iBAAiB,EACjB,kBAAkB,EAEnB,MAAM,QAAQ,CAAC;AAEhB,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,WAAW,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC;AAEpE,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACnC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACnC,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACrC,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;CACtC;AAKD,MAAM,WAAW,sBAAsB;IACrC,SAAS,IAAI,IAAI,CAAC;CACnB;AA0SD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,mBAAmB,GAAG,sBAAsB,CAajF"}
@@ -0,0 +1,12 @@
1
+ import type { MonitorNetworkEvent } from './wire';
2
+ type Emit = (event: Omit<MonitorNetworkEvent, 'ts' | 'sessionId' | 'seq'>) => void;
3
+ export interface NetworkCaptureOptions {
4
+ emit: Emit;
5
+ verbose: boolean;
6
+ }
7
+ export interface NetworkCaptureInstallation {
8
+ uninstall(): void;
9
+ }
10
+ export declare function installNetworkCapture(opts: NetworkCaptureOptions): NetworkCaptureInstallation;
11
+ export {};
12
+ //# sourceMappingURL=capture-network.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture-network.d.ts","sourceRoot":"","sources":["../../../../../src/beacon/internal/monitor/capture-network.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAEV,mBAAmB,EAEpB,MAAM,QAAQ,CAAC;AAEhB,KAAK,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,mBAAmB,EAAE,IAAI,GAAG,WAAW,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC;AAEnF,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,IAAI,IAAI,CAAC;CACnB;AAuXD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,qBAAqB,GAAG,0BAA0B,CAS7F"}
@@ -0,0 +1,16 @@
1
+ export interface MonitorOverlayOptions {
2
+ /** Frame + chip accent. Falls back to emerald (--beacon-monitor-accent default). */
3
+ accent?: string;
4
+ /** Called when the chip's Stop button is clicked. Owner wires to session.stop(). */
5
+ onStop: () => void;
6
+ /** ms-epoch start time for the elapsed timer. Defaults to Date.now() at create. */
7
+ startedAt?: number;
8
+ /** Initial URL to show in the chip's secondary line. */
9
+ url?: string | null;
10
+ }
11
+ export interface MonitorOverlay {
12
+ updateUrl(url: string | null): void;
13
+ destroy(): void;
14
+ }
15
+ export declare function createMonitorOverlay(opts: MonitorOverlayOptions): MonitorOverlay;
16
+ //# sourceMappingURL=overlay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../../../src/beacon/internal/monitor/overlay.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,qBAAqB;IACpC,oFAAoF;IACpF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oFAAoF;IACpF,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IACpC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,cAAc,CAgMhF"}
@@ -0,0 +1,41 @@
1
+ export interface MonitorConfig {
2
+ /** Endpoint to POST batches to. Cleared on stop(). */
3
+ url: string;
4
+ /** If true, capture successful network calls in addition to failures. Default false. */
5
+ verbose?: boolean;
6
+ /** Hard session cap. Auto-stops monitoring at this point. Default 30 minutes. */
7
+ maxSessionMs?: number;
8
+ }
9
+ type Listener = (active: boolean, url: string | null) => void;
10
+ export declare function start(config: MonitorConfig): void;
11
+ /**
12
+ * Stop the session AND forget it. Used when the user explicitly clicks Stop or
13
+ * the deadline expires — clears sessionStorage so the next page load doesn't
14
+ * resume. For host-driven teardown (AppHeader unmount, HMR) call suspend()
15
+ * instead so resume can rehydrate.
16
+ */
17
+ export declare function stop(): void;
18
+ /**
19
+ * Tear down capture + transport BUT keep sessionStorage intact so the next
20
+ * init() can resumeIfPersisted(). Used when the host (e.g. AppHeader) unmounts
21
+ * mid-session due to a layout swap — without this, crossing Next.js route
22
+ * groups kills the session permanently because destroy() → abort → stop()
23
+ * would clear the persistence keys we rely on for rehydrate.
24
+ */
25
+ export declare function suspend(): void;
26
+ export declare function probe(label: string, data?: unknown): void;
27
+ export declare function isActive(): boolean;
28
+ export declare function currentUrl(): string | null;
29
+ /**
30
+ * Subscribe to active-state changes. Used by the panel UI to update its
31
+ * display when start()/stop() fires.
32
+ */
33
+ export declare function subscribe(fn: Listener): () => void;
34
+ /**
35
+ * Resume a persisted session if one exists in sessionStorage. Called from the
36
+ * plugin's setupOnce so an SPA reload during active monitoring doesn't drop
37
+ * capture. No-op when no session was persisted or the deadline has passed.
38
+ */
39
+ export declare function resumeIfPersisted(): void;
40
+ export {};
41
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../../src/beacon/internal/monitor/session.ts"],"names":[],"mappings":"AAkCA,MAAM,WAAW,aAAa;IAC5B,sDAAsD;IACtD,GAAG,EAAE,MAAM,CAAC;IACZ,wFAAwF;IACxF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;AA0J9D,wBAAgB,KAAK,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAyEjD;AAED;;;;;GAKG;AACH,wBAAgB,IAAI,IAAI,IAAI,CAI3B;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,IAAI,IAAI,CAI9B;AAaD,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAOzD;AAED,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED,wBAAgB,UAAU,IAAI,MAAM,GAAG,IAAI,CAE1C;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,IAAI,CAGlD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAUxC"}
@@ -1,8 +1,8 @@
1
- import type { MonitorEvent } from './types';
1
+ import type { MonitorEvent } from './wire';
2
2
  export interface TransportOptions {
3
3
  url: string;
4
4
  sessionId: string;
5
- /** Called when a flush attempt failed (network error or non-2xx). For UI badge. */
5
+ /** Called when a flush failed (network error or non-2xx). For UI badge / console warn. */
6
6
  onError?: (err: Error) => void;
7
7
  }
8
8
  export declare class MonitorTransport {
@@ -19,7 +19,7 @@ export declare class MonitorTransport {
19
19
  enqueue(event: MonitorEvent): void;
20
20
  /** Async flush via fetch. No-op when in-flight or empty. */
21
21
  flush(): Promise<void>;
22
- /** Synchronous flush via sendBeacon, used on pagehide. */
22
+ /** Synchronous flush via sendBeacon, used on pagehide / visibility:hidden. */
23
23
  private flushSync;
24
24
  destroy(): void;
25
25
  private makeBatch;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../src/beacon/internal/monitor/transport.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAgB,YAAY,EAAE,MAAM,QAAQ,CAAC;AAMzD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,0FAA0F;IAC1F,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;CAChC;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAC,CAAuB;IACvC,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,eAAe,CAAC,CAAa;IACrC,OAAO,CAAC,SAAS,CAAS;gBAEd,IAAI,EAAE,gBAAgB;IAelC,OAAO,CAAC,sBAAsB,CAE5B;IAEF,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAUlC,4DAA4D;IACtD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA+B5B,8EAA8E;IAC9E,OAAO,CAAC,SAAS;IAmBjB,OAAO,IAAI,IAAI;IAUf,OAAO,CAAC,SAAS;CAgBlB"}
@@ -1,10 +1,10 @@
1
- export type MonitorEventKind = 'error' | 'unhandledrejection' | 'fetch' | 'xhr' | 'click' | 'mousedown' | 'route' | 'dialog' | 'probe';
1
+ export type MonitorEventKind = 'error' | 'unhandledrejection' | 'fetch' | 'xhr' | 'click' | 'mousedown' | 'route' | 'dialog' | 'submit' | 'probe';
2
2
  export interface MonitorEventBase {
3
3
  /** Epoch ms when the event was captured. */
4
4
  ts: number;
5
- /** Per-tab session id, regenerated whenever start() is called fresh. */
5
+ /** Per-tab session id, minted at start(). */
6
6
  sessionId: string;
7
- /** Monotonic counter within the session (helps reorder if batches arrive out of order). */
7
+ /** Monotonic counter within the session useful for reordering reordered batches. */
8
8
  seq: number;
9
9
  }
10
10
  export interface MonitorErrorEvent extends MonitorEventBase {
@@ -15,6 +15,20 @@ export interface MonitorErrorEvent extends MonitorEventBase {
15
15
  line?: number;
16
16
  col?: number;
17
17
  }
18
+ export interface MonitorBodyCapture {
19
+ /** Body content, possibly truncated. Secrets redacted (Bearer/JWT/ls_pat_/password fields). */
20
+ body?: string;
21
+ /** Original size in bytes before truncation. */
22
+ bodySize?: number;
23
+ /** True if body was truncated to fit the cap. */
24
+ bodyTruncated?: boolean;
25
+ /** Best-effort content type from the headers, if known. */
26
+ contentType?: string;
27
+ }
28
+ export interface MonitorRequestCapture extends MonitorBodyCapture {
29
+ /** True if an Authorization header was attached. Value is NEVER captured. */
30
+ hasAuth?: boolean;
31
+ }
18
32
  export interface MonitorNetworkEvent extends MonitorEventBase {
19
33
  kind: 'fetch' | 'xhr';
20
34
  url: string;
@@ -26,6 +40,17 @@ export interface MonitorNetworkEvent extends MonitorEventBase {
26
40
  failed: boolean;
27
41
  /** Error message when the request threw. */
28
42
  error?: string;
43
+ /**
44
+ * Request snapshot — body + Authorization presence. Only captured for
45
+ * mutating methods (POST/PUT/PATCH/DELETE) to avoid polluting the stream
46
+ * with GET URLs that already encode their inputs in the path.
47
+ */
48
+ request?: MonitorRequestCapture;
49
+ /**
50
+ * Response snapshot — body capture. Captured for failures (status >= 400)
51
+ * by default; verbose mode captures 2xx bodies too.
52
+ */
53
+ response?: MonitorBodyCapture;
29
54
  }
30
55
  export interface MonitorOverlayInfo {
31
56
  tag: string;
@@ -39,6 +64,20 @@ export interface MonitorClickTarget {
39
64
  classes: string[];
40
65
  role: string | null;
41
66
  selector: string;
67
+ /** textContent of the target, trimmed + truncated to 80 chars. Omitted if empty. */
68
+ text?: string;
69
+ /** aria-label attribute, truncated. Omitted if missing. */
70
+ ariaLabel?: string;
71
+ /** data-testid attribute. Omitted if missing. */
72
+ testid?: string;
73
+ /** name attribute (form fields). Omitted if missing. */
74
+ name?: string;
75
+ /**
76
+ * Derived human label: aria-label → text → nearest interactive ancestor's
77
+ * aria-label/text. Omitted when same as `text` or when nothing is found.
78
+ * Use this for human-readable rendering ("user clicked <label>").
79
+ */
80
+ label?: string;
42
81
  }
43
82
  export interface MonitorClickEvent extends MonitorEventBase {
44
83
  kind: 'click' | 'mousedown';
@@ -75,10 +114,34 @@ export interface MonitorProbeEvent extends MonitorEventBase {
75
114
  kind: 'probe';
76
115
  /** Free-form label set by the caller (e.g. 'overlay-at-click', 'auth-state'). */
77
116
  label: string;
78
- /** Arbitrary JSON-serialisable payload. Serialised defensively; cyclic refs become "[cyclic]". */
117
+ /** Arbitrary JSON-serialisable payload. Cyclic refs become "[cyclic]". */
79
118
  data: unknown;
80
119
  }
81
- export type MonitorEvent = MonitorErrorEvent | MonitorNetworkEvent | MonitorClickEvent | MonitorRouteEvent | MonitorDialogEvent | MonitorProbeEvent;
120
+ export interface MonitorSubmitField {
121
+ /** name attribute of the field, or '<unnamed>' if missing. */
122
+ name: string;
123
+ /** input type — text/email/password/checkbox/etc., or 'textarea'/'select'. */
124
+ type: string;
125
+ /** True if the field has a non-empty value. Values themselves are NEVER captured. */
126
+ hasValue: boolean;
127
+ }
128
+ export interface MonitorSubmitEvent extends MonitorEventBase {
129
+ kind: 'submit';
130
+ form: {
131
+ id: string | null;
132
+ action: string | null;
133
+ method: string;
134
+ selector: string;
135
+ /** Field summary. Values are never captured (PII). */
136
+ fields: MonitorSubmitField[];
137
+ };
138
+ }
139
+ export type MonitorEvent = MonitorErrorEvent | MonitorNetworkEvent | MonitorClickEvent | MonitorRouteEvent | MonitorDialogEvent | MonitorSubmitEvent | MonitorProbeEvent;
140
+ /**
141
+ * Envelope POSTed to the launch-beacon receiver. Must stay assignment-compatible
142
+ * with server/beacon/wire.ts MonitorBatchEnvelope — that file is the contract
143
+ * boundary; bump `v` and update both sides if you change the envelope shape.
144
+ */
82
145
  export interface MonitorBatch {
83
146
  sessionId: string;
84
147
  events: MonitorEvent[];
@@ -90,28 +153,7 @@ export interface MonitorBatch {
90
153
  h: number;
91
154
  dpr: number;
92
155
  };
93
- /** Wire format version. Bump when MonitorEvent shape changes. */
94
156
  v: 1;
95
157
  };
96
158
  }
97
- export interface MonitorConfig {
98
- /** Endpoint to POST batches to. Cleared on stop(). */
99
- url: string;
100
- /** If true, capture successful network calls + console.log/info in addition to failures. */
101
- verbose?: boolean;
102
- /** Hard session cap. Auto-stops monitoring at this point. Default 30 minutes. */
103
- maxSessionMs?: number;
104
- }
105
- export interface MonitorPublicAPI {
106
- /** Start monitoring. Replaces any active session. */
107
- start(config: MonitorConfig): void;
108
- /** Stop monitoring. Idempotent. */
109
- stop(): void;
110
- /** Emit a custom event into the monitor stream. No-op when monitoring is off. */
111
- probe(label: string, data?: unknown): void;
112
- /** Whether monitoring is currently active. */
113
- isActive(): boolean;
114
- /** Current configured URL, or null when inactive. */
115
- currentUrl(): string | null;
116
- }
117
- //# sourceMappingURL=types.d.ts.map
159
+ //# sourceMappingURL=wire.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../../../src/beacon/internal/monitor/wire.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  export interface PinAnchor {
2
2
  target: Element;
3
- /** Selector to re-query if `target` is detached from DOM (React re-render, conditional unmount). */
3
+ /** Selector to re-query if `target` is detached (React re-render, conditional unmount). */
4
4
  selector?: string;
5
- /** Last-known viewport rect from pin time. Used as a faded "anchor lost" marker if both
6
- * the live ref and the selector lookup fail. */
5
+ /** Last-known viewport rect from pin time. Used as a faded "anchor lost" marker
6
+ * if both the live ref and the selector lookup fail. */
7
7
  fallbackRect?: {
8
8
  x: number;
9
9
  y: number;
@@ -13,12 +13,11 @@ export interface PinAnchor {
13
13
  }
14
14
  export interface PickModeOverlay {
15
15
  addPin(pinNumber: number, anchor: PinAnchor): void;
16
- /** Swap the hint pill into a loading state (with spinner). Pass undefined to restore the default hint. */
16
+ /** Swap the hint pill into a loading state (with spinner). Pass undefined to restore the default. */
17
17
  setLoading(message?: string): void;
18
18
  destroy(): void;
19
19
  }
20
20
  export interface PickModeOverlayOptions {
21
- /** Accent color for border, hint pill, markers, and outlines. Defaults to sky-blue. */
22
21
  accent?: string;
23
22
  }
24
23
  export declare function createPickModeOverlay(opts?: PickModeOverlayOptions): PickModeOverlay;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pick-mode-overlay.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/pick-mode-overlay.ts"],"names":[],"mappings":"AAoBA,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;6DACyD;IACzD,YAAY,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/D;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACnD,qGAAqG;IACrG,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD,wBAAgB,qBAAqB,CAAC,IAAI,GAAE,sBAA2B,GAAG,eAAe,CAuMxF"}
@@ -1,7 +1,6 @@
1
1
  export interface PickerOptions {
2
2
  shadowRoot: ShadowRoot;
3
3
  onHover?: (el: Element | null) => void;
4
- /** Outline color for the hovered-element highlight. Defaults to sky-blue. */
5
4
  accent?: string;
6
5
  }
7
6
  export interface PickerHandle {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"picker.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/picker.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAQD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;CAClC;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,YAAY,CAuI7D"}
@@ -1,10 +1,10 @@
1
1
  export type PinPopoverCancel = 'pin' | 'all' | false;
2
2
  export interface PinPopoverResult {
3
3
  note?: string;
4
+ /** 'pin' = discard this pin, keep picking. 'all' = end annotation. false = save. */
4
5
  cancelled: PinPopoverCancel;
5
6
  }
6
7
  export declare function showPinPopover(opts: {
7
- shadowRoot: ShadowRoot;
8
8
  anchor: {
9
9
  x: number;
10
10
  y: number;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pin-popover.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/pin-popover.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAErD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AASD,wBAAgB,cAAc,CAAC,IAAI,EAAE;IACnC,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA+D5B"}
@@ -2,6 +2,7 @@ export interface ScreenshotOptions {
2
2
  quality?: number;
3
3
  pixelRatio?: number;
4
4
  excludeShadowRoot?: ShadowRoot;
5
+ excludeHosts?: Element[];
5
6
  }
6
7
  export declare function captureScreenshot(opts?: ScreenshotOptions): Promise<string>;
7
8
  //# sourceMappingURL=screenshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screenshot.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/screenshot.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC;CAC1B;AAkDD,wBAAsB,iBAAiB,CAAC,IAAI,GAAE,iBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAuCrF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector.d.ts","sourceRoot":"","sources":["../../../../src/beacon/internal/selector.ts"],"names":[],"mappings":"AA+BA,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAyCrD"}
@@ -0,0 +1,14 @@
1
+ import { type ElementCapture } from '../internal/element-capture';
2
+ import type { BeaconPlugin } from '../types';
3
+ export interface Pin extends ElementCapture {
4
+ number: number;
5
+ note?: string;
6
+ }
7
+ export interface DomEleOptions {
8
+ /** Picker outline + marker color. Falls back to --beacon-accent. */
9
+ accent?: string;
10
+ /** Cap on pin count. Default 20 — mirrors the server-side schema. */
11
+ maxPins?: number;
12
+ }
13
+ export declare function domEle(opts?: DomEleOptions): BeaconPlugin;
14
+ //# sourceMappingURL=domEle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domEle.d.ts","sourceRoot":"","sources":["../../../../src/beacon/plugins/domEle.ts"],"names":[],"mappings":"AAYA,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAOlF,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,UAAU,CAAC;AA0BxD,MAAM,WAAW,GAAI,SAAQ,cAAc;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,MAAM,CAAC,IAAI,GAAE,aAAkB,GAAG,YAAY,CA0P7D"}