clawcrib 0.1.1 → 0.1.3
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 +41 -9
- package/bin/clawcrib.mjs +115 -22
- package/dist/.next/BUILD_ID +1 -1
- package/dist/.next/build-manifest.json +2 -2
- package/dist/.next/server/app/_global-error.html +2 -2
- package/dist/.next/server/app/_global-error.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/_not-found.html +2 -2
- package/dist/.next/server/app/_not-found.rsc +3 -3
- package/dist/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/dist/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/agent/[name]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/browse/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/browse.html +2 -2
- package/dist/.next/server/app/browse.rsc +3 -3
- package/dist/.next/server/app/browse.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/browse.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/browse.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/browse.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/browse.segments/browse/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/browse.segments/browse.segment.rsc +1 -1
- package/dist/.next/server/app/builder/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/builder.html +2 -2
- package/dist/.next/server/app/builder.rsc +3 -3
- package/dist/.next/server/app/builder.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/builder.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/builder.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/builder.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/builder.segments/builder/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/builder.segments/builder.segment.rsc +1 -1
- package/dist/.next/server/app/crib/[slug]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/crib/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/crib.html +1 -1
- package/dist/.next/server/app/crib.rsc +4 -4
- package/dist/.next/server/app/crib.segments/_full.segment.rsc +4 -4
- package/dist/.next/server/app/crib.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/crib.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/crib.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/crib.segments/crib/__PAGE__.segment.rsc +2 -2
- package/dist/.next/server/app/crib.segments/crib.segment.rsc +1 -1
- package/dist/.next/server/app/demo/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/demo.html +1 -1
- package/dist/.next/server/app/demo.rsc +4 -4
- package/dist/.next/server/app/demo.segments/_full.segment.rsc +4 -4
- package/dist/.next/server/app/demo.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/demo.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/demo.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/demo.segments/demo/__PAGE__.segment.rsc +2 -2
- package/dist/.next/server/app/demo.segments/demo.segment.rsc +1 -1
- package/dist/.next/server/app/feedback/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/feedback.html +2 -2
- package/dist/.next/server/app/feedback.rsc +3 -3
- package/dist/.next/server/app/feedback.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/feedback.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/feedback.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/feedback.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/feedback.segments/feedback/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/feedback.segments/feedback.segment.rsc +1 -1
- package/dist/.next/server/app/gltest/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/gltest.html +1 -1
- package/dist/.next/server/app/gltest.rsc +3 -3
- package/dist/.next/server/app/gltest.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/gltest.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/gltest.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/gltest.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/gltest.segments/gltest/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/gltest.segments/gltest.segment.rsc +1 -1
- package/dist/.next/server/app/help/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/help.html +2 -2
- package/dist/.next/server/app/help.rsc +3 -3
- package/dist/.next/server/app/help.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/help.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/help.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/help.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/help.segments/help/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/help.segments/help.segment.rsc +1 -1
- package/dist/.next/server/app/index.html +1 -1
- package/dist/.next/server/app/index.rsc +4 -4
- package/dist/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/dist/.next/server/app/index.segments/_full.segment.rsc +4 -4
- package/dist/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/learn/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/learn.html +2 -2
- package/dist/.next/server/app/learn.rsc +3 -3
- package/dist/.next/server/app/learn.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/learn.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/learn.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/learn.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/learn.segments/learn/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/learn.segments/learn.segment.rsc +1 -1
- package/dist/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/privacy.html +2 -2
- package/dist/.next/server/app/privacy.rsc +3 -3
- package/dist/.next/server/app/privacy.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/privacy.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/privacy.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/privacy.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/privacy.segments/privacy/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/privacy.segments/privacy.segment.rsc +1 -1
- package/dist/.next/server/app/terms/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/terms.html +2 -2
- package/dist/.next/server/app/terms.rsc +3 -3
- package/dist/.next/server/app/terms.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/terms.segments/_head.segment.rsc +1 -1
- package/dist/.next/server/app/terms.segments/_index.segment.rsc +2 -2
- package/dist/.next/server/app/terms.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/terms.segments/terms/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/terms.segments/terms.segment.rsc +1 -1
- package/dist/.next/server/chunks/ssr/[root-of-the-server]__76b71b25._.js +1 -1
- package/dist/.next/server/chunks/ssr/_a46dee72._.js +1 -1
- package/dist/.next/server/chunks/ssr/_e01a61c0._.js +1 -1
- package/dist/.next/server/middleware-manifest.json +1 -1
- package/dist/.next/server/pages/404.html +2 -2
- package/dist/.next/server/pages/500.html +2 -2
- package/dist/.next/static/chunks/{1a8b8355b176018c.css → 123ff9bd00156eb9.css} +1 -1
- package/dist/.next/static/chunks/a6f2506f5593153c.js +1 -0
- package/dist/.next/static/chunks/f520d44d82e7efc9.js +1 -0
- package/package.json +2 -2
- package/dist/.next/static/chunks/6b3aa1f3b4ac9239.js +0 -1
- package/dist/.next/static/chunks/eda8b4c24ac1f12f.js +0 -1
- /package/dist/.next/static/{7d4fjIFyjViUDWgLnLDuG → I0biwA23B0Jemw5fELRqB}/_buildManifest.js +0 -0
- /package/dist/.next/static/{7d4fjIFyjViUDWgLnLDuG → I0biwA23B0Jemw5fELRqB}/_clientMiddlewareManifest.json +0 -0
- /package/dist/.next/static/{7d4fjIFyjViUDWgLnLDuG → I0biwA23B0Jemw5fELRqB}/_ssgManifest.js +0 -0
package/README.md
CHANGED
|
@@ -2,26 +2,58 @@
|
|
|
2
2
|
|
|
3
3
|
The live 3D office for your [OpenClaw](https://openclaw.ai) agents — watch your whole team work: agents at their desks, walking to the workboard, live task flow, sub-agents, crons, all in real time.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
npx clawcrib
|
|
7
|
-
# → ClawCrib on http://localhost:18787/crib (demo mode)
|
|
5
|
+
## Install it where your agents run
|
|
8
6
|
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
```sh
|
|
8
|
+
npm i -g clawcrib
|
|
9
|
+
clawcrib start
|
|
11
10
|
```
|
|
12
11
|
|
|
12
|
+
That's the whole setup. It finds the OpenClaw gateway on that machine, connects to it, and keeps running in the background after you close the terminal — or your SSH session.
|
|
13
|
+
|
|
14
|
+
Over SSH it also binds `0.0.0.0` and prints the LAN address to open, since a loopback bind is unreachable from the laptop you're tunnelling in from.
|
|
15
|
+
|
|
16
|
+
Just looking? `npx clawcrib` runs it once without installing, or see the live demo at [clawcrib.com/demo](https://clawcrib.com/demo).
|
|
17
|
+
|
|
18
|
+
## Commands
|
|
19
|
+
|
|
20
|
+
| Command | Description |
|
|
21
|
+
| --- | --- |
|
|
22
|
+
| `clawcrib` | Run in the foreground until Ctrl-C |
|
|
23
|
+
| `clawcrib start` | Run in the background |
|
|
24
|
+
| `clawcrib stop` | Stop the background instance |
|
|
25
|
+
| `clawcrib restart` | Stop, then start |
|
|
26
|
+
| `clawcrib status` | Is it running, and is it responding? |
|
|
27
|
+
| `clawcrib install-service` | Keep it running across reboots (systemd / launchd) |
|
|
28
|
+
| `clawcrib uninstall-service` | Remove that service file |
|
|
29
|
+
|
|
13
30
|
## Options
|
|
14
31
|
|
|
15
32
|
| Flag | Default | Description |
|
|
16
33
|
| --- | --- | --- |
|
|
17
34
|
| `-p, --port` | `18787` | Port to listen on |
|
|
18
|
-
| `-g, --gateway` |
|
|
35
|
+
| `-g, --gateway` | auto | Gateway WebSocket URL — only needed for a *remote* gateway |
|
|
19
36
|
| `-t, --token` | — | Gateway auth token |
|
|
20
|
-
| `--host` | `127.0.0.1` | Host to bind |
|
|
37
|
+
| `--host` | `127.0.0.1`, or `0.0.0.0` over SSH | Host to bind |
|
|
38
|
+
| `--demo` | — | Force the simulated team even if a gateway is found |
|
|
21
39
|
| `--no-open` | — | Don't open the browser |
|
|
22
40
|
|
|
23
|
-
|
|
41
|
+
A gateway on the same machine (`127.0.0.1:18789`) is detected and connected automatically — you only need `--gateway` to point at another host. With no gateway anywhere, ClawCrib shows a simulated team so the floor is never empty. `OPENCLAW_GATEWAY_URL` / `OPENCLAW_GATEWAY_TOKEN` are honored when flags are omitted.
|
|
42
|
+
|
|
43
|
+
If your gateway requires pairing, approve the device on the gateway host:
|
|
24
44
|
|
|
25
|
-
|
|
45
|
+
```sh
|
|
46
|
+
openclaw devices approve <requestId>
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Notes
|
|
50
|
+
|
|
51
|
+
Floor plans, the device key and logs live in `~/.clawcrib/` (override with `CLAWCRIB_CONFIG_DIR`). Nothing leaves your network — there's no account and no cloud.
|
|
52
|
+
|
|
53
|
+
Can't reach it from another machine? The port is usually firewalled:
|
|
54
|
+
|
|
55
|
+
```sh
|
|
56
|
+
sudo ufw allow from 192.168.0.0/24 to any port 18787 proto tcp
|
|
57
|
+
```
|
|
26
58
|
|
|
27
59
|
More: [clawcrib.com](https://clawcrib.com)
|
package/bin/clawcrib.mjs
CHANGED
|
@@ -34,19 +34,28 @@ const HELP = `
|
|
|
34
34
|
--host <host> Host to bind (default: 127.0.0.1 — use 0.0.0.0 to
|
|
35
35
|
reach it from another machine over LAN/SSH)
|
|
36
36
|
--no-open Don't open the browser
|
|
37
|
+
--demo Force the simulated team, even if a gateway is found
|
|
37
38
|
-v, --version Print version
|
|
38
39
|
-h, --help Show this help
|
|
39
40
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
A gateway on this machine (127.0.0.1:18789) is detected and connected
|
|
42
|
+
automatically — you only need --gateway for a remote one. With no gateway
|
|
43
|
+
anywhere, ClawCrib shows a simulated team so the floor is never empty.
|
|
44
|
+
Over SSH the bind defaults to 0.0.0.0 so you can reach it from your laptop.
|
|
45
|
+
OPENCLAW_GATEWAY_URL / OPENCLAW_GATEWAY_TOKEN are honored too.
|
|
43
46
|
`;
|
|
44
47
|
|
|
45
48
|
const COMMANDS = new Set(["start", "stop", "restart", "status", "install-service", "uninstall-service"]);
|
|
46
49
|
|
|
50
|
+
// Reached over SSH, a loopback bind is useless — the dashboard is only visible
|
|
51
|
+
// from inside the box you are already tunnelling into. Default to all
|
|
52
|
+
// interfaces there so `clawcrib start` just works; an explicit --host wins.
|
|
53
|
+
const OVER_SSH = Boolean(process.env.SSH_CONNECTION || process.env.SSH_TTY || process.env.SSH_CLIENT);
|
|
54
|
+
|
|
47
55
|
function parseArgs(argv) {
|
|
48
|
-
const opts = { port: 18787, host: "127.0.0.1", open: true, gateway: null, token: null, cmd: "run" };
|
|
56
|
+
const opts = { port: 18787, host: "127.0.0.1", open: true, gateway: null, token: null, cmd: "run", hostAuto: false, demo: false };
|
|
49
57
|
if (argv.length && COMMANDS.has(argv[0])) opts.cmd = argv.shift();
|
|
58
|
+
let hostGiven = false;
|
|
50
59
|
for (let i = 0; i < argv.length; i++) {
|
|
51
60
|
const a = argv[i];
|
|
52
61
|
switch (a) {
|
|
@@ -64,10 +73,14 @@ function parseArgs(argv) {
|
|
|
64
73
|
break;
|
|
65
74
|
case "--host":
|
|
66
75
|
opts.host = argv[++i];
|
|
76
|
+
hostGiven = true;
|
|
67
77
|
break;
|
|
68
78
|
case "--no-open":
|
|
69
79
|
opts.open = false;
|
|
70
80
|
break;
|
|
81
|
+
case "--demo":
|
|
82
|
+
opts.demo = true;
|
|
83
|
+
break;
|
|
71
84
|
case "-v":
|
|
72
85
|
case "--version":
|
|
73
86
|
console.log(pkg.version);
|
|
@@ -87,6 +100,10 @@ function parseArgs(argv) {
|
|
|
87
100
|
console.error("Invalid --port");
|
|
88
101
|
process.exit(1);
|
|
89
102
|
}
|
|
103
|
+
if (!hostGiven && OVER_SSH) {
|
|
104
|
+
opts.host = "0.0.0.0";
|
|
105
|
+
opts.hostAuto = true;
|
|
106
|
+
}
|
|
90
107
|
return opts;
|
|
91
108
|
}
|
|
92
109
|
|
|
@@ -171,10 +188,38 @@ const CONFIG_DIR = process.env.CLAWCRIB_CONFIG_DIR || path.join(os.homedir(), ".
|
|
|
171
188
|
const PID_FILE = path.join(CONFIG_DIR, "clawcrib.pid");
|
|
172
189
|
const LOG_FILE = path.join(CONFIG_DIR, "clawcrib.log");
|
|
173
190
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
191
|
+
// Health checks always go to loopback, but what we *print* when bound to all
|
|
192
|
+
// interfaces must be the address another machine can actually open. Printing
|
|
193
|
+
// "localhost" there is worse than useless: it is the one URL that cannot work
|
|
194
|
+
// from anywhere else.
|
|
195
|
+
const healthUrl = `http://${opts.host === "0.0.0.0" ? "127.0.0.1" : opts.host}:${opts.port}`;
|
|
196
|
+
const lanIp = lanAddress();
|
|
197
|
+
const url = opts.host === "0.0.0.0" && lanIp ? `http://${lanIp}:${opts.port}` : healthUrl;
|
|
198
|
+
let autoGateway = false;
|
|
199
|
+
|
|
200
|
+
// You installed this on the box your agents run on. Finding the gateway and
|
|
201
|
+
// then asking you to re-type its address is a step that exists for no reason —
|
|
202
|
+
// connect to it. `--demo` opts out, and an explicit --gateway always wins.
|
|
203
|
+
async function resolveGateway() {
|
|
204
|
+
if (env.OPENCLAW_GATEWAY_URL || opts.demo) return;
|
|
205
|
+
if (await probePort("127.0.0.1", GATEWAY_PORT)) {
|
|
206
|
+
env.OPENCLAW_GATEWAY_URL = `ws://127.0.0.1:${GATEWAY_PORT}`;
|
|
207
|
+
autoGateway = true;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
function modeLine() {
|
|
212
|
+
if (!env.OPENCLAW_GATEWAY_URL) {
|
|
213
|
+
return opts.demo
|
|
214
|
+
? "demo mode (--demo)"
|
|
215
|
+
: "demo mode — no gateway found on this machine. Pass --gateway ws://host:18789 for a remote one.";
|
|
216
|
+
}
|
|
217
|
+
return autoGateway
|
|
218
|
+
? `live — auto-connected to the gateway on this machine (${env.OPENCLAW_GATEWAY_URL})`
|
|
219
|
+
: `live gateway: ${env.OPENCLAW_GATEWAY_URL}`;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
const STATE_FILE = path.join(CONFIG_DIR, "clawcrib.json");
|
|
178
223
|
|
|
179
224
|
function readPid() {
|
|
180
225
|
try {
|
|
@@ -187,16 +232,42 @@ function readPid() {
|
|
|
187
232
|
}
|
|
188
233
|
}
|
|
189
234
|
|
|
235
|
+
// What the running instance was actually started with. Without this, `start`
|
|
236
|
+
// can only ask "is something alive?" and would report success while silently
|
|
237
|
+
// ignoring the --host/--port/--gateway you just asked for.
|
|
238
|
+
function readState() {
|
|
239
|
+
try {
|
|
240
|
+
return JSON.parse(readFileSync(STATE_FILE, "utf8"));
|
|
241
|
+
} catch {
|
|
242
|
+
return null;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
function settingsDiffer(prev) {
|
|
247
|
+
if (!prev) return null;
|
|
248
|
+
const now = { host: opts.host, port: opts.port, gateway: env.OPENCLAW_GATEWAY_URL ?? null };
|
|
249
|
+
const changed = [];
|
|
250
|
+
if (prev.host !== now.host) changed.push(`host ${prev.host} → ${now.host}`);
|
|
251
|
+
if (prev.port !== now.port) changed.push(`port ${prev.port} → ${now.port}`);
|
|
252
|
+
if ((prev.gateway ?? null) !== now.gateway) changed.push(`gateway ${prev.gateway ?? "none"} → ${now.gateway ?? "none"}`);
|
|
253
|
+
return changed.length ? changed : null;
|
|
254
|
+
}
|
|
255
|
+
|
|
190
256
|
async function printDetails() {
|
|
191
257
|
if (LOOPBACK.has(opts.host)) {
|
|
192
|
-
const lan = lanAddress();
|
|
193
258
|
console.log(` Note: bound to ${opts.host} — reachable only from this machine.`);
|
|
194
259
|
console.log(` For LAN/SSH access, use --host 0.0.0.0`);
|
|
195
|
-
if (
|
|
260
|
+
if (lanIp) console.log(` then open http://${lanIp}:${opts.port}`);
|
|
261
|
+
} else if (opts.host === "0.0.0.0") {
|
|
262
|
+
if (opts.hostAuto) console.log(` Bind: 0.0.0.0 (auto: this is an SSH session — pass --host to override)`);
|
|
263
|
+
console.log(` Open: ${url} from another machine on this network`);
|
|
264
|
+
console.log(` Not loading? The port is probably firewalled:`);
|
|
265
|
+
console.log(` sudo ufw allow ${opts.port}/tcp # ufw`);
|
|
266
|
+
console.log(` sudo firewall-cmd --add-port=${opts.port}/tcp --permanent && sudo firewall-cmd --reload`);
|
|
196
267
|
}
|
|
197
|
-
if (
|
|
198
|
-
console.log(
|
|
199
|
-
console.log(`
|
|
268
|
+
if (autoGateway) {
|
|
269
|
+
console.log(` If the gateway asks to pair, approve it there:`);
|
|
270
|
+
console.log(` openclaw devices approve <requestId>`);
|
|
200
271
|
}
|
|
201
272
|
}
|
|
202
273
|
|
|
@@ -212,15 +283,36 @@ function spawnServer(detached) {
|
|
|
212
283
|
}
|
|
213
284
|
|
|
214
285
|
async function cmdStart() {
|
|
286
|
+
await resolveGateway();
|
|
215
287
|
const running = readPid();
|
|
216
288
|
if (running) {
|
|
217
|
-
|
|
218
|
-
|
|
289
|
+
const changed = settingsDiffer(readState());
|
|
290
|
+
if (!changed) {
|
|
291
|
+
console.log(`\n ClawCrib is already running (pid ${running}) at ${url}\n`);
|
|
292
|
+
return;
|
|
293
|
+
}
|
|
294
|
+
// You asked for different settings; honouring the old ones and calling it
|
|
295
|
+
// success is how "--host 0.0.0.0" silently did nothing.
|
|
296
|
+
console.log(`\n Restarting with new settings: ${changed.join(", ")}`);
|
|
297
|
+
await cmdStop();
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
// A clearer failure than Node's raw EADDRINUSE stack trace.
|
|
301
|
+
if (await probePort(opts.host === "0.0.0.0" ? "127.0.0.1" : opts.host, opts.port, 400)) {
|
|
302
|
+
console.error(
|
|
303
|
+
`\n Port ${opts.port} is already in use by something else.\n` +
|
|
304
|
+
` Free it, or pick another: clawcrib start --port 18788\n`
|
|
305
|
+
);
|
|
306
|
+
process.exit(1);
|
|
219
307
|
}
|
|
220
308
|
const child = spawnServer(true);
|
|
221
309
|
child.unref(); // survives this shell exiting
|
|
222
310
|
writeFileSync(PID_FILE, String(child.pid));
|
|
223
|
-
|
|
311
|
+
writeFileSync(
|
|
312
|
+
STATE_FILE,
|
|
313
|
+
JSON.stringify({ pid: child.pid, host: opts.host, port: opts.port, gateway: env.OPENCLAW_GATEWAY_URL ?? null })
|
|
314
|
+
);
|
|
315
|
+
if (!(await waitForServer(healthUrl))) {
|
|
224
316
|
console.error(`ClawCrib did not come up within 30s. Log: ${LOG_FILE}`);
|
|
225
317
|
try {
|
|
226
318
|
process.kill(child.pid);
|
|
@@ -232,7 +324,7 @@ async function cmdStart() {
|
|
|
232
324
|
}
|
|
233
325
|
console.log(`\n ClawCrib v${pkg.version} started in the background (pid ${child.pid})`);
|
|
234
326
|
console.log(` Crib: ${url}`);
|
|
235
|
-
console.log(` Mode: ${
|
|
327
|
+
console.log(` Mode: ${modeLine()}`);
|
|
236
328
|
await printDetails();
|
|
237
329
|
console.log(`\n Log: ${LOG_FILE}`);
|
|
238
330
|
console.log(` Stop: clawcrib stop\n`);
|
|
@@ -268,7 +360,7 @@ async function cmdStatus() {
|
|
|
268
360
|
process.exitCode = 1;
|
|
269
361
|
return;
|
|
270
362
|
}
|
|
271
|
-
const responding = await waitForServer(
|
|
363
|
+
const responding = await waitForServer(healthUrl, 3000);
|
|
272
364
|
console.log(`\n ClawCrib is running (pid ${pid})`);
|
|
273
365
|
console.log(` Crib: ${url} — ${responding ? "responding" : "NOT responding"}`);
|
|
274
366
|
console.log(` Log: ${LOG_FILE}\n`);
|
|
@@ -380,11 +472,12 @@ function cmdUninstallService() {
|
|
|
380
472
|
console.log(`\n Removed ${file}\n`);
|
|
381
473
|
}
|
|
382
474
|
|
|
383
|
-
function cmdRun() {
|
|
475
|
+
async function cmdRun() {
|
|
476
|
+
await resolveGateway();
|
|
384
477
|
const child = spawnServer(false);
|
|
385
478
|
child.stdout.on("data", () => {}); // keep Next's own listen log quiet; we print our own
|
|
386
479
|
|
|
387
|
-
waitForServer(
|
|
480
|
+
waitForServer(healthUrl).then(async (up) => {
|
|
388
481
|
if (!up) {
|
|
389
482
|
console.error("ClawCrib server did not come up within 30s.");
|
|
390
483
|
child.kill();
|
|
@@ -392,7 +485,7 @@ function cmdRun() {
|
|
|
392
485
|
}
|
|
393
486
|
console.log(`\n ClawCrib v${pkg.version}`);
|
|
394
487
|
console.log(` Crib: ${url}`);
|
|
395
|
-
console.log(` Mode: ${
|
|
488
|
+
console.log(` Mode: ${modeLine()}`);
|
|
396
489
|
await printDetails();
|
|
397
490
|
console.log(`\n Serving. Press Ctrl-C to stop.`);
|
|
398
491
|
console.log(` Prefer it always-on? clawcrib start (background)\n`);
|
|
@@ -433,5 +526,5 @@ switch (opts.cmd) {
|
|
|
433
526
|
cmdUninstallService();
|
|
434
527
|
break;
|
|
435
528
|
default:
|
|
436
|
-
cmdRun();
|
|
529
|
+
await cmdRun();
|
|
437
530
|
}
|
package/dist/.next/BUILD_ID
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
I0biwA23B0Jemw5fELRqB
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
"static/chunks/a6dad97d9634a72d.js"
|
|
8
8
|
],
|
|
9
9
|
"lowPriorityFiles": [
|
|
10
|
-
"static/
|
|
11
|
-
"static/
|
|
10
|
+
"static/I0biwA23B0Jemw5fELRqB/_ssgManifest.js",
|
|
11
|
+
"static/I0biwA23B0Jemw5fELRqB/_buildManifest.js"
|
|
12
12
|
],
|
|
13
13
|
"rootMainFiles": [
|
|
14
14
|
"static/chunks/251e16428085edaf.js",
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
<!DOCTYPE html><!--
|
|
2
|
-
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/251e16428085edaf.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"ViewportBoundary\"]\n9:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"MetadataBoundary\"]\nb:I[68027,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"
|
|
1
|
+
<!DOCTYPE html><!--I0biwA23B0Jemw5fELRqB--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/251e16428085edaf.js"/><script src="/_next/static/chunks/f188e57e58a39d0f.js" async=""></script><script src="/_next/static/chunks/045c83caa4d15373.js" async=""></script><script src="/_next/static/chunks/619d93506b5beb32.js" async=""></script><script src="/_next/static/chunks/82abf2d65f5428ae.js" async=""></script><script src="/_next/static/chunks/turbopack-aadb2fcebd6885bc.js" async=""></script><script src="/_next/static/chunks/ff1a16fafef87110.js" async=""></script><script src="/_next/static/chunks/0bd6498bda341889.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: Internal Server Error.</title><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
|
|
2
|
+
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/251e16428085edaf.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"ViewportBoundary\"]\n9:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"MetadataBoundary\"]\nb:I[68027,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/0bd6498bda341889.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"I0biwA23B0Jemw5fELRqB\",\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"title\",null,{\"children\":\"500: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"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,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@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\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/ff1a16fafef87110.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0bd6498bda341889.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$La\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\na:[]\n"])</script></body></html>
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
7:I[97367,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"ViewportBoundary"]
|
|
7
7
|
9:I[97367,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"MetadataBoundary"]
|
|
8
8
|
b:I[68027,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"default"]
|
|
9
|
-
0:{"P":null,"b":"
|
|
9
|
+
0:{"P":null,"b":"I0biwA23B0Jemw5fELRqB","c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":["$","title",null,{"children":"500: Internal Server Error."}]}],["$","body",null,{"children":["$","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,{"style":{"lineHeight":"48px"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\n@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","paddingRight":23,"fontSize":24,"fontWeight":500,"verticalAlign":"top"},"children":"500"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"28px"},"children":"Internal Server Error."}]}]]}]}]}]]}],[["$","script","script-0",{"src":"/_next/static/chunks/ff1a16fafef87110.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0bd6498bda341889.js","async":true,"nonce":"$undefined"}]],["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$L7",null,{"children":"$L8"}],["$","div",null,{"hidden":true,"children":["$","$L9",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$La"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$b","$undefined"],"S":true}
|
|
10
10
|
8:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
11
11
|
6:null
|
|
12
12
|
a:[]
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[97367,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"OutletBoundary"]
|
|
3
3
|
3:"$Sreact.suspense"
|
|
4
|
-
0:{"buildId":"
|
|
4
|
+
0:{"buildId":"I0biwA23B0Jemw5fELRqB","rsc":["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":["$","title",null,{"children":"500: Internal Server Error."}]}],["$","body",null,{"children":["$","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,{"style":{"lineHeight":"48px"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\n@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","paddingRight":23,"fontSize":24,"fontWeight":500,"verticalAlign":"top"},"children":"500"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"28px"},"children":"Internal Server Error."}]}]]}]}]}]]}],[["$","script","script-0",{"src":"/_next/static/chunks/ff1a16fafef87110.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/0bd6498bda341889.js","async":true}]],["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"loading":null,"isPartial":false}
|
|
5
5
|
4:null
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
7:I[97367,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"ViewportBoundary"]
|
|
7
7
|
9:I[97367,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"MetadataBoundary"]
|
|
8
8
|
b:I[68027,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"default"]
|
|
9
|
-
0:{"P":null,"b":"
|
|
9
|
+
0:{"P":null,"b":"I0biwA23B0Jemw5fELRqB","c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":["$","title",null,{"children":"500: Internal Server Error."}]}],["$","body",null,{"children":["$","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,{"style":{"lineHeight":"48px"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\n@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","paddingRight":23,"fontSize":24,"fontWeight":500,"verticalAlign":"top"},"children":"500"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"28px"},"children":"Internal Server Error."}]}]]}]}]}]]}],[["$","script","script-0",{"src":"/_next/static/chunks/ff1a16fafef87110.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0bd6498bda341889.js","async":true,"nonce":"$undefined"}]],["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$L7",null,{"children":"$L8"}],["$","div",null,{"hidden":true,"children":["$","$L9",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$La"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$b","$undefined"],"S":true}
|
|
10
10
|
8:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
11
11
|
6:null
|
|
12
12
|
a:[]
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
2:I[97367,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"ViewportBoundary"]
|
|
3
3
|
3:I[97367,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"MetadataBoundary"]
|
|
4
4
|
4:"$Sreact.suspense"
|
|
5
|
-
0:{"buildId":"
|
|
5
|
+
0:{"buildId":"I0biwA23B0Jemw5fELRqB","rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"loading":null,"isPartial":false}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[39756,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"default"]
|
|
3
3
|
3:I[37457,["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"default"]
|
|
4
|
-
0:{"buildId":"
|
|
4
|
+
0:{"buildId":"I0biwA23B0Jemw5fELRqB","rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"loading":null,"isPartial":false}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
0:{"buildId":"
|
|
1
|
+
0:{"buildId":"I0biwA23B0Jemw5fELRqB","tree":{"name":"","paramType":null,"paramKey":"","hasRuntimePrefetch":false,"slots":{"children":{"name":"__PAGE__","paramType":null,"paramKey":"__PAGE__","hasRuntimePrefetch":false,"slots":null,"isRootLayout":false}},"isRootLayout":false},"staleTime":300}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {};
|
|
2
|
-
globalThis.__RSC_MANIFEST["/_not-found/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":68027,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js":{"id":68027,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":39756,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js":{"id":39756,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":37457,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":37457,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":47257,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js":{"id":47257,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":92825,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js":{"id":92825,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":68017,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":68017,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":27201,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":27201,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":97367,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":97367,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/@vercel/analytics/dist/next/index.mjs <module evaluation>":{"id":2355,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/node_modules/@vercel/analytics/dist/next/index.mjs":{"id":2355,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/components/ConvexClientProvider.tsx <module evaluation>":{"id":41658,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/components/ConvexClientProvider.tsx":{"id":41658,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/lib/theme.tsx <module evaluation>":{"id":2534,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/lib/theme.tsx":{"id":2534,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/components/AppShell.tsx <module evaluation>":{"id":49830,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/components/AppShell.tsx":{"id":49830,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/app/error.tsx <module evaluation>":{"id":58298,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js","/_next/static/chunks/5e108d2a5086dd3c.js"],"async":false},"[project]/src/app/error.tsx":{"id":58298,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js","/_next/static/chunks/5e108d2a5086dd3c.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js <module evaluation>":{"id":22016,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js":{"id":22016,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false}},"ssrModuleMapping":{"68027":{"*":{"id":40622,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"39756":{"*":{"id":2420,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"37457":{"*":{"id":24017,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"47257":{"*":{"id":77682,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"92825":{"*":{"id":97296,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"68017":{"*":{"id":61660,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"27201":{"*":{"id":60704,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"97367":{"*":{"id":90574,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"2355":{"*":{"id":62065,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}},"41658":{"*":{"id":82084,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}},"2534":{"*":{"id":66351,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}},"49830":{"*":{"id":15149,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}},"58298":{"*":{"id":23953,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js","server/chunks/ssr/_be519242._.js"],"async":false}},"22016":{"*":{"id":38246,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"68027":{"*":{"id":82509,"name":"*","chunks":[],"async":false}},"39756":{"*":{"id":26768,"name":"*","chunks":[],"async":false}},"37457":{"*":{"id":13778,"name":"*","chunks":[],"async":false}},"47257":{"*":{"id":92977,"name":"*","chunks":[],"async":false}},"92825":{"*":{"id":48552,"name":"*","chunks":[],"async":false}},"68017":{"*":{"id":83919,"name":"*","chunks":[],"async":false}},"27201":{"*":{"id":33249,"name":"*","chunks":[],"async":false}},"97367":{"*":{"id":24150,"name":"*","chunks":[],"async":false}},"2355":{"*":{"id":81037,"name":"*","chunks":[],"async":false}},"41658":{"*":{"id":26241,"name":"*","chunks":[],"async":false}},"2534":{"*":{"id":67059,"name":"*","chunks":[],"async":false}},"49830":{"*":{"id":43297,"name":"*","chunks":[],"async":false}},"58298":{"*":{"id":80257,"name":"*","chunks":[],"async":false}},"22016":{"*":{"id":84707,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/icon.svg":[],"[project]/src/app/layout":[{"path":"static/chunks/87c6fa7148018b34.css","inlined":false},{"path":"static/chunks/1a8b8355b176018c.css","inlined":false}],"[project]/src/app/error":[{"path":"static/chunks/87c6fa7148018b34.css","inlined":false},{"path":"static/chunks/1a8b8355b176018c.css","inlined":false}],"[project]/src/app/not-found":[{"path":"static/chunks/87c6fa7148018b34.css","inlined":false},{"path":"static/chunks/1a8b8355b176018c.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/icon.svg":["static/chunks/ff1a16fafef87110.js","static/chunks/0bd6498bda341889.js"],"[project]/src/app/layout":["static/chunks/3cb5ccf4d1eaa633.js","static/chunks/169b21b9dab86074.js"],"[project]/src/app/error":["static/chunks/3cb5ccf4d1eaa633.js","static/chunks/169b21b9dab86074.js","static/chunks/5e108d2a5086dd3c.js"],"[project]/src/app/not-found":["static/chunks/3cb5ccf4d1eaa633.js","static/chunks/169b21b9dab86074.js"]}}
|
|
2
|
+
globalThis.__RSC_MANIFEST["/_not-found/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":68027,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js":{"id":68027,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":39756,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js":{"id":39756,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":37457,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":37457,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":47257,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js":{"id":47257,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":92825,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js":{"id":92825,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":68017,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":68017,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":27201,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":27201,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":97367,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":97367,"name":"*","chunks":["/_next/static/chunks/ff1a16fafef87110.js","/_next/static/chunks/0bd6498bda341889.js"],"async":false},"[project]/node_modules/@vercel/analytics/dist/next/index.mjs <module evaluation>":{"id":2355,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/node_modules/@vercel/analytics/dist/next/index.mjs":{"id":2355,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/components/ConvexClientProvider.tsx <module evaluation>":{"id":41658,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/components/ConvexClientProvider.tsx":{"id":41658,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/lib/theme.tsx <module evaluation>":{"id":2534,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/lib/theme.tsx":{"id":2534,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/components/AppShell.tsx <module evaluation>":{"id":49830,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/components/AppShell.tsx":{"id":49830,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/src/app/error.tsx <module evaluation>":{"id":58298,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js","/_next/static/chunks/5e108d2a5086dd3c.js"],"async":false},"[project]/src/app/error.tsx":{"id":58298,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js","/_next/static/chunks/5e108d2a5086dd3c.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js <module evaluation>":{"id":22016,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js":{"id":22016,"name":"*","chunks":["/_next/static/chunks/3cb5ccf4d1eaa633.js","/_next/static/chunks/169b21b9dab86074.js"],"async":false}},"ssrModuleMapping":{"68027":{"*":{"id":40622,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"39756":{"*":{"id":2420,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"37457":{"*":{"id":24017,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"47257":{"*":{"id":77682,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"92825":{"*":{"id":97296,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"68017":{"*":{"id":61660,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"27201":{"*":{"id":60704,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"97367":{"*":{"id":90574,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__1eed2761._.js","server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js"],"async":false}},"2355":{"*":{"id":62065,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}},"41658":{"*":{"id":82084,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}},"2534":{"*":{"id":66351,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}},"49830":{"*":{"id":15149,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}},"58298":{"*":{"id":23953,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js","server/chunks/ssr/_be519242._.js"],"async":false}},"22016":{"*":{"id":38246,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__e79298db._.js","server/chunks/ssr/node_modules_next_920e7746._.js","server/chunks/ssr/_3449c279._.js","server/chunks/ssr/node_modules_@convex-dev_auth_dist_react_index_c572ed70.js","server/chunks/ssr/src_components_ConvexClientProvider_tsx_df965ff3._.js","server/chunks/ssr/node_modules_next_dist_61a87db9._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"68027":{"*":{"id":82509,"name":"*","chunks":[],"async":false}},"39756":{"*":{"id":26768,"name":"*","chunks":[],"async":false}},"37457":{"*":{"id":13778,"name":"*","chunks":[],"async":false}},"47257":{"*":{"id":92977,"name":"*","chunks":[],"async":false}},"92825":{"*":{"id":48552,"name":"*","chunks":[],"async":false}},"68017":{"*":{"id":83919,"name":"*","chunks":[],"async":false}},"27201":{"*":{"id":33249,"name":"*","chunks":[],"async":false}},"97367":{"*":{"id":24150,"name":"*","chunks":[],"async":false}},"2355":{"*":{"id":81037,"name":"*","chunks":[],"async":false}},"41658":{"*":{"id":26241,"name":"*","chunks":[],"async":false}},"2534":{"*":{"id":67059,"name":"*","chunks":[],"async":false}},"49830":{"*":{"id":43297,"name":"*","chunks":[],"async":false}},"58298":{"*":{"id":80257,"name":"*","chunks":[],"async":false}},"22016":{"*":{"id":84707,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/icon.svg":[],"[project]/src/app/layout":[{"path":"static/chunks/87c6fa7148018b34.css","inlined":false},{"path":"static/chunks/123ff9bd00156eb9.css","inlined":false}],"[project]/src/app/error":[{"path":"static/chunks/87c6fa7148018b34.css","inlined":false},{"path":"static/chunks/123ff9bd00156eb9.css","inlined":false}],"[project]/src/app/not-found":[{"path":"static/chunks/87c6fa7148018b34.css","inlined":false},{"path":"static/chunks/123ff9bd00156eb9.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/icon.svg":["static/chunks/ff1a16fafef87110.js","static/chunks/0bd6498bda341889.js"],"[project]/src/app/layout":["static/chunks/3cb5ccf4d1eaa633.js","static/chunks/169b21b9dab86074.js"],"[project]/src/app/error":["static/chunks/3cb5ccf4d1eaa633.js","static/chunks/169b21b9dab86074.js","static/chunks/5e108d2a5086dd3c.js"],"[project]/src/app/not-found":["static/chunks/3cb5ccf4d1eaa633.js","static/chunks/169b21b9dab86074.js"]}}
|