├── .gitignore
├── README.md
├── package-lock.json
├── package.json
├── scripts
└── publish.ts
├── src
├── frameSupport.ts
├── index.ts
└── test.ts
└── tsconfig.json
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .env
3 | coverage
4 | coverage.json
5 | typechain
6 | typechain-types
7 | # Default ignored files
8 | /shelf/
9 | /workspace.xml
10 | # Editor-based HTTP Client requests
11 | /httpRequests/
12 |
13 | # Hardhat files
14 | cache
15 | artifacts
16 |
17 | # Phat
18 | .phat
19 | dist
20 | polkadot-account.json
21 |
22 | tmp
23 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
22 |
23 | ## About The Project
24 |
25 | 
26 |
27 | FrameHub is a decentralized Farcaster Frame hosting protocol. Unlike Vercel or other FaaS, it allows you to publish your Frame to IPFS and hosts it on a fully decentralized FaaS cloud with the following benefits:
28 |
29 | - 💨 Ship Fast: Build and ship with familiar toolchain in minutes
30 | - ⛑️ Secure: Execution guarded by rock solid TEE / Intel SGX
31 | - 🔒 Private: Host API keys and user privacy at ease
32 | - 💎 Unstoppable: Powered by IPFS and [Phala](https://phala.network)'s 35k+ decentralized TEE workers
33 |
34 | ## Getting Started
35 |
36 | ### Prepare
37 |
38 | ```bash
39 | npm install
40 | ```
41 |
42 | ### Test Locally
43 |
44 | ```bash
45 | npx ts-node src/test.ts
46 | ```
47 |
48 | ### Compile
49 |
50 | Build your frame and output at `dist/index.js`.
51 |
52 | ```bash
53 | npm run build
54 | # yarn build
55 | ```
56 |
57 | ### Publish to IPFS
58 |
59 | Build your frame and upload to IPFS
60 |
61 | ```bash
62 | npm run publish
63 | # yarn publish
64 | ```
65 |
66 | Upon a successful upload, the command should show the URL to access your frame.
67 | > Frame deployed at: https://frames.phatfn.xyz/ipfs/Qma4ejJPfuB9ag63TrWWd379QA1rKf1HyXJmLE5k16dAYk
68 |
69 |
70 | New to thirdweb?
71 | We use thirdweb Storage to host IPFS contents. If you are new to thirdweb, the command will guide you to create your account or login to your existing account from the browser. (You may need to forward port 8976 if you are accessing a remote console via SSH.)
72 |
73 |
74 | ### Access the Published Frame
75 |
76 | Once published, your frame is availabe at the URL: `https://frames.phatfn.xyz/ipfs/`. You can get it from the "Publish to IPFS" step.
77 |
78 | You can test it with `curl`.
79 |
80 | ```bash
81 | curl https://frames.phatfn.xyz/ipfs/
82 | ```
83 |
84 | You can test the frame with the [Warpcast frame simulator](https://warpcast.com/~/developers/frames) with the URL.
85 |
86 | ## Advanced Usage
87 |
88 | ### Add Secrets
89 |
90 | By default, all of the compiled JS code is visible for anyone to view if they look at IPFS CID. This makes private info like API keys, signer keys, etc. vulnerable to be stolen. To protect devs from leaking keys, we have added a field called `secret` in the `Request` object. It allows you to store secrets in a vault for your Frame to access.
91 |
92 |
93 | How to Add Secrets
94 |
95 | The steps to add a `secret` is simple. We will add the [Neynar](https://neynar.com) API Key in this example by creating a secret JSON object with the `apiKey`:
96 |
97 | ```json
98 | {"apiKey": ""}
99 | ```
100 |
101 | Then in your frame code, you will be able to access the secret key via `req.secret` object:
102 |
103 | ```js
104 | async function POST(req: Request): Promise {
105 | const apiKey = req.secret?.apiKey
106 | }
107 | ```
108 |
109 | > Note: Before continuing, make sure to publish your compiled JS code, so you can add secrets to the CID.
110 |
111 | **Open terminal**
112 | Use `curl` to `POST` your secrets to `https://frames.phatfn.xyz/vaults`. Replace `IPFS_CID` with the CID to the compile JS code in IPFS, and replace `` with your Neynar API key.
113 |
114 | The command will look like this:
115 | ```shell
116 | curl https://frames.phatfn.xyz/vaults -H 'Content-Type: application/json' -d '{"cid": "IPFS_CID", "data": {"apiKey": ""}}'
117 | # Output:
118 | # {"token":"e85ae53d2ba4ca8d","key":"e781ef31210e0362","succeed":true}
119 | ```
120 |
121 | The API returns a `token` and a `key`. The `key` is the id of your secret. It can be used to specify which secret you are going to pass to your frame. The `token` can be used by the developer to access the raw secret. You should never leak the `token`.
122 |
123 | To verify the secret, run the following command where `key` and `token` are replaced with the values from adding your `secret` to the vault.
124 | ```shell
125 | curl https://frames.phatfn.xyz/vaults//
126 | ```
127 |
128 | Expected output:
129 | ```shell
130 | {"data":{"apiKey":""},"succeed":true}
131 | ```
132 |
133 | To see where the code is used in this template, check out [index.ts](./src/index.ts) line 36.
134 |
135 | If you are using secrets, make sure that your Cast URL is set in the following syntax where `cid` is the IPFS CID of your compiled JS file and `key` is the `key` from adding secrets to your vault.
136 | ```text
137 | https://frames.phatfn.xyz/ipfs/?key=
138 | ```
139 |
140 | https://github.com/Phala-Network/phat-frame-template/assets/64296537/620ad981-73a8-46c0-8cfd-16d2e245abfc
141 |
142 |
143 |
144 | (TBD: instantiate, ...)
145 |
146 | ## Roadmap
147 |
148 | - [x] Publish to IPFS command
149 | - [x] Support secrets
150 | - [ ] Free "Publish to IPFS" command
151 | - [ ] SVG generation
152 | - [ ] Database
153 |
154 | ## FAQ
155 |
156 |
157 | What packages can I use in the frame server?
158 |
159 | - Most of the npm packages are supported: viem, onchainkit, ….
160 | - Some packages with some advanced features are not supported:
161 |
162 | - Large code size. Compiled bundle should be less than 500kb.
163 | - Large memory usage, like image generation
164 | - Web Assembly
165 | - Browser only features: local storage, service workers, etc
166 |
167 |
168 |
169 |
170 |
171 | What’s the spec of the Javascript runtime?
172 |
173 | - The code runs inside a tailored QuickJS engine
174 | - Available features: ES2023, async, fetch, setTimeout, setInterval, bigint
175 | - Resource limits
176 |
177 | - Max execution time 10s
178 | - Max memory usage: 16 mb
179 | - Max code size: 500 kb
180 | - Limited CPU burst: CPU time between async calls is limited. e.g. Too complex for-loop may hit the burst limit.
181 |
182 |
183 |
184 |
185 |
186 | Why is the serverless platform secure?
187 |
188 | - Your code on FrameHub is fully secure, private, and permissionless. Nobody can manipulate your program, steal any data from it, or censor it.
189 | - Security: The code is executed in the decentralized TEE network running on Phala Network. It runs code inside a secure blackbox (called enclave) created by the CPU. It generates cryptographic proofs verifiable on Phala blockchain. It proves that the hosted code is exactly the one you deployed.
190 | - Privacy: You can safely put secrets like API keys or user privacy on FrameHub. The code runs inside TEE hardware blackboxs. The memory of the program is fully encrypted by the TEE. It blocks any unauthorized access to your data.
191 | - Learn more at Phala Network Homepage
192 |
193 |
194 |
195 | What's TEE / Intel SGX?
196 |
200 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "phat-frame-template",
3 | "version": "1.0.0",
4 | "lockfileVersion": 3,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "phat-frame-template",
9 | "version": "1.0.0",
10 | "license": "MIT",
11 | "dependencies": {
12 | "@coinbase/onchainkit": "^0.5.4"
13 | },
14 | "devDependencies": {
15 | "@phala/fn": "~0.2.14",
16 | "tsx": "^4.7.0",
17 | "typechain": "^8.1.0",
18 | "typescript": "^5.2.2"
19 | },
20 | "engines": {
21 | "node": ">=18"
22 | }
23 | },
24 | "node_modules/@adraffy/ens-normalize": {
25 | "version": "1.10.0",
26 | "license": "MIT"
27 | },
28 | "node_modules/@coinbase/onchainkit": {
29 | "version": "0.5.4",
30 | "resolved": "https://registry.npmjs.org/@coinbase/onchainkit/-/onchainkit-0.5.4.tgz",
31 | "integrity": "sha512-fF8cwAmamM/az1TBbaZVPcAdrCdZ3db2FPIdRoWPrcLIU2Xmdw7EM2uaiwzzbfoGDkkgEt4nUefAH5P4mFrORw==",
32 | "peerDependencies": {
33 | "react": "^18",
34 | "react-dom": "^18",
35 | "viem": "^2.7.0"
36 | }
37 | },
38 | "node_modules/@cspotcode/source-map-support": {
39 | "version": "0.8.1",
40 | "dev": true,
41 | "license": "MIT",
42 | "dependencies": {
43 | "@jridgewell/trace-mapping": "0.3.9"
44 | },
45 | "engines": {
46 | "node": ">=12"
47 | }
48 | },
49 | "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": {
50 | "version": "0.3.9",
51 | "dev": true,
52 | "license": "MIT",
53 | "dependencies": {
54 | "@jridgewell/resolve-uri": "^3.0.3",
55 | "@jridgewell/sourcemap-codec": "^1.4.10"
56 | }
57 | },
58 | "node_modules/@esbuild/aix-ppc64": {
59 | "version": "0.19.12",
60 | "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz",
61 | "integrity": "sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==",
62 | "cpu": [
63 | "ppc64"
64 | ],
65 | "dev": true,
66 | "optional": true,
67 | "os": [
68 | "aix"
69 | ],
70 | "engines": {
71 | "node": ">=12"
72 | }
73 | },
74 | "node_modules/@esbuild/android-arm": {
75 | "version": "0.19.12",
76 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz",
77 | "integrity": "sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==",
78 | "cpu": [
79 | "arm"
80 | ],
81 | "dev": true,
82 | "optional": true,
83 | "os": [
84 | "android"
85 | ],
86 | "engines": {
87 | "node": ">=12"
88 | }
89 | },
90 | "node_modules/@esbuild/android-arm64": {
91 | "version": "0.19.12",
92 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz",
93 | "integrity": "sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==",
94 | "cpu": [
95 | "arm64"
96 | ],
97 | "dev": true,
98 | "optional": true,
99 | "os": [
100 | "android"
101 | ],
102 | "engines": {
103 | "node": ">=12"
104 | }
105 | },
106 | "node_modules/@esbuild/android-x64": {
107 | "version": "0.19.12",
108 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz",
109 | "integrity": "sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==",
110 | "cpu": [
111 | "x64"
112 | ],
113 | "dev": true,
114 | "optional": true,
115 | "os": [
116 | "android"
117 | ],
118 | "engines": {
119 | "node": ">=12"
120 | }
121 | },
122 | "node_modules/@esbuild/darwin-arm64": {
123 | "version": "0.19.12",
124 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz",
125 | "integrity": "sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==",
126 | "cpu": [
127 | "arm64"
128 | ],
129 | "dev": true,
130 | "optional": true,
131 | "os": [
132 | "darwin"
133 | ],
134 | "engines": {
135 | "node": ">=12"
136 | }
137 | },
138 | "node_modules/@esbuild/darwin-x64": {
139 | "version": "0.19.12",
140 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz",
141 | "integrity": "sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==",
142 | "cpu": [
143 | "x64"
144 | ],
145 | "dev": true,
146 | "optional": true,
147 | "os": [
148 | "darwin"
149 | ],
150 | "engines": {
151 | "node": ">=12"
152 | }
153 | },
154 | "node_modules/@esbuild/freebsd-arm64": {
155 | "version": "0.19.12",
156 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz",
157 | "integrity": "sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==",
158 | "cpu": [
159 | "arm64"
160 | ],
161 | "dev": true,
162 | "optional": true,
163 | "os": [
164 | "freebsd"
165 | ],
166 | "engines": {
167 | "node": ">=12"
168 | }
169 | },
170 | "node_modules/@esbuild/freebsd-x64": {
171 | "version": "0.19.12",
172 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz",
173 | "integrity": "sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==",
174 | "cpu": [
175 | "x64"
176 | ],
177 | "dev": true,
178 | "optional": true,
179 | "os": [
180 | "freebsd"
181 | ],
182 | "engines": {
183 | "node": ">=12"
184 | }
185 | },
186 | "node_modules/@esbuild/linux-arm": {
187 | "version": "0.19.12",
188 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz",
189 | "integrity": "sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==",
190 | "cpu": [
191 | "arm"
192 | ],
193 | "dev": true,
194 | "optional": true,
195 | "os": [
196 | "linux"
197 | ],
198 | "engines": {
199 | "node": ">=12"
200 | }
201 | },
202 | "node_modules/@esbuild/linux-arm64": {
203 | "version": "0.19.12",
204 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz",
205 | "integrity": "sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==",
206 | "cpu": [
207 | "arm64"
208 | ],
209 | "dev": true,
210 | "optional": true,
211 | "os": [
212 | "linux"
213 | ],
214 | "engines": {
215 | "node": ">=12"
216 | }
217 | },
218 | "node_modules/@esbuild/linux-ia32": {
219 | "version": "0.19.12",
220 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz",
221 | "integrity": "sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==",
222 | "cpu": [
223 | "ia32"
224 | ],
225 | "dev": true,
226 | "optional": true,
227 | "os": [
228 | "linux"
229 | ],
230 | "engines": {
231 | "node": ">=12"
232 | }
233 | },
234 | "node_modules/@esbuild/linux-loong64": {
235 | "version": "0.19.12",
236 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz",
237 | "integrity": "sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==",
238 | "cpu": [
239 | "loong64"
240 | ],
241 | "dev": true,
242 | "optional": true,
243 | "os": [
244 | "linux"
245 | ],
246 | "engines": {
247 | "node": ">=12"
248 | }
249 | },
250 | "node_modules/@esbuild/linux-mips64el": {
251 | "version": "0.19.12",
252 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz",
253 | "integrity": "sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==",
254 | "cpu": [
255 | "mips64el"
256 | ],
257 | "dev": true,
258 | "optional": true,
259 | "os": [
260 | "linux"
261 | ],
262 | "engines": {
263 | "node": ">=12"
264 | }
265 | },
266 | "node_modules/@esbuild/linux-ppc64": {
267 | "version": "0.19.12",
268 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz",
269 | "integrity": "sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==",
270 | "cpu": [
271 | "ppc64"
272 | ],
273 | "dev": true,
274 | "optional": true,
275 | "os": [
276 | "linux"
277 | ],
278 | "engines": {
279 | "node": ">=12"
280 | }
281 | },
282 | "node_modules/@esbuild/linux-riscv64": {
283 | "version": "0.19.12",
284 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz",
285 | "integrity": "sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==",
286 | "cpu": [
287 | "riscv64"
288 | ],
289 | "dev": true,
290 | "optional": true,
291 | "os": [
292 | "linux"
293 | ],
294 | "engines": {
295 | "node": ">=12"
296 | }
297 | },
298 | "node_modules/@esbuild/linux-s390x": {
299 | "version": "0.19.12",
300 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz",
301 | "integrity": "sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==",
302 | "cpu": [
303 | "s390x"
304 | ],
305 | "dev": true,
306 | "optional": true,
307 | "os": [
308 | "linux"
309 | ],
310 | "engines": {
311 | "node": ">=12"
312 | }
313 | },
314 | "node_modules/@esbuild/linux-x64": {
315 | "version": "0.19.12",
316 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz",
317 | "integrity": "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==",
318 | "cpu": [
319 | "x64"
320 | ],
321 | "dev": true,
322 | "optional": true,
323 | "os": [
324 | "linux"
325 | ],
326 | "engines": {
327 | "node": ">=12"
328 | }
329 | },
330 | "node_modules/@esbuild/netbsd-x64": {
331 | "version": "0.19.12",
332 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz",
333 | "integrity": "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==",
334 | "cpu": [
335 | "x64"
336 | ],
337 | "dev": true,
338 | "optional": true,
339 | "os": [
340 | "netbsd"
341 | ],
342 | "engines": {
343 | "node": ">=12"
344 | }
345 | },
346 | "node_modules/@esbuild/openbsd-x64": {
347 | "version": "0.19.12",
348 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz",
349 | "integrity": "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==",
350 | "cpu": [
351 | "x64"
352 | ],
353 | "dev": true,
354 | "optional": true,
355 | "os": [
356 | "openbsd"
357 | ],
358 | "engines": {
359 | "node": ">=12"
360 | }
361 | },
362 | "node_modules/@esbuild/sunos-x64": {
363 | "version": "0.19.12",
364 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz",
365 | "integrity": "sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==",
366 | "cpu": [
367 | "x64"
368 | ],
369 | "dev": true,
370 | "optional": true,
371 | "os": [
372 | "sunos"
373 | ],
374 | "engines": {
375 | "node": ">=12"
376 | }
377 | },
378 | "node_modules/@esbuild/win32-arm64": {
379 | "version": "0.19.12",
380 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz",
381 | "integrity": "sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==",
382 | "cpu": [
383 | "arm64"
384 | ],
385 | "dev": true,
386 | "optional": true,
387 | "os": [
388 | "win32"
389 | ],
390 | "engines": {
391 | "node": ">=12"
392 | }
393 | },
394 | "node_modules/@esbuild/win32-ia32": {
395 | "version": "0.19.12",
396 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz",
397 | "integrity": "sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==",
398 | "cpu": [
399 | "ia32"
400 | ],
401 | "dev": true,
402 | "optional": true,
403 | "os": [
404 | "win32"
405 | ],
406 | "engines": {
407 | "node": ">=12"
408 | }
409 | },
410 | "node_modules/@esbuild/win32-x64": {
411 | "version": "0.19.12",
412 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz",
413 | "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==",
414 | "cpu": [
415 | "x64"
416 | ],
417 | "dev": true,
418 | "optional": true,
419 | "os": [
420 | "win32"
421 | ],
422 | "engines": {
423 | "node": ">=12"
424 | }
425 | },
426 | "node_modules/@fastify/busboy": {
427 | "version": "2.1.0",
428 | "dev": true,
429 | "license": "MIT",
430 | "engines": {
431 | "node": ">=14"
432 | }
433 | },
434 | "node_modules/@jridgewell/gen-mapping": {
435 | "version": "0.3.3",
436 | "dev": true,
437 | "license": "MIT",
438 | "dependencies": {
439 | "@jridgewell/set-array": "^1.0.1",
440 | "@jridgewell/sourcemap-codec": "^1.4.10",
441 | "@jridgewell/trace-mapping": "^0.3.9"
442 | },
443 | "engines": {
444 | "node": ">=6.0.0"
445 | }
446 | },
447 | "node_modules/@jridgewell/resolve-uri": {
448 | "version": "3.1.1",
449 | "dev": true,
450 | "license": "MIT",
451 | "engines": {
452 | "node": ">=6.0.0"
453 | }
454 | },
455 | "node_modules/@jridgewell/set-array": {
456 | "version": "1.1.2",
457 | "dev": true,
458 | "license": "MIT",
459 | "engines": {
460 | "node": ">=6.0.0"
461 | }
462 | },
463 | "node_modules/@jridgewell/source-map": {
464 | "version": "0.3.5",
465 | "dev": true,
466 | "license": "MIT",
467 | "dependencies": {
468 | "@jridgewell/gen-mapping": "^0.3.0",
469 | "@jridgewell/trace-mapping": "^0.3.9"
470 | }
471 | },
472 | "node_modules/@jridgewell/sourcemap-codec": {
473 | "version": "1.4.15",
474 | "dev": true,
475 | "license": "MIT"
476 | },
477 | "node_modules/@jridgewell/trace-mapping": {
478 | "version": "0.3.22",
479 | "dev": true,
480 | "license": "MIT",
481 | "dependencies": {
482 | "@jridgewell/resolve-uri": "^3.1.0",
483 | "@jridgewell/sourcemap-codec": "^1.4.14"
484 | }
485 | },
486 | "node_modules/@kwsites/file-exists": {
487 | "version": "1.1.1",
488 | "dev": true,
489 | "license": "MIT",
490 | "dependencies": {
491 | "debug": "^4.1.1"
492 | }
493 | },
494 | "node_modules/@kwsites/promise-deferred": {
495 | "version": "1.1.1",
496 | "dev": true,
497 | "license": "MIT"
498 | },
499 | "node_modules/@noble/curves": {
500 | "version": "1.2.0",
501 | "license": "MIT",
502 | "dependencies": {
503 | "@noble/hashes": "1.3.2"
504 | },
505 | "funding": {
506 | "url": "https://paulmillr.com/funding/"
507 | }
508 | },
509 | "node_modules/@noble/curves/node_modules/@noble/hashes": {
510 | "version": "1.3.2",
511 | "license": "MIT",
512 | "engines": {
513 | "node": ">= 16"
514 | },
515 | "funding": {
516 | "url": "https://paulmillr.com/funding/"
517 | }
518 | },
519 | "node_modules/@noble/hashes": {
520 | "version": "1.3.3",
521 | "license": "MIT",
522 | "engines": {
523 | "node": ">= 16"
524 | },
525 | "funding": {
526 | "url": "https://paulmillr.com/funding/"
527 | }
528 | },
529 | "node_modules/@nodelib/fs.scandir": {
530 | "version": "2.1.5",
531 | "dev": true,
532 | "license": "MIT",
533 | "dependencies": {
534 | "@nodelib/fs.stat": "2.0.5",
535 | "run-parallel": "^1.1.9"
536 | },
537 | "engines": {
538 | "node": ">= 8"
539 | }
540 | },
541 | "node_modules/@nodelib/fs.stat": {
542 | "version": "2.0.5",
543 | "dev": true,
544 | "license": "MIT",
545 | "engines": {
546 | "node": ">= 8"
547 | }
548 | },
549 | "node_modules/@nodelib/fs.walk": {
550 | "version": "1.2.8",
551 | "dev": true,
552 | "license": "MIT",
553 | "dependencies": {
554 | "@nodelib/fs.scandir": "2.1.5",
555 | "fastq": "^1.6.0"
556 | },
557 | "engines": {
558 | "node": ">= 8"
559 | }
560 | },
561 | "node_modules/@oclif/core": {
562 | "version": "2.15.0",
563 | "dev": true,
564 | "license": "MIT",
565 | "dependencies": {
566 | "@types/cli-progress": "^3.11.0",
567 | "ansi-escapes": "^4.3.2",
568 | "ansi-styles": "^4.3.0",
569 | "cardinal": "^2.1.1",
570 | "chalk": "^4.1.2",
571 | "clean-stack": "^3.0.1",
572 | "cli-progress": "^3.12.0",
573 | "debug": "^4.3.4",
574 | "ejs": "^3.1.8",
575 | "get-package-type": "^0.1.0",
576 | "globby": "^11.1.0",
577 | "hyperlinker": "^1.0.0",
578 | "indent-string": "^4.0.0",
579 | "is-wsl": "^2.2.0",
580 | "js-yaml": "^3.14.1",
581 | "natural-orderby": "^2.0.3",
582 | "object-treeify": "^1.1.33",
583 | "password-prompt": "^1.1.2",
584 | "slice-ansi": "^4.0.0",
585 | "string-width": "^4.2.3",
586 | "strip-ansi": "^6.0.1",
587 | "supports-color": "^8.1.1",
588 | "supports-hyperlinks": "^2.2.0",
589 | "ts-node": "^10.9.1",
590 | "tslib": "^2.5.0",
591 | "widest-line": "^3.1.0",
592 | "wordwrap": "^1.0.0",
593 | "wrap-ansi": "^7.0.0"
594 | },
595 | "engines": {
596 | "node": ">=14.0.0"
597 | }
598 | },
599 | "node_modules/@oclif/core/node_modules/supports-color": {
600 | "version": "8.1.1",
601 | "dev": true,
602 | "license": "MIT",
603 | "dependencies": {
604 | "has-flag": "^4.0.0"
605 | },
606 | "engines": {
607 | "node": ">=10"
608 | },
609 | "funding": {
610 | "url": "https://github.com/chalk/supports-color?sponsor=1"
611 | }
612 | },
613 | "node_modules/@oclif/core/node_modules/wrap-ansi": {
614 | "version": "7.0.0",
615 | "dev": true,
616 | "license": "MIT",
617 | "dependencies": {
618 | "ansi-styles": "^4.0.0",
619 | "string-width": "^4.1.0",
620 | "strip-ansi": "^6.0.0"
621 | },
622 | "engines": {
623 | "node": ">=10"
624 | },
625 | "funding": {
626 | "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
627 | }
628 | },
629 | "node_modules/@phala/fn": {
630 | "version": "0.2.14",
631 | "resolved": "https://registry.npmjs.org/@phala/fn/-/fn-0.2.14.tgz",
632 | "integrity": "sha512-07D19VDEM9k2w7mc1dQFqrXHJGD07a+Nk/XpLqyckjxJJPOarsaBVdceJV+OakYnbYd4gAvM/niliybNl714EA==",
633 | "dev": true,
634 | "dependencies": {
635 | "@oclif/core": "^2",
636 | "@phala/pink-env": "^1.0.13",
637 | "@phala/sdk": "0.6.0-beta.14",
638 | "@types/node-fetch": "2",
639 | "chalk": "4",
640 | "dotenv": "^16.3.1",
641 | "ethers": "^6.7.1",
642 | "filesize": "^10.0.12",
643 | "inquirer": "8",
644 | "ora": "5",
645 | "quickjs-emscripten": "^0.23.0",
646 | "quickjs-emscripten-sync": "^1.5.2",
647 | "simple-git": "^3.19.1",
648 | "string-replace-loader": "^3.1.0",
649 | "sync-rpc": "^1.3.6",
650 | "terser-webpack-plugin": "^5.3.9",
651 | "ts-loader": "^9.4.4",
652 | "ts-node": "^10.9.1",
653 | "typescript": "^5.2.2",
654 | "undici": "^5.27.0",
655 | "upath": "^2.0.1",
656 | "webpack": "^5.88.2",
657 | "webpack-merge": "^5.9.0",
658 | "webpack-virtual-modules": "^0.5.0"
659 | },
660 | "bin": {
661 | "phat-fn": "bin/run"
662 | },
663 | "engines": {
664 | "node": ">=18"
665 | }
666 | },
667 | "node_modules/@phala/pink-env": {
668 | "version": "1.0.13",
669 | "dev": true,
670 | "license": "Apache-2.0"
671 | },
672 | "node_modules/@phala/sdk": {
673 | "version": "0.6.0-beta.14",
674 | "dev": true,
675 | "license": "Apache-2.0",
676 | "dependencies": {
677 | "@polkadot/api": "~10.11.1",
678 | "@polkadot/api-contract": "~10.11.1",
679 | "@polkadot/extension-inject": "~0.46.6",
680 | "@polkadot/keyring": "~12.6.1",
681 | "@polkadot/networks": "~12.6.1",
682 | "@polkadot/types": "~10.11.1",
683 | "@polkadot/types-augment": "~10.11.1",
684 | "@polkadot/types-codec": "~10.11.1",
685 | "@polkadot/ui-keyring": "~3.6.4",
686 | "@polkadot/ui-settings": "~3.6.4",
687 | "@polkadot/util": "~12.6.1",
688 | "@polkadot/util-crypto": "~12.6.1",
689 | "browserify-cipher": "^1.0.1",
690 | "cross-fetch": "^4.0.0",
691 | "protobufjs": "^7.2.4",
692 | "ramda": "^0.29.1",
693 | "randombytes": "^2.1.0",
694 | "rxjs": "^7.8.1",
695 | "viem": "^1.5.0"
696 | },
697 | "engines": {
698 | "node": ">=18"
699 | }
700 | },
701 | "node_modules/@phala/sdk/node_modules/@noble/curves": {
702 | "version": "1.2.0",
703 | "dev": true,
704 | "license": "MIT",
705 | "dependencies": {
706 | "@noble/hashes": "1.3.2"
707 | },
708 | "funding": {
709 | "url": "https://paulmillr.com/funding/"
710 | }
711 | },
712 | "node_modules/@phala/sdk/node_modules/@noble/hashes": {
713 | "version": "1.3.2",
714 | "dev": true,
715 | "license": "MIT",
716 | "engines": {
717 | "node": ">= 16"
718 | },
719 | "funding": {
720 | "url": "https://paulmillr.com/funding/"
721 | }
722 | },
723 | "node_modules/@phala/sdk/node_modules/abitype": {
724 | "version": "0.9.8",
725 | "dev": true,
726 | "funding": [
727 | {
728 | "type": "github",
729 | "url": "https://github.com/sponsors/wagmi-dev"
730 | }
731 | ],
732 | "license": "MIT",
733 | "peerDependencies": {
734 | "typescript": ">=5.0.4",
735 | "zod": "^3 >=3.19.1"
736 | },
737 | "peerDependenciesMeta": {
738 | "typescript": {
739 | "optional": true
740 | },
741 | "zod": {
742 | "optional": true
743 | }
744 | }
745 | },
746 | "node_modules/@phala/sdk/node_modules/viem": {
747 | "version": "1.21.4",
748 | "dev": true,
749 | "funding": [
750 | {
751 | "type": "github",
752 | "url": "https://github.com/sponsors/wevm"
753 | }
754 | ],
755 | "license": "MIT",
756 | "dependencies": {
757 | "@adraffy/ens-normalize": "1.10.0",
758 | "@noble/curves": "1.2.0",
759 | "@noble/hashes": "1.3.2",
760 | "@scure/bip32": "1.3.2",
761 | "@scure/bip39": "1.2.1",
762 | "abitype": "0.9.8",
763 | "isows": "1.0.3",
764 | "ws": "8.13.0"
765 | },
766 | "peerDependencies": {
767 | "typescript": ">=5.0.4"
768 | },
769 | "peerDependenciesMeta": {
770 | "typescript": {
771 | "optional": true
772 | }
773 | }
774 | },
775 | "node_modules/@polkadot/api": {
776 | "version": "10.11.2",
777 | "dev": true,
778 | "license": "Apache-2.0",
779 | "dependencies": {
780 | "@polkadot/api-augment": "10.11.2",
781 | "@polkadot/api-base": "10.11.2",
782 | "@polkadot/api-derive": "10.11.2",
783 | "@polkadot/keyring": "^12.6.2",
784 | "@polkadot/rpc-augment": "10.11.2",
785 | "@polkadot/rpc-core": "10.11.2",
786 | "@polkadot/rpc-provider": "10.11.2",
787 | "@polkadot/types": "10.11.2",
788 | "@polkadot/types-augment": "10.11.2",
789 | "@polkadot/types-codec": "10.11.2",
790 | "@polkadot/types-create": "10.11.2",
791 | "@polkadot/types-known": "10.11.2",
792 | "@polkadot/util": "^12.6.2",
793 | "@polkadot/util-crypto": "^12.6.2",
794 | "eventemitter3": "^5.0.1",
795 | "rxjs": "^7.8.1",
796 | "tslib": "^2.6.2"
797 | },
798 | "engines": {
799 | "node": ">=18"
800 | }
801 | },
802 | "node_modules/@polkadot/api-augment": {
803 | "version": "10.11.2",
804 | "dev": true,
805 | "license": "Apache-2.0",
806 | "dependencies": {
807 | "@polkadot/api-base": "10.11.2",
808 | "@polkadot/rpc-augment": "10.11.2",
809 | "@polkadot/types": "10.11.2",
810 | "@polkadot/types-augment": "10.11.2",
811 | "@polkadot/types-codec": "10.11.2",
812 | "@polkadot/util": "^12.6.2",
813 | "tslib": "^2.6.2"
814 | },
815 | "engines": {
816 | "node": ">=18"
817 | }
818 | },
819 | "node_modules/@polkadot/api-base": {
820 | "version": "10.11.2",
821 | "dev": true,
822 | "license": "Apache-2.0",
823 | "dependencies": {
824 | "@polkadot/rpc-core": "10.11.2",
825 | "@polkadot/types": "10.11.2",
826 | "@polkadot/util": "^12.6.2",
827 | "rxjs": "^7.8.1",
828 | "tslib": "^2.6.2"
829 | },
830 | "engines": {
831 | "node": ">=18"
832 | }
833 | },
834 | "node_modules/@polkadot/api-contract": {
835 | "version": "10.11.2",
836 | "dev": true,
837 | "license": "Apache-2.0",
838 | "dependencies": {
839 | "@polkadot/api": "10.11.2",
840 | "@polkadot/api-augment": "10.11.2",
841 | "@polkadot/types": "10.11.2",
842 | "@polkadot/types-codec": "10.11.2",
843 | "@polkadot/types-create": "10.11.2",
844 | "@polkadot/util": "^12.6.2",
845 | "@polkadot/util-crypto": "^12.6.2",
846 | "rxjs": "^7.8.1",
847 | "tslib": "^2.6.2"
848 | },
849 | "engines": {
850 | "node": ">=18"
851 | }
852 | },
853 | "node_modules/@polkadot/api-derive": {
854 | "version": "10.11.2",
855 | "dev": true,
856 | "license": "Apache-2.0",
857 | "dependencies": {
858 | "@polkadot/api": "10.11.2",
859 | "@polkadot/api-augment": "10.11.2",
860 | "@polkadot/api-base": "10.11.2",
861 | "@polkadot/rpc-core": "10.11.2",
862 | "@polkadot/types": "10.11.2",
863 | "@polkadot/types-codec": "10.11.2",
864 | "@polkadot/util": "^12.6.2",
865 | "@polkadot/util-crypto": "^12.6.2",
866 | "rxjs": "^7.8.1",
867 | "tslib": "^2.6.2"
868 | },
869 | "engines": {
870 | "node": ">=18"
871 | }
872 | },
873 | "node_modules/@polkadot/extension-inject": {
874 | "version": "0.46.6",
875 | "dev": true,
876 | "license": "Apache-2.0",
877 | "dependencies": {
878 | "@polkadot/api": "^10.11.1",
879 | "@polkadot/rpc-provider": "^10.11.1",
880 | "@polkadot/types": "^10.11.1",
881 | "@polkadot/util": "^12.6.1",
882 | "@polkadot/util-crypto": "^12.6.1",
883 | "@polkadot/x-global": "^12.6.1",
884 | "tslib": "^2.6.2"
885 | },
886 | "engines": {
887 | "node": ">=18"
888 | },
889 | "peerDependencies": {
890 | "@polkadot/api": "*",
891 | "@polkadot/util": "*"
892 | }
893 | },
894 | "node_modules/@polkadot/keyring": {
895 | "version": "12.6.2",
896 | "dev": true,
897 | "license": "Apache-2.0",
898 | "dependencies": {
899 | "@polkadot/util": "12.6.2",
900 | "@polkadot/util-crypto": "12.6.2",
901 | "tslib": "^2.6.2"
902 | },
903 | "engines": {
904 | "node": ">=18"
905 | },
906 | "peerDependencies": {
907 | "@polkadot/util": "12.6.2",
908 | "@polkadot/util-crypto": "12.6.2"
909 | }
910 | },
911 | "node_modules/@polkadot/networks": {
912 | "version": "12.6.2",
913 | "dev": true,
914 | "license": "Apache-2.0",
915 | "dependencies": {
916 | "@polkadot/util": "12.6.2",
917 | "@substrate/ss58-registry": "^1.44.0",
918 | "tslib": "^2.6.2"
919 | },
920 | "engines": {
921 | "node": ">=18"
922 | }
923 | },
924 | "node_modules/@polkadot/rpc-augment": {
925 | "version": "10.11.2",
926 | "dev": true,
927 | "license": "Apache-2.0",
928 | "dependencies": {
929 | "@polkadot/rpc-core": "10.11.2",
930 | "@polkadot/types": "10.11.2",
931 | "@polkadot/types-codec": "10.11.2",
932 | "@polkadot/util": "^12.6.2",
933 | "tslib": "^2.6.2"
934 | },
935 | "engines": {
936 | "node": ">=18"
937 | }
938 | },
939 | "node_modules/@polkadot/rpc-core": {
940 | "version": "10.11.2",
941 | "dev": true,
942 | "license": "Apache-2.0",
943 | "dependencies": {
944 | "@polkadot/rpc-augment": "10.11.2",
945 | "@polkadot/rpc-provider": "10.11.2",
946 | "@polkadot/types": "10.11.2",
947 | "@polkadot/util": "^12.6.2",
948 | "rxjs": "^7.8.1",
949 | "tslib": "^2.6.2"
950 | },
951 | "engines": {
952 | "node": ">=18"
953 | }
954 | },
955 | "node_modules/@polkadot/rpc-provider": {
956 | "version": "10.11.2",
957 | "dev": true,
958 | "license": "Apache-2.0",
959 | "dependencies": {
960 | "@polkadot/keyring": "^12.6.2",
961 | "@polkadot/types": "10.11.2",
962 | "@polkadot/types-support": "10.11.2",
963 | "@polkadot/util": "^12.6.2",
964 | "@polkadot/util-crypto": "^12.6.2",
965 | "@polkadot/x-fetch": "^12.6.2",
966 | "@polkadot/x-global": "^12.6.2",
967 | "@polkadot/x-ws": "^12.6.2",
968 | "eventemitter3": "^5.0.1",
969 | "mock-socket": "^9.3.1",
970 | "nock": "^13.4.0",
971 | "tslib": "^2.6.2"
972 | },
973 | "engines": {
974 | "node": ">=18"
975 | },
976 | "optionalDependencies": {
977 | "@substrate/connect": "0.7.35"
978 | }
979 | },
980 | "node_modules/@polkadot/types": {
981 | "version": "10.11.2",
982 | "dev": true,
983 | "license": "Apache-2.0",
984 | "dependencies": {
985 | "@polkadot/keyring": "^12.6.2",
986 | "@polkadot/types-augment": "10.11.2",
987 | "@polkadot/types-codec": "10.11.2",
988 | "@polkadot/types-create": "10.11.2",
989 | "@polkadot/util": "^12.6.2",
990 | "@polkadot/util-crypto": "^12.6.2",
991 | "rxjs": "^7.8.1",
992 | "tslib": "^2.6.2"
993 | },
994 | "engines": {
995 | "node": ">=18"
996 | }
997 | },
998 | "node_modules/@polkadot/types-augment": {
999 | "version": "10.11.2",
1000 | "dev": true,
1001 | "license": "Apache-2.0",
1002 | "dependencies": {
1003 | "@polkadot/types": "10.11.2",
1004 | "@polkadot/types-codec": "10.11.2",
1005 | "@polkadot/util": "^12.6.2",
1006 | "tslib": "^2.6.2"
1007 | },
1008 | "engines": {
1009 | "node": ">=18"
1010 | }
1011 | },
1012 | "node_modules/@polkadot/types-codec": {
1013 | "version": "10.11.2",
1014 | "dev": true,
1015 | "license": "Apache-2.0",
1016 | "dependencies": {
1017 | "@polkadot/util": "^12.6.2",
1018 | "@polkadot/x-bigint": "^12.6.2",
1019 | "tslib": "^2.6.2"
1020 | },
1021 | "engines": {
1022 | "node": ">=18"
1023 | }
1024 | },
1025 | "node_modules/@polkadot/types-create": {
1026 | "version": "10.11.2",
1027 | "dev": true,
1028 | "license": "Apache-2.0",
1029 | "dependencies": {
1030 | "@polkadot/types-codec": "10.11.2",
1031 | "@polkadot/util": "^12.6.2",
1032 | "tslib": "^2.6.2"
1033 | },
1034 | "engines": {
1035 | "node": ">=18"
1036 | }
1037 | },
1038 | "node_modules/@polkadot/types-known": {
1039 | "version": "10.11.2",
1040 | "dev": true,
1041 | "license": "Apache-2.0",
1042 | "dependencies": {
1043 | "@polkadot/networks": "^12.6.2",
1044 | "@polkadot/types": "10.11.2",
1045 | "@polkadot/types-codec": "10.11.2",
1046 | "@polkadot/types-create": "10.11.2",
1047 | "@polkadot/util": "^12.6.2",
1048 | "tslib": "^2.6.2"
1049 | },
1050 | "engines": {
1051 | "node": ">=18"
1052 | }
1053 | },
1054 | "node_modules/@polkadot/types-support": {
1055 | "version": "10.11.2",
1056 | "dev": true,
1057 | "license": "Apache-2.0",
1058 | "dependencies": {
1059 | "@polkadot/util": "^12.6.2",
1060 | "tslib": "^2.6.2"
1061 | },
1062 | "engines": {
1063 | "node": ">=18"
1064 | }
1065 | },
1066 | "node_modules/@polkadot/ui-keyring": {
1067 | "version": "3.6.4",
1068 | "dev": true,
1069 | "license": "Apache-2.0",
1070 | "dependencies": {
1071 | "@polkadot/keyring": "^12.6.1",
1072 | "@polkadot/ui-settings": "3.6.4",
1073 | "@polkadot/util": "^12.6.1",
1074 | "@polkadot/util-crypto": "^12.6.1",
1075 | "mkdirp": "^3.0.1",
1076 | "rxjs": "^7.8.1",
1077 | "store": "^2.0.12",
1078 | "tslib": "^2.6.2"
1079 | },
1080 | "engines": {
1081 | "node": ">=18"
1082 | },
1083 | "peerDependencies": {
1084 | "@polkadot/keyring": "*",
1085 | "@polkadot/ui-settings": "*",
1086 | "@polkadot/util": "*"
1087 | }
1088 | },
1089 | "node_modules/@polkadot/ui-keyring/node_modules/mkdirp": {
1090 | "version": "3.0.1",
1091 | "dev": true,
1092 | "license": "MIT",
1093 | "bin": {
1094 | "mkdirp": "dist/cjs/src/bin.js"
1095 | },
1096 | "engines": {
1097 | "node": ">=10"
1098 | },
1099 | "funding": {
1100 | "url": "https://github.com/sponsors/isaacs"
1101 | }
1102 | },
1103 | "node_modules/@polkadot/ui-settings": {
1104 | "version": "3.6.4",
1105 | "dev": true,
1106 | "license": "Apache-2.0",
1107 | "dependencies": {
1108 | "@polkadot/networks": "^12.6.1",
1109 | "@polkadot/util": "^12.6.1",
1110 | "eventemitter3": "^5.0.1",
1111 | "store": "^2.0.12",
1112 | "tslib": "^2.6.2"
1113 | },
1114 | "engines": {
1115 | "node": ">=18"
1116 | },
1117 | "peerDependencies": {
1118 | "@polkadot/networks": "*",
1119 | "@polkadot/util": "*"
1120 | }
1121 | },
1122 | "node_modules/@polkadot/util": {
1123 | "version": "12.6.2",
1124 | "dev": true,
1125 | "license": "Apache-2.0",
1126 | "dependencies": {
1127 | "@polkadot/x-bigint": "12.6.2",
1128 | "@polkadot/x-global": "12.6.2",
1129 | "@polkadot/x-textdecoder": "12.6.2",
1130 | "@polkadot/x-textencoder": "12.6.2",
1131 | "@types/bn.js": "^5.1.5",
1132 | "bn.js": "^5.2.1",
1133 | "tslib": "^2.6.2"
1134 | },
1135 | "engines": {
1136 | "node": ">=18"
1137 | }
1138 | },
1139 | "node_modules/@polkadot/util-crypto": {
1140 | "version": "12.6.2",
1141 | "dev": true,
1142 | "license": "Apache-2.0",
1143 | "dependencies": {
1144 | "@noble/curves": "^1.3.0",
1145 | "@noble/hashes": "^1.3.3",
1146 | "@polkadot/networks": "12.6.2",
1147 | "@polkadot/util": "12.6.2",
1148 | "@polkadot/wasm-crypto": "^7.3.2",
1149 | "@polkadot/wasm-util": "^7.3.2",
1150 | "@polkadot/x-bigint": "12.6.2",
1151 | "@polkadot/x-randomvalues": "12.6.2",
1152 | "@scure/base": "^1.1.5",
1153 | "tslib": "^2.6.2"
1154 | },
1155 | "engines": {
1156 | "node": ">=18"
1157 | },
1158 | "peerDependencies": {
1159 | "@polkadot/util": "12.6.2"
1160 | }
1161 | },
1162 | "node_modules/@polkadot/util-crypto/node_modules/@noble/curves": {
1163 | "version": "1.3.0",
1164 | "dev": true,
1165 | "license": "MIT",
1166 | "dependencies": {
1167 | "@noble/hashes": "1.3.3"
1168 | },
1169 | "funding": {
1170 | "url": "https://paulmillr.com/funding/"
1171 | }
1172 | },
1173 | "node_modules/@polkadot/wasm-bridge": {
1174 | "version": "7.3.2",
1175 | "dev": true,
1176 | "license": "Apache-2.0",
1177 | "dependencies": {
1178 | "@polkadot/wasm-util": "7.3.2",
1179 | "tslib": "^2.6.2"
1180 | },
1181 | "engines": {
1182 | "node": ">=18"
1183 | },
1184 | "peerDependencies": {
1185 | "@polkadot/util": "*",
1186 | "@polkadot/x-randomvalues": "*"
1187 | }
1188 | },
1189 | "node_modules/@polkadot/wasm-crypto": {
1190 | "version": "7.3.2",
1191 | "dev": true,
1192 | "license": "Apache-2.0",
1193 | "dependencies": {
1194 | "@polkadot/wasm-bridge": "7.3.2",
1195 | "@polkadot/wasm-crypto-asmjs": "7.3.2",
1196 | "@polkadot/wasm-crypto-init": "7.3.2",
1197 | "@polkadot/wasm-crypto-wasm": "7.3.2",
1198 | "@polkadot/wasm-util": "7.3.2",
1199 | "tslib": "^2.6.2"
1200 | },
1201 | "engines": {
1202 | "node": ">=18"
1203 | },
1204 | "peerDependencies": {
1205 | "@polkadot/util": "*",
1206 | "@polkadot/x-randomvalues": "*"
1207 | }
1208 | },
1209 | "node_modules/@polkadot/wasm-crypto-asmjs": {
1210 | "version": "7.3.2",
1211 | "dev": true,
1212 | "license": "Apache-2.0",
1213 | "dependencies": {
1214 | "tslib": "^2.6.2"
1215 | },
1216 | "engines": {
1217 | "node": ">=18"
1218 | },
1219 | "peerDependencies": {
1220 | "@polkadot/util": "*"
1221 | }
1222 | },
1223 | "node_modules/@polkadot/wasm-crypto-init": {
1224 | "version": "7.3.2",
1225 | "dev": true,
1226 | "license": "Apache-2.0",
1227 | "dependencies": {
1228 | "@polkadot/wasm-bridge": "7.3.2",
1229 | "@polkadot/wasm-crypto-asmjs": "7.3.2",
1230 | "@polkadot/wasm-crypto-wasm": "7.3.2",
1231 | "@polkadot/wasm-util": "7.3.2",
1232 | "tslib": "^2.6.2"
1233 | },
1234 | "engines": {
1235 | "node": ">=18"
1236 | },
1237 | "peerDependencies": {
1238 | "@polkadot/util": "*",
1239 | "@polkadot/x-randomvalues": "*"
1240 | }
1241 | },
1242 | "node_modules/@polkadot/wasm-crypto-wasm": {
1243 | "version": "7.3.2",
1244 | "dev": true,
1245 | "license": "Apache-2.0",
1246 | "dependencies": {
1247 | "@polkadot/wasm-util": "7.3.2",
1248 | "tslib": "^2.6.2"
1249 | },
1250 | "engines": {
1251 | "node": ">=18"
1252 | },
1253 | "peerDependencies": {
1254 | "@polkadot/util": "*"
1255 | }
1256 | },
1257 | "node_modules/@polkadot/wasm-util": {
1258 | "version": "7.3.2",
1259 | "dev": true,
1260 | "license": "Apache-2.0",
1261 | "dependencies": {
1262 | "tslib": "^2.6.2"
1263 | },
1264 | "engines": {
1265 | "node": ">=18"
1266 | },
1267 | "peerDependencies": {
1268 | "@polkadot/util": "*"
1269 | }
1270 | },
1271 | "node_modules/@polkadot/x-bigint": {
1272 | "version": "12.6.2",
1273 | "dev": true,
1274 | "license": "Apache-2.0",
1275 | "dependencies": {
1276 | "@polkadot/x-global": "12.6.2",
1277 | "tslib": "^2.6.2"
1278 | },
1279 | "engines": {
1280 | "node": ">=18"
1281 | }
1282 | },
1283 | "node_modules/@polkadot/x-fetch": {
1284 | "version": "12.6.2",
1285 | "dev": true,
1286 | "license": "Apache-2.0",
1287 | "dependencies": {
1288 | "@polkadot/x-global": "12.6.2",
1289 | "node-fetch": "^3.3.2",
1290 | "tslib": "^2.6.2"
1291 | },
1292 | "engines": {
1293 | "node": ">=18"
1294 | }
1295 | },
1296 | "node_modules/@polkadot/x-fetch/node_modules/node-fetch": {
1297 | "version": "3.3.2",
1298 | "dev": true,
1299 | "license": "MIT",
1300 | "dependencies": {
1301 | "data-uri-to-buffer": "^4.0.0",
1302 | "fetch-blob": "^3.1.4",
1303 | "formdata-polyfill": "^4.0.10"
1304 | },
1305 | "engines": {
1306 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
1307 | },
1308 | "funding": {
1309 | "type": "opencollective",
1310 | "url": "https://opencollective.com/node-fetch"
1311 | }
1312 | },
1313 | "node_modules/@polkadot/x-global": {
1314 | "version": "12.6.2",
1315 | "dev": true,
1316 | "license": "Apache-2.0",
1317 | "dependencies": {
1318 | "tslib": "^2.6.2"
1319 | },
1320 | "engines": {
1321 | "node": ">=18"
1322 | }
1323 | },
1324 | "node_modules/@polkadot/x-randomvalues": {
1325 | "version": "12.6.2",
1326 | "dev": true,
1327 | "license": "Apache-2.0",
1328 | "dependencies": {
1329 | "@polkadot/x-global": "12.6.2",
1330 | "tslib": "^2.6.2"
1331 | },
1332 | "engines": {
1333 | "node": ">=18"
1334 | },
1335 | "peerDependencies": {
1336 | "@polkadot/util": "12.6.2",
1337 | "@polkadot/wasm-util": "*"
1338 | }
1339 | },
1340 | "node_modules/@polkadot/x-textdecoder": {
1341 | "version": "12.6.2",
1342 | "dev": true,
1343 | "license": "Apache-2.0",
1344 | "dependencies": {
1345 | "@polkadot/x-global": "12.6.2",
1346 | "tslib": "^2.6.2"
1347 | },
1348 | "engines": {
1349 | "node": ">=18"
1350 | }
1351 | },
1352 | "node_modules/@polkadot/x-textencoder": {
1353 | "version": "12.6.2",
1354 | "dev": true,
1355 | "license": "Apache-2.0",
1356 | "dependencies": {
1357 | "@polkadot/x-global": "12.6.2",
1358 | "tslib": "^2.6.2"
1359 | },
1360 | "engines": {
1361 | "node": ">=18"
1362 | }
1363 | },
1364 | "node_modules/@polkadot/x-ws": {
1365 | "version": "12.6.2",
1366 | "dev": true,
1367 | "license": "Apache-2.0",
1368 | "dependencies": {
1369 | "@polkadot/x-global": "12.6.2",
1370 | "tslib": "^2.6.2",
1371 | "ws": "^8.15.1"
1372 | },
1373 | "engines": {
1374 | "node": ">=18"
1375 | }
1376 | },
1377 | "node_modules/@polkadot/x-ws/node_modules/ws": {
1378 | "version": "8.16.0",
1379 | "dev": true,
1380 | "license": "MIT",
1381 | "engines": {
1382 | "node": ">=10.0.0"
1383 | },
1384 | "peerDependencies": {
1385 | "bufferutil": "^4.0.1",
1386 | "utf-8-validate": ">=5.0.2"
1387 | },
1388 | "peerDependenciesMeta": {
1389 | "bufferutil": {
1390 | "optional": true
1391 | },
1392 | "utf-8-validate": {
1393 | "optional": true
1394 | }
1395 | }
1396 | },
1397 | "node_modules/@protobufjs/aspromise": {
1398 | "version": "1.1.2",
1399 | "dev": true,
1400 | "license": "BSD-3-Clause"
1401 | },
1402 | "node_modules/@protobufjs/base64": {
1403 | "version": "1.1.2",
1404 | "dev": true,
1405 | "license": "BSD-3-Clause"
1406 | },
1407 | "node_modules/@protobufjs/codegen": {
1408 | "version": "2.0.4",
1409 | "dev": true,
1410 | "license": "BSD-3-Clause"
1411 | },
1412 | "node_modules/@protobufjs/eventemitter": {
1413 | "version": "1.1.0",
1414 | "dev": true,
1415 | "license": "BSD-3-Clause"
1416 | },
1417 | "node_modules/@protobufjs/fetch": {
1418 | "version": "1.1.0",
1419 | "dev": true,
1420 | "license": "BSD-3-Clause",
1421 | "dependencies": {
1422 | "@protobufjs/aspromise": "^1.1.1",
1423 | "@protobufjs/inquire": "^1.1.0"
1424 | }
1425 | },
1426 | "node_modules/@protobufjs/float": {
1427 | "version": "1.0.2",
1428 | "dev": true,
1429 | "license": "BSD-3-Clause"
1430 | },
1431 | "node_modules/@protobufjs/inquire": {
1432 | "version": "1.1.0",
1433 | "dev": true,
1434 | "license": "BSD-3-Clause"
1435 | },
1436 | "node_modules/@protobufjs/path": {
1437 | "version": "1.1.2",
1438 | "dev": true,
1439 | "license": "BSD-3-Clause"
1440 | },
1441 | "node_modules/@protobufjs/pool": {
1442 | "version": "1.1.0",
1443 | "dev": true,
1444 | "license": "BSD-3-Clause"
1445 | },
1446 | "node_modules/@protobufjs/utf8": {
1447 | "version": "1.1.0",
1448 | "dev": true,
1449 | "license": "BSD-3-Clause"
1450 | },
1451 | "node_modules/@scure/base": {
1452 | "version": "1.1.5",
1453 | "license": "MIT",
1454 | "funding": {
1455 | "url": "https://paulmillr.com/funding/"
1456 | }
1457 | },
1458 | "node_modules/@scure/bip32": {
1459 | "version": "1.3.2",
1460 | "license": "MIT",
1461 | "dependencies": {
1462 | "@noble/curves": "~1.2.0",
1463 | "@noble/hashes": "~1.3.2",
1464 | "@scure/base": "~1.1.2"
1465 | },
1466 | "funding": {
1467 | "url": "https://paulmillr.com/funding/"
1468 | }
1469 | },
1470 | "node_modules/@scure/bip39": {
1471 | "version": "1.2.1",
1472 | "license": "MIT",
1473 | "dependencies": {
1474 | "@noble/hashes": "~1.3.0",
1475 | "@scure/base": "~1.1.0"
1476 | },
1477 | "funding": {
1478 | "url": "https://paulmillr.com/funding/"
1479 | }
1480 | },
1481 | "node_modules/@substrate/connect": {
1482 | "version": "0.7.35",
1483 | "dev": true,
1484 | "hasInstallScript": true,
1485 | "license": "GPL-3.0-only",
1486 | "optional": true,
1487 | "dependencies": {
1488 | "@substrate/connect-extension-protocol": "^1.0.1",
1489 | "smoldot": "2.0.7"
1490 | }
1491 | },
1492 | "node_modules/@substrate/connect-extension-protocol": {
1493 | "version": "1.0.1",
1494 | "dev": true,
1495 | "license": "GPL-3.0-only",
1496 | "optional": true
1497 | },
1498 | "node_modules/@substrate/ss58-registry": {
1499 | "version": "1.46.0",
1500 | "dev": true,
1501 | "license": "Apache-2.0"
1502 | },
1503 | "node_modules/@tsconfig/node10": {
1504 | "version": "1.0.9",
1505 | "dev": true,
1506 | "license": "MIT"
1507 | },
1508 | "node_modules/@tsconfig/node12": {
1509 | "version": "1.0.11",
1510 | "dev": true,
1511 | "license": "MIT"
1512 | },
1513 | "node_modules/@tsconfig/node14": {
1514 | "version": "1.0.3",
1515 | "dev": true,
1516 | "license": "MIT"
1517 | },
1518 | "node_modules/@tsconfig/node16": {
1519 | "version": "1.0.4",
1520 | "dev": true,
1521 | "license": "MIT"
1522 | },
1523 | "node_modules/@types/bn.js": {
1524 | "version": "5.1.5",
1525 | "dev": true,
1526 | "license": "MIT",
1527 | "dependencies": {
1528 | "@types/node": "*"
1529 | }
1530 | },
1531 | "node_modules/@types/cli-progress": {
1532 | "version": "3.11.5",
1533 | "dev": true,
1534 | "license": "MIT",
1535 | "dependencies": {
1536 | "@types/node": "*"
1537 | }
1538 | },
1539 | "node_modules/@types/eslint": {
1540 | "version": "8.56.2",
1541 | "dev": true,
1542 | "license": "MIT",
1543 | "dependencies": {
1544 | "@types/estree": "*",
1545 | "@types/json-schema": "*"
1546 | }
1547 | },
1548 | "node_modules/@types/eslint-scope": {
1549 | "version": "3.7.7",
1550 | "dev": true,
1551 | "license": "MIT",
1552 | "dependencies": {
1553 | "@types/eslint": "*",
1554 | "@types/estree": "*"
1555 | }
1556 | },
1557 | "node_modules/@types/estree": {
1558 | "version": "1.0.5",
1559 | "dev": true,
1560 | "license": "MIT"
1561 | },
1562 | "node_modules/@types/json-schema": {
1563 | "version": "7.0.15",
1564 | "dev": true,
1565 | "license": "MIT"
1566 | },
1567 | "node_modules/@types/node": {
1568 | "version": "20.11.16",
1569 | "dev": true,
1570 | "license": "MIT",
1571 | "dependencies": {
1572 | "undici-types": "~5.26.4"
1573 | }
1574 | },
1575 | "node_modules/@types/node-fetch": {
1576 | "version": "2.6.11",
1577 | "dev": true,
1578 | "license": "MIT",
1579 | "dependencies": {
1580 | "@types/node": "*",
1581 | "form-data": "^4.0.0"
1582 | }
1583 | },
1584 | "node_modules/@types/prettier": {
1585 | "version": "2.7.3",
1586 | "dev": true,
1587 | "license": "MIT"
1588 | },
1589 | "node_modules/@webassemblyjs/ast": {
1590 | "version": "1.11.6",
1591 | "dev": true,
1592 | "license": "MIT",
1593 | "dependencies": {
1594 | "@webassemblyjs/helper-numbers": "1.11.6",
1595 | "@webassemblyjs/helper-wasm-bytecode": "1.11.6"
1596 | }
1597 | },
1598 | "node_modules/@webassemblyjs/floating-point-hex-parser": {
1599 | "version": "1.11.6",
1600 | "dev": true,
1601 | "license": "MIT"
1602 | },
1603 | "node_modules/@webassemblyjs/helper-api-error": {
1604 | "version": "1.11.6",
1605 | "dev": true,
1606 | "license": "MIT"
1607 | },
1608 | "node_modules/@webassemblyjs/helper-buffer": {
1609 | "version": "1.11.6",
1610 | "dev": true,
1611 | "license": "MIT"
1612 | },
1613 | "node_modules/@webassemblyjs/helper-numbers": {
1614 | "version": "1.11.6",
1615 | "dev": true,
1616 | "license": "MIT",
1617 | "dependencies": {
1618 | "@webassemblyjs/floating-point-hex-parser": "1.11.6",
1619 | "@webassemblyjs/helper-api-error": "1.11.6",
1620 | "@xtuc/long": "4.2.2"
1621 | }
1622 | },
1623 | "node_modules/@webassemblyjs/helper-wasm-bytecode": {
1624 | "version": "1.11.6",
1625 | "dev": true,
1626 | "license": "MIT"
1627 | },
1628 | "node_modules/@webassemblyjs/helper-wasm-section": {
1629 | "version": "1.11.6",
1630 | "dev": true,
1631 | "license": "MIT",
1632 | "dependencies": {
1633 | "@webassemblyjs/ast": "1.11.6",
1634 | "@webassemblyjs/helper-buffer": "1.11.6",
1635 | "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
1636 | "@webassemblyjs/wasm-gen": "1.11.6"
1637 | }
1638 | },
1639 | "node_modules/@webassemblyjs/ieee754": {
1640 | "version": "1.11.6",
1641 | "dev": true,
1642 | "license": "MIT",
1643 | "dependencies": {
1644 | "@xtuc/ieee754": "^1.2.0"
1645 | }
1646 | },
1647 | "node_modules/@webassemblyjs/leb128": {
1648 | "version": "1.11.6",
1649 | "dev": true,
1650 | "license": "Apache-2.0",
1651 | "dependencies": {
1652 | "@xtuc/long": "4.2.2"
1653 | }
1654 | },
1655 | "node_modules/@webassemblyjs/utf8": {
1656 | "version": "1.11.6",
1657 | "dev": true,
1658 | "license": "MIT"
1659 | },
1660 | "node_modules/@webassemblyjs/wasm-edit": {
1661 | "version": "1.11.6",
1662 | "dev": true,
1663 | "license": "MIT",
1664 | "dependencies": {
1665 | "@webassemblyjs/ast": "1.11.6",
1666 | "@webassemblyjs/helper-buffer": "1.11.6",
1667 | "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
1668 | "@webassemblyjs/helper-wasm-section": "1.11.6",
1669 | "@webassemblyjs/wasm-gen": "1.11.6",
1670 | "@webassemblyjs/wasm-opt": "1.11.6",
1671 | "@webassemblyjs/wasm-parser": "1.11.6",
1672 | "@webassemblyjs/wast-printer": "1.11.6"
1673 | }
1674 | },
1675 | "node_modules/@webassemblyjs/wasm-gen": {
1676 | "version": "1.11.6",
1677 | "dev": true,
1678 | "license": "MIT",
1679 | "dependencies": {
1680 | "@webassemblyjs/ast": "1.11.6",
1681 | "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
1682 | "@webassemblyjs/ieee754": "1.11.6",
1683 | "@webassemblyjs/leb128": "1.11.6",
1684 | "@webassemblyjs/utf8": "1.11.6"
1685 | }
1686 | },
1687 | "node_modules/@webassemblyjs/wasm-opt": {
1688 | "version": "1.11.6",
1689 | "dev": true,
1690 | "license": "MIT",
1691 | "dependencies": {
1692 | "@webassemblyjs/ast": "1.11.6",
1693 | "@webassemblyjs/helper-buffer": "1.11.6",
1694 | "@webassemblyjs/wasm-gen": "1.11.6",
1695 | "@webassemblyjs/wasm-parser": "1.11.6"
1696 | }
1697 | },
1698 | "node_modules/@webassemblyjs/wasm-parser": {
1699 | "version": "1.11.6",
1700 | "dev": true,
1701 | "license": "MIT",
1702 | "dependencies": {
1703 | "@webassemblyjs/ast": "1.11.6",
1704 | "@webassemblyjs/helper-api-error": "1.11.6",
1705 | "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
1706 | "@webassemblyjs/ieee754": "1.11.6",
1707 | "@webassemblyjs/leb128": "1.11.6",
1708 | "@webassemblyjs/utf8": "1.11.6"
1709 | }
1710 | },
1711 | "node_modules/@webassemblyjs/wast-printer": {
1712 | "version": "1.11.6",
1713 | "dev": true,
1714 | "license": "MIT",
1715 | "dependencies": {
1716 | "@webassemblyjs/ast": "1.11.6",
1717 | "@xtuc/long": "4.2.2"
1718 | }
1719 | },
1720 | "node_modules/@xtuc/ieee754": {
1721 | "version": "1.2.0",
1722 | "dev": true,
1723 | "license": "BSD-3-Clause"
1724 | },
1725 | "node_modules/@xtuc/long": {
1726 | "version": "4.2.2",
1727 | "dev": true,
1728 | "license": "Apache-2.0"
1729 | },
1730 | "node_modules/abitype": {
1731 | "version": "1.0.0",
1732 | "license": "MIT",
1733 | "peer": true,
1734 | "funding": {
1735 | "url": "https://github.com/sponsors/wevm"
1736 | },
1737 | "peerDependencies": {
1738 | "typescript": ">=5.0.4",
1739 | "zod": "^3 >=3.22.0"
1740 | },
1741 | "peerDependenciesMeta": {
1742 | "typescript": {
1743 | "optional": true
1744 | },
1745 | "zod": {
1746 | "optional": true
1747 | }
1748 | }
1749 | },
1750 | "node_modules/acorn": {
1751 | "version": "8.11.3",
1752 | "dev": true,
1753 | "license": "MIT",
1754 | "bin": {
1755 | "acorn": "bin/acorn"
1756 | },
1757 | "engines": {
1758 | "node": ">=0.4.0"
1759 | }
1760 | },
1761 | "node_modules/acorn-import-assertions": {
1762 | "version": "1.9.0",
1763 | "dev": true,
1764 | "license": "MIT",
1765 | "peerDependencies": {
1766 | "acorn": "^8"
1767 | }
1768 | },
1769 | "node_modules/acorn-walk": {
1770 | "version": "8.3.2",
1771 | "dev": true,
1772 | "license": "MIT",
1773 | "engines": {
1774 | "node": ">=0.4.0"
1775 | }
1776 | },
1777 | "node_modules/aes-js": {
1778 | "version": "4.0.0-beta.5",
1779 | "dev": true,
1780 | "license": "MIT"
1781 | },
1782 | "node_modules/ajv": {
1783 | "version": "6.12.6",
1784 | "dev": true,
1785 | "license": "MIT",
1786 | "dependencies": {
1787 | "fast-deep-equal": "^3.1.1",
1788 | "fast-json-stable-stringify": "^2.0.0",
1789 | "json-schema-traverse": "^0.4.1",
1790 | "uri-js": "^4.2.2"
1791 | },
1792 | "funding": {
1793 | "type": "github",
1794 | "url": "https://github.com/sponsors/epoberezkin"
1795 | }
1796 | },
1797 | "node_modules/ajv-keywords": {
1798 | "version": "3.5.2",
1799 | "dev": true,
1800 | "license": "MIT",
1801 | "peerDependencies": {
1802 | "ajv": "^6.9.1"
1803 | }
1804 | },
1805 | "node_modules/ansi-escapes": {
1806 | "version": "4.3.2",
1807 | "dev": true,
1808 | "license": "MIT",
1809 | "dependencies": {
1810 | "type-fest": "^0.21.3"
1811 | },
1812 | "engines": {
1813 | "node": ">=8"
1814 | },
1815 | "funding": {
1816 | "url": "https://github.com/sponsors/sindresorhus"
1817 | }
1818 | },
1819 | "node_modules/ansi-regex": {
1820 | "version": "5.0.1",
1821 | "dev": true,
1822 | "license": "MIT",
1823 | "engines": {
1824 | "node": ">=8"
1825 | }
1826 | },
1827 | "node_modules/ansi-styles": {
1828 | "version": "4.3.0",
1829 | "dev": true,
1830 | "license": "MIT",
1831 | "dependencies": {
1832 | "color-convert": "^2.0.1"
1833 | },
1834 | "engines": {
1835 | "node": ">=8"
1836 | },
1837 | "funding": {
1838 | "url": "https://github.com/chalk/ansi-styles?sponsor=1"
1839 | }
1840 | },
1841 | "node_modules/ansicolors": {
1842 | "version": "0.3.2",
1843 | "dev": true,
1844 | "license": "MIT"
1845 | },
1846 | "node_modules/arg": {
1847 | "version": "4.1.3",
1848 | "dev": true,
1849 | "license": "MIT"
1850 | },
1851 | "node_modules/argparse": {
1852 | "version": "1.0.10",
1853 | "dev": true,
1854 | "license": "MIT",
1855 | "dependencies": {
1856 | "sprintf-js": "~1.0.2"
1857 | }
1858 | },
1859 | "node_modules/array-back": {
1860 | "version": "3.1.0",
1861 | "dev": true,
1862 | "license": "MIT",
1863 | "engines": {
1864 | "node": ">=6"
1865 | }
1866 | },
1867 | "node_modules/array-union": {
1868 | "version": "2.1.0",
1869 | "dev": true,
1870 | "license": "MIT",
1871 | "engines": {
1872 | "node": ">=8"
1873 | }
1874 | },
1875 | "node_modules/astral-regex": {
1876 | "version": "2.0.0",
1877 | "dev": true,
1878 | "license": "MIT",
1879 | "engines": {
1880 | "node": ">=8"
1881 | }
1882 | },
1883 | "node_modules/async": {
1884 | "version": "3.2.5",
1885 | "dev": true,
1886 | "license": "MIT"
1887 | },
1888 | "node_modules/asynckit": {
1889 | "version": "0.4.0",
1890 | "dev": true,
1891 | "license": "MIT"
1892 | },
1893 | "node_modules/balanced-match": {
1894 | "version": "1.0.2",
1895 | "dev": true,
1896 | "license": "MIT"
1897 | },
1898 | "node_modules/base64-js": {
1899 | "version": "1.5.1",
1900 | "dev": true,
1901 | "funding": [
1902 | {
1903 | "type": "github",
1904 | "url": "https://github.com/sponsors/feross"
1905 | },
1906 | {
1907 | "type": "patreon",
1908 | "url": "https://www.patreon.com/feross"
1909 | },
1910 | {
1911 | "type": "consulting",
1912 | "url": "https://feross.org/support"
1913 | }
1914 | ],
1915 | "license": "MIT"
1916 | },
1917 | "node_modules/big.js": {
1918 | "version": "5.2.2",
1919 | "dev": true,
1920 | "license": "MIT",
1921 | "engines": {
1922 | "node": "*"
1923 | }
1924 | },
1925 | "node_modules/bl": {
1926 | "version": "4.1.0",
1927 | "dev": true,
1928 | "license": "MIT",
1929 | "dependencies": {
1930 | "buffer": "^5.5.0",
1931 | "inherits": "^2.0.4",
1932 | "readable-stream": "^3.4.0"
1933 | }
1934 | },
1935 | "node_modules/bn.js": {
1936 | "version": "5.2.1",
1937 | "dev": true,
1938 | "license": "MIT"
1939 | },
1940 | "node_modules/brace-expansion": {
1941 | "version": "2.0.1",
1942 | "dev": true,
1943 | "license": "MIT",
1944 | "dependencies": {
1945 | "balanced-match": "^1.0.0"
1946 | }
1947 | },
1948 | "node_modules/braces": {
1949 | "version": "3.0.2",
1950 | "dev": true,
1951 | "license": "MIT",
1952 | "dependencies": {
1953 | "fill-range": "^7.0.1"
1954 | },
1955 | "engines": {
1956 | "node": ">=8"
1957 | }
1958 | },
1959 | "node_modules/browserify-aes": {
1960 | "version": "1.2.0",
1961 | "dev": true,
1962 | "license": "MIT",
1963 | "dependencies": {
1964 | "buffer-xor": "^1.0.3",
1965 | "cipher-base": "^1.0.0",
1966 | "create-hash": "^1.1.0",
1967 | "evp_bytestokey": "^1.0.3",
1968 | "inherits": "^2.0.1",
1969 | "safe-buffer": "^5.0.1"
1970 | }
1971 | },
1972 | "node_modules/browserify-cipher": {
1973 | "version": "1.0.1",
1974 | "dev": true,
1975 | "license": "MIT",
1976 | "dependencies": {
1977 | "browserify-aes": "^1.0.4",
1978 | "browserify-des": "^1.0.0",
1979 | "evp_bytestokey": "^1.0.0"
1980 | }
1981 | },
1982 | "node_modules/browserify-des": {
1983 | "version": "1.0.2",
1984 | "dev": true,
1985 | "license": "MIT",
1986 | "dependencies": {
1987 | "cipher-base": "^1.0.1",
1988 | "des.js": "^1.0.0",
1989 | "inherits": "^2.0.1",
1990 | "safe-buffer": "^5.1.2"
1991 | }
1992 | },
1993 | "node_modules/browserslist": {
1994 | "version": "4.22.3",
1995 | "dev": true,
1996 | "funding": [
1997 | {
1998 | "type": "opencollective",
1999 | "url": "https://opencollective.com/browserslist"
2000 | },
2001 | {
2002 | "type": "tidelift",
2003 | "url": "https://tidelift.com/funding/github/npm/browserslist"
2004 | },
2005 | {
2006 | "type": "github",
2007 | "url": "https://github.com/sponsors/ai"
2008 | }
2009 | ],
2010 | "license": "MIT",
2011 | "dependencies": {
2012 | "caniuse-lite": "^1.0.30001580",
2013 | "electron-to-chromium": "^1.4.648",
2014 | "node-releases": "^2.0.14",
2015 | "update-browserslist-db": "^1.0.13"
2016 | },
2017 | "bin": {
2018 | "browserslist": "cli.js"
2019 | },
2020 | "engines": {
2021 | "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
2022 | }
2023 | },
2024 | "node_modules/buffer": {
2025 | "version": "5.7.1",
2026 | "dev": true,
2027 | "funding": [
2028 | {
2029 | "type": "github",
2030 | "url": "https://github.com/sponsors/feross"
2031 | },
2032 | {
2033 | "type": "patreon",
2034 | "url": "https://www.patreon.com/feross"
2035 | },
2036 | {
2037 | "type": "consulting",
2038 | "url": "https://feross.org/support"
2039 | }
2040 | ],
2041 | "license": "MIT",
2042 | "dependencies": {
2043 | "base64-js": "^1.3.1",
2044 | "ieee754": "^1.1.13"
2045 | }
2046 | },
2047 | "node_modules/buffer-from": {
2048 | "version": "1.1.2",
2049 | "dev": true,
2050 | "license": "MIT"
2051 | },
2052 | "node_modules/buffer-xor": {
2053 | "version": "1.0.3",
2054 | "dev": true,
2055 | "license": "MIT"
2056 | },
2057 | "node_modules/caniuse-lite": {
2058 | "version": "1.0.30001584",
2059 | "dev": true,
2060 | "funding": [
2061 | {
2062 | "type": "opencollective",
2063 | "url": "https://opencollective.com/browserslist"
2064 | },
2065 | {
2066 | "type": "tidelift",
2067 | "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
2068 | },
2069 | {
2070 | "type": "github",
2071 | "url": "https://github.com/sponsors/ai"
2072 | }
2073 | ],
2074 | "license": "CC-BY-4.0"
2075 | },
2076 | "node_modules/cardinal": {
2077 | "version": "2.1.1",
2078 | "dev": true,
2079 | "license": "MIT",
2080 | "dependencies": {
2081 | "ansicolors": "~0.3.2",
2082 | "redeyed": "~2.1.0"
2083 | },
2084 | "bin": {
2085 | "cdl": "bin/cdl.js"
2086 | }
2087 | },
2088 | "node_modules/chalk": {
2089 | "version": "4.1.2",
2090 | "dev": true,
2091 | "license": "MIT",
2092 | "dependencies": {
2093 | "ansi-styles": "^4.1.0",
2094 | "supports-color": "^7.1.0"
2095 | },
2096 | "engines": {
2097 | "node": ">=10"
2098 | },
2099 | "funding": {
2100 | "url": "https://github.com/chalk/chalk?sponsor=1"
2101 | }
2102 | },
2103 | "node_modules/chardet": {
2104 | "version": "0.7.0",
2105 | "dev": true,
2106 | "license": "MIT"
2107 | },
2108 | "node_modules/chrome-trace-event": {
2109 | "version": "1.0.3",
2110 | "dev": true,
2111 | "license": "MIT",
2112 | "engines": {
2113 | "node": ">=6.0"
2114 | }
2115 | },
2116 | "node_modules/cipher-base": {
2117 | "version": "1.0.4",
2118 | "dev": true,
2119 | "license": "MIT",
2120 | "dependencies": {
2121 | "inherits": "^2.0.1",
2122 | "safe-buffer": "^5.0.1"
2123 | }
2124 | },
2125 | "node_modules/clean-stack": {
2126 | "version": "3.0.1",
2127 | "dev": true,
2128 | "license": "MIT",
2129 | "dependencies": {
2130 | "escape-string-regexp": "4.0.0"
2131 | },
2132 | "engines": {
2133 | "node": ">=10"
2134 | },
2135 | "funding": {
2136 | "url": "https://github.com/sponsors/sindresorhus"
2137 | }
2138 | },
2139 | "node_modules/clean-stack/node_modules/escape-string-regexp": {
2140 | "version": "4.0.0",
2141 | "dev": true,
2142 | "license": "MIT",
2143 | "engines": {
2144 | "node": ">=10"
2145 | },
2146 | "funding": {
2147 | "url": "https://github.com/sponsors/sindresorhus"
2148 | }
2149 | },
2150 | "node_modules/cli-cursor": {
2151 | "version": "3.1.0",
2152 | "dev": true,
2153 | "license": "MIT",
2154 | "dependencies": {
2155 | "restore-cursor": "^3.1.0"
2156 | },
2157 | "engines": {
2158 | "node": ">=8"
2159 | }
2160 | },
2161 | "node_modules/cli-progress": {
2162 | "version": "3.12.0",
2163 | "dev": true,
2164 | "license": "MIT",
2165 | "dependencies": {
2166 | "string-width": "^4.2.3"
2167 | },
2168 | "engines": {
2169 | "node": ">=4"
2170 | }
2171 | },
2172 | "node_modules/cli-spinners": {
2173 | "version": "2.9.2",
2174 | "dev": true,
2175 | "license": "MIT",
2176 | "engines": {
2177 | "node": ">=6"
2178 | },
2179 | "funding": {
2180 | "url": "https://github.com/sponsors/sindresorhus"
2181 | }
2182 | },
2183 | "node_modules/cli-width": {
2184 | "version": "3.0.0",
2185 | "dev": true,
2186 | "license": "ISC",
2187 | "engines": {
2188 | "node": ">= 10"
2189 | }
2190 | },
2191 | "node_modules/clone": {
2192 | "version": "1.0.4",
2193 | "dev": true,
2194 | "license": "MIT",
2195 | "engines": {
2196 | "node": ">=0.8"
2197 | }
2198 | },
2199 | "node_modules/clone-deep": {
2200 | "version": "4.0.1",
2201 | "dev": true,
2202 | "license": "MIT",
2203 | "dependencies": {
2204 | "is-plain-object": "^2.0.4",
2205 | "kind-of": "^6.0.2",
2206 | "shallow-clone": "^3.0.0"
2207 | },
2208 | "engines": {
2209 | "node": ">=6"
2210 | }
2211 | },
2212 | "node_modules/color-convert": {
2213 | "version": "2.0.1",
2214 | "dev": true,
2215 | "license": "MIT",
2216 | "dependencies": {
2217 | "color-name": "~1.1.4"
2218 | },
2219 | "engines": {
2220 | "node": ">=7.0.0"
2221 | }
2222 | },
2223 | "node_modules/color-name": {
2224 | "version": "1.1.4",
2225 | "dev": true,
2226 | "license": "MIT"
2227 | },
2228 | "node_modules/combined-stream": {
2229 | "version": "1.0.8",
2230 | "dev": true,
2231 | "license": "MIT",
2232 | "dependencies": {
2233 | "delayed-stream": "~1.0.0"
2234 | },
2235 | "engines": {
2236 | "node": ">= 0.8"
2237 | }
2238 | },
2239 | "node_modules/command-line-args": {
2240 | "version": "5.2.1",
2241 | "dev": true,
2242 | "license": "MIT",
2243 | "dependencies": {
2244 | "array-back": "^3.1.0",
2245 | "find-replace": "^3.0.0",
2246 | "lodash.camelcase": "^4.3.0",
2247 | "typical": "^4.0.0"
2248 | },
2249 | "engines": {
2250 | "node": ">=4.0.0"
2251 | }
2252 | },
2253 | "node_modules/command-line-args/node_modules/typical": {
2254 | "version": "4.0.0",
2255 | "dev": true,
2256 | "license": "MIT",
2257 | "engines": {
2258 | "node": ">=8"
2259 | }
2260 | },
2261 | "node_modules/command-line-usage": {
2262 | "version": "6.1.3",
2263 | "dev": true,
2264 | "license": "MIT",
2265 | "dependencies": {
2266 | "array-back": "^4.0.2",
2267 | "chalk": "^2.4.2",
2268 | "table-layout": "^1.0.2",
2269 | "typical": "^5.2.0"
2270 | },
2271 | "engines": {
2272 | "node": ">=8.0.0"
2273 | }
2274 | },
2275 | "node_modules/command-line-usage/node_modules/ansi-styles": {
2276 | "version": "3.2.1",
2277 | "dev": true,
2278 | "license": "MIT",
2279 | "dependencies": {
2280 | "color-convert": "^1.9.0"
2281 | },
2282 | "engines": {
2283 | "node": ">=4"
2284 | }
2285 | },
2286 | "node_modules/command-line-usage/node_modules/array-back": {
2287 | "version": "4.0.2",
2288 | "dev": true,
2289 | "license": "MIT",
2290 | "engines": {
2291 | "node": ">=8"
2292 | }
2293 | },
2294 | "node_modules/command-line-usage/node_modules/chalk": {
2295 | "version": "2.4.2",
2296 | "dev": true,
2297 | "license": "MIT",
2298 | "dependencies": {
2299 | "ansi-styles": "^3.2.1",
2300 | "escape-string-regexp": "^1.0.5",
2301 | "supports-color": "^5.3.0"
2302 | },
2303 | "engines": {
2304 | "node": ">=4"
2305 | }
2306 | },
2307 | "node_modules/command-line-usage/node_modules/color-convert": {
2308 | "version": "1.9.3",
2309 | "dev": true,
2310 | "license": "MIT",
2311 | "dependencies": {
2312 | "color-name": "1.1.3"
2313 | }
2314 | },
2315 | "node_modules/command-line-usage/node_modules/color-name": {
2316 | "version": "1.1.3",
2317 | "dev": true,
2318 | "license": "MIT"
2319 | },
2320 | "node_modules/command-line-usage/node_modules/has-flag": {
2321 | "version": "3.0.0",
2322 | "dev": true,
2323 | "license": "MIT",
2324 | "engines": {
2325 | "node": ">=4"
2326 | }
2327 | },
2328 | "node_modules/command-line-usage/node_modules/supports-color": {
2329 | "version": "5.5.0",
2330 | "dev": true,
2331 | "license": "MIT",
2332 | "dependencies": {
2333 | "has-flag": "^3.0.0"
2334 | },
2335 | "engines": {
2336 | "node": ">=4"
2337 | }
2338 | },
2339 | "node_modules/commander": {
2340 | "version": "2.20.3",
2341 | "dev": true,
2342 | "license": "MIT"
2343 | },
2344 | "node_modules/concat-map": {
2345 | "version": "0.0.1",
2346 | "dev": true,
2347 | "license": "MIT"
2348 | },
2349 | "node_modules/create-hash": {
2350 | "version": "1.2.0",
2351 | "dev": true,
2352 | "license": "MIT",
2353 | "dependencies": {
2354 | "cipher-base": "^1.0.1",
2355 | "inherits": "^2.0.1",
2356 | "md5.js": "^1.3.4",
2357 | "ripemd160": "^2.0.1",
2358 | "sha.js": "^2.4.0"
2359 | }
2360 | },
2361 | "node_modules/create-require": {
2362 | "version": "1.1.1",
2363 | "dev": true,
2364 | "license": "MIT"
2365 | },
2366 | "node_modules/cross-fetch": {
2367 | "version": "4.0.0",
2368 | "dev": true,
2369 | "license": "MIT",
2370 | "dependencies": {
2371 | "node-fetch": "^2.6.12"
2372 | }
2373 | },
2374 | "node_modules/cross-spawn": {
2375 | "version": "7.0.3",
2376 | "dev": true,
2377 | "license": "MIT",
2378 | "dependencies": {
2379 | "path-key": "^3.1.0",
2380 | "shebang-command": "^2.0.0",
2381 | "which": "^2.0.1"
2382 | },
2383 | "engines": {
2384 | "node": ">= 8"
2385 | }
2386 | },
2387 | "node_modules/data-uri-to-buffer": {
2388 | "version": "4.0.1",
2389 | "dev": true,
2390 | "license": "MIT",
2391 | "engines": {
2392 | "node": ">= 12"
2393 | }
2394 | },
2395 | "node_modules/debug": {
2396 | "version": "4.3.4",
2397 | "dev": true,
2398 | "license": "MIT",
2399 | "dependencies": {
2400 | "ms": "2.1.2"
2401 | },
2402 | "engines": {
2403 | "node": ">=6.0"
2404 | },
2405 | "peerDependenciesMeta": {
2406 | "supports-color": {
2407 | "optional": true
2408 | }
2409 | }
2410 | },
2411 | "node_modules/deep-extend": {
2412 | "version": "0.6.0",
2413 | "dev": true,
2414 | "license": "MIT",
2415 | "engines": {
2416 | "node": ">=4.0.0"
2417 | }
2418 | },
2419 | "node_modules/defaults": {
2420 | "version": "1.0.4",
2421 | "dev": true,
2422 | "license": "MIT",
2423 | "dependencies": {
2424 | "clone": "^1.0.2"
2425 | },
2426 | "funding": {
2427 | "url": "https://github.com/sponsors/sindresorhus"
2428 | }
2429 | },
2430 | "node_modules/delayed-stream": {
2431 | "version": "1.0.0",
2432 | "dev": true,
2433 | "license": "MIT",
2434 | "engines": {
2435 | "node": ">=0.4.0"
2436 | }
2437 | },
2438 | "node_modules/des.js": {
2439 | "version": "1.1.0",
2440 | "dev": true,
2441 | "license": "MIT",
2442 | "dependencies": {
2443 | "inherits": "^2.0.1",
2444 | "minimalistic-assert": "^1.0.0"
2445 | }
2446 | },
2447 | "node_modules/diff": {
2448 | "version": "4.0.2",
2449 | "dev": true,
2450 | "license": "BSD-3-Clause",
2451 | "engines": {
2452 | "node": ">=0.3.1"
2453 | }
2454 | },
2455 | "node_modules/dir-glob": {
2456 | "version": "3.0.1",
2457 | "dev": true,
2458 | "license": "MIT",
2459 | "dependencies": {
2460 | "path-type": "^4.0.0"
2461 | },
2462 | "engines": {
2463 | "node": ">=8"
2464 | }
2465 | },
2466 | "node_modules/dotenv": {
2467 | "version": "16.4.1",
2468 | "dev": true,
2469 | "license": "BSD-2-Clause",
2470 | "engines": {
2471 | "node": ">=12"
2472 | },
2473 | "funding": {
2474 | "url": "https://github.com/motdotla/dotenv?sponsor=1"
2475 | }
2476 | },
2477 | "node_modules/ejs": {
2478 | "version": "3.1.9",
2479 | "dev": true,
2480 | "license": "Apache-2.0",
2481 | "dependencies": {
2482 | "jake": "^10.8.5"
2483 | },
2484 | "bin": {
2485 | "ejs": "bin/cli.js"
2486 | },
2487 | "engines": {
2488 | "node": ">=0.10.0"
2489 | }
2490 | },
2491 | "node_modules/electron-to-chromium": {
2492 | "version": "1.4.656",
2493 | "dev": true,
2494 | "license": "ISC"
2495 | },
2496 | "node_modules/emoji-regex": {
2497 | "version": "8.0.0",
2498 | "dev": true,
2499 | "license": "MIT"
2500 | },
2501 | "node_modules/emojis-list": {
2502 | "version": "3.0.0",
2503 | "dev": true,
2504 | "license": "MIT",
2505 | "engines": {
2506 | "node": ">= 4"
2507 | }
2508 | },
2509 | "node_modules/enhanced-resolve": {
2510 | "version": "5.15.0",
2511 | "dev": true,
2512 | "license": "MIT",
2513 | "dependencies": {
2514 | "graceful-fs": "^4.2.4",
2515 | "tapable": "^2.2.0"
2516 | },
2517 | "engines": {
2518 | "node": ">=10.13.0"
2519 | }
2520 | },
2521 | "node_modules/es-module-lexer": {
2522 | "version": "1.4.1",
2523 | "dev": true,
2524 | "license": "MIT"
2525 | },
2526 | "node_modules/esbuild": {
2527 | "version": "0.19.12",
2528 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz",
2529 | "integrity": "sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==",
2530 | "dev": true,
2531 | "hasInstallScript": true,
2532 | "bin": {
2533 | "esbuild": "bin/esbuild"
2534 | },
2535 | "engines": {
2536 | "node": ">=12"
2537 | },
2538 | "optionalDependencies": {
2539 | "@esbuild/aix-ppc64": "0.19.12",
2540 | "@esbuild/android-arm": "0.19.12",
2541 | "@esbuild/android-arm64": "0.19.12",
2542 | "@esbuild/android-x64": "0.19.12",
2543 | "@esbuild/darwin-arm64": "0.19.12",
2544 | "@esbuild/darwin-x64": "0.19.12",
2545 | "@esbuild/freebsd-arm64": "0.19.12",
2546 | "@esbuild/freebsd-x64": "0.19.12",
2547 | "@esbuild/linux-arm": "0.19.12",
2548 | "@esbuild/linux-arm64": "0.19.12",
2549 | "@esbuild/linux-ia32": "0.19.12",
2550 | "@esbuild/linux-loong64": "0.19.12",
2551 | "@esbuild/linux-mips64el": "0.19.12",
2552 | "@esbuild/linux-ppc64": "0.19.12",
2553 | "@esbuild/linux-riscv64": "0.19.12",
2554 | "@esbuild/linux-s390x": "0.19.12",
2555 | "@esbuild/linux-x64": "0.19.12",
2556 | "@esbuild/netbsd-x64": "0.19.12",
2557 | "@esbuild/openbsd-x64": "0.19.12",
2558 | "@esbuild/sunos-x64": "0.19.12",
2559 | "@esbuild/win32-arm64": "0.19.12",
2560 | "@esbuild/win32-ia32": "0.19.12",
2561 | "@esbuild/win32-x64": "0.19.12"
2562 | }
2563 | },
2564 | "node_modules/escalade": {
2565 | "version": "3.1.1",
2566 | "dev": true,
2567 | "license": "MIT",
2568 | "engines": {
2569 | "node": ">=6"
2570 | }
2571 | },
2572 | "node_modules/escape-string-regexp": {
2573 | "version": "1.0.5",
2574 | "dev": true,
2575 | "license": "MIT",
2576 | "engines": {
2577 | "node": ">=0.8.0"
2578 | }
2579 | },
2580 | "node_modules/eslint-scope": {
2581 | "version": "5.1.1",
2582 | "dev": true,
2583 | "license": "BSD-2-Clause",
2584 | "dependencies": {
2585 | "esrecurse": "^4.3.0",
2586 | "estraverse": "^4.1.1"
2587 | },
2588 | "engines": {
2589 | "node": ">=8.0.0"
2590 | }
2591 | },
2592 | "node_modules/esprima": {
2593 | "version": "4.0.1",
2594 | "dev": true,
2595 | "license": "BSD-2-Clause",
2596 | "bin": {
2597 | "esparse": "bin/esparse.js",
2598 | "esvalidate": "bin/esvalidate.js"
2599 | },
2600 | "engines": {
2601 | "node": ">=4"
2602 | }
2603 | },
2604 | "node_modules/esrecurse": {
2605 | "version": "4.3.0",
2606 | "dev": true,
2607 | "license": "BSD-2-Clause",
2608 | "dependencies": {
2609 | "estraverse": "^5.2.0"
2610 | },
2611 | "engines": {
2612 | "node": ">=4.0"
2613 | }
2614 | },
2615 | "node_modules/esrecurse/node_modules/estraverse": {
2616 | "version": "5.3.0",
2617 | "dev": true,
2618 | "license": "BSD-2-Clause",
2619 | "engines": {
2620 | "node": ">=4.0"
2621 | }
2622 | },
2623 | "node_modules/estraverse": {
2624 | "version": "4.3.0",
2625 | "dev": true,
2626 | "license": "BSD-2-Clause",
2627 | "engines": {
2628 | "node": ">=4.0"
2629 | }
2630 | },
2631 | "node_modules/ethers": {
2632 | "version": "6.10.0",
2633 | "dev": true,
2634 | "funding": [
2635 | {
2636 | "type": "individual",
2637 | "url": "https://github.com/sponsors/ethers-io/"
2638 | },
2639 | {
2640 | "type": "individual",
2641 | "url": "https://www.buymeacoffee.com/ricmoo"
2642 | }
2643 | ],
2644 | "license": "MIT",
2645 | "dependencies": {
2646 | "@adraffy/ens-normalize": "1.10.0",
2647 | "@noble/curves": "1.2.0",
2648 | "@noble/hashes": "1.3.2",
2649 | "@types/node": "18.15.13",
2650 | "aes-js": "4.0.0-beta.5",
2651 | "tslib": "2.4.0",
2652 | "ws": "8.5.0"
2653 | },
2654 | "engines": {
2655 | "node": ">=14.0.0"
2656 | }
2657 | },
2658 | "node_modules/ethers/node_modules/@noble/curves": {
2659 | "version": "1.2.0",
2660 | "dev": true,
2661 | "license": "MIT",
2662 | "dependencies": {
2663 | "@noble/hashes": "1.3.2"
2664 | },
2665 | "funding": {
2666 | "url": "https://paulmillr.com/funding/"
2667 | }
2668 | },
2669 | "node_modules/ethers/node_modules/@noble/hashes": {
2670 | "version": "1.3.2",
2671 | "dev": true,
2672 | "license": "MIT",
2673 | "engines": {
2674 | "node": ">= 16"
2675 | },
2676 | "funding": {
2677 | "url": "https://paulmillr.com/funding/"
2678 | }
2679 | },
2680 | "node_modules/ethers/node_modules/@types/node": {
2681 | "version": "18.15.13",
2682 | "dev": true,
2683 | "license": "MIT"
2684 | },
2685 | "node_modules/ethers/node_modules/tslib": {
2686 | "version": "2.4.0",
2687 | "dev": true,
2688 | "license": "0BSD"
2689 | },
2690 | "node_modules/ethers/node_modules/ws": {
2691 | "version": "8.5.0",
2692 | "dev": true,
2693 | "license": "MIT",
2694 | "engines": {
2695 | "node": ">=10.0.0"
2696 | },
2697 | "peerDependencies": {
2698 | "bufferutil": "^4.0.1",
2699 | "utf-8-validate": "^5.0.2"
2700 | },
2701 | "peerDependenciesMeta": {
2702 | "bufferutil": {
2703 | "optional": true
2704 | },
2705 | "utf-8-validate": {
2706 | "optional": true
2707 | }
2708 | }
2709 | },
2710 | "node_modules/eventemitter3": {
2711 | "version": "5.0.1",
2712 | "dev": true,
2713 | "license": "MIT"
2714 | },
2715 | "node_modules/events": {
2716 | "version": "3.3.0",
2717 | "dev": true,
2718 | "license": "MIT",
2719 | "engines": {
2720 | "node": ">=0.8.x"
2721 | }
2722 | },
2723 | "node_modules/evp_bytestokey": {
2724 | "version": "1.0.3",
2725 | "dev": true,
2726 | "license": "MIT",
2727 | "dependencies": {
2728 | "md5.js": "^1.3.4",
2729 | "safe-buffer": "^5.1.1"
2730 | }
2731 | },
2732 | "node_modules/external-editor": {
2733 | "version": "3.1.0",
2734 | "dev": true,
2735 | "license": "MIT",
2736 | "dependencies": {
2737 | "chardet": "^0.7.0",
2738 | "iconv-lite": "^0.4.24",
2739 | "tmp": "^0.0.33"
2740 | },
2741 | "engines": {
2742 | "node": ">=4"
2743 | }
2744 | },
2745 | "node_modules/fast-deep-equal": {
2746 | "version": "3.1.3",
2747 | "dev": true,
2748 | "license": "MIT"
2749 | },
2750 | "node_modules/fast-glob": {
2751 | "version": "3.3.2",
2752 | "dev": true,
2753 | "license": "MIT",
2754 | "dependencies": {
2755 | "@nodelib/fs.stat": "^2.0.2",
2756 | "@nodelib/fs.walk": "^1.2.3",
2757 | "glob-parent": "^5.1.2",
2758 | "merge2": "^1.3.0",
2759 | "micromatch": "^4.0.4"
2760 | },
2761 | "engines": {
2762 | "node": ">=8.6.0"
2763 | }
2764 | },
2765 | "node_modules/fast-json-stable-stringify": {
2766 | "version": "2.1.0",
2767 | "dev": true,
2768 | "license": "MIT"
2769 | },
2770 | "node_modules/fastq": {
2771 | "version": "1.17.0",
2772 | "dev": true,
2773 | "license": "ISC",
2774 | "dependencies": {
2775 | "reusify": "^1.0.4"
2776 | }
2777 | },
2778 | "node_modules/fetch-blob": {
2779 | "version": "3.2.0",
2780 | "dev": true,
2781 | "funding": [
2782 | {
2783 | "type": "github",
2784 | "url": "https://github.com/sponsors/jimmywarting"
2785 | },
2786 | {
2787 | "type": "paypal",
2788 | "url": "https://paypal.me/jimmywarting"
2789 | }
2790 | ],
2791 | "license": "MIT",
2792 | "dependencies": {
2793 | "node-domexception": "^1.0.0",
2794 | "web-streams-polyfill": "^3.0.3"
2795 | },
2796 | "engines": {
2797 | "node": "^12.20 || >= 14.13"
2798 | }
2799 | },
2800 | "node_modules/figures": {
2801 | "version": "3.2.0",
2802 | "dev": true,
2803 | "license": "MIT",
2804 | "dependencies": {
2805 | "escape-string-regexp": "^1.0.5"
2806 | },
2807 | "engines": {
2808 | "node": ">=8"
2809 | },
2810 | "funding": {
2811 | "url": "https://github.com/sponsors/sindresorhus"
2812 | }
2813 | },
2814 | "node_modules/filelist": {
2815 | "version": "1.0.4",
2816 | "dev": true,
2817 | "license": "Apache-2.0",
2818 | "dependencies": {
2819 | "minimatch": "^5.0.1"
2820 | }
2821 | },
2822 | "node_modules/filelist/node_modules/minimatch": {
2823 | "version": "5.1.6",
2824 | "dev": true,
2825 | "license": "ISC",
2826 | "dependencies": {
2827 | "brace-expansion": "^2.0.1"
2828 | },
2829 | "engines": {
2830 | "node": ">=10"
2831 | }
2832 | },
2833 | "node_modules/filesize": {
2834 | "version": "10.1.0",
2835 | "dev": true,
2836 | "license": "BSD-3-Clause",
2837 | "engines": {
2838 | "node": ">= 10.4.0"
2839 | }
2840 | },
2841 | "node_modules/fill-range": {
2842 | "version": "7.0.1",
2843 | "dev": true,
2844 | "license": "MIT",
2845 | "dependencies": {
2846 | "to-regex-range": "^5.0.1"
2847 | },
2848 | "engines": {
2849 | "node": ">=8"
2850 | }
2851 | },
2852 | "node_modules/find-replace": {
2853 | "version": "3.0.0",
2854 | "dev": true,
2855 | "license": "MIT",
2856 | "dependencies": {
2857 | "array-back": "^3.0.1"
2858 | },
2859 | "engines": {
2860 | "node": ">=4.0.0"
2861 | }
2862 | },
2863 | "node_modules/flat": {
2864 | "version": "5.0.2",
2865 | "dev": true,
2866 | "license": "BSD-3-Clause",
2867 | "bin": {
2868 | "flat": "cli.js"
2869 | }
2870 | },
2871 | "node_modules/form-data": {
2872 | "version": "4.0.0",
2873 | "dev": true,
2874 | "license": "MIT",
2875 | "dependencies": {
2876 | "asynckit": "^0.4.0",
2877 | "combined-stream": "^1.0.8",
2878 | "mime-types": "^2.1.12"
2879 | },
2880 | "engines": {
2881 | "node": ">= 6"
2882 | }
2883 | },
2884 | "node_modules/formdata-polyfill": {
2885 | "version": "4.0.10",
2886 | "dev": true,
2887 | "license": "MIT",
2888 | "dependencies": {
2889 | "fetch-blob": "^3.1.2"
2890 | },
2891 | "engines": {
2892 | "node": ">=12.20.0"
2893 | }
2894 | },
2895 | "node_modules/fs-extra": {
2896 | "version": "7.0.1",
2897 | "dev": true,
2898 | "license": "MIT",
2899 | "dependencies": {
2900 | "graceful-fs": "^4.1.2",
2901 | "jsonfile": "^4.0.0",
2902 | "universalify": "^0.1.0"
2903 | },
2904 | "engines": {
2905 | "node": ">=6 <7 || >=8"
2906 | }
2907 | },
2908 | "node_modules/fs.realpath": {
2909 | "version": "1.0.0",
2910 | "dev": true,
2911 | "license": "ISC"
2912 | },
2913 | "node_modules/fsevents": {
2914 | "version": "2.3.3",
2915 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
2916 | "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
2917 | "dev": true,
2918 | "hasInstallScript": true,
2919 | "optional": true,
2920 | "os": [
2921 | "darwin"
2922 | ],
2923 | "engines": {
2924 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
2925 | }
2926 | },
2927 | "node_modules/get-package-type": {
2928 | "version": "0.1.0",
2929 | "dev": true,
2930 | "license": "MIT",
2931 | "engines": {
2932 | "node": ">=8.0.0"
2933 | }
2934 | },
2935 | "node_modules/get-port": {
2936 | "version": "3.2.0",
2937 | "dev": true,
2938 | "license": "MIT",
2939 | "engines": {
2940 | "node": ">=4"
2941 | }
2942 | },
2943 | "node_modules/get-tsconfig": {
2944 | "version": "4.7.2",
2945 | "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz",
2946 | "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==",
2947 | "dev": true,
2948 | "dependencies": {
2949 | "resolve-pkg-maps": "^1.0.0"
2950 | },
2951 | "funding": {
2952 | "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
2953 | }
2954 | },
2955 | "node_modules/glob": {
2956 | "version": "7.1.7",
2957 | "dev": true,
2958 | "license": "ISC",
2959 | "dependencies": {
2960 | "fs.realpath": "^1.0.0",
2961 | "inflight": "^1.0.4",
2962 | "inherits": "2",
2963 | "minimatch": "^3.0.4",
2964 | "once": "^1.3.0",
2965 | "path-is-absolute": "^1.0.0"
2966 | },
2967 | "engines": {
2968 | "node": "*"
2969 | },
2970 | "funding": {
2971 | "url": "https://github.com/sponsors/isaacs"
2972 | }
2973 | },
2974 | "node_modules/glob-parent": {
2975 | "version": "5.1.2",
2976 | "dev": true,
2977 | "license": "ISC",
2978 | "dependencies": {
2979 | "is-glob": "^4.0.1"
2980 | },
2981 | "engines": {
2982 | "node": ">= 6"
2983 | }
2984 | },
2985 | "node_modules/glob-to-regexp": {
2986 | "version": "0.4.1",
2987 | "dev": true,
2988 | "license": "BSD-2-Clause"
2989 | },
2990 | "node_modules/globby": {
2991 | "version": "11.1.0",
2992 | "dev": true,
2993 | "license": "MIT",
2994 | "dependencies": {
2995 | "array-union": "^2.1.0",
2996 | "dir-glob": "^3.0.1",
2997 | "fast-glob": "^3.2.9",
2998 | "ignore": "^5.2.0",
2999 | "merge2": "^1.4.1",
3000 | "slash": "^3.0.0"
3001 | },
3002 | "engines": {
3003 | "node": ">=10"
3004 | },
3005 | "funding": {
3006 | "url": "https://github.com/sponsors/sindresorhus"
3007 | }
3008 | },
3009 | "node_modules/graceful-fs": {
3010 | "version": "4.2.11",
3011 | "dev": true,
3012 | "license": "ISC"
3013 | },
3014 | "node_modules/has-flag": {
3015 | "version": "4.0.0",
3016 | "dev": true,
3017 | "license": "MIT",
3018 | "engines": {
3019 | "node": ">=8"
3020 | }
3021 | },
3022 | "node_modules/hash-base": {
3023 | "version": "3.1.0",
3024 | "dev": true,
3025 | "license": "MIT",
3026 | "dependencies": {
3027 | "inherits": "^2.0.4",
3028 | "readable-stream": "^3.6.0",
3029 | "safe-buffer": "^5.2.0"
3030 | },
3031 | "engines": {
3032 | "node": ">=4"
3033 | }
3034 | },
3035 | "node_modules/hyperlinker": {
3036 | "version": "1.0.0",
3037 | "dev": true,
3038 | "license": "MIT",
3039 | "engines": {
3040 | "node": ">=4"
3041 | }
3042 | },
3043 | "node_modules/iconv-lite": {
3044 | "version": "0.4.24",
3045 | "dev": true,
3046 | "license": "MIT",
3047 | "dependencies": {
3048 | "safer-buffer": ">= 2.1.2 < 3"
3049 | },
3050 | "engines": {
3051 | "node": ">=0.10.0"
3052 | }
3053 | },
3054 | "node_modules/ieee754": {
3055 | "version": "1.2.1",
3056 | "dev": true,
3057 | "funding": [
3058 | {
3059 | "type": "github",
3060 | "url": "https://github.com/sponsors/feross"
3061 | },
3062 | {
3063 | "type": "patreon",
3064 | "url": "https://www.patreon.com/feross"
3065 | },
3066 | {
3067 | "type": "consulting",
3068 | "url": "https://feross.org/support"
3069 | }
3070 | ],
3071 | "license": "BSD-3-Clause"
3072 | },
3073 | "node_modules/ignore": {
3074 | "version": "5.3.1",
3075 | "dev": true,
3076 | "license": "MIT",
3077 | "engines": {
3078 | "node": ">= 4"
3079 | }
3080 | },
3081 | "node_modules/indent-string": {
3082 | "version": "4.0.0",
3083 | "dev": true,
3084 | "license": "MIT",
3085 | "engines": {
3086 | "node": ">=8"
3087 | }
3088 | },
3089 | "node_modules/inflight": {
3090 | "version": "1.0.6",
3091 | "dev": true,
3092 | "license": "ISC",
3093 | "dependencies": {
3094 | "once": "^1.3.0",
3095 | "wrappy": "1"
3096 | }
3097 | },
3098 | "node_modules/inherits": {
3099 | "version": "2.0.4",
3100 | "dev": true,
3101 | "license": "ISC"
3102 | },
3103 | "node_modules/inquirer": {
3104 | "version": "8.2.6",
3105 | "dev": true,
3106 | "license": "MIT",
3107 | "dependencies": {
3108 | "ansi-escapes": "^4.2.1",
3109 | "chalk": "^4.1.1",
3110 | "cli-cursor": "^3.1.0",
3111 | "cli-width": "^3.0.0",
3112 | "external-editor": "^3.0.3",
3113 | "figures": "^3.0.0",
3114 | "lodash": "^4.17.21",
3115 | "mute-stream": "0.0.8",
3116 | "ora": "^5.4.1",
3117 | "run-async": "^2.4.0",
3118 | "rxjs": "^7.5.5",
3119 | "string-width": "^4.1.0",
3120 | "strip-ansi": "^6.0.0",
3121 | "through": "^2.3.6",
3122 | "wrap-ansi": "^6.0.1"
3123 | },
3124 | "engines": {
3125 | "node": ">=12.0.0"
3126 | }
3127 | },
3128 | "node_modules/is-docker": {
3129 | "version": "2.2.1",
3130 | "dev": true,
3131 | "license": "MIT",
3132 | "bin": {
3133 | "is-docker": "cli.js"
3134 | },
3135 | "engines": {
3136 | "node": ">=8"
3137 | },
3138 | "funding": {
3139 | "url": "https://github.com/sponsors/sindresorhus"
3140 | }
3141 | },
3142 | "node_modules/is-extglob": {
3143 | "version": "2.1.1",
3144 | "dev": true,
3145 | "license": "MIT",
3146 | "engines": {
3147 | "node": ">=0.10.0"
3148 | }
3149 | },
3150 | "node_modules/is-fullwidth-code-point": {
3151 | "version": "3.0.0",
3152 | "dev": true,
3153 | "license": "MIT",
3154 | "engines": {
3155 | "node": ">=8"
3156 | }
3157 | },
3158 | "node_modules/is-glob": {
3159 | "version": "4.0.3",
3160 | "dev": true,
3161 | "license": "MIT",
3162 | "dependencies": {
3163 | "is-extglob": "^2.1.1"
3164 | },
3165 | "engines": {
3166 | "node": ">=0.10.0"
3167 | }
3168 | },
3169 | "node_modules/is-interactive": {
3170 | "version": "1.0.0",
3171 | "dev": true,
3172 | "license": "MIT",
3173 | "engines": {
3174 | "node": ">=8"
3175 | }
3176 | },
3177 | "node_modules/is-number": {
3178 | "version": "7.0.0",
3179 | "dev": true,
3180 | "license": "MIT",
3181 | "engines": {
3182 | "node": ">=0.12.0"
3183 | }
3184 | },
3185 | "node_modules/is-plain-object": {
3186 | "version": "2.0.4",
3187 | "dev": true,
3188 | "license": "MIT",
3189 | "dependencies": {
3190 | "isobject": "^3.0.1"
3191 | },
3192 | "engines": {
3193 | "node": ">=0.10.0"
3194 | }
3195 | },
3196 | "node_modules/is-unicode-supported": {
3197 | "version": "0.1.0",
3198 | "dev": true,
3199 | "license": "MIT",
3200 | "engines": {
3201 | "node": ">=10"
3202 | },
3203 | "funding": {
3204 | "url": "https://github.com/sponsors/sindresorhus"
3205 | }
3206 | },
3207 | "node_modules/is-wsl": {
3208 | "version": "2.2.0",
3209 | "dev": true,
3210 | "license": "MIT",
3211 | "dependencies": {
3212 | "is-docker": "^2.0.0"
3213 | },
3214 | "engines": {
3215 | "node": ">=8"
3216 | }
3217 | },
3218 | "node_modules/isexe": {
3219 | "version": "2.0.0",
3220 | "dev": true,
3221 | "license": "ISC"
3222 | },
3223 | "node_modules/isobject": {
3224 | "version": "3.0.1",
3225 | "dev": true,
3226 | "license": "MIT",
3227 | "engines": {
3228 | "node": ">=0.10.0"
3229 | }
3230 | },
3231 | "node_modules/isows": {
3232 | "version": "1.0.3",
3233 | "funding": [
3234 | {
3235 | "type": "github",
3236 | "url": "https://github.com/sponsors/wagmi-dev"
3237 | }
3238 | ],
3239 | "license": "MIT",
3240 | "peerDependencies": {
3241 | "ws": "*"
3242 | }
3243 | },
3244 | "node_modules/jake": {
3245 | "version": "10.8.7",
3246 | "dev": true,
3247 | "license": "Apache-2.0",
3248 | "dependencies": {
3249 | "async": "^3.2.3",
3250 | "chalk": "^4.0.2",
3251 | "filelist": "^1.0.4",
3252 | "minimatch": "^3.1.2"
3253 | },
3254 | "bin": {
3255 | "jake": "bin/cli.js"
3256 | },
3257 | "engines": {
3258 | "node": ">=10"
3259 | }
3260 | },
3261 | "node_modules/jest-worker": {
3262 | "version": "27.5.1",
3263 | "dev": true,
3264 | "license": "MIT",
3265 | "dependencies": {
3266 | "@types/node": "*",
3267 | "merge-stream": "^2.0.0",
3268 | "supports-color": "^8.0.0"
3269 | },
3270 | "engines": {
3271 | "node": ">= 10.13.0"
3272 | }
3273 | },
3274 | "node_modules/jest-worker/node_modules/supports-color": {
3275 | "version": "8.1.1",
3276 | "dev": true,
3277 | "license": "MIT",
3278 | "dependencies": {
3279 | "has-flag": "^4.0.0"
3280 | },
3281 | "engines": {
3282 | "node": ">=10"
3283 | },
3284 | "funding": {
3285 | "url": "https://github.com/chalk/supports-color?sponsor=1"
3286 | }
3287 | },
3288 | "node_modules/js-sha3": {
3289 | "version": "0.8.0",
3290 | "dev": true,
3291 | "license": "MIT"
3292 | },
3293 | "node_modules/js-tokens": {
3294 | "version": "4.0.0",
3295 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
3296 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
3297 | "peer": true
3298 | },
3299 | "node_modules/js-yaml": {
3300 | "version": "3.14.1",
3301 | "dev": true,
3302 | "license": "MIT",
3303 | "dependencies": {
3304 | "argparse": "^1.0.7",
3305 | "esprima": "^4.0.0"
3306 | },
3307 | "bin": {
3308 | "js-yaml": "bin/js-yaml.js"
3309 | }
3310 | },
3311 | "node_modules/json-parse-even-better-errors": {
3312 | "version": "2.3.1",
3313 | "dev": true,
3314 | "license": "MIT"
3315 | },
3316 | "node_modules/json-schema-traverse": {
3317 | "version": "0.4.1",
3318 | "dev": true,
3319 | "license": "MIT"
3320 | },
3321 | "node_modules/json-stringify-safe": {
3322 | "version": "5.0.1",
3323 | "dev": true,
3324 | "license": "ISC"
3325 | },
3326 | "node_modules/json5": {
3327 | "version": "2.2.3",
3328 | "dev": true,
3329 | "license": "MIT",
3330 | "bin": {
3331 | "json5": "lib/cli.js"
3332 | },
3333 | "engines": {
3334 | "node": ">=6"
3335 | }
3336 | },
3337 | "node_modules/jsonfile": {
3338 | "version": "4.0.0",
3339 | "dev": true,
3340 | "license": "MIT",
3341 | "optionalDependencies": {
3342 | "graceful-fs": "^4.1.6"
3343 | }
3344 | },
3345 | "node_modules/kind-of": {
3346 | "version": "6.0.3",
3347 | "dev": true,
3348 | "license": "MIT",
3349 | "engines": {
3350 | "node": ">=0.10.0"
3351 | }
3352 | },
3353 | "node_modules/loader-runner": {
3354 | "version": "4.3.0",
3355 | "dev": true,
3356 | "license": "MIT",
3357 | "engines": {
3358 | "node": ">=6.11.5"
3359 | }
3360 | },
3361 | "node_modules/loader-utils": {
3362 | "version": "2.0.4",
3363 | "dev": true,
3364 | "license": "MIT",
3365 | "dependencies": {
3366 | "big.js": "^5.2.2",
3367 | "emojis-list": "^3.0.0",
3368 | "json5": "^2.1.2"
3369 | },
3370 | "engines": {
3371 | "node": ">=8.9.0"
3372 | }
3373 | },
3374 | "node_modules/lodash": {
3375 | "version": "4.17.21",
3376 | "dev": true,
3377 | "license": "MIT"
3378 | },
3379 | "node_modules/lodash.camelcase": {
3380 | "version": "4.3.0",
3381 | "dev": true,
3382 | "license": "MIT"
3383 | },
3384 | "node_modules/log-symbols": {
3385 | "version": "4.1.0",
3386 | "dev": true,
3387 | "license": "MIT",
3388 | "dependencies": {
3389 | "chalk": "^4.1.0",
3390 | "is-unicode-supported": "^0.1.0"
3391 | },
3392 | "engines": {
3393 | "node": ">=10"
3394 | },
3395 | "funding": {
3396 | "url": "https://github.com/sponsors/sindresorhus"
3397 | }
3398 | },
3399 | "node_modules/long": {
3400 | "version": "5.2.3",
3401 | "dev": true,
3402 | "license": "Apache-2.0"
3403 | },
3404 | "node_modules/loose-envify": {
3405 | "version": "1.4.0",
3406 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
3407 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
3408 | "peer": true,
3409 | "dependencies": {
3410 | "js-tokens": "^3.0.0 || ^4.0.0"
3411 | },
3412 | "bin": {
3413 | "loose-envify": "cli.js"
3414 | }
3415 | },
3416 | "node_modules/lru-cache": {
3417 | "version": "6.0.0",
3418 | "dev": true,
3419 | "license": "ISC",
3420 | "dependencies": {
3421 | "yallist": "^4.0.0"
3422 | },
3423 | "engines": {
3424 | "node": ">=10"
3425 | }
3426 | },
3427 | "node_modules/make-error": {
3428 | "version": "1.3.6",
3429 | "dev": true,
3430 | "license": "ISC"
3431 | },
3432 | "node_modules/md5.js": {
3433 | "version": "1.3.5",
3434 | "dev": true,
3435 | "license": "MIT",
3436 | "dependencies": {
3437 | "hash-base": "^3.0.0",
3438 | "inherits": "^2.0.1",
3439 | "safe-buffer": "^5.1.2"
3440 | }
3441 | },
3442 | "node_modules/merge-stream": {
3443 | "version": "2.0.0",
3444 | "dev": true,
3445 | "license": "MIT"
3446 | },
3447 | "node_modules/merge2": {
3448 | "version": "1.4.1",
3449 | "dev": true,
3450 | "license": "MIT",
3451 | "engines": {
3452 | "node": ">= 8"
3453 | }
3454 | },
3455 | "node_modules/micromatch": {
3456 | "version": "4.0.5",
3457 | "dev": true,
3458 | "license": "MIT",
3459 | "dependencies": {
3460 | "braces": "^3.0.2",
3461 | "picomatch": "^2.3.1"
3462 | },
3463 | "engines": {
3464 | "node": ">=8.6"
3465 | }
3466 | },
3467 | "node_modules/mime-db": {
3468 | "version": "1.52.0",
3469 | "dev": true,
3470 | "license": "MIT",
3471 | "engines": {
3472 | "node": ">= 0.6"
3473 | }
3474 | },
3475 | "node_modules/mime-types": {
3476 | "version": "2.1.35",
3477 | "dev": true,
3478 | "license": "MIT",
3479 | "dependencies": {
3480 | "mime-db": "1.52.0"
3481 | },
3482 | "engines": {
3483 | "node": ">= 0.6"
3484 | }
3485 | },
3486 | "node_modules/mimic-fn": {
3487 | "version": "2.1.0",
3488 | "dev": true,
3489 | "license": "MIT",
3490 | "engines": {
3491 | "node": ">=6"
3492 | }
3493 | },
3494 | "node_modules/minimalistic-assert": {
3495 | "version": "1.0.1",
3496 | "dev": true,
3497 | "license": "ISC"
3498 | },
3499 | "node_modules/minimatch": {
3500 | "version": "3.1.2",
3501 | "dev": true,
3502 | "license": "ISC",
3503 | "dependencies": {
3504 | "brace-expansion": "^1.1.7"
3505 | },
3506 | "engines": {
3507 | "node": "*"
3508 | }
3509 | },
3510 | "node_modules/minimatch/node_modules/brace-expansion": {
3511 | "version": "1.1.11",
3512 | "dev": true,
3513 | "license": "MIT",
3514 | "dependencies": {
3515 | "balanced-match": "^1.0.0",
3516 | "concat-map": "0.0.1"
3517 | }
3518 | },
3519 | "node_modules/mkdirp": {
3520 | "version": "1.0.4",
3521 | "dev": true,
3522 | "license": "MIT",
3523 | "bin": {
3524 | "mkdirp": "bin/cmd.js"
3525 | },
3526 | "engines": {
3527 | "node": ">=10"
3528 | }
3529 | },
3530 | "node_modules/mock-socket": {
3531 | "version": "9.3.1",
3532 | "dev": true,
3533 | "license": "MIT",
3534 | "engines": {
3535 | "node": ">= 8"
3536 | }
3537 | },
3538 | "node_modules/ms": {
3539 | "version": "2.1.2",
3540 | "dev": true,
3541 | "license": "MIT"
3542 | },
3543 | "node_modules/mute-stream": {
3544 | "version": "0.0.8",
3545 | "dev": true,
3546 | "license": "ISC"
3547 | },
3548 | "node_modules/natural-orderby": {
3549 | "version": "2.0.3",
3550 | "dev": true,
3551 | "license": "MIT",
3552 | "engines": {
3553 | "node": "*"
3554 | }
3555 | },
3556 | "node_modules/neo-async": {
3557 | "version": "2.6.2",
3558 | "dev": true,
3559 | "license": "MIT"
3560 | },
3561 | "node_modules/nock": {
3562 | "version": "13.5.1",
3563 | "dev": true,
3564 | "license": "MIT",
3565 | "dependencies": {
3566 | "debug": "^4.1.0",
3567 | "json-stringify-safe": "^5.0.1",
3568 | "propagate": "^2.0.0"
3569 | },
3570 | "engines": {
3571 | "node": ">= 10.13"
3572 | }
3573 | },
3574 | "node_modules/node-domexception": {
3575 | "version": "1.0.0",
3576 | "dev": true,
3577 | "funding": [
3578 | {
3579 | "type": "github",
3580 | "url": "https://github.com/sponsors/jimmywarting"
3581 | },
3582 | {
3583 | "type": "github",
3584 | "url": "https://paypal.me/jimmywarting"
3585 | }
3586 | ],
3587 | "license": "MIT",
3588 | "engines": {
3589 | "node": ">=10.5.0"
3590 | }
3591 | },
3592 | "node_modules/node-fetch": {
3593 | "version": "2.7.0",
3594 | "dev": true,
3595 | "license": "MIT",
3596 | "dependencies": {
3597 | "whatwg-url": "^5.0.0"
3598 | },
3599 | "engines": {
3600 | "node": "4.x || >=6.0.0"
3601 | },
3602 | "peerDependencies": {
3603 | "encoding": "^0.1.0"
3604 | },
3605 | "peerDependenciesMeta": {
3606 | "encoding": {
3607 | "optional": true
3608 | }
3609 | }
3610 | },
3611 | "node_modules/node-fetch/node_modules/tr46": {
3612 | "version": "0.0.3",
3613 | "dev": true,
3614 | "license": "MIT"
3615 | },
3616 | "node_modules/node-fetch/node_modules/webidl-conversions": {
3617 | "version": "3.0.1",
3618 | "dev": true,
3619 | "license": "BSD-2-Clause"
3620 | },
3621 | "node_modules/node-fetch/node_modules/whatwg-url": {
3622 | "version": "5.0.0",
3623 | "dev": true,
3624 | "license": "MIT",
3625 | "dependencies": {
3626 | "tr46": "~0.0.3",
3627 | "webidl-conversions": "^3.0.0"
3628 | }
3629 | },
3630 | "node_modules/node-releases": {
3631 | "version": "2.0.14",
3632 | "dev": true,
3633 | "license": "MIT"
3634 | },
3635 | "node_modules/object-treeify": {
3636 | "version": "1.1.33",
3637 | "dev": true,
3638 | "license": "MIT",
3639 | "engines": {
3640 | "node": ">= 10"
3641 | }
3642 | },
3643 | "node_modules/once": {
3644 | "version": "1.4.0",
3645 | "dev": true,
3646 | "license": "ISC",
3647 | "dependencies": {
3648 | "wrappy": "1"
3649 | }
3650 | },
3651 | "node_modules/onetime": {
3652 | "version": "5.1.2",
3653 | "dev": true,
3654 | "license": "MIT",
3655 | "dependencies": {
3656 | "mimic-fn": "^2.1.0"
3657 | },
3658 | "engines": {
3659 | "node": ">=6"
3660 | },
3661 | "funding": {
3662 | "url": "https://github.com/sponsors/sindresorhus"
3663 | }
3664 | },
3665 | "node_modules/ora": {
3666 | "version": "5.4.1",
3667 | "dev": true,
3668 | "license": "MIT",
3669 | "dependencies": {
3670 | "bl": "^4.1.0",
3671 | "chalk": "^4.1.0",
3672 | "cli-cursor": "^3.1.0",
3673 | "cli-spinners": "^2.5.0",
3674 | "is-interactive": "^1.0.0",
3675 | "is-unicode-supported": "^0.1.0",
3676 | "log-symbols": "^4.1.0",
3677 | "strip-ansi": "^6.0.0",
3678 | "wcwidth": "^1.0.1"
3679 | },
3680 | "engines": {
3681 | "node": ">=10"
3682 | },
3683 | "funding": {
3684 | "url": "https://github.com/sponsors/sindresorhus"
3685 | }
3686 | },
3687 | "node_modules/os-tmpdir": {
3688 | "version": "1.0.2",
3689 | "dev": true,
3690 | "license": "MIT",
3691 | "engines": {
3692 | "node": ">=0.10.0"
3693 | }
3694 | },
3695 | "node_modules/password-prompt": {
3696 | "version": "1.1.3",
3697 | "dev": true,
3698 | "license": "0BSD",
3699 | "dependencies": {
3700 | "ansi-escapes": "^4.3.2",
3701 | "cross-spawn": "^7.0.3"
3702 | }
3703 | },
3704 | "node_modules/path-is-absolute": {
3705 | "version": "1.0.1",
3706 | "dev": true,
3707 | "license": "MIT",
3708 | "engines": {
3709 | "node": ">=0.10.0"
3710 | }
3711 | },
3712 | "node_modules/path-key": {
3713 | "version": "3.1.1",
3714 | "dev": true,
3715 | "license": "MIT",
3716 | "engines": {
3717 | "node": ">=8"
3718 | }
3719 | },
3720 | "node_modules/path-type": {
3721 | "version": "4.0.0",
3722 | "dev": true,
3723 | "license": "MIT",
3724 | "engines": {
3725 | "node": ">=8"
3726 | }
3727 | },
3728 | "node_modules/picocolors": {
3729 | "version": "1.0.0",
3730 | "dev": true,
3731 | "license": "ISC"
3732 | },
3733 | "node_modules/picomatch": {
3734 | "version": "2.3.1",
3735 | "dev": true,
3736 | "license": "MIT",
3737 | "engines": {
3738 | "node": ">=8.6"
3739 | },
3740 | "funding": {
3741 | "url": "https://github.com/sponsors/jonschlinkert"
3742 | }
3743 | },
3744 | "node_modules/prettier": {
3745 | "version": "2.8.8",
3746 | "dev": true,
3747 | "license": "MIT",
3748 | "bin": {
3749 | "prettier": "bin-prettier.js"
3750 | },
3751 | "engines": {
3752 | "node": ">=10.13.0"
3753 | },
3754 | "funding": {
3755 | "url": "https://github.com/prettier/prettier?sponsor=1"
3756 | }
3757 | },
3758 | "node_modules/propagate": {
3759 | "version": "2.0.1",
3760 | "dev": true,
3761 | "license": "MIT",
3762 | "engines": {
3763 | "node": ">= 8"
3764 | }
3765 | },
3766 | "node_modules/protobufjs": {
3767 | "version": "7.2.6",
3768 | "dev": true,
3769 | "hasInstallScript": true,
3770 | "license": "BSD-3-Clause",
3771 | "dependencies": {
3772 | "@protobufjs/aspromise": "^1.1.2",
3773 | "@protobufjs/base64": "^1.1.2",
3774 | "@protobufjs/codegen": "^2.0.4",
3775 | "@protobufjs/eventemitter": "^1.1.0",
3776 | "@protobufjs/fetch": "^1.1.0",
3777 | "@protobufjs/float": "^1.0.2",
3778 | "@protobufjs/inquire": "^1.1.0",
3779 | "@protobufjs/path": "^1.1.2",
3780 | "@protobufjs/pool": "^1.1.0",
3781 | "@protobufjs/utf8": "^1.1.0",
3782 | "@types/node": ">=13.7.0",
3783 | "long": "^5.0.0"
3784 | },
3785 | "engines": {
3786 | "node": ">=12.0.0"
3787 | }
3788 | },
3789 | "node_modules/punycode": {
3790 | "version": "2.3.1",
3791 | "dev": true,
3792 | "license": "MIT",
3793 | "engines": {
3794 | "node": ">=6"
3795 | }
3796 | },
3797 | "node_modules/queue-microtask": {
3798 | "version": "1.2.3",
3799 | "dev": true,
3800 | "funding": [
3801 | {
3802 | "type": "github",
3803 | "url": "https://github.com/sponsors/feross"
3804 | },
3805 | {
3806 | "type": "patreon",
3807 | "url": "https://www.patreon.com/feross"
3808 | },
3809 | {
3810 | "type": "consulting",
3811 | "url": "https://feross.org/support"
3812 | }
3813 | ],
3814 | "license": "MIT"
3815 | },
3816 | "node_modules/quickjs-emscripten": {
3817 | "version": "0.23.0",
3818 | "dev": true,
3819 | "license": "MIT"
3820 | },
3821 | "node_modules/quickjs-emscripten-sync": {
3822 | "version": "1.5.2",
3823 | "dev": true,
3824 | "license": "MIT",
3825 | "engines": {
3826 | "node": ">=12"
3827 | },
3828 | "peerDependencies": {
3829 | "quickjs-emscripten": "*"
3830 | }
3831 | },
3832 | "node_modules/ramda": {
3833 | "version": "0.29.1",
3834 | "dev": true,
3835 | "license": "MIT",
3836 | "funding": {
3837 | "type": "opencollective",
3838 | "url": "https://opencollective.com/ramda"
3839 | }
3840 | },
3841 | "node_modules/randombytes": {
3842 | "version": "2.1.0",
3843 | "dev": true,
3844 | "license": "MIT",
3845 | "dependencies": {
3846 | "safe-buffer": "^5.1.0"
3847 | }
3848 | },
3849 | "node_modules/react": {
3850 | "version": "18.2.0",
3851 | "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz",
3852 | "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==",
3853 | "peer": true,
3854 | "dependencies": {
3855 | "loose-envify": "^1.1.0"
3856 | },
3857 | "engines": {
3858 | "node": ">=0.10.0"
3859 | }
3860 | },
3861 | "node_modules/react-dom": {
3862 | "version": "18.2.0",
3863 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz",
3864 | "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==",
3865 | "peer": true,
3866 | "dependencies": {
3867 | "loose-envify": "^1.1.0",
3868 | "scheduler": "^0.23.0"
3869 | },
3870 | "peerDependencies": {
3871 | "react": "^18.2.0"
3872 | }
3873 | },
3874 | "node_modules/readable-stream": {
3875 | "version": "3.6.2",
3876 | "dev": true,
3877 | "license": "MIT",
3878 | "dependencies": {
3879 | "inherits": "^2.0.3",
3880 | "string_decoder": "^1.1.1",
3881 | "util-deprecate": "^1.0.1"
3882 | },
3883 | "engines": {
3884 | "node": ">= 6"
3885 | }
3886 | },
3887 | "node_modules/redeyed": {
3888 | "version": "2.1.1",
3889 | "dev": true,
3890 | "license": "MIT",
3891 | "dependencies": {
3892 | "esprima": "~4.0.0"
3893 | }
3894 | },
3895 | "node_modules/reduce-flatten": {
3896 | "version": "2.0.0",
3897 | "dev": true,
3898 | "license": "MIT",
3899 | "engines": {
3900 | "node": ">=6"
3901 | }
3902 | },
3903 | "node_modules/resolve-pkg-maps": {
3904 | "version": "1.0.0",
3905 | "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
3906 | "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
3907 | "dev": true,
3908 | "funding": {
3909 | "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
3910 | }
3911 | },
3912 | "node_modules/restore-cursor": {
3913 | "version": "3.1.0",
3914 | "dev": true,
3915 | "license": "MIT",
3916 | "dependencies": {
3917 | "onetime": "^5.1.0",
3918 | "signal-exit": "^3.0.2"
3919 | },
3920 | "engines": {
3921 | "node": ">=8"
3922 | }
3923 | },
3924 | "node_modules/reusify": {
3925 | "version": "1.0.4",
3926 | "dev": true,
3927 | "license": "MIT",
3928 | "engines": {
3929 | "iojs": ">=1.0.0",
3930 | "node": ">=0.10.0"
3931 | }
3932 | },
3933 | "node_modules/ripemd160": {
3934 | "version": "2.0.2",
3935 | "dev": true,
3936 | "license": "MIT",
3937 | "dependencies": {
3938 | "hash-base": "^3.0.0",
3939 | "inherits": "^2.0.1"
3940 | }
3941 | },
3942 | "node_modules/run-async": {
3943 | "version": "2.4.1",
3944 | "dev": true,
3945 | "license": "MIT",
3946 | "engines": {
3947 | "node": ">=0.12.0"
3948 | }
3949 | },
3950 | "node_modules/run-parallel": {
3951 | "version": "1.2.0",
3952 | "dev": true,
3953 | "funding": [
3954 | {
3955 | "type": "github",
3956 | "url": "https://github.com/sponsors/feross"
3957 | },
3958 | {
3959 | "type": "patreon",
3960 | "url": "https://www.patreon.com/feross"
3961 | },
3962 | {
3963 | "type": "consulting",
3964 | "url": "https://feross.org/support"
3965 | }
3966 | ],
3967 | "license": "MIT",
3968 | "dependencies": {
3969 | "queue-microtask": "^1.2.2"
3970 | }
3971 | },
3972 | "node_modules/rxjs": {
3973 | "version": "7.8.1",
3974 | "dev": true,
3975 | "license": "Apache-2.0",
3976 | "dependencies": {
3977 | "tslib": "^2.1.0"
3978 | }
3979 | },
3980 | "node_modules/safe-buffer": {
3981 | "version": "5.2.1",
3982 | "dev": true,
3983 | "funding": [
3984 | {
3985 | "type": "github",
3986 | "url": "https://github.com/sponsors/feross"
3987 | },
3988 | {
3989 | "type": "patreon",
3990 | "url": "https://www.patreon.com/feross"
3991 | },
3992 | {
3993 | "type": "consulting",
3994 | "url": "https://feross.org/support"
3995 | }
3996 | ],
3997 | "license": "MIT"
3998 | },
3999 | "node_modules/safer-buffer": {
4000 | "version": "2.1.2",
4001 | "dev": true,
4002 | "license": "MIT"
4003 | },
4004 | "node_modules/scheduler": {
4005 | "version": "0.23.0",
4006 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz",
4007 | "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==",
4008 | "peer": true,
4009 | "dependencies": {
4010 | "loose-envify": "^1.1.0"
4011 | }
4012 | },
4013 | "node_modules/schema-utils": {
4014 | "version": "3.3.0",
4015 | "dev": true,
4016 | "license": "MIT",
4017 | "dependencies": {
4018 | "@types/json-schema": "^7.0.8",
4019 | "ajv": "^6.12.5",
4020 | "ajv-keywords": "^3.5.2"
4021 | },
4022 | "engines": {
4023 | "node": ">= 10.13.0"
4024 | },
4025 | "funding": {
4026 | "type": "opencollective",
4027 | "url": "https://opencollective.com/webpack"
4028 | }
4029 | },
4030 | "node_modules/semver": {
4031 | "version": "7.5.4",
4032 | "dev": true,
4033 | "license": "ISC",
4034 | "dependencies": {
4035 | "lru-cache": "^6.0.0"
4036 | },
4037 | "bin": {
4038 | "semver": "bin/semver.js"
4039 | },
4040 | "engines": {
4041 | "node": ">=10"
4042 | }
4043 | },
4044 | "node_modules/serialize-javascript": {
4045 | "version": "6.0.2",
4046 | "dev": true,
4047 | "license": "BSD-3-Clause",
4048 | "dependencies": {
4049 | "randombytes": "^2.1.0"
4050 | }
4051 | },
4052 | "node_modules/sha.js": {
4053 | "version": "2.4.11",
4054 | "dev": true,
4055 | "license": "(MIT AND BSD-3-Clause)",
4056 | "dependencies": {
4057 | "inherits": "^2.0.1",
4058 | "safe-buffer": "^5.0.1"
4059 | },
4060 | "bin": {
4061 | "sha.js": "bin.js"
4062 | }
4063 | },
4064 | "node_modules/shallow-clone": {
4065 | "version": "3.0.1",
4066 | "dev": true,
4067 | "license": "MIT",
4068 | "dependencies": {
4069 | "kind-of": "^6.0.2"
4070 | },
4071 | "engines": {
4072 | "node": ">=8"
4073 | }
4074 | },
4075 | "node_modules/shebang-command": {
4076 | "version": "2.0.0",
4077 | "dev": true,
4078 | "license": "MIT",
4079 | "dependencies": {
4080 | "shebang-regex": "^3.0.0"
4081 | },
4082 | "engines": {
4083 | "node": ">=8"
4084 | }
4085 | },
4086 | "node_modules/shebang-regex": {
4087 | "version": "3.0.0",
4088 | "dev": true,
4089 | "license": "MIT",
4090 | "engines": {
4091 | "node": ">=8"
4092 | }
4093 | },
4094 | "node_modules/signal-exit": {
4095 | "version": "3.0.7",
4096 | "dev": true,
4097 | "license": "ISC"
4098 | },
4099 | "node_modules/simple-git": {
4100 | "version": "3.22.0",
4101 | "dev": true,
4102 | "license": "MIT",
4103 | "dependencies": {
4104 | "@kwsites/file-exists": "^1.1.1",
4105 | "@kwsites/promise-deferred": "^1.1.1",
4106 | "debug": "^4.3.4"
4107 | },
4108 | "funding": {
4109 | "type": "github",
4110 | "url": "https://github.com/steveukx/git-js?sponsor=1"
4111 | }
4112 | },
4113 | "node_modules/slash": {
4114 | "version": "3.0.0",
4115 | "dev": true,
4116 | "license": "MIT",
4117 | "engines": {
4118 | "node": ">=8"
4119 | }
4120 | },
4121 | "node_modules/slice-ansi": {
4122 | "version": "4.0.0",
4123 | "dev": true,
4124 | "license": "MIT",
4125 | "dependencies": {
4126 | "ansi-styles": "^4.0.0",
4127 | "astral-regex": "^2.0.0",
4128 | "is-fullwidth-code-point": "^3.0.0"
4129 | },
4130 | "engines": {
4131 | "node": ">=10"
4132 | },
4133 | "funding": {
4134 | "url": "https://github.com/chalk/slice-ansi?sponsor=1"
4135 | }
4136 | },
4137 | "node_modules/smoldot": {
4138 | "version": "2.0.7",
4139 | "dev": true,
4140 | "license": "GPL-3.0-or-later WITH Classpath-exception-2.0",
4141 | "optional": true,
4142 | "dependencies": {
4143 | "ws": "^8.8.1"
4144 | }
4145 | },
4146 | "node_modules/smoldot/node_modules/ws": {
4147 | "version": "8.16.0",
4148 | "dev": true,
4149 | "license": "MIT",
4150 | "optional": true,
4151 | "engines": {
4152 | "node": ">=10.0.0"
4153 | },
4154 | "peerDependencies": {
4155 | "bufferutil": "^4.0.1",
4156 | "utf-8-validate": ">=5.0.2"
4157 | },
4158 | "peerDependenciesMeta": {
4159 | "bufferutil": {
4160 | "optional": true
4161 | },
4162 | "utf-8-validate": {
4163 | "optional": true
4164 | }
4165 | }
4166 | },
4167 | "node_modules/source-map-support": {
4168 | "version": "0.5.21",
4169 | "dev": true,
4170 | "license": "MIT",
4171 | "dependencies": {
4172 | "buffer-from": "^1.0.0",
4173 | "source-map": "^0.6.0"
4174 | }
4175 | },
4176 | "node_modules/source-map-support/node_modules/source-map": {
4177 | "version": "0.6.1",
4178 | "dev": true,
4179 | "license": "BSD-3-Clause",
4180 | "engines": {
4181 | "node": ">=0.10.0"
4182 | }
4183 | },
4184 | "node_modules/sprintf-js": {
4185 | "version": "1.0.3",
4186 | "dev": true,
4187 | "license": "BSD-3-Clause"
4188 | },
4189 | "node_modules/store": {
4190 | "version": "2.0.12",
4191 | "dev": true,
4192 | "license": "MIT",
4193 | "engines": {
4194 | "node": "*"
4195 | }
4196 | },
4197 | "node_modules/string_decoder": {
4198 | "version": "1.3.0",
4199 | "dev": true,
4200 | "license": "MIT",
4201 | "dependencies": {
4202 | "safe-buffer": "~5.2.0"
4203 | }
4204 | },
4205 | "node_modules/string-format": {
4206 | "version": "2.0.0",
4207 | "dev": true,
4208 | "license": "WTFPL OR MIT"
4209 | },
4210 | "node_modules/string-replace-loader": {
4211 | "version": "3.1.0",
4212 | "dev": true,
4213 | "license": "MIT",
4214 | "dependencies": {
4215 | "loader-utils": "^2.0.0",
4216 | "schema-utils": "^3.0.0"
4217 | },
4218 | "peerDependencies": {
4219 | "webpack": "^5"
4220 | }
4221 | },
4222 | "node_modules/string-width": {
4223 | "version": "4.2.3",
4224 | "dev": true,
4225 | "license": "MIT",
4226 | "dependencies": {
4227 | "emoji-regex": "^8.0.0",
4228 | "is-fullwidth-code-point": "^3.0.0",
4229 | "strip-ansi": "^6.0.1"
4230 | },
4231 | "engines": {
4232 | "node": ">=8"
4233 | }
4234 | },
4235 | "node_modules/strip-ansi": {
4236 | "version": "6.0.1",
4237 | "dev": true,
4238 | "license": "MIT",
4239 | "dependencies": {
4240 | "ansi-regex": "^5.0.1"
4241 | },
4242 | "engines": {
4243 | "node": ">=8"
4244 | }
4245 | },
4246 | "node_modules/supports-color": {
4247 | "version": "7.2.0",
4248 | "dev": true,
4249 | "license": "MIT",
4250 | "dependencies": {
4251 | "has-flag": "^4.0.0"
4252 | },
4253 | "engines": {
4254 | "node": ">=8"
4255 | }
4256 | },
4257 | "node_modules/supports-hyperlinks": {
4258 | "version": "2.3.0",
4259 | "dev": true,
4260 | "license": "MIT",
4261 | "dependencies": {
4262 | "has-flag": "^4.0.0",
4263 | "supports-color": "^7.0.0"
4264 | },
4265 | "engines": {
4266 | "node": ">=8"
4267 | }
4268 | },
4269 | "node_modules/sync-rpc": {
4270 | "version": "1.3.6",
4271 | "dev": true,
4272 | "license": "MIT",
4273 | "dependencies": {
4274 | "get-port": "^3.1.0"
4275 | }
4276 | },
4277 | "node_modules/table-layout": {
4278 | "version": "1.0.2",
4279 | "dev": true,
4280 | "license": "MIT",
4281 | "dependencies": {
4282 | "array-back": "^4.0.1",
4283 | "deep-extend": "~0.6.0",
4284 | "typical": "^5.2.0",
4285 | "wordwrapjs": "^4.0.0"
4286 | },
4287 | "engines": {
4288 | "node": ">=8.0.0"
4289 | }
4290 | },
4291 | "node_modules/table-layout/node_modules/array-back": {
4292 | "version": "4.0.2",
4293 | "dev": true,
4294 | "license": "MIT",
4295 | "engines": {
4296 | "node": ">=8"
4297 | }
4298 | },
4299 | "node_modules/tapable": {
4300 | "version": "2.2.1",
4301 | "dev": true,
4302 | "license": "MIT",
4303 | "engines": {
4304 | "node": ">=6"
4305 | }
4306 | },
4307 | "node_modules/terser": {
4308 | "version": "5.27.0",
4309 | "dev": true,
4310 | "license": "BSD-2-Clause",
4311 | "dependencies": {
4312 | "@jridgewell/source-map": "^0.3.3",
4313 | "acorn": "^8.8.2",
4314 | "commander": "^2.20.0",
4315 | "source-map-support": "~0.5.20"
4316 | },
4317 | "bin": {
4318 | "terser": "bin/terser"
4319 | },
4320 | "engines": {
4321 | "node": ">=10"
4322 | }
4323 | },
4324 | "node_modules/terser-webpack-plugin": {
4325 | "version": "5.3.10",
4326 | "dev": true,
4327 | "license": "MIT",
4328 | "dependencies": {
4329 | "@jridgewell/trace-mapping": "^0.3.20",
4330 | "jest-worker": "^27.4.5",
4331 | "schema-utils": "^3.1.1",
4332 | "serialize-javascript": "^6.0.1",
4333 | "terser": "^5.26.0"
4334 | },
4335 | "engines": {
4336 | "node": ">= 10.13.0"
4337 | },
4338 | "funding": {
4339 | "type": "opencollective",
4340 | "url": "https://opencollective.com/webpack"
4341 | },
4342 | "peerDependencies": {
4343 | "webpack": "^5.1.0"
4344 | },
4345 | "peerDependenciesMeta": {
4346 | "@swc/core": {
4347 | "optional": true
4348 | },
4349 | "esbuild": {
4350 | "optional": true
4351 | },
4352 | "uglify-js": {
4353 | "optional": true
4354 | }
4355 | }
4356 | },
4357 | "node_modules/through": {
4358 | "version": "2.3.8",
4359 | "dev": true,
4360 | "license": "MIT"
4361 | },
4362 | "node_modules/tmp": {
4363 | "version": "0.0.33",
4364 | "dev": true,
4365 | "license": "MIT",
4366 | "dependencies": {
4367 | "os-tmpdir": "~1.0.2"
4368 | },
4369 | "engines": {
4370 | "node": ">=0.6.0"
4371 | }
4372 | },
4373 | "node_modules/to-regex-range": {
4374 | "version": "5.0.1",
4375 | "dev": true,
4376 | "license": "MIT",
4377 | "dependencies": {
4378 | "is-number": "^7.0.0"
4379 | },
4380 | "engines": {
4381 | "node": ">=8.0"
4382 | }
4383 | },
4384 | "node_modules/ts-command-line-args": {
4385 | "version": "2.5.1",
4386 | "dev": true,
4387 | "license": "ISC",
4388 | "dependencies": {
4389 | "chalk": "^4.1.0",
4390 | "command-line-args": "^5.1.1",
4391 | "command-line-usage": "^6.1.0",
4392 | "string-format": "^2.0.0"
4393 | },
4394 | "bin": {
4395 | "write-markdown": "dist/write-markdown.js"
4396 | }
4397 | },
4398 | "node_modules/ts-essentials": {
4399 | "version": "7.0.3",
4400 | "dev": true,
4401 | "license": "MIT",
4402 | "peerDependencies": {
4403 | "typescript": ">=3.7.0"
4404 | }
4405 | },
4406 | "node_modules/ts-loader": {
4407 | "version": "9.5.1",
4408 | "dev": true,
4409 | "license": "MIT",
4410 | "dependencies": {
4411 | "chalk": "^4.1.0",
4412 | "enhanced-resolve": "^5.0.0",
4413 | "micromatch": "^4.0.0",
4414 | "semver": "^7.3.4",
4415 | "source-map": "^0.7.4"
4416 | },
4417 | "engines": {
4418 | "node": ">=12.0.0"
4419 | },
4420 | "peerDependencies": {
4421 | "typescript": "*",
4422 | "webpack": "^5.0.0"
4423 | }
4424 | },
4425 | "node_modules/ts-loader/node_modules/source-map": {
4426 | "version": "0.7.4",
4427 | "dev": true,
4428 | "license": "BSD-3-Clause",
4429 | "engines": {
4430 | "node": ">= 8"
4431 | }
4432 | },
4433 | "node_modules/ts-node": {
4434 | "version": "10.9.2",
4435 | "dev": true,
4436 | "license": "MIT",
4437 | "dependencies": {
4438 | "@cspotcode/source-map-support": "^0.8.0",
4439 | "@tsconfig/node10": "^1.0.7",
4440 | "@tsconfig/node12": "^1.0.7",
4441 | "@tsconfig/node14": "^1.0.0",
4442 | "@tsconfig/node16": "^1.0.2",
4443 | "acorn": "^8.4.1",
4444 | "acorn-walk": "^8.1.1",
4445 | "arg": "^4.1.0",
4446 | "create-require": "^1.1.0",
4447 | "diff": "^4.0.1",
4448 | "make-error": "^1.1.1",
4449 | "v8-compile-cache-lib": "^3.0.1",
4450 | "yn": "3.1.1"
4451 | },
4452 | "bin": {
4453 | "ts-node": "dist/bin.js",
4454 | "ts-node-cwd": "dist/bin-cwd.js",
4455 | "ts-node-esm": "dist/bin-esm.js",
4456 | "ts-node-script": "dist/bin-script.js",
4457 | "ts-node-transpile-only": "dist/bin-transpile.js",
4458 | "ts-script": "dist/bin-script-deprecated.js"
4459 | },
4460 | "peerDependencies": {
4461 | "@swc/core": ">=1.2.50",
4462 | "@swc/wasm": ">=1.2.50",
4463 | "@types/node": "*",
4464 | "typescript": ">=2.7"
4465 | },
4466 | "peerDependenciesMeta": {
4467 | "@swc/core": {
4468 | "optional": true
4469 | },
4470 | "@swc/wasm": {
4471 | "optional": true
4472 | }
4473 | }
4474 | },
4475 | "node_modules/tslib": {
4476 | "version": "2.6.2",
4477 | "dev": true,
4478 | "license": "0BSD"
4479 | },
4480 | "node_modules/tsx": {
4481 | "version": "4.7.0",
4482 | "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.0.tgz",
4483 | "integrity": "sha512-I+t79RYPlEYlHn9a+KzwrvEwhJg35h/1zHsLC2JXvhC2mdynMv6Zxzvhv5EMV6VF5qJlLlkSnMVvdZV3PSIGcg==",
4484 | "dev": true,
4485 | "dependencies": {
4486 | "esbuild": "~0.19.10",
4487 | "get-tsconfig": "^4.7.2"
4488 | },
4489 | "bin": {
4490 | "tsx": "dist/cli.mjs"
4491 | },
4492 | "engines": {
4493 | "node": ">=18.0.0"
4494 | },
4495 | "optionalDependencies": {
4496 | "fsevents": "~2.3.3"
4497 | }
4498 | },
4499 | "node_modules/type-fest": {
4500 | "version": "0.21.3",
4501 | "dev": true,
4502 | "license": "(MIT OR CC0-1.0)",
4503 | "engines": {
4504 | "node": ">=10"
4505 | },
4506 | "funding": {
4507 | "url": "https://github.com/sponsors/sindresorhus"
4508 | }
4509 | },
4510 | "node_modules/typechain": {
4511 | "version": "8.3.2",
4512 | "dev": true,
4513 | "license": "MIT",
4514 | "dependencies": {
4515 | "@types/prettier": "^2.1.1",
4516 | "debug": "^4.3.1",
4517 | "fs-extra": "^7.0.0",
4518 | "glob": "7.1.7",
4519 | "js-sha3": "^0.8.0",
4520 | "lodash": "^4.17.15",
4521 | "mkdirp": "^1.0.4",
4522 | "prettier": "^2.3.1",
4523 | "ts-command-line-args": "^2.2.0",
4524 | "ts-essentials": "^7.0.1"
4525 | },
4526 | "bin": {
4527 | "typechain": "dist/cli/cli.js"
4528 | },
4529 | "peerDependencies": {
4530 | "typescript": ">=4.3.0"
4531 | }
4532 | },
4533 | "node_modules/typescript": {
4534 | "version": "5.3.3",
4535 | "devOptional": true,
4536 | "license": "Apache-2.0",
4537 | "bin": {
4538 | "tsc": "bin/tsc",
4539 | "tsserver": "bin/tsserver"
4540 | },
4541 | "engines": {
4542 | "node": ">=14.17"
4543 | }
4544 | },
4545 | "node_modules/typical": {
4546 | "version": "5.2.0",
4547 | "dev": true,
4548 | "license": "MIT",
4549 | "engines": {
4550 | "node": ">=8"
4551 | }
4552 | },
4553 | "node_modules/undici": {
4554 | "version": "5.28.2",
4555 | "dev": true,
4556 | "license": "MIT",
4557 | "dependencies": {
4558 | "@fastify/busboy": "^2.0.0"
4559 | },
4560 | "engines": {
4561 | "node": ">=14.0"
4562 | }
4563 | },
4564 | "node_modules/undici-types": {
4565 | "version": "5.26.5",
4566 | "dev": true,
4567 | "license": "MIT"
4568 | },
4569 | "node_modules/universalify": {
4570 | "version": "0.1.2",
4571 | "dev": true,
4572 | "license": "MIT",
4573 | "engines": {
4574 | "node": ">= 4.0.0"
4575 | }
4576 | },
4577 | "node_modules/upath": {
4578 | "version": "2.0.1",
4579 | "dev": true,
4580 | "license": "MIT",
4581 | "engines": {
4582 | "node": ">=4",
4583 | "yarn": "*"
4584 | }
4585 | },
4586 | "node_modules/update-browserslist-db": {
4587 | "version": "1.0.13",
4588 | "dev": true,
4589 | "funding": [
4590 | {
4591 | "type": "opencollective",
4592 | "url": "https://opencollective.com/browserslist"
4593 | },
4594 | {
4595 | "type": "tidelift",
4596 | "url": "https://tidelift.com/funding/github/npm/browserslist"
4597 | },
4598 | {
4599 | "type": "github",
4600 | "url": "https://github.com/sponsors/ai"
4601 | }
4602 | ],
4603 | "license": "MIT",
4604 | "dependencies": {
4605 | "escalade": "^3.1.1",
4606 | "picocolors": "^1.0.0"
4607 | },
4608 | "bin": {
4609 | "update-browserslist-db": "cli.js"
4610 | },
4611 | "peerDependencies": {
4612 | "browserslist": ">= 4.21.0"
4613 | }
4614 | },
4615 | "node_modules/uri-js": {
4616 | "version": "4.4.1",
4617 | "dev": true,
4618 | "license": "BSD-2-Clause",
4619 | "dependencies": {
4620 | "punycode": "^2.1.0"
4621 | }
4622 | },
4623 | "node_modules/util-deprecate": {
4624 | "version": "1.0.2",
4625 | "dev": true,
4626 | "license": "MIT"
4627 | },
4628 | "node_modules/v8-compile-cache-lib": {
4629 | "version": "3.0.1",
4630 | "dev": true,
4631 | "license": "MIT"
4632 | },
4633 | "node_modules/viem": {
4634 | "version": "2.7.3",
4635 | "funding": [
4636 | {
4637 | "type": "github",
4638 | "url": "https://github.com/sponsors/wevm"
4639 | }
4640 | ],
4641 | "license": "MIT",
4642 | "peer": true,
4643 | "dependencies": {
4644 | "@adraffy/ens-normalize": "1.10.0",
4645 | "@noble/curves": "1.2.0",
4646 | "@noble/hashes": "1.3.2",
4647 | "@scure/bip32": "1.3.2",
4648 | "@scure/bip39": "1.2.1",
4649 | "abitype": "1.0.0",
4650 | "isows": "1.0.3",
4651 | "ws": "8.13.0"
4652 | },
4653 | "peerDependencies": {
4654 | "typescript": ">=5.0.4"
4655 | },
4656 | "peerDependenciesMeta": {
4657 | "typescript": {
4658 | "optional": true
4659 | }
4660 | }
4661 | },
4662 | "node_modules/viem/node_modules/@noble/curves": {
4663 | "version": "1.2.0",
4664 | "license": "MIT",
4665 | "peer": true,
4666 | "dependencies": {
4667 | "@noble/hashes": "1.3.2"
4668 | },
4669 | "funding": {
4670 | "url": "https://paulmillr.com/funding/"
4671 | }
4672 | },
4673 | "node_modules/viem/node_modules/@noble/hashes": {
4674 | "version": "1.3.2",
4675 | "license": "MIT",
4676 | "peer": true,
4677 | "engines": {
4678 | "node": ">= 16"
4679 | },
4680 | "funding": {
4681 | "url": "https://paulmillr.com/funding/"
4682 | }
4683 | },
4684 | "node_modules/watchpack": {
4685 | "version": "2.4.0",
4686 | "dev": true,
4687 | "license": "MIT",
4688 | "dependencies": {
4689 | "glob-to-regexp": "^0.4.1",
4690 | "graceful-fs": "^4.1.2"
4691 | },
4692 | "engines": {
4693 | "node": ">=10.13.0"
4694 | }
4695 | },
4696 | "node_modules/wcwidth": {
4697 | "version": "1.0.1",
4698 | "dev": true,
4699 | "license": "MIT",
4700 | "dependencies": {
4701 | "defaults": "^1.0.3"
4702 | }
4703 | },
4704 | "node_modules/web-streams-polyfill": {
4705 | "version": "3.3.2",
4706 | "dev": true,
4707 | "license": "MIT",
4708 | "engines": {
4709 | "node": ">= 8"
4710 | }
4711 | },
4712 | "node_modules/webpack": {
4713 | "version": "5.90.1",
4714 | "dev": true,
4715 | "license": "MIT",
4716 | "dependencies": {
4717 | "@types/eslint-scope": "^3.7.3",
4718 | "@types/estree": "^1.0.5",
4719 | "@webassemblyjs/ast": "^1.11.5",
4720 | "@webassemblyjs/wasm-edit": "^1.11.5",
4721 | "@webassemblyjs/wasm-parser": "^1.11.5",
4722 | "acorn": "^8.7.1",
4723 | "acorn-import-assertions": "^1.9.0",
4724 | "browserslist": "^4.21.10",
4725 | "chrome-trace-event": "^1.0.2",
4726 | "enhanced-resolve": "^5.15.0",
4727 | "es-module-lexer": "^1.2.1",
4728 | "eslint-scope": "5.1.1",
4729 | "events": "^3.2.0",
4730 | "glob-to-regexp": "^0.4.1",
4731 | "graceful-fs": "^4.2.9",
4732 | "json-parse-even-better-errors": "^2.3.1",
4733 | "loader-runner": "^4.2.0",
4734 | "mime-types": "^2.1.27",
4735 | "neo-async": "^2.6.2",
4736 | "schema-utils": "^3.2.0",
4737 | "tapable": "^2.1.1",
4738 | "terser-webpack-plugin": "^5.3.10",
4739 | "watchpack": "^2.4.0",
4740 | "webpack-sources": "^3.2.3"
4741 | },
4742 | "bin": {
4743 | "webpack": "bin/webpack.js"
4744 | },
4745 | "engines": {
4746 | "node": ">=10.13.0"
4747 | },
4748 | "funding": {
4749 | "type": "opencollective",
4750 | "url": "https://opencollective.com/webpack"
4751 | },
4752 | "peerDependenciesMeta": {
4753 | "webpack-cli": {
4754 | "optional": true
4755 | }
4756 | }
4757 | },
4758 | "node_modules/webpack-merge": {
4759 | "version": "5.10.0",
4760 | "dev": true,
4761 | "license": "MIT",
4762 | "dependencies": {
4763 | "clone-deep": "^4.0.1",
4764 | "flat": "^5.0.2",
4765 | "wildcard": "^2.0.0"
4766 | },
4767 | "engines": {
4768 | "node": ">=10.0.0"
4769 | }
4770 | },
4771 | "node_modules/webpack-sources": {
4772 | "version": "3.2.3",
4773 | "dev": true,
4774 | "license": "MIT",
4775 | "engines": {
4776 | "node": ">=10.13.0"
4777 | }
4778 | },
4779 | "node_modules/webpack-virtual-modules": {
4780 | "version": "0.5.0",
4781 | "dev": true,
4782 | "license": "MIT"
4783 | },
4784 | "node_modules/which": {
4785 | "version": "2.0.2",
4786 | "dev": true,
4787 | "license": "ISC",
4788 | "dependencies": {
4789 | "isexe": "^2.0.0"
4790 | },
4791 | "bin": {
4792 | "node-which": "bin/node-which"
4793 | },
4794 | "engines": {
4795 | "node": ">= 8"
4796 | }
4797 | },
4798 | "node_modules/widest-line": {
4799 | "version": "3.1.0",
4800 | "dev": true,
4801 | "license": "MIT",
4802 | "dependencies": {
4803 | "string-width": "^4.0.0"
4804 | },
4805 | "engines": {
4806 | "node": ">=8"
4807 | }
4808 | },
4809 | "node_modules/wildcard": {
4810 | "version": "2.0.1",
4811 | "dev": true,
4812 | "license": "MIT"
4813 | },
4814 | "node_modules/wordwrap": {
4815 | "version": "1.0.0",
4816 | "dev": true,
4817 | "license": "MIT"
4818 | },
4819 | "node_modules/wordwrapjs": {
4820 | "version": "4.0.1",
4821 | "dev": true,
4822 | "license": "MIT",
4823 | "dependencies": {
4824 | "reduce-flatten": "^2.0.0",
4825 | "typical": "^5.2.0"
4826 | },
4827 | "engines": {
4828 | "node": ">=8.0.0"
4829 | }
4830 | },
4831 | "node_modules/wrap-ansi": {
4832 | "version": "6.2.0",
4833 | "dev": true,
4834 | "license": "MIT",
4835 | "dependencies": {
4836 | "ansi-styles": "^4.0.0",
4837 | "string-width": "^4.1.0",
4838 | "strip-ansi": "^6.0.0"
4839 | },
4840 | "engines": {
4841 | "node": ">=8"
4842 | }
4843 | },
4844 | "node_modules/wrappy": {
4845 | "version": "1.0.2",
4846 | "dev": true,
4847 | "license": "ISC"
4848 | },
4849 | "node_modules/ws": {
4850 | "version": "8.13.0",
4851 | "license": "MIT",
4852 | "engines": {
4853 | "node": ">=10.0.0"
4854 | },
4855 | "peerDependencies": {
4856 | "bufferutil": "^4.0.1",
4857 | "utf-8-validate": ">=5.0.2"
4858 | },
4859 | "peerDependenciesMeta": {
4860 | "bufferutil": {
4861 | "optional": true
4862 | },
4863 | "utf-8-validate": {
4864 | "optional": true
4865 | }
4866 | }
4867 | },
4868 | "node_modules/yallist": {
4869 | "version": "4.0.0",
4870 | "dev": true,
4871 | "license": "ISC"
4872 | },
4873 | "node_modules/yn": {
4874 | "version": "3.1.1",
4875 | "dev": true,
4876 | "license": "MIT",
4877 | "engines": {
4878 | "node": ">=6"
4879 | }
4880 | }
4881 | }
4882 | }
4883 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "phat-frame-template",
3 | "version": "1.0.0",
4 | "license": "MIT",
5 | "engines": {
6 | "node": ">=18"
7 | },
8 | "scripts": {
9 | "build": "phat-fn build --experimentalAsync",
10 | "test": "tsx src/test.ts",
11 | "lint": "tsc --noEmit",
12 | "publish": "phat-fn build --experimentalAsync && tsx scripts/publish.ts"
13 | },
14 | "devDependencies": {
15 | "@phala/fn": "~0.2.14",
16 | "tsx": "^4.7.0",
17 | "typechain": "^8.1.0",
18 | "typescript": "^5.2.2"
19 | },
20 | "dependencies": {
21 | "@coinbase/onchainkit": "^0.5.4"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/scripts/publish.ts:
--------------------------------------------------------------------------------
1 | // Call Thirdweb upload command to deploy compiled frame
2 | import { spawn } from 'child_process'
3 |
4 | try {
5 | const command = 'npx thirdweb upload dist/index.js'
6 | const childProcess = spawn(command, { shell: true })
7 |
8 | childProcess.stdout.on('data', (data) => {
9 | process.stdout.write(data)
10 | })
11 |
12 | let stderr = ''
13 | childProcess.stderr.on('data', (data) => {
14 | process.stderr.write(data)
15 | stderr += data
16 | })
17 |
18 | childProcess.on('close', (code) => {
19 | if (code === 0) {
20 | const regex = /ipfs:\/\/([a-zA-Z0-9]+)/;
21 | const match = stderr.match(regex);
22 |
23 | if (match) {
24 | const ipfsCid = match[1];
25 | console.log(`\nFrame deployed at: https://frames.phatfn.xyz/ipfs/${ipfsCid}`)
26 | console.log(`Simulate with Frames.js debugger: https://debugger.framesjs.org/debug?url=https://frames.phatfn.xyz/ipfs/${ipfsCid}`)
27 | } else {
28 | console.log('IPFS CID not found');
29 | }
30 | } else {
31 | console.log(`Command exited with code ${code}`)
32 | }
33 | });
34 | } catch (error) {
35 | console.error('Error:', error)
36 | }
--------------------------------------------------------------------------------
/src/frameSupport.ts:
--------------------------------------------------------------------------------
1 | export interface SerializedRequest {
2 | method: 'GET' | 'POST' | 'PATCH' | 'PUT';
3 | path: string;
4 | queries: Record;
5 | headers: Record;
6 | body?: string;
7 | secret?: Record;
8 | }
9 |
10 | export class Request implements SerializedRequest {
11 | method: 'GET' | 'POST' | 'PATCH' | 'PUT';
12 | path: string;
13 | queries: Record;
14 | headers: Record;
15 | body?: string;
16 | secret?: Record;
17 | constructor(raw: SerializedRequest) {
18 | this.body = raw.body;
19 | this.queries = raw.queries;
20 | this.headers = raw.headers;
21 | this.method = raw.method;
22 | this.path = raw.path;
23 | this.secret = raw.secret;
24 | }
25 | async json(): Promise {
26 | return JSON.parse(this.body!)
27 | }
28 | }
29 |
30 | type ResponseOption = {
31 | status?: number,
32 | headers?: Record
33 | }
34 | export class Response {
35 | status: number;
36 | body?: string;
37 | headers: Record;
38 | constructor(body: string, options?: ResponseOption) {
39 | this.status = options?.status ?? 200;
40 | this.body = body;
41 | this.headers = {
42 | 'Content-Type': 'text/html; charset=UTF-8',
43 | 'Access-Control-Allow-Origin': '*',
44 | ...options?.headers
45 | }
46 | }
47 | }
48 |
49 | export type Metadata = {
50 | title: string,
51 | description: string,
52 | openGraph: {
53 | title: string,
54 | description: string,
55 | images: [string],
56 | },
57 | other: Record,
58 | }
59 |
60 | export function renderOpenGraph(metadata: Metadata): string {
61 | const sortedMetadata = Object.entries(metadata.other)
62 | .sort((a, b) => a[0] < b[0] ? -1 : (a[0] > b[0] ? 1 : 0))
63 | return `
64 |
65 |
66 |
67 |
68 |
69 |
70 | ${metadata.title}
71 | ${sortedMetadata.map(([k, v]) => `
72 | `).join('')}
73 |
74 |
75 |
76 |

77 |
Frame hosted on FrameHub, a fully decentralized Vercel for Frame.
78 |

79 |
80 |
81 | `
82 | }
83 |
84 | export type RouteConfig = {
85 | GET?: (req: Request) => Promise,
86 | POST?: (req: Request) => Promise,
87 | PATCH?: (req: Request) => Promise,
88 | PUT?: (req: Request) => Promise,
89 | }
90 |
91 | export async function route(config: RouteConfig, request: string) {
92 | const reqObj: SerializedRequest = JSON.parse(request)
93 | let response: Response;
94 | const method = reqObj.method
95 | const req = new Request(reqObj)
96 | if (method == 'GET' && config.GET) {
97 | response = await config.GET(req);
98 | } else if (method == 'POST' && config.POST) {
99 | response = await config.POST(req);
100 | } else if (method == 'PATCH' && config.PATCH) {
101 | response = await config.PATCH(req);
102 | } else if (method == 'PUT' && config.PUT) {
103 | response = await config.PUT(req);
104 | } else {
105 | response = new Response('Not Found');
106 | response.status = 404
107 | }
108 | return JSON.stringify(response)
109 | }
110 |
111 | // Only works for ascii string
112 | export function stringToHex(str: string): string {
113 | let hex = '';
114 | for (let i = 0; i < str.length; i++) {
115 | hex += str.charCodeAt(i).toString(16).padStart(2, '0');
116 | }
117 | return '0x' + hex;
118 | }
119 |
--------------------------------------------------------------------------------
/src/index.ts:
--------------------------------------------------------------------------------
1 | import { type FrameRequest } from '@coinbase/onchainkit'
2 | import { getFrameMetadata } from '@coinbase/onchainkit/dist/lib/core/getFrameMetadata'
3 | import { getFrameMessage } from '@coinbase/onchainkit/dist/lib/core/getFrameMessage'
4 | import { Request, Response, renderOpenGraph, route } from './frameSupport'
5 |
6 | const BASE_URL = 'https://frames.phatfn.xyz'
7 | const image = 'https://i.imgur.com/belk1Ha.png'
8 |
9 | async function GET(req: Request): Promise {
10 | const secret = req.queries?.key ?? '';
11 | const frameMetadata = getFrameMetadata({
12 | buttons: [
13 | {
14 | label: 'FrameHub Template\nClick Here!',
15 | },
16 | ],
17 | image: image,
18 | post_url: BASE_URL + req.path + `?key=${secret[0]}`,
19 | });
20 |
21 | return new Response(renderOpenGraph({
22 | title: BASE_URL + req.path,
23 | description: 'FrameHub',
24 | openGraph: {
25 | title: BASE_URL + req.path,
26 | description: 'FrameHub',
27 | images: [image],
28 | },
29 | other: frameMetadata,
30 | }),
31 | { headers: { 'Cache-Control': 'public, max-age=86400' } }
32 | );
33 | }
34 |
35 | async function getResponse(req: Request): Promise {
36 | let accountAddress: string | undefined = '';
37 | const secret = req.queries?.key ?? ''
38 | const apiKey = req.secret?.apiKey ?? 'NEYNAR_API';
39 |
40 | const body: FrameRequest = await req.json();
41 |
42 | const { isValid, message } = await getFrameMessage(body, { neynarApiKey: `${apiKey}`});
43 |
44 | if (isValid) {
45 | accountAddress = message.interactor.verified_accounts[0];
46 | }
47 | const frameMetadata = getFrameMetadata({
48 | buttons: [
49 | {
50 | label: `Phat Hello to ${accountAddress}`,
51 | },
52 | ],
53 | image: image,
54 | post_url: BASE_URL + req.path + `?key=${secret[0]}`,
55 | });
56 |
57 | return new Response(renderOpenGraph({
58 | title: BASE_URL + req.path,
59 | description: 'FrameHub',
60 | openGraph: {
61 | title: BASE_URL + req.path,
62 | description: 'FrameHub',
63 | images: [image],
64 | },
65 | other: frameMetadata,
66 | }),
67 | { headers: { 'Cache-Control': 'public, max-age=86400' } }
68 | );
69 | }
70 |
71 | async function POST(req: any): Promise {
72 | return getResponse(req);
73 | }
74 |
75 | export default async function main(request: string) {
76 | return await route({GET, POST}, request)
77 | }
78 |
--------------------------------------------------------------------------------
/src/test.ts:
--------------------------------------------------------------------------------
1 | import main from './index'
2 |
3 | async function execute(inputObj: any) {
4 | const inputJson = JSON.stringify(inputObj)
5 | console.log('INPUT:', inputJson)
6 | return await main(inputJson)
7 | }
8 |
9 | const sampleInput = {
10 | "untrustedData": {
11 | "fid": 2,
12 | "url": "https://fcpolls.com/polls/1",
13 | "messageHash": "0xd2b1ddc6c88e865a33cb1a565e0058d757042974",
14 | "timestamp": 1706243218,
15 | "network": 1,
16 | "buttonIndex": 2,
17 | "castId": {
18 | "fid": 226,
19 | "hash": "0xa48dd46161d8e57725f5e26e34ec19c13ff7f3b9"
20 | }
21 | },
22 | "trustedData": {
23 | "messageBytes": "d2b1ddc6c88e865a33cb1a565e0058d757042974..."
24 | }
25 | }
26 |
27 | async function test() {
28 | const getResult = await execute({
29 | method: 'GET',
30 | path: '/ipfs/QmVHbLYhhYA5z6yKpQr4JWr3D54EhbSsh7e7BFAAyrkkMf',
31 | queries: {},
32 | secret: {},
33 | headers: {},
34 | })
35 | console.log('GET RESULT:', JSON.parse(getResult))
36 |
37 | const postResult = await execute({
38 | method: 'POST',
39 | path: '/ipfs/QmVHbLYhhYA5z6yKpQr4JWr3D54EhbSsh7e7BFAAyrkkMf',
40 | queries: {
41 | page: ['1'],
42 | },
43 | secret: {},
44 | headers: {},
45 | body: JSON.stringify(sampleInput)
46 | })
47 | console.log('POST RESULT:', JSON.parse(postResult))
48 | }
49 |
50 | test().then(() => {}).catch(err => console.error(err)).finally(() => process.exit())
51 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es2020",
4 | "module": "es6",
5 | "esModuleInterop": true,
6 | "forceConsistentCasingInFileNames": true,
7 | "strict": true,
8 | "skipLibCheck": true,
9 | "resolveJsonModule": true,
10 | "moduleResolution": "node",
11 | "paths": {
12 | "@coinbase/onchainkit/dist/lib/*": ["./node_modules/@coinbase/onchainkit/dist/types/*"]
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------