| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- import HostInteropType from "../interop";
- export interface Breakpoint {
- fileName: string;
- lineNumber: number;
- }
- /**
- * Get a list of all breakpoints that have been registered
- * @return {Breakpoint[]}
- */
- export async function getBreakpoints(): Promise<Breakpoint[]> {
- return atomicHostRequest<Breakpoint[]>("Debugger.GetBreakpoints");
- }
- /**
- * Add a single breakpoint
- * @param {string} fileName
- * @param {number} lineNumber
- */
- export async function addBreakpoint(fileName: string, lineNumber: number) {
- return atomicHostEvent("Debugger.AddBreakpoint", {
- fileName,
- lineNumber
- });
- }
- /**
- * Remove a single breakpoint
- * @param {string} fileName
- * @param {number} lineNumber
- */
- export async function removeBreakpoint(fileName: string, lineNumber: number) {
- return atomicHostEvent("Debugger.RemoveBreakpoint", {
- fileName,
- lineNumber
- });
- }
- /**
- * Toggle a single breakpoint
- * @param {string} fileName
- * @param {number} lineNumber
- */
- export async function toggleBreakpoint(fileName: string, lineNumber: number) {
- return atomicHostEvent("Debugger.ToggleBreakpoint", {
- fileName,
- lineNumber
- });
- }
- /**
- * Remove all breakpoints
- */
- export async function removeAllBreakpoints() {
- return atomicHostEvent("Debugger.RemoveAllBreakpoints");
- }
- export const debuggerHostKeys = {
- toggleBreakpoint: "HOST_DEBUGGER_ToggleBreakpoint",
- addBreakpoint: "HOST_DEBUGGER_AddBreakpoint",
- removeBreakpoint: "HOST_DEBUGGER_RemoveBreakpoint",
- pause: "HOST_DEBUGGER_Pause",
- step: "HOST_DEBUGGER_Step",
- resume: "HOST_DEBUGGER_Resume",
- stop: "HOST_DEBUGGER_Stop"
- };
- /**
- * Register host-callable commands with the web view. This registers the
- * this named web view with the host so that it can be notified of any
- * host initiated debugger messages
- * @param {string} name The name associated with the listener. Ususally the filename.
- */
- export function registerDebuggerListener(name: string) {
- atomicHostEvent("Debugger.RegisterDebuggerListener", {
- name,
- callbacks: debuggerHostKeys
- });
- }
- /**
- * Notify the host of the current line number and source file. Used during pause, step, etc.
- * @param {string} fileName
- * @param {number} lineNumber
- */
- export async function notifyHostCurrentSourcePosition(fileName: string, lineNumber: number) {
- return atomicHostEvent("Debugger.CurrentSourcePosition", {
- fileName,
- lineNumber
- });
- }
|