Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
N
nginx-proxy
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nanahira
nginx-proxy
Commits
8b60f55e
Commit
8b60f55e
authored
Apr 18, 2024
by
nanahira
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add auto sign certificate
parent
7ec69b9c
Pipeline
#26557
passed with stages
in 19 minutes and 11 seconds
Changes
6
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
853 additions
and
24 deletions
+853
-24
index.ts
index.ts
+1
-0
package-lock.json
package-lock.json
+716
-10
package.json
package.json
+1
-0
src/acme.ts
src/acme.ts
+104
-0
src/check-cert.ts
src/check-cert.ts
+2
-1
src/site.ts
src/site.ts
+29
-13
No files found.
index.ts
View file @
8b60f55e
...
@@ -15,5 +15,6 @@ async function main() {
...
@@ -15,5 +15,6 @@ async function main() {
{
escape
:
(
v
)
=>
v
},
{
escape
:
(
v
)
=>
v
},
),
),
);
);
process
.
exit
(
0
);
}
}
main
();
main
();
package-lock.json
View file @
8b60f55e
...
@@ -9,6 +9,7 @@
...
@@ -9,6 +9,7 @@
"version"
:
"1.0.0"
,
"version"
:
"1.0.0"
,
"license"
:
"MIT"
,
"license"
:
"MIT"
,
"dependencies"
:
{
"dependencies"
:
{
"acme-client"
:
"^5.3.0"
,
"lodash"
:
"^4.17.21"
,
"lodash"
:
"^4.17.21"
,
"mustache"
:
"^4.2.0"
,
"mustache"
:
"^4.2.0"
,
"nano-md5"
:
"^1.0.5"
"nano-md5"
:
"^1.0.5"
...
@@ -1097,6 +1098,196 @@
...
@@ -1097,6 +1098,196 @@
"node"
:
">= 8"
"node"
:
">= 8"
}
}
},
},
"node_modules/@peculiar/asn1-cms"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-cms/-/asn1-cms-2.3.8.tgz"
,
"integrity"
:
"sha512-Wtk9R7yQxGaIaawHorWKP2OOOm/RZzamOmSWwaqGphIuU6TcKYih0slL6asZlSSZtVoYTrBfrddSOD/jTu9vuQ=="
,
"dependencies"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"@peculiar/asn1-x509-attr"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-cms/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/asn1-csr"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-csr/-/asn1-csr-2.3.8.tgz"
,
"integrity"
:
"sha512-ZmAaP2hfzgIGdMLcot8gHTykzoI+X/S53x1xoGbTmratETIaAbSWMiPGvZmXRA0SNEIydpMkzYtq4fQBxN1u1w=="
,
"dependencies"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-csr/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/asn1-ecc"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-ecc/-/asn1-ecc-2.3.8.tgz"
,
"integrity"
:
"sha512-Ah/Q15y3A/CtxbPibiLM/LKcMbnLTdUdLHUgdpB5f60sSvGkXzxJCu5ezGTFHogZXWNX3KSmYqilCrfdmBc6pQ=="
,
"dependencies"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-ecc/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/asn1-pfx"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-pfx/-/asn1-pfx-2.3.8.tgz"
,
"integrity"
:
"sha512-XhdnCVznMmSmgy68B9pVxiZ1XkKoE1BjO4Hv+eUGiY1pM14msLsFZ3N7K46SoITIVZLq92kKkXpGiTfRjlNLyg=="
,
"dependencies"
:
{
"@peculiar/asn1-cms"
:
"^2.3.8"
,
"@peculiar/asn1-pkcs8"
:
"^2.3.8"
,
"@peculiar/asn1-rsa"
:
"^2.3.8"
,
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-pfx/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/asn1-pkcs8"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-pkcs8/-/asn1-pkcs8-2.3.8.tgz"
,
"integrity"
:
"sha512-rL8k2x59v8lZiwLRqdMMmOJ30GHt6yuHISFIuuWivWjAJjnxzZBVzMTQ72sknX5MeTSSvGwPmEFk2/N8+UztFQ=="
,
"dependencies"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-pkcs8/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/asn1-pkcs9"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-pkcs9/-/asn1-pkcs9-2.3.8.tgz"
,
"integrity"
:
"sha512-+nONq5tcK7vm3qdY7ZKoSQGQjhJYMJbwJGbXLFOhmqsFIxEWyQPHyV99+wshOjpOjg0wUSSkEEzX2hx5P6EKeQ=="
,
"dependencies"
:
{
"@peculiar/asn1-cms"
:
"^2.3.8"
,
"@peculiar/asn1-pfx"
:
"^2.3.8"
,
"@peculiar/asn1-pkcs8"
:
"^2.3.8"
,
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"@peculiar/asn1-x509-attr"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-pkcs9/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/asn1-rsa"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-rsa/-/asn1-rsa-2.3.8.tgz"
,
"integrity"
:
"sha512-ES/RVEHu8VMYXgrg3gjb1m/XG0KJWnV4qyZZ7mAg7rrF3VTmRbLxO8mk+uy0Hme7geSMebp+Wvi2U6RLLEs12Q=="
,
"dependencies"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-rsa/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/asn1-schema"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.3.8.tgz"
,
"integrity"
:
"sha512-ULB1XqHKx1WBU/tTFIA+uARuRoBVZ4pNdOA878RDrRbBfBGcSzi5HBkdScC6ZbHn8z7L8gmKCgPC1LHRrP46tA=="
,
"dependencies"
:
{
"asn1js"
:
"^3.0.5"
,
"pvtsutils"
:
"^1.3.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-schema/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/asn1-x509"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-x509/-/asn1-x509-2.3.8.tgz"
,
"integrity"
:
"sha512-voKxGfDU1c6r9mKiN5ZUsZWh3Dy1BABvTM3cimf0tztNwyMJPhiXY94eRTgsMQe6ViLfT6EoXxkWVzcm3mFAFw=="
,
"dependencies"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"ipaddr.js"
:
"^2.1.0"
,
"pvtsutils"
:
"^1.3.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-x509-attr"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-x509-attr/-/asn1-x509-attr-2.3.8.tgz"
,
"integrity"
:
"sha512-4Z8mSN95MOuX04Aku9BUyMdsMKtVQUqWnr627IheiWnwFoheUhX3R4Y2zh23M7m80r4/WG8MOAckRKc77IRv6g=="
,
"dependencies"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
}
},
"node_modules/@peculiar/asn1-x509-attr/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/asn1-x509/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@peculiar/x509"
:
{
"version"
:
"1.9.7"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/x509/-/x509-1.9.7.tgz"
,
"integrity"
:
"sha512-O+fR1ge6U8upO52q5b3d4tF4SxUdK4IQ0y++Z/Wlqq+ySZUf+deHnbMlDB1YZsIQ/DXU0i5M7Y1DyF5kwpXouQ=="
,
"dependencies"
:
{
"@peculiar/asn1-cms"
:
"^2.3.8"
,
"@peculiar/asn1-csr"
:
"^2.3.8"
,
"@peculiar/asn1-ecc"
:
"^2.3.8"
,
"@peculiar/asn1-pkcs9"
:
"^2.3.8"
,
"@peculiar/asn1-rsa"
:
"^2.3.8"
,
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"pvtsutils"
:
"^1.3.5"
,
"reflect-metadata"
:
"^0.2.1"
,
"tslib"
:
"^2.6.2"
,
"tsyringe"
:
"^4.8.0"
}
},
"node_modules/@peculiar/x509/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/@sinclair/typebox"
:
{
"node_modules/@sinclair/typebox"
:
{
"version"
:
"0.24.28"
,
"version"
:
"0.24.28"
,
"resolved"
:
"https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.28.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.28.tgz"
,
...
@@ -1413,6 +1604,21 @@
...
@@ -1413,6 +1604,21 @@
"url"
:
"https://opencollective.com/typescript-eslint"
"url"
:
"https://opencollective.com/typescript-eslint"
}
}
},
},
"node_modules/acme-client"
:
{
"version"
:
"5.3.0"
,
"resolved"
:
"https://registry.npmjs.org/acme-client/-/acme-client-5.3.0.tgz"
,
"integrity"
:
"sha512-kHA6+UMo+TQfBiSfmAwsNMCh++rkJZLiUh8BUuTRvleduoYw5Vo5hM0scqNWXb9wGWPMRyaxF9gxw94HNiYTjw=="
,
"dependencies"
:
{
"@peculiar/x509"
:
"^1.9.7"
,
"asn1js"
:
"^3.0.5"
,
"axios"
:
"^1.6.5"
,
"debug"
:
"^4.1.1"
,
"node-forge"
:
"^1.3.1"
},
"engines"
:
{
"node"
:
">= 16"
}
},
"node_modules/acorn"
:
{
"node_modules/acorn"
:
{
"version"
:
"7.4.1"
,
"version"
:
"7.4.1"
,
"resolved"
:
"https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz"
,
...
@@ -1541,6 +1747,24 @@
...
@@ -1541,6 +1747,24 @@
"node"
:
">=8"
"node"
:
">=8"
}
}
},
},
"node_modules/asn1js"
:
{
"version"
:
"3.0.5"
,
"resolved"
:
"https://registry.npmjs.org/asn1js/-/asn1js-3.0.5.tgz"
,
"integrity"
:
"sha512-FVnvrKJwpt9LP2lAMl8qZswRNm3T4q9CON+bxldk2iwk3FFpuwhx2FfinyitizWHsVYyaY+y5JzDR0rCMV5yTQ=="
,
"dependencies"
:
{
"pvtsutils"
:
"^1.3.2"
,
"pvutils"
:
"^1.1.3"
,
"tslib"
:
"^2.4.0"
},
"engines"
:
{
"node"
:
">=12.0.0"
}
},
"node_modules/asn1js/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/astral-regex"
:
{
"node_modules/astral-regex"
:
{
"version"
:
"2.0.0"
,
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz"
,
...
@@ -1550,6 +1774,21 @@
...
@@ -1550,6 +1774,21 @@
"node"
:
">=8"
"node"
:
">=8"
}
}
},
},
"node_modules/asynckit"
:
{
"version"
:
"0.4.0"
,
"resolved"
:
"https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz"
,
"integrity"
:
"sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
},
"node_modules/axios"
:
{
"version"
:
"1.6.8"
,
"resolved"
:
"https://registry.npmjs.org/axios/-/axios-1.6.8.tgz"
,
"integrity"
:
"sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ=="
,
"dependencies"
:
{
"follow-redirects"
:
"^1.15.6"
,
"form-data"
:
"^4.0.0"
,
"proxy-from-env"
:
"^1.1.0"
}
},
"node_modules/babel-jest"
:
{
"node_modules/babel-jest"
:
{
"version"
:
"28.1.3"
,
"version"
:
"28.1.3"
,
"resolved"
:
"https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.3.tgz"
,
"resolved"
:
"https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.3.tgz"
,
...
@@ -1840,6 +2079,17 @@
...
@@ -1840,6 +2079,17 @@
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
"dev"
:
true
},
},
"node_modules/combined-stream"
:
{
"version"
:
"1.0.8"
,
"resolved"
:
"https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz"
,
"integrity"
:
"sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="
,
"dependencies"
:
{
"delayed-stream"
:
"~1.0.0"
},
"engines"
:
{
"node"
:
">= 0.8"
}
},
"node_modules/concat-map"
:
{
"node_modules/concat-map"
:
{
"version"
:
"0.0.1"
,
"version"
:
"0.0.1"
,
"resolved"
:
"https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
,
...
@@ -1873,7 +2123,6 @@
...
@@ -1873,7 +2123,6 @@
"version"
:
"4.3.4"
,
"version"
:
"4.3.4"
,
"resolved"
:
"https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
,
"resolved"
:
"https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
,
"integrity"
:
"sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ=="
,
"integrity"
:
"sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ=="
,
"dev"
:
true
,
"dependencies"
:
{
"dependencies"
:
{
"ms"
:
"2.1.2"
"ms"
:
"2.1.2"
},
},
...
@@ -1907,6 +2156,14 @@
...
@@ -1907,6 +2156,14 @@
"node"
:
">=0.10.0"
"node"
:
">=0.10.0"
}
}
},
},
"node_modules/delayed-stream"
:
{
"version"
:
"1.0.0"
,
"resolved"
:
"https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"
,
"integrity"
:
"sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
,
"engines"
:
{
"node"
:
">=0.4.0"
}
},
"node_modules/detect-newline"
:
{
"node_modules/detect-newline"
:
{
"version"
:
"3.1.0"
,
"version"
:
"3.1.0"
,
"resolved"
:
"https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz"
,
...
@@ -2436,6 +2693,38 @@
...
@@ -2436,6 +2693,38 @@
"integrity"
:
"sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ=="
,
"integrity"
:
"sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ=="
,
"dev"
:
true
"dev"
:
true
},
},
"node_modules/follow-redirects"
:
{
"version"
:
"1.15.6"
,
"resolved"
:
"https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz"
,
"integrity"
:
"sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA=="
,
"funding"
:
[
{
"type"
:
"individual"
,
"url"
:
"https://github.com/sponsors/RubenVerborgh"
}
],
"engines"
:
{
"node"
:
">=4.0"
},
"peerDependenciesMeta"
:
{
"debug"
:
{
"optional"
:
true
}
}
},
"node_modules/form-data"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz"
,
"integrity"
:
"sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww=="
,
"dependencies"
:
{
"asynckit"
:
"^0.4.0"
,
"combined-stream"
:
"^1.0.8"
,
"mime-types"
:
"^2.1.12"
},
"engines"
:
{
"node"
:
">= 6"
}
},
"node_modules/fs.realpath"
:
{
"node_modules/fs.realpath"
:
{
"version"
:
"1.0.0"
,
"version"
:
"1.0.0"
,
"resolved"
:
"https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
,
...
@@ -2685,6 +2974,14 @@
...
@@ -2685,6 +2974,14 @@
"integrity"
:
"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
,
"integrity"
:
"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
,
"dev"
:
true
"dev"
:
true
},
},
"node_modules/ipaddr.js"
:
{
"version"
:
"2.1.0"
,
"resolved"
:
"https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz"
,
"integrity"
:
"sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ=="
,
"engines"
:
{
"node"
:
">= 10"
}
},
"node_modules/is-arrayish"
:
{
"node_modules/is-arrayish"
:
{
"version"
:
"0.2.1"
,
"version"
:
"0.2.1"
,
"resolved"
:
"https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz"
,
...
@@ -3623,6 +3920,25 @@
...
@@ -3623,6 +3920,25 @@
"node"
:
">=8.6"
"node"
:
">=8.6"
}
}
},
},
"node_modules/mime-db"
:
{
"version"
:
"1.52.0"
,
"resolved"
:
"https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz"
,
"integrity"
:
"sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
,
"engines"
:
{
"node"
:
">= 0.6"
}
},
"node_modules/mime-types"
:
{
"version"
:
"2.1.35"
,
"resolved"
:
"https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz"
,
"integrity"
:
"sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="
,
"dependencies"
:
{
"mime-db"
:
"1.52.0"
},
"engines"
:
{
"node"
:
">= 0.6"
}
},
"node_modules/mimic-fn"
:
{
"node_modules/mimic-fn"
:
{
"version"
:
"2.1.0"
,
"version"
:
"2.1.0"
,
"resolved"
:
"https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz"
,
...
@@ -3647,8 +3963,7 @@
...
@@ -3647,8 +3963,7 @@
"node_modules/ms"
:
{
"node_modules/ms"
:
{
"version"
:
"2.1.2"
,
"version"
:
"2.1.2"
,
"resolved"
:
"https://registry.npmjs.org/ms/-/ms-2.1.2.tgz"
,
"resolved"
:
"https://registry.npmjs.org/ms/-/ms-2.1.2.tgz"
,
"integrity"
:
"sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
,
"integrity"
:
"sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
"dev"
:
true
},
},
"node_modules/mustache"
:
{
"node_modules/mustache"
:
{
"version"
:
"4.2.0"
,
"version"
:
"4.2.0"
,
...
@@ -3669,6 +3984,14 @@
...
@@ -3669,6 +3984,14 @@
"integrity"
:
"sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw=="
,
"integrity"
:
"sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw=="
,
"dev"
:
true
"dev"
:
true
},
},
"node_modules/node-forge"
:
{
"version"
:
"1.3.1"
,
"resolved"
:
"https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz"
,
"integrity"
:
"sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA=="
,
"engines"
:
{
"node"
:
">= 6.13.0"
}
},
"node_modules/node-int64"
:
{
"node_modules/node-int64"
:
{
"version"
:
"0.4.0"
,
"version"
:
"0.4.0"
,
"resolved"
:
"https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz"
,
...
@@ -3990,6 +4313,11 @@
...
@@ -3990,6 +4313,11 @@
"node"
:
">= 6"
"node"
:
">= 6"
}
}
},
},
"node_modules/proxy-from-env"
:
{
"version"
:
"1.1.0"
,
"resolved"
:
"https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz"
,
"integrity"
:
"sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
},
"node_modules/punycode"
:
{
"node_modules/punycode"
:
{
"version"
:
"2.1.1"
,
"version"
:
"2.1.1"
,
"resolved"
:
"https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz"
,
...
@@ -3999,6 +4327,27 @@
...
@@ -3999,6 +4327,27 @@
"node"
:
">=6"
"node"
:
">=6"
}
}
},
},
"node_modules/pvtsutils"
:
{
"version"
:
"1.3.5"
,
"resolved"
:
"https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.5.tgz"
,
"integrity"
:
"sha512-ARvb14YB9Nm2Xi6nBq1ZX6dAM0FsJnuk+31aUp4TrcZEdKUlSqOqsxJHUPJDNE3qiIp+iUPEIeR6Je/tgV7zsA=="
,
"dependencies"
:
{
"tslib"
:
"^2.6.1"
}
},
"node_modules/pvtsutils/node_modules/tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
},
"node_modules/pvutils"
:
{
"version"
:
"1.1.3"
,
"resolved"
:
"https://registry.npmjs.org/pvutils/-/pvutils-1.1.3.tgz"
,
"integrity"
:
"sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ=="
,
"engines"
:
{
"node"
:
">=6.0.0"
}
},
"node_modules/queue-microtask"
:
{
"node_modules/queue-microtask"
:
{
"version"
:
"1.2.3"
,
"version"
:
"1.2.3"
,
"resolved"
:
"https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz"
,
"resolved"
:
"https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz"
,
...
@@ -4025,6 +4374,11 @@
...
@@ -4025,6 +4374,11 @@
"integrity"
:
"sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w=="
,
"integrity"
:
"sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w=="
,
"dev"
:
true
"dev"
:
true
},
},
"node_modules/reflect-metadata"
:
{
"version"
:
"0.2.2"
,
"resolved"
:
"https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz"
,
"integrity"
:
"sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q=="
},
"node_modules/regexpp"
:
{
"node_modules/regexpp"
:
{
"version"
:
"3.2.0"
,
"version"
:
"3.2.0"
,
"resolved"
:
"https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz"
,
...
@@ -4538,8 +4892,7 @@
...
@@ -4538,8 +4892,7 @@
"node_modules/tslib"
:
{
"node_modules/tslib"
:
{
"version"
:
"1.14.1"
,
"version"
:
"1.14.1"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
,
"integrity"
:
"sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
,
"integrity"
:
"sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
"dev"
:
true
},
},
"node_modules/tsutils"
:
{
"node_modules/tsutils"
:
{
"version"
:
"3.21.0"
,
"version"
:
"3.21.0"
,
...
@@ -4556,6 +4909,17 @@
...
@@ -4556,6 +4909,17 @@
"typescript"
:
">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
"typescript"
:
">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
}
}
},
},
"node_modules/tsyringe"
:
{
"version"
:
"4.8.0"
,
"resolved"
:
"https://registry.npmjs.org/tsyringe/-/tsyringe-4.8.0.tgz"
,
"integrity"
:
"sha512-YB1FG+axdxADa3ncEtRnQCFq/M0lALGLxSZeVNbTU8NqhOVc51nnv2CISTcvc1kyv6EGPtXVr0v6lWeDxiijOA=="
,
"dependencies"
:
{
"tslib"
:
"^1.9.3"
},
"engines"
:
{
"node"
:
">= 6.0.0"
}
},
"node_modules/type-check"
:
{
"node_modules/type-check"
:
{
"version"
:
"0.4.0"
,
"version"
:
"0.4.0"
,
"resolved"
:
"https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz"
,
...
@@ -5614,6 +5978,218 @@
...
@@ -5614,6 +5978,218 @@
"fastq"
:
"^1.6.0"
"fastq"
:
"^1.6.0"
}
}
},
},
"@peculiar/asn1-cms"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-cms/-/asn1-cms-2.3.8.tgz"
,
"integrity"
:
"sha512-Wtk9R7yQxGaIaawHorWKP2OOOm/RZzamOmSWwaqGphIuU6TcKYih0slL6asZlSSZtVoYTrBfrddSOD/jTu9vuQ=="
,
"requires"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"@peculiar/asn1-x509-attr"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/asn1-csr"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-csr/-/asn1-csr-2.3.8.tgz"
,
"integrity"
:
"sha512-ZmAaP2hfzgIGdMLcot8gHTykzoI+X/S53x1xoGbTmratETIaAbSWMiPGvZmXRA0SNEIydpMkzYtq4fQBxN1u1w=="
,
"requires"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/asn1-ecc"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-ecc/-/asn1-ecc-2.3.8.tgz"
,
"integrity"
:
"sha512-Ah/Q15y3A/CtxbPibiLM/LKcMbnLTdUdLHUgdpB5f60sSvGkXzxJCu5ezGTFHogZXWNX3KSmYqilCrfdmBc6pQ=="
,
"requires"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/asn1-pfx"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-pfx/-/asn1-pfx-2.3.8.tgz"
,
"integrity"
:
"sha512-XhdnCVznMmSmgy68B9pVxiZ1XkKoE1BjO4Hv+eUGiY1pM14msLsFZ3N7K46SoITIVZLq92kKkXpGiTfRjlNLyg=="
,
"requires"
:
{
"@peculiar/asn1-cms"
:
"^2.3.8"
,
"@peculiar/asn1-pkcs8"
:
"^2.3.8"
,
"@peculiar/asn1-rsa"
:
"^2.3.8"
,
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/asn1-pkcs8"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-pkcs8/-/asn1-pkcs8-2.3.8.tgz"
,
"integrity"
:
"sha512-rL8k2x59v8lZiwLRqdMMmOJ30GHt6yuHISFIuuWivWjAJjnxzZBVzMTQ72sknX5MeTSSvGwPmEFk2/N8+UztFQ=="
,
"requires"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/asn1-pkcs9"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-pkcs9/-/asn1-pkcs9-2.3.8.tgz"
,
"integrity"
:
"sha512-+nONq5tcK7vm3qdY7ZKoSQGQjhJYMJbwJGbXLFOhmqsFIxEWyQPHyV99+wshOjpOjg0wUSSkEEzX2hx5P6EKeQ=="
,
"requires"
:
{
"@peculiar/asn1-cms"
:
"^2.3.8"
,
"@peculiar/asn1-pfx"
:
"^2.3.8"
,
"@peculiar/asn1-pkcs8"
:
"^2.3.8"
,
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"@peculiar/asn1-x509-attr"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/asn1-rsa"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-rsa/-/asn1-rsa-2.3.8.tgz"
,
"integrity"
:
"sha512-ES/RVEHu8VMYXgrg3gjb1m/XG0KJWnV4qyZZ7mAg7rrF3VTmRbLxO8mk+uy0Hme7geSMebp+Wvi2U6RLLEs12Q=="
,
"requires"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/asn1-schema"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.3.8.tgz"
,
"integrity"
:
"sha512-ULB1XqHKx1WBU/tTFIA+uARuRoBVZ4pNdOA878RDrRbBfBGcSzi5HBkdScC6ZbHn8z7L8gmKCgPC1LHRrP46tA=="
,
"requires"
:
{
"asn1js"
:
"^3.0.5"
,
"pvtsutils"
:
"^1.3.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/asn1-x509"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-x509/-/asn1-x509-2.3.8.tgz"
,
"integrity"
:
"sha512-voKxGfDU1c6r9mKiN5ZUsZWh3Dy1BABvTM3cimf0tztNwyMJPhiXY94eRTgsMQe6ViLfT6EoXxkWVzcm3mFAFw=="
,
"requires"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"ipaddr.js"
:
"^2.1.0"
,
"pvtsutils"
:
"^1.3.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/asn1-x509-attr"
:
{
"version"
:
"2.3.8"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/asn1-x509-attr/-/asn1-x509-attr-2.3.8.tgz"
,
"integrity"
:
"sha512-4Z8mSN95MOuX04Aku9BUyMdsMKtVQUqWnr627IheiWnwFoheUhX3R4Y2zh23M7m80r4/WG8MOAckRKc77IRv6g=="
,
"requires"
:
{
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"asn1js"
:
"^3.0.5"
,
"tslib"
:
"^2.6.2"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@peculiar/x509"
:
{
"version"
:
"1.9.7"
,
"resolved"
:
"https://registry.npmjs.org/@peculiar/x509/-/x509-1.9.7.tgz"
,
"integrity"
:
"sha512-O+fR1ge6U8upO52q5b3d4tF4SxUdK4IQ0y++Z/Wlqq+ySZUf+deHnbMlDB1YZsIQ/DXU0i5M7Y1DyF5kwpXouQ=="
,
"requires"
:
{
"@peculiar/asn1-cms"
:
"^2.3.8"
,
"@peculiar/asn1-csr"
:
"^2.3.8"
,
"@peculiar/asn1-ecc"
:
"^2.3.8"
,
"@peculiar/asn1-pkcs9"
:
"^2.3.8"
,
"@peculiar/asn1-rsa"
:
"^2.3.8"
,
"@peculiar/asn1-schema"
:
"^2.3.8"
,
"@peculiar/asn1-x509"
:
"^2.3.8"
,
"pvtsutils"
:
"^1.3.5"
,
"reflect-metadata"
:
"^0.2.1"
,
"tslib"
:
"^2.6.2"
,
"tsyringe"
:
"^4.8.0"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"@sinclair/typebox"
:
{
"@sinclair/typebox"
:
{
"version"
:
"0.24.28"
,
"version"
:
"0.24.28"
,
"resolved"
:
"https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.28.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.28.tgz"
,
...
@@ -5856,6 +6432,18 @@
...
@@ -5856,6 +6432,18 @@
"eslint-visitor-keys"
:
"^2.0.0"
"eslint-visitor-keys"
:
"^2.0.0"
}
}
},
},
"acme-client"
:
{
"version"
:
"5.3.0"
,
"resolved"
:
"https://registry.npmjs.org/acme-client/-/acme-client-5.3.0.tgz"
,
"integrity"
:
"sha512-kHA6+UMo+TQfBiSfmAwsNMCh++rkJZLiUh8BUuTRvleduoYw5Vo5hM0scqNWXb9wGWPMRyaxF9gxw94HNiYTjw=="
,
"requires"
:
{
"@peculiar/x509"
:
"^1.9.7"
,
"asn1js"
:
"^3.0.5"
,
"axios"
:
"^1.6.5"
,
"debug"
:
"^4.1.1"
,
"node-forge"
:
"^1.3.1"
}
},
"acorn"
:
{
"acorn"
:
{
"version"
:
"7.4.1"
,
"version"
:
"7.4.1"
,
"resolved"
:
"https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz"
,
...
@@ -5944,12 +6532,44 @@
...
@@ -5944,12 +6532,44 @@
"integrity"
:
"sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw=="
,
"integrity"
:
"sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw=="
,
"dev"
:
true
"dev"
:
true
},
},
"asn1js"
:
{
"version"
:
"3.0.5"
,
"resolved"
:
"https://registry.npmjs.org/asn1js/-/asn1js-3.0.5.tgz"
,
"integrity"
:
"sha512-FVnvrKJwpt9LP2lAMl8qZswRNm3T4q9CON+bxldk2iwk3FFpuwhx2FfinyitizWHsVYyaY+y5JzDR0rCMV5yTQ=="
,
"requires"
:
{
"pvtsutils"
:
"^1.3.2"
,
"pvutils"
:
"^1.1.3"
,
"tslib"
:
"^2.4.0"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"astral-regex"
:
{
"astral-regex"
:
{
"version"
:
"2.0.0"
,
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz"
,
"integrity"
:
"sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ=="
,
"integrity"
:
"sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ=="
,
"dev"
:
true
"dev"
:
true
},
},
"asynckit"
:
{
"version"
:
"0.4.0"
,
"resolved"
:
"https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz"
,
"integrity"
:
"sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
},
"axios"
:
{
"version"
:
"1.6.8"
,
"resolved"
:
"https://registry.npmjs.org/axios/-/axios-1.6.8.tgz"
,
"integrity"
:
"sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ=="
,
"requires"
:
{
"follow-redirects"
:
"^1.15.6"
,
"form-data"
:
"^4.0.0"
,
"proxy-from-env"
:
"^1.1.0"
}
},
"babel-jest"
:
{
"babel-jest"
:
{
"version"
:
"28.1.3"
,
"version"
:
"28.1.3"
,
"resolved"
:
"https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.3.tgz"
,
"resolved"
:
"https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.3.tgz"
,
...
@@ -6165,6 +6785,14 @@
...
@@ -6165,6 +6785,14 @@
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
"dev"
:
true
},
},
"combined-stream"
:
{
"version"
:
"1.0.8"
,
"resolved"
:
"https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz"
,
"integrity"
:
"sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="
,
"requires"
:
{
"delayed-stream"
:
"~1.0.0"
}
},
"concat-map"
:
{
"concat-map"
:
{
"version"
:
"0.0.1"
,
"version"
:
"0.0.1"
,
"resolved"
:
"https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
,
...
@@ -6195,7 +6823,6 @@
...
@@ -6195,7 +6823,6 @@
"version"
:
"4.3.4"
,
"version"
:
"4.3.4"
,
"resolved"
:
"https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
,
"resolved"
:
"https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
,
"integrity"
:
"sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ=="
,
"integrity"
:
"sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ=="
,
"dev"
:
true
,
"requires"
:
{
"requires"
:
{
"ms"
:
"2.1.2"
"ms"
:
"2.1.2"
}
}
...
@@ -6218,6 +6845,11 @@
...
@@ -6218,6 +6845,11 @@
"integrity"
:
"sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg=="
,
"integrity"
:
"sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg=="
,
"dev"
:
true
"dev"
:
true
},
},
"delayed-stream"
:
{
"version"
:
"1.0.0"
,
"resolved"
:
"https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"
,
"integrity"
:
"sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
},
"detect-newline"
:
{
"detect-newline"
:
{
"version"
:
"3.1.0"
,
"version"
:
"3.1.0"
,
"resolved"
:
"https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz"
,
...
@@ -6616,6 +7248,21 @@
...
@@ -6616,6 +7248,21 @@
"integrity"
:
"sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ=="
,
"integrity"
:
"sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ=="
,
"dev"
:
true
"dev"
:
true
},
},
"follow-redirects"
:
{
"version"
:
"1.15.6"
,
"resolved"
:
"https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz"
,
"integrity"
:
"sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA=="
},
"form-data"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz"
,
"integrity"
:
"sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww=="
,
"requires"
:
{
"asynckit"
:
"^0.4.0"
,
"combined-stream"
:
"^1.0.8"
,
"mime-types"
:
"^2.1.12"
}
},
"fs.realpath"
:
{
"fs.realpath"
:
{
"version"
:
"1.0.0"
,
"version"
:
"1.0.0"
,
"resolved"
:
"https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
,
...
@@ -6792,6 +7439,11 @@
...
@@ -6792,6 +7439,11 @@
"integrity"
:
"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
,
"integrity"
:
"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
,
"dev"
:
true
"dev"
:
true
},
},
"ipaddr.js"
:
{
"version"
:
"2.1.0"
,
"resolved"
:
"https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz"
,
"integrity"
:
"sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ=="
},
"is-arrayish"
:
{
"is-arrayish"
:
{
"version"
:
"0.2.1"
,
"version"
:
"0.2.1"
,
"resolved"
:
"https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz"
,
...
@@ -7517,6 +8169,19 @@
...
@@ -7517,6 +8169,19 @@
"picomatch"
:
"^2.3.1"
"picomatch"
:
"^2.3.1"
}
}
},
},
"mime-db"
:
{
"version"
:
"1.52.0"
,
"resolved"
:
"https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz"
,
"integrity"
:
"sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
},
"mime-types"
:
{
"version"
:
"2.1.35"
,
"resolved"
:
"https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz"
,
"integrity"
:
"sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="
,
"requires"
:
{
"mime-db"
:
"1.52.0"
}
},
"mimic-fn"
:
{
"mimic-fn"
:
{
"version"
:
"2.1.0"
,
"version"
:
"2.1.0"
,
"resolved"
:
"https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz"
,
...
@@ -7535,8 +8200,7 @@
...
@@ -7535,8 +8200,7 @@
"ms"
:
{
"ms"
:
{
"version"
:
"2.1.2"
,
"version"
:
"2.1.2"
,
"resolved"
:
"https://registry.npmjs.org/ms/-/ms-2.1.2.tgz"
,
"resolved"
:
"https://registry.npmjs.org/ms/-/ms-2.1.2.tgz"
,
"integrity"
:
"sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
,
"integrity"
:
"sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
"dev"
:
true
},
},
"mustache"
:
{
"mustache"
:
{
"version"
:
"4.2.0"
,
"version"
:
"4.2.0"
,
...
@@ -7554,6 +8218,11 @@
...
@@ -7554,6 +8218,11 @@
"integrity"
:
"sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw=="
,
"integrity"
:
"sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw=="
,
"dev"
:
true
"dev"
:
true
},
},
"node-forge"
:
{
"version"
:
"1.3.1"
,
"resolved"
:
"https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz"
,
"integrity"
:
"sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA=="
},
"node-int64"
:
{
"node-int64"
:
{
"version"
:
"0.4.0"
,
"version"
:
"0.4.0"
,
"resolved"
:
"https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz"
,
...
@@ -7783,12 +8452,37 @@
...
@@ -7783,12 +8452,37 @@
"sisteransi"
:
"^1.0.5"
"sisteransi"
:
"^1.0.5"
}
}
},
},
"proxy-from-env"
:
{
"version"
:
"1.1.0"
,
"resolved"
:
"https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz"
,
"integrity"
:
"sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
},
"punycode"
:
{
"punycode"
:
{
"version"
:
"2.1.1"
,
"version"
:
"2.1.1"
,
"resolved"
:
"https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz"
,
"integrity"
:
"sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
,
"integrity"
:
"sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
,
"dev"
:
true
"dev"
:
true
},
},
"pvtsutils"
:
{
"version"
:
"1.3.5"
,
"resolved"
:
"https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.5.tgz"
,
"integrity"
:
"sha512-ARvb14YB9Nm2Xi6nBq1ZX6dAM0FsJnuk+31aUp4TrcZEdKUlSqOqsxJHUPJDNE3qiIp+iUPEIeR6Je/tgV7zsA=="
,
"requires"
:
{
"tslib"
:
"^2.6.1"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.6.2"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
,
"integrity"
:
"sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
}
}
},
"pvutils"
:
{
"version"
:
"1.1.3"
,
"resolved"
:
"https://registry.npmjs.org/pvutils/-/pvutils-1.1.3.tgz"
,
"integrity"
:
"sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ=="
},
"queue-microtask"
:
{
"queue-microtask"
:
{
"version"
:
"1.2.3"
,
"version"
:
"1.2.3"
,
"resolved"
:
"https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz"
,
"resolved"
:
"https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz"
,
...
@@ -7801,6 +8495,11 @@
...
@@ -7801,6 +8495,11 @@
"integrity"
:
"sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w=="
,
"integrity"
:
"sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w=="
,
"dev"
:
true
"dev"
:
true
},
},
"reflect-metadata"
:
{
"version"
:
"0.2.2"
,
"resolved"
:
"https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz"
,
"integrity"
:
"sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q=="
},
"regexpp"
:
{
"regexpp"
:
{
"version"
:
"3.2.0"
,
"version"
:
"3.2.0"
,
"resolved"
:
"https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz"
,
...
@@ -8154,8 +8853,7 @@
...
@@ -8154,8 +8853,7 @@
"tslib"
:
{
"tslib"
:
{
"version"
:
"1.14.1"
,
"version"
:
"1.14.1"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
,
"integrity"
:
"sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
,
"integrity"
:
"sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
"dev"
:
true
},
},
"tsutils"
:
{
"tsutils"
:
{
"version"
:
"3.21.0"
,
"version"
:
"3.21.0"
,
...
@@ -8166,6 +8864,14 @@
...
@@ -8166,6 +8864,14 @@
"tslib"
:
"^1.8.1"
"tslib"
:
"^1.8.1"
}
}
},
},
"tsyringe"
:
{
"version"
:
"4.8.0"
,
"resolved"
:
"https://registry.npmjs.org/tsyringe/-/tsyringe-4.8.0.tgz"
,
"integrity"
:
"sha512-YB1FG+axdxADa3ncEtRnQCFq/M0lALGLxSZeVNbTU8NqhOVc51nnv2CISTcvc1kyv6EGPtXVr0v6lWeDxiijOA=="
,
"requires"
:
{
"tslib"
:
"^1.9.3"
}
},
"type-check"
:
{
"type-check"
:
{
"version"
:
"0.4.0"
,
"version"
:
"0.4.0"
,
"resolved"
:
"https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz"
,
...
...
package.json
View file @
8b60f55e
...
@@ -56,6 +56,7 @@
...
@@ -56,6 +56,7 @@
"
typescript
"
:
"
^4.7.4
"
"
typescript
"
:
"
^4.7.4
"
},
},
"dependencies"
:
{
"dependencies"
:
{
"
acme-client
"
:
"
^5.3.0
"
,
"
lodash
"
:
"
^4.17.21
"
,
"
lodash
"
:
"
^4.17.21
"
,
"
mustache
"
:
"
^4.2.0
"
,
"
mustache
"
:
"
^4.2.0
"
,
"
nano-md5
"
:
"
^1.0.5
"
"
nano-md5
"
:
"
^1.0.5
"
...
...
src/acme.ts
0 → 100644
View file @
8b60f55e
import
{
createServer
,
Server
}
from
'
http
'
;
import
acme
,
{
Client
}
from
'
acme-client
'
;
import
fs
from
'
fs
'
;
let
email
:
string
;
export
const
domainsToBeSigned
:
string
[]
=
[];
export
function
addSignCert
(
domains
:
string
[],
payload
:
string
)
{
domainsToBeSigned
.
push
(...
domains
);
if
(
!
email
)
{
// acme://
email
=
payload
.
slice
(
7
);
}
return
domainsToBeSigned
[
0
];
}
export
async
function
runSignCert
()
{
if
(
!
domainsToBeSigned
.
length
)
{
return
;
}
console
.
error
(
`Signing certificate for
${
domainsToBeSigned
.
join
(
'
,
'
)}
`
);
// sign a cert with acme-client
const
[
certificateKey
,
certificateRequest
]
=
await
acme
.
crypto
.
createCsr
({
commonName
:
domainsToBeSigned
[
0
],
altNames
:
domainsToBeSigned
.
slice
(
1
),
});
// store as token
const
contentMap
=
new
Map
<
string
,
string
>
();
const
server
=
createServer
(
async
(
req
,
res
)
=>
{
// read token from http://<YOUR_DOMAIN>/.well-known/acme-challenge/<TOKEN>
const
token
=
req
.
url
?.
split
(
'
/.well-known/acme-challenge/
'
).
pop
();
if
(
!
token
)
{
// 404
res
.
writeHead
(
404
);
res
.
end
(
'
Token not Found
'
);
return
;
}
const
content
=
contentMap
.
get
(
token
);
if
(
!
content
)
{
// 404
res
.
writeHead
(
404
);
res
.
end
(
'
Content not Found
'
);
return
;
}
res
.
writeHead
(
200
);
res
.
end
(
content
);
}).
listen
(
80
);
await
fs
.
promises
.
mkdir
(
'
/etc/nginx/acme
'
,
{
recursive
:
true
});
let
accountKey
:
Buffer
;
try
{
accountKey
=
await
fs
.
promises
.
readFile
(
'
/etc/nginx/acme/account.pem
'
);
}
catch
(
e
)
{
accountKey
=
await
acme
.
forge
.
createPrivateKey
();
await
fs
.
promises
.
writeFile
(
'
/etc/nginx/acme/account.pem
'
,
accountKey
);
}
const
acmeClient
=
new
Client
({
directoryUrl
:
acme
.
directory
.
letsencrypt
.
production
,
accountKey
,
});
try
{
const
certificate
=
await
acmeClient
.
auto
({
csr
:
certificateRequest
,
email
,
termsOfServiceAgreed
:
true
,
challengePriority
:
[
'
http-01
'
],
challengeCreateFn
:
async
(
authz
,
challenge
,
keyAuthorization
)
=>
{
if
(
challenge
.
type
!==
'
http-01
'
)
{
return
;
}
// store token
console
.
error
(
`Storing token for
${
challenge
.
token
}
:
${
keyAuthorization
}
`
,
);
contentMap
.
set
(
challenge
.
token
,
keyAuthorization
);
},
challengeRemoveFn
:
async
(
authz
,
challenge
,
keyAuthorization
)
=>
{
// does nothing
},
});
console
.
error
(
'
Certificate signed
'
);
// save certificate as fullchain.pem and key as privkey.pem
await
fs
.
promises
.
mkdir
(
`/etc/nginx/certs/
${
domainsToBeSigned
[
0
]}
`
,
{
recursive
:
true
,
});
await
fs
.
promises
.
writeFile
(
`/etc/nginx/certs/
${
domainsToBeSigned
[
0
]}
/fullchain.pem`
,
certificate
,
);
await
fs
.
promises
.
writeFile
(
`/etc/nginx/certs/
${
domainsToBeSigned
[
0
]}
/privkey.pem`
,
certificateKey
,
);
}
catch
(
e
)
{
console
.
error
(
`Failed to sign certificate for
${
domainsToBeSigned
.
join
(
'
,
'
)}
:
${
e
.
stack
}
`
,
);
}
server
.
close
();
}
src/check-cert.ts
View file @
8b60f55e
...
@@ -3,6 +3,7 @@ import * as fs from 'fs';
...
@@ -3,6 +3,7 @@ import * as fs from 'fs';
import
path
from
'
path
'
;
import
path
from
'
path
'
;
import
_
from
'
lodash
'
;
import
_
from
'
lodash
'
;
fs
.
mkdirSync
(
'
/etc/nginx/certs
'
,
{
recursive
:
true
});
class
Cert
{
class
Cert
{
public
cert
=
new
X509Certificate
(
public
cert
=
new
X509Certificate
(
fs
.
readFileSync
(
path
.
join
(
'
/etc/nginx/certs
'
,
this
.
dir
,
'
fullchain.pem
'
)),
fs
.
readFileSync
(
path
.
join
(
'
/etc/nginx/certs
'
,
this
.
dir
,
'
fullchain.pem
'
)),
...
@@ -33,7 +34,7 @@ const certs = fs
...
@@ -33,7 +34,7 @@ const certs = fs
.
map
((
dir
)
=>
new
Cert
(
dir
))
.
map
((
dir
)
=>
new
Cert
(
dir
))
.
filter
((
cert
)
=>
cert
.
isNotExpired
());
.
filter
((
cert
)
=>
cert
.
isNotExpired
());
export
function
pickCert
(
domains
:
string
[])
{
export
async
function
pickCert
(
domains
:
string
[])
{
const
okCerts
=
certs
.
filter
((
cert
)
=>
cert
.
isOkWithDomains
(
domains
));
const
okCerts
=
certs
.
filter
((
cert
)
=>
cert
.
isOkWithDomains
(
domains
));
if
(
!
okCerts
.
length
)
{
if
(
!
okCerts
.
length
)
{
return
;
return
;
...
...
src/site.ts
View file @
8b60f55e
...
@@ -3,6 +3,7 @@ import { Parser } from './parser';
...
@@ -3,6 +3,7 @@ import { Parser } from './parser';
import
{
getSiteNames
}
from
'
./utility
'
;
import
{
getSiteNames
}
from
'
./utility
'
;
import
md5
from
'
nano-md5
'
;
import
md5
from
'
nano-md5
'
;
import
fs
from
'
fs
'
;
import
fs
from
'
fs
'
;
import
{
addSignCert
,
runSignCert
}
from
'
./acme
'
;
export
interface
SiteHttps
{
export
interface
SiteHttps
{
ports
:
string
[];
ports
:
string
[];
...
@@ -100,8 +101,16 @@ function createUpstream(domain: string, urlInputs: string[], extra: string[]) {
...
@@ -100,8 +101,16 @@ function createUpstream(domain: string, urlInputs: string[], extra: string[]) {
return
urlInputs
[
0
];
return
urlInputs
[
0
];
}
}
const
name
=
`upstream_
${
domain
.
replace
(
/
[^
a-zA-Z0-9
]
/g
,
'
_
'
)}
`
;
const
name
=
`upstream_
${
domain
.
replace
(
/
[^
a-zA-Z0-9
]
/g
,
'
_
'
)}
`
;
upstreams
.
push
({
name
,
servers
:
urls
.
map
((
url
)
=>
`
${
url
.
host
+
(
url
.
hash
?
url
.
hash
.
replace
(
/
[
#&
]
/g
,
'
'
)
:
''
)}
`
),
extra
});
upstreams
.
push
({
return
`
${
urls
[
0
].
protocol
}
//
${
name
}${
urlInputs
[
0
].
slice
(
urls
[
0
].
origin
.
length
).
replace
(
urls
[
0
].
hash
,
''
)}
`
;
name
,
servers
:
urls
.
map
(
(
url
)
=>
`
${
url
.
host
+
(
url
.
hash
?
url
.
hash
.
replace
(
/
[
#&
]
/g
,
'
'
)
:
''
)}
`
,
),
extra
,
});
return
`
${
urls
[
0
].
protocol
}
//
${
name
}${
urlInputs
[
0
]
.
slice
(
urls
[
0
].
origin
.
length
)
.
replace
(
urls
[
0
].
hash
,
''
)}
`
;
}
}
async
function
getSiteData
(
async
function
getSiteData
(
...
@@ -115,13 +124,14 @@ async function getSiteData(
...
@@ -115,13 +124,14 @@ async function getSiteData(
const
httpsCert
=
parser
.
getString
(
'
HTTPS
'
);
const
httpsCert
=
parser
.
getString
(
'
HTTPS
'
);
const
domains
=
hostname
.
split
(
'
+
'
);
const
domains
=
hostname
.
split
(
'
+
'
);
if
(
httpsCert
!==
'
0
'
&&
httpsCert
!==
'
false
'
)
{
if
(
httpsCert
!==
'
0
'
&&
httpsCert
!==
'
false
'
)
{
const
cert
=
const
cert
=
httpsCert
?.
startsWith
(
'
acme://
'
)
!
httpsCert
||
?
addSignCert
(
domains
,
httpsCert
)
httpsCert
===
'
1
'
||
:
!
httpsCert
||
httpsCert
===
'
true
'
||
httpsCert
===
'
1
'
||
httpsCert
===
'
auto
'
httpsCert
===
'
true
'
||
?
pickCert
(
domains
)
httpsCert
===
'
auto
'
:
httpsCert
;
?
await
pickCert
(
domains
)
:
httpsCert
;
if
(
cert
)
{
if
(
cert
)
{
if
(
port
)
{
if
(
port
)
{
ports
.
pop
();
ports
.
pop
();
...
@@ -167,7 +177,11 @@ async function getSiteData(
...
@@ -167,7 +177,11 @@ async function getSiteData(
const
sni
=
parser
.
getString
(
'
SNI
'
);
const
sni
=
parser
.
getString
(
'
SNI
'
);
specificRenderData
=
{
specificRenderData
=
{
proxy
:
true
,
proxy
:
true
,
upstream
:
createUpstream
(
domain
,
targetUrlInputs
,
parser
.
getArray
(
'
UPSTREAM_EXTRA
'
)),
upstream
:
createUpstream
(
domain
,
targetUrlInputs
,
parser
.
getArray
(
'
UPSTREAM_EXTRA
'
),
),
noVerifyCerts
:
parser
.
getBoolean
(
'
NO_VERIFY_CERTS
'
),
noVerifyCerts
:
parser
.
getBoolean
(
'
NO_VERIFY_CERTS
'
),
noBuffer
:
parser
.
getBoolean
(
'
NO_BUFFER
'
),
noBuffer
:
parser
.
getBoolean
(
'
NO_BUFFER
'
),
sni
:
sni
===
'
1
'
,
sni
:
sni
===
'
1
'
,
...
@@ -214,6 +228,10 @@ export async function getData(
...
@@ -214,6 +228,10 @@ export async function getData(
input
:
Record
<
string
,
string
>
=
process
.
env
,
input
:
Record
<
string
,
string
>
=
process
.
env
,
):
Promise
<
RenderData
>
{
):
Promise
<
RenderData
>
{
const
parser
=
new
Parser
(
''
,
input
);
const
parser
=
new
Parser
(
''
,
input
);
const
sites
=
await
Promise
.
all
(
getSiteNames
().
map
((
domain
)
=>
getSiteData
(
domain
,
input
)),
);
await
runSignCert
();
return
{
return
{
purgeAllowed
:
parser
.
getArray
(
'
PURGE_ALLOWED
'
),
purgeAllowed
:
parser
.
getArray
(
'
PURGE_ALLOWED
'
),
externalRealIp
:
parser
.
getBoolean
(
'
EXTERNAL_REAL_IP
'
),
externalRealIp
:
parser
.
getBoolean
(
'
EXTERNAL_REAL_IP
'
),
...
@@ -226,9 +244,7 @@ export async function getData(
...
@@ -226,9 +244,7 @@ export async function getData(
ticketKeyPath
:
ticketKeyPath
:
parser
.
getString
(
'
TICKET_KEY_PATH
'
)
||
'
/etc/nginx/generated/ticket.key
'
,
parser
.
getString
(
'
TICKET_KEY_PATH
'
)
||
'
/etc/nginx/generated/ticket.key
'
,
certsPath
:
parser
.
getString
(
'
CERTS_PATH
'
)
||
'
/etc/nginx/certs
'
,
certsPath
:
parser
.
getString
(
'
CERTS_PATH
'
)
||
'
/etc/nginx/certs
'
,
sites
:
await
Promise
.
all
(
sites
,
getSiteNames
().
map
((
domain
)
=>
getSiteData
(
domain
,
input
)),
),
upstreams
,
upstreams
,
httpExtra
:
parser
.
getArray
(
'
HTTP_EXTRA
'
),
httpExtra
:
parser
.
getArray
(
'
HTTP_EXTRA
'
),
nginxExtra
:
parser
.
getArray
(
'
NGINX_EXTRA
'
),
nginxExtra
:
parser
.
getArray
(
'
NGINX_EXTRA
'
),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment