conflux-devkit 0.1.0 → 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -3
- package/package.json +16 -8
- package/ui/out/404/index.html +1 -1
- package/ui/out/404.html +1 -1
- package/ui/out/_next/static/chunks/396-562c04e9b7b045b0.js +1 -0
- package/ui/out/_next/static/chunks/857-29a9f364362f8f11.js +1 -0
- package/ui/out/_next/static/chunks/app/accounts/{page-f26a4c8967b60c31.js → page-5b24a315e816d789.js} +1 -1
- package/ui/out/_next/static/chunks/app/contracts/{page-56d74025e6315a3d.js → page-1900c5c36e90659a.js} +1 -1
- package/ui/out/_next/static/chunks/app/layout-6786a4fb0ca70d8e.js +1 -0
- package/ui/out/_next/static/chunks/app/mining/{page-8305d73847b829c9.js → page-a94e698d821568e8.js} +1 -1
- package/ui/out/_next/static/chunks/app/network/{page-eea297c1ae180bda.js → page-debb77f61f82c41b.js} +1 -1
- package/ui/out/_next/static/chunks/app/{page-90d8520902c1a7b0.js → page-880523e9c3ffa6a7.js} +1 -1
- package/ui/out/_next/static/chunks/app/wallet/{page-74cdd3297d391701.js → page-75dc9631f0397f5f.js} +1 -1
- package/ui/out/_next/static/chunks/{main-app-565ce517a559065d.js → main-app-1c0fa28c1455a6a7.js} +1 -1
- package/ui/out/_next/static/css/b6dbdda708b9257a.css +3 -0
- package/ui/out/accounts/index.html +1 -1
- package/ui/out/accounts/index.txt +4 -4
- package/ui/out/contracts/index.html +1 -1
- package/ui/out/contracts/index.txt +4 -4
- package/ui/out/index.html +1 -1
- package/ui/out/index.txt +4 -4
- package/ui/out/mining/index.html +1 -1
- package/ui/out/mining/index.txt +4 -4
- package/ui/out/network/index.html +1 -1
- package/ui/out/network/index.txt +4 -4
- package/ui/out/wallet/index.html +1 -1
- package/ui/out/wallet/index.txt +4 -4
- package/ui/out/_next/static/-7MZn09F75tC02XxCAzYQ/_buildManifest.js +0 -1
- package/ui/out/_next/static/-7MZn09F75tC02XxCAzYQ/_ssgManifest.js +0 -1
- package/ui/out/_next/static/-Yup9TU2qbfFuEoVK7cV3/_buildManifest.js +0 -1
- package/ui/out/_next/static/-Yup9TU2qbfFuEoVK7cV3/_ssgManifest.js +0 -1
- package/ui/out/_next/static/2FNwKfitLrla-BD4Pvi7U/_buildManifest.js +0 -1
- package/ui/out/_next/static/2FNwKfitLrla-BD4Pvi7U/_ssgManifest.js +0 -1
- package/ui/out/_next/static/3dg2q5Zn_zf7tMeBD4-2x/_buildManifest.js +0 -1
- package/ui/out/_next/static/3dg2q5Zn_zf7tMeBD4-2x/_ssgManifest.js +0 -1
- package/ui/out/_next/static/EMBrL2fIteEXHVOa9QqbR/_buildManifest.js +0 -1
- package/ui/out/_next/static/EMBrL2fIteEXHVOa9QqbR/_ssgManifest.js +0 -1
- package/ui/out/_next/static/HC9l66u-S82fZ45n1NJvV/_buildManifest.js +0 -1
- package/ui/out/_next/static/HC9l66u-S82fZ45n1NJvV/_ssgManifest.js +0 -1
- package/ui/out/_next/static/JDizq7Hn5WLnElAxCtqyg/_buildManifest.js +0 -1
- package/ui/out/_next/static/JDizq7Hn5WLnElAxCtqyg/_ssgManifest.js +0 -1
- package/ui/out/_next/static/KVufTmdF91v3IsRvyub2i/_buildManifest.js +0 -1
- package/ui/out/_next/static/KVufTmdF91v3IsRvyub2i/_ssgManifest.js +0 -1
- package/ui/out/_next/static/UVWp8ZgmXIqxga6tJZU2j/_buildManifest.js +0 -1
- package/ui/out/_next/static/UVWp8ZgmXIqxga6tJZU2j/_ssgManifest.js +0 -1
- package/ui/out/_next/static/WVZ0izyd9YpKZhSNF1OSe/_buildManifest.js +0 -1
- package/ui/out/_next/static/WVZ0izyd9YpKZhSNF1OSe/_ssgManifest.js +0 -1
- package/ui/out/_next/static/_jTgcoBsv_xqKZx36-jrD/_buildManifest.js +0 -1
- package/ui/out/_next/static/_jTgcoBsv_xqKZx36-jrD/_ssgManifest.js +0 -1
- package/ui/out/_next/static/_tUKGLiPpF-Ioygkq7-R9/_buildManifest.js +0 -1
- package/ui/out/_next/static/_tUKGLiPpF-Ioygkq7-R9/_ssgManifest.js +0 -1
- package/ui/out/_next/static/chunks/205-997c9580ac2ccb04.js +0 -1
- package/ui/out/_next/static/chunks/238-baf384d341a98f9f.js +0 -1
- package/ui/out/_next/static/chunks/363-fd3f659dc66a2545.js +0 -1
- package/ui/out/_next/static/chunks/383-30e544e3db85d4b4.js +0 -1
- package/ui/out/_next/static/chunks/396-0d45f2627ca2432c.js +0 -1
- package/ui/out/_next/static/chunks/396-de3171781a3c5f52.js +0 -1
- package/ui/out/_next/static/chunks/5b8f0dd8-f9bbf8f44d8e6302.js +0 -1
- package/ui/out/_next/static/chunks/606-d510a7806cc50e18.js +0 -1
- package/ui/out/_next/static/chunks/628-ae8f2280d891101c.js +0 -1
- package/ui/out/_next/static/chunks/706-142eb06ca4e1b468.js +0 -1
- package/ui/out/_next/static/chunks/749-27e561f3f17b1ad3.js +0 -2
- package/ui/out/_next/static/chunks/815-ab30cec2ff88e700.js +0 -1
- package/ui/out/_next/static/chunks/826-c38d836f8f2bac38.js +0 -1
- package/ui/out/_next/static/chunks/903-2887fe814dfa6d5e.js +0 -1
- package/ui/out/_next/static/chunks/app/_not-found/page-fe94df087cbbeedb.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-21a02cc8bbbce9cf.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-2bf2eeddfcc46fd2.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-4fb77d9b03c79ef0.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-840e013892222293.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-8828d6c27ee45d5e.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-a5a4d066c57c6eba.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-cd6edb16de77e73a.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-ce44f544affcbb2e.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-fc53feb7e5bf6a0b.js +0 -1
- package/ui/out/_next/static/chunks/app/accounts/page-fe5a9daa4d22e115.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-091eba53f5dcb62b.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-265c4f26532b42ce.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-26c527bf8b829de6.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-53e2d2d715f76290.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-844c9f55a6ec9218.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-88416cc33eabdddb.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-9361399f80e19ab7.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-afebd14c1ae73ec9.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-b0f74db982762c7e.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-d88227b11f5ac4f6.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-e454dad9b03f36df.js +0 -1
- package/ui/out/_next/static/chunks/app/contracts/page-f269686063be5d4b.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-0bf0ed51d0d1d3e8.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-56f011c6a6b2930f.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-7422dc714ea7b763.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-88938a963d68eb45.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-a1d424de4fc1d283.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-add77f8e78dbfbf5.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-c087511efc77c1ef.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-eaaaddaebabc1e84.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-ecbbc3f527378bf4.js +0 -1
- package/ui/out/_next/static/chunks/app/layout-f8c5fec65e6ca0ff.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-14579efdb2e8f6c3.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-1e273a4949e2b650.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-2d151bdd475474f6.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-43cfe0d01f696e96.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-4ab3daab428e05f1.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-64c88d55a5788e20.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-79e2f952fc54ff89.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-ab0458f12921230c.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-ac2a555e62327efe.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-bb3068075a8088dd.js +0 -1
- package/ui/out/_next/static/chunks/app/mining/page-d4bad0ff79dd463a.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-3d5fbcf1eb37e0c5.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-4b692d29a3e609a8.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-5e33fbeb3a40de20.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-62a4488ea3bc2526.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-97cebccc451eb5c6.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-a50ebf9988b322b5.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-d7c0ceaa242f38f9.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-e152fafa7a4d7361.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-f3c51db982b5a388.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-f51d9ab619db1c20.js +0 -1
- package/ui/out/_next/static/chunks/app/network/page-f6b4c10c7d87957f.js +0 -1
- package/ui/out/_next/static/chunks/app/page-165b6a1747a64947.js +0 -1
- package/ui/out/_next/static/chunks/app/page-348c96e8d45c2559.js +0 -1
- package/ui/out/_next/static/chunks/app/page-3632f4f09f69c905.js +0 -1
- package/ui/out/_next/static/chunks/app/page-36afbe5e1cb8094f.js +0 -1
- package/ui/out/_next/static/chunks/app/page-557bd6270c5ad579.js +0 -1
- package/ui/out/_next/static/chunks/app/page-6d79f31ac0288bac.js +0 -1
- package/ui/out/_next/static/chunks/app/page-71fcaf2853c53e30.js +0 -1
- package/ui/out/_next/static/chunks/app/page-c430d30cb894c926.js +0 -1
- package/ui/out/_next/static/chunks/app/page-ce0f985468520dbc.js +0 -1
- package/ui/out/_next/static/chunks/app/page-f0dced734181e611.js +0 -1
- package/ui/out/_next/static/chunks/app/page-f27633bfbc515249.js +0 -1
- package/ui/out/_next/static/chunks/app/page-f7be59ea4e13f436.js +0 -1
- package/ui/out/_next/static/chunks/app/wallet/page-11fb46a5f4a8b0be.js +0 -1
- package/ui/out/_next/static/chunks/app/wallet/page-26003843604c7c8c.js +0 -1
- package/ui/out/_next/static/chunks/app/wallet/page-7041ba96cf94b9d6.js +0 -1
- package/ui/out/_next/static/chunks/app/wallet/page-716e9207662cbb13.js +0 -1
- package/ui/out/_next/static/chunks/app/wallet/page-766c3286d7fc1fbb.js +0 -1
- package/ui/out/_next/static/chunks/app/wallet/page-a3e3f3f091deed13.js +0 -1
- package/ui/out/_next/static/chunks/app/wallet/page-fb7030a6672345f4.js +0 -1
- package/ui/out/_next/static/chunks/app/wallet/page-feeafe9afcd3702d.js +0 -1
- package/ui/out/_next/static/css/0f4a493f8c2c55db.css +0 -3
- package/ui/out/_next/static/css/4169c0d861da624d.css +0 -3
- package/ui/out/_next/static/css/42c642225833b63d.css +0 -3
- package/ui/out/_next/static/css/4ec6b37afd49be73.css +0 -3
- package/ui/out/_next/static/css/6a8f3e28ef1137c2.css +0 -3
- package/ui/out/_next/static/css/6bbaea3800a74df9.css +0 -3
- package/ui/out/_next/static/css/73f87001fc8b2a52.css +0 -3
- package/ui/out/_next/static/css/90ccf9db21744740.css +0 -3
- package/ui/out/_next/static/css/9f0d4e440a0f0806.css +0 -3
- package/ui/out/_next/static/css/b1a2c26b7bd10f8d.css +0 -3
- package/ui/out/_next/static/css/c97b9630f605a98b.css +0 -3
- package/ui/out/_next/static/css/e5751e31c7620a6e.css +0 -3
- package/ui/out/_next/static/ezlluEQnUi2an273EFR3C/_buildManifest.js +0 -1
- package/ui/out/_next/static/ezlluEQnUi2an273EFR3C/_ssgManifest.js +0 -1
- package/ui/out/_next/static/ghzWYfWuW8Y8XavA7qfLx/_buildManifest.js +0 -1
- package/ui/out/_next/static/ghzWYfWuW8Y8XavA7qfLx/_ssgManifest.js +0 -1
- package/ui/out/_next/static/hzvSbCbk7BhWq0LE5xqx1/_buildManifest.js +0 -1
- package/ui/out/_next/static/hzvSbCbk7BhWq0LE5xqx1/_ssgManifest.js +0 -1
- package/ui/out/_next/static/p4x_NRy3wdFgXa-RI9_BQ/_buildManifest.js +0 -1
- package/ui/out/_next/static/p4x_NRy3wdFgXa-RI9_BQ/_ssgManifest.js +0 -1
- package/ui/out/_next/static/uKnkegMpJr2nHM4qD8J3D/_buildManifest.js +0 -1
- package/ui/out/_next/static/uKnkegMpJr2nHM4qD8J3D/_ssgManifest.js +0 -1
- package/ui/out/_next/static/vAN91b7edxmzrsDueacJ6/_buildManifest.js +0 -1
- package/ui/out/_next/static/vAN91b7edxmzrsDueacJ6/_ssgManifest.js +0 -1
- /package/ui/out/_next/static/{--YsNpX1nEj74gOnGiYDR → 1pmUXSfdurGOxXkNXPPYI}/_buildManifest.js +0 -0
- /package/ui/out/_next/static/{--YsNpX1nEj74gOnGiYDR → 1pmUXSfdurGOxXkNXPPYI}/_ssgManifest.js +0 -0
package/README.md
CHANGED
|
@@ -35,7 +35,7 @@ conflux-devkit [options]
|
|
|
35
35
|
| **Contracts** | Compile and deploy Solidity — choose from 6 built-in templates or paste custom source, call deployed contract functions |
|
|
36
36
|
| **Mining** | Mine N blocks on demand, or set an auto-mining interval (ms) |
|
|
37
37
|
| **Network** | View and update RPC / WebSocket ports and chain IDs |
|
|
38
|
-
| **Wallet** |
|
|
38
|
+
| **Wallet** | First-time setup wizard (generate new mnemonic, use Hardhat default, or import existing), encrypted HDKeystore, lock / unlock |
|
|
39
39
|
|
|
40
40
|
### Built-in Solidity templates
|
|
41
41
|
|
|
@@ -96,7 +96,24 @@ All messages are JSON with a `type` field:
|
|
|
96
96
|
| `node:status` | `{ running: boolean, pid?: number }` — node lifecycle change |
|
|
97
97
|
| `node:mined` | `{ blocks: number, hash: string }` — blocks mined |
|
|
98
98
|
|
|
99
|
+
## Platform support
|
|
100
|
+
|
|
101
|
+
`conflux-devkit` runs on any platform supported by [`@xcfx/node`](https://www.npmjs.com/package/@xcfx/node):
|
|
102
|
+
|
|
103
|
+
| OS | Architecture | Status |
|
|
104
|
+
|---|---|---|
|
|
105
|
+
| Linux | x64 | ✅ Supported |
|
|
106
|
+
| Linux | ARM64 | ✅ Supported |
|
|
107
|
+
| macOS | ARM64 (Apple Silicon) | ✅ Supported |
|
|
108
|
+
| macOS | x64 (Intel) | ❌ Not supported by `@xcfx/node` |
|
|
109
|
+
| Windows | x64 | ✅ Supported |
|
|
110
|
+
|
|
111
|
+
Node.js 20 or later is required.
|
|
112
|
+
|
|
99
113
|
## Environment data
|
|
100
114
|
|
|
101
|
-
Node data (keystore, genesis accounts, chain state) is stored in
|
|
102
|
-
|
|
115
|
+
Node data (keystore, genesis accounts, chain state) is stored per-wallet in
|
|
116
|
+
`~/.conflux-devkit/wallets/<wallet-id>/data/`. Delete this directory to reset
|
|
117
|
+
all state for a specific wallet, or remove `~/.conflux-devkit/` to start
|
|
118
|
+
fresh.
|
|
119
|
+
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "conflux-devkit",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "1.0.9",
|
|
4
4
|
"description": "Conflux local development environment — start and manage a local node via npx",
|
|
5
5
|
"bin": {
|
|
6
6
|
"conflux-devkit": "./dist/cli.js"
|
|
@@ -30,22 +30,30 @@
|
|
|
30
30
|
"tsup": "^8.5.1",
|
|
31
31
|
"typescript": "^5.7.3",
|
|
32
32
|
"vitest": "^4.0.18",
|
|
33
|
-
"@cfxdevkit/
|
|
34
|
-
"@cfxdevkit/
|
|
35
|
-
"@cfxdevkit/devnode": "
|
|
36
|
-
"@cfxdevkit/wallet": "
|
|
37
|
-
"
|
|
38
|
-
"
|
|
33
|
+
"@cfxdevkit/compiler": "1.0.9",
|
|
34
|
+
"@cfxdevkit/core": "1.0.9",
|
|
35
|
+
"@cfxdevkit/devnode": "1.0.9",
|
|
36
|
+
"@cfxdevkit/wallet": "1.0.9",
|
|
37
|
+
"conflux-devkit-ui": "0.1.0",
|
|
38
|
+
"@cfxdevkit/services": "1.0.9"
|
|
39
39
|
},
|
|
40
40
|
"publishConfig": {
|
|
41
41
|
"access": "public"
|
|
42
42
|
},
|
|
43
|
+
"repository": {
|
|
44
|
+
"type": "git",
|
|
45
|
+
"url": "git+https://github.com/cfxdevkit/devkit.git"
|
|
46
|
+
},
|
|
47
|
+
"homepage": "https://github.com/cfxdevkit/devkit#readme",
|
|
48
|
+
"bugs": {
|
|
49
|
+
"url": "https://github.com/cfxdevkit/devkit/issues"
|
|
50
|
+
},
|
|
43
51
|
"scripts": {
|
|
44
52
|
"build": "node scripts/copy-ui.mjs && tsup",
|
|
45
53
|
"dev:server": "tsup --watch",
|
|
46
54
|
"type-check": "tsc --noEmit",
|
|
47
55
|
"test": "vitest run --pass-with-no-tests",
|
|
48
|
-
"test:coverage": "vitest --run --coverage",
|
|
56
|
+
"test:coverage": "vitest --run --coverage --pass-with-no-tests",
|
|
49
57
|
"clean": "rm -rf dist ui/out",
|
|
50
58
|
"lint": "biome lint src/",
|
|
51
59
|
"lint:fix": "biome lint --write src/",
|
package/ui/out/404/index.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en" class="h-full"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en" class="h-full"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/b6dbdda708b9257a.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-ea02740f160b546a.js"/><script src="/_next/static/chunks/5b8f0dd8-7fc232be3e483640.js" async=""></script><script src="/_next/static/chunks/749-bd8c206e8e58f8b0.js" async=""></script><script src="/_next/static/chunks/main-app-1c0fa28c1455a6a7.js" async=""></script><script src="/_next/static/chunks/363-11ecfe8307834c37.js" async=""></script><script src="/_next/static/chunks/69-a23845cfa4a23071.js" async=""></script><script src="/_next/static/chunks/781-7af4662532da98ca.js" async=""></script><script src="/_next/static/chunks/857-29a9f364362f8f11.js" async=""></script><script src="/_next/static/chunks/396-562c04e9b7b045b0.js" async=""></script><script src="/_next/static/chunks/app/layout-6786a4fb0ca70d8e.js" async=""></script><meta name="robots" content="noindex"/><title>Conflux DevKit</title><meta name="description" content="Local Conflux development node manager"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="flex h-full overflow-hidden"><div class="flex h-full items-center justify-center"><div class="flex flex-col items-center gap-4 text-slate-500"><svg class="h-8 w-8 animate-spin" viewBox="0 0 24 24" fill="none" aria-hidden="true"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8v4a4 4 0 00-4 4H4z"></path></svg><span class="text-sm">Connecting to conflux-devkit…</span></div></div><script src="/_next/static/chunks/webpack-ea02740f160b546a.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/css/b6dbdda708b9257a.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"2:I[6608,[],\"\"]\n4:I[2728,[],\"\"]\n5:I[9836,[],\"\"]\n6:I[3251,[\"363\",\"static/chunks/363-11ecfe8307834c37.js\",\"69\",\"static/chunks/69-a23845cfa4a23071.js\",\"781\",\"static/chunks/781-7af4662532da98ca.js\",\"857\",\"static/chunks/857-29a9f364362f8f11.js\",\"396\",\"static/chunks/396-562c04e9b7b045b0.js\",\"185\",\"static/chunks/app/layout-6786a4fb0ca70d8e.js\"],\"Providers\"]\n7:I[4202,[\"363\",\"static/chunks/363-11ecfe8307834c37.js\",\"69\",\"static/chunks/69-a23845cfa4a23071.js\",\"781\",\"static/chunks/781-7af4662532da98ca.js\",\"857\",\"static/chunks/857-29a9f364362f8f11.js\",\"396\",\"static/chunks/396-562c04e9b7b045b0.js\",\"185\",\"static/chunks/app/layout-6786a4fb0ca70d8e.js\"],\"AppShell\"]\nd:I[8907,[],\"\"]\n8:{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"}\n9:{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"}\na:{\"display\":\"inline-block\"}\nb:{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0}\ne:[]\n"])</script><script>self.__next_f.push([1,"0:[\"$\",\"$L2\",null,{\"buildId\":\"1pmUXSfdurGOxXkNXPPYI\",\"assetPrefix\":\"\",\"urlParts\":[\"\",\"_not-found\",\"\"],\"initialTree\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},[[\"$L3\",[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null],null],null]},[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"/_not-found\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/b6dbdda708b9257a.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full\",\"children\":[\"$\",\"body\",null,{\"className\":\"flex h-full overflow-hidden\",\"children\":[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$8\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$9\",\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":\"$a\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$b\",\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[]}]}]}]}]}]],null],null],\"couldBeIntercepted\":false,\"initialHead\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],\"$Lc\"],\"globalErrorComponent\":\"$d\",\"missingSlots\":\"$We\"}]\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"2\",{\"children\":\"Conflux DevKit\"}],[\"$\",\"meta\",\"3\",{\"name\":\"description\",\"content\":\"Local Conflux development node manager\"}]]\n3:null\n"])</script></body></html>
|
package/ui/out/404.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en" class="h-full"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en" class="h-full"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/b6dbdda708b9257a.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-ea02740f160b546a.js"/><script src="/_next/static/chunks/5b8f0dd8-7fc232be3e483640.js" async=""></script><script src="/_next/static/chunks/749-bd8c206e8e58f8b0.js" async=""></script><script src="/_next/static/chunks/main-app-1c0fa28c1455a6a7.js" async=""></script><script src="/_next/static/chunks/363-11ecfe8307834c37.js" async=""></script><script src="/_next/static/chunks/69-a23845cfa4a23071.js" async=""></script><script src="/_next/static/chunks/781-7af4662532da98ca.js" async=""></script><script src="/_next/static/chunks/857-29a9f364362f8f11.js" async=""></script><script src="/_next/static/chunks/396-562c04e9b7b045b0.js" async=""></script><script src="/_next/static/chunks/app/layout-6786a4fb0ca70d8e.js" async=""></script><meta name="robots" content="noindex"/><title>Conflux DevKit</title><meta name="description" content="Local Conflux development node manager"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="flex h-full overflow-hidden"><div class="flex h-full items-center justify-center"><div class="flex flex-col items-center gap-4 text-slate-500"><svg class="h-8 w-8 animate-spin" viewBox="0 0 24 24" fill="none" aria-hidden="true"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8v4a4 4 0 00-4 4H4z"></path></svg><span class="text-sm">Connecting to conflux-devkit…</span></div></div><script src="/_next/static/chunks/webpack-ea02740f160b546a.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/css/b6dbdda708b9257a.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"2:I[6608,[],\"\"]\n4:I[2728,[],\"\"]\n5:I[9836,[],\"\"]\n6:I[3251,[\"363\",\"static/chunks/363-11ecfe8307834c37.js\",\"69\",\"static/chunks/69-a23845cfa4a23071.js\",\"781\",\"static/chunks/781-7af4662532da98ca.js\",\"857\",\"static/chunks/857-29a9f364362f8f11.js\",\"396\",\"static/chunks/396-562c04e9b7b045b0.js\",\"185\",\"static/chunks/app/layout-6786a4fb0ca70d8e.js\"],\"Providers\"]\n7:I[4202,[\"363\",\"static/chunks/363-11ecfe8307834c37.js\",\"69\",\"static/chunks/69-a23845cfa4a23071.js\",\"781\",\"static/chunks/781-7af4662532da98ca.js\",\"857\",\"static/chunks/857-29a9f364362f8f11.js\",\"396\",\"static/chunks/396-562c04e9b7b045b0.js\",\"185\",\"static/chunks/app/layout-6786a4fb0ca70d8e.js\"],\"AppShell\"]\nd:I[8907,[],\"\"]\n8:{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"}\n9:{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"}\na:{\"display\":\"inline-block\"}\nb:{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0}\ne:[]\n"])</script><script>self.__next_f.push([1,"0:[\"$\",\"$L2\",null,{\"buildId\":\"1pmUXSfdurGOxXkNXPPYI\",\"assetPrefix\":\"\",\"urlParts\":[\"\",\"_not-found\",\"\"],\"initialTree\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},[[\"$L3\",[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null],null],null]},[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"/_not-found\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/b6dbdda708b9257a.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full\",\"children\":[\"$\",\"body\",null,{\"className\":\"flex h-full overflow-hidden\",\"children\":[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$8\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$9\",\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":\"$a\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$b\",\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[]}]}]}]}]}]],null],null],\"couldBeIntercepted\":false,\"initialHead\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],\"$Lc\"],\"globalErrorComponent\":\"$d\",\"missingSlots\":\"$We\"}]\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"2\",{\"children\":\"Conflux DevKit\"}],[\"$\",\"meta\",\"3\",{\"name\":\"description\",\"content\":\"Local Conflux development node manager\"}]]\n3:null\n"])</script></body></html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[396],{4396:function(e,t,s){s.d(t,{M:function(){return j}});var a=s(5853),r=s(4852),n=s(6632),l=s(9928),o=s(3264),i=s(9754),c=s(4710),d=s(6475),u=s(1464),f=s(5061),m=s(4254),x=s(8144),p=s(3368),h=s(5570),b=s(2566),g=s(9510);function v(e){let{text:t}=e,[s,r]=(0,m.useState)(!1);return(0,a.jsx)("button",{type:"button",title:"Copy",className:"rounded p-1.5 text-slate-400 hover:bg-slate-800 hover:text-white transition-colors",onClick:async()=>{await navigator.clipboard.writeText(t),r(!0),setTimeout(()=>r(!1),1500)},children:s?(0,a.jsx)(l.Z,{className:"h-4 w-4 text-green-400"}):(0,a.jsx)(o.Z,{className:"h-4 w-4"})})}function j(e){var t;let{onDone:s}=e,l=(0,r.NL)(),[o,j]=(0,m.useState)("choose"),[y,w]=(0,m.useState)("generate"),[N,k]=(0,m.useState)(""),[C,S]=(0,m.useState)(""),[_,T]=(0,m.useState)("Default"),[P,E]=(0,m.useState)(""),[R,z]=(0,m.useState)(""),[I,Z]=(0,m.useState)(""),[W,D]=(0,m.useState)(!1),O=(0,n.D)({mutationFn:x.SC.generate,onSuccess:e=>{k(e.mnemonic),S(e.mnemonic),j("confirm")}}),L=(0,n.D)({mutationFn:()=>{if(P&&P!==R)throw Error("Passwords do not match");return x.SC.setup({mnemonic:C.trim(),label:_.trim()||"Default",password:P||void 0})},onSuccess:()=>{l.invalidateQueries({queryKey:["keystore"]}),null==s||s()},onError:e=>Z(e.message)});return(0,a.jsx)("div",{className:"flex w-full justify-center p-4",children:(0,a.jsxs)(h.Zb,{className:"w-full max-w-lg border-cfx-500/20 shadow-[0_0_30px_-10px_rgba(14,165,233,0.15)]",children:[(0,a.jsxs)(h.Ol,{children:[(0,a.jsx)(h.ll,{className:"text-xl",children:"First-time Setup"}),(0,a.jsx)(h.SZ,{children:"Create or import a mnemonic to derive genesis accounts for your local Conflux node. The mnemonic is stored encrypted on disk."})]}),(0,a.jsx)(h.aY,{children:"choose"===o?(0,a.jsxs)("div",{className:"flex flex-col gap-4 py-4",children:[(0,a.jsxs)(p.z,{size:"lg",className:"w-full flex items-center justify-center gap-2",disabled:O.isPending,onClick:()=>{w("generate"),O.mutate()},children:[(0,a.jsx)(i.Z,{className:"h-5 w-5 ".concat(O.isPending?"animate-spin":"")}),"Generate New Mnemonic"]}),(0,a.jsxs)("div",{className:"relative my-1",children:[(0,a.jsx)("div",{className:"absolute inset-0 flex items-center",children:(0,a.jsx)("span",{className:"w-full border-t border-slate-800"})}),(0,a.jsx)("div",{className:"relative flex justify-center text-xs uppercase",children:(0,a.jsx)("span",{className:"bg-slate-900/50 px-2 text-slate-500",children:"or"})})]}),(0,a.jsxs)(p.z,{variant:"outline",size:"lg",className:"w-full flex items-center justify-center gap-2 border-amber-700/60 text-amber-400 hover:border-amber-600 hover:bg-amber-950/40 hover:text-amber-300",onClick:()=>{w("hardhat"),k(""),S("test test test test test test test test test test test junk"),j("confirm")},children:[(0,a.jsx)(c.Z,{className:"h-5 w-5"}),"Use Hardhat Default Mnemonic"]}),(0,a.jsxs)("div",{className:"relative my-1",children:[(0,a.jsx)("div",{className:"absolute inset-0 flex items-center",children:(0,a.jsx)("span",{className:"w-full border-t border-slate-800"})}),(0,a.jsx)("div",{className:"relative flex justify-center text-xs uppercase",children:(0,a.jsx)("span",{className:"bg-slate-900/50 px-2 text-slate-500",children:"or"})})]}),(0,a.jsxs)(p.z,{variant:"outline",size:"lg",className:"w-full flex items-center justify-center gap-2",onClick:()=>{w("import"),k(""),S(""),j("confirm")},children:[(0,a.jsx)(d.Z,{className:"h-5 w-5"}),"Import Existing Mnemonic"]})]}):(0,a.jsxs)("div",{className:"space-y-6",children:["hardhat"===y&&(0,a.jsxs)("div",{className:"flex items-start gap-3 rounded-lg border border-amber-700/50 bg-amber-950/30 px-4 py-3 text-sm text-amber-300",children:[(0,a.jsx)(u.Z,{className:"mt-0.5 h-4 w-4 shrink-0 text-amber-400"}),(0,a.jsxs)("div",{className:"space-y-1",children:[(0,a.jsx)("p",{className:"font-medium text-amber-200",children:"Known test mnemonic — do not use with real funds"}),(0,a.jsx)("p",{className:"text-amber-400/80",children:"This is the public Hardhat default phrase. Anyone knows it. It is safe for local development only. Future features for testnet and mainnet deployment will be disabled while this mnemonic is active."})]})]}),N?(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"rounded-lg border border-cfx-500/30 bg-cfx-900/10 p-4 shadow-inner",children:[(0,a.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,a.jsxs)("span",{className:"flex items-center gap-2 text-sm font-medium text-cfx-400",children:[(0,a.jsx)(f.Z,{className:"h-4 w-4"})," Secret Recovery Phrase"]}),(0,a.jsx)(v,{text:N})]}),(0,a.jsx)("p",{className:"rounded-md border border-slate-800 bg-slate-950 p-3 text-center font-mono text-sm leading-relaxed tracking-wide text-slate-200",children:N})]}),(0,a.jsxs)("label",{className:"flex cursor-pointer items-center gap-3 rounded-md border border-slate-700 bg-slate-800/50 px-4 py-3 text-sm text-slate-300 transition-colors hover:bg-slate-800",children:[(0,a.jsx)("input",{type:"checkbox",className:"h-4 w-4 cursor-pointer rounded border-slate-600 bg-slate-900 text-cfx-500 focus:ring-cfx-500 focus:ring-offset-slate-900",checked:W,onChange:e=>D(e.target.checked)}),"I have securely saved this mnemonic phrase"]})]}):(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(g._,{children:"hardhat"===y?"Hardhat Default Mnemonic":"Recovery Phrase (12 or 24 words)"}),(0,a.jsx)("textarea",{className:"flex min-h-[80px] w-full rounded-md border border-slate-700 bg-slate-950 px-3 py-2 font-mono text-sm text-blue-100 placeholder:text-slate-600 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-cfx-500 disabled:cursor-not-allowed disabled:opacity-60",value:C,readOnly:"hardhat"===y,onChange:e=>S(e.target.value),placeholder:"word1 word2 word3 …"})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(g._,{children:"Wallet Label"}),(0,a.jsx)(b.I,{value:_,onChange:e=>T(e.target.value),placeholder:"Main Wallet"})]}),(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)(g._,{children:["Encrypt with password ",(0,a.jsx)("span",{className:"font-normal text-slate-500",children:"(optional)"})]}),(0,a.jsx)(b.I,{type:"password",value:P,onChange:e=>E(e.target.value),placeholder:"Leave blank for none"})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(g._,{children:"Confirm password"}),(0,a.jsx)(b.I,{type:"password",value:R,onChange:e=>z(e.target.value)})]})]}),(I||L.error)&&(0,a.jsx)("div",{className:"rounded-md border border-red-900/50 bg-red-950/30 p-3 text-sm text-red-500",children:I||(null===(t=L.error)||void 0===t?void 0:t.message)})]})}),"confirm"===o&&(0,a.jsxs)(h.eW,{className:"flex justify-between border-t border-slate-800 bg-slate-900/30 pt-6",children:[(0,a.jsx)(p.z,{variant:"ghost",onClick:()=>{j("choose"),w("generate"),k(""),S(""),Z(""),D(!1)},children:"Back"}),(0,a.jsx)(p.z,{disabled:!C.trim()||"generate"===y&&!W||L.isPending,onClick:()=>L.mutate(),children:L.isPending?"Setting up…":"Complete Setup"})]})]})})}},3368:function(e,t,s){s.d(t,{z:function(){return c}});var a=s(5853),r=s(4254),n=s(1145),l=s(5460),o=s(8337);let i=(0,l.j)("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-cfx-500 text-white hover:bg-cfx-600",destructive:"bg-red-500 text-destructive-foreground hover:bg-red-500/90",outline:"border border-slate-700 bg-transparent hover:bg-slate-800 text-white",secondary:"bg-slate-800 text-slate-100 hover:bg-slate-700",ghost:"hover:bg-slate-800 hover:text-slate-100",link:"text-cfx-500 underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),c=r.forwardRef((e,t)=>{let{className:s,variant:r,size:l,asChild:c=!1,...d}=e,u=c?n.g7:"button";return(0,a.jsx)(u,{className:(0,o.cn)(i({variant:r,size:l,className:s})),ref:t,...d})});c.displayName="Button"},5570:function(e,t,s){s.d(t,{Ol:function(){return o},SZ:function(){return c},Zb:function(){return l},aY:function(){return d},eW:function(){return u},ll:function(){return i}});var a=s(5853),r=s(4254),n=s(8337);let l=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,n.cn)("rounded-xl border border-slate-800 bg-slate-900/50 text-slate-100 shadow",s),...r})});l.displayName="Card";let o=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,n.cn)("flex flex-col space-y-1.5 p-6",s),...r})});o.displayName="CardHeader";let i=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("h3",{ref:t,className:(0,n.cn)("font-semibold leading-none tracking-tight",s),...r})});i.displayName="CardTitle";let c=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("p",{ref:t,className:(0,n.cn)("text-sm text-slate-400",s),...r})});c.displayName="CardDescription";let d=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,n.cn)("p-6 pt-0",s),...r})});d.displayName="CardContent";let u=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,n.cn)("flex items-center p-6 pt-0",s),...r})});u.displayName="CardFooter"},2566:function(e,t,s){s.d(t,{I:function(){return l}});var a=s(5853),r=s(4254),n=s(8337);let l=r.forwardRef((e,t)=>{let{className:s,type:r,...l}=e;return(0,a.jsx)("input",{type:r,className:(0,n.cn)("flex h-10 w-full rounded-md border border-slate-700 bg-slate-950 px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-slate-500 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-cfx-500 focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",s),ref:t,...l})});l.displayName="Input"},9510:function(e,t,s){s.d(t,{_:function(){return c}});var a=s(5853),r=s(4254),n=s(5307),l=s(5460),o=s(8337);let i=(0,l.j)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-slate-300"),c=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.f,{ref:t,className:(0,o.cn)(i(),s),...r})});c.displayName=n.f.displayName},8144:function(e,t,s){s.d(t,{N9:function(){return f},SC:function(){return b},SX:function(){return m},Vp:function(){return x},fA:function(){return h},mI:function(){return p},pJ:function(){return g}});var a,r=s(2608);let n="".concat(null!==(a=r.env.NEXT_PUBLIC_API_URL)&&void 0!==a?a:"","/api");async function l(e,t,s){let a=await fetch("".concat(n).concat(t),{method:e,headers:s?{"Content-Type":"application/json"}:void 0,body:s?JSON.stringify(s):void 0});if(!a.ok){var r;throw Error(null!==(r=(await a.json().catch(()=>({error:a.statusText}))).error)&&void 0!==r?r:a.statusText)}return a.json()}let o=e=>l("GET",e),i=(e,t)=>l("POST",e,t),c=e=>l("DELETE",e),d=(e,t)=>l("PUT",e,t),u=(e,t)=>l("PATCH",e,t),f={status:()=>o("/node/status"),start:()=>i("/node/start"),stop:()=>i("/node/stop"),restart:()=>i("/node/restart"),restartWipe:()=>i("/node/restart-wipe"),wipe:()=>i("/node/wipe")},m={list:()=>o("/accounts"),faucet:()=>o("/accounts/faucet"),fund:async(e,t,s)=>{let a=await fetch("/api/accounts/fund",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({address:e,amount:t,chain:s})});return await a.json()}},x={templates:()=>o("/contracts/templates"),template:e=>o("/contracts/templates/".concat(e)),compile:(e,t)=>i("/contracts/compile",{source:e,contractName:t}),deploy:e=>i("/contracts/deploy",e),deployed:e=>o("/contracts/deployed".concat(e?"?chain=".concat(e):"")),deleteDeployed:e=>c("/contracts/deployed/".concat(e)),call:(e,t,s,a)=>i("/contracts/".concat(e,"/call"),{functionName:t,args:s,accountIndex:a})},p={status:()=>o("/mining/status"),mine:e=>i("/mining/mine",{blocks:e}),start:e=>i("/mining/start",{intervalMs:e}),stop:()=>i("/mining/stop")},h={config:()=>o("/network/config"),updateConfig:e=>d("/network/config",e),rpcUrls:()=>o("/network/rpc-urls")},b={status:()=>o("/keystore/status"),generate:()=>i("/keystore/generate"),setup:e=>i("/keystore/setup",e),unlock:e=>i("/keystore/unlock",{password:e}),lock:()=>i("/keystore/lock"),wallets:()=>o("/keystore/wallets"),addWallet:(e,t)=>i("/keystore/wallets",{mnemonic:e,label:t}),activateWallet:e=>i("/keystore/wallets/".concat(e,"/activate")),renameWallet:(e,t)=>u("/keystore/wallets/".concat(e),{label:t}),deleteWallet:e=>c("/keystore/wallets/".concat(e))},g={get:()=>o("/settings")}},8337:function(e,t,s){s.d(t,{cn:function(){return n}});var a=s(4685),r=s(4004);function n(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,r.m6)((0,a.W)(t))}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[857],{5294:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(3035).Z)("Activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]])},6152:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(3035).Z)("Box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]])},6475:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(3035).Z)("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]])},6970:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(3035).Z)("FileCode2",[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"m5 12-3 3 3 3",key:"oke12k"}],["path",{d:"m9 18 3-3-3-3",key:"112psh"}]])},4710:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(3035).Z)("HardHat",[["path",{d:"M10 10V5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v5",key:"1p9q5i"}],["path",{d:"M14 6a6 6 0 0 1 6 6v3",key:"1hnv84"}],["path",{d:"M4 15v-3a6 6 0 0 1 6-6",key:"9ciidu"}],["rect",{x:"2",y:"15",width:"20",height:"4",rx:"1",key:"g3x8cw"}]])},5061:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(3035).Z)("KeyRound",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]])},9754:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(3035).Z)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},1464:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(3035).Z)("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},3650:function(e,t,n){n.d(t,{default:function(){return a.a}});var r=n(5411),a=n.n(r)},9916:function(e,t,n){var r=n(2535);n.o(r,"usePathname")&&n.d(t,{usePathname:function(){return r.usePathname}})},2132:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"addLocale",{enumerable:!0,get:function(){return r}}),n(2498);let r=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return e};("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},8742:function(e,t,n){function r(e,t,n,r){return!1}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getDomainLocale",{enumerable:!0,get:function(){return r}}),n(2498),("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},5411:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return R}});let r=n(6150),a=n(5853),i=r._(n(4254)),o=n(2209),u=n(8258),s=n(3237),l=n(709),c=n(2132),f=n(9272),d=n(7160),h=n(6070),p=n(8742),g=n(1984),m=n(155),y=new Set;function _(e,t,n,r,a,i){if("undefined"!=typeof window&&(i||(0,u.isLocalURL)(t))){if(!r.bypassPrefetchedCheck){let a=t+"%"+n+"%"+(void 0!==r.locale?r.locale:"locale"in e?e.locale:void 0);if(y.has(a))return;y.add(a)}(async()=>i?e.prefetch(t,a):e.prefetch(t,n,r))().catch(e=>{})}}function E(e){return"string"==typeof e?e:(0,s.formatUrl)(e)}let R=i.default.forwardRef(function(e,t){let n,r;let{href:s,as:y,children:R,prefetch:b=null,passHref:v,replace:P,shallow:O,scroll:S,locale:A,onClick:C,onMouseEnter:T,onTouchStart:I,legacyBehavior:N=!1,...M}=e;n=R,N&&("string"==typeof n||"number"==typeof n)&&(n=(0,a.jsx)("a",{children:n}));let x=i.default.useContext(f.RouterContext),w=i.default.useContext(d.AppRouterContext),j=null!=x?x:w,D=!x,k=!1!==b,L=null===b?m.PrefetchKind.AUTO:m.PrefetchKind.FULL,{href:q,as:U}=i.default.useMemo(()=>{if(!x){let e=E(s);return{href:e,as:y?E(y):e}}let[e,t]=(0,o.resolveHref)(x,s,!0);return{href:e,as:y?(0,o.resolveHref)(x,y):t||e}},[x,s,y]),F=i.default.useRef(q),Q=i.default.useRef(U);N&&(r=i.default.Children.only(n));let H=N?r&&"object"==typeof r&&r.ref:t,[X,V,K]=(0,h.useIntersection)({rootMargin:"200px"}),Z=i.default.useCallback(e=>{(Q.current!==U||F.current!==q)&&(K(),Q.current=U,F.current=q),X(e),H&&("function"==typeof H?H(e):"object"==typeof H&&(H.current=e))},[U,H,q,K,X]);i.default.useEffect(()=>{j&&V&&k&&_(j,q,U,{locale:A},{kind:L},D)},[U,q,V,A,k,null==x?void 0:x.locale,j,D,L]);let G={ref:Z,onClick(e){N||"function"!=typeof C||C(e),N&&r.props&&"function"==typeof r.props.onClick&&r.props.onClick(e),j&&!e.defaultPrevented&&function(e,t,n,r,a,o,s,l,c){let{nodeName:f}=e.currentTarget;if("A"===f.toUpperCase()&&(function(e){let t=e.currentTarget.getAttribute("target");return t&&"_self"!==t||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.nativeEvent&&2===e.nativeEvent.which}(e)||!c&&!(0,u.isLocalURL)(n)))return;e.preventDefault();let d=()=>{let e=null==s||s;"beforePopState"in t?t[a?"replace":"push"](n,r,{shallow:o,locale:l,scroll:e}):t[a?"replace":"push"](r||n,{scroll:e})};c?i.default.startTransition(d):d()}(e,j,q,U,P,O,S,A,D)},onMouseEnter(e){N||"function"!=typeof T||T(e),N&&r.props&&"function"==typeof r.props.onMouseEnter&&r.props.onMouseEnter(e),j&&(k||!D)&&_(j,q,U,{locale:A,priority:!0,bypassPrefetchedCheck:!0},{kind:L},D)},onTouchStart:function(e){N||"function"!=typeof I||I(e),N&&r.props&&"function"==typeof r.props.onTouchStart&&r.props.onTouchStart(e),j&&(k||!D)&&_(j,q,U,{locale:A,priority:!0,bypassPrefetchedCheck:!0},{kind:L},D)}};if((0,l.isAbsoluteUrl)(U))G.href=U;else if(!N||v||"a"===r.type&&!("href"in r.props)){let e=void 0!==A?A:null==x?void 0:x.locale,t=(null==x?void 0:x.isLocaleDomain)&&(0,p.getDomainLocale)(U,e,null==x?void 0:x.locales,null==x?void 0:x.domainLocales);G.href=t||(0,g.addBasePath)((0,c.addLocale)(U,e,null==x?void 0:x.defaultLocale))}return N?i.default.cloneElement(r,G):(0,a.jsx)("a",{...M,...G,children:n})});("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},480:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{cancelIdleCallback:function(){return r},requestIdleCallback:function(){return n}});let n="undefined"!=typeof self&&self.requestIdleCallback&&self.requestIdleCallback.bind(window)||function(e){let t=Date.now();return self.setTimeout(function(){e({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-t))}})},1)},r="undefined"!=typeof self&&self.cancelIdleCallback&&self.cancelIdleCallback.bind(window)||function(e){return clearTimeout(e)};("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},2209:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"resolveHref",{enumerable:!0,get:function(){return f}});let r=n(5449),a=n(3237),i=n(1034),o=n(709),u=n(2498),s=n(8258),l=n(3443),c=n(4537);function f(e,t,n){let f;let d="string"==typeof t?t:(0,a.formatWithValidation)(t),h=d.match(/^[a-zA-Z]{1,}:\/\//),p=h?d.slice(h[0].length):d;if((p.split("?",1)[0]||"").match(/(\/\/|\\)/)){console.error("Invalid href '"+d+"' passed to next/router in page: '"+e.pathname+"'. Repeated forward-slashes (//) or backslashes \\ are not valid in the href.");let t=(0,o.normalizeRepeatedSlashes)(p);d=(h?h[0]:"")+t}if(!(0,s.isLocalURL)(d))return n?[d]:d;try{f=new URL(d.startsWith("#")?e.asPath:e.pathname,"http://n")}catch(e){f=new URL("/","http://n")}try{let e=new URL(d,f);e.pathname=(0,u.normalizePathTrailingSlash)(e.pathname);let t="";if((0,l.isDynamicRoute)(e.pathname)&&e.searchParams&&n){let n=(0,r.searchParamsToUrlQuery)(e.searchParams),{result:o,params:u}=(0,c.interpolateAs)(e.pathname,e.pathname,n);o&&(t=(0,a.formatWithValidation)({pathname:o,hash:e.hash,query:(0,i.omit)(n,u)}))}let o=e.origin===f.origin?e.href.slice(e.origin.length):e.href;return n?[o,t||o]:o}catch(e){return n?[d]:d}}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},6070:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"useIntersection",{enumerable:!0,get:function(){return s}});let r=n(4254),a=n(480),i="function"==typeof IntersectionObserver,o=new Map,u=[];function s(e){let{rootRef:t,rootMargin:n,disabled:s}=e,l=s||!i,[c,f]=(0,r.useState)(!1),d=(0,r.useRef)(null),h=(0,r.useCallback)(e=>{d.current=e},[]);return(0,r.useEffect)(()=>{if(i){if(l||c)return;let e=d.current;if(e&&e.tagName)return function(e,t,n){let{id:r,observer:a,elements:i}=function(e){let t;let n={root:e.root||null,margin:e.rootMargin||""},r=u.find(e=>e.root===n.root&&e.margin===n.margin);if(r&&(t=o.get(r)))return t;let a=new Map;return t={id:n,observer:new IntersectionObserver(e=>{e.forEach(e=>{let t=a.get(e.target),n=e.isIntersecting||e.intersectionRatio>0;t&&n&&t(n)})},e),elements:a},u.push(n),o.set(n,t),t}(n);return i.set(e,t),a.observe(e),function(){if(i.delete(e),a.unobserve(e),0===i.size){a.disconnect(),o.delete(r);let e=u.findIndex(e=>e.root===r.root&&e.margin===r.margin);e>-1&&u.splice(e,1)}}}(e,e=>e&&f(e),{root:null==t?void 0:t.current,rootMargin:n})}else if(!c){let e=(0,a.requestIdleCallback)(()=>f(!0));return()=>(0,a.cancelIdleCallback)(e)}},[l,n,t,c,d.current]),[h,c,(0,r.useCallback)(()=>{f(!1)},[])]}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},5868:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{ACTION_SUFFIX:function(){return s},APP_DIR_ALIAS:function(){return C},CACHE_ONE_YEAR:function(){return R},DOT_NEXT_ALIAS:function(){return S},ESLINT_DEFAULT_DIRS:function(){return K},GSP_NO_RETURNED_VALUE:function(){return U},GSSP_COMPONENT_MEMBER_ERROR:function(){return H},GSSP_NO_RETURNED_VALUE:function(){return F},INSTRUMENTATION_HOOK_FILENAME:function(){return P},MIDDLEWARE_FILENAME:function(){return b},MIDDLEWARE_LOCATION_REGEXP:function(){return v},NEXT_BODY_SUFFIX:function(){return f},NEXT_CACHE_IMPLICIT_TAG_ID:function(){return E},NEXT_CACHE_REVALIDATED_TAGS_HEADER:function(){return p},NEXT_CACHE_REVALIDATE_TAG_TOKEN_HEADER:function(){return g},NEXT_CACHE_SOFT_TAGS_HEADER:function(){return h},NEXT_CACHE_SOFT_TAG_MAX_LENGTH:function(){return _},NEXT_CACHE_TAGS_HEADER:function(){return d},NEXT_CACHE_TAG_MAX_ITEMS:function(){return m},NEXT_CACHE_TAG_MAX_LENGTH:function(){return y},NEXT_DATA_SUFFIX:function(){return l},NEXT_INTERCEPTION_MARKER_PREFIX:function(){return r},NEXT_META_SUFFIX:function(){return c},NEXT_QUERY_PARAM_PREFIX:function(){return n},NON_STANDARD_NODE_ENV:function(){return X},PAGES_DIR_ALIAS:function(){return O},PRERENDER_REVALIDATE_HEADER:function(){return a},PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER:function(){return i},PUBLIC_DIR_MIDDLEWARE_CONFLICT:function(){return w},ROOT_DIR_ALIAS:function(){return A},RSC_ACTION_CLIENT_WRAPPER_ALIAS:function(){return x},RSC_ACTION_ENCRYPTION_ALIAS:function(){return M},RSC_ACTION_PROXY_ALIAS:function(){return N},RSC_ACTION_VALIDATE_ALIAS:function(){return I},RSC_MOD_REF_PROXY_ALIAS:function(){return T},RSC_PREFETCH_SUFFIX:function(){return o},RSC_SUFFIX:function(){return u},SERVER_PROPS_EXPORT_ERROR:function(){return q},SERVER_PROPS_GET_INIT_PROPS_CONFLICT:function(){return D},SERVER_PROPS_SSG_CONFLICT:function(){return k},SERVER_RUNTIME:function(){return Z},SSG_FALLBACK_EXPORT_ERROR:function(){return V},SSG_GET_INITIAL_PROPS_CONFLICT:function(){return j},STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR:function(){return L},UNSTABLE_REVALIDATE_RENAME_ERROR:function(){return Q},WEBPACK_LAYERS:function(){return W},WEBPACK_RESOURCE_QUERIES:function(){return Y}});let n="nxtP",r="nxtI",a="x-prerender-revalidate",i="x-prerender-revalidate-if-generated",o=".prefetch.rsc",u=".rsc",s=".action",l=".json",c=".meta",f=".body",d="x-next-cache-tags",h="x-next-cache-soft-tags",p="x-next-revalidated-tags",g="x-next-revalidate-tag-token",m=128,y=256,_=1024,E="_N_T_",R=31536e3,b="middleware",v=`(?:src/)?${b}`,P="instrumentation",O="private-next-pages",S="private-dot-next",A="private-next-root-dir",C="private-next-app-dir",T="private-next-rsc-mod-ref-proxy",I="private-next-rsc-action-validate",N="private-next-rsc-server-reference",M="private-next-rsc-action-encryption",x="private-next-rsc-action-client-wrapper",w="You can not have a '_next' folder inside of your public folder. This conflicts with the internal '/_next' route. https://nextjs.org/docs/messages/public-next-folder-conflict",j="You can not use getInitialProps with getStaticProps. To use SSG, please remove your getInitialProps",D="You can not use getInitialProps with getServerSideProps. Please remove getInitialProps.",k="You can not use getStaticProps or getStaticPaths with getServerSideProps. To use SSG, please remove getServerSideProps",L="can not have getInitialProps/getServerSideProps, https://nextjs.org/docs/messages/404-get-initial-props",q="pages with `getServerSideProps` can not be exported. See more info here: https://nextjs.org/docs/messages/gssp-export",U="Your `getStaticProps` function did not return an object. Did you forget to add a `return`?",F="Your `getServerSideProps` function did not return an object. Did you forget to add a `return`?",Q="The `unstable_revalidate` property is available for general use.\nPlease use `revalidate` instead.",H="can not be attached to a page's component and must be exported from the page. See more info here: https://nextjs.org/docs/messages/gssp-component-member",X='You are using a non-standard "NODE_ENV" value in your environment. This creates inconsistencies in the project and is strongly advised against. Read more: https://nextjs.org/docs/messages/non-standard-node-env',V="Pages with `fallback` enabled in `getStaticPaths` can not be exported. See more info here: https://nextjs.org/docs/messages/ssg-fallback-true-export",K=["app","pages","components","lib","src"],Z={edge:"edge",experimentalEdge:"experimental-edge",nodejs:"nodejs"},G={shared:"shared",reactServerComponents:"rsc",serverSideRendering:"ssr",actionBrowser:"action-browser",api:"api",middleware:"middleware",instrument:"instrument",edgeAsset:"edge-asset",appPagesBrowser:"app-pages-browser",appMetadataRoute:"app-metadata-route",appRouteHandler:"app-route-handler"},W={...G,GROUP:{serverOnly:[G.reactServerComponents,G.actionBrowser,G.appMetadataRoute,G.appRouteHandler,G.instrument],clientOnly:[G.serverSideRendering,G.appPagesBrowser],nonClientServerTarget:[G.middleware,G.api],app:[G.reactServerComponents,G.actionBrowser,G.appMetadataRoute,G.appRouteHandler,G.serverSideRendering,G.appPagesBrowser,G.shared,G.instrument]}},Y={edgeSSREntry:"__next_edge_ssr_entry__",metadata:"__next_metadata__",metadataRoute:"__next_metadata_route__",metadataImageMeta:"__next_metadata_image_meta__"}},5137:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"escapeStringRegexp",{enumerable:!0,get:function(){return a}});let n=/[|\\{}()[\]^$+*?.-]/,r=/[|\\{}()[\]^$+*?.-]/g;function a(e){return n.test(e)?e.replace(r,"\\$&"):e}},9272:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"RouterContext",{enumerable:!0,get:function(){return r}});let r=n(6150)._(n(4254)).default.createContext(null)},3237:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{formatUrl:function(){return i},formatWithValidation:function(){return u},urlObjectKeys:function(){return o}});let r=n(1119)._(n(5449)),a=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:n}=e,i=e.protocol||"",o=e.pathname||"",u=e.hash||"",s=e.query||"",l=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?l=t+e.host:n&&(l=t+(~n.indexOf(":")?"["+n+"]":n),e.port&&(l+=":"+e.port)),s&&"object"==typeof s&&(s=String(r.urlQueryToSearchParams(s)));let c=e.search||s&&"?"+s||"";return i&&!i.endsWith(":")&&(i+=":"),e.slashes||(!i||a.test(i))&&!1!==l?(l="//"+(l||""),o&&"/"!==o[0]&&(o="/"+o)):l||(l=""),u&&"#"!==u[0]&&(u="#"+u),c&&"?"!==c[0]&&(c="?"+c),""+i+l+(o=o.replace(/[?#]/g,encodeURIComponent))+(c=c.replace("#","%23"))+u}let o=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return i(e)}},3443:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{getSortedRoutes:function(){return r.getSortedRoutes},isDynamicRoute:function(){return a.isDynamicRoute}});let r=n(364),a=n(1746)},4537:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"interpolateAs",{enumerable:!0,get:function(){return i}});let r=n(4336),a=n(1754);function i(e,t,n){let i="",o=(0,a.getRouteRegex)(e),u=o.groups,s=(t!==e?(0,r.getRouteMatcher)(o)(t):"")||n;i=e;let l=Object.keys(u);return l.every(e=>{let t=s[e]||"",{repeat:n,optional:r}=u[e],a="["+(n?"...":"")+e+"]";return r&&(a=(t?"":"/")+"["+a+"]"),n&&!Array.isArray(t)&&(t=[t]),(r||e in s)&&(i=i.replace(a,n?t.map(e=>encodeURIComponent(e)).join("/"):encodeURIComponent(t))||"/")})||(i=""),{params:l,result:i}}},1746:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isDynamicRoute",{enumerable:!0,get:function(){return i}});let r=n(5402),a=/\/\[[^/]+?\](?=\/|$)/;function i(e){return(0,r.isInterceptionRouteAppPath)(e)&&(e=(0,r.extractInterceptionRouteInformation)(e).interceptedRoute),a.test(e)}},8258:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isLocalURL",{enumerable:!0,get:function(){return i}});let r=n(709),a=n(565);function i(e){if(!(0,r.isAbsoluteUrl)(e))return!0;try{let t=(0,r.getLocationOrigin)(),n=new URL(e,t);return n.origin===t&&(0,a.hasBasePath)(n.pathname)}catch(e){return!1}}},1034:function(e,t){function n(e,t){let n={};return Object.keys(e).forEach(r=>{t.includes(r)||(n[r]=e[r])}),n}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"omit",{enumerable:!0,get:function(){return n}})},5449:function(e,t){function n(e){let t={};return e.forEach((e,n)=>{void 0===t[n]?t[n]=e:Array.isArray(t[n])?t[n].push(e):t[n]=[t[n],e]}),t}function r(e){return"string"!=typeof e&&("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function a(e){let t=new URLSearchParams;return Object.entries(e).forEach(e=>{let[n,a]=e;Array.isArray(a)?a.forEach(e=>t.append(n,r(e))):t.set(n,r(a))}),t}function i(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return n.forEach(t=>{Array.from(t.keys()).forEach(t=>e.delete(t)),t.forEach((t,n)=>e.append(n,t))}),e}Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{assign:function(){return i},searchParamsToUrlQuery:function(){return n},urlQueryToSearchParams:function(){return a}})},4336:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getRouteMatcher",{enumerable:!0,get:function(){return a}});let r=n(709);function a(e){let{re:t,groups:n}=e;return e=>{let a=t.exec(e);if(!a)return!1;let i=e=>{try{return decodeURIComponent(e)}catch(e){throw new r.DecodeError("failed to decode param")}},o={};return Object.keys(n).forEach(e=>{let t=n[e],r=a[t.pos];void 0!==r&&(o[e]=~r.indexOf("/")?r.split("/").map(e=>i(e)):t.repeat?[i(r)]:i(r))}),o}}},1754:function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{getNamedMiddlewareRegex:function(){return h},getNamedRouteRegex:function(){return d},getRouteRegex:function(){return l},parseParameter:function(){return u}});let r=n(5868),a=n(5402),i=n(5137),o=n(2538);function u(e){let t=e.startsWith("[")&&e.endsWith("]");t&&(e=e.slice(1,-1));let n=e.startsWith("...");return n&&(e=e.slice(3)),{key:e,repeat:n,optional:t}}function s(e){let t=(0,o.removeTrailingSlash)(e).slice(1).split("/"),n={},r=1;return{parameterizedRoute:t.map(e=>{let t=a.INTERCEPTION_ROUTE_MARKERS.find(t=>e.startsWith(t)),o=e.match(/\[((?:\[.*\])|.+)\]/);if(t&&o){let{key:e,optional:a,repeat:s}=u(o[1]);return n[e]={pos:r++,repeat:s,optional:a},"/"+(0,i.escapeStringRegexp)(t)+"([^/]+?)"}if(!o)return"/"+(0,i.escapeStringRegexp)(e);{let{key:e,repeat:t,optional:a}=u(o[1]);return n[e]={pos:r++,repeat:t,optional:a},t?a?"(?:/(.+?))?":"/(.+?)":"/([^/]+?)"}}).join(""),groups:n}}function l(e){let{parameterizedRoute:t,groups:n}=s(e);return{re:RegExp("^"+t+"(?:/)?$"),groups:n}}function c(e){let{interceptionMarker:t,getSafeRouteKey:n,segment:r,routeKeys:a,keyPrefix:o}=e,{key:s,optional:l,repeat:c}=u(r),f=s.replace(/\W/g,"");o&&(f=""+o+f);let d=!1;(0===f.length||f.length>30)&&(d=!0),isNaN(parseInt(f.slice(0,1)))||(d=!0),d&&(f=n()),o?a[f]=""+o+s:a[f]=s;let h=t?(0,i.escapeStringRegexp)(t):"";return c?l?"(?:/"+h+"(?<"+f+">.+?))?":"/"+h+"(?<"+f+">.+?)":"/"+h+"(?<"+f+">[^/]+?)"}function f(e,t){let n;let u=(0,o.removeTrailingSlash)(e).slice(1).split("/"),s=(n=0,()=>{let e="",t=++n;for(;t>0;)e+=String.fromCharCode(97+(t-1)%26),t=Math.floor((t-1)/26);return e}),l={};return{namedParameterizedRoute:u.map(e=>{let n=a.INTERCEPTION_ROUTE_MARKERS.some(t=>e.startsWith(t)),o=e.match(/\[((?:\[.*\])|.+)\]/);if(n&&o){let[n]=e.split(o[0]);return c({getSafeRouteKey:s,interceptionMarker:n,segment:o[1],routeKeys:l,keyPrefix:t?r.NEXT_INTERCEPTION_MARKER_PREFIX:void 0})}return o?c({getSafeRouteKey:s,segment:o[1],routeKeys:l,keyPrefix:t?r.NEXT_QUERY_PARAM_PREFIX:void 0}):"/"+(0,i.escapeStringRegexp)(e)}).join(""),routeKeys:l}}function d(e,t){let n=f(e,t);return{...l(e),namedRegex:"^"+n.namedParameterizedRoute+"(?:/)?$",routeKeys:n.routeKeys}}function h(e,t){let{parameterizedRoute:n}=s(e),{catchAll:r=!0}=t;if("/"===n)return{namedRegex:"^/"+(r?".*":"")+"$"};let{namedParameterizedRoute:a}=f(e,!1);return{namedRegex:"^"+a+(r?"(?:(/.*)?)":"")+"$"}}},364:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getSortedRoutes",{enumerable:!0,get:function(){return r}});class n{insert(e){this._insert(e.split("/").filter(Boolean),[],!1)}smoosh(){return this._smoosh()}_smoosh(e){void 0===e&&(e="/");let t=[...this.children.keys()].sort();null!==this.slugName&&t.splice(t.indexOf("[]"),1),null!==this.restSlugName&&t.splice(t.indexOf("[...]"),1),null!==this.optionalRestSlugName&&t.splice(t.indexOf("[[...]]"),1);let n=t.map(t=>this.children.get(t)._smoosh(""+e+t+"/")).reduce((e,t)=>[...e,...t],[]);if(null!==this.slugName&&n.push(...this.children.get("[]")._smoosh(e+"["+this.slugName+"]/")),!this.placeholder){let t="/"===e?"/":e.slice(0,-1);if(null!=this.optionalRestSlugName)throw Error('You cannot define a route with the same specificity as a optional catch-all route ("'+t+'" and "'+t+"[[..."+this.optionalRestSlugName+']]").');n.unshift(t)}return null!==this.restSlugName&&n.push(...this.children.get("[...]")._smoosh(e+"[..."+this.restSlugName+"]/")),null!==this.optionalRestSlugName&&n.push(...this.children.get("[[...]]")._smoosh(e+"[[..."+this.optionalRestSlugName+"]]/")),n}_insert(e,t,r){if(0===e.length){this.placeholder=!1;return}if(r)throw Error("Catch-all must be the last part of the URL.");let a=e[0];if(a.startsWith("[")&&a.endsWith("]")){let n=a.slice(1,-1),o=!1;if(n.startsWith("[")&&n.endsWith("]")&&(n=n.slice(1,-1),o=!0),n.startsWith("...")&&(n=n.substring(3),r=!0),n.startsWith("[")||n.endsWith("]"))throw Error("Segment names may not start or end with extra brackets ('"+n+"').");if(n.startsWith("."))throw Error("Segment names may not start with erroneous periods ('"+n+"').");function i(e,n){if(null!==e&&e!==n)throw Error("You cannot use different slug names for the same dynamic path ('"+e+"' !== '"+n+"').");t.forEach(e=>{if(e===n)throw Error('You cannot have the same slug name "'+n+'" repeat within a single dynamic path');if(e.replace(/\W/g,"")===a.replace(/\W/g,""))throw Error('You cannot have the slug names "'+e+'" and "'+n+'" differ only by non-word symbols within a single dynamic path')}),t.push(n)}if(r){if(o){if(null!=this.restSlugName)throw Error('You cannot use both an required and optional catch-all route at the same level ("[...'+this.restSlugName+']" and "'+e[0]+'" ).');i(this.optionalRestSlugName,n),this.optionalRestSlugName=n,a="[[...]]"}else{if(null!=this.optionalRestSlugName)throw Error('You cannot use both an optional and required catch-all route at the same level ("[[...'+this.optionalRestSlugName+']]" and "'+e[0]+'").');i(this.restSlugName,n),this.restSlugName=n,a="[...]"}}else{if(o)throw Error('Optional route parameters are not yet supported ("'+e[0]+'").');i(this.slugName,n),this.slugName=n,a="[]"}}this.children.has(a)||this.children.set(a,new n),this.children.get(a)._insert(e.slice(1),t,r)}constructor(){this.placeholder=!0,this.children=new Map,this.slugName=null,this.restSlugName=null,this.optionalRestSlugName=null}}function r(e){let t=new n;return e.forEach(e=>t.insert(e)),t.smoosh()}},709:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{DecodeError:function(){return p},MiddlewareNotFoundError:function(){return _},MissingStaticPage:function(){return y},NormalizeError:function(){return g},PageNotFoundError:function(){return m},SP:function(){return d},ST:function(){return h},WEB_VITALS:function(){return n},execOnce:function(){return r},getDisplayName:function(){return s},getLocationOrigin:function(){return o},getURL:function(){return u},isAbsoluteUrl:function(){return i},isResSent:function(){return l},loadGetInitialProps:function(){return f},normalizeRepeatedSlashes:function(){return c},stringifyError:function(){return E}});let n=["CLS","FCP","FID","INP","LCP","TTFB"];function r(e){let t,n=!1;return function(){for(var r=arguments.length,a=Array(r),i=0;i<r;i++)a[i]=arguments[i];return n||(n=!0,t=e(...a)),t}}let a=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>a.test(e);function o(){let{protocol:e,hostname:t,port:n}=window.location;return e+"//"+t+(n?":"+n:"")}function u(){let{href:e}=window.location,t=o();return e.substring(t.length)}function s(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function l(e){return e.finished||e.headersSent}function c(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?"?"+t.slice(1).join("?"):"")}async function f(e,t){let n=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await f(t.Component,t.ctx)}:{};let r=await e.getInitialProps(t);if(n&&l(n))return r;if(!r)throw Error('"'+s(e)+'.getInitialProps()" should resolve to an object. But found "'+r+'" instead.');return r}let d="undefined"!=typeof performance,h=d&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class p extends Error{}class g extends Error{}class m extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message="Cannot find module for page: "+e}}class y extends Error{constructor(e,t){super(),this.message="Failed to load static file for page: "+e+" "+t}}class _ extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function E(e){return JSON.stringify({message:e.message,stack:e.stack})}},3260:function(e,t,n){n.d(t,{S:function(){return g}});var r=n(318),a=n(833),i=n(658),o=n(8529),u=class extends o.l{constructor(e={}){super(),this.config=e,this.#e=new Map}#e;build(e,t,n){let i=t.queryKey,o=t.queryHash??(0,r.Rm)(i,t),u=this.get(o);return u||(u=new a.A({client:e,queryKey:i,queryHash:o,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(i)}),this.add(u)),u}add(e){this.#e.has(e.queryHash)||(this.#e.set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){let t=this.#e.get(e.queryHash);t&&(e.destroy(),t===e&&this.#e.delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){i.Vr.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#e.get(e)}getAll(){return[...this.#e.values()]}find(e){let t={exact:!0,...e};return this.getAll().find(e=>(0,r._x)(t,e))}findAll(e={}){let t=this.getAll();return Object.keys(e).length>0?t.filter(t=>(0,r._x)(e,t)):t}notify(e){i.Vr.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){i.Vr.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){i.Vr.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},s=n(7332),l=class extends o.l{constructor(e={}){super(),this.config=e,this.#t=new Set,this.#n=new Map,this.#r=0}#t;#n;#r;build(e,t,n){let r=new s.m({client:e,mutationCache:this,mutationId:++this.#r,options:e.defaultMutationOptions(t),state:n});return this.add(r),r}add(e){this.#t.add(e);let t=c(e);if("string"==typeof t){let n=this.#n.get(t);n?n.push(e):this.#n.set(t,[e])}this.notify({type:"added",mutation:e})}remove(e){if(this.#t.delete(e)){let t=c(e);if("string"==typeof t){let n=this.#n.get(t);if(n){if(n.length>1){let t=n.indexOf(e);-1!==t&&n.splice(t,1)}else n[0]===e&&this.#n.delete(t)}}}this.notify({type:"removed",mutation:e})}canRun(e){let t=c(e);if("string"!=typeof t)return!0;{let n=this.#n.get(t),r=n?.find(e=>"pending"===e.state.status);return!r||r===e}}runNext(e){let t=c(e);if("string"!=typeof t)return Promise.resolve();{let n=this.#n.get(t)?.find(t=>t!==e&&t.state.isPaused);return n?.continue()??Promise.resolve()}}clear(){i.Vr.batch(()=>{this.#t.forEach(e=>{this.notify({type:"removed",mutation:e})}),this.#t.clear(),this.#n.clear()})}getAll(){return Array.from(this.#t)}find(e){let t={exact:!0,...e};return this.getAll().find(e=>(0,r.X7)(t,e))}findAll(e={}){return this.getAll().filter(t=>(0,r.X7)(e,t))}notify(e){i.Vr.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){let e=this.getAll().filter(e=>e.state.isPaused);return i.Vr.batch(()=>Promise.all(e.map(e=>e.continue().catch(r.ZT))))}};function c(e){return e.options.scope?.id}var f=n(8909),d=n(6583);function h(e){return{onFetch:(t,n)=>{let a=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,o=t.state.data?.pages||[],u=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},l=0,c=async()=>{let n=!1,c=e=>{(0,r.I4)(e,()=>t.signal,()=>n=!0)},f=(0,r.cG)(t.options,t.fetchOptions),d=async(e,a,i)=>{if(n)return Promise.reject();if(null==a&&e.pages.length)return Promise.resolve(e);let o=(()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:a,direction:i?"backward":"forward",meta:t.options.meta};return c(e),e})(),u=await f(o),{maxPages:s}=t.options,l=i?r.Ht:r.VX;return{pages:l(e.pages,u,s),pageParams:l(e.pageParams,a,s)}};if(i&&o.length){let e="backward"===i,t={pages:o,pageParams:u},n=(e?function(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}:p)(a,t);s=await d(t,n,e)}else{let t=e??o.length;do{let e=0===l?u[0]??a.initialPageParam:p(a,s);if(l>0&&null==e)break;s=await d(s,e),l++}while(l<t)}return s};t.options.persister?t.fetchFn=()=>t.options.persister?.(c,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=c}}}function p(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}var g=class{#a;#i;#o;#u;#s;#l;#c;#f;constructor(e={}){this.#a=e.queryCache||new u,this.#i=e.mutationCache||new l,this.#o=e.defaultOptions||{},this.#u=new Map,this.#s=new Map,this.#l=0}mount(){this.#l++,1===this.#l&&(this.#c=f.j.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#a.onFocus())}),this.#f=d.N.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#a.onOnline())}))}unmount(){this.#l--,0===this.#l&&(this.#c?.(),this.#c=void 0,this.#f?.(),this.#f=void 0)}isFetching(e){return this.#a.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#i.findAll({...e,status:"pending"}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return this.#a.get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=this.#a.build(this,t),a=n.state.data;return void 0===a?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime((0,r.KC)(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(a))}getQueriesData(e){return this.#a.findAll(e).map(({queryKey:e,state:t})=>[e,t.data])}setQueryData(e,t,n){let a=this.defaultQueryOptions({queryKey:e}),i=this.#a.get(a.queryHash),o=i?.state.data,u=(0,r.SE)(t,o);if(void 0!==u)return this.#a.build(this,a).setData(u,{...n,manual:!0})}setQueriesData(e,t,n){return i.Vr.batch(()=>this.#a.findAll(e).map(({queryKey:e})=>[e,this.setQueryData(e,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return this.#a.get(t.queryHash)?.state}removeQueries(e){let t=this.#a;i.Vr.batch(()=>{t.findAll(e).forEach(e=>{t.remove(e)})})}resetQueries(e,t){let n=this.#a;return i.Vr.batch(()=>(n.findAll(e).forEach(e=>{e.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t};return Promise.all(i.Vr.batch(()=>this.#a.findAll(e).map(e=>e.cancel(n)))).then(r.ZT).catch(r.ZT)}invalidateQueries(e,t={}){return i.Vr.batch(()=>(this.#a.findAll(e).forEach(e=>{e.invalidate()}),e?.refetchType==="none")?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??"active"},t))}refetchQueries(e,t={}){let n={...t,cancelRefetch:t.cancelRefetch??!0};return Promise.all(i.Vr.batch(()=>this.#a.findAll(e).filter(e=>!e.isDisabled()&&!e.isStatic()).map(e=>{let t=e.fetch(void 0,n);return n.throwOnError||(t=t.catch(r.ZT)),"paused"===e.state.fetchStatus?Promise.resolve():t}))).then(r.ZT)}fetchQuery(e){let t=this.defaultQueryOptions(e);void 0===t.retry&&(t.retry=!1);let n=this.#a.build(this,t);return n.isStaleByTime((0,r.KC)(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(r.ZT).catch(r.ZT)}fetchInfiniteQuery(e){return e.behavior=h(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(r.ZT).catch(r.ZT)}ensureInfiniteQueryData(e){return e.behavior=h(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return d.N.isOnline()?this.#i.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#a}getMutationCache(){return this.#i}getDefaultOptions(){return this.#o}setDefaultOptions(e){this.#o=e}setQueryDefaults(e,t){this.#u.set((0,r.Ym)(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...this.#u.values()],n={};return t.forEach(t=>{(0,r.to)(e,t.queryKey)&&Object.assign(n,t.defaultOptions)}),n}setMutationDefaults(e,t){this.#s.set((0,r.Ym)(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...this.#s.values()],n={};return t.forEach(t=>{(0,r.to)(e,t.mutationKey)&&Object.assign(n,t.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...this.#o.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=(0,r.Rm)(t.queryKey,t)),void 0===t.refetchOnReconnect&&(t.refetchOnReconnect="always"!==t.networkMode),void 0===t.throwOnError&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===r.CN&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#o.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#a.clear(),this.#i.clear()}}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[423],{2929:function(e,t,s){Promise.resolve().then(s.bind(s,7691))},7691:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return y}});var a=s(5853),c=s(4852),n=s(6632),l=s(8990),r=s(9928),i=s(3264),d=s(7201),o=s(3948),x=s(6804),u=s(4254),m=s(8144);function h(e){let{text:t}=e,[s,c]=(0,u.useState)(!1);return(0,a.jsx)("button",{type:"button",title:"Copy",className:"rounded p-0.5 text-slate-500 hover:text-slate-300",onClick:async()=>{await navigator.clipboard.writeText(t),c(!0),setTimeout(()=>c(!1),1500)},children:s?(0,a.jsx)(r.Z,{className:"h-3 w-3 text-green-400"}):(0,a.jsx)(i.Z,{className:"h-3 w-3"})})}function p(e){let{onClose:t}=e,s=(0,c.NL)(),[l,r]=(0,u.useState)(""),[i,d]=(0,u.useState)(""),[o,x]=(0,u.useState)("evm"),[h,p]=(0,u.useState)(""),y=(0,n.D)({mutationFn:()=>m.SX.fund(l,i||void 0,o),onSuccess:e=>{(null==e?void 0:e.confirmed)?p("✓ tx: ".concat(e.txHash," (confirmed)")):(null==e?void 0:e.txHash)?p("✓ tx: ".concat(e.txHash," (pending)")+((null==e?void 0:e.message)?" - ".concat(e.message):"")):p("Submitted"),s.invalidateQueries({queryKey:["accounts"]})},onError:e=>p("✗ ".concat(e.message))});return(0,a.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 p-4",children:(0,a.jsxs)("div",{className:"card w-full max-w-md space-y-4",children:[(0,a.jsx)("h2",{className:"font-medium text-white",children:"Fund Address"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"label",children:"Address"}),(0,a.jsx)("input",{className:"input",value:l,onChange:e=>r(e.target.value),placeholder:"0x… or cfx:…"})]}),(0,a.jsxs)("div",{className:"flex gap-3",children:[(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("label",{className:"label",children:"Amount (optional)"}),(0,a.jsx)("input",{className:"input",value:i,onChange:e=>d(e.target.value),placeholder:"1000"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"label",children:"Chain"}),(0,a.jsxs)("select",{className:"input",value:o,onChange:e=>x(e.target.value),children:[(0,a.jsx)("option",{value:"evm",children:"EVM"}),(0,a.jsx)("option",{value:"core",children:"Core"})]})]})]}),h&&(0,a.jsx)("p",{className:"text-sm text-slate-300",children:h}),(0,a.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,a.jsx)("button",{type:"button",className:"btn-secondary",onClick:t,children:"Close"}),(0,a.jsx)("button",{type:"button",className:"btn-primary",disabled:!l||y.isPending,onClick:()=>y.mutate(),children:y.isPending?"Sending…":"Fund"})]})]})})}function y(){let[e,t]=(0,u.useState)(!1),[s,c]=(0,u.useState)(!1),{data:n=[],isLoading:r}=(0,l.a)({queryKey:["accounts"],queryFn:m.SX.list}),{data:i}=(0,l.a)({queryKey:["accounts","faucet"],queryFn:m.SX.faucet});return(0,a.jsxs)("div",{className:"space-y-6",children:[s&&(0,a.jsx)(p,{onClose:()=>c(!1)}),(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-xl font-semibold text-white",children:"Accounts"}),(0,a.jsx)("p",{className:"mt-1 text-sm text-slate-400",children:"Pre-funded development accounts"})]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsxs)("button",{type:"button",className:"btn-secondary",onClick:()=>t(e=>!e),title:"Toggle private key visibility",children:[e?(0,a.jsx)(d.Z,{className:"h-4 w-4"}):(0,a.jsx)(o.Z,{className:"h-4 w-4"}),"Keys"]}),(0,a.jsxs)("button",{type:"button",className:"btn-primary",onClick:()=>c(!0),children:[(0,a.jsx)(x.Z,{className:"h-4 w-4"})," Fund"]})]})]}),i&&(0,a.jsxs)("div",{className:"card",children:[(0,a.jsx)("div",{className:"mb-2 text-xs font-medium uppercase tracking-wider text-slate-500",children:"Faucet Account"}),(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-xs text-slate-500",children:"Core"}),(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"truncate text-xs text-blue-300",children:i.coreAddress}),(0,a.jsx)(h,{text:i.coreAddress})]}),(0,a.jsxs)("div",{className:"text-sm text-slate-300",children:[i.coreBalance," CFX"]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-xs text-slate-500",children:"EVM"}),(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"truncate text-xs text-blue-300",children:i.evmAddress}),(0,a.jsx)(h,{text:i.evmAddress})]}),(0,a.jsxs)("div",{className:"text-sm text-slate-300",children:[i.evmBalance," CFX"]})]})]})]}),r?(0,a.jsx)("p",{className:"text-sm text-slate-500",children:"Loading…"}):(0,a.jsx)("div",{className:"overflow-x-auto rounded-lg border border-[#2a3147]",children:(0,a.jsxs)("table",{className:"w-full text-sm",children:[(0,a.jsx)("thead",{className:"bg-[#161b27] text-xs uppercase tracking-wider text-slate-500",children:(0,a.jsxs)("tr",{children:[(0,a.jsx)("th",{className:"px-4 py-2 text-left",children:"#"}),(0,a.jsx)("th",{className:"px-4 py-2 text-left",children:"Core Address"}),(0,a.jsx)("th",{className:"px-4 py-2 text-left",children:"EVM Address"}),(0,a.jsx)("th",{className:"px-4 py-2 text-right",children:"Core Balance"}),(0,a.jsx)("th",{className:"px-4 py-2 text-right",children:"EVM Balance"}),e&&(0,a.jsx)("th",{className:"px-4 py-2 text-left",children:"Private Key"})]})}),(0,a.jsx)("tbody",{className:"divide-y divide-[#2a3147]",children:n.map(t=>(0,a.jsxs)("tr",{className:"bg-[#0e1117] transition-colors hover:bg-[#161b27]",children:[(0,a.jsx)("td",{className:"px-4 py-2 text-slate-500",children:t.index}),(0,a.jsx)("td",{className:"px-4 py-2",children:(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"max-w-[200px] truncate text-xs text-blue-300",children:t.coreAddress}),(0,a.jsx)(h,{text:t.coreAddress})]})}),(0,a.jsx)("td",{className:"px-4 py-2",children:(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"max-w-[160px] truncate text-xs text-blue-300",children:t.evmAddress}),(0,a.jsx)(h,{text:t.evmAddress})]})}),(0,a.jsx)("td",{className:"px-4 py-2 text-right text-slate-300",children:t.coreBalance}),(0,a.jsx)("td",{className:"px-4 py-2 text-right text-slate-300",children:t.evmBalance}),e&&(0,a.jsx)("td",{className:"px-4 py-2",children:(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"max-w-[140px] truncate text-xs text-slate-400",children:t.privateKey}),(0,a.jsx)(h,{text:t.privateKey})]})})]},t.index))})]})})]})}},8144:function(e,t,s){"use strict";s.d(t,{N9:function(){return u},SC:function(){return j},SX:function(){return m},Vp:function(){return h},fA:function(){return y},mI:function(){return p},pJ:function(){return f}});var a,c=s(2608);let n="".concat(null!==(a=c.env.NEXT_PUBLIC_API_URL)&&void 0!==a?a:"","/api");async function l(e,t,s){let a=await fetch("".concat(n).concat(t),{method:e,headers:s?{"Content-Type":"application/json"}:void 0,body:s?JSON.stringify(s):void 0});if(!a.ok){var c;throw Error(null!==(c=(await a.json().catch(()=>({error:a.statusText}))).error)&&void 0!==c?c:a.statusText)}return a.json()}let r=e=>l("GET",e),i=(e,t)=>l("POST",e,t),d=e=>l("DELETE",e),o=(e,t)=>l("PUT",e,t),x=(e,t)=>l("PATCH",e,t),u={status:()=>r("/node/status"),start:()=>i("/node/start"),stop:()=>i("/node/stop"),restart:()=>i("/node/restart"),restartWipe:()=>i("/node/restart-wipe"),wipe:()=>i("/node/wipe")},m={list:()=>r("/accounts"),faucet:()=>r("/accounts/faucet"),fund:async(e,t,s)=>{let a=await fetch("/api/accounts/fund",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({address:e,amount:t,chain:s})});return await a.json()}},h={templates:()=>r("/contracts/templates"),template:e=>r("/contracts/templates/".concat(e)),compile:(e,t)=>i("/contracts/compile",{source:e,contractName:t}),deploy:e=>i("/contracts/deploy",e),deployed:e=>r("/contracts/deployed".concat(e?"?chain=".concat(e):"")),deleteDeployed:e=>d("/contracts/deployed/".concat(e)),call:(e,t,s,a)=>i("/contracts/".concat(e,"/call"),{functionName:t,args:s,accountIndex:a})},p={status:()=>r("/mining/status"),mine:e=>i("/mining/mine",{blocks:e}),start:e=>i("/mining/start",{intervalMs:e}),stop:()=>i("/mining/stop")},y={config:()=>r("/network/config"),updateConfig:e=>o("/network/config",e),rpcUrls:()=>r("/network/rpc-urls")},j={status:()=>r("/keystore/status"),generate:()=>i("/keystore/generate"),setup:e=>i("/keystore/setup",e),unlock:e=>i("/keystore/unlock",{password:e}),lock:()=>i("/keystore/lock"),wallets:()=>r("/keystore/wallets"),addWallet:(e,t)=>i("/keystore/wallets",{mnemonic:e,label:t}),activateWallet:e=>i("/keystore/wallets/".concat(e,"/activate")),renameWallet:(e,t)=>x("/keystore/wallets/".concat(e),{label:t}),deleteWallet:e=>d("/keystore/wallets/".concat(e))},f={get:()=>r("/settings")}},9928:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("CheckCheck",[["path",{d:"M18 6 7 17l-5-5",key:"116fxf"}],["path",{d:"m22 10-7.5 7.5L13 16",key:"ke71qq"}]])},3264:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]])},6804:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("Droplets",[["path",{d:"M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.1 3 12.25c0 2.22 1.8 4.05 4 4.05z",key:"1ptgy4"}],["path",{d:"M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2 4.9 4 6.5s3 3.5 3 5.5a6.98 6.98 0 0 1-11.91 4.97",key:"1sl1rz"}]])},7201:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("EyeOff",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},3948:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("Eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])}},function(e){e.O(0,[363,285,749,744],function(){return e(e.s=2929)}),_N_E=e.O()}]);
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[423],{8059:function(e,t,s){Promise.resolve().then(s.bind(s,7691))},7691:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return y}});var a=s(5853),c=s(4852),n=s(6632),l=s(8990),r=s(9928),i=s(3264),d=s(7201),o=s(3948),x=s(6804),u=s(4254),m=s(8144);function h(e){let{text:t}=e,[s,c]=(0,u.useState)(!1);return(0,a.jsx)("button",{type:"button",title:"Copy",className:"rounded p-0.5 text-slate-500 hover:text-slate-300",onClick:async()=>{await navigator.clipboard.writeText(t),c(!0),setTimeout(()=>c(!1),1500)},children:s?(0,a.jsx)(r.Z,{className:"h-3 w-3 text-green-400"}):(0,a.jsx)(i.Z,{className:"h-3 w-3"})})}function p(e){let{onClose:t}=e,s=(0,c.NL)(),[l,r]=(0,u.useState)(""),[i,d]=(0,u.useState)(""),[o,x]=(0,u.useState)("evm"),[h,p]=(0,u.useState)(""),y=(0,n.D)({mutationFn:()=>m.SX.fund(l,i||void 0,o),onSuccess:e=>{(null==e?void 0:e.confirmed)?p("✓ tx: ".concat(e.txHash," (confirmed)")):(null==e?void 0:e.txHash)?p("✓ tx: ".concat(e.txHash," (pending)")+((null==e?void 0:e.message)?" - ".concat(e.message):"")):p("Submitted"),s.invalidateQueries({queryKey:["accounts"]})},onError:e=>p("✗ ".concat(e.message))});return(0,a.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 p-4",children:(0,a.jsxs)("div",{className:"card w-full max-w-md space-y-4",children:[(0,a.jsx)("h2",{className:"font-medium text-white",children:"Fund Address"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"label",children:"Address"}),(0,a.jsx)("input",{className:"input",value:l,onChange:e=>r(e.target.value),placeholder:"0x… or cfx:…"})]}),(0,a.jsxs)("div",{className:"flex gap-3",children:[(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("label",{className:"label",children:"Amount (optional)"}),(0,a.jsx)("input",{className:"input",value:i,onChange:e=>d(e.target.value),placeholder:"1000"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"label",children:"Chain"}),(0,a.jsxs)("select",{className:"input",value:o,onChange:e=>x(e.target.value),children:[(0,a.jsx)("option",{value:"evm",children:"EVM"}),(0,a.jsx)("option",{value:"core",children:"Core"})]})]})]}),h&&(0,a.jsx)("p",{className:"text-sm text-slate-300",children:h}),(0,a.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,a.jsx)("button",{type:"button",className:"btn-secondary",onClick:t,children:"Close"}),(0,a.jsx)("button",{type:"button",className:"btn-primary",disabled:!l||y.isPending,onClick:()=>y.mutate(),children:y.isPending?"Sending…":"Fund"})]})]})})}function y(){let[e,t]=(0,u.useState)(!1),[s,c]=(0,u.useState)(!1),{data:n=[],isLoading:r}=(0,l.a)({queryKey:["accounts"],queryFn:m.SX.list}),{data:i}=(0,l.a)({queryKey:["accounts","faucet"],queryFn:m.SX.faucet});return(0,a.jsxs)("div",{className:"space-y-6",children:[s&&(0,a.jsx)(p,{onClose:()=>c(!1)}),(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-xl font-semibold text-white",children:"Accounts"}),(0,a.jsx)("p",{className:"mt-1 text-sm text-slate-400",children:"Pre-funded development accounts"})]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsxs)("button",{type:"button",className:"btn-secondary",onClick:()=>t(e=>!e),title:"Toggle private key visibility",children:[e?(0,a.jsx)(d.Z,{className:"h-4 w-4"}):(0,a.jsx)(o.Z,{className:"h-4 w-4"}),"Keys"]}),(0,a.jsxs)("button",{type:"button",className:"btn-primary",onClick:()=>c(!0),children:[(0,a.jsx)(x.Z,{className:"h-4 w-4"})," Fund"]})]})]}),i&&(0,a.jsxs)("div",{className:"card",children:[(0,a.jsx)("div",{className:"mb-2 text-xs font-medium uppercase tracking-wider text-slate-500",children:"Faucet Account"}),(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-xs text-slate-500",children:"Core"}),(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"truncate text-xs text-blue-300",children:i.coreAddress}),(0,a.jsx)(h,{text:i.coreAddress})]}),(0,a.jsxs)("div",{className:"text-sm text-slate-300",children:[i.coreBalance," CFX"]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-xs text-slate-500",children:"EVM"}),(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"truncate text-xs text-blue-300",children:i.evmAddress}),(0,a.jsx)(h,{text:i.evmAddress})]}),(0,a.jsxs)("div",{className:"text-sm text-slate-300",children:[i.evmBalance," CFX"]})]})]})]}),r?(0,a.jsx)("p",{className:"text-sm text-slate-500",children:"Loading…"}):(0,a.jsx)("div",{className:"overflow-x-auto rounded-lg border border-[#2a3147]",children:(0,a.jsxs)("table",{className:"w-full text-sm",children:[(0,a.jsx)("thead",{className:"bg-[#161b27] text-xs uppercase tracking-wider text-slate-500",children:(0,a.jsxs)("tr",{children:[(0,a.jsx)("th",{className:"px-4 py-2 text-left",children:"#"}),(0,a.jsx)("th",{className:"px-4 py-2 text-left",children:"Core Address"}),(0,a.jsx)("th",{className:"px-4 py-2 text-left",children:"EVM Address"}),(0,a.jsx)("th",{className:"px-4 py-2 text-right",children:"Core Balance"}),(0,a.jsx)("th",{className:"px-4 py-2 text-right",children:"EVM Balance"}),e&&(0,a.jsx)("th",{className:"px-4 py-2 text-left",children:"Private Key"})]})}),(0,a.jsx)("tbody",{className:"divide-y divide-[#2a3147]",children:n.map(t=>(0,a.jsxs)("tr",{className:"bg-[#0e1117] transition-colors hover:bg-[#161b27]",children:[(0,a.jsx)("td",{className:"px-4 py-2 text-slate-500",children:t.index}),(0,a.jsx)("td",{className:"px-4 py-2",children:(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"max-w-[200px] truncate text-xs text-blue-300",children:t.coreAddress}),(0,a.jsx)(h,{text:t.coreAddress})]})}),(0,a.jsx)("td",{className:"px-4 py-2",children:(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"max-w-[160px] truncate text-xs text-blue-300",children:t.evmAddress}),(0,a.jsx)(h,{text:t.evmAddress})]})}),(0,a.jsx)("td",{className:"px-4 py-2 text-right text-slate-300",children:t.coreBalance}),(0,a.jsx)("td",{className:"px-4 py-2 text-right text-slate-300",children:t.evmBalance}),e&&(0,a.jsx)("td",{className:"px-4 py-2",children:(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("code",{className:"max-w-[140px] truncate text-xs text-slate-400",children:t.privateKey}),(0,a.jsx)(h,{text:t.privateKey})]})})]},t.index))})]})})]})}},8144:function(e,t,s){"use strict";s.d(t,{N9:function(){return u},SC:function(){return j},SX:function(){return m},Vp:function(){return h},fA:function(){return y},mI:function(){return p},pJ:function(){return f}});var a,c=s(2608);let n="".concat(null!==(a=c.env.NEXT_PUBLIC_API_URL)&&void 0!==a?a:"","/api");async function l(e,t,s){let a=await fetch("".concat(n).concat(t),{method:e,headers:s?{"Content-Type":"application/json"}:void 0,body:s?JSON.stringify(s):void 0});if(!a.ok){var c;throw Error(null!==(c=(await a.json().catch(()=>({error:a.statusText}))).error)&&void 0!==c?c:a.statusText)}return a.json()}let r=e=>l("GET",e),i=(e,t)=>l("POST",e,t),d=e=>l("DELETE",e),o=(e,t)=>l("PUT",e,t),x=(e,t)=>l("PATCH",e,t),u={status:()=>r("/node/status"),start:()=>i("/node/start"),stop:()=>i("/node/stop"),restart:()=>i("/node/restart"),restartWipe:()=>i("/node/restart-wipe"),wipe:()=>i("/node/wipe")},m={list:()=>r("/accounts"),faucet:()=>r("/accounts/faucet"),fund:async(e,t,s)=>{let a=await fetch("/api/accounts/fund",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({address:e,amount:t,chain:s})});return await a.json()}},h={templates:()=>r("/contracts/templates"),template:e=>r("/contracts/templates/".concat(e)),compile:(e,t)=>i("/contracts/compile",{source:e,contractName:t}),deploy:e=>i("/contracts/deploy",e),deployed:e=>r("/contracts/deployed".concat(e?"?chain=".concat(e):"")),deleteDeployed:e=>d("/contracts/deployed/".concat(e)),call:(e,t,s,a)=>i("/contracts/".concat(e,"/call"),{functionName:t,args:s,accountIndex:a})},p={status:()=>r("/mining/status"),mine:e=>i("/mining/mine",{blocks:e}),start:e=>i("/mining/start",{intervalMs:e}),stop:()=>i("/mining/stop")},y={config:()=>r("/network/config"),updateConfig:e=>o("/network/config",e),rpcUrls:()=>r("/network/rpc-urls")},j={status:()=>r("/keystore/status"),generate:()=>i("/keystore/generate"),setup:e=>i("/keystore/setup",e),unlock:e=>i("/keystore/unlock",{password:e}),lock:()=>i("/keystore/lock"),wallets:()=>r("/keystore/wallets"),addWallet:(e,t)=>i("/keystore/wallets",{mnemonic:e,label:t}),activateWallet:e=>i("/keystore/wallets/".concat(e,"/activate")),renameWallet:(e,t)=>x("/keystore/wallets/".concat(e),{label:t}),deleteWallet:e=>d("/keystore/wallets/".concat(e))},f={get:()=>r("/settings")}},9928:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("CheckCheck",[["path",{d:"M18 6 7 17l-5-5",key:"116fxf"}],["path",{d:"m22 10-7.5 7.5L13 16",key:"ke71qq"}]])},3264:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]])},6804:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("Droplets",[["path",{d:"M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.1 3 12.25c0 2.22 1.8 4.05 4 4.05z",key:"1ptgy4"}],["path",{d:"M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2 4.9 4 6.5s3 3.5 3 5.5a6.98 6.98 0 0 1-11.91 4.97",key:"1sl1rz"}]])},7201:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("EyeOff",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},3948:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(3035).Z)("Eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])}},function(e){e.O(0,[363,285,749,744],function(){return e(e.s=8059)}),_N_E=e.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[913],{1033:function(e,t,s){Promise.resolve().then(s.bind(s,3811))},3811:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return E}});var a=s(5853),n=s(4852),l=s(8990),r=s(6632),i=s(5227),c=s(9928),o=s(3264),d=s(1464),u=s(6970),x=s(1494),m=s(8386),p=s(9924),h=s(758),g=s(5710),f=s(4254),v=s(3916),y=s(3368),b=s(9510),j=s(8144);let N={HelloWorld:{tags:["state","string"],ctor:"none",difficulty:"beginner"},SimpleStorage:{tags:["state","ownership","events"],ctor:"initialValue (uint256)",difficulty:"beginner"},Counter:{tags:["state","ownership","events","modifier"],ctor:"none",difficulty:"beginner"},TestToken:{tags:["ERC-20","token","mint","burn"],ctor:"name, symbol, initialSupply",difficulty:"beginner"},BasicNFT:{tags:["ERC-721","NFT","token","approval"],ctor:"name, symbol",difficulty:"intermediate"},Voting:{tags:["governance","struct","delegation"],ctor:"proposalNames (string[])",difficulty:"intermediate"},Escrow:{tags:["payments","payable","state machine"],ctor:"arbiter (address), beneficiary (address)",difficulty:"intermediate"},MultiSigWallet:{tags:["multisig","governance","wallet"],ctor:"owners (address[]), required (uint256)",difficulty:"advanced"},Registry:{tags:["registry","mapping","hashing"],ctor:"none",difficulty:"intermediate"}},w={beginner:"text-green-400 bg-green-900/30 border-green-800",intermediate:"text-yellow-400 bg-yellow-900/30 border-yellow-800",advanced:"text-orange-400 bg-orange-900/30 border-orange-800"};function k(e){var t,s,n,l,r,c,o;let{fn:d,contractId:u,chain:x,accounts:m,isRead:p}=e,[h,g]=(0,f.useState)(null!==(l=null===(t=d.inputs)||void 0===t?void 0:t.map(()=>""))&&void 0!==l?l:[]),[v,y]=(0,f.useState)(0),[b,N]=(0,f.useState)(null),[w,k]=(0,f.useState)(!1);async function S(){k(!0),N(null);try{var e;let t=h.map(e=>{if(""===e.trim())return"";try{return JSON.parse(e)}catch(t){return e}}),s=await j.Vp.call(u,null!==(e=d.name)&&void 0!==e?e:"",t,p?void 0:v);N({ok:!0,value:s})}catch(e){N({ok:!1,error:e instanceof Error?e.message:String(e)})}finally{k(!1)}}return(0,a.jsxs)("div",{className:"rounded border border-[#2a3147] bg-[#0d1117]/40 p-3 space-y-2",children:[(0,a.jsxs)("div",{className:"font-mono text-sm text-white",children:[d.name,(0,a.jsxs)("span",{className:"ml-1 text-slate-500 text-xs",children:["(",null!==(r=null===(s=d.inputs)||void 0===s?void 0:s.map(e=>e.type).join(", "))&&void 0!==r?r:"",")",d.outputs&&d.outputs.length>0?" → ".concat(d.outputs.map(e=>e.type).join(", ")):""]})]}),(null!==(c=null===(n=d.inputs)||void 0===n?void 0:n.length)&&void 0!==c?c:0)>0&&(0,a.jsx)("div",{className:"space-y-1.5",children:(null!==(o=d.inputs)&&void 0!==o?o:[]).map((e,t)=>(0,a.jsxs)("div",{children:[(0,a.jsxs)("label",{className:"label",children:[e.name||"arg".concat(t)," ",(0,a.jsxs)("span",{className:"text-slate-600",children:["(",e.type,")"]})]}),(0,a.jsx)("input",{className:"input",placeholder:e.type,value:h[t],onChange:e=>g(s=>{let a=[...s];return a[t]=e.target.value,a})})]},"".concat(e.name,"-").concat(t)))}),!p&&m.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"label",children:"Caller account"}),(0,a.jsx)("select",{className:"input",value:v,onChange:e=>y(Number(e.target.value)),children:m.map(e=>(0,a.jsxs)("option",{value:e.index,children:["#",e.index," —"," ","evm"===x?e.evmAddress:e.coreAddress]},e.index))})]}),(0,a.jsx)("button",{type:"button",className:p?"btn-secondary":"btn-primary",disabled:w,onClick:S,children:w?(0,a.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(i.Z,{className:"h-3.5 w-3.5 animate-spin"}),p?"Reading…":"Sending…"]}):p?"Call":"Send"}),b&&(0,a.jsx)("pre",{className:"text-xs font-mono break-all whitespace-pre-wrap p-2 rounded ".concat(b.ok?"bg-[#0d1117] text-green-300":"bg-red-950/50 text-red-400"),children:b.ok?JSON.stringify(b.value,null,2):b.error})]})}function S(e){let{contract:t,accounts:s}=e,n=t.abi.filter(e=>"function"===e.type),l=n.filter(e=>"view"===e.stateMutability||"pure"===e.stateMutability),r=n.filter(e=>"view"!==e.stateMutability&&"pure"!==e.stateMutability);return(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t border-[#2a3147] space-y-4",children:[l.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"mb-2 flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-widest text-green-500",children:"Read"}),(0,a.jsx)("span",{className:"text-[10px] text-slate-600",children:"(view / pure — no tx required)"})]}),(0,a.jsx)("div",{className:"space-y-2",children:l.map(e=>(0,a.jsx)(k,{fn:e,contractId:t.id,chain:t.chain,accounts:s,isRead:!0},e.name))})]}),r.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"mb-2 flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-widest text-orange-400",children:"Write"}),(0,a.jsx)("span",{className:"text-[10px] text-slate-600",children:"(state-changing — sends a tx + auto-mines)"})]}),(0,a.jsx)("div",{className:"space-y-2",children:r.map(e=>(0,a.jsx)(k,{fn:e,contractId:t.id,chain:t.chain,accounts:s,isRead:!1},e.name))})]}),0===n.length&&(0,a.jsx)("p",{className:"text-sm text-slate-500",children:"No callable functions found in ABI."})]})}function C(e){let{text:t}=e,[s,n]=(0,f.useState)(!1);return(0,a.jsx)("button",{type:"button",title:"Copy",className:"ml-1 rounded p-0.5 text-slate-500 hover:text-slate-300",onClick:async()=>{await navigator.clipboard.writeText(t),n(!0),setTimeout(()=>n(!1),1600)},children:s?(0,a.jsx)(c.Z,{className:"h-3 w-3 text-green-400"}):(0,a.jsx)(o.Z,{className:"h-3 w-3"})})}function E(){let e=(0,n.NL)(),[t,s]=(0,f.useState)("templates"),[i,c]=(0,f.useState)('// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ncontract HelloWorld {\n string public message = "Hello, Conflux!";\n\n function setMessage(string calldata _msg) external {\n message = _msg;\n }\n}\n'),[o,k]=(0,f.useState)("HelloWorld"),[E,T]=(0,f.useState)(null),[D,F]=(0,f.useState)("evm"),[I,P]=(0,f.useState)(0),[L,R]=(0,f.useState)([]),[q,A]=(0,f.useState)(""),[W,Z]=(0,f.useState)(""),[_,V]=(0,f.useState)(new Set),{data:M}=(0,l.a)({queryKey:["node","status"],queryFn:j.N9.status,refetchInterval:3e3}),B=(null==M?void 0:M.server)==="running",{data:O=[]}=(0,l.a)({queryKey:["accounts"],queryFn:j.SX.list,enabled:B}),{data:z=[]}=(0,l.a)({queryKey:["contracts","templates"],queryFn:j.Vp.templates}),{data:H=[],isLoading:J}=(0,l.a)({queryKey:["contracts","deployed"],queryFn:()=>j.Vp.deployed(),refetchInterval:5e3}),U=(0,r.D)({mutationFn:()=>j.Vp.compile(i,o),onSuccess:e=>{var t,s;T(e),R((null!==(s=null===(t=e.abi.find(e=>"constructor"===e.type))||void 0===t?void 0:t.inputs)&&void 0!==s?s:[]).map(()=>"")),A("")}}),K=(0,r.D)({mutationFn:()=>{var e,t;if(!E)throw Error("Compile first");if(!B)throw Error("Node is not running. Start it from the Dashboard first.");let s=(null!==(t=null===(e=E.abi.find(e=>"constructor"===e.type))||void 0===e?void 0:e.inputs)&&void 0!==t?t:[]).map((e,t)=>{var s;let a=(null!==(s=L[t])&&void 0!==s?s:"").trim();if(!a)return"";try{return JSON.parse(a)}catch(e){return a}});return j.Vp.deploy({bytecode:E.bytecode,abi:E.abi,args:s,chain:D,accountIndex:I,contractName:E.contractName})},onSuccess:t=>{A("✓ Deployed at ".concat(t.address," (tx: ").concat(t.txHash,")")),e.invalidateQueries({queryKey:["contracts","deployed"]})},onError:e=>{let t=e instanceof Error?e.message:String(e);A("✗ ".concat(t))}}),X=(0,r.D)({mutationFn:j.Vp.deleteDeployed,onSuccess:()=>e.invalidateQueries({queryKey:["contracts","deployed"]})});async function Q(e){Z("");try{let t=await j.Vp.template(e);c(t.source),k(e),s("custom"),T(null),A("");let a=document.getElementById("btn-use-".concat(e));if(a){let e=a.innerText;a.innerText="Loaded!",a.classList.add("text-cfx-400"),setTimeout(()=>{a.innerText=e,a.classList.remove("text-cfx-400")},1500)}}catch(e){Z(e instanceof Error?e.message:"Failed to load template")}}return(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-xl font-semibold text-white",children:"Contracts"}),(0,a.jsx)("p",{className:"mt-1 text-sm text-slate-400",children:"Compile, deploy, and track Solidity contracts"})]}),M&&!B&&(0,a.jsxs)("div",{className:"flex items-center gap-2 rounded-md border border-yellow-800 bg-yellow-950/40 px-4 py-2 text-sm text-yellow-400",children:[(0,a.jsx)(d.Z,{className:"h-4 w-4 shrink-0"}),"Node is not running — deploy will fail. Start the node from the Dashboard."]}),W&&(0,a.jsx)("div",{className:"rounded-md border border-red-800 bg-red-950/50 px-3 py-2 text-sm text-red-400",children:W}),(0,a.jsx)("div",{className:"flex gap-1 rounded-lg border border-[#2a3147] bg-[#161b27] p-1 w-fit",children:["templates","custom","deployed"].map(e=>(0,a.jsx)("button",{type:"button",className:"rounded-md px-4 py-1.5 text-sm capitalize transition-colors ".concat(t===e?"bg-blue-600 text-white":"text-slate-400 hover:text-slate-200"),onClick:()=>s(e),children:"deployed"===e?"Deployed".concat(H.length>0?" (".concat(H.length,")"):""):e},e))}),"templates"===t&&(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("p",{className:"text-xs text-slate-500",children:["Click ",(0,a.jsx)("span",{className:"text-slate-300",children:"Use"})," to load a template into the Editor. All contracts are pure Solidity — no external dependencies."]}),(0,a.jsx)("div",{className:"grid gap-3 sm:grid-cols-2",children:z.map(e=>{let t=N[e.name];return(0,a.jsxs)("div",{className:"card flex flex-col gap-3",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,a.jsx)(u.Z,{className:"h-4 w-4 shrink-0 text-blue-400"}),(0,a.jsx)("span",{className:"text-sm font-semibold text-white",children:e.name}),t&&(0,a.jsx)("span",{className:"rounded border px-1.5 py-0.5 text-[9px] font-semibold uppercase tracking-wider ".concat(w[t.difficulty]),children:t.difficulty})]}),e.description&&(0,a.jsx)("p",{className:"mt-1.5 text-xs text-slate-400 leading-relaxed",children:e.description})]}),(0,a.jsx)(y.z,{id:"btn-use-".concat(e.name),variant:"secondary",size:"sm",className:"shrink-0 text-xs transition-all",onClick:()=>Q(e.name),children:"Use template"})]}),(null==t?void 0:t.tags)&&(0,a.jsx)("div",{className:"flex flex-wrap gap-1",children:t.tags.map(e=>(0,a.jsx)("span",{className:"rounded bg-[#1e2535] px-1.5 py-0.5 text-[10px] text-slate-400",children:e},e))}),(null==t?void 0:t.ctor)&&(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-[10px] text-slate-500",children:[(0,a.jsx)("span",{className:"font-mono text-slate-600",children:"constructor"}),(0,a.jsx)("span",{className:"text-slate-600",children:"\xb7"}),(0,a.jsx)("span",{className:"font-mono",children:t.ctor})]})]},e.name)})})]}),"custom"===t&&(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(b._,{className:"text-sm font-semibold text-slate-200",children:"Solidity Source"}),(0,a.jsx)("div",{className:"h-[500px] rounded-lg border border-slate-800 overflow-hidden shadow-sm",children:(0,a.jsx)(v.ZP,{height:"100%",defaultLanguage:"solidity",theme:"vs-dark",value:i,onChange:e=>{c(e||""),T(null)},options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,fontSize:14,tabSize:4,padding:{top:16,bottom:16},smoothScrolling:!0,cursorBlinking:"smooth",fontFamily:"'JetBrains Mono', 'Fira Code', 'Monaco', monospace"}})})]}),(0,a.jsxs)("div",{className:"flex items-end gap-3",children:[(0,a.jsxs)("div",{className:"w-48",children:[(0,a.jsx)("label",{className:"label",children:"Contract Name"}),(0,a.jsx)("input",{className:"input",value:o,onChange:e=>k(e.target.value)})]}),(0,a.jsxs)("button",{type:"button",className:"btn-secondary",disabled:U.isPending,onClick:()=>U.mutate(),children:[(0,a.jsx)(x.Z,{className:"h-4 w-4"}),U.isPending?"Compiling…":"Compile"]})]}),U.error&&(0,a.jsx)("div",{className:"rounded-md border border-red-800 bg-red-950/50 px-3 py-2 text-sm text-red-400",children:U.error.message}),E&&(()=>{var e,t;let s=null!==(t=null===(e=E.abi.find(e=>"constructor"===e.type))||void 0===e?void 0:e.inputs)&&void 0!==t?t:[],n=s.some((e,t)=>{var s;return!(null!==(s=L[t])&&void 0!==s?s:"").trim()});return(0,a.jsxs)("div",{className:"card space-y-3",children:[(0,a.jsxs)("div",{className:"text-sm font-medium text-green-400",children:["✓ Compiled: ",E.contractName," (",E.abi.length," ","ABI entries)"]}),s.length>0?(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("div",{className:"text-xs font-medium text-slate-400",children:"Constructor arguments"}),s.map((e,t)=>{var s;return(0,a.jsxs)("div",{children:[(0,a.jsxs)("label",{className:"label",children:[e.name||"arg".concat(t)," ",(0,a.jsxs)("span",{className:"text-slate-600",children:["(",e.type,")"]})]}),(0,a.jsx)("input",{className:"input",placeholder:e.type,value:null!==(s=L[t])&&void 0!==s?s:"",onChange:e=>R(s=>{let a=[...s];return a[t]=e.target.value,a})})]},"".concat(e.name,"-").concat(t))}),n&&(0,a.jsxs)("div",{className:"flex items-start gap-2 rounded border border-yellow-800 bg-yellow-950/40 px-3 py-2 text-xs text-yellow-400",children:[(0,a.jsx)(d.Z,{className:"mt-0.5 h-3.5 w-3.5 shrink-0"}),(0,a.jsxs)("span",{children:["Fill all constructor arguments before deploying. Missing:"," ",s.filter((e,t)=>{var s;return!(null!==(s=L[t])&&void 0!==s?s:"").trim()}).map((e,t,s)=>"".concat(e.name||"arg"," (").concat(e.type,")")).join(", ")]})]})]}):(0,a.jsx)("div",{className:"text-xs text-slate-500",children:"No constructor arguments required."}),(0,a.jsxs)("div",{className:"flex flex-wrap gap-3",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"label",children:"Chain"}),(0,a.jsxs)("select",{className:"input",value:D,onChange:e=>F(e.target.value),children:[(0,a.jsx)("option",{value:"evm",children:"EVM (eSpace)"}),(0,a.jsx)("option",{value:"core",children:"Core Space"})]})]}),B&&O.length>0&&(0,a.jsxs)("div",{className:"flex-1 min-w-[200px]",children:[(0,a.jsx)("label",{className:"label",children:"Deployer account"}),(0,a.jsx)("select",{className:"input",value:I,onChange:e=>P(Number(e.target.value)),children:O.map(e=>(0,a.jsxs)("option",{value:e.index,children:["#",e.index," —"," ","evm"===D?e.evmAddress:e.coreAddress]},e.index))})]}),(0,a.jsx)("div",{className:"flex items-end",children:(0,a.jsxs)("button",{type:"button",className:"btn-primary",disabled:K.isPending||!B||s.length>0&&n,title:B?n?"Fill all constructor arguments first":void 0:"Start the node first",onClick:()=>K.mutate(),children:[(0,a.jsx)(m.Z,{className:"h-4 w-4"}),K.isPending?"Deploying…":"Deploy"]})})]}),q&&(0,a.jsx)("p",{className:"break-all text-sm ".concat(q.startsWith("✓")?"text-green-400":"text-red-400"),children:q})]})})()]}),"deployed"===t&&(0,a.jsx)("div",{className:"space-y-3",children:J?(0,a.jsx)("p",{className:"text-sm text-slate-500",children:"Loading…"}):0===H.length?(0,a.jsx)("div",{className:"card text-center text-sm text-slate-500 py-8",children:"No deployed contracts yet. Deploy one from the Editor tab."}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("p",{className:"text-xs text-slate-500",children:"Contracts are persisted per wallet in the node data directory. They survive node restarts (but not Wipe & Restart)."}),(0,a.jsx)("div",{className:"space-y-2",children:H.map(e=>{let t=_.has(e.id),s="evm"===e.chain?"http://localhost:8545":"http://localhost:12537";return(0,a.jsxs)("div",{className:"card space-y-2",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-sm font-medium text-white",children:[(0,a.jsx)(u.Z,{className:"h-4 w-4 text-blue-400"}),e.name,(0,a.jsx)("span",{className:"rounded px-1.5 py-0.5 text-[10px] uppercase tracking-wider ".concat("evm"===e.chain?"bg-purple-900/50 text-purple-300":"bg-cyan-900/50 text-cyan-300"),children:"evm"===e.chain?"eSpace":"Core"})]}),(0,a.jsxs)("div",{className:"mt-1 flex items-center gap-1",children:[(0,a.jsx)("code",{className:"max-w-[300px] truncate text-xs text-blue-300",children:e.address}),(0,a.jsx)(C,{text:e.address})]}),(0,a.jsxs)("div",{className:"mt-0.5 flex items-center gap-3 text-[10px] text-slate-500",children:[(0,a.jsxs)("span",{children:["Chain ID: ",e.chainId]}),(0,a.jsx)("span",{children:"•"}),(0,a.jsx)("span",{children:new Date(e.deployedAt).toLocaleString()}),(0,a.jsx)("span",{children:"•"}),(0,a.jsxs)("span",{children:[e.abi.length," ABI entries"]})]})]}),(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-1",children:[(0,a.jsx)("div",{title:"Copy JSON-RPC URL: ".concat(s),children:(0,a.jsx)(C,{text:s})}),(0,a.jsx)("span",{className:"text-[10px] text-slate-600 -ml-0.5 mr-1",children:"RPC"}),(0,a.jsx)("button",{type:"button",title:"Remove from tracking",className:"rounded p-1 text-slate-500 hover:text-red-400",disabled:X.isPending,onClick:()=>X.mutate(e.id),children:(0,a.jsx)(p.Z,{className:"h-3.5 w-3.5"})})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between border-t border-[#2a3147] pt-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("span",{className:"text-[10px] text-slate-500",children:"tx:"}),(0,a.jsx)("code",{className:"max-w-[240px] truncate text-[10px] text-slate-400",children:e.txHash}),(0,a.jsx)(C,{text:e.txHash})]}),(0,a.jsx)("button",{type:"button",className:"flex items-center gap-1 rounded px-2 py-0.5 text-[11px] text-slate-400 hover:text-white hover:bg-[#2a3147] transition-colors",onClick:()=>V(t=>{let s=new Set(t);return s.has(e.id)?s.delete(e.id):s.add(e.id),s}),children:t?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(h.Z,{className:"h-3 w-3"})," Close"]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(g.Z,{className:"h-3 w-3"})," Interact"]})})]}),t&&(0,a.jsx)(S,{contract:e,accounts:O})]},e.id)})})]})})]})}},3368:function(e,t,s){"use strict";s.d(t,{z:function(){return o}});var a=s(5853),n=s(4254),l=s(1145),r=s(5460),i=s(8337);let c=(0,r.j)("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-cfx-500 text-white hover:bg-cfx-600",destructive:"bg-red-500 text-destructive-foreground hover:bg-red-500/90",outline:"border border-slate-700 bg-transparent hover:bg-slate-800 text-white",secondary:"bg-slate-800 text-slate-100 hover:bg-slate-700",ghost:"hover:bg-slate-800 hover:text-slate-100",link:"text-cfx-500 underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),o=n.forwardRef((e,t)=>{let{className:s,variant:n,size:r,asChild:o=!1,...d}=e,u=o?l.g7:"button";return(0,a.jsx)(u,{className:(0,i.cn)(c({variant:n,size:r,className:s})),ref:t,...d})});o.displayName="Button"},9510:function(e,t,s){"use strict";s.d(t,{_:function(){return o}});var a=s(5853),n=s(4254),l=s(5307),r=s(5460),i=s(8337);let c=(0,r.j)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-slate-300"),o=n.forwardRef((e,t)=>{let{className:s,...n}=e;return(0,a.jsx)(l.f,{ref:t,className:(0,i.cn)(c(),s),...n})});o.displayName=l.f.displayName},8144:function(e,t,s){"use strict";s.d(t,{N9:function(){return x},SC:function(){return f},SX:function(){return m},Vp:function(){return p},fA:function(){return g},mI:function(){return h},pJ:function(){return v}});var a,n=s(2608);let l="".concat(null!==(a=n.env.NEXT_PUBLIC_API_URL)&&void 0!==a?a:"","/api");async function r(e,t,s){let a=await fetch("".concat(l).concat(t),{method:e,headers:s?{"Content-Type":"application/json"}:void 0,body:s?JSON.stringify(s):void 0});if(!a.ok){var n;throw Error(null!==(n=(await a.json().catch(()=>({error:a.statusText}))).error)&&void 0!==n?n:a.statusText)}return a.json()}let i=e=>r("GET",e),c=(e,t)=>r("POST",e,t),o=e=>r("DELETE",e),d=(e,t)=>r("PUT",e,t),u=(e,t)=>r("PATCH",e,t),x={status:()=>i("/node/status"),start:()=>c("/node/start"),stop:()=>c("/node/stop"),restart:()=>c("/node/restart"),restartWipe:()=>c("/node/restart-wipe"),wipe:()=>c("/node/wipe")},m={list:()=>i("/accounts"),faucet:()=>i("/accounts/faucet"),fund:async(e,t,s)=>{let a=await fetch("/api/accounts/fund",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({address:e,amount:t,chain:s})});return await a.json()}},p={templates:()=>i("/contracts/templates"),template:e=>i("/contracts/templates/".concat(e)),compile:(e,t)=>c("/contracts/compile",{source:e,contractName:t}),deploy:e=>c("/contracts/deploy",e),deployed:e=>i("/contracts/deployed".concat(e?"?chain=".concat(e):"")),deleteDeployed:e=>o("/contracts/deployed/".concat(e)),call:(e,t,s,a)=>c("/contracts/".concat(e,"/call"),{functionName:t,args:s,accountIndex:a})},h={status:()=>i("/mining/status"),mine:e=>c("/mining/mine",{blocks:e}),start:e=>c("/mining/start",{intervalMs:e}),stop:()=>c("/mining/stop")},g={config:()=>i("/network/config"),updateConfig:e=>d("/network/config",e),rpcUrls:()=>i("/network/rpc-urls")},f={status:()=>i("/keystore/status"),generate:()=>c("/keystore/generate"),setup:e=>c("/keystore/setup",e),unlock:e=>c("/keystore/unlock",{password:e}),lock:()=>c("/keystore/lock"),wallets:()=>i("/keystore/wallets"),addWallet:(e,t)=>c("/keystore/wallets",{mnemonic:e,label:t}),activateWallet:e=>c("/keystore/wallets/".concat(e,"/activate")),renameWallet:(e,t)=>u("/keystore/wallets/".concat(e),{label:t}),deleteWallet:e=>o("/keystore/wallets/".concat(e))},v={get:()=>i("/settings")}},8337:function(e,t,s){"use strict";s.d(t,{cn:function(){return l}});var a=s(4685),n=s(4004);function l(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,n.m6)((0,a.W)(t))}}},function(e){e.O(0,[363,69,476,285,749,744],function(){return e(e.s=1033)}),_N_E=e.O()}]);
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[913],{5104:function(e,t,s){Promise.resolve().then(s.bind(s,3811))},3811:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return E}});var a=s(5853),n=s(4852),l=s(8990),r=s(6632),i=s(5227),c=s(9928),o=s(3264),d=s(1464),u=s(6970),x=s(1494),m=s(8386),p=s(9924),h=s(758),g=s(5710),f=s(4254),v=s(3916),y=s(3368),b=s(9510),j=s(8144);let N={HelloWorld:{tags:["state","string"],ctor:"none",difficulty:"beginner"},SimpleStorage:{tags:["state","ownership","events"],ctor:"initialValue (uint256)",difficulty:"beginner"},Counter:{tags:["state","ownership","events","modifier"],ctor:"none",difficulty:"beginner"},TestToken:{tags:["ERC-20","token","mint","burn"],ctor:"name, symbol, initialSupply",difficulty:"beginner"},BasicNFT:{tags:["ERC-721","NFT","token","approval"],ctor:"name, symbol",difficulty:"intermediate"},Voting:{tags:["governance","struct","delegation"],ctor:"proposalNames (string[])",difficulty:"intermediate"},Escrow:{tags:["payments","payable","state machine"],ctor:"arbiter (address), beneficiary (address)",difficulty:"intermediate"},MultiSigWallet:{tags:["multisig","governance","wallet"],ctor:"owners (address[]), required (uint256)",difficulty:"advanced"},Registry:{tags:["registry","mapping","hashing"],ctor:"none",difficulty:"intermediate"}},w={beginner:"text-green-400 bg-green-900/30 border-green-800",intermediate:"text-yellow-400 bg-yellow-900/30 border-yellow-800",advanced:"text-orange-400 bg-orange-900/30 border-orange-800"};function k(e){var t,s,n,l,r,c,o;let{fn:d,contractId:u,chain:x,accounts:m,isRead:p}=e,[h,g]=(0,f.useState)(null!==(l=null===(t=d.inputs)||void 0===t?void 0:t.map(()=>""))&&void 0!==l?l:[]),[v,y]=(0,f.useState)(0),[b,N]=(0,f.useState)(null),[w,k]=(0,f.useState)(!1);async function S(){k(!0),N(null);try{var e;let t=h.map(e=>{if(""===e.trim())return"";try{return JSON.parse(e)}catch(t){return e}}),s=await j.Vp.call(u,null!==(e=d.name)&&void 0!==e?e:"",t,p?void 0:v);N({ok:!0,value:s})}catch(e){N({ok:!1,error:e instanceof Error?e.message:String(e)})}finally{k(!1)}}return(0,a.jsxs)("div",{className:"rounded border border-[#2a3147] bg-[#0d1117]/40 p-3 space-y-2",children:[(0,a.jsxs)("div",{className:"font-mono text-sm text-white",children:[d.name,(0,a.jsxs)("span",{className:"ml-1 text-slate-500 text-xs",children:["(",null!==(r=null===(s=d.inputs)||void 0===s?void 0:s.map(e=>e.type).join(", "))&&void 0!==r?r:"",")",d.outputs&&d.outputs.length>0?" → ".concat(d.outputs.map(e=>e.type).join(", ")):""]})]}),(null!==(c=null===(n=d.inputs)||void 0===n?void 0:n.length)&&void 0!==c?c:0)>0&&(0,a.jsx)("div",{className:"space-y-1.5",children:(null!==(o=d.inputs)&&void 0!==o?o:[]).map((e,t)=>(0,a.jsxs)("div",{children:[(0,a.jsxs)("label",{className:"label",children:[e.name||"arg".concat(t)," ",(0,a.jsxs)("span",{className:"text-slate-600",children:["(",e.type,")"]})]}),(0,a.jsx)("input",{className:"input",placeholder:e.type,value:h[t],onChange:e=>g(s=>{let a=[...s];return a[t]=e.target.value,a})})]},"".concat(e.name,"-").concat(t)))}),!p&&m.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"label",children:"Caller account"}),(0,a.jsx)("select",{className:"input",value:v,onChange:e=>y(Number(e.target.value)),children:m.map(e=>(0,a.jsxs)("option",{value:e.index,children:["#",e.index," —"," ","evm"===x?e.evmAddress:e.coreAddress]},e.index))})]}),(0,a.jsx)("button",{type:"button",className:p?"btn-secondary":"btn-primary",disabled:w,onClick:S,children:w?(0,a.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(i.Z,{className:"h-3.5 w-3.5 animate-spin"}),p?"Reading…":"Sending…"]}):p?"Call":"Send"}),b&&(0,a.jsx)("pre",{className:"text-xs font-mono break-all whitespace-pre-wrap p-2 rounded ".concat(b.ok?"bg-[#0d1117] text-green-300":"bg-red-950/50 text-red-400"),children:b.ok?JSON.stringify(b.value,null,2):b.error})]})}function S(e){let{contract:t,accounts:s}=e,n=t.abi.filter(e=>"function"===e.type),l=n.filter(e=>"view"===e.stateMutability||"pure"===e.stateMutability),r=n.filter(e=>"view"!==e.stateMutability&&"pure"!==e.stateMutability);return(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t border-[#2a3147] space-y-4",children:[l.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"mb-2 flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-widest text-green-500",children:"Read"}),(0,a.jsx)("span",{className:"text-[10px] text-slate-600",children:"(view / pure — no tx required)"})]}),(0,a.jsx)("div",{className:"space-y-2",children:l.map(e=>(0,a.jsx)(k,{fn:e,contractId:t.id,chain:t.chain,accounts:s,isRead:!0},e.name))})]}),r.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"mb-2 flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-widest text-orange-400",children:"Write"}),(0,a.jsx)("span",{className:"text-[10px] text-slate-600",children:"(state-changing — sends a tx + auto-mines)"})]}),(0,a.jsx)("div",{className:"space-y-2",children:r.map(e=>(0,a.jsx)(k,{fn:e,contractId:t.id,chain:t.chain,accounts:s,isRead:!1},e.name))})]}),0===n.length&&(0,a.jsx)("p",{className:"text-sm text-slate-500",children:"No callable functions found in ABI."})]})}function C(e){let{text:t}=e,[s,n]=(0,f.useState)(!1);return(0,a.jsx)("button",{type:"button",title:"Copy",className:"ml-1 rounded p-0.5 text-slate-500 hover:text-slate-300",onClick:async()=>{await navigator.clipboard.writeText(t),n(!0),setTimeout(()=>n(!1),1600)},children:s?(0,a.jsx)(c.Z,{className:"h-3 w-3 text-green-400"}):(0,a.jsx)(o.Z,{className:"h-3 w-3"})})}function E(){let e=(0,n.NL)(),[t,s]=(0,f.useState)("templates"),[i,c]=(0,f.useState)('// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ncontract HelloWorld {\n string public message = "Hello, Conflux!";\n\n function setMessage(string calldata _msg) external {\n message = _msg;\n }\n}\n'),[o,k]=(0,f.useState)("HelloWorld"),[E,T]=(0,f.useState)(null),[D,F]=(0,f.useState)("evm"),[I,P]=(0,f.useState)(0),[L,R]=(0,f.useState)([]),[q,A]=(0,f.useState)(""),[W,Z]=(0,f.useState)(""),[_,V]=(0,f.useState)(new Set),{data:M}=(0,l.a)({queryKey:["node","status"],queryFn:j.N9.status,refetchInterval:3e3}),B=(null==M?void 0:M.server)==="running",{data:O=[]}=(0,l.a)({queryKey:["accounts"],queryFn:j.SX.list,enabled:B}),{data:z=[]}=(0,l.a)({queryKey:["contracts","templates"],queryFn:j.Vp.templates}),{data:H=[],isLoading:J}=(0,l.a)({queryKey:["contracts","deployed"],queryFn:()=>j.Vp.deployed(),refetchInterval:5e3}),U=(0,r.D)({mutationFn:()=>j.Vp.compile(i,o),onSuccess:e=>{var t,s;T(e),R((null!==(s=null===(t=e.abi.find(e=>"constructor"===e.type))||void 0===t?void 0:t.inputs)&&void 0!==s?s:[]).map(()=>"")),A("")}}),K=(0,r.D)({mutationFn:()=>{var e,t;if(!E)throw Error("Compile first");if(!B)throw Error("Node is not running. Start it from the Dashboard first.");let s=(null!==(t=null===(e=E.abi.find(e=>"constructor"===e.type))||void 0===e?void 0:e.inputs)&&void 0!==t?t:[]).map((e,t)=>{var s;let a=(null!==(s=L[t])&&void 0!==s?s:"").trim();if(!a)return"";try{return JSON.parse(a)}catch(e){return a}});return j.Vp.deploy({bytecode:E.bytecode,abi:E.abi,args:s,chain:D,accountIndex:I,contractName:E.contractName})},onSuccess:t=>{A("✓ Deployed at ".concat(t.address," (tx: ").concat(t.txHash,")")),e.invalidateQueries({queryKey:["contracts","deployed"]})},onError:e=>{let t=e instanceof Error?e.message:String(e);A("✗ ".concat(t))}}),X=(0,r.D)({mutationFn:j.Vp.deleteDeployed,onSuccess:()=>e.invalidateQueries({queryKey:["contracts","deployed"]})});async function Q(e){Z("");try{let t=await j.Vp.template(e);c(t.source),k(e),s("custom"),T(null),A("");let a=document.getElementById("btn-use-".concat(e));if(a){let e=a.innerText;a.innerText="Loaded!",a.classList.add("text-cfx-400"),setTimeout(()=>{a.innerText=e,a.classList.remove("text-cfx-400")},1500)}}catch(e){Z(e instanceof Error?e.message:"Failed to load template")}}return(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-xl font-semibold text-white",children:"Contracts"}),(0,a.jsx)("p",{className:"mt-1 text-sm text-slate-400",children:"Compile, deploy, and track Solidity contracts"})]}),M&&!B&&(0,a.jsxs)("div",{className:"flex items-center gap-2 rounded-md border border-yellow-800 bg-yellow-950/40 px-4 py-2 text-sm text-yellow-400",children:[(0,a.jsx)(d.Z,{className:"h-4 w-4 shrink-0"}),"Node is not running — deploy will fail. Start the node from the Dashboard."]}),W&&(0,a.jsx)("div",{className:"rounded-md border border-red-800 bg-red-950/50 px-3 py-2 text-sm text-red-400",children:W}),(0,a.jsx)("div",{className:"flex gap-1 rounded-lg border border-[#2a3147] bg-[#161b27] p-1 w-fit",children:["templates","custom","deployed"].map(e=>(0,a.jsx)("button",{type:"button",className:"rounded-md px-4 py-1.5 text-sm capitalize transition-colors ".concat(t===e?"bg-blue-600 text-white":"text-slate-400 hover:text-slate-200"),onClick:()=>s(e),children:"deployed"===e?"Deployed".concat(H.length>0?" (".concat(H.length,")"):""):e},e))}),"templates"===t&&(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("p",{className:"text-xs text-slate-500",children:["Click ",(0,a.jsx)("span",{className:"text-slate-300",children:"Use"})," to load a template into the Editor. All contracts are pure Solidity — no external dependencies."]}),(0,a.jsx)("div",{className:"grid gap-3 sm:grid-cols-2",children:z.map(e=>{let t=N[e.name];return(0,a.jsxs)("div",{className:"card flex flex-col gap-3",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,a.jsx)(u.Z,{className:"h-4 w-4 shrink-0 text-blue-400"}),(0,a.jsx)("span",{className:"text-sm font-semibold text-white",children:e.name}),t&&(0,a.jsx)("span",{className:"rounded border px-1.5 py-0.5 text-[9px] font-semibold uppercase tracking-wider ".concat(w[t.difficulty]),children:t.difficulty})]}),e.description&&(0,a.jsx)("p",{className:"mt-1.5 text-xs text-slate-400 leading-relaxed",children:e.description})]}),(0,a.jsx)(y.z,{id:"btn-use-".concat(e.name),variant:"secondary",size:"sm",className:"shrink-0 text-xs transition-all",onClick:()=>Q(e.name),children:"Use template"})]}),(null==t?void 0:t.tags)&&(0,a.jsx)("div",{className:"flex flex-wrap gap-1",children:t.tags.map(e=>(0,a.jsx)("span",{className:"rounded bg-[#1e2535] px-1.5 py-0.5 text-[10px] text-slate-400",children:e},e))}),(null==t?void 0:t.ctor)&&(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-[10px] text-slate-500",children:[(0,a.jsx)("span",{className:"font-mono text-slate-600",children:"constructor"}),(0,a.jsx)("span",{className:"text-slate-600",children:"\xb7"}),(0,a.jsx)("span",{className:"font-mono",children:t.ctor})]})]},e.name)})})]}),"custom"===t&&(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(b._,{className:"text-sm font-semibold text-slate-200",children:"Solidity Source"}),(0,a.jsx)("div",{className:"h-[500px] rounded-lg border border-slate-800 overflow-hidden shadow-sm",children:(0,a.jsx)(v.ZP,{height:"100%",defaultLanguage:"solidity",theme:"vs-dark",value:i,onChange:e=>{c(e||""),T(null)},options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,fontSize:14,tabSize:4,padding:{top:16,bottom:16},smoothScrolling:!0,cursorBlinking:"smooth",fontFamily:"'JetBrains Mono', 'Fira Code', 'Monaco', monospace"}})})]}),(0,a.jsxs)("div",{className:"flex items-end gap-3",children:[(0,a.jsxs)("div",{className:"w-48",children:[(0,a.jsx)("label",{className:"label",children:"Contract Name"}),(0,a.jsx)("input",{className:"input",value:o,onChange:e=>k(e.target.value)})]}),(0,a.jsxs)("button",{type:"button",className:"btn-secondary",disabled:U.isPending,onClick:()=>U.mutate(),children:[(0,a.jsx)(x.Z,{className:"h-4 w-4"}),U.isPending?"Compiling…":"Compile"]})]}),U.error&&(0,a.jsx)("div",{className:"rounded-md border border-red-800 bg-red-950/50 px-3 py-2 text-sm text-red-400",children:U.error.message}),E&&(()=>{var e,t;let s=null!==(t=null===(e=E.abi.find(e=>"constructor"===e.type))||void 0===e?void 0:e.inputs)&&void 0!==t?t:[],n=s.some((e,t)=>{var s;return!(null!==(s=L[t])&&void 0!==s?s:"").trim()});return(0,a.jsxs)("div",{className:"card space-y-3",children:[(0,a.jsxs)("div",{className:"text-sm font-medium text-green-400",children:["✓ Compiled: ",E.contractName," (",E.abi.length," ","ABI entries)"]}),s.length>0?(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("div",{className:"text-xs font-medium text-slate-400",children:"Constructor arguments"}),s.map((e,t)=>{var s;return(0,a.jsxs)("div",{children:[(0,a.jsxs)("label",{className:"label",children:[e.name||"arg".concat(t)," ",(0,a.jsxs)("span",{className:"text-slate-600",children:["(",e.type,")"]})]}),(0,a.jsx)("input",{className:"input",placeholder:e.type,value:null!==(s=L[t])&&void 0!==s?s:"",onChange:e=>R(s=>{let a=[...s];return a[t]=e.target.value,a})})]},"".concat(e.name,"-").concat(t))}),n&&(0,a.jsxs)("div",{className:"flex items-start gap-2 rounded border border-yellow-800 bg-yellow-950/40 px-3 py-2 text-xs text-yellow-400",children:[(0,a.jsx)(d.Z,{className:"mt-0.5 h-3.5 w-3.5 shrink-0"}),(0,a.jsxs)("span",{children:["Fill all constructor arguments before deploying. Missing:"," ",s.filter((e,t)=>{var s;return!(null!==(s=L[t])&&void 0!==s?s:"").trim()}).map((e,t,s)=>"".concat(e.name||"arg"," (").concat(e.type,")")).join(", ")]})]})]}):(0,a.jsx)("div",{className:"text-xs text-slate-500",children:"No constructor arguments required."}),(0,a.jsxs)("div",{className:"flex flex-wrap gap-3",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"label",children:"Chain"}),(0,a.jsxs)("select",{className:"input",value:D,onChange:e=>F(e.target.value),children:[(0,a.jsx)("option",{value:"evm",children:"EVM (eSpace)"}),(0,a.jsx)("option",{value:"core",children:"Core Space"})]})]}),B&&O.length>0&&(0,a.jsxs)("div",{className:"flex-1 min-w-[200px]",children:[(0,a.jsx)("label",{className:"label",children:"Deployer account"}),(0,a.jsx)("select",{className:"input",value:I,onChange:e=>P(Number(e.target.value)),children:O.map(e=>(0,a.jsxs)("option",{value:e.index,children:["#",e.index," —"," ","evm"===D?e.evmAddress:e.coreAddress]},e.index))})]}),(0,a.jsx)("div",{className:"flex items-end",children:(0,a.jsxs)("button",{type:"button",className:"btn-primary",disabled:K.isPending||!B||s.length>0&&n,title:B?n?"Fill all constructor arguments first":void 0:"Start the node first",onClick:()=>K.mutate(),children:[(0,a.jsx)(m.Z,{className:"h-4 w-4"}),K.isPending?"Deploying…":"Deploy"]})})]}),q&&(0,a.jsx)("p",{className:"break-all text-sm ".concat(q.startsWith("✓")?"text-green-400":"text-red-400"),children:q})]})})()]}),"deployed"===t&&(0,a.jsx)("div",{className:"space-y-3",children:J?(0,a.jsx)("p",{className:"text-sm text-slate-500",children:"Loading…"}):0===H.length?(0,a.jsx)("div",{className:"card text-center text-sm text-slate-500 py-8",children:"No deployed contracts yet. Deploy one from the Editor tab."}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("p",{className:"text-xs text-slate-500",children:"Contracts are persisted per wallet in the node data directory. They survive node restarts (but not Wipe & Restart)."}),(0,a.jsx)("div",{className:"space-y-2",children:H.map(e=>{let t=_.has(e.id),s="evm"===e.chain?"http://localhost:8545":"http://localhost:12537";return(0,a.jsxs)("div",{className:"card space-y-2",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-sm font-medium text-white",children:[(0,a.jsx)(u.Z,{className:"h-4 w-4 text-blue-400"}),e.name,(0,a.jsx)("span",{className:"rounded px-1.5 py-0.5 text-[10px] uppercase tracking-wider ".concat("evm"===e.chain?"bg-purple-900/50 text-purple-300":"bg-cyan-900/50 text-cyan-300"),children:"evm"===e.chain?"eSpace":"Core"})]}),(0,a.jsxs)("div",{className:"mt-1 flex items-center gap-1",children:[(0,a.jsx)("code",{className:"max-w-[300px] truncate text-xs text-blue-300",children:e.address}),(0,a.jsx)(C,{text:e.address})]}),(0,a.jsxs)("div",{className:"mt-0.5 flex items-center gap-3 text-[10px] text-slate-500",children:[(0,a.jsxs)("span",{children:["Chain ID: ",e.chainId]}),(0,a.jsx)("span",{children:"•"}),(0,a.jsx)("span",{children:new Date(e.deployedAt).toLocaleString()}),(0,a.jsx)("span",{children:"•"}),(0,a.jsxs)("span",{children:[e.abi.length," ABI entries"]})]})]}),(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-1",children:[(0,a.jsx)("div",{title:"Copy JSON-RPC URL: ".concat(s),children:(0,a.jsx)(C,{text:s})}),(0,a.jsx)("span",{className:"text-[10px] text-slate-600 -ml-0.5 mr-1",children:"RPC"}),(0,a.jsx)("button",{type:"button",title:"Remove from tracking",className:"rounded p-1 text-slate-500 hover:text-red-400",disabled:X.isPending,onClick:()=>X.mutate(e.id),children:(0,a.jsx)(p.Z,{className:"h-3.5 w-3.5"})})]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between border-t border-[#2a3147] pt-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("span",{className:"text-[10px] text-slate-500",children:"tx:"}),(0,a.jsx)("code",{className:"max-w-[240px] truncate text-[10px] text-slate-400",children:e.txHash}),(0,a.jsx)(C,{text:e.txHash})]}),(0,a.jsx)("button",{type:"button",className:"flex items-center gap-1 rounded px-2 py-0.5 text-[11px] text-slate-400 hover:text-white hover:bg-[#2a3147] transition-colors",onClick:()=>V(t=>{let s=new Set(t);return s.has(e.id)?s.delete(e.id):s.add(e.id),s}),children:t?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(h.Z,{className:"h-3 w-3"})," Close"]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(g.Z,{className:"h-3 w-3"})," Interact"]})})]}),t&&(0,a.jsx)(S,{contract:e,accounts:O})]},e.id)})})]})})]})}},3368:function(e,t,s){"use strict";s.d(t,{z:function(){return o}});var a=s(5853),n=s(4254),l=s(1145),r=s(5460),i=s(8337);let c=(0,r.j)("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-cfx-500 text-white hover:bg-cfx-600",destructive:"bg-red-500 text-destructive-foreground hover:bg-red-500/90",outline:"border border-slate-700 bg-transparent hover:bg-slate-800 text-white",secondary:"bg-slate-800 text-slate-100 hover:bg-slate-700",ghost:"hover:bg-slate-800 hover:text-slate-100",link:"text-cfx-500 underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),o=n.forwardRef((e,t)=>{let{className:s,variant:n,size:r,asChild:o=!1,...d}=e,u=o?l.g7:"button";return(0,a.jsx)(u,{className:(0,i.cn)(c({variant:n,size:r,className:s})),ref:t,...d})});o.displayName="Button"},9510:function(e,t,s){"use strict";s.d(t,{_:function(){return o}});var a=s(5853),n=s(4254),l=s(5307),r=s(5460),i=s(8337);let c=(0,r.j)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-slate-300"),o=n.forwardRef((e,t)=>{let{className:s,...n}=e;return(0,a.jsx)(l.f,{ref:t,className:(0,i.cn)(c(),s),...n})});o.displayName=l.f.displayName},8144:function(e,t,s){"use strict";s.d(t,{N9:function(){return x},SC:function(){return f},SX:function(){return m},Vp:function(){return p},fA:function(){return g},mI:function(){return h},pJ:function(){return v}});var a,n=s(2608);let l="".concat(null!==(a=n.env.NEXT_PUBLIC_API_URL)&&void 0!==a?a:"","/api");async function r(e,t,s){let a=await fetch("".concat(l).concat(t),{method:e,headers:s?{"Content-Type":"application/json"}:void 0,body:s?JSON.stringify(s):void 0});if(!a.ok){var n;throw Error(null!==(n=(await a.json().catch(()=>({error:a.statusText}))).error)&&void 0!==n?n:a.statusText)}return a.json()}let i=e=>r("GET",e),c=(e,t)=>r("POST",e,t),o=e=>r("DELETE",e),d=(e,t)=>r("PUT",e,t),u=(e,t)=>r("PATCH",e,t),x={status:()=>i("/node/status"),start:()=>c("/node/start"),stop:()=>c("/node/stop"),restart:()=>c("/node/restart"),restartWipe:()=>c("/node/restart-wipe"),wipe:()=>c("/node/wipe")},m={list:()=>i("/accounts"),faucet:()=>i("/accounts/faucet"),fund:async(e,t,s)=>{let a=await fetch("/api/accounts/fund",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({address:e,amount:t,chain:s})});return await a.json()}},p={templates:()=>i("/contracts/templates"),template:e=>i("/contracts/templates/".concat(e)),compile:(e,t)=>c("/contracts/compile",{source:e,contractName:t}),deploy:e=>c("/contracts/deploy",e),deployed:e=>i("/contracts/deployed".concat(e?"?chain=".concat(e):"")),deleteDeployed:e=>o("/contracts/deployed/".concat(e)),call:(e,t,s,a)=>c("/contracts/".concat(e,"/call"),{functionName:t,args:s,accountIndex:a})},h={status:()=>i("/mining/status"),mine:e=>c("/mining/mine",{blocks:e}),start:e=>c("/mining/start",{intervalMs:e}),stop:()=>c("/mining/stop")},g={config:()=>i("/network/config"),updateConfig:e=>d("/network/config",e),rpcUrls:()=>i("/network/rpc-urls")},f={status:()=>i("/keystore/status"),generate:()=>c("/keystore/generate"),setup:e=>c("/keystore/setup",e),unlock:e=>c("/keystore/unlock",{password:e}),lock:()=>c("/keystore/lock"),wallets:()=>i("/keystore/wallets"),addWallet:(e,t)=>c("/keystore/wallets",{mnemonic:e,label:t}),activateWallet:e=>c("/keystore/wallets/".concat(e,"/activate")),renameWallet:(e,t)=>u("/keystore/wallets/".concat(e),{label:t}),deleteWallet:e=>o("/keystore/wallets/".concat(e))},v={get:()=>i("/settings")}},8337:function(e,t,s){"use strict";s.d(t,{cn:function(){return l}});var a=s(4685),n=s(4004);function l(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,n.m6)((0,a.W)(t))}}},function(e){e.O(0,[363,69,476,285,749,744],function(){return e(e.s=5104)}),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[185],{146:function(e,t,s){Promise.resolve().then(s.t.bind(s,8514,23)),Promise.resolve().then(s.bind(s,3251)),Promise.resolve().then(s.bind(s,4202))},3251:function(e,t,s){"use strict";s.d(t,{Providers:function(){return i}});var n=s(5853),r=s(3260),l=s(4852),a=s(4254);function i(e){let{children:t}=e,[s]=(0,a.useState)(()=>new r.S({defaultOptions:{queries:{staleTime:3e3,refetchInterval:4e3}}}));return(0,n.jsx)(l.aH,{client:s,children:t})}},4202:function(e,t,s){"use strict";s.d(t,{AppShell:function(){return b}});var n=s(5853),r=s(4852),l=s(8990),a=s(8144),i=s(4396),c=s(5294),o=s(6970),x=s(8701),d=s(6152),u=s(3650),f=s(9916),h=s(4254),m=s(3634);let p=[{href:"/",label:"Dashboard",icon:c.Z},{href:"/contracts",label:"Contracts",icon:o.Z},{href:"/wallet",label:"Wallet",icon:x.Z}];function v(){let e=(0,f.usePathname)(),[t,s]=(0,h.useState)("stopped");return(0,h.useEffect)(()=>{let e=(0,m.h)(),t=e=>s(e.server);return e.on("node:status",t),()=>{e.off("node:status",t)}},[]),(0,n.jsxs)("aside",{className:"flex h-full w-56 shrink-0 flex-col border-r border-[#2a3147] bg-[#161b27]",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2.5 border-b border-[#2a3147] px-4 py-4",children:[(0,n.jsx)(d.Z,{className:"h-5 w-5 text-blue-400"}),(0,n.jsx)("span",{className:"text-sm font-semibold text-white",children:"conflux-devkit"})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 border-b border-[#2a3147] px-4 py-2.5 text-xs text-slate-400",children:[(0,n.jsx)("span",{className:"running"===t?"status-dot-green":"starting"===t||"stopping"===t?"status-dot-yellow":"status-dot-red"}),(0,n.jsx)("span",{className:"capitalize",children:t})]}),(0,n.jsx)("nav",{className:"flex-1 overflow-y-auto py-2",children:p.map(t=>{let{href:s,label:r,icon:l}=t,a="/"===s?"/"===e:e.startsWith(s);return(0,n.jsxs)(u.default,{href:s,className:"flex items-center gap-2.5 px-4 py-2.5 text-sm transition-colors relative ".concat(a?"bg-cfx-500/10 text-cfx-400 font-medium before:absolute before:inset-y-0 before:left-0 before:w-1 before:bg-cfx-500":"text-slate-400 hover:bg-slate-800/50 hover:text-slate-200"),children:[(0,n.jsx)(l,{className:"h-4 w-4 shrink-0"}),r]},s)})}),(0,n.jsx)("div",{className:"border-t border-[#2a3147] px-4 py-3 text-[11px] text-slate-600",children:"Conflux Dev Node"})]})}function b(e){let{children:t}=e,s=(0,r.NL)(),{data:c,isLoading:o}=(0,l.a)({queryKey:["keystore","status"],queryFn:a.SC.status,refetchInterval:5e3,retry:2});return o?(0,n.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,n.jsxs)("div",{className:"flex flex-col items-center gap-4 text-slate-500",children:[(0,n.jsxs)("svg",{className:"h-8 w-8 animate-spin",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[(0,n.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,n.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8v4a4 4 0 00-4 4H4z"})]}),(0,n.jsx)("span",{className:"text-sm",children:"Connecting to conflux-devkit…"})]})}):(null==c?void 0:c.initialized)?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(v,{}),(0,n.jsx)("main",{className:"flex-1 overflow-y-auto bg-[#0e1117] p-6",children:t})]}):(0,n.jsxs)("div",{className:"flex h-full w-full flex-col items-center justify-center bg-[#0e1117] p-8",children:[(0,n.jsxs)("div",{className:"mb-8 flex flex-col items-center gap-2 text-center",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("svg",{viewBox:"0 0 32 32",className:"h-9 w-9 text-blue-500",fill:"currentColor","aria-hidden":"true",children:(0,n.jsx)("path",{d:"M16 2C8.268 2 2 8.268 2 16s6.268 14 14 14 14-6.268 14-14S23.732 2 16 2zm0 4a10 10 0 110 20A10 10 0 0116 6zm0 3a7 7 0 100 14A7 7 0 0016 9z"})}),(0,n.jsx)("span",{className:"text-xl font-bold text-white tracking-tight",children:"conflux-devkit"})]}),(0,n.jsx)("p",{className:"text-sm text-slate-400 max-w-sm",children:"Configure a mnemonic to derive genesis accounts for your local development node, then you can start it from the Dashboard."})]}),(0,n.jsx)(i.M,{onDone:()=>s.invalidateQueries({queryKey:["keystore"]})})]})}},3634:function(e,t,s){"use strict";s.d(t,{h:function(){return a}});var n=s(7903),r=s(2608);let l=null;function a(){if(!l){var e;let t=null!==(e=r.env.NEXT_PUBLIC_WS_URL)&&void 0!==e?e:"";l=(0,n.io)(t||void 0,{path:"/socket.io",reconnectionDelay:1e3,reconnectionDelayMax:5e3,reconnectionAttempts:Number.POSITIVE_INFINITY})}return l}},8514:function(){}},function(e){e.O(0,[347,363,69,781,857,396,285,749,744],function(){return e(e.s=146)}),_N_E=e.O()}]);
|