diff --git a/.eslintrc.json b/.eslintrc.json
index 67ea723..bffb357 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -1,22 +1,3 @@
{
- "extends": "next/core-web-vitals",
- "rules": {
- "react/react-in-jsx-scope": 0,
- "import/no-extraneous-dependencies": 0,
- "no-sparse-arrays": 1,
- "import/extensions": 0,
- "no-shadow": 0,
- "no-nested-ternary": 0,
- "no-restricted-globals": 0,
- "@typescript-eslint/ban-types": 0,
- "react/static-property-placement": [
- "warn",
- "property assignment",
- {
- "contextTypes": "static public field",
- "contextType": "static public field",
- "displayName": "static public field"
- }
- ]
- }
+ "extends": "next/core-web-vitals"
}
diff --git a/app/api/chat/route.ts b/app/api/chat/route.ts
index c26141e..626feca 100644
--- a/app/api/chat/route.ts
+++ b/app/api/chat/route.ts
@@ -6,7 +6,7 @@ export interface Message {
}
export async function POST(req: NextRequest) {
try {
- const { prompt, messages,input } = (await req.json()) as {
+ const { prompt, messages, input } = (await req.json()) as {
prompt: string
messages: Message[]
input: string
diff --git a/app/layout.tsx b/app/layout.tsx
index d49dddf..02edfc9 100644
--- a/app/layout.tsx
+++ b/app/layout.tsx
@@ -4,11 +4,20 @@ import './globals.css'
import { Inter } from 'next/font/google'
import { Toaster } from 'react-hot-toast'
import { ThemeProvider } from '@material-tailwind/react'
+
const inter = Inter({ subsets: ['latin'] })
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
+
+ ChatGPT Lite
+
+
+
{
{currentChat?.persona?.name}
- {conversation?.map((item, index) => (
-
- ))}
+ {conversation?.map((item, index) =>
)}
{currentMessage &&
}
diff --git a/components/personaModal/NormalForm.tsx b/components/personaModal/NormalForm.tsx
index ec93f8d..3ba2819 100644
--- a/components/personaModal/NormalForm.tsx
+++ b/components/personaModal/NormalForm.tsx
@@ -34,6 +34,7 @@ const NormalForm = (props: NormalFormProps, ref: any) => {
setValue('name', detail.name, { shouldTouch: true })
setValue('prompt', detail.prompt, { shouldTouch: true })
}
+ // eslint-disable-next-line react-hooks/exhaustive-deps
}, [detail])
return (
diff --git a/components/personaPanel/index.tsx b/components/personaPanel/index.tsx
index 9c5a4d4..2beffed 100644
--- a/components/personaPanel/index.tsx
+++ b/components/personaPanel/index.tsx
@@ -32,6 +32,7 @@ const PersonaPanel = (props: PersonaPanelProps) => {
const [promptList, setPromptList] = useState([])
const [searchText, setSearchText] = useState('')
+ // eslint-disable-next-line react-hooks/exhaustive-deps
const handleSearch = useCallback(
debounce((type: string, list: Persona[], searchText: string) => {
setPromptList(
diff --git a/hooks/useChatHook.ts b/hooks/useChatHook.ts
index 5416f9c..1fe3031 100644
--- a/hooks/useChatHook.ts
+++ b/hooks/useChatHook.ts
@@ -188,6 +188,7 @@ const useChatHook = () => {
document.body.removeAttribute('style')
localStorage.setItem(StorageKeys.Chat_List, JSON.stringify(chatList))
}
+ // eslint-disable-next-line react-hooks/exhaustive-deps
}, [])
useEffect(() => {
diff --git a/package-lock.json b/package-lock.json
index 9cd6854..fb78ca7 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8,40 +8,40 @@
"name": "chatgpt-lite",
"version": "0.1.0",
"dependencies": {
- "@material-tailwind/react": "^2.0.3",
- "@microsoft/fetch-event-source": "^2.0.1",
- "axios": "^1.4.0",
- "clsx": "^1.2.1",
- "eventsource-parser": "^0.1.0",
- "lodash-es": "^4.17.21",
- "next": "13.4.4",
+ "@material-tailwind/react": "2.0.6",
+ "@microsoft/fetch-event-source": "2.0.1",
+ "axios": "1.4.0",
+ "clsx": "1.2.1",
+ "eventsource-parser": "1.0.0",
+ "lodash-es": "4.17.21",
+ "next": "13.4.10",
"react": "18.2.0",
"react-dom": "18.2.0",
- "react-dropzone": "^14.2.3",
- "react-hook-form": "^7.44.3",
- "react-hot-toast": "^2.4.1",
- "react-icons": "^4.9.0",
- "react-markdown": "^8.0.7",
+ "react-dropzone": "14.2.3",
+ "react-hook-form": "7.45.1",
+ "react-hot-toast": "2.4.1",
+ "react-icons": "4.10.1",
+ "react-markdown": "8.0.7",
"react-syntax-highlighter": "^15.5.0",
- "rehype-katex": "^6.0.3",
- "remark-gfm": "^3.0.1",
- "remark-math": "^5.1.1",
- "tailwindcss": "3.3.2",
- "uuid": "^9.0.0"
+ "rehype-katex": "6.0.3",
+ "remark-gfm": "3.0.1",
+ "remark-math": "5.1.1",
+ "tailwindcss": "3.3.3",
+ "uuid": "9.0.0"
},
"devDependencies": {
- "@types/lodash-es": "^4.17.7",
- "@types/node": "20.2.5",
- "@types/react": "18.2.9",
- "@types/react-dom": "18.2.4",
- "@types/react-syntax-highlighter": "^15.5.7",
- "@types/uuid": "^9.0.2",
+ "@types/lodash-es": "4.17.8",
+ "@types/node": "20.4.2",
+ "@types/react": "18.2.15",
+ "@types/react-dom": "18.2.7",
+ "@types/react-syntax-highlighter": "15.5.7",
+ "@types/uuid": "9.0.2",
"autoprefixer": "10.4.14",
- "eslint": "8.42.0",
- "eslint-config-next": "13.4.4",
- "postcss": "8.4.24",
- "prettier": "^2.8.8",
- "typescript": "5.1.3"
+ "eslint": "8.45.0",
+ "eslint-config-next": "13.4.10",
+ "postcss": "8.4.26",
+ "prettier": "3.0.0",
+ "typescript": "5.1.6"
}
},
"node_modules/@aashutoshrathi/word-wrap": {
@@ -138,9 +138,9 @@
}
},
"node_modules/@eslint/js": {
- "version": "8.42.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.42.0.tgz",
- "integrity": "sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==",
+ "version": "8.44.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz",
+ "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -275,9 +275,9 @@
"integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw=="
},
"node_modules/@material-tailwind/react": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@material-tailwind/react/-/react-2.0.4.tgz",
- "integrity": "sha512-oPXfbDPutC2Sf/v3FNauirC3qBKUO77YfJgMgAweL53O+lNYqJCsg7znHx2W2KH6lJCDB0vRnry2KRRgwjCTuQ==",
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/@material-tailwind/react/-/react-2.0.6.tgz",
+ "integrity": "sha512-aT2BZd9AAlwuFiuA29FQbayK4RmPPHs5Q3RlB9cnTtpOHXz6v32i3YC90bh1fINpixFeKftJeO7YzeaukX5zsQ==",
"dependencies": {
"@floating-ui/react": "^0.19.0",
"@heroicons/react": "^2.0.13",
@@ -359,23 +359,23 @@
}
},
"node_modules/@next/env": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.4.tgz",
- "integrity": "sha512-q/y7VZj/9YpgzDe64Zi6rY1xPizx80JjlU2BTevlajtaE3w1LqweH1gGgxou2N7hdFosXHjGrI4OUvtFXXhGLg=="
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.10.tgz",
+ "integrity": "sha512-3G1yD/XKTSLdihyDSa8JEsaWOELY+OWe08o0LUYzfuHp1zHDA8SObQlzKt+v+wrkkPcnPweoLH1ImZeUa0A1NQ=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.4.4.tgz",
- "integrity": "sha512-5jnh7q6I15efnjR/rR+/TGTc9hn53g3JTbEjAMjmeQiExKqEUgIXqrHI5zlTNlNyzCPkBB860/ctxXheZaF2Vw==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.4.10.tgz",
+ "integrity": "sha512-YJqyq6vk39JQfvaNtN83t/p5Jy45+bazRL+V4QI8FPd3FBqFYMEsULiwRLgSJMgFqkk4t4JbeZurz+gILEAFpA==",
"dev": true,
"dependencies": {
"glob": "7.1.7"
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.4.tgz",
- "integrity": "sha512-xfjgXvp4KalNUKZMHmsFxr1Ug+aGmmO6NWP0uoh4G3WFqP/mJ1xxfww0gMOeMeSq/Jyr5k7DvoZ2Pv+XOITTtw==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.10.tgz",
+ "integrity": "sha512-4bsdfKmmg7mgFGph0UorD1xWfZ5jZEw4kKRHYEeTK9bT1QnMbPVPlVXQRIiFPrhoDQnZUoa6duuPUJIEGLV1Jg==",
"cpu": [
"arm64"
],
@@ -388,9 +388,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.4.tgz",
- "integrity": "sha512-ZY9Ti1hkIwJsxGus3nlubIkvYyB0gNOYxKrfsOrLEqD0I2iCX8D7w8v6QQZ2H+dDl6UT29oeEUdDUNGk4UEpfg==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.10.tgz",
+ "integrity": "sha512-ngXhUBbcZIWZWqNbQSNxQrB9T1V+wgfCzAor2olYuo/YpaL6mUYNUEgeBMhr8qwV0ARSgKaOp35lRvB7EmCRBg==",
"cpu": [
"x64"
],
@@ -403,9 +403,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.4.tgz",
- "integrity": "sha512-+KZnDeMShYkpkqAvGCEDeqYTRADJXc6SY1jWXz+Uo6qWQO/Jd9CoyhTJwRSxvQA16MoYzvILkGaDqirkRNctyA==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.10.tgz",
+ "integrity": "sha512-SjCZZCOmHD4uyM75MVArSAmF5Y+IJSGroPRj2v9/jnBT36SYFTORN8Ag/lhw81W9EeexKY/CUg2e9mdebZOwsg==",
"cpu": [
"arm64"
],
@@ -418,9 +418,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.4.tgz",
- "integrity": "sha512-evC1twrny2XDT4uOftoubZvW3EG0zs0ZxMwEtu/dDGVRO5n5pT48S8qqEIBGBUZYu/Xx4zzpOkIxx1vpWdE+9A==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.10.tgz",
+ "integrity": "sha512-F+VlcWijX5qteoYIOxNiBbNE8ruaWuRlcYyIRK10CugqI/BIeCDzEDyrHIHY8AWwbkTwe6GRHabMdE688Rqq4Q==",
"cpu": [
"arm64"
],
@@ -433,9 +433,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.4.tgz",
- "integrity": "sha512-PX706XcCHr2FfkyhP2lpf+pX/tUvq6/ke7JYnnr0ykNdEMo+sb7cC/o91gnURh4sPYSiZJhsF2gbIqg9rciOHQ==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.10.tgz",
+ "integrity": "sha512-WDv1YtAV07nhfy3i1visr5p/tjiH6CeXp4wX78lzP1jI07t4PnHHG1WEDFOduXh3WT4hG6yN82EQBQHDi7hBrQ==",
"cpu": [
"x64"
],
@@ -448,9 +448,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.4.tgz",
- "integrity": "sha512-TKUUx3Ftd95JlHV6XagEnqpT204Y+IsEa3awaYIjayn0MOGjgKZMZibqarK3B1FsMSPaieJf2FEAcu9z0yT5aA==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.10.tgz",
+ "integrity": "sha512-zFkzqc737xr6qoBgDa3AwC7jPQzGLjDlkNmt/ljvQJ/Veri5ECdHjZCUuiTUfVjshNIIpki6FuP0RaQYK9iCRg==",
"cpu": [
"x64"
],
@@ -463,9 +463,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.4.tgz",
- "integrity": "sha512-FP8AadgSq4+HPtim7WBkCMGbhr5vh9FePXiWx9+YOdjwdQocwoCK5ZVC3OW8oh3TWth6iJ0AXJ/yQ1q1cwSZ3A==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.10.tgz",
+ "integrity": "sha512-IboRS8IWz5mWfnjAdCekkl8s0B7ijpWeDwK2O8CdgZkoCDY0ZQHBSGiJ2KViAG6+BJVfLvcP+a2fh6cdyBr9QQ==",
"cpu": [
"arm64"
],
@@ -478,9 +478,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.4.tgz",
- "integrity": "sha512-3WekVmtuA2MCdcAOrgrI+PuFiFURtSyyrN1I3UPtS0ckR2HtLqyqmS334Eulf15g1/bdwMteePdK363X/Y9JMg==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.10.tgz",
+ "integrity": "sha512-bSA+4j8jY4EEiwD/M2bol4uVEu1lBlgsGdvM+mmBm/BbqofNBfaZ2qwSbwE2OwbAmzNdVJRFRXQZ0dkjopTRaQ==",
"cpu": [
"ia32"
],
@@ -493,9 +493,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.4.tgz",
- "integrity": "sha512-AHRITu/CrlQ+qzoqQtEMfaTu7GHaQ6bziQln/pVWpOYC1wU+Mq6VQQFlsDtMCnDztPZtppAXdvvbNS7pcfRzlw==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.10.tgz",
+ "integrity": "sha512-g2+tU63yTWmcVQKDGY0MV1PjjqgZtwM4rB1oVVi/v0brdZAcrcTV+04agKzWtvWroyFz6IqtT0MoZJA7PNyLVw==",
"cpu": [
"x64"
],
@@ -607,9 +607,9 @@
"dev": true
},
"node_modules/@types/lodash-es": {
- "version": "4.17.7",
- "resolved": "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.7.tgz",
- "integrity": "sha512-z0ptr6UI10VlU6l5MYhGwS4mC8DZyYer2mCoyysZtSF7p26zOX8UpbrV0YpNYLGS8K4PUFIyEr62IMFFjveSiQ==",
+ "version": "4.17.8",
+ "resolved": "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.8.tgz",
+ "integrity": "sha512-euY3XQcZmIzSy7YH5+Unb3b2X12Wtk54YWINBvvGQ5SmMvwb11JQskGsfkH/5HXK77Kr8GF0wkVDIxzAisWtog==",
"dev": true,
"dependencies": {
"@types/lodash": "*"
@@ -629,9 +629,9 @@
"integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA=="
},
"node_modules/@types/node": {
- "version": "20.2.5",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.2.5.tgz",
- "integrity": "sha512-JJulVEQXmiY9Px5axXHeYGLSjhkZEnD+MDPDGbCbIAbMslkKwmygtZFy1X6s/075Yo94sf8GuSlFfPzysQrWZQ==",
+ "version": "20.4.2",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.2.tgz",
+ "integrity": "sha512-Dd0BYtWgnWJKwO1jkmTrzofjK2QXXcai0dmtzvIBhcA+RsG5h8R3xlyta0kGOZRNfL9GuRtb1knmPEhQrePCEw==",
"dev": true
},
"node_modules/@types/prop-types": {
@@ -640,9 +640,9 @@
"integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
},
"node_modules/@types/react": {
- "version": "18.2.9",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.9.tgz",
- "integrity": "sha512-pL3JAesUkF7PEQGxh5XOwdXGV907te6m1/Qe1ERJLgomojS6Ne790QiA7GUl434JEkFA2aAaB6qJ5z4e1zJn/w==",
+ "version": "18.2.15",
+ "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.15.tgz",
+ "integrity": "sha512-oEjE7TQt1fFTFSbf8kkNuc798ahTUzn3Le67/PWjE8MAfYAD/qB7O8hSTcromLFqHCt9bcdOg5GXMokzTjJ5SA==",
"dependencies": {
"@types/prop-types": "*",
"@types/scheduler": "*",
@@ -650,9 +650,9 @@
}
},
"node_modules/@types/react-dom": {
- "version": "18.2.4",
- "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.4.tgz",
- "integrity": "sha512-G2mHoTMTL4yoydITgOGwWdWMVd8sNgyEP85xVmMKAPUBwQWm9wBPQUmvbeF4V3WBY1P7mmL4BkjQ0SqUpf1snw==",
+ "version": "18.2.7",
+ "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz",
+ "integrity": "sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==",
"dev": true,
"dependencies": {
"@types/react": "*"
@@ -1756,15 +1756,15 @@
}
},
"node_modules/eslint": {
- "version": "8.42.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.42.0.tgz",
- "integrity": "sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==",
+ "version": "8.45.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz",
+ "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.4.0",
- "@eslint/eslintrc": "^2.0.3",
- "@eslint/js": "8.42.0",
+ "@eslint/eslintrc": "^2.1.0",
+ "@eslint/js": "8.44.0",
"@humanwhocodes/config-array": "^0.11.10",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
@@ -1776,7 +1776,7 @@
"escape-string-regexp": "^4.0.0",
"eslint-scope": "^7.2.0",
"eslint-visitor-keys": "^3.4.1",
- "espree": "^9.5.2",
+ "espree": "^9.6.0",
"esquery": "^1.4.2",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
@@ -1786,7 +1786,6 @@
"globals": "^13.19.0",
"graphemer": "^1.4.0",
"ignore": "^5.2.0",
- "import-fresh": "^3.0.0",
"imurmurhash": "^0.1.4",
"is-glob": "^4.0.0",
"is-path-inside": "^3.0.3",
@@ -1796,9 +1795,8 @@
"lodash.merge": "^4.6.2",
"minimatch": "^3.1.2",
"natural-compare": "^1.4.0",
- "optionator": "^0.9.1",
+ "optionator": "^0.9.3",
"strip-ansi": "^6.0.1",
- "strip-json-comments": "^3.1.0",
"text-table": "^0.2.0"
},
"bin": {
@@ -1812,12 +1810,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.4.4.tgz",
- "integrity": "sha512-z/PMbm6L0iC/fwISULxe8IVy4DtNqZk2wQY711o35klenq70O6ns82A8yuMVCFjHC0DIyB2lyugesRtuk9u8dQ==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.4.10.tgz",
+ "integrity": "sha512-+JjcM6lQmFR5Mw0ORm9o1CR29+z/uajgSfYAPEGIBxOhTHBgCMs7ysuwi72o7LkMmA8E3N7/h09pSGZxs0s85g==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "13.4.4",
+ "@next/eslint-plugin-next": "13.4.10",
"@rushstack/eslint-patch": "^1.1.3",
"@typescript-eslint/parser": "^5.42.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -1825,7 +1823,7 @@
"eslint-plugin-import": "^2.26.0",
"eslint-plugin-jsx-a11y": "^6.5.1",
"eslint-plugin-react": "^7.31.7",
- "eslint-plugin-react-hooks": "^4.5.0"
+ "eslint-plugin-react-hooks": "5.0.0-canary-7118f5dd7-20230705"
},
"peerDependencies": {
"eslint": "^7.23.0 || ^8.0.0",
@@ -1991,9 +1989,9 @@
}
},
"node_modules/eslint-plugin-import/node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true,
"bin": {
"semver": "bin/semver.js"
@@ -2030,9 +2028,9 @@
}
},
"node_modules/eslint-plugin-jsx-a11y/node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true,
"bin": {
"semver": "bin/semver.js"
@@ -2068,9 +2066,9 @@
}
},
"node_modules/eslint-plugin-react-hooks": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz",
- "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==",
+ "version": "5.0.0-canary-7118f5dd7-20230705",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.0.0-canary-7118f5dd7-20230705.tgz",
+ "integrity": "sha512-AZYbMo/NW9chdL7vk6HQzQhT+PvTAEVqWk9ziruUoW2kAOcN5qNyelv70e0F1VNQAbvutOC9oc+xfWycI9FxDw==",
"dev": true,
"engines": {
"node": ">=10"
@@ -2109,9 +2107,9 @@
}
},
"node_modules/eslint-plugin-react/node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true,
"bin": {
"semver": "bin/semver.js"
@@ -2205,9 +2203,9 @@
}
},
"node_modules/eventsource-parser": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-0.1.0.tgz",
- "integrity": "sha512-M9QjFtEIkwytUarnx113HGmgtk52LSn3jNAtnWKi3V+b9rqSfQeVdLsaD5AG/O4IrGQwmAAHBIsqbmURPTd2rA==",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-1.0.0.tgz",
+ "integrity": "sha512-9jgfSCa3dmEme2ES3mPByGXfgZ87VbP97tng1G2nWwWx6bV2nYxm2AWCrbQjXToSe+yYlqaZNtxffR9IeQr95g==",
"engines": {
"node": ">=14.18"
}
@@ -2599,6 +2597,11 @@
"node": ">=10.13.0"
}
},
+ "node_modules/glob-to-regexp": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
+ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
+ },
"node_modules/globals": {
"version": "13.20.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz",
@@ -2672,8 +2675,7 @@
"node_modules/graceful-fs": {
"version": "4.2.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
- "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
- "dev": true
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
},
"node_modules/graphemer": {
"version": "1.4.0",
@@ -4577,16 +4579,17 @@
"dev": true
},
"node_modules/next": {
- "version": "13.4.4",
- "resolved": "https://registry.npmjs.org/next/-/next-13.4.4.tgz",
- "integrity": "sha512-C5S0ysM0Ily9McL4Jb48nOQHT1BukOWI59uC3X/xCMlYIh9rJZCv7nzG92J6e1cOBqQbKovlpgvHWFmz4eKKEA==",
+ "version": "13.4.10",
+ "resolved": "https://registry.npmjs.org/next/-/next-13.4.10.tgz",
+ "integrity": "sha512-4ep6aKxVTQ7rkUW2fBLhpBr/5oceCuf4KmlUpvG/aXuDTIf9mexNSpabUD6RWPspu6wiJJvozZREhXhueYO36A==",
"dependencies": {
- "@next/env": "13.4.4",
+ "@next/env": "13.4.10",
"@swc/helpers": "0.5.1",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001406",
"postcss": "8.4.14",
"styled-jsx": "5.1.1",
+ "watchpack": "2.4.0",
"zod": "3.21.4"
},
"bin": {
@@ -4596,15 +4599,15 @@
"node": ">=16.8.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "13.4.4",
- "@next/swc-darwin-x64": "13.4.4",
- "@next/swc-linux-arm64-gnu": "13.4.4",
- "@next/swc-linux-arm64-musl": "13.4.4",
- "@next/swc-linux-x64-gnu": "13.4.4",
- "@next/swc-linux-x64-musl": "13.4.4",
- "@next/swc-win32-arm64-msvc": "13.4.4",
- "@next/swc-win32-ia32-msvc": "13.4.4",
- "@next/swc-win32-x64-msvc": "13.4.4"
+ "@next/swc-darwin-arm64": "13.4.10",
+ "@next/swc-darwin-x64": "13.4.10",
+ "@next/swc-linux-arm64-gnu": "13.4.10",
+ "@next/swc-linux-arm64-musl": "13.4.10",
+ "@next/swc-linux-x64-gnu": "13.4.10",
+ "@next/swc-linux-x64-musl": "13.4.10",
+ "@next/swc-win32-arm64-msvc": "13.4.10",
+ "@next/swc-win32-ia32-msvc": "13.4.10",
+ "@next/swc-win32-x64-msvc": "13.4.10"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
@@ -5023,9 +5026,9 @@
}
},
"node_modules/postcss": {
- "version": "8.4.24",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz",
- "integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==",
+ "version": "8.4.26",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.26.tgz",
+ "integrity": "sha512-jrXHFF8iTloAenySjM/ob3gSj7pCu0Ji49hnjqzsgSRa50hkWCKD0HQ+gMNJkW38jBI68MpAAg7ZWwHwX8NMMw==",
"funding": [
{
"type": "opencollective",
@@ -5156,15 +5159,15 @@
}
},
"node_modules/prettier": {
- "version": "2.8.8",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
- "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.0.tgz",
+ "integrity": "sha512-zBf5eHpwHOGPC47h0zrPyNn+eAEIdEzfywMoYn2XPi0P44Zp0tSq64rq0xAREh4auw2cJZHo9QUob+NqCQky4g==",
"dev": true,
"bin": {
- "prettier": "bin-prettier.js"
+ "prettier": "bin/prettier.cjs"
},
"engines": {
- "node": ">=10.13.0"
+ "node": ">=14"
},
"funding": {
"url": "https://github.com/prettier/prettier?sponsor=1"
@@ -6058,9 +6061,9 @@
}
},
"node_modules/tailwindcss": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz",
- "integrity": "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==",
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz",
+ "integrity": "sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==",
"dependencies": {
"@alloc/quick-lru": "^5.2.0",
"arg": "^5.0.2",
@@ -6082,7 +6085,6 @@
"postcss-load-config": "^4.0.1",
"postcss-nested": "^6.0.1",
"postcss-selector-parser": "^6.0.11",
- "postcss-value-parser": "^4.2.0",
"resolve": "^1.22.2",
"sucrase": "^3.32.0"
},
@@ -6251,9 +6253,9 @@
}
},
"node_modules/typescript": {
- "version": "5.1.3",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.3.tgz",
- "integrity": "sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==",
+ "version": "5.1.6",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz",
+ "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==",
"dev": true,
"bin": {
"tsc": "bin/tsc",
@@ -6513,6 +6515,18 @@
"url": "https://opencollective.com/unified"
}
},
+ "node_modules/watchpack": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
+ "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
+ "dependencies": {
+ "glob-to-regexp": "^0.4.1",
+ "graceful-fs": "^4.1.2"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
"node_modules/web-namespaces": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz",
diff --git a/package.json b/package.json
index a6d4314..e664d0f 100644
--- a/package.json
+++ b/package.json
@@ -13,39 +13,39 @@
"format:check": "prettier --check '**/*.{ts,tsx,js,html,css,md}'"
},
"dependencies": {
- "@material-tailwind/react": "^2.0.3",
- "@microsoft/fetch-event-source": "^2.0.1",
- "axios": "^1.4.0",
- "clsx": "^1.2.1",
- "eventsource-parser": "^0.1.0",
- "lodash-es": "^4.17.21",
- "next": "13.4.4",
+ "@material-tailwind/react": "2.0.6",
+ "@microsoft/fetch-event-source": "2.0.1",
+ "axios": "1.4.0",
+ "clsx": "1.2.1",
+ "eventsource-parser": "1.0.0",
+ "lodash-es": "4.17.21",
+ "next": "13.4.10",
"react": "18.2.0",
"react-dom": "18.2.0",
- "react-dropzone": "^14.2.3",
- "react-hook-form": "^7.44.3",
- "react-hot-toast": "^2.4.1",
- "react-icons": "^4.9.0",
- "react-markdown": "^8.0.7",
+ "react-dropzone": "14.2.3",
+ "react-hook-form": "7.45.1",
+ "react-hot-toast": "2.4.1",
+ "react-icons": "4.10.1",
+ "react-markdown": "8.0.7",
"react-syntax-highlighter": "^15.5.0",
- "rehype-katex": "^6.0.3",
- "remark-gfm": "^3.0.1",
- "remark-math": "^5.1.1",
- "tailwindcss": "3.3.2",
- "uuid": "^9.0.0"
+ "rehype-katex": "6.0.3",
+ "remark-gfm": "3.0.1",
+ "remark-math": "5.1.1",
+ "tailwindcss": "3.3.3",
+ "uuid": "9.0.0"
},
"devDependencies": {
- "@types/lodash-es": "^4.17.7",
- "@types/node": "20.2.5",
- "@types/react": "18.2.9",
- "@types/react-dom": "18.2.4",
- "@types/react-syntax-highlighter": "^15.5.7",
- "@types/uuid": "^9.0.2",
+ "@types/lodash-es": "4.17.8",
+ "@types/node": "20.4.2",
+ "@types/react": "18.2.15",
+ "@types/react-dom": "18.2.7",
+ "@types/react-syntax-highlighter": "15.5.7",
+ "@types/uuid": "9.0.2",
"autoprefixer": "10.4.14",
- "eslint": "8.42.0",
- "eslint-config-next": "13.4.4",
- "postcss": "8.4.24",
- "prettier": "^2.8.8",
- "typescript": "5.1.3"
+ "eslint": "8.45.0",
+ "eslint-config-next": "13.4.10",
+ "postcss": "8.4.26",
+ "prettier": "3.0.0",
+ "typescript": "5.1.6"
}
}
diff --git a/tsconfig.json b/tsconfig.json
index c9dbb4a..e1d0d70 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,6 +1,6 @@
{
"compilerOptions": {
- "target": "es5",
+ "target": "ES2015",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,
@@ -29,7 +29,7 @@
"**/*.tsx",
".next/types/**/*.ts",
"typings/*.d.ts",
- "typings/*.ts",
+ "typings/*.ts"
],
"exclude": ["node_modules"]
}