From f7f1b604443c030afe29d1059b90f72c69afe081 Mon Sep 17 00:00:00 2001
From: Colin McDonnell <colinmcd94@gmail.com>
Date: Wed, 9 Nov 2022 15:40:40 -0800
Subject: Add bun-types, add typechecking, add `child_process` types (#1475)

* Add bun-types to packages

* Improve typing

* Fix types in tests

* Fix dts tests

* Run formatter

* Fix all type errors

* Add strict mode, fix type errors

* Add ffi changes

* Move workflows to root

* Add workflows

* Remove labeler

* Add child_process types

* Fix synthetic defaults issue

* Remove docs

* Move scripts

* Run prettier

* Include examples in typechecking

* captureStackTrace types

* moved captureStackTrace types to globals

* Address reviews

Co-authored-by: Colin McDonnell <colinmcd@alum.mit.edu>
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
---
 src/api/demo/pages/scan.tsx | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

(limited to 'src/api/demo/pages/scan.tsx')

diff --git a/src/api/demo/pages/scan.tsx b/src/api/demo/pages/scan.tsx
index 819a597b9..87cebd64d 100644
--- a/src/api/demo/pages/scan.tsx
+++ b/src/api/demo/pages/scan.tsx
@@ -1,19 +1,21 @@
 import Head from "next/head";
-import Image from "next/image";
+import { readFile } from "fs/promises";
 import styles from "../styles/Home.module.css";
 
 import React from "react";
 
 if (typeof window !== "undefined") {
   globalThis.Scan = await import("../lib/scan");
-  await import("../lib/api.ts");
+  await import("../lib/api");
 }
 
 export async function getStaticProps(ctx) {
   return {
     props: {
-      code: Bun.readFile(
-        "/Users/jarred/Build/es-module-lexer/test/samples/magic-string.js"
+      // not tested
+      code: readFile(
+        "/Users/jarred/Build/es-module-lexer/test/samples/magic-string.js",
+        { encoding: "utf-8" },
       ),
       defaultFile: "magic-string.js",
     },
@@ -22,7 +24,7 @@ export async function getStaticProps(ctx) {
 
 var textDecoder = new TextDecoder();
 export default function Home({ code, defaultFile }) {
-  const fileNameRef = React.useRef();
+  const fileNameRef = React.useRef<HTMLInputElement>(null);
   const [lexer, setLexer] = React.useState("");
   const [bunResult, setBunResult] = React.useState("");
   const [file, setFile] = React.useState(defaultFile);
@@ -34,13 +36,13 @@ export default function Home({ code, defaultFile }) {
     (event) => {
       globalThis.Scan.transform(
         event.target.value,
-        fileNameRef.current.value
+        fileNameRef?.current?.value,
       ).then((result) => {
         setLexer(JSON.stringify(result.lexer, null, 2));
         setBunResult(JSON.stringify(result.bun, null, 2));
       }, console.error);
     },
-    [fileNameRef, setBunResult, setLexer]
+    [fileNameRef, setBunResult, setLexer],
   );
   return (
     <div className={styles.container}>
-- 
cgit v1.2.3

