git.iko.soy/rowtype-yoga/purescript-graphql-fundeps
on main help sign in
14 files changed+1601−706
since splitsnapshots
unifiedsplit
.envrc+1 .github/workflows/unit-tests.yml+19 .gitignore+7−3 .psc-ide-port+1 README.md+41−4 flake.lock+61 flake.nix+51 package-lock.json+1368−570 package.json+3−3 packages.dhall+3−102 spago.dhall+3−1 src/GraphQL.purs+32−16 test.dhall+6−4 test/Main.purs+5−3
.envrcnew file+1
@@ -0,0 +1 @@
1+use flake
.github/workflows/unit-tests.ymlnew file+19
@@ -0,0 +1,19 @@
1+name: Unit tests
2+on: push
3+jobs:
4+ container-job:
5+ runs-on: ubuntu-latest
6+ strategy:
7+ matrix:
8+ node-version: [14.x]
9+ steps:
10+ - name: Check out repository code
11+ uses: actions/checkout@v2
12+ - name: Install dependencies
13+ run: npm ci
14+ - name: Spago install
15+ run: npx spago -x test.dhall install
16+ - name: Spago build
17+ run: npx spago -x test.dhall build
18+ - name: Spago test
19+ run: npm t
.gitignore+7−3
@@ -1,3 +1,7 @@
1−.spago
2−node_modules
3−output
1+.spago/
2+output/
3+node_modules/
4+.psci_modules
5+
6+# Nix
7+.direnv/
.psc-ide-portnew file+1
@@ -0,0 +1 @@
1+15162
README.md+41−4
@@ -3,7 +3,7 @@
33Type-safe graphql queries using functional dependencies.
44
55Use the `GraphQLReqRes` class to define expected input and output.
6−Then, create a `client` and use it to interact with your API.
6+Then, create a `client` and use it to interact with your API.
77
88```purescript
99endpoint = "https://api.react-finland.fi/graphql" :: String
@@ -43,8 +43,8 @@ instance graphqlReactFinlandConference ::
4343 }
4444 )
4545
46−client :: GraphQLClient
47−client = graphQL "https://api.react-finland.fi/graphql" []
46+client :: GraphQLClientAff
47+client = graphQL "https://api.react-finland.fi/graphql" [] driver
4848
4949main ∷ Effect Unit
5050main =
@@ -56,4 +56,41 @@ main =
5656 Log.info $ show speakers
5757```
5858
59−You can check out the [test](./test/Main.purs) for a full example.
59+You can check out the [test](./test/Main.purs) for a full example.
60+
61+## Development
62+
63+You can either use the nix shell, or the npm package.
64+
65+### Nix shell
66+
67+Having set up [flakes](https://nixos.wiki/wiki/Flakes), either using [direnv](https://direnv.net/) (`direnv allow`) or `nix develop`
68+
69+Buliding:
70+
71+```
72+spago build
73+```
74+
75+Testing:
76+
77+```
78+spago -x test.dhall test
79+```
80+
81+
82+### Npm
83+
84+Just run `npm i` and then:
85+
86+Building:
87+
88+```
89+spago build
90+```
91+
92+Testing:
93+
94+```
95+npm run test
96+```
flake.locknew file+61
@@ -0,0 +1,61 @@
1+{
2+ "nodes": {
3+ "easy-purescript-nix": {
4+ "flake": false,
5+ "locked": {
6+ "lastModified": 1686900973,
7+ "narHash": "sha256-9whTjp8BYy8ZzyghhgbawS06/dVESduME3wsdNH/mpk=",
8+ "owner": "justinwoo",
9+ "repo": "easy-purescript-nix",
10+ "rev": "8cf400656945b2f2bacfd6a8775792aa701f60e9",
11+ "type": "github"
12+ },
13+ "original": {
14+ "owner": "justinwoo",
15+ "repo": "easy-purescript-nix",
16+ "type": "github"
17+ }
18+ },
19+ "flake-compat": {
20+ "flake": false,
21+ "locked": {
22+ "lastModified": 1673956053,
23+ "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
24+ "owner": "edolstra",
25+ "repo": "flake-compat",
26+ "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
27+ "type": "github"
28+ },
29+ "original": {
30+ "owner": "edolstra",
31+ "repo": "flake-compat",
32+ "type": "github"
33+ }
34+ },
35+ "nixpkgs": {
36+ "locked": {
37+ "lastModified": 1687829761,
38+ "narHash": "sha256-QRe1Y8SS3M4GeC58F/6ajz6V0ZLUVWX3ZAMgov2N3/g=",
39+ "owner": "nixos",
40+ "repo": "nixpkgs",
41+ "rev": "9790f3242da2152d5aa1976e3e4b8b414f4dd206",
42+ "type": "github"
43+ },
44+ "original": {
45+ "owner": "nixos",
46+ "ref": "nixos-23.05",
47+ "repo": "nixpkgs",
48+ "type": "github"
49+ }
50+ },
51+ "root": {
52+ "inputs": {
53+ "easy-purescript-nix": "easy-purescript-nix",
54+ "flake-compat": "flake-compat",
55+ "nixpkgs": "nixpkgs"
56+ }
57+ }
58+ },
59+ "root": "root",
60+ "version": 7
61+}
flake.nixnew file+51
@@ -0,0 +1,51 @@
1+{
2+ inputs = {
3+ nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05";
4+ easy-purescript-nix = {
5+ url = "github:justinwoo/easy-purescript-nix";
6+ flake = false;
7+ };
8+ flake-compat = {
9+ url = "github:edolstra/flake-compat";
10+ flake = false;
11+ };
12+ };
13+
14+ outputs = { self, nixpkgs, easy-purescript-nix, ... }@inputs:
15+ let
16+ name = "purescript-graphql-fundeps";
17+
18+ supportedSystems = [
19+ "aarch64-darwin"
20+ "x86_64-darwin"
21+ "x86_64-linux"
22+ ];
23+
24+ forAllSystems = f: nixpkgs.lib.genAttrs supportedSystems (system: f system);
25+ in
26+ {
27+ devShell = forAllSystems (system:
28+ let
29+ pkgs = import nixpkgs { inherit system; };
30+
31+ easy-ps = import easy-purescript-nix { inherit pkgs; };
32+ in
33+ pkgs.mkShell {
34+ inherit name;
35+ buildInputs = (with pkgs; [
36+ nodejs_20
37+ nixpkgs-fmt
38+ ]) ++ (with easy-ps; [
39+ purs
40+ purs-tidy
41+ psa
42+ spago
43+ purescript-language-server
44+ ]) ++ (pkgs.lib.optionals (system == "aarch64-darwin")
45+ (with pkgs.darwin.apple_sdk.frameworks; [
46+ Cocoa
47+ CoreServices
48+ ]));
49+ });
50+ };
51+}
package-lock.json+1368−570
@@ -1,53 +1,257 @@
11{
22 "name": "purescript-graphql-fundeps",
3− "version": "0.0.0",
3+ "version": "0.1.0",
44 "lockfileVersion": 3,
55 "requires": true,
66 "packages": {
77 "": {
88 "name": "purescript-graphql-fundeps",
9− "version": "0.0.0",
9+ "version": "0.1.0",
1010 "hasInstallScript": true,
1111 "license": "ISC",
1212 "devDependencies": {
13− "purescript": "^0.14.1",
13+ "purescript": "^0.15.9",
1414 "purs-tidy": "^0.10.0",
15− "spago": "^0.20.3",
15+ "spago": "^0.21.0",
1616 "xhr2": "^0.2.1"
1717 }
1818 },
19− "node_modules/ajv": {
20− "version": "6.12.6",
21− "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
22− "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
19+ "node_modules/@gar/promisify": {
20+ "version": "1.1.3",
21+ "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz",
22+ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==",
23+ "dev": true
24+ },
25+ "node_modules/@isaacs/cliui": {
26+ "version": "8.0.2",
27+ "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
28+ "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
29+ "dev": true,
30+ "dependencies": {
31+ "string-width": "^5.1.2",
32+ "string-width-cjs": "npm:string-width@^4.2.0",
33+ "strip-ansi": "^7.0.1",
34+ "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
35+ "wrap-ansi": "^8.1.0",
36+ "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
37+ },
38+ "engines": {
39+ "node": ">=12"
40+ }
41+ },
42+ "node_modules/@isaacs/cliui/node_modules/ansi-regex": {
43+ "version": "6.0.1",
44+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
45+ "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
46+ "dev": true,
47+ "engines": {
48+ "node": ">=12"
49+ },
50+ "funding": {
51+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
52+ }
53+ },
54+ "node_modules/@isaacs/cliui/node_modules/ansi-styles": {
55+ "version": "6.2.1",
56+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
57+ "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
58+ "dev": true,
59+ "engines": {
60+ "node": ">=12"
61+ },
62+ "funding": {
63+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
64+ }
65+ },
66+ "node_modules/@isaacs/cliui/node_modules/emoji-regex": {
67+ "version": "9.2.2",
68+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
69+ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
70+ "dev": true
71+ },
72+ "node_modules/@isaacs/cliui/node_modules/string-width": {
73+ "version": "5.1.2",
74+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
75+ "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
76+ "dev": true,
77+ "dependencies": {
78+ "eastasianwidth": "^0.2.0",
79+ "emoji-regex": "^9.2.2",
80+ "strip-ansi": "^7.0.1"
81+ },
82+ "engines": {
83+ "node": ">=12"
84+ },
85+ "funding": {
86+ "url": "https://github.com/sponsors/sindresorhus"
87+ }
88+ },
89+ "node_modules/@isaacs/cliui/node_modules/strip-ansi": {
90+ "version": "7.1.0",
91+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
92+ "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
93+ "dev": true,
94+ "dependencies": {
95+ "ansi-regex": "^6.0.1"
96+ },
97+ "engines": {
98+ "node": ">=12"
99+ },
100+ "funding": {
101+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
102+ }
103+ },
104+ "node_modules/@isaacs/cliui/node_modules/wrap-ansi": {
105+ "version": "8.1.0",
106+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
107+ "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
108+ "dev": true,
109+ "dependencies": {
110+ "ansi-styles": "^6.1.0",
111+ "string-width": "^5.0.1",
112+ "strip-ansi": "^7.0.1"
113+ },
114+ "engines": {
115+ "node": ">=12"
116+ },
117+ "funding": {
118+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
119+ }
120+ },
121+ "node_modules/@npmcli/fs": {
122+ "version": "2.1.2",
123+ "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz",
124+ "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==",
125+ "dev": true,
126+ "dependencies": {
127+ "@gar/promisify": "^1.1.3",
128+ "semver": "^7.3.5"
129+ },
130+ "engines": {
131+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
132+ }
133+ },
134+ "node_modules/@npmcli/move-file": {
135+ "version": "2.0.1",
136+ "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz",
137+ "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==",
138+ "deprecated": "This functionality has been moved to @npmcli/fs",
139+ "dev": true,
140+ "dependencies": {
141+ "mkdirp": "^1.0.4",
142+ "rimraf": "^3.0.2"
143+ },
144+ "engines": {
145+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
146+ }
147+ },
148+ "node_modules/@npmcli/move-file/node_modules/mkdirp": {
149+ "version": "1.0.4",
150+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
151+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
152+ "dev": true,
153+ "bin": {
154+ "mkdirp": "bin/cmd.js"
155+ },
156+ "engines": {
157+ "node": ">=10"
158+ }
159+ },
160+ "node_modules/@npmcli/move-file/node_modules/rimraf": {
161+ "version": "3.0.2",
162+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
163+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
23164 "dev": true,
24165 "dependencies": {
25− "fast-deep-equal": "^3.1.1",
26− "fast-json-stable-stringify": "^2.0.0",
27− "json-schema-traverse": "^0.4.1",
28− "uri-js": "^4.2.2"
166+ "glob": "^7.1.3"
167+ },
168+ "bin": {
169+ "rimraf": "bin.js"
29170 },
30171 "funding": {
31− "type": "github",
32− "url": "https://github.com/sponsors/epoberezkin"
172+ "url": "https://github.com/sponsors/isaacs"
173+ }
174+ },
175+ "node_modules/@pkgjs/parseargs": {
176+ "version": "0.11.0",
177+ "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
178+ "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
179+ "dev": true,
180+ "optional": true,
181+ "engines": {
182+ "node": ">=14"
183+ }
184+ },
185+ "node_modules/@tootallnate/once": {
186+ "version": "2.0.0",
187+ "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
188+ "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
189+ "dev": true,
190+ "engines": {
191+ "node": ">= 10"
192+ }
193+ },
194+ "node_modules/agent-base": {
195+ "version": "6.0.2",
196+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
197+ "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
198+ "dev": true,
199+ "dependencies": {
200+ "debug": "4"
201+ },
202+ "engines": {
203+ "node": ">= 6.0.0"
204+ }
205+ },
206+ "node_modules/agentkeepalive": {
207+ "version": "4.3.0",
208+ "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz",
209+ "integrity": "sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==",
210+ "dev": true,
211+ "dependencies": {
212+ "debug": "^4.1.0",
213+ "depd": "^2.0.0",
214+ "humanize-ms": "^1.2.1"
215+ },
216+ "engines": {
217+ "node": ">= 8.0.0"
218+ }
219+ },
220+ "node_modules/aggregate-error": {
221+ "version": "3.1.0",
222+ "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
223+ "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
224+ "dev": true,
225+ "dependencies": {
226+ "clean-stack": "^2.0.0",
227+ "indent-string": "^4.0.0"
228+ },
229+ "engines": {
230+ "node": ">=8"
33231 }
34232 },
35233 "node_modules/ansi-escapes": {
36− "version": "3.2.0",
37− "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz",
38− "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==",
234+ "version": "4.3.2",
235+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
236+ "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
39237 "dev": true,
238+ "dependencies": {
239+ "type-fest": "^0.21.3"
240+ },
40241 "engines": {
41− "node": ">=4"
242+ "node": ">=8"
243+ },
244+ "funding": {
245+ "url": "https://github.com/sponsors/sindresorhus"
42246 }
43247 },
44248 "node_modules/ansi-regex": {
45− "version": "4.1.0",
46− "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
47− "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
249+ "version": "5.0.1",
250+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
251+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
48252 "dev": true,
49253 "engines": {
50− "node": ">=6"
254+ "node": ">=8"
51255 }
52256 },
53257 "node_modules/ansi-styles": {
@@ -68,80 +272,21 @@
68272 "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
69273 "dev": true
70274 },
71− "node_modules/arch": {
72− "version": "2.2.0",
73− "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz",
74− "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==",
75− "dev": true,
76− "funding": [
77− {
78− "type": "github",
79− "url": "https://github.com/sponsors/feross"
80− },
81− {
82− "type": "patreon",
83− "url": "https://www.patreon.com/feross"
84− },
85− {
86− "type": "consulting",
87− "url": "https://feross.org/support"
88− }
89− ]
90− },
91− "node_modules/asn1": {
92− "version": "0.2.4",
93− "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
94− "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
95− "dev": true,
96− "dependencies": {
97− "safer-buffer": "~2.1.0"
98− }
99− },
100− "node_modules/assert-plus": {
101− "version": "1.0.0",
102− "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
103− "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
104− "dev": true,
105− "engines": {
106− "node": ">=0.8"
107− }
108− },
109− "node_modules/asynckit": {
110− "version": "0.4.0",
111− "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
112− "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
113− "dev": true
114− },
115− "node_modules/aws-sign2": {
116− "version": "0.7.0",
117− "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
118− "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
275+ "node_modules/astral-regex": {
276+ "version": "2.0.0",
277+ "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
278+ "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
119279 "dev": true,
120280 "engines": {
121− "node": "*"
281+ "node": ">=8"
122282 }
123283 },
124− "node_modules/aws4": {
125− "version": "1.11.0",
126− "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz",
127− "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==",
128− "dev": true
129− },
130284 "node_modules/balanced-match": {
131285 "version": "1.0.2",
132286 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
133287 "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
134288 "dev": true
135289 },
136− "node_modules/bcrypt-pbkdf": {
137− "version": "1.0.2",
138− "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
139− "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
140− "dev": true,
141− "dependencies": {
142− "tweetnacl": "^0.14.3"
143− }
144− },
145290 "node_modules/bluebird": {
146291 "version": "3.7.2",
147292 "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
@@ -159,15 +304,15 @@
159304 }
160305 },
161306 "node_modules/buffer-from": {
162− "version": "1.1.1",
163− "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
164− "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
307+ "version": "1.1.2",
308+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
309+ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
165310 "dev": true
166311 },
167312 "node_modules/byline": {
168313 "version": "5.0.0",
169314 "resolved": "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz",
170− "integrity": "sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE=",
315+ "integrity": "sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q==",
171316 "dev": true,
172317 "engines": {
173318 "node": ">=0.10.0"
@@ -195,12 +340,6 @@
195340 "y18n": "^4.0.0"
196341 }
197342 },
198− "node_modules/caseless": {
199− "version": "0.12.0",
200− "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
201− "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
202− "dev": true
203− },
204343 "node_modules/chalk": {
205344 "version": "2.4.2",
206345 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
@@ -221,16 +360,25 @@
221360 "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
222361 "dev": true
223362 },
363+ "node_modules/clean-stack": {
364+ "version": "2.2.0",
365+ "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
366+ "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
367+ "dev": true,
368+ "engines": {
369+ "node": ">=6"
370+ }
371+ },
224372 "node_modules/cli-cursor": {
225− "version": "2.1.0",
226− "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
227− "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
373+ "version": "3.1.0",
374+ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
375+ "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
228376 "dev": true,
229377 "dependencies": {
230− "restore-cursor": "^2.0.0"
378+ "restore-cursor": "^3.1.0"
231379 },
232380 "engines": {
233− "node": ">=4"
381+ "node": ">=8"
234382 }
235383 },
236384 "node_modules/color-convert": {
@@ -245,25 +393,13 @@
245393 "node_modules/color-name": {
246394 "version": "1.1.3",
247395 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
248− "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
396+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
249397 "dev": true
250398 },
251− "node_modules/combined-stream": {
252− "version": "1.0.8",
253− "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
254− "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
255− "dev": true,
256− "dependencies": {
257− "delayed-stream": "~1.0.0"
258− },
259− "engines": {
260− "node": ">= 0.8"
261− }
262− },
263399 "node_modules/concat-map": {
264400 "version": "0.0.1",
265401 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
266− "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
402+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
267403 "dev": true
268404 },
269405 "node_modules/concat-stream": {
@@ -296,9 +432,9 @@
296432 }
297433 },
298434 "node_modules/core-util-is": {
299− "version": "1.0.2",
300− "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
301− "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
435+ "version": "1.0.3",
436+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
437+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
302438 "dev": true
303439 },
304440 "node_modules/cross-spawn": {
@@ -331,30 +467,41 @@
331467 }
332468 },
333469 "node_modules/cyclist": {
334− "version": "1.0.1",
335− "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz",
336− "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=",
470+ "version": "1.0.2",
471+ "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.2.tgz",
472+ "integrity": "sha512-0sVXIohTfLqVIW3kb/0n6IiWF3Ifj5nm2XaSrLq2DI6fKIGa2fYAZdk917rUneaeLVpYfFcyXE2ft0fe3remsA==",
337473 "dev": true
338474 },
339− "node_modules/dashdash": {
340− "version": "1.14.1",
341− "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
342− "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
475+ "node_modules/debug": {
476+ "version": "4.3.4",
477+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
478+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
343479 "dev": true,
344480 "dependencies": {
345− "assert-plus": "^1.0.0"
481+ "ms": "2.1.2"
346482 },
347483 "engines": {
348− "node": ">=0.10"
484+ "node": ">=6.0"
485+ },
486+ "peerDependenciesMeta": {
487+ "supports-color": {
488+ "optional": true
489+ }
349490 }
350491 },
351− "node_modules/delayed-stream": {
352− "version": "1.0.0",
353− "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
354− "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
492+ "node_modules/debug/node_modules/ms": {
493+ "version": "2.1.2",
494+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
495+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
496+ "dev": true
497+ },
498+ "node_modules/depd": {
499+ "version": "2.0.0",
500+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
501+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
355502 "dev": true,
356503 "engines": {
357− "node": ">=0.4.0"
504+ "node": ">= 0.8"
358505 }
359506 },
360507 "node_modules/duplexify": {
@@ -369,22 +516,28 @@
369516 "stream-shift": "^1.0.0"
370517 }
371518 },
372− "node_modules/ecc-jsbn": {
373− "version": "0.1.2",
374− "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
375− "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
376− "dev": true,
377− "dependencies": {
378− "jsbn": "~0.1.0",
379− "safer-buffer": "^2.1.0"
380− }
519+ "node_modules/eastasianwidth": {
520+ "version": "0.2.0",
521+ "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
522+ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
523+ "dev": true
381524 },
382525 "node_modules/emoji-regex": {
383− "version": "7.0.3",
384− "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
385− "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
526+ "version": "8.0.0",
527+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
528+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
386529 "dev": true
387530 },
531+ "node_modules/encoding": {
532+ "version": "0.1.13",
533+ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
534+ "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
535+ "dev": true,
536+ "optional": true,
537+ "dependencies": {
538+ "iconv-lite": "^0.6.2"
539+ }
540+ },
388541 "node_modules/end-of-stream": {
389542 "version": "1.4.4",
390543 "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
@@ -403,10 +556,16 @@
403556 "node": ">=6"
404557 }
405558 },
559+ "node_modules/err-code": {
560+ "version": "2.0.3",
561+ "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz",
562+ "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==",
563+ "dev": true
564+ },
406565 "node_modules/escape-string-regexp": {
407566 "version": "1.0.5",
408567 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
409− "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
568+ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
410569 "dev": true,
411570 "engines": {
412571 "node": ">=0.8.0"
@@ -432,33 +591,6 @@
432591 "node": "^8.12.0 || >=9.7.0"
433592 }
434593 },
435− "node_modules/extend": {
436− "version": "3.0.2",
437− "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
438− "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
439− "dev": true
440− },
441− "node_modules/extsprintf": {
442− "version": "1.3.0",
443− "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
444− "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
445− "dev": true,
446− "engines": [
447− "node >=0.6.0"
448− ]
449− },
450− "node_modules/fast-deep-equal": {
451− "version": "3.1.3",
452− "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
453− "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
454− "dev": true
455− },
456− "node_modules/fast-json-stable-stringify": {
457− "version": "2.1.0",
458− "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
459− "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
460− "dev": true
461− },
462594 "node_modules/figgy-pudding": {
463595 "version": "3.5.2",
464596 "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz",
@@ -484,33 +616,38 @@
484616 "readable-stream": "^2.3.6"
485617 }
486618 },
487− "node_modules/forever-agent": {
488− "version": "0.6.1",
489− "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
490− "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
619+ "node_modules/foreground-child": {
620+ "version": "3.1.1",
621+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
622+ "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
491623 "dev": true,
624+ "dependencies": {
625+ "cross-spawn": "^7.0.0",
626+ "signal-exit": "^4.0.1"
627+ },
492628 "engines": {
493− "node": "*"
629+ "node": ">=14"
630+ },
631+ "funding": {
632+ "url": "https://github.com/sponsors/isaacs"
494633 }
495634 },
496− "node_modules/form-data": {
497− "version": "2.3.3",
498− "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
499− "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
635+ "node_modules/foreground-child/node_modules/signal-exit": {
636+ "version": "4.0.2",
637+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz",
638+ "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
500639 "dev": true,
501− "dependencies": {
502− "asynckit": "^0.4.0",
503− "combined-stream": "^1.0.6",
504− "mime-types": "^2.1.12"
505− },
506640 "engines": {
507− "node": ">= 0.12"
641+ "node": ">=14"
642+ },
643+ "funding": {
644+ "url": "https://github.com/sponsors/isaacs"
508645 }
509646 },
510647 "node_modules/from2": {
511648 "version": "2.3.0",
512649 "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz",
513− "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=",
650+ "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==",
514651 "dev": true,
515652 "dependencies": {
516653 "inherits": "^2.0.1",
@@ -518,18 +655,21 @@
518655 }
519656 },
520657 "node_modules/fs-minipass": {
521− "version": "1.2.7",
522− "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz",
523− "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==",
658+ "version": "2.1.0",
659+ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
660+ "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
524661 "dev": true,
525662 "dependencies": {
526− "minipass": "^2.6.0"
663+ "minipass": "^3.0.0"
664+ },
665+ "engines": {
666+ "node": ">= 8"
527667 }
528668 },
529669 "node_modules/fs-write-stream-atomic": {
530670 "version": "1.0.10",
531671 "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
532− "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=",
672+ "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==",
533673 "dev": true,
534674 "dependencies": {
535675 "graceful-fs": "^4.1.2",
@@ -541,7 +681,7 @@
541681 "node_modules/fs.realpath": {
542682 "version": "1.0.0",
543683 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
544− "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
684+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
545685 "dev": true
546686 },
547687 "node_modules/get-stream": {
@@ -559,25 +699,16 @@
559699 "url": "https://github.com/sponsors/sindresorhus"
560700 }
561701 },
562− "node_modules/getpass": {
563− "version": "0.1.7",
564− "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
565− "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
566− "dev": true,
567− "dependencies": {
568− "assert-plus": "^1.0.0"
569− }
570− },
571702 "node_modules/glob": {
572− "version": "7.1.7",
573− "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
574− "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
703+ "version": "7.2.3",
704+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
705+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
575706 "dev": true,
576707 "dependencies": {
577708 "fs.realpath": "^1.0.0",
578709 "inflight": "^1.0.4",
579710 "inherits": "2",
580− "minimatch": "^3.0.4",
711+ "minimatch": "^3.1.1",
581712 "once": "^1.3.0",
582713 "path-is-absolute": "^1.0.0"
583714 },
@@ -589,77 +720,109 @@
589720 }
590721 },
591722 "node_modules/graceful-fs": {
592− "version": "4.2.6",
593− "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz",
594− "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==",
723+ "version": "4.2.11",
724+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
725+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
595726 "dev": true
596727 },
597− "node_modules/har-schema": {
598− "version": "2.0.0",
599− "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
600− "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
728+ "node_modules/has-flag": {
729+ "version": "3.0.0",
730+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
731+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
601732 "dev": true,
602733 "engines": {
603734 "node": ">=4"
604735 }
605736 },
606− "node_modules/har-validator": {
607− "version": "5.1.5",
608− "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
609− "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
610− "deprecated": "this library is no longer supported",
737+ "node_modules/http-cache-semantics": {
738+ "version": "4.1.1",
739+ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
740+ "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==",
741+ "dev": true
742+ },
743+ "node_modules/http-proxy-agent": {
744+ "version": "5.0.0",
745+ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
746+ "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
611747 "dev": true,
612748 "dependencies": {
613− "ajv": "^6.12.3",
614− "har-schema": "^2.0.0"
749+ "@tootallnate/once": "2",
750+ "agent-base": "6",
751+ "debug": "4"
615752 },
616753 "engines": {
617− "node": ">=6"
754+ "node": ">= 6"
618755 }
619756 },
620− "node_modules/has-flag": {
621− "version": "3.0.0",
622− "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
623− "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
757+ "node_modules/https-proxy-agent": {
758+ "version": "5.0.1",
759+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
760+ "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
624761 "dev": true,
762+ "dependencies": {
763+ "agent-base": "6",
764+ "debug": "4"
765+ },
625766 "engines": {
626− "node": ">=4"
767+ "node": ">= 6"
627768 }
628769 },
629− "node_modules/http-signature": {
630− "version": "1.2.0",
631− "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
632− "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
770+ "node_modules/humanize-ms": {
771+ "version": "1.2.1",
772+ "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz",
773+ "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==",
774+ "dev": true,
775+ "dependencies": {
776+ "ms": "^2.0.0"
777+ }
778+ },
779+ "node_modules/iconv-lite": {
780+ "version": "0.6.3",
781+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
782+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
633783 "dev": true,
784+ "optional": true,
634785 "dependencies": {
635− "assert-plus": "^1.0.0",
636− "jsprim": "^1.2.2",
637− "sshpk": "^1.7.0"
786+ "safer-buffer": ">= 2.1.2 < 3.0.0"
638787 },
639788 "engines": {
640− "node": ">=0.8",
641− "npm": ">=1.3.7"
789+ "node": ">=0.10.0"
642790 }
643791 },
644792 "node_modules/iferr": {
645793 "version": "0.1.5",
646794 "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz",
647− "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=",
795+ "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==",
648796 "dev": true
649797 },
650798 "node_modules/imurmurhash": {
651799 "version": "0.1.4",
652800 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
653− "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
801+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
654802 "dev": true,
655803 "engines": {
656804 "node": ">=0.8.19"
657805 }
658806 },
807+ "node_modules/indent-string": {
808+ "version": "4.0.0",
809+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
810+ "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
811+ "dev": true,
812+ "engines": {
813+ "node": ">=8"
814+ }
815+ },
816+ "node_modules/infer-owner": {
817+ "version": "1.0.4",
818+ "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz",
819+ "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==",
820+ "dev": true
821+ },
659822 "node_modules/inflight": {
660823 "version": "1.0.6",
661824 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
662− "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
825+ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
663826 "dev": true,
664827 "dependencies": {
665828 "once": "^1.3.0",
@@ -672,17 +835,29 @@
672835 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
673836 "dev": true
674837 },
675− "node_modules/is-fullwidth-code-point": {
838+ "node_modules/ip": {
676839 "version": "2.0.0",
677− "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
678− "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
840+ "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz",
841+ "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==",
842+ "dev": true
843+ },
844+ "node_modules/is-fullwidth-code-point": {
845+ "version": "3.0.0",
846+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
847+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
679848 "dev": true,
680849 "engines": {
681− "node": ">=4"
850+ "node": ">=8"
682851 }
683852 },
684− "node_modules/is-plain-obj": {
685− "version": "2.1.0",
853+ "node_modules/is-lambda": {
854+ "version": "1.0.1",
855+ "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz",
856+ "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==",
857+ "dev": true
858+ },
859+ "node_modules/is-plain-obj": {
860+ "version": "2.1.0",
686861 "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
687862 "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
688863 "dev": true,
@@ -691,75 +866,45 @@
691866 }
692867 },
693868 "node_modules/is-stream": {
694− "version": "2.0.0",
695− "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
696− "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
869+ "version": "2.0.1",
870+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
871+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
697872 "dev": true,
698873 "engines": {
699874 "node": ">=8"
875+ },
876+ "funding": {
877+ "url": "https://github.com/sponsors/sindresorhus"
700878 }
701879 },
702− "node_modules/is-typedarray": {
703− "version": "1.0.0",
704− "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
705− "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
706− "dev": true
707− },
708880 "node_modules/isarray": {
709881 "version": "1.0.0",
710882 "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
711− "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
883+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
712884 "dev": true
713885 },
714886 "node_modules/isexe": {
715887 "version": "2.0.0",
716888 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
717− "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
718− "dev": true
719− },
720− "node_modules/isstream": {
721− "version": "0.1.2",
722− "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
723− "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
724− "dev": true
725− },
726− "node_modules/jsbn": {
727− "version": "0.1.1",
728− "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
729− "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
730− "dev": true
731− },
732− "node_modules/json-schema": {
733− "version": "0.2.3",
734− "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
735− "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
736− "dev": true
737− },
738− "node_modules/json-schema-traverse": {
739− "version": "0.4.1",
740− "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
741− "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
742− "dev": true
743− },
744− "node_modules/json-stringify-safe": {
745− "version": "5.0.1",
746− "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
747− "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
889+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
748890 "dev": true
749891 },
750− "node_modules/jsprim": {
751− "version": "1.4.1",
752− "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
753− "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
892+ "node_modules/jackspeak": {
893+ "version": "2.2.1",
894+ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.1.tgz",
895+ "integrity": "sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==",
754896 "dev": true,
755− "engines": [
756− "node >=0.6.0"
757− ],
758897 "dependencies": {
759− "assert-plus": "1.0.0",
760− "extsprintf": "1.3.0",
761− "json-schema": "0.2.3",
762− "verror": "1.10.0"
898+ "@isaacs/cliui": "^8.0.2"
899+ },
900+ "engines": {
901+ "node": ">=14"
902+ },
903+ "funding": {
904+ "url": "https://github.com/sponsors/isaacs"
905+ },
906+ "optionalDependencies": {
907+ "@pkgjs/parseargs": "^0.11.0"
763908 }
764909 },
765910 "node_modules/log-symbols": {
@@ -775,17 +920,18 @@
775920 }
776921 },
777922 "node_modules/log-update": {
778− "version": "3.4.0",
779− "resolved": "https://registry.npmjs.org/log-update/-/log-update-3.4.0.tgz",
780− "integrity": "sha512-ILKe88NeMt4gmDvk/eb615U/IVn7K9KWGkoYbdatQ69Z65nj1ZzjM6fHXfcs0Uge+e+EGnMW7DY4T9yko8vWFg==",
923+ "version": "4.0.0",
924+ "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz",
925+ "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==",
781926 "dev": true,
782927 "dependencies": {
783− "ansi-escapes": "^3.2.0",
784− "cli-cursor": "^2.1.0",
785− "wrap-ansi": "^5.0.0"
928+ "ansi-escapes": "^4.3.0",
929+ "cli-cursor": "^3.1.0",
930+ "slice-ansi": "^4.0.0",
931+ "wrap-ansi": "^6.2.0"
786932 },
787933 "engines": {
788− "node": ">=6"
934+ "node": ">=10"
789935 },
790936 "funding": {
791937 "url": "https://github.com/sponsors/sindresorhus"
@@ -800,33 +946,231 @@
800946 "yallist": "^3.0.2"
801947 }
802948 },
803− "node_modules/merge-stream": {
949+ "node_modules/make-fetch-happen": {
950+ "version": "10.2.1",
951+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz",
952+ "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==",
953+ "dev": true,
954+ "dependencies": {
955+ "agentkeepalive": "^4.2.1",
956+ "cacache": "^16.1.0",
957+ "http-cache-semantics": "^4.1.0",
958+ "http-proxy-agent": "^5.0.0",
959+ "https-proxy-agent": "^5.0.0",
960+ "is-lambda": "^1.0.1",
961+ "lru-cache": "^7.7.1",
962+ "minipass": "^3.1.6",
963+ "minipass-collect": "^1.0.2",
964+ "minipass-fetch": "^2.0.3",
965+ "minipass-flush": "^1.0.5",
966+ "minipass-pipeline": "^1.2.4",
967+ "negotiator": "^0.6.3",
968+ "promise-retry": "^2.0.1",
969+ "socks-proxy-agent": "^7.0.0",
970+ "ssri": "^9.0.0"
971+ },
972+ "engines": {
973+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
974+ }
975+ },
976+ "node_modules/make-fetch-happen/node_modules/brace-expansion": {
977+ "version": "2.0.1",
978+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
979+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
980+ "dev": true,
981+ "dependencies": {
982+ "balanced-match": "^1.0.0"
983+ }
984+ },
985+ "node_modules/make-fetch-happen/node_modules/cacache": {
986+ "version": "16.1.3",
987+ "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz",
988+ "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==",
989+ "dev": true,
990+ "dependencies": {
991+ "@npmcli/fs": "^2.1.0",
992+ "@npmcli/move-file": "^2.0.0",
993+ "chownr": "^2.0.0",
994+ "fs-minipass": "^2.1.0",
995+ "glob": "^8.0.1",
996+ "infer-owner": "^1.0.4",
997+ "lru-cache": "^7.7.1",
998+ "minipass": "^3.1.6",
999+ "minipass-collect": "^1.0.2",
1000+ "minipass-flush": "^1.0.5",
1001+ "minipass-pipeline": "^1.2.4",
1002+ "mkdirp": "^1.0.4",
1003+ "p-map": "^4.0.0",
1004+ "promise-inflight": "^1.0.1",
1005+ "rimraf": "^3.0.2",
1006+ "ssri": "^9.0.0",
1007+ "tar": "^6.1.11",
1008+ "unique-filename": "^2.0.0"
1009+ },
1010+ "engines": {
1011+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
1012+ }
1013+ },
1014+ "node_modules/make-fetch-happen/node_modules/chownr": {
8041015 "version": "2.0.0",
805− "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
806− "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
807− "dev": true
1016+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
1017+ "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
1018+ "dev": true,
1019+ "engines": {
1020+ "node": ">=10"
1021+ }
8081022 },
809− "node_modules/mime-db": {
810− "version": "1.47.0",
811− "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz",
812− "integrity": "sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==",
1023+ "node_modules/make-fetch-happen/node_modules/glob": {
1024+ "version": "8.1.0",
1025+ "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
1026+ "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
8131027 "dev": true,
1028+ "dependencies": {
1029+ "fs.realpath": "^1.0.0",
1030+ "inflight": "^1.0.4",
1031+ "inherits": "2",
1032+ "minimatch": "^5.0.1",
1033+ "once": "^1.3.0"
1034+ },
8141035 "engines": {
815− "node": ">= 0.6"
1036+ "node": ">=12"
1037+ },
1038+ "funding": {
1039+ "url": "https://github.com/sponsors/isaacs"
1040+ }
1041+ },
1042+ "node_modules/make-fetch-happen/node_modules/lru-cache": {
1043+ "version": "7.18.3",
1044+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
1045+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
1046+ "dev": true,
1047+ "engines": {
1048+ "node": ">=12"
8161049 }
8171050 },
818− "node_modules/mime-types": {
819− "version": "2.1.30",
820− "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.30.tgz",
821− "integrity": "sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg==",
1051+ "node_modules/make-fetch-happen/node_modules/minimatch": {
1052+ "version": "5.1.6",
1053+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
1054+ "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
8221055 "dev": true,
8231056 "dependencies": {
824− "mime-db": "1.47.0"
1057+ "brace-expansion": "^2.0.1"
8251058 },
8261059 "engines": {
827− "node": ">= 0.6"
1060+ "node": ">=10"
1061+ }
1062+ },
1063+ "node_modules/make-fetch-happen/node_modules/mkdirp": {
1064+ "version": "1.0.4",
1065+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
1066+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
1067+ "dev": true,
1068+ "bin": {
1069+ "mkdirp": "bin/cmd.js"
1070+ },
1071+ "engines": {
1072+ "node": ">=10"
1073+ }
1074+ },
1075+ "node_modules/make-fetch-happen/node_modules/rimraf": {
1076+ "version": "3.0.2",
1077+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
1078+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
1079+ "dev": true,
1080+ "dependencies": {
1081+ "glob": "^7.1.3"
1082+ },
1083+ "bin": {
1084+ "rimraf": "bin.js"
1085+ },
1086+ "funding": {
1087+ "url": "https://github.com/sponsors/isaacs"
1088+ }
1089+ },
1090+ "node_modules/make-fetch-happen/node_modules/rimraf/node_modules/brace-expansion": {
1091+ "version": "1.1.11",
1092+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
1093+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
1094+ "dev": true,
1095+ "dependencies": {
1096+ "balanced-match": "^1.0.0",
1097+ "concat-map": "0.0.1"
1098+ }
1099+ },
1100+ "node_modules/make-fetch-happen/node_modules/rimraf/node_modules/glob": {
1101+ "version": "7.2.3",
1102+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
1103+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
1104+ "dev": true,
1105+ "dependencies": {
1106+ "fs.realpath": "^1.0.0",
1107+ "inflight": "^1.0.4",
1108+ "inherits": "2",
1109+ "minimatch": "^3.1.1",
1110+ "once": "^1.3.0",
1111+ "path-is-absolute": "^1.0.0"
1112+ },
1113+ "engines": {
1114+ "node": "*"
1115+ },
1116+ "funding": {
1117+ "url": "https://github.com/sponsors/isaacs"
1118+ }
1119+ },
1120+ "node_modules/make-fetch-happen/node_modules/rimraf/node_modules/minimatch": {
1121+ "version": "3.1.2",
1122+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
1123+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
1124+ "dev": true,
1125+ "dependencies": {
1126+ "brace-expansion": "^1.1.7"
1127+ },
1128+ "engines": {
1129+ "node": "*"
1130+ }
1131+ },
1132+ "node_modules/make-fetch-happen/node_modules/ssri": {
1133+ "version": "9.0.1",
1134+ "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz",
1135+ "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==",
1136+ "dev": true,
1137+ "dependencies": {
1138+ "minipass": "^3.1.1"
1139+ },
1140+ "engines": {
1141+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
8281142 }
8291143 },
1144+ "node_modules/make-fetch-happen/node_modules/unique-filename": {
1145+ "version": "2.0.1",
1146+ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz",
1147+ "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==",
1148+ "dev": true,
1149+ "dependencies": {
1150+ "unique-slug": "^3.0.0"
1151+ },
1152+ "engines": {
1153+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
1154+ }
1155+ },
1156+ "node_modules/make-fetch-happen/node_modules/unique-slug": {
1157+ "version": "3.0.0",
1158+ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz",
1159+ "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==",
1160+ "dev": true,
1161+ "dependencies": {
1162+ "imurmurhash": "^0.1.4"
1163+ },
1164+ "engines": {
1165+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
1166+ }
1167+ },
1168+ "node_modules/merge-stream": {
1169+ "version": "2.0.0",
1170+ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
1171+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
1172+ "dev": true
1173+ },
8301174 "node_modules/mimic-fn": {
8311175 "version": "2.1.0",
8321176 "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
@@ -837,9 +1181,9 @@
8371181 }
8381182 },
8391183 "node_modules/minimatch": {
840− "version": "3.0.4",
841− "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
842− "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
1184+ "version": "3.1.2",
1185+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
1186+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
8431187 "dev": true,
8441188 "dependencies": {
8451189 "brace-expansion": "^1.1.7"
@@ -849,30 +1193,116 @@
8491193 }
8501194 },
8511195 "node_modules/minimist": {
852− "version": "1.2.5",
853− "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
854− "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
855− "dev": true
1196+ "version": "1.2.8",
1197+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
1198+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
1199+ "dev": true,
1200+ "funding": {
1201+ "url": "https://github.com/sponsors/ljharb"
1202+ }
8561203 },
8571204 "node_modules/minipass": {
858− "version": "2.9.0",
859− "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz",
860− "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==",
1205+ "version": "3.3.6",
1206+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
1207+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
1208+ "dev": true,
1209+ "dependencies": {
1210+ "yallist": "^4.0.0"
1211+ },
1212+ "engines": {
1213+ "node": ">=8"
1214+ }
1215+ },
1216+ "node_modules/minipass-collect": {
1217+ "version": "1.0.2",
1218+ "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz",
1219+ "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==",
1220+ "dev": true,
1221+ "dependencies": {
1222+ "minipass": "^3.0.0"
1223+ },
1224+ "engines": {
1225+ "node": ">= 8"
1226+ }
1227+ },
1228+ "node_modules/minipass-fetch": {
1229+ "version": "2.1.2",
1230+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz",
1231+ "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==",
1232+ "dev": true,
1233+ "dependencies": {
1234+ "minipass": "^3.1.6",
1235+ "minipass-sized": "^1.0.3",
1236+ "minizlib": "^2.1.2"
1237+ },
1238+ "engines": {
1239+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
1240+ },
1241+ "optionalDependencies": {
1242+ "encoding": "^0.1.13"
1243+ }
1244+ },
1245+ "node_modules/minipass-flush": {
1246+ "version": "1.0.5",
1247+ "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz",
1248+ "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==",
1249+ "dev": true,
1250+ "dependencies": {
1251+ "minipass": "^3.0.0"
1252+ },
1253+ "engines": {
1254+ "node": ">= 8"
1255+ }
1256+ },
1257+ "node_modules/minipass-pipeline": {
1258+ "version": "1.2.4",
1259+ "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz",
1260+ "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==",
1261+ "dev": true,
1262+ "dependencies": {
1263+ "minipass": "^3.0.0"
1264+ },
1265+ "engines": {
1266+ "node": ">=8"
1267+ }
1268+ },
1269+ "node_modules/minipass-sized": {
1270+ "version": "1.0.3",
1271+ "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz",
1272+ "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==",
8611273 "dev": true,
8621274 "dependencies": {
863− "safe-buffer": "^5.1.2",
864− "yallist": "^3.0.0"
1275+ "minipass": "^3.0.0"
1276+ },
1277+ "engines": {
1278+ "node": ">=8"
8651279 }
8661280 },
1281+ "node_modules/minipass/node_modules/yallist": {
1282+ "version": "4.0.0",
1283+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
1284+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
1285+ "dev": true
1286+ },
8671287 "node_modules/minizlib": {
868− "version": "1.3.3",
869− "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz",
870− "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==",
1288+ "version": "2.1.2",
1289+ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
1290+ "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
8711291 "dev": true,
8721292 "dependencies": {
873− "minipass": "^2.9.0"
1293+ "minipass": "^3.0.0",
1294+ "yallist": "^4.0.0"
1295+ },
1296+ "engines": {
1297+ "node": ">= 8"
8741298 }
8751299 },
1300+ "node_modules/minizlib/node_modules/yallist": {
1301+ "version": "4.0.0",
1302+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
1303+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
1304+ "dev": true
1305+ },
8761306 "node_modules/mississippi": {
8771307 "version": "3.0.0",
8781308 "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz",
@@ -895,12 +1325,12 @@
8951325 }
8961326 },
8971327 "node_modules/mkdirp": {
898− "version": "0.5.5",
899− "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
900− "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
1328+ "version": "0.5.6",
1329+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
1330+ "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
9011331 "dev": true,
9021332 "dependencies": {
903− "minimist": "^1.2.5"
1333+ "minimist": "^1.2.6"
9041334 },
9051335 "bin": {
9061336 "mkdirp": "bin/cmd.js"
@@ -909,7 +1339,7 @@
9091339 "node_modules/move-concurrently": {
9101340 "version": "1.0.1",
9111341 "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",
912− "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=",
1342+ "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==",
9131343 "dev": true,
9141344 "dependencies": {
9151345 "aproba": "^1.1.1",
@@ -926,6 +1356,15 @@
9261356 "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
9271357 "dev": true
9281358 },
1359+ "node_modules/negotiator": {
1360+ "version": "0.6.3",
1361+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
1362+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
1363+ "dev": true,
1364+ "engines": {
1365+ "node": ">= 0.6"
1366+ }
1367+ },
9291368 "node_modules/npm-run-path": {
9301369 "version": "3.1.0",
9311370 "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz",
@@ -938,19 +1377,10 @@
9381377 "node": ">=8"
9391378 }
9401379 },
941− "node_modules/oauth-sign": {
942− "version": "0.9.0",
943− "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
944− "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
945− "dev": true,
946− "engines": {
947− "node": "*"
948− }
949− },
9501380 "node_modules/once": {
9511381 "version": "1.4.0",
9521382 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
953− "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
1383+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
9541384 "dev": true,
9551385 "dependencies": {
9561386 "wrappy": "1"
@@ -980,6 +1410,21 @@
9801410 "node": ">=8"
9811411 }
9821412 },
1413+ "node_modules/p-map": {
1414+ "version": "4.0.0",
1415+ "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz",
1416+ "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
1417+ "dev": true,
1418+ "dependencies": {
1419+ "aggregate-error": "^3.0.0"
1420+ },
1421+ "engines": {
1422+ "node": ">=10"
1423+ },
1424+ "funding": {
1425+ "url": "https://github.com/sponsors/sindresorhus"
1426+ }
1427+ },
9831428 "node_modules/parallel-transform": {
9841429 "version": "1.2.0",
9851430 "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz",
@@ -994,7 +1439,7 @@
9941439 "node_modules/path-is-absolute": {
9951440 "version": "1.0.1",
9961441 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
997− "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
1442+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
9981443 "dev": true,
9991444 "engines": {
10001445 "node": ">=0.10.0"
@@ -1009,11 +1454,39 @@
10091454 "node": ">=8"
10101455 }
10111456 },
1012− "node_modules/performance-now": {
1013− "version": "2.1.0",
1014− "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
1015− "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
1016− "dev": true
1457+ "node_modules/path-scurry": {
1458+ "version": "1.9.2",
1459+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.9.2.tgz",
1460+ "integrity": "sha512-qSDLy2aGFPm8i4rsbHd4MNyTcrzHFsLQykrtbuGRknZZCBBVXSv2tSCDN2Cg6Rt/GFRw8GoW9y9Ecw5rIPG1sg==",
1461+ "dev": true,
1462+ "dependencies": {
1463+ "lru-cache": "^9.1.1",
1464+ "minipass": "^5.0.0 || ^6.0.2"
1465+ },
1466+ "engines": {
1467+ "node": ">=16 || 14 >=14.17"
1468+ },
1469+ "funding": {
1470+ "url": "https://github.com/sponsors/isaacs"
1471+ }
1472+ },
1473+ "node_modules/path-scurry/node_modules/lru-cache": {
1474+ "version": "9.1.2",
1475+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.2.tgz",
1476+ "integrity": "sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ==",
1477+ "dev": true,
1478+ "engines": {
1479+ "node": "14 || >=16.14"
1480+ }
1481+ },
1482+ "node_modules/path-scurry/node_modules/minipass": {
1483+ "version": "6.0.2",
1484+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-6.0.2.tgz",
1485+ "integrity": "sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==",
1486+ "dev": true,
1487+ "engines": {
1488+ "node": ">=16 || 14 >=14.17"
1489+ }
10171490 },
10181491 "node_modules/process-nextick-args": {
10191492 "version": "2.0.1",
@@ -1024,14 +1497,21 @@
10241497 "node_modules/promise-inflight": {
10251498 "version": "1.0.1",
10261499 "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
1027− "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=",
1500+ "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==",
10281501 "dev": true
10291502 },
1030− "node_modules/psl": {
1031− "version": "1.8.0",
1032− "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
1033− "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==",
1034− "dev": true
1503+ "node_modules/promise-retry": {
1504+ "version": "2.0.1",
1505+ "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz",
1506+ "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==",
1507+ "dev": true,
1508+ "dependencies": {
1509+ "err-code": "^2.0.2",
1510+ "retry": "^0.12.0"
1511+ },
1512+ "engines": {
1513+ "node": ">=10"
1514+ }
10351515 },
10361516 "node_modules/pump": {
10371517 "version": "3.0.0",
@@ -1064,35 +1544,25 @@
10641544 "once": "^1.3.1"
10651545 }
10661546 },
1067− "node_modules/punycode": {
1068− "version": "2.1.1",
1069− "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
1070− "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
1071− "dev": true,
1072− "engines": {
1073− "node": ">=6"
1074− }
1075− },
10761547 "node_modules/purescript": {
1077− "version": "0.14.1",
1078− "resolved": "https://registry.npmjs.org/purescript/-/purescript-0.14.1.tgz",
1079− "integrity": "sha512-dh87XeDP/JGe/3DKBMglkRuIRfGLGkL8beuLIl9KemzckgyuD+j7VK15eVb9n5Exp3DIr6SNEuGG4FjuQQ7Rpg==",
1548+ "version": "0.15.9",
1549+ "resolved": "https://registry.npmjs.org/purescript/-/purescript-0.15.9.tgz",
1550+ "integrity": "sha512-J2bI4iOn1Sg3/BN0Td1yykIYEK56+tpf3hQRQ+EraPSVgT1MDD+tBH6lvz6UBHndtsKqpNIQCX/HNK7u72HOtw==",
10801551 "dev": true,
10811552 "hasInstallScript": true,
10821553 "dependencies": {
1083− "purescript-installer": "^0.2.0"
1554+ "purescript-installer": "^0.3.5"
10841555 },
10851556 "bin": {
10861557 "purs": "purs.bin"
10871558 }
10881559 },
10891560 "node_modules/purescript-installer": {
1090− "version": "0.2.5",
1091− "resolved": "https://registry.npmjs.org/purescript-installer/-/purescript-installer-0.2.5.tgz",
1092− "integrity": "sha512-fQAWWP5a7scuchXecjpU4r4KEgSPuS6bBnaP01k9f71qqD28HaJ2m4PXHFkhkR4oATAxTPIGCtmTwtVoiBOHog==",
1561+ "version": "0.3.5",
1562+ "resolved": "https://registry.npmjs.org/purescript-installer/-/purescript-installer-0.3.5.tgz",
1563+ "integrity": "sha512-w04BBvW4BSQlspLsZ9Bs5vtUBZqvC4bC+FizC5GUp2/rpmYvXJ0CTf79Q3MKo2A8p1ZjqbhCI+SqdTQ30UZUIQ==",
10931564 "dev": true,
10941565 "dependencies": {
1095− "arch": "^2.1.1",
10961566 "byline": "^5.0.0",
10971567 "cacache": "^11.3.2",
10981568 "chalk": "^2.4.2",
@@ -1101,15 +1571,14 @@
11011571 "filesize": "^4.1.2",
11021572 "is-plain-obj": "^2.0.0",
11031573 "log-symbols": "^3.0.0",
1104− "log-update": "^3.2.0",
1574+ "log-update": "^4.0.0",
1575+ "make-fetch-happen": "^10.0.0",
11051576 "minimist": "^1.2.0",
1106− "mkdirp": "^0.5.1",
11071577 "ms": "^2.1.2",
11081578 "once": "^1.4.0",
1109− "pump": "^3.0.0",
1110− "request": "^2.88.0",
11111579 "rimraf": "^2.6.3",
1112− "tar": "^4.4.6",
1580+ "semver": "^7.3.7",
1581+ "tar": "^6.1.11",
11131582 "which": "^1.3.1",
11141583 "zen-observable": "^0.8.14"
11151584 },
@@ -1117,7 +1586,7 @@
11171586 "install-purescript": "index.js"
11181587 },
11191588 "engines": {
1120− "node": ">=8.3.0"
1589+ "node": ">=12"
11211590 }
11221591 },
11231592 "node_modules/purs-tidy": {
@@ -1129,19 +1598,10 @@
11291598 "purs-tidy": "bin/index.js"
11301599 }
11311600 },
1132− "node_modules/qs": {
1133− "version": "6.5.2",
1134− "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
1135− "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
1136− "dev": true,
1137− "engines": {
1138− "node": ">=0.6"
1139− }
1140− },
1141− "node_modules/readable-stream": {
1142− "version": "2.3.7",
1143− "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
1144− "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
1601+ "node_modules/readable-stream": {
1602+ "version": "2.3.8",
1603+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
1604+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
11451605 "dev": true,
11461606 "dependencies": {
11471607 "core-util-is": "~1.0.0",
@@ -1153,70 +1613,26 @@
11531613 "util-deprecate": "~1.0.1"
11541614 }
11551615 },
1156− "node_modules/request": {
1157− "version": "2.88.2",
1158− "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
1159− "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
1160− "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142",
1161− "dev": true,
1162− "dependencies": {
1163− "aws-sign2": "~0.7.0",
1164− "aws4": "^1.8.0",
1165− "caseless": "~0.12.0",
1166− "combined-stream": "~1.0.6",
1167− "extend": "~3.0.2",
1168− "forever-agent": "~0.6.1",
1169− "form-data": "~2.3.2",
1170− "har-validator": "~5.1.3",
1171− "http-signature": "~1.2.0",
1172− "is-typedarray": "~1.0.0",
1173− "isstream": "~0.1.2",
1174− "json-stringify-safe": "~5.0.1",
1175− "mime-types": "~2.1.19",
1176− "oauth-sign": "~0.9.0",
1177− "performance-now": "^2.1.0",
1178− "qs": "~6.5.2",
1179− "safe-buffer": "^5.1.2",
1180− "tough-cookie": "~2.5.0",
1181− "tunnel-agent": "^0.6.0",
1182− "uuid": "^3.3.2"
1183− },
1184− "engines": {
1185− "node": ">= 6"
1186− }
1187− },
11881616 "node_modules/restore-cursor": {
1189− "version": "2.0.0",
1190− "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
1191− "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
1617+ "version": "3.1.0",
1618+ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
1619+ "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
11921620 "dev": true,
11931621 "dependencies": {
1194− "onetime": "^2.0.0",
1622+ "onetime": "^5.1.0",
11951623 "signal-exit": "^3.0.2"
11961624 },
11971625 "engines": {
1198− "node": ">=4"
1199− }
1200− },
1201− "node_modules/restore-cursor/node_modules/mimic-fn": {
1202− "version": "1.2.0",
1203− "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz",
1204− "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==",
1205− "dev": true,
1206− "engines": {
1207− "node": ">=4"
1626+ "node": ">=8"
12081627 }
12091628 },
1210− "node_modules/restore-cursor/node_modules/onetime": {
1211− "version": "2.0.1",
1212− "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
1213− "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
1629+ "node_modules/retry": {
1630+ "version": "0.12.0",
1631+ "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
1632+ "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==",
12141633 "dev": true,
1215− "dependencies": {
1216− "mimic-fn": "^1.0.0"
1217− },
12181634 "engines": {
1219− "node": ">=4"
1635+ "node": ">= 4"
12201636 }
12211637 },
12221638 "node_modules/rimraf": {
@@ -1234,7 +1650,7 @@
12341650 "node_modules/run-queue": {
12351651 "version": "1.0.3",
12361652 "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
1237− "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=",
1653+ "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==",
12381654 "dev": true,
12391655 "dependencies": {
12401656 "aproba": "^1.1.1"
@@ -1250,6 +1666,40 @@
12501666 "version": "2.1.2",
12511667 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
12521668 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
1669+ "dev": true,
1670+ "optional": true
1671+ },
1672+ "node_modules/semver": {
1673+ "version": "7.5.2",
1674+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.2.tgz",
1675+ "integrity": "sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ==",
1676+ "dev": true,
1677+ "dependencies": {
1678+ "lru-cache": "^6.0.0"
1679+ },
1680+ "bin": {
1681+ "semver": "bin/semver.js"
1682+ },
1683+ "engines": {
1684+ "node": ">=10"
1685+ }
1686+ },
1687+ "node_modules/semver/node_modules/lru-cache": {
1688+ "version": "6.0.0",
1689+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
1690+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
1691+ "dev": true,
1692+ "dependencies": {
1693+ "yallist": "^4.0.0"
1694+ },
1695+ "engines": {
1696+ "node": ">=10"
1697+ }
1698+ },
1699+ "node_modules/semver/node_modules/yallist": {
1700+ "version": "4.0.0",
1701+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
1702+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
12531703 "dev": true
12541704 },
12551705 "node_modules/shebang-command": {
@@ -1274,48 +1724,301 @@
12741724 }
12751725 },
12761726 "node_modules/signal-exit": {
1277− "version": "3.0.3",
1278− "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
1279− "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
1727+ "version": "3.0.7",
1728+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
1729+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
1730+ "dev": true
1731+ },
1732+ "node_modules/slice-ansi": {
1733+ "version": "4.0.0",
1734+ "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
1735+ "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
1736+ "dev": true,
1737+ "dependencies": {
1738+ "ansi-styles": "^4.0.0",
1739+ "astral-regex": "^2.0.0",
1740+ "is-fullwidth-code-point": "^3.0.0"
1741+ },
1742+ "engines": {
1743+ "node": ">=10"
1744+ },
1745+ "funding": {
1746+ "url": "https://github.com/chalk/slice-ansi?sponsor=1"
1747+ }
1748+ },
1749+ "node_modules/slice-ansi/node_modules/ansi-styles": {
1750+ "version": "4.3.0",
1751+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
1752+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
1753+ "dev": true,
1754+ "dependencies": {
1755+ "color-convert": "^2.0.1"
1756+ },
1757+ "engines": {
1758+ "node": ">=8"
1759+ },
1760+ "funding": {
1761+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
1762+ }
1763+ },
1764+ "node_modules/slice-ansi/node_modules/color-convert": {
1765+ "version": "2.0.1",
1766+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1767+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1768+ "dev": true,
1769+ "dependencies": {
1770+ "color-name": "~1.1.4"
1771+ },
1772+ "engines": {
1773+ "node": ">=7.0.0"
1774+ }
1775+ },
1776+ "node_modules/slice-ansi/node_modules/color-name": {
1777+ "version": "1.1.4",
1778+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1779+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
12801780 "dev": true
12811781 },
1782+ "node_modules/smart-buffer": {
1783+ "version": "4.2.0",
1784+ "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
1785+ "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==",
1786+ "dev": true,
1787+ "engines": {
1788+ "node": ">= 6.0.0",
1789+ "npm": ">= 3.0.0"
1790+ }
1791+ },
1792+ "node_modules/socks": {
1793+ "version": "2.7.1",
1794+ "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz",
1795+ "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==",
1796+ "dev": true,
1797+ "dependencies": {
1798+ "ip": "^2.0.0",
1799+ "smart-buffer": "^4.2.0"
1800+ },
1801+ "engines": {
1802+ "node": ">= 10.13.0",
1803+ "npm": ">= 3.0.0"
1804+ }
1805+ },
1806+ "node_modules/socks-proxy-agent": {
1807+ "version": "7.0.0",
1808+ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz",
1809+ "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==",
1810+ "dev": true,
1811+ "dependencies": {
1812+ "agent-base": "^6.0.2",
1813+ "debug": "^4.3.3",
1814+ "socks": "^2.6.2"
1815+ },
1816+ "engines": {
1817+ "node": ">= 10"
1818+ }
1819+ },
12821820 "node_modules/spago": {
1283− "version": "0.20.3",
1284− "resolved": "https://registry.npmjs.org/spago/-/spago-0.20.3.tgz",
1285− "integrity": "sha512-R4CWLP5IbaWoNIpS1QAUuDK2LKlKYqT5gBKVZL7ILilvCwdwS72u3NbGZbvx7VCRRZz4lG7zXUkqKNow7zh6wQ==",
1821+ "version": "0.21.0",
1822+ "resolved": "https://registry.npmjs.org/spago/-/spago-0.21.0.tgz",
1823+ "integrity": "sha512-1qTPaIhrsLCvneSJt1fyq3CpNMu01Xhcn+b09IMbyrpLcptMoGH5uOtyNL9eohTRMzPWBKUs6ksFLGdjJp7yxQ==",
12861824 "dev": true,
12871825 "hasInstallScript": true,
12881826 "dependencies": {
1289− "request": "^2.88.0",
1290− "tar": "^4.4.8"
1827+ "make-fetch-happen": "^11.0.1",
1828+ "tar": "^6.1.11"
12911829 },
12921830 "bin": {
12931831 "spago": "spago"
12941832 }
12951833 },
1296− "node_modules/sshpk": {
1297− "version": "1.16.1",
1298− "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz",
1299− "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==",
1834+ "node_modules/spago/node_modules/@npmcli/fs": {
1835+ "version": "3.1.0",
1836+ "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz",
1837+ "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==",
1838+ "dev": true,
1839+ "dependencies": {
1840+ "semver": "^7.3.5"
1841+ },
1842+ "engines": {
1843+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
1844+ }
1845+ },
1846+ "node_modules/spago/node_modules/brace-expansion": {
1847+ "version": "2.0.1",
1848+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
1849+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
1850+ "dev": true,
1851+ "dependencies": {
1852+ "balanced-match": "^1.0.0"
1853+ }
1854+ },
1855+ "node_modules/spago/node_modules/cacache": {
1856+ "version": "17.1.3",
1857+ "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.3.tgz",
1858+ "integrity": "sha512-jAdjGxmPxZh0IipMdR7fK/4sDSrHMLUV0+GvVUsjwyGNKHsh79kW/otg+GkbXwl6Uzvy9wsvHOX4nUoWldeZMg==",
1859+ "dev": true,
1860+ "dependencies": {
1861+ "@npmcli/fs": "^3.1.0",
1862+ "fs-minipass": "^3.0.0",
1863+ "glob": "^10.2.2",
1864+ "lru-cache": "^7.7.1",
1865+ "minipass": "^5.0.0",
1866+ "minipass-collect": "^1.0.2",
1867+ "minipass-flush": "^1.0.5",
1868+ "minipass-pipeline": "^1.2.4",
1869+ "p-map": "^4.0.0",
1870+ "ssri": "^10.0.0",
1871+ "tar": "^6.1.11",
1872+ "unique-filename": "^3.0.0"
1873+ },
1874+ "engines": {
1875+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
1876+ }
1877+ },
1878+ "node_modules/spago/node_modules/fs-minipass": {
1879+ "version": "3.0.2",
1880+ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.2.tgz",
1881+ "integrity": "sha512-2GAfyfoaCDRrM6jaOS3UsBts8yJ55VioXdWcOL7dK9zdAuKT71+WBA4ifnNYqVjYv+4SsPxjK0JT4yIIn4cA/g==",
13001882 "dev": true,
13011883 "dependencies": {
1302− "asn1": "~0.2.3",
1303− "assert-plus": "^1.0.0",
1304− "bcrypt-pbkdf": "^1.0.0",
1305− "dashdash": "^1.12.0",
1306− "ecc-jsbn": "~0.1.1",
1307− "getpass": "^0.1.1",
1308− "jsbn": "~0.1.0",
1309− "safer-buffer": "^2.0.2",
1310− "tweetnacl": "~0.14.0"
1884+ "minipass": "^5.0.0"
1885+ },
1886+ "engines": {
1887+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
1888+ }
1889+ },
1890+ "node_modules/spago/node_modules/glob": {
1891+ "version": "10.2.7",
1892+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.7.tgz",
1893+ "integrity": "sha512-jTKehsravOJo8IJxUGfZILnkvVJM/MOfHRs8QcXolVef2zNI9Tqyy5+SeuOAZd3upViEZQLyFpQhYiHLrMUNmA==",
1894+ "dev": true,
1895+ "dependencies": {
1896+ "foreground-child": "^3.1.0",
1897+ "jackspeak": "^2.0.3",
1898+ "minimatch": "^9.0.1",
1899+ "minipass": "^5.0.0 || ^6.0.2",
1900+ "path-scurry": "^1.7.0"
13111901 },
13121902 "bin": {
1313− "sshpk-conv": "bin/sshpk-conv",
1314− "sshpk-sign": "bin/sshpk-sign",
1315− "sshpk-verify": "bin/sshpk-verify"
1903+ "glob": "dist/cjs/src/bin.js"
13161904 },
13171905 "engines": {
1318− "node": ">=0.10.0"
1906+ "node": ">=16 || 14 >=14.17"
1907+ },
1908+ "funding": {
1909+ "url": "https://github.com/sponsors/isaacs"
1910+ }
1911+ },
1912+ "node_modules/spago/node_modules/lru-cache": {
1913+ "version": "7.18.3",
1914+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
1915+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
1916+ "dev": true,
1917+ "engines": {
1918+ "node": ">=12"
1919+ }
1920+ },
1921+ "node_modules/spago/node_modules/make-fetch-happen": {
1922+ "version": "11.1.1",
1923+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
1924+ "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
1925+ "dev": true,
1926+ "dependencies": {
1927+ "agentkeepalive": "^4.2.1",
1928+ "cacache": "^17.0.0",
1929+ "http-cache-semantics": "^4.1.1",
1930+ "http-proxy-agent": "^5.0.0",
1931+ "https-proxy-agent": "^5.0.0",
1932+ "is-lambda": "^1.0.1",
1933+ "lru-cache": "^7.7.1",
1934+ "minipass": "^5.0.0",
1935+ "minipass-fetch": "^3.0.0",
1936+ "minipass-flush": "^1.0.5",
1937+ "minipass-pipeline": "^1.2.4",
1938+ "negotiator": "^0.6.3",
1939+ "promise-retry": "^2.0.1",
1940+ "socks-proxy-agent": "^7.0.0",
1941+ "ssri": "^10.0.0"
1942+ },
1943+ "engines": {
1944+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
1945+ }
1946+ },
1947+ "node_modules/spago/node_modules/minimatch": {
1948+ "version": "9.0.1",
1949+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
1950+ "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
1951+ "dev": true,
1952+ "dependencies": {
1953+ "brace-expansion": "^2.0.1"
1954+ },
1955+ "engines": {
1956+ "node": ">=16 || 14 >=14.17"
1957+ },
1958+ "funding": {
1959+ "url": "https://github.com/sponsors/isaacs"
1960+ }
1961+ },
1962+ "node_modules/spago/node_modules/minipass": {
1963+ "version": "5.0.0",
1964+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
1965+ "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
1966+ "dev": true,
1967+ "engines": {
1968+ "node": ">=8"
1969+ }
1970+ },
1971+ "node_modules/spago/node_modules/minipass-fetch": {
1972+ "version": "3.0.3",
1973+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz",
1974+ "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==",
1975+ "dev": true,
1976+ "dependencies": {
1977+ "minipass": "^5.0.0",
1978+ "minipass-sized": "^1.0.3",
1979+ "minizlib": "^2.1.2"
1980+ },
1981+ "engines": {
1982+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
1983+ },
1984+ "optionalDependencies": {
1985+ "encoding": "^0.1.13"
1986+ }
1987+ },
1988+ "node_modules/spago/node_modules/ssri": {
1989+ "version": "10.0.4",
1990+ "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.4.tgz",
1991+ "integrity": "sha512-12+IR2CB2C28MMAw0Ncqwj5QbTcs0nGIhgJzYWzDkb21vWmfNI83KS4f3Ci6GI98WreIfG7o9UXp3C0qbpA8nQ==",
1992+ "dev": true,
1993+ "dependencies": {
1994+ "minipass": "^5.0.0"
1995+ },
1996+ "engines": {
1997+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
1998+ }
1999+ },
2000+ "node_modules/spago/node_modules/unique-filename": {
2001+ "version": "3.0.0",
2002+ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz",
2003+ "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==",
2004+ "dev": true,
2005+ "dependencies": {
2006+ "unique-slug": "^4.0.0"
2007+ },
2008+ "engines": {
2009+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
2010+ }
2011+ },
2012+ "node_modules/spago/node_modules/unique-slug": {
2013+ "version": "4.0.0",
2014+ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz",
2015+ "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==",
2016+ "dev": true,
2017+ "dependencies": {
2018+ "imurmurhash": "^0.1.4"
2019+ },
2020+ "engines": {
2021+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
13192022 }
13202023 },
13212024 "node_modules/ssri": {
@@ -1353,29 +2056,57 @@
13532056 }
13542057 },
13552058 "node_modules/string-width": {
1356− "version": "3.1.0",
1357− "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
1358− "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
2059+ "version": "4.2.3",
2060+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
2061+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
13592062 "dev": true,
13602063 "dependencies": {
1361− "emoji-regex": "^7.0.1",
1362− "is-fullwidth-code-point": "^2.0.0",
1363− "strip-ansi": "^5.1.0"
2064+ "emoji-regex": "^8.0.0",
2065+ "is-fullwidth-code-point": "^3.0.0",
2066+ "strip-ansi": "^6.0.1"
13642067 },
13652068 "engines": {
1366− "node": ">=6"
2069+ "node": ">=8"
2070+ }
2071+ },
2072+ "node_modules/string-width-cjs": {
2073+ "name": "string-width",
2074+ "version": "4.2.3",
2075+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
2076+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
2077+ "dev": true,
2078+ "dependencies": {
2079+ "emoji-regex": "^8.0.0",
2080+ "is-fullwidth-code-point": "^3.0.0",
2081+ "strip-ansi": "^6.0.1"
2082+ },
2083+ "engines": {
2084+ "node": ">=8"
13672085 }
13682086 },
13692087 "node_modules/strip-ansi": {
1370− "version": "5.2.0",
1371− "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
1372− "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
2088+ "version": "6.0.1",
2089+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
2090+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
13732091 "dev": true,
13742092 "dependencies": {
1375− "ansi-regex": "^4.1.0"
2093+ "ansi-regex": "^5.0.1"
13762094 },
13772095 "engines": {
1378− "node": ">=6"
2096+ "node": ">=8"
2097+ }
2098+ },
2099+ "node_modules/strip-ansi-cjs": {
2100+ "name": "strip-ansi",
2101+ "version": "6.0.1",
2102+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
2103+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
2104+ "dev": true,
2105+ "dependencies": {
2106+ "ansi-regex": "^5.0.1"
2107+ },
2108+ "engines": {
2109+ "node": ">=8"
13792110 }
13802111 },
13812112 "node_modules/strip-final-newline": {
@@ -1400,23 +2131,58 @@
14002131 }
14012132 },
14022133 "node_modules/tar": {
1403− "version": "4.4.13",
1404− "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz",
1405− "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==",
2134+ "version": "6.1.15",
2135+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz",
2136+ "integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==",
14062137 "dev": true,
14072138 "dependencies": {
1408− "chownr": "^1.1.1",
1409− "fs-minipass": "^1.2.5",
1410− "minipass": "^2.8.6",
1411− "minizlib": "^1.2.1",
1412− "mkdirp": "^0.5.0",
1413− "safe-buffer": "^5.1.2",
1414− "yallist": "^3.0.3"
2139+ "chownr": "^2.0.0",
2140+ "fs-minipass": "^2.0.0",
2141+ "minipass": "^5.0.0",
2142+ "minizlib": "^2.1.1",
2143+ "mkdirp": "^1.0.3",
2144+ "yallist": "^4.0.0"
14152145 },
14162146 "engines": {
1417− "node": ">=4.5"
2147+ "node": ">=10"
14182148 }
14192149 },
2150+ "node_modules/tar/node_modules/chownr": {
2151+ "version": "2.0.0",
2152+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
2153+ "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
2154+ "dev": true,
2155+ "engines": {
2156+ "node": ">=10"
2157+ }
2158+ },
2159+ "node_modules/tar/node_modules/minipass": {
2160+ "version": "5.0.0",
2161+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
2162+ "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
2163+ "dev": true,
2164+ "engines": {
2165+ "node": ">=8"
2166+ }
2167+ },
2168+ "node_modules/tar/node_modules/mkdirp": {
2169+ "version": "1.0.4",
2170+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
2171+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
2172+ "dev": true,
2173+ "bin": {
2174+ "mkdirp": "bin/cmd.js"
2175+ },
2176+ "engines": {
2177+ "node": ">=10"
2178+ }
2179+ },
2180+ "node_modules/tar/node_modules/yallist": {
2181+ "version": "4.0.0",
2182+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
2183+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
2184+ "dev": true
2185+ },
14202186 "node_modules/through2": {
14212187 "version": "2.0.5",
14222188 "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
@@ -1427,41 +2193,22 @@
14272193 "xtend": "~4.0.1"
14282194 }
14292195 },
1430− "node_modules/tough-cookie": {
1431− "version": "2.5.0",
1432− "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
1433− "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
2196+ "node_modules/type-fest": {
2197+ "version": "0.21.3",
2198+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
2199+ "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
14342200 "dev": true,
1435− "dependencies": {
1436− "psl": "^1.1.28",
1437− "punycode": "^2.1.1"
1438− },
14392201 "engines": {
1440− "node": ">=0.8"
1441− }
1442− },
1443− "node_modules/tunnel-agent": {
1444− "version": "0.6.0",
1445− "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
1446− "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
1447− "dev": true,
1448− "dependencies": {
1449− "safe-buffer": "^5.0.1"
2202+ "node": ">=10"
14502203 },
1451− "engines": {
1452− "node": "*"
2204+ "funding": {
2205+ "url": "https://github.com/sponsors/sindresorhus"
14532206 }
14542207 },
1455− "node_modules/tweetnacl": {
1456− "version": "0.14.5",
1457− "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
1458− "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
1459− "dev": true
1460− },
14612208 "node_modules/typedarray": {
14622209 "version": "0.0.6",
14632210 "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
1464− "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
2211+ "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==",
14652212 "dev": true
14662213 },
14672214 "node_modules/unique-filename": {
@@ -1482,45 +2229,12 @@
14822229 "imurmurhash": "^0.1.4"
14832230 }
14842231 },
1485− "node_modules/uri-js": {
1486− "version": "4.4.1",
1487− "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
1488− "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
1489− "dev": true,
1490− "dependencies": {
1491− "punycode": "^2.1.0"
1492− }
1493− },
14942232 "node_modules/util-deprecate": {
14952233 "version": "1.0.2",
14962234 "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
1497− "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
2235+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
14982236 "dev": true
14992237 },
1500− "node_modules/uuid": {
1501− "version": "3.4.0",
1502− "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
1503− "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
1504− "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.",
1505− "dev": true,
1506− "bin": {
1507− "uuid": "bin/uuid"
1508− }
1509− },
1510− "node_modules/verror": {
1511− "version": "1.10.0",
1512− "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
1513− "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
1514− "dev": true,
1515− "engines": [
1516− "node >=0.6.0"
1517− ],
1518− "dependencies": {
1519− "assert-plus": "^1.0.0",
1520− "core-util-is": "1.0.2",
1521− "extsprintf": "^1.2.0"
1522− }
1523− },
15242238 "node_modules/which": {
15252239 "version": "1.3.1",
15262240 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
@@ -1534,23 +2248,107 @@
15342248 }
15352249 },
15362250 "node_modules/wrap-ansi": {
1537− "version": "5.1.0",
1538− "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
1539− "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
2251+ "version": "6.2.0",
2252+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
2253+ "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
15402254 "dev": true,
15412255 "dependencies": {
1542− "ansi-styles": "^3.2.0",
1543− "string-width": "^3.0.0",
1544− "strip-ansi": "^5.0.0"
2256+ "ansi-styles": "^4.0.0",
2257+ "string-width": "^4.1.0",
2258+ "strip-ansi": "^6.0.0"
15452259 },
15462260 "engines": {
1547− "node": ">=6"
2261+ "node": ">=8"
2262+ }
2263+ },
2264+ "node_modules/wrap-ansi-cjs": {
2265+ "name": "wrap-ansi",
2266+ "version": "7.0.0",
2267+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
2268+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
2269+ "dev": true,
2270+ "dependencies": {
2271+ "ansi-styles": "^4.0.0",
2272+ "string-width": "^4.1.0",
2273+ "strip-ansi": "^6.0.0"
2274+ },
2275+ "engines": {
2276+ "node": ">=10"
2277+ },
2278+ "funding": {
2279+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
2280+ }
2281+ },
2282+ "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": {
2283+ "version": "4.3.0",
2284+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2285+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2286+ "dev": true,
2287+ "dependencies": {
2288+ "color-convert": "^2.0.1"
2289+ },
2290+ "engines": {
2291+ "node": ">=8"
2292+ },
2293+ "funding": {
2294+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
2295+ }
2296+ },
2297+ "node_modules/wrap-ansi-cjs/node_modules/color-convert": {
2298+ "version": "2.0.1",
2299+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2300+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2301+ "dev": true,
2302+ "dependencies": {
2303+ "color-name": "~1.1.4"
2304+ },
2305+ "engines": {
2306+ "node": ">=7.0.0"
15482307 }
15492308 },
2309+ "node_modules/wrap-ansi-cjs/node_modules/color-name": {
2310+ "version": "1.1.4",
2311+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2312+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
2313+ "dev": true
2314+ },
2315+ "node_modules/wrap-ansi/node_modules/ansi-styles": {
2316+ "version": "4.3.0",
2317+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2318+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2319+ "dev": true,
2320+ "dependencies": {
2321+ "color-convert": "^2.0.1"
2322+ },
2323+ "engines": {
2324+ "node": ">=8"
2325+ },
2326+ "funding": {
2327+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
2328+ }
2329+ },
2330+ "node_modules/wrap-ansi/node_modules/color-convert": {
2331+ "version": "2.0.1",
2332+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2333+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2334+ "dev": true,
2335+ "dependencies": {
2336+ "color-name": "~1.1.4"
2337+ },
2338+ "engines": {
2339+ "node": ">=7.0.0"
2340+ }
2341+ },
2342+ "node_modules/wrap-ansi/node_modules/color-name": {
2343+ "version": "1.1.4",
2344+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2345+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
2346+ "dev": true
2347+ },
15502348 "node_modules/wrappy": {
15512349 "version": "1.0.2",
15522350 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1553− "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
2351+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
15542352 "dev": true
15552353 },
15562354 "node_modules/xhr2": {
package.json+3−3
@@ -1,6 +1,6 @@
11{
22 "name": "purescript-graphql-fundeps",
3− "version": "0.0.0",
3+ "version": "0.1.0",
44 "scripts": {
55 "postinstall": "spago install && spago build",
66 "test": "spago -x test.dhall test"
@@ -9,9 +9,9 @@
99 "author": "",
1010 "license": "ISC",
1111 "devDependencies": {
12− "purescript": "^0.14.1",
12+ "purescript": "^0.15.9",
1313 "purs-tidy": "^0.10.0",
14− "spago": "^0.20.3",
14+ "spago": "^0.21.0",
1515 "xhr2": "^0.2.1"
1616 }
1717}
packages.dhall+3−102
@@ -1,104 +1,5 @@
1−{-
2−Welcome to your new Dhall package-set!
3−
4−Below are instructions for how to edit this file for most use
5−cases, so that you don't need to know Dhall to use it.
6−
7−## Use Cases
8−
9−Most will want to do one or both of these options:
10−1. Override/Patch a package's dependency
11−2. Add a package not already in the default package set
12−
13−This file will continue to work whether you use one or both options.
14−Instructions for each option are explained below.
15−
16−### Overriding/Patching a package
17−
18−Purpose:
19−- Change a package's dependency to a newer/older release than the
20− default package set's release
21−- Use your own modified version of some dependency that may
22− include new API, changed API, removed API by
23− using your custom git repo of the library rather than
24− the package set's repo
25−
26−Syntax:
27−where `entityName` is one of the following:
28−- dependencies
29−- repo
30−- version
31−-------------------------------
32−let upstream = --
33−in upstream
34− with packageName.entityName = "new value"
35−-------------------------------
36−
37−Example:
38−-------------------------------
39−let upstream = --
40−in upstream
41− with halogen.version = "master"
42− with halogen.repo = "https://example.com/path/to/git/repo.git"
43−
44− with halogen-vdom.version = "v4.0.0"
45− with halogen-vdom.dependencies = [ "extra-dependency" ] # halogen-vdom.dependencies
46−-------------------------------
47−
48−### Additions
49−
50−Purpose:
51−- Add packages that aren't already included in the default package set
52−
53−Syntax:
54−where `<version>` is:
55−- a tag (i.e. "v4.0.0")
56−- a branch (i.e. "master")
57−- commit hash (i.e. "701f3e44aafb1a6459281714858fadf2c4c2a977")
58−-------------------------------
59−let upstream = --
60−in upstream
61− with new-package-name =
62− { dependencies =
63− [ "dependency1"
64− , "dependency2"
65− ]
66− , repo =
67− "https://example.com/path/to/git/repo.git"
68− , version =
69− "<version>"
70− }
71−-------------------------------
72−
73−Example:
74−-------------------------------
75−let upstream = --
76−in upstream
77− with benchotron =
78− { dependencies =
79− [ "arrays"
80− , "exists"
81− , "profunctor"
82− , "strings"
83− , "quickcheck"
84− , "lcg"
85− , "transformers"
86− , "foldable-traversable"
87− , "exceptions"
88− , "node-fs"
89− , "node-buffer"
90− , "node-readline"
91− , "datetime"
92− , "now"
93− ]
94− , repo =
95− "https://github.com/hdgarrood/purescript-benchotron.git"
96− , version =
97− "v7.0.0"
98− }
99−-------------------------------
100−-}
1011let upstream =
102− https://github.com/purescript/package-sets/releases/download/psc-0.14.1-20210516/packages.dhall sha256:f5e978371d4cdc4b916add9011021509c8d869f4c3f6d0d2694c0e03a85046c8
2+ https://github.com/purescript/package-sets/releases/download/psc-0.15.7-20230227/packages.dhall
3+ sha256:0168e165b4cdb40ab6f7e01448075680097791c8d98f96d684b20d1eef96f3d0
1034
104−in upstream
5+in upstream
spago.dhall+3−1
@@ -17,13 +17,15 @@ to generate this file without the comments in this block.
1717 , "console"
1818 , "effect"
1919 , "either"
20+ , "foreign"
2021 , "http-methods"
22+ , "lists"
2123 , "maybe"
2224 , "media-types"
2325 , "prelude"
24− , "psci-support"
2526 , "simple-json"
2627 , "strings"
28+ , "transformers"
2729 ]
2830, packages = ./packages.dhall
2931, sources = [ "src/**/*.purs" ]
src/GraphQL.purs+32−16
@@ -2,6 +2,7 @@ module GraphQL.FunDeps where
22
33import Prelude
44
5+import Affjax (AffjaxDriver)
56import Affjax as AX
67import Affjax.RequestBody as RequestBody
78import Affjax.RequestHeader (RequestHeader(..))
@@ -50,7 +51,7 @@ type ParsingErrorInfo =
5051 , jsonParsingError :: NonEmptyList ForeignError
5152 }
5253
53−type GraphQLClient'
54+type GraphQLClient''
5455 (operation :: GraphQL)
5556 (gql :: Symbol)
5657 (i :: Row Type)
@@ -72,28 +73,43 @@ type GraphQLClient'
7273type GraphQLClient =
7374 forall (operation :: GraphQL)
7475 (gql :: Symbol) (i :: Row Type) (o :: Row Type) (m :: Type -> Type) (e :: Type)
75− . GraphQLClient' operation gql i o m e
76+ . GraphQLReqRes operation gql i o
77+ => IsSymbol gql
78+ => JSON.WriteForeign { | i }
79+ => JSON.ReadForeign { | o }
80+ => MonadAff m
81+ => MonadThrow e m
82+ => (NetworkErrorInfo -> e)
83+ -> (ParsingErrorInfo -> e)
84+ -> Gql operation
85+ -> Record i
86+ -> m { | o }
87+
88+type GraphQLClientAff =
89+ forall (operation :: GraphQL) (gql :: Symbol) (i :: Row Type) (o :: Row Type)
90+ . GraphQLReqRes operation gql i o
91+ => IsSymbol gql
92+ => JSON.WriteForeign { | i }
93+ => JSON.ReadForeign { | o }
94+ => Gql operation
95+ -> Record i
96+ -> Aff { | o }
7697
7798graphQL
7899 :: Endpoint
79100 -> Array RequestHeader
80− -> ( forall (operation :: GraphQL) (gql :: Symbol) (i :: Row Type) (o :: Row Type)
81− . GraphQLReqRes operation gql i o
82− => IsSymbol gql
83− => JSON.WriteForeign { | i }
84− => JSON.ReadForeign { | o }
85− => Gql operation
86− -> Record i
87− -> Aff { | o }
88− )
89−graphQL endpoint headers = graphQL'
101+ -> AffjaxDriver
102+ -> GraphQLClientAff
103+graphQL endpoint headers driver = graphQL'
90104 endpoint
91105 headers
106+ driver
92107 (error <<< AX.printError <<< _.error)
93108 (error <<< _.body <<< _.response)
94109
95−graphQL' :: Endpoint -> Array RequestHeader -> GraphQLClient
96−graphQL' endpoint headers' = go
110+
111+graphQL' :: Endpoint -> Array RequestHeader -> AffjaxDriver -> GraphQLClient
112+graphQL' endpoint headers' driver = go
97113 where
98114 requestHeaders = headers' <> [ ContentType $ MediaType "application/json" ]
99115
@@ -126,7 +142,7 @@ graphQL' endpoint headers' = go
126142 }
127143 requestBody = JSON.writeJSON input
128144 res <-
129− liftAff $ AX.request
145+ liftAff $ AX.request driver
130146 ( AX.defaultRequest
131147 { url = endpoint
132148 , method = Left POST
@@ -151,4 +167,4 @@ graphQL' endpoint headers' = go
151167 , response
152168 }
153169 )
154− Right ({ data: d } :: { data :: { | o } }) -> pure d
170+ Right ({ data: d } :: { data :: { | o } }) -> pure d
test.dhall+6−4
@@ -1,6 +1,8 @@
11let conf = ./spago.dhall
22
3−in conf // {
4− sources = conf.sources # [ "test/**/*.purs" ],
5− dependencies = conf.dependencies # [ "spec", "foldable-traversable" ]
6−}
3+in conf
4+ // { sources = conf.sources # [ "test/**/*.purs" ]
5+ , dependencies =
6+ conf.dependencies
7+ # [ "spec", "foldable-traversable", "affjax-node" ]
8+ }
test/Main.purs+5−3
@@ -1,12 +1,14 @@
11module Test.Main where
22
33import Prelude
4+
5+import Affjax.Node as AffjaxNode
46import Data.Foldable (for_)
57import Data.Maybe (Maybe(..))
68import Effect (Effect)
79import Effect.Aff (Milliseconds(..), launchAff_)
810import Effect.Class.Console as Log
9−import GraphQL.FunDeps (class GraphQLReqRes, Gql(..), GraphQL, GraphQLClient, graphQL)
11+import GraphQL.FunDeps (class GraphQLReqRes, Gql(..), GraphQL, GraphQLClientAff, graphQL)
1012import Test.Spec (describe, it)
1113import Test.Spec.Reporter.Console (consoleReporter)
1214import Test.Spec.Runner (defaultConfig, runSpec')
@@ -48,8 +50,8 @@ instance graphqlReactFinlandConference ::
4850 }
4951 )
5052
51−client :: GraphQLClient
52−client = graphQL "https://api.react-finland.fi/graphql" []
53+client :: GraphQLClientAff
54+client = graphQL "https://api.react-finland.fi/graphql" [] AffjaxNode.driver
5355
5456main ∷ Effect Unit
5557main =