diff --git a/deno.json b/deno.json index 26b596d..9d14359 100644 --- a/deno.json +++ b/deno.json @@ -4,5 +4,8 @@ }, "name": "@deco/inspect-vscode", "version": "0.2.1", - "exports": "./mod.ts" + "exports": "./mod.ts", + "imports": { + "@std/path": "jsr:@std/path@^1.0.2" + } } diff --git a/deno.lock b/deno.lock new file mode 100644 index 0000000..ebecf1f --- /dev/null +++ b/deno.lock @@ -0,0 +1,26 @@ +{ + "version": "3", + "packages": { + "specifiers": { + "jsr:@std/path@^1.0.2": "jsr:@std/path@1.0.2", + "npm:fuse.js": "npm:fuse.js@7.0.0" + }, + "jsr": { + "@std/path@1.0.2": { + "integrity": "a452174603f8c620bd278a380c596437a9eef50c891c64b85812f735245d9ec7" + } + }, + "npm": { + "fuse.js@7.0.0": { + "integrity": "sha512-14F4hBIxqKvD4Zz/XjDc3y94mNZN6pRv3U13Udo0lNLCWRBUsrMv2xwcF/y/Z5sV6+FQW+/ow68cHpm4sunt8Q==", + "dependencies": {} + } + } + }, + "remote": {}, + "workspace": { + "dependencies": [ + "jsr:@std/path@^1.0.2" + ] + } +} diff --git a/handler.ts b/handler.ts index 32fe2a9..11b4eb4 100644 --- a/handler.ts +++ b/handler.ts @@ -3,7 +3,7 @@ import { search } from "./search.ts"; export default async function inspectHandler( inspectPath = "/_live/inspect/", req: Request, -) { +): Promise { const outerHTML = await req.text(); const url = new URL(req.url); const manifestKey = "./" + url.pathname.replace(inspectPath, ""); @@ -18,6 +18,10 @@ export default async function inspectHandler( }); } -function vsCodeLinkFromResult(file: string, line: number, column: number) { +function vsCodeLinkFromResult( + file: string, + line: number, + column: number, +): string { return `vscode://file/${file}:${line}:${column}`; } diff --git a/inspector.ts b/inspector.ts index 2ff82d2..4aa2337 100644 --- a/inspector.ts +++ b/inspector.ts @@ -51,7 +51,7 @@ export default class DomInspector { ); } - activate = (onDeactivate?: () => void) => { + activate = (onDeactivate?: () => void): void => { this.addEventListeners(); this.active = true; this.onDeactivate = onDeactivate; @@ -60,7 +60,7 @@ export default class DomInspector { ); }; - deactivate = () => { + deactivate = (): void => { console.log( `InspectVSCode deactivated. Press ${this.options.activator.label} to activate again.`, ); @@ -83,12 +83,12 @@ export default class DomInspector { } }; - isActive = () => this.active; + isActive = (): boolean => this.active; /** * Add event listeners for DOM-inspectorey actions */ - addEventListeners = () => { + addEventListeners = (): void => { const { element } = this; element.addEventListener("mouseover", this.handleMouseOver, true); @@ -97,13 +97,13 @@ export default class DomInspector { element.addEventListener("keydown", this.handleCancelKey, true); }; - handleKeydown = (event: KeyboardEvent) => { + handleKeydown = (event: KeyboardEvent): void => { if (this.options.activator.matchEvent(event) && !this.active) { this.activate(); } }; - handleMouseOver = (event: MouseEvent) => { + handleMouseOver = (event: MouseEvent): void => { const targetElement = event.target as HTMLElement; if ( !targetElement || targetElement === document.body || @@ -118,12 +118,12 @@ export default class DomInspector { this.hoveredElement = targetElement; }; - handleMouseOut = (event: MouseEvent) => { + handleMouseOut = (event: MouseEvent): void => { const targetElement = event.target as HTMLElement; this.clean(targetElement); }; - handleClick = async (event: MouseEvent) => { + handleClick = async (event: MouseEvent): Promise => { event.preventDefault(); const targetElement = event.target as HTMLElement; @@ -158,7 +158,7 @@ export default class DomInspector { this.deactivate(); }; - handleCancelKey = (event: KeyboardEvent) => { + handleCancelKey = (event: KeyboardEvent): void => { if (event.key !== "Escape" || event.defaultPrevented) { return; } @@ -180,13 +180,13 @@ export default class DomInspector { return null; }; - paint = (element: HTMLElement) => { + paint = (element: HTMLElement): void => { element.style.outline = this.options.outline; element.style.backgroundColor = this.options.backgroundColor; element.style.backgroundBlendMode = this.options.backgroundBlendMode; }; - clean = (element: HTMLElement) => { + clean = (element: HTMLElement): void => { element.style.outline = ""; element.style.backgroundColor = ""; element.style.backgroundBlendMode = ""; diff --git a/search.ts b/search.ts index c5af594..a513a75 100644 --- a/search.ts +++ b/search.ts @@ -1,5 +1,5 @@ -import { join } from "https://deno.land/std@0.147.0/path/mod.ts"; -import Fuse from "https://deno.land/x/fuse@v6.4.1/dist/fuse.esm.min.js"; +import { join } from "@std/path"; +import Fuse from "npm:fuse.js@7.0.0"; export async function search(content: string, manifestKey: string) { const escaped = content.replace(/>.*/, ">");