From c67f9987cad34ec1a0a03e72326173d23e3f4360 Mon Sep 17 00:00:00 2001 From: Michael Hunteman Date: Fri, 26 Apr 2024 11:51:49 -0700 Subject: Use bun --- .gitignore | 1 + package.json | 3 ++- src/App.tsx | 1 + src/ThemeContextProvider.tsx | 1 + src/apiSlice.ts | 2 +- src/components/Admin.tsx | 1 + src/components/Desktop.tsx | 1 + src/components/Home.tsx | 1 + src/components/Mobile.tsx | 4 ++-- src/components/NavBar.tsx | 1 + src/components/Registry.tsx | 2 ++ src/components/Rsvp.tsx | 1 + src/components/RsvpForm.tsx | 8 +++++--- src/components/Schedule.tsx | 4 ++-- src/features/auth/GuestLogin.tsx | 4 +++- src/features/auth/authSlice.ts | 2 +- src/main.css | 4 +++- tsconfig.json | 27 +++++++++++++++------------ tsconfig.node.json | 11 ----------- 19 files changed, 44 insertions(+), 35 deletions(-) delete mode 100644 tsconfig.node.json diff --git a/.gitignore b/.gitignore index a547bf3..0750d47 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ node_modules dist dist-ssr *.local +bun.lockb # Editor directories and files .vscode/* diff --git a/package.json b/package.json index 3edb6db..fb5ffcd 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "version": "0.0.0", "type": "module", "scripts": { - "dev": "vite --host", + "dev": "bunx --bun vite", "build": "tsc && vite build", "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", "preview": "vite preview" @@ -26,6 +26,7 @@ }, "devDependencies": { "@hookform/devtools": "^4.3.1", + "@types/bun": "^1.1.0", "@types/react": "^18.2.55", "@types/react-dom": "^18.2.19", "@typescript-eslint/eslint-plugin": "^6.21.0", diff --git a/src/App.tsx b/src/App.tsx index 11540b1..27fc180 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { Outlet } from 'react-router-dom'; import CssBaseline from '@mui/material/CssBaseline'; import NavBar from './components/NavBar'; diff --git a/src/ThemeContextProvider.tsx b/src/ThemeContextProvider.tsx index dc3cb89..87b401a 100644 --- a/src/ThemeContextProvider.tsx +++ b/src/ThemeContextProvider.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { ReactNode, createContext, useMemo, useState } from 'react'; import { ThemeProvider, createTheme } from '@mui/material/styles'; import useMediaQuery from '@mui/material/useMediaQuery'; diff --git a/src/apiSlice.ts b/src/apiSlice.ts index f337fdd..3305dbf 100644 --- a/src/apiSlice.ts +++ b/src/apiSlice.ts @@ -1,5 +1,5 @@ import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react'; -import { RootState } from './store'; +import type { RootState } from './store'; export interface LoginRequest { firstName: string; diff --git a/src/components/Admin.tsx b/src/components/Admin.tsx index a3da3fa..1c941a5 100644 --- a/src/components/Admin.tsx +++ b/src/components/Admin.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { useGetGuestsQuery } from '../apiSlice'; function Admin() { diff --git a/src/components/Desktop.tsx b/src/components/Desktop.tsx index 983c929..72b583d 100644 --- a/src/components/Desktop.tsx +++ b/src/components/Desktop.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { useContext } from 'react'; import { Link } from 'react-router-dom'; import { Button, IconButton } from '@mui/material'; diff --git a/src/components/Home.tsx b/src/components/Home.tsx index 4d4428a..839667a 100644 --- a/src/components/Home.tsx +++ b/src/components/Home.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { useEffect, useRef, useState } from 'react'; import './active.css'; diff --git a/src/components/Mobile.tsx b/src/components/Mobile.tsx index f5502c0..7d790e1 100644 --- a/src/components/Mobile.tsx +++ b/src/components/Mobile.tsx @@ -1,6 +1,6 @@ -import { useContext } from 'react'; +import React from 'react'; +import { useContext, useState } from 'react'; import { Link } from 'react-router-dom'; -import { useState } from 'react'; import { Button, IconButton, Menu, MenuItem } from '@mui/material'; import DarkModeIcon from '@mui/icons-material/DarkMode'; import LightModeIcon from '@mui/icons-material/LightMode'; diff --git a/src/components/NavBar.tsx b/src/components/NavBar.tsx index f050d7a..677828b 100644 --- a/src/components/NavBar.tsx +++ b/src/components/NavBar.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { Link } from 'react-router-dom'; import { AppBar, Toolbar, Typography } from '@mui/material'; import useMediaQuery from '@mui/material/useMediaQuery'; diff --git a/src/components/Registry.tsx b/src/components/Registry.tsx index 7319560..60a73f9 100644 --- a/src/components/Registry.tsx +++ b/src/components/Registry.tsx @@ -1,3 +1,5 @@ +import React from 'react'; + function Registry() { return ( <> diff --git a/src/components/Rsvp.tsx b/src/components/Rsvp.tsx index 104196f..dad7213 100644 --- a/src/components/Rsvp.tsx +++ b/src/components/Rsvp.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { useMemo } from 'react'; import { useLocation, Navigate, Outlet } from 'react-router-dom'; import { useSelector } from 'react-redux'; diff --git a/src/components/RsvpForm.tsx b/src/components/RsvpForm.tsx index a6e7036..b9dd991 100644 --- a/src/components/RsvpForm.tsx +++ b/src/components/RsvpForm.tsx @@ -1,3 +1,6 @@ +import React from 'react'; +import { useRef } from 'react'; +import { useOutletContext } from 'react-router-dom'; import { Button, Container, @@ -10,9 +13,8 @@ import { TextField, } from '@mui/material'; import { useForm, Controller, useFieldArray } from 'react-hook-form'; -import { useOutletContext } from 'react-router-dom'; -import { useUpdateGuestMutation, Guest } from '../apiSlice'; -import { useRef } from 'react'; +import { useUpdateGuestMutation } from '../apiSlice'; +import type { Guest } from '../apiSlice'; type FormValues = { id: number; diff --git a/src/components/Schedule.tsx b/src/components/Schedule.tsx index ef72769..08b10e2 100644 --- a/src/components/Schedule.tsx +++ b/src/components/Schedule.tsx @@ -1,3 +1,4 @@ +import React from 'react'; import { Container, Paper } from '@mui/material'; import PlaceIcon from '@mui/icons-material/Place'; @@ -6,8 +7,7 @@ function Schedule() {