From 3142ee72deccb5928780d5154b49712d48ca3a2b Mon Sep 17 00:00:00 2001
From: takker99 <37929109+takker99@users.noreply.github.com>
Date: Thu, 24 Mar 2022 21:04:28 +0900
Subject: [PATCH 1/2] :rotating_light: fix fmt
---
 base.ts | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/base.ts b/base.ts
index b78698a..7a0b51f 100644
--- a/base.ts
+++ b/base.ts
@@ -14,11 +14,11 @@ export interface Page {
   /** the thumbnail URL of a page if exists
    *
    * set to `null` if not exists
-  */
+   */
   image: string | null;
   /** the thumbnail text of a page.
-  * the maximum number of lines is 5.
-  * */ descriptions: string[];
+   * the maximum number of lines is 5.
+   */ descriptions: string[];
   /** ページの最終更新日時 */ updated: number;
   /** Date last visitedに使われる最終アクセス日時 */ accessed: number;
 }
From c610db544825d2ddf61296b0613192fec84bf68c Mon Sep 17 00:00:00 2001
From: takker99 <37929109+takker99@users.noreply.github.com>
Date: Thu, 24 Mar 2022 21:27:46 +0900
Subject: [PATCH 2/2] =?UTF-8?q?:bug:=20React=E3=81=AE=E5=9E=8B=E5=AE=9A?=
 =?UTF-8?q?=E7=BE=A9=E3=81=8C=E5=A3=8A=E3=82=8C=E3=81=A6=E3=81=97=E3=81=BE?=
 =?UTF-8?q?=E3=81=A3=E3=81=9F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
 deps/events.ts |  2 +-
 deps/react.ts  | 73 +++++++++++++++++++++++++++++++++++++++++++++++++-
 userscript.ts  |  5 ++++
 3 files changed, 78 insertions(+), 2 deletions(-)
diff --git a/deps/events.ts b/deps/events.ts
index 94f12cc..23acfb2 100644
--- a/deps/events.ts
+++ b/deps/events.ts
@@ -1 +1 @@
-export type { EventEmitter } from "https://deno.land/std@0.131.0/node/events.ts";
+export type { EventEmitter } from "https://deno.land/std@0.131.0/node/_events.d.ts";
diff --git a/deps/react.ts b/deps/react.ts
index 06095b7..4994920 100644
--- a/deps/react.ts
+++ b/deps/react.ts
@@ -1 +1,72 @@
-export type { default as React } from "https://esm.sh/react@17.0.2";
+/// 
+/// 
+/// 
+
+// cut and modified from https://cdn.esm.sh/v73/@types/react@17.0.42/index.d.ts
+
+type NativeMouseEvent = MouseEvent;
+
+// deno-lint-ignore no-namespace
+export namespace React {
+  /**
+   * currentTarget - a reference to the element on which the event listener is registered.
+   *
+   * target - a reference to the element from which the event was originally dispatched.
+   * This might be a child element to the element on which the event listener is registered.
+   * If you thought this should be `EventTarget & T`, see https://github.com/DefinitelyTyped/DefinitelyTyped/issues/11508#issuecomment-256045682
+   */
+  export interface SyntheticEvent<
+    T extends Element = Element,
+    E extends Event = Event,
+  > {
+    nativeEvent: E;
+    currentTarget: T & EventTarget;
+    target: EventTarget;
+    bubbles: boolean;
+    cancelable: boolean;
+    defaultPrevented: boolean;
+    eventPhase: number;
+    isTrusted: boolean;
+    preventDefault(): void;
+    isDefaultPrevented(): boolean;
+    stopPropagation(): void;
+    isPropagationStopped(): boolean;
+    persist(): void;
+    timeStamp: number;
+    type: string;
+  }
+  export interface AbstractView {
+    styleMedia: StyleMedia;
+    document: Document;
+  }
+
+  export interface UIEvent
+    extends SyntheticEvent {
+    detail: number;
+    view: AbstractView;
+  }
+  export interface MouseEvent<
+    T extends Element = Element,
+    E extends Event = NativeMouseEvent,
+  > extends UIEvent {
+    altKey: boolean;
+    button: number;
+    buttons: number;
+    clientX: number;
+    clientY: number;
+    ctrlKey: boolean;
+    /**
+     * See [DOM Level 3 Events spec](https://www.w3.org/TR/uievents-key/#keys-modifier). for a list of valid (case-sensitive) arguments to this method.
+     */
+    getModifierState(key: string): boolean;
+    metaKey: boolean;
+    movementX: number;
+    movementY: number;
+    pageX: number;
+    pageY: number;
+    relatedTarget: EventTarget | null;
+    screenX: number;
+    screenY: number;
+    shiftKey: boolean;
+  }
+}
diff --git a/userscript.ts b/userscript.ts
index 2519832..ecbf4a0 100644
--- a/userscript.ts
+++ b/userscript.ts
@@ -1,3 +1,8 @@
+/// 
+/// 
+/// 
+/// 
+
 import { ParsedLine } from "./userscript/blocks.ts";
 import { StringLc } from "./base.ts";
 import type { Layout, PartialLayout } from "./layout.ts";