commit
dea74e242e
14
CHANGELOG.md
14
CHANGELOG.md
|
@ -1,3 +1,17 @@
|
||||||
|
## v2.9.3
|
||||||
|
|
||||||
|
`2023-03-06`
|
||||||
|
|
||||||
|
## Enhancement
|
||||||
|
- 感谢 [ChandlerVer5](https://github.com/Chanzhaoyu/chatgpt-web/pull/305) 使用 `markdown-it` 替换 `marked`,解决代码块闪烁的问题
|
||||||
|
- 感谢 [shansing](https://github.com/Chanzhaoyu/chatgpt-web/pull/277) 改善文档
|
||||||
|
- 感谢 [nalf3in](https://github.com/Chanzhaoyu/chatgpt-web/pull/293) 添加英文翻译
|
||||||
|
|
||||||
|
## BugFix
|
||||||
|
- 感谢[sepcnt ](https://github.com/Chanzhaoyu/chatgpt-web/pull/279) 修复切换记录时编辑状态未关闭的问题
|
||||||
|
- 修复复制代码的兼容性报错问题
|
||||||
|
- 修复部分优化小问题
|
||||||
|
|
||||||
## v2.9.2
|
## v2.9.2
|
||||||
|
|
||||||
`2023-03-04`
|
`2023-03-04`
|
||||||
|
|
20
README.en.md
20
README.en.md
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
<div style="font-size: 1.5rem;">
|
<div style="font-size: 1.5rem;">
|
||||||
<a href="./README.md">中文</a> |
|
<a href="./README.md">中文</a> |
|
||||||
<a href="./README.en.md">English</a>
|
<a href="./README.en.md">English</a>
|
||||||
</div>
|
</div>
|
||||||
</br>
|
</br>
|
||||||
|
|
||||||
|
@ -27,16 +27,16 @@
|
||||||
- [Packaging](#packaging)
|
- [Packaging](#packaging)
|
||||||
- [Using Docker](#using-docker)
|
- [Using Docker](#using-docker)
|
||||||
- [Docker Parameter Example](#docker-parameter-example)
|
- [Docker Parameter Example](#docker-parameter-example)
|
||||||
- [Docker Build & Run](#docker-build--run)
|
- [Docker Build \& Run](#docker-build--run)
|
||||||
- [Docker Compose](#docker-compose)
|
- [Docker Compose](#docker-compose)
|
||||||
- [Deploying with Railway](#deploying-with-railway)
|
- [Deployment with Railway](#deployment-with-railway)
|
||||||
- [Railway Environment Variables](#railway-environment-variables)
|
- [Railway Environment Variables](#railway-environment-variables)
|
||||||
- [Manual Packaging](#manual-packaging)
|
- [Manual packaging](#manual-packaging)
|
||||||
- [Backend Service](#backend-service-1)
|
- [Backend service](#backend-service-1)
|
||||||
- [Frontend Webpage](#frontend-webpage-1)
|
- [Frontend webpage](#frontend-webpage-1)
|
||||||
- [FAQ](#faq)
|
- [Frequently Asked Questions](#frequently-asked-questions)
|
||||||
- [Contributing](#contributing)
|
- [Contributing](#contributing)
|
||||||
- [Sponsor](#sponsor)
|
- [Sponsorship](#sponsorship)
|
||||||
- [License](#license)
|
- [License](#license)
|
||||||
|
|
||||||
## Introduction
|
## Introduction
|
||||||
|
@ -62,7 +62,7 @@ Switching Methods:
|
||||||
|
|
||||||
Reverse Proxy:
|
Reverse Proxy:
|
||||||
|
|
||||||
Available when using `ChatGPTUnofficialProxyAPI`.
|
Available when using `ChatGPTUnofficialProxyAPI`.[Details](https://github.com/transitive-bullshit/chatgpt-api#reverse-proxy)
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
# service/.env
|
# service/.env
|
||||||
|
@ -309,4 +309,4 @@ If you find this project helpful and circumstances permit, you can give me a lit
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
## License
|
## License
|
||||||
MIT © [ChenZhaoYu](./license)
|
MIT © [ChenZhaoYu](./license)
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
<div style="font-size: 1.5rem;">
|
<div style="font-size: 1.5rem;">
|
||||||
<a href="./README.md">中文</a> |
|
<a href="./README.md">中文</a> |
|
||||||
<a href="./README.en.md">English</a>
|
<a href="./README.en.md">English</a>
|
||||||
</div>
|
</div>
|
||||||
</br>
|
</br>
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@
|
||||||
|
|
||||||
反向代理:
|
反向代理:
|
||||||
|
|
||||||
`ChatGPTUnofficialProxyAPI`时可用
|
`ChatGPTUnofficialProxyAPI`时可用,[详情](https://github.com/transitive-bullshit/chatgpt-api#reverse-proxy)
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
# service/.env
|
# service/.env
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "chatgpt-web",
|
"name": "chatgpt-web",
|
||||||
"version": "2.9.2",
|
"version": "2.9.3",
|
||||||
"private": false,
|
"private": false,
|
||||||
"description": "ChatGPT Web",
|
"description": "ChatGPT Web",
|
||||||
"author": "ChenZhaoYu <chenzhaoyu1994@gmail.com>",
|
"author": "ChenZhaoYu <chenzhaoyu1994@gmail.com>",
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
"common:cleanup": "rimraf node_modules && rimraf pnpm-lock.yaml"
|
"common:cleanup": "rimraf node_modules && rimraf pnpm-lock.yaml"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"chatgpt": "^5.0.6",
|
"chatgpt": "^5.0.7",
|
||||||
"dotenv": "^16.0.3",
|
"dotenv": "^16.0.3",
|
||||||
"esno": "^0.16.3",
|
"esno": "^0.16.3",
|
||||||
"express": "^4.18.2",
|
"express": "^4.18.2",
|
||||||
|
@ -37,7 +37,7 @@
|
||||||
"@types/express": "^4.17.17",
|
"@types/express": "^4.17.17",
|
||||||
"@types/node": "^18.14.6",
|
"@types/node": "^18.14.6",
|
||||||
"eslint": "^8.35.0",
|
"eslint": "^8.35.0",
|
||||||
"rimraf": "^4.2.0",
|
"rimraf": "^4.3.0",
|
||||||
"tsup": "^6.6.3",
|
"tsup": "^6.6.3",
|
||||||
"typescript": "^4.9.5"
|
"typescript": "^4.9.5"
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,20 +4,20 @@ specifiers:
|
||||||
'@antfu/eslint-config': ^0.35.3
|
'@antfu/eslint-config': ^0.35.3
|
||||||
'@types/express': ^4.17.17
|
'@types/express': ^4.17.17
|
||||||
'@types/node': ^18.14.6
|
'@types/node': ^18.14.6
|
||||||
chatgpt: ^5.0.6
|
chatgpt: ^5.0.7
|
||||||
dotenv: ^16.0.3
|
dotenv: ^16.0.3
|
||||||
eslint: ^8.35.0
|
eslint: ^8.35.0
|
||||||
esno: ^0.16.3
|
esno: ^0.16.3
|
||||||
express: ^4.18.2
|
express: ^4.18.2
|
||||||
isomorphic-fetch: ^3.0.0
|
isomorphic-fetch: ^3.0.0
|
||||||
node-fetch: ^3.3.0
|
node-fetch: ^3.3.0
|
||||||
rimraf: ^4.2.0
|
rimraf: ^4.3.0
|
||||||
socks-proxy-agent: ^7.0.0
|
socks-proxy-agent: ^7.0.0
|
||||||
tsup: ^6.6.3
|
tsup: ^6.6.3
|
||||||
typescript: ^4.9.5
|
typescript: ^4.9.5
|
||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
chatgpt: 5.0.6
|
chatgpt: 5.0.7
|
||||||
dotenv: 16.0.3
|
dotenv: 16.0.3
|
||||||
esno: 0.16.3
|
esno: 0.16.3
|
||||||
express: 4.18.2
|
express: 4.18.2
|
||||||
|
@ -30,7 +30,7 @@ devDependencies:
|
||||||
'@types/express': 4.17.17
|
'@types/express': 4.17.17
|
||||||
'@types/node': 18.14.6
|
'@types/node': 18.14.6
|
||||||
eslint: 8.35.0
|
eslint: 8.35.0
|
||||||
rimraf: 4.2.0
|
rimraf: 4.3.0
|
||||||
tsup: 6.6.3_typescript@4.9.5
|
tsup: 6.6.3_typescript@4.9.5
|
||||||
typescript: 4.9.5
|
typescript: 4.9.5
|
||||||
|
|
||||||
|
@ -164,7 +164,7 @@ packages:
|
||||||
/@esbuild-kit/core-utils/3.1.0:
|
/@esbuild-kit/core-utils/3.1.0:
|
||||||
resolution: {integrity: sha512-Uuk8RpCg/7fdHSceR1M6XbSZFSuMrxcePFuGgyvsBn+u339dk5OeL4jv2EojwTN2st/unJGsVm4qHWjWNmJ/tw==}
|
resolution: {integrity: sha512-Uuk8RpCg/7fdHSceR1M6XbSZFSuMrxcePFuGgyvsBn+u339dk5OeL4jv2EojwTN2st/unJGsVm4qHWjWNmJ/tw==}
|
||||||
dependencies:
|
dependencies:
|
||||||
esbuild: 0.17.8
|
esbuild: 0.17.11
|
||||||
source-map-support: 0.5.21
|
source-map-support: 0.5.21
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
|
@ -175,187 +175,187 @@ packages:
|
||||||
get-tsconfig: 4.4.0
|
get-tsconfig: 4.4.0
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
/@esbuild/android-arm/0.17.8:
|
/@esbuild/android-arm/0.17.11:
|
||||||
resolution: {integrity: sha512-0/rb91GYKhrtbeglJXOhAv9RuYimgI8h623TplY2X+vA4EXnk3Zj1fXZreJ0J3OJJu1bwmb0W7g+2cT/d8/l/w==}
|
resolution: {integrity: sha512-CdyX6sRVh1NzFCsf5vw3kULwlAhfy9wVt8SZlrhQ7eL2qBjGbFhRBWkkAzuZm9IIEOCKJw4DXA6R85g+qc8RDw==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [arm]
|
cpu: [arm]
|
||||||
os: [android]
|
os: [android]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/android-arm64/0.17.8:
|
/@esbuild/android-arm64/0.17.11:
|
||||||
resolution: {integrity: sha512-oa/N5j6v1svZQs7EIRPqR8f+Bf8g6HBDjD/xHC02radE/NjKHK7oQmtmLxPs1iVwYyvE+Kolo6lbpfEQ9xnhxQ==}
|
resolution: {integrity: sha512-QnK4d/zhVTuV4/pRM4HUjcsbl43POALU2zvBynmrrqZt9LPcLA3x1fTZPBg2RRguBQnJcnU059yKr+bydkntjg==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [android]
|
os: [android]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/android-x64/0.17.8:
|
/@esbuild/android-x64/0.17.11:
|
||||||
resolution: {integrity: sha512-bTliMLqD7pTOoPg4zZkXqCDuzIUguEWLpeqkNfC41ODBHwoUgZ2w5JBeYimv4oP6TDVocoYmEhZrCLQTrH89bg==}
|
resolution: {integrity: sha512-3PL3HKtsDIXGQcSCKtWD/dy+mgc4p2Tvo2qKgKHj9Yf+eniwFnuoQ0OUhlSfAEpKAFzF9N21Nwgnap6zy3L3MQ==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [android]
|
os: [android]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/darwin-arm64/0.17.8:
|
/@esbuild/darwin-arm64/0.17.11:
|
||||||
resolution: {integrity: sha512-ghAbV3ia2zybEefXRRm7+lx8J/rnupZT0gp9CaGy/3iolEXkJ6LYRq4IpQVI9zR97ID80KJVoUlo3LSeA/sMAg==}
|
resolution: {integrity: sha512-pJ950bNKgzhkGNO3Z9TeHzIFtEyC2GDQL3wxkMApDEghYx5Qers84UTNc1bAxWbRkuJOgmOha5V0WUeh8G+YGw==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [darwin]
|
os: [darwin]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/darwin-x64/0.17.8:
|
/@esbuild/darwin-x64/0.17.11:
|
||||||
resolution: {integrity: sha512-n5WOpyvZ9TIdv2V1K3/iIkkJeKmUpKaCTdun9buhGRWfH//osmUjlv4Z5mmWdPWind/VGcVxTHtLfLCOohsOXw==}
|
resolution: {integrity: sha512-iB0dQkIHXyczK3BZtzw1tqegf0F0Ab5texX2TvMQjiJIWXAfM4FQl7D909YfXWnB92OQz4ivBYQ2RlxBJrMJOw==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [darwin]
|
os: [darwin]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/freebsd-arm64/0.17.8:
|
/@esbuild/freebsd-arm64/0.17.11:
|
||||||
resolution: {integrity: sha512-a/SATTaOhPIPFWvHZDoZYgxaZRVHn0/LX1fHLGfZ6C13JqFUZ3K6SMD6/HCtwOQ8HnsNaEeokdiDSFLuizqv5A==}
|
resolution: {integrity: sha512-7EFzUADmI1jCHeDRGKgbnF5sDIceZsQGapoO6dmw7r/ZBEKX7CCDnIz8m9yEclzr7mFsd+DyasHzpjfJnmBB1Q==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [freebsd]
|
os: [freebsd]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/freebsd-x64/0.17.8:
|
/@esbuild/freebsd-x64/0.17.11:
|
||||||
resolution: {integrity: sha512-xpFJb08dfXr5+rZc4E+ooZmayBW6R3q59daCpKZ/cDU96/kvDM+vkYzNeTJCGd8rtO6fHWMq5Rcv/1cY6p6/0Q==}
|
resolution: {integrity: sha512-iPgenptC8i8pdvkHQvXJFzc1eVMR7W2lBPrTE6GbhR54sLcF42mk3zBOjKPOodezzuAz/KSu8CPyFSjcBMkE9g==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [freebsd]
|
os: [freebsd]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/linux-arm/0.17.8:
|
/@esbuild/linux-arm/0.17.11:
|
||||||
resolution: {integrity: sha512-6Ij8gfuGszcEwZpi5jQIJCVIACLS8Tz2chnEBfYjlmMzVsfqBP1iGmHQPp7JSnZg5xxK9tjCc+pJ2WtAmPRFVA==}
|
resolution: {integrity: sha512-M9iK/d4lgZH0U5M1R2p2gqhPV/7JPJcRz+8O8GBKVgqndTzydQ7B2XGDbxtbvFkvIs53uXTobOhv+RyaqhUiMg==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [arm]
|
cpu: [arm]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/linux-arm64/0.17.8:
|
/@esbuild/linux-arm64/0.17.11:
|
||||||
resolution: {integrity: sha512-v3iwDQuDljLTxpsqQDl3fl/yihjPAyOguxuloON9kFHYwopeJEf1BkDXODzYyXEI19gisEsQlG1bM65YqKSIww==}
|
resolution: {integrity: sha512-Qxth3gsWWGKz2/qG2d5DsW/57SeA2AmpSMhdg9TSB5Svn2KDob3qxfQSkdnWjSd42kqoxIPy3EJFs+6w1+6Qjg==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/linux-ia32/0.17.8:
|
/@esbuild/linux-ia32/0.17.11:
|
||||||
resolution: {integrity: sha512-8svILYKhE5XetuFk/B6raFYIyIqydQi+GngEXJgdPdI7OMKUbSd7uzR02wSY4kb53xBrClLkhH4Xs8P61Q2BaA==}
|
resolution: {integrity: sha512-dB1nGaVWtUlb/rRDHmuDQhfqazWE0LMro/AIbT2lWM3CDMHJNpLckH+gCddQyhhcLac2OYw69ikUMO34JLt3wA==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [ia32]
|
cpu: [ia32]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/linux-loong64/0.17.8:
|
/@esbuild/linux-loong64/0.17.11:
|
||||||
resolution: {integrity: sha512-B6FyMeRJeV0NpyEOYlm5qtQfxbdlgmiGdD+QsipzKfFky0K5HW5Td6dyK3L3ypu1eY4kOmo7wW0o94SBqlqBSA==}
|
resolution: {integrity: sha512-aCWlq70Q7Nc9WDnormntGS1ar6ZFvUpqr8gXtO+HRejRYPweAFQN615PcgaSJkZjhHp61+MNLhzyVALSF2/Q0g==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [loong64]
|
cpu: [loong64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/linux-mips64el/0.17.8:
|
/@esbuild/linux-mips64el/0.17.11:
|
||||||
resolution: {integrity: sha512-CCb67RKahNobjm/eeEqeD/oJfJlrWyw29fgiyB6vcgyq97YAf3gCOuP6qMShYSPXgnlZe/i4a8WFHBw6N8bYAA==}
|
resolution: {integrity: sha512-cGeGNdQxqY8qJwlYH1BP6rjIIiEcrM05H7k3tR7WxOLmD1ZxRMd6/QIOWMb8mD2s2YJFNRuNQ+wjMhgEL2oCEw==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [mips64el]
|
cpu: [mips64el]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/linux-ppc64/0.17.8:
|
/@esbuild/linux-ppc64/0.17.11:
|
||||||
resolution: {integrity: sha512-bytLJOi55y55+mGSdgwZ5qBm0K9WOCh0rx+vavVPx+gqLLhxtSFU0XbeYy/dsAAD6xECGEv4IQeFILaSS2auXw==}
|
resolution: {integrity: sha512-BdlziJQPW/bNe0E8eYsHB40mYOluS+jULPCjlWiHzDgr+ZBRXPtgMV1nkLEGdpjrwgmtkZHEGEPaKdS/8faLDA==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [ppc64]
|
cpu: [ppc64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/linux-riscv64/0.17.8:
|
/@esbuild/linux-riscv64/0.17.11:
|
||||||
resolution: {integrity: sha512-2YpRyQJmKVBEHSBLa8kBAtbhucaclb6ex4wchfY0Tj3Kg39kpjeJ9vhRU7x4mUpq8ISLXRXH1L0dBYjAeqzZAw==}
|
resolution: {integrity: sha512-MDLwQbtF+83oJCI1Cixn68Et/ME6gelmhssPebC40RdJaect+IM+l7o/CuG0ZlDs6tZTEIoxUe53H3GmMn8oMA==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [riscv64]
|
cpu: [riscv64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/linux-s390x/0.17.8:
|
/@esbuild/linux-s390x/0.17.11:
|
||||||
resolution: {integrity: sha512-QgbNY/V3IFXvNf11SS6exkpVcX0LJcob+0RWCgV9OiDAmVElnxciHIisoSix9uzYzScPmS6dJFbZULdSAEkQVw==}
|
resolution: {integrity: sha512-4N5EMESvws0Ozr2J94VoUD8HIRi7X0uvUv4c0wpTHZyZY9qpaaN7THjosdiW56irQ4qnJ6Lsc+i+5zGWnyqWqQ==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [s390x]
|
cpu: [s390x]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/linux-x64/0.17.8:
|
/@esbuild/linux-x64/0.17.11:
|
||||||
resolution: {integrity: sha512-mM/9S0SbAFDBc4OPoyP6SEOo5324LpUxdpeIUUSrSTOfhHU9hEfqRngmKgqILqwx/0DVJBzeNW7HmLEWp9vcOA==}
|
resolution: {integrity: sha512-rM/v8UlluxpytFSmVdbCe1yyKQd/e+FmIJE2oPJvbBo+D0XVWi1y/NQ4iTNx+436WmDHQBjVLrbnAQLQ6U7wlw==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/netbsd-x64/0.17.8:
|
/@esbuild/netbsd-x64/0.17.11:
|
||||||
resolution: {integrity: sha512-eKUYcWaWTaYr9zbj8GertdVtlt1DTS1gNBWov+iQfWuWyuu59YN6gSEJvFzC5ESJ4kMcKR0uqWThKUn5o8We6Q==}
|
resolution: {integrity: sha512-4WaAhuz5f91h3/g43VBGdto1Q+X7VEZfpcWGtOFXnggEuLvjV+cP6DyLRU15IjiU9fKLLk41OoJfBFN5DhPvag==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [netbsd]
|
os: [netbsd]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/openbsd-x64/0.17.8:
|
/@esbuild/openbsd-x64/0.17.11:
|
||||||
resolution: {integrity: sha512-Vc9J4dXOboDyMXKD0eCeW0SIeEzr8K9oTHJU+Ci1mZc5njPfhKAqkRt3B/fUNU7dP+mRyralPu8QUkiaQn7iIg==}
|
resolution: {integrity: sha512-UBj135Nx4FpnvtE+C8TWGp98oUgBcmNmdYgl5ToKc0mBHxVVqVE7FUS5/ELMImOp205qDAittL6Ezhasc2Ev/w==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [openbsd]
|
os: [openbsd]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/sunos-x64/0.17.8:
|
/@esbuild/sunos-x64/0.17.11:
|
||||||
resolution: {integrity: sha512-0xvOTNuPXI7ft1LYUgiaXtpCEjp90RuBBYovdd2lqAFxje4sEucurg30M1WIm03+3jxByd3mfo+VUmPtRSVuOw==}
|
resolution: {integrity: sha512-1/gxTifDC9aXbV2xOfCbOceh5AlIidUrPsMpivgzo8P8zUtczlq1ncFpeN1ZyQJ9lVs2hILy1PG5KPp+w8QPPg==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [sunos]
|
os: [sunos]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/win32-arm64/0.17.8:
|
/@esbuild/win32-arm64/0.17.11:
|
||||||
resolution: {integrity: sha512-G0JQwUI5WdEFEnYNKzklxtBheCPkuDdu1YrtRrjuQv30WsYbkkoixKxLLv8qhJmNI+ATEWquZe/N0d0rpr55Mg==}
|
resolution: {integrity: sha512-vtSfyx5yRdpiOW9yp6Ax0zyNOv9HjOAw8WaZg3dF5djEHKKm3UnoohftVvIJtRh0Ec7Hso0RIdTqZvPXJ7FdvQ==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/win32-ia32/0.17.8:
|
/@esbuild/win32-ia32/0.17.11:
|
||||||
resolution: {integrity: sha512-Fqy63515xl20OHGFykjJsMnoIWS+38fqfg88ClvPXyDbLtgXal2DTlhb1TfTX34qWi3u4I7Cq563QcHpqgLx8w==}
|
resolution: {integrity: sha512-GFPSLEGQr4wHFTiIUJQrnJKZhZjjq4Sphf+mM76nQR6WkQn73vm7IsacmBRPkALfpOCHsopSvLgqdd4iUW2mYw==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [ia32]
|
cpu: [ia32]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@esbuild/win32-x64/0.17.8:
|
/@esbuild/win32-x64/0.17.11:
|
||||||
resolution: {integrity: sha512-1iuezdyDNngPnz8rLRDO2C/ZZ/emJLb72OsZeqQ6gL6Avko/XCXZw+NuxBSNhBAP13Hie418V7VMt9et1FMvpg==}
|
resolution: {integrity: sha512-N9vXqLP3eRL8BqSy8yn4Y98cZI2pZ8fyuHx6lKjiG2WABpT2l01TXdzq5Ma2ZUBzfB7tx5dXVhge8X9u0S70ZQ==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@eslint-community/eslint-utils/4.1.2_eslint@8.35.0:
|
/@eslint-community/eslint-utils/4.2.0_eslint@8.35.0:
|
||||||
resolution: {integrity: sha512-7qELuQWWjVDdVsFQ5+beUl+KPczrEDA7S3zM4QUd/bJl7oXgsmpXaEVqrRTnOBqenOV4rWf2kVZk2Ot085zPWA==}
|
resolution: {integrity: sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ==}
|
||||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
|
||||||
dependencies:
|
dependencies:
|
||||||
eslint: 8.35.0
|
eslint: 8.35.0
|
||||||
eslint-visitor-keys: 3.3.0
|
eslint-visitor-keys: 3.3.0
|
||||||
|
@ -451,7 +451,7 @@ packages:
|
||||||
'@types/body-parser': 1.19.2
|
'@types/body-parser': 1.19.2
|
||||||
'@types/express-serve-static-core': 4.17.33
|
'@types/express-serve-static-core': 4.17.33
|
||||||
'@types/qs': 6.9.7
|
'@types/qs': 6.9.7
|
||||||
'@types/serve-static': 1.15.0
|
'@types/serve-static': 1.15.1
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@types/json-schema/7.0.11:
|
/@types/json-schema/7.0.11:
|
||||||
|
@ -491,8 +491,8 @@ packages:
|
||||||
resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==}
|
resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@types/serve-static/1.15.0:
|
/@types/serve-static/1.15.1:
|
||||||
resolution: {integrity: sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==}
|
resolution: {integrity: sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/mime': 3.0.1
|
'@types/mime': 3.0.1
|
||||||
'@types/node': 18.14.6
|
'@types/node': 18.14.6
|
||||||
|
@ -844,13 +844,13 @@ packages:
|
||||||
semver: 7.3.8
|
semver: 7.3.8
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/bundle-require/4.0.1_esbuild@0.17.8:
|
/bundle-require/4.0.1_esbuild@0.17.11:
|
||||||
resolution: {integrity: sha512-9NQkRHlNdNpDBGmLpngF3EFDcwodhMUuLz9PaWYciVcQF9SE4LFjM2DB/xV1Li5JiuDMv7ZUWuC3rGbqR0MAXQ==}
|
resolution: {integrity: sha512-9NQkRHlNdNpDBGmLpngF3EFDcwodhMUuLz9PaWYciVcQF9SE4LFjM2DB/xV1Li5JiuDMv7ZUWuC3rGbqR0MAXQ==}
|
||||||
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
|
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
esbuild: '>=0.17'
|
esbuild: '>=0.17'
|
||||||
dependencies:
|
dependencies:
|
||||||
esbuild: 0.17.8
|
esbuild: 0.17.11
|
||||||
load-tsconfig: 0.2.3
|
load-tsconfig: 0.2.3
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
@ -902,8 +902,8 @@ packages:
|
||||||
resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==}
|
resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/chatgpt/5.0.6:
|
/chatgpt/5.0.7:
|
||||||
resolution: {integrity: sha512-BQ0eN2GpAlw9ojsxkHmW+bTuekbllZbOkKqjDSIVSMtbMoYDx59vcg6xXnCPkB0OBFGuG89eqGhLAfMIW34Hcw==}
|
resolution: {integrity: sha512-wy69++JDNS0xKi+6rP+HDOByXBafQIVynHnlQw09apuDntGSKfwBRY902N8Q7/ZFU/XET+8NpJiio2iI69IWYw==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -1193,7 +1193,7 @@ packages:
|
||||||
has-proto: 1.0.1
|
has-proto: 1.0.1
|
||||||
has-symbols: 1.0.3
|
has-symbols: 1.0.3
|
||||||
internal-slot: 1.0.5
|
internal-slot: 1.0.5
|
||||||
is-array-buffer: 3.0.1
|
is-array-buffer: 3.0.2
|
||||||
is-callable: 1.2.7
|
is-callable: 1.2.7
|
||||||
is-negative-zero: 2.0.2
|
is-negative-zero: 2.0.2
|
||||||
is-regex: 1.1.4
|
is-regex: 1.1.4
|
||||||
|
@ -1237,34 +1237,34 @@ packages:
|
||||||
is-symbol: 1.0.4
|
is-symbol: 1.0.4
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/esbuild/0.17.8:
|
/esbuild/0.17.11:
|
||||||
resolution: {integrity: sha512-g24ybC3fWhZddZK6R3uD2iF/RIPnRpwJAqLov6ouX3hMbY4+tKolP0VMF3zuIYCaXun+yHwS5IPQ91N2BT191g==}
|
resolution: {integrity: sha512-pAMImyokbWDtnA/ufPxjQg0fYo2DDuzAlqwnDvbXqHLphe+m80eF++perYKVm8LeTuj2zUuFXC+xgSVxyoHUdg==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@esbuild/android-arm': 0.17.8
|
'@esbuild/android-arm': 0.17.11
|
||||||
'@esbuild/android-arm64': 0.17.8
|
'@esbuild/android-arm64': 0.17.11
|
||||||
'@esbuild/android-x64': 0.17.8
|
'@esbuild/android-x64': 0.17.11
|
||||||
'@esbuild/darwin-arm64': 0.17.8
|
'@esbuild/darwin-arm64': 0.17.11
|
||||||
'@esbuild/darwin-x64': 0.17.8
|
'@esbuild/darwin-x64': 0.17.11
|
||||||
'@esbuild/freebsd-arm64': 0.17.8
|
'@esbuild/freebsd-arm64': 0.17.11
|
||||||
'@esbuild/freebsd-x64': 0.17.8
|
'@esbuild/freebsd-x64': 0.17.11
|
||||||
'@esbuild/linux-arm': 0.17.8
|
'@esbuild/linux-arm': 0.17.11
|
||||||
'@esbuild/linux-arm64': 0.17.8
|
'@esbuild/linux-arm64': 0.17.11
|
||||||
'@esbuild/linux-ia32': 0.17.8
|
'@esbuild/linux-ia32': 0.17.11
|
||||||
'@esbuild/linux-loong64': 0.17.8
|
'@esbuild/linux-loong64': 0.17.11
|
||||||
'@esbuild/linux-mips64el': 0.17.8
|
'@esbuild/linux-mips64el': 0.17.11
|
||||||
'@esbuild/linux-ppc64': 0.17.8
|
'@esbuild/linux-ppc64': 0.17.11
|
||||||
'@esbuild/linux-riscv64': 0.17.8
|
'@esbuild/linux-riscv64': 0.17.11
|
||||||
'@esbuild/linux-s390x': 0.17.8
|
'@esbuild/linux-s390x': 0.17.11
|
||||||
'@esbuild/linux-x64': 0.17.8
|
'@esbuild/linux-x64': 0.17.11
|
||||||
'@esbuild/netbsd-x64': 0.17.8
|
'@esbuild/netbsd-x64': 0.17.11
|
||||||
'@esbuild/openbsd-x64': 0.17.8
|
'@esbuild/openbsd-x64': 0.17.11
|
||||||
'@esbuild/sunos-x64': 0.17.8
|
'@esbuild/sunos-x64': 0.17.11
|
||||||
'@esbuild/win32-arm64': 0.17.8
|
'@esbuild/win32-arm64': 0.17.11
|
||||||
'@esbuild/win32-ia32': 0.17.8
|
'@esbuild/win32-ia32': 0.17.11
|
||||||
'@esbuild/win32-x64': 0.17.8
|
'@esbuild/win32-x64': 0.17.11
|
||||||
|
|
||||||
/escape-html/1.0.3:
|
/escape-html/1.0.3:
|
||||||
resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
|
resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
|
||||||
|
@ -1382,7 +1382,7 @@ packages:
|
||||||
object.values: 1.1.6
|
object.values: 1.1.6
|
||||||
resolve: 1.22.1
|
resolve: 1.22.1
|
||||||
semver: 6.3.0
|
semver: 6.3.0
|
||||||
tsconfig-paths: 3.14.1
|
tsconfig-paths: 3.14.2
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- eslint-import-resolver-typescript
|
- eslint-import-resolver-typescript
|
||||||
- eslint-import-resolver-webpack
|
- eslint-import-resolver-webpack
|
||||||
|
@ -1472,11 +1472,11 @@ packages:
|
||||||
eslint: '>=8.28.0'
|
eslint: '>=8.28.0'
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/helper-validator-identifier': 7.19.1
|
'@babel/helper-validator-identifier': 7.19.1
|
||||||
'@eslint-community/eslint-utils': 4.1.2_eslint@8.35.0
|
'@eslint-community/eslint-utils': 4.2.0_eslint@8.35.0
|
||||||
ci-info: 3.8.0
|
ci-info: 3.8.0
|
||||||
clean-regexp: 1.0.0
|
clean-regexp: 1.0.0
|
||||||
eslint: 8.35.0
|
eslint: 8.35.0
|
||||||
esquery: 1.4.2
|
esquery: 1.5.0
|
||||||
indent-string: 4.0.0
|
indent-string: 4.0.0
|
||||||
is-builtin-module: 3.2.1
|
is-builtin-module: 3.2.1
|
||||||
jsesc: 3.0.2
|
jsesc: 3.0.2
|
||||||
|
@ -1611,7 +1611,7 @@ packages:
|
||||||
eslint-utils: 3.0.0_eslint@8.35.0
|
eslint-utils: 3.0.0_eslint@8.35.0
|
||||||
eslint-visitor-keys: 3.3.0
|
eslint-visitor-keys: 3.3.0
|
||||||
espree: 9.4.1
|
espree: 9.4.1
|
||||||
esquery: 1.4.2
|
esquery: 1.5.0
|
||||||
esutils: 2.0.3
|
esutils: 2.0.3
|
||||||
fast-deep-equal: 3.1.3
|
fast-deep-equal: 3.1.3
|
||||||
file-entry-cache: 6.0.1
|
file-entry-cache: 6.0.1
|
||||||
|
@ -1656,8 +1656,8 @@ packages:
|
||||||
eslint-visitor-keys: 3.3.0
|
eslint-visitor-keys: 3.3.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/esquery/1.4.2:
|
/esquery/1.5.0:
|
||||||
resolution: {integrity: sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==}
|
resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==}
|
||||||
engines: {node: '>=0.10'}
|
engines: {node: '>=0.10'}
|
||||||
dependencies:
|
dependencies:
|
||||||
estraverse: 5.3.0
|
estraverse: 5.3.0
|
||||||
|
@ -2153,8 +2153,8 @@ packages:
|
||||||
is-decimal: 1.0.4
|
is-decimal: 1.0.4
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/is-array-buffer/3.0.1:
|
/is-array-buffer/3.0.2:
|
||||||
resolution: {integrity: sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==}
|
resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==}
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.2
|
call-bind: 1.0.2
|
||||||
get-intrinsic: 1.2.0
|
get-intrinsic: 1.2.0
|
||||||
|
@ -2398,8 +2398,8 @@ packages:
|
||||||
type-check: 0.4.0
|
type-check: 0.4.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/lilconfig/2.0.6:
|
/lilconfig/2.1.0:
|
||||||
resolution: {integrity: sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==}
|
resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
@ -2455,8 +2455,8 @@ packages:
|
||||||
dependencies:
|
dependencies:
|
||||||
yallist: 4.0.0
|
yallist: 4.0.0
|
||||||
|
|
||||||
/lru-cache/7.18.1:
|
/lru-cache/7.18.3:
|
||||||
resolution: {integrity: sha512-8/HcIENyQnfUTCDizRu9rrDyG6XG/21M4X7/YEGZeD76ZJilFPAUVb/2zysFf7VVO1LEjCDFyHp8pMMvozIrvg==}
|
resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
@ -2841,7 +2841,7 @@ packages:
|
||||||
resolution: {integrity: sha512-OW+5s+7cw6253Q4E+8qQ/u1fVvcJQCJo/VFD8pje+dbJCF1n5ZRMV2AEHbGp+5Q7jxQIYJxkHopnj6nzdGeZLA==}
|
resolution: {integrity: sha512-OW+5s+7cw6253Q4E+8qQ/u1fVvcJQCJo/VFD8pje+dbJCF1n5ZRMV2AEHbGp+5Q7jxQIYJxkHopnj6nzdGeZLA==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
dependencies:
|
dependencies:
|
||||||
lru-cache: 7.18.1
|
lru-cache: 7.18.3
|
||||||
minipass: 4.2.4
|
minipass: 4.2.4
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
@ -2881,7 +2881,7 @@ packages:
|
||||||
ts-node:
|
ts-node:
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
lilconfig: 2.0.6
|
lilconfig: 2.1.0
|
||||||
yaml: 1.10.2
|
yaml: 1.10.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
@ -3048,16 +3048,16 @@ packages:
|
||||||
glob: 7.2.3
|
glob: 7.2.3
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/rimraf/4.2.0:
|
/rimraf/4.3.0:
|
||||||
resolution: {integrity: sha512-tPt+gLORNVqRCk0NwuJ5SlMEcOGvt4CCU8sUPqgCFtCbnoNCTd9Q6vq7JlBbxQlACiH14OR28y7piA2Bak9Sxw==}
|
resolution: {integrity: sha512-5qVDXPbByA1qSJEWMv1qAwKsoS22vVpsL2QyxCKBw4gf6XiFo1K3uRLY6uSOOBFDwnqAZtnbILqWKKlzh8bkGg==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
dependencies:
|
dependencies:
|
||||||
glob: 9.2.1
|
glob: 9.2.1
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/rollup/3.15.0:
|
/rollup/3.18.0:
|
||||||
resolution: {integrity: sha512-F9hrCAhnp5/zx/7HYmftvsNBkMfLfk/dXUh73hPSM2E3CRgap65orDNJbLetoiUFwSAk6iHPLvBrZ5iHYvzqsg==}
|
resolution: {integrity: sha512-J8C6VfEBjkvYPESMQYxKHxNOh4A5a3FlP+0BETGo34HEcE4eTlgCrO2+eWzlu2a/sHs2QUkZco+wscH7jhhgWg==}
|
||||||
engines: {node: '>=14.18.0', npm: '>=8.0.0'}
|
engines: {node: '>=14.18.0', npm: '>=8.0.0'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
|
@ -3368,8 +3368,8 @@ packages:
|
||||||
resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
|
resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/tsconfig-paths/3.14.1:
|
/tsconfig-paths/3.14.2:
|
||||||
resolution: {integrity: sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==}
|
resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/json5': 0.0.29
|
'@types/json5': 0.0.29
|
||||||
json5: 1.0.2
|
json5: 1.0.2
|
||||||
|
@ -3397,17 +3397,17 @@ packages:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
bundle-require: 4.0.1_esbuild@0.17.8
|
bundle-require: 4.0.1_esbuild@0.17.11
|
||||||
cac: 6.7.14
|
cac: 6.7.14
|
||||||
chokidar: 3.5.3
|
chokidar: 3.5.3
|
||||||
debug: 4.3.4
|
debug: 4.3.4
|
||||||
esbuild: 0.17.8
|
esbuild: 0.17.11
|
||||||
execa: 5.1.1
|
execa: 5.1.1
|
||||||
globby: 11.1.0
|
globby: 11.1.0
|
||||||
joycon: 3.1.1
|
joycon: 3.1.1
|
||||||
postcss-load-config: 3.1.4
|
postcss-load-config: 3.1.4
|
||||||
resolve-from: 5.0.0
|
resolve-from: 5.0.0
|
||||||
rollup: 3.15.0
|
rollup: 3.18.0
|
||||||
source-map: 0.8.0-beta.0
|
source-map: 0.8.0-beta.0
|
||||||
sucrase: 3.29.0
|
sucrase: 3.29.0
|
||||||
tree-kill: 1.2.2
|
tree-kill: 1.2.2
|
||||||
|
@ -3548,7 +3548,7 @@ packages:
|
||||||
eslint-scope: 7.1.1
|
eslint-scope: 7.1.1
|
||||||
eslint-visitor-keys: 3.3.0
|
eslint-visitor-keys: 3.3.0
|
||||||
espree: 9.4.1
|
espree: 9.4.1
|
||||||
esquery: 1.4.2
|
esquery: 1.5.0
|
||||||
lodash: 4.17.21
|
lodash: 4.17.21
|
||||||
semver: 7.3.8
|
semver: 7.3.8
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
|
|
|
@ -24,6 +24,9 @@ let api: ChatGPTAPI | ChatGPTUnofficialProxyAPI
|
||||||
if (process.env.OPENAI_API_KEY) {
|
if (process.env.OPENAI_API_KEY) {
|
||||||
const options: ChatGPTAPIOptions = {
|
const options: ChatGPTAPIOptions = {
|
||||||
apiKey: process.env.OPENAI_API_KEY,
|
apiKey: process.env.OPENAI_API_KEY,
|
||||||
|
completionParams: {
|
||||||
|
model: 'gpt-3.5-turbo',
|
||||||
|
},
|
||||||
debug: false,
|
debug: false,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -67,28 +70,6 @@ let api: ChatGPTAPI | ChatGPTUnofficialProxyAPI
|
||||||
}
|
}
|
||||||
})()
|
})()
|
||||||
|
|
||||||
async function chatReply(
|
|
||||||
message: string,
|
|
||||||
lastContext?: { conversationId?: string; parentMessageId?: string },
|
|
||||||
) {
|
|
||||||
if (!message)
|
|
||||||
return sendResponse({ type: 'Fail', message: 'Message is empty' })
|
|
||||||
|
|
||||||
try {
|
|
||||||
let options: SendMessageOptions = { timeoutMs }
|
|
||||||
|
|
||||||
if (lastContext)
|
|
||||||
options = { ...lastContext }
|
|
||||||
|
|
||||||
const response = await api.sendMessage(message, { ...options })
|
|
||||||
|
|
||||||
return sendResponse({ type: 'Success', data: response })
|
|
||||||
}
|
|
||||||
catch (error: any) {
|
|
||||||
return sendResponse({ type: 'Fail', message: error.message })
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function chatReplyProcess(
|
async function chatReplyProcess(
|
||||||
message: string,
|
message: string,
|
||||||
lastContext?: { conversationId?: string; parentMessageId?: string },
|
lastContext?: { conversationId?: string; parentMessageId?: string },
|
||||||
|
@ -100,8 +81,12 @@ async function chatReplyProcess(
|
||||||
try {
|
try {
|
||||||
let options: SendMessageOptions = { timeoutMs }
|
let options: SendMessageOptions = { timeoutMs }
|
||||||
|
|
||||||
if (lastContext)
|
if (lastContext) {
|
||||||
options = { ...lastContext }
|
if (apiModel === 'ChatGPTAPI')
|
||||||
|
options = { parentMessageId: lastContext.parentMessageId }
|
||||||
|
else
|
||||||
|
options = { ...lastContext }
|
||||||
|
}
|
||||||
|
|
||||||
const response = await api.sendMessage(message, {
|
const response = await api.sendMessage(message, {
|
||||||
...options,
|
...options,
|
||||||
|
@ -113,6 +98,7 @@ async function chatReplyProcess(
|
||||||
return sendResponse({ type: 'Success', data: response })
|
return sendResponse({ type: 'Success', data: response })
|
||||||
}
|
}
|
||||||
catch (error: any) {
|
catch (error: any) {
|
||||||
|
global.console.error(error)
|
||||||
return sendResponse({ type: 'Fail', message: error.message })
|
return sendResponse({ type: 'Fail', message: error.message })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -131,4 +117,4 @@ async function chatConfig() {
|
||||||
|
|
||||||
export type { ChatContext, ChatMessage }
|
export type { ChatContext, ChatMessage }
|
||||||
|
|
||||||
export { chatReply, chatReplyProcess, chatConfig }
|
export { chatReplyProcess, chatConfig }
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import express from 'express'
|
import express from 'express'
|
||||||
import type { ChatContext, ChatMessage } from './chatgpt'
|
import type { ChatContext, ChatMessage } from './chatgpt'
|
||||||
import { chatConfig, chatReply, chatReplyProcess } from './chatgpt'
|
import { chatConfig, chatReplyProcess } from './chatgpt'
|
||||||
|
|
||||||
const app = express()
|
const app = express()
|
||||||
const router = express.Router()
|
const router = express.Router()
|
||||||
|
@ -15,17 +15,6 @@ app.all('*', (_, res, next) => {
|
||||||
next()
|
next()
|
||||||
})
|
})
|
||||||
|
|
||||||
router.post('/chat', async (req, res) => {
|
|
||||||
try {
|
|
||||||
const { prompt, options = {} } = req.body as { prompt: string; options?: ChatContext }
|
|
||||||
const response = await chatReply(prompt, options)
|
|
||||||
res.send(response)
|
|
||||||
}
|
|
||||||
catch (error) {
|
|
||||||
res.send(error)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
router.post('/chat-process', async (req, res) => {
|
router.post('/chat-process', async (req, res) => {
|
||||||
res.setHeader('Content-type', 'application/octet-stream')
|
res.setHeader('Content-type', 'application/octet-stream')
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ import { ss } from '@/utils/storage'
|
||||||
const LOCAL_NAME = 'chatStorage'
|
const LOCAL_NAME = 'chatStorage'
|
||||||
|
|
||||||
export function defaultState(): Chat.ChatState {
|
export function defaultState(): Chat.ChatState {
|
||||||
const uuid = Date.now()
|
const uuid = 1002
|
||||||
return { active: uuid, history: [{ uuid, title: 'New Chat', isEdit: false }], chat: [{ uuid, data: [] }] }
|
return { active: uuid, history: [{ uuid, title: 'New Chat', isEdit: false }], chat: [{ uuid, data: [] }] }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue