feat: render server-side invoice pdf template using React server

This commit is contained in:
Ahmed Bouhuolia
2024-11-04 12:55:12 +02:00
parent 6687db4085
commit 51aec8d8b3
17 changed files with 787 additions and 70 deletions

64
pnpm-lock.yaml generated
View File

@@ -5991,7 +5991,7 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
ajv: 6.12.6
debug: 4.3.4
debug: 4.3.7(supports-color@5.5.0)
espree: 9.6.1
globals: 13.24.0
ignore: 5.3.1
@@ -6138,7 +6138,7 @@ packages:
engines: {node: '>=10.10.0'}
dependencies:
'@humanwhocodes/object-schema': 2.0.3
debug: 4.3.4
debug: 4.3.7(supports-color@5.5.0)
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
@@ -6730,7 +6730,7 @@ packages:
engines: {node: '>=18'}
dev: false
/@lerna/create@8.1.3(typescript@4.9.5):
/@lerna/create@8.1.3(typescript@5.6.3):
resolution: {integrity: sha512-JFvIYrlvR8Txa8h7VZx8VIQDltukEKOKaZL/muGO7Q/5aE2vjOKHsD/jkWYe/2uFy1xv37ubdx17O1UXQNadPg==}
engines: {node: '>=18.0.0'}
dependencies:
@@ -6745,7 +6745,7 @@ packages:
columnify: 1.6.0
conventional-changelog-core: 5.0.1
conventional-recommended-bump: 7.0.1
cosmiconfig: 8.3.6(typescript@4.9.5)
cosmiconfig: 8.3.6(typescript@5.6.3)
dedent: 0.7.0
execa: 5.0.0
fs-extra: 11.2.0
@@ -15672,22 +15672,6 @@ packages:
path-type: 4.0.0
yaml: 1.10.2
/cosmiconfig@8.3.6(typescript@4.9.5):
resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==}
engines: {node: '>=14'}
peerDependencies:
typescript: '>=4.9.5'
peerDependenciesMeta:
typescript:
optional: true
dependencies:
import-fresh: 3.3.0
js-yaml: 4.1.0
parse-json: 5.2.0
path-type: 4.0.0
typescript: 4.9.5
dev: true
/cosmiconfig@8.3.6(typescript@5.6.3):
resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==}
engines: {node: '>=14'}
@@ -23180,7 +23164,7 @@ packages:
engines: {node: '>=18.0.0'}
hasBin: true
dependencies:
'@lerna/create': 8.1.3(typescript@4.9.5)
'@lerna/create': 8.1.3(typescript@5.6.3)
'@npmcli/run-script': 7.0.2
'@nx/devkit': 19.0.7(nx@19.0.7)
'@octokit/plugin-enterprise-rest': 6.0.1
@@ -23193,7 +23177,7 @@ packages:
conventional-changelog-angular: 7.0.0
conventional-changelog-core: 5.0.1
conventional-recommended-bump: 7.0.1
cosmiconfig: 8.3.6(typescript@4.9.5)
cosmiconfig: 8.3.6(typescript@5.6.3)
dedent: 0.7.0
envinfo: 7.8.1
execa: 5.0.0
@@ -23245,7 +23229,7 @@ packages:
strong-log-transformer: 2.1.0
tar: 6.2.1
temp-dir: 1.0.0
typescript: 4.9.5
typescript: 5.6.3
upath: 2.0.1
uuid: 9.0.1
validate-npm-package-license: 3.0.4
@@ -28673,7 +28657,7 @@ packages:
semver: 7.6.2
source-map-loader: 3.0.2(webpack@5.91.0)
style-loader: 3.3.4(webpack@5.91.0)
tailwindcss: 3.4.3(ts-node@10.9.2)
tailwindcss: 3.4.14(ts-node@10.9.2)
terser-webpack-plugin: 5.3.10(esbuild@0.23.1)(webpack@5.91.0)
typescript: 4.9.5
webpack: 5.91.0(esbuild@0.23.1)
@@ -31440,37 +31424,6 @@ packages:
- ts-node
dev: false
/tailwindcss@3.4.3(ts-node@10.9.2):
resolution: {integrity: sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==}
engines: {node: '>=14.0.0'}
hasBin: true
dependencies:
'@alloc/quick-lru': 5.2.0
arg: 5.0.2
chokidar: 3.6.0
didyoumean: 1.2.2
dlv: 1.1.3
fast-glob: 3.3.2
glob-parent: 6.0.2
is-glob: 4.0.3
jiti: 1.21.0
lilconfig: 2.1.0
micromatch: 4.0.7
normalize-path: 3.0.0
object-hash: 3.0.0
picocolors: 1.1.1
postcss: 8.4.47
postcss-import: 15.1.0(postcss@8.4.47)
postcss-js: 4.0.1(postcss@8.4.47)
postcss-load-config: 4.0.2(postcss@8.4.47)(ts-node@10.9.2)
postcss-nested: 6.0.1(postcss@8.4.47)
postcss-selector-parser: 6.1.0
resolve: 1.22.8
sucrase: 3.35.0
transitivePeerDependencies:
- ts-node
dev: false
/tapable@0.1.10:
resolution: {integrity: sha512-jX8Et4hHg57mug1/079yitEKWGB3LCwoxByLsNim89LABq8NqgiX+6iYVOsq0vX8uJHkU+DZ5fnq95f800bEsQ==}
engines: {node: '>=0.6'}
@@ -32439,6 +32392,7 @@ packages:
resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==}
engines: {node: '>=4.2.0'}
hasBin: true
dev: false
/typescript@5.4.2:
resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==}