Merge pull request #15 from JOYCEQL/feat/workbench

fix: production export pdf
This commit is contained in:
qingchen
2024-11-25 17:52:38 +08:00
committed by GitHub
3 changed files with 48 additions and 7 deletions
+2
View File
@@ -21,6 +21,7 @@
"@radix-ui/react-switch": "^1.1.1",
"@radix-ui/react-tabs": "^1.0.4",
"@radix-ui/react-tooltip": "^1.1.2",
"@sparticuz/chromium": "^131.0.0",
"@tiptap/extension-bullet-list": "^2.10.2",
"@tiptap/extension-color": "^2.4.0",
"@tiptap/extension-highlight": "^2.9.1",
@@ -43,6 +44,7 @@
"lucide-react": "^0.379.0",
"next": "14.2.3",
"puppeteer": "^23.9.0",
"puppeteer-core": "^23.9.0",
"react": "^18",
"react-day-picker": "^8.10.1",
"react-dom": "^18",
+13 -2
View File
@@ -1,11 +1,22 @@
import puppeteer from "puppeteer";
// import puppeteer from "puppeteer";
import { NextResponse } from "next/server";
import puppeteer from "puppeteer-core";
import chrome from "@sparticuz/chromium";
export async function POST(req: Request) {
try {
const { content, margin } = await req.json();
// 客户端环境
// const browser = await puppeteer.launch({
// headless: true
// });
// 无服务器端
const browser = await puppeteer.launch({
headless: true
args: chrome.args,
defaultViewport: chrome.defaultViewport,
executablePath: await chrome.executablePath(),
headless: chrome.headless
});
const page = await browser.newPage();
+33 -5
View File
@@ -128,6 +128,9 @@ importers:
'@radix-ui/react-tooltip':
specifier: ^1.1.2
version: 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@sparticuz/chromium':
specifier: ^131.0.0
version: 131.0.0
'@tiptap/extension-bullet-list':
specifier: ^2.10.2
version: 2.10.2(@tiptap/core@2.9.1(@tiptap/pm@2.9.1))
@@ -194,6 +197,9 @@ importers:
puppeteer:
specifier: ^23.9.0
version: 23.9.0(typescript@5.4.5)
puppeteer-core:
specifier: ^23.9.0
version: 23.9.0
react:
specifier: ^18
version: 18.3.1
@@ -1462,6 +1468,10 @@ packages:
'@sinonjs/fake-timers@10.3.0':
resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==}
'@sparticuz/chromium@131.0.0':
resolution: {integrity: sha512-0XkpNOL5HRxSTDNOfmuqQzEa//bQvZvX7hB8+aH5bfo4X4BVA36O72pIjL7voezodRLqfHfOKGDbgOD5BuEeUg==}
engines: {node: '>= 16'}
'@swc/counter@0.1.3':
resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==}
@@ -2920,6 +2930,15 @@ packages:
flatted@3.3.1:
resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
follow-redirects@1.15.9:
resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==}
engines: {node: '>=4.0'}
peerDependencies:
debug: '*'
peerDependenciesMeta:
debug:
optional: true
for-each@0.3.3:
resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
@@ -5206,7 +5225,7 @@ snapshots:
'@babel/traverse': 7.24.5
'@babel/types': 7.24.5
convert-source-map: 2.0.0
debug: 4.3.4
debug: 4.3.7
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@@ -5377,7 +5396,7 @@ snapshots:
'@babel/helper-split-export-declaration': 7.24.5
'@babel/parser': 7.24.5
'@babel/types': 7.24.5
debug: 4.3.4
debug: 4.3.7
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@@ -6477,6 +6496,13 @@ snapshots:
dependencies:
'@sinonjs/commons': 3.0.1
'@sparticuz/chromium@131.0.0':
dependencies:
follow-redirects: 1.15.9
tar-fs: 3.0.6
transitivePeerDependencies:
- debug
'@swc/counter@0.1.3': {}
'@swc/helpers@0.5.5':
@@ -8232,6 +8258,8 @@ snapshots:
flatted@3.3.1: {}
follow-redirects@1.15.9: {}
for-each@0.3.3:
dependencies:
is-callable: 1.2.7
@@ -8704,7 +8732,7 @@ snapshots:
'@babel/parser': 7.24.5
'@istanbuljs/schema': 0.1.3
istanbul-lib-coverage: 3.2.2
semver: 7.6.2
semver: 7.6.3
transitivePeerDependencies:
- supports-color
@@ -8716,7 +8744,7 @@ snapshots:
istanbul-lib-source-maps@4.0.1:
dependencies:
debug: 4.3.4
debug: 4.3.7
istanbul-lib-coverage: 3.2.2
source-map: 0.6.1
transitivePeerDependencies:
@@ -9192,7 +9220,7 @@ snapshots:
make-dir@4.0.0:
dependencies:
semver: 7.6.2
semver: 7.6.3
make-error@1.3.6: {}