@vantaloom/runtime-darwin-arm64 0.1.24 → 0.3.1
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/VERSION +1 -1
- package/bin/vantaloom-agent +0 -0
- package/bin/vantaloom-api +0 -0
- package/bin/vantaloomctl +0 -0
- package/cli/config.json +3 -2
- package/cli/package.json +1 -1
- package/cli/src/cli.mjs +187 -22
- package/manifest.json +2 -2
- package/package.json +1 -1
- package/web/404.html +1 -1
- package/web/__next.__PAGE__.txt +2 -2
- package/web/__next._full.txt +3 -3
- package/web/__next._head.txt +1 -1
- package/web/__next._index.txt +2 -2
- package/web/__next._tree.txt +2 -2
- package/web/_next/static/chunks/73d2c788f1076e9a.css +2 -0
- package/web/_next/static/chunks/7d5ab4ba8d474929.js +52 -0
- package/web/_not-found/__next._full.txt +2 -2
- package/web/_not-found/__next._head.txt +1 -1
- package/web/_not-found/__next._index.txt +2 -2
- package/web/_not-found/{__next._not-found.__PAGE__.txt → __next._not-found/__PAGE__.txt} +1 -1
- package/web/_not-found/__next._not-found.txt +1 -1
- package/web/_not-found/__next._tree.txt +2 -2
- package/web/_not-found.html +1 -1
- package/web/_not-found.txt +2 -2
- package/web/index.html +1 -31
- package/web/index.txt +3 -3
- package/web/_next/static/chunks/5922011684321db3.css +0 -2
- package/web/_next/static/chunks/bb819ea11a2befeb.js +0 -49
- /package/web/_next/static/{b12iTuqpxIbm6TRQJOP5s → E7xzma4lFaip8CvAM7CW1}/_buildManifest.js +0 -0
- /package/web/_next/static/{b12iTuqpxIbm6TRQJOP5s → E7xzma4lFaip8CvAM7CW1}/_clientMiddlewareManifest.json +0 -0
- /package/web/_next/static/{b12iTuqpxIbm6TRQJOP5s → E7xzma4lFaip8CvAM7CW1}/_ssgManifest.js +0 -0
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
532507a
|
package/bin/vantaloom-agent
CHANGED
|
Binary file
|
package/bin/vantaloom-api
CHANGED
|
Binary file
|
package/bin/vantaloomctl
CHANGED
|
Binary file
|
package/cli/config.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
2
|
+
"sourceRoot": "D:\\Projects\\Vantaloom-ui",
|
|
3
|
+
"remote": "git@github-vantaloom:Timefiles404/Vantaloom-next.git",
|
|
3
4
|
"repo": "Timefiles404/Vantaloom-next",
|
|
4
5
|
"releaseTag": "runtime-latest",
|
|
5
|
-
"runtimePackage": "@vantaloom/runtime-
|
|
6
|
+
"runtimePackage": "@vantaloom/runtime-win32-x64",
|
|
6
7
|
"runtimeVersion": "latest",
|
|
7
8
|
"npmRegistry": "https://registry.npmjs.org"
|
|
8
9
|
}
|
package/cli/package.json
CHANGED
package/cli/src/cli.mjs
CHANGED
|
@@ -20,6 +20,9 @@ const installedConfigPath = path.join(cliRoot, "config.json")
|
|
|
20
20
|
const defaultReleaseTag = "runtime-latest"
|
|
21
21
|
const defaultRepo = "Timefiles404/Vantaloom-next"
|
|
22
22
|
const defaultNpmRegistry = "https://registry.npmjs.org"
|
|
23
|
+
const fallbackNpmRegistries = [
|
|
24
|
+
"https://registry.npmmirror.com",
|
|
25
|
+
]
|
|
23
26
|
|
|
24
27
|
export async function main(argv) {
|
|
25
28
|
const command = argv[0] ?? "help"
|
|
@@ -109,11 +112,13 @@ async function installFromPackage(options) {
|
|
|
109
112
|
|
|
110
113
|
async function packageRuntime(options) {
|
|
111
114
|
const sourceRoot = findSourceRoot(options.source)
|
|
115
|
+
const targetPlatform = options.target ?? platformId()
|
|
112
116
|
const packageRoot = safeDirectory(
|
|
113
|
-
options.output ?? path.join(sourceRoot, "artifacts", "packages", `vantaloom-${
|
|
117
|
+
options.output ?? path.join(sourceRoot, "artifacts", "packages", `vantaloom-${targetPlatform}`)
|
|
114
118
|
)
|
|
115
119
|
const { platform: builtPlatform, version } = await buildRuntimePackage(sourceRoot, packageRoot, {
|
|
116
120
|
buildWeb: options.buildWeb,
|
|
121
|
+
target: targetPlatform,
|
|
117
122
|
})
|
|
118
123
|
|
|
119
124
|
if (options.npmPackage) {
|
|
@@ -140,16 +145,22 @@ async function packageRuntime(options) {
|
|
|
140
145
|
|
|
141
146
|
async function buildRuntimePackage(sourceRoot, packageRoot, options) {
|
|
142
147
|
const version = gitVersion(sourceRoot)
|
|
143
|
-
const platform = platformId()
|
|
148
|
+
const platform = options.target ?? platformId()
|
|
144
149
|
const buildBin = path.join(packageRoot, "bin")
|
|
145
150
|
const buildWeb = path.join(packageRoot, "web")
|
|
146
151
|
|
|
147
152
|
removeKnownPath(packageRoot, path.dirname(packageRoot))
|
|
148
153
|
mkdirSync(buildBin, { recursive: true })
|
|
149
154
|
|
|
150
|
-
buildGo(sourceRoot, buildBin, "vantaloom-api")
|
|
151
|
-
buildGo(sourceRoot, buildBin, "vantaloom-agent")
|
|
152
|
-
buildGo(sourceRoot, buildBin, "vantaloomctl")
|
|
155
|
+
buildGo(sourceRoot, buildBin, "vantaloom-api", platform)
|
|
156
|
+
buildGo(sourceRoot, buildBin, "vantaloom-agent", platform)
|
|
157
|
+
buildGo(sourceRoot, buildBin, "vantaloomctl", platform)
|
|
158
|
+
// Tray app requires CGO (systray), only buildable natively on Windows.
|
|
159
|
+
if (platform.startsWith("win32") && process.platform === "win32") {
|
|
160
|
+
try {
|
|
161
|
+
buildGo(sourceRoot, buildBin, "vantaloom-tray", platform)
|
|
162
|
+
} catch { /* optional: skip if systray build fails */ }
|
|
163
|
+
}
|
|
153
164
|
|
|
154
165
|
if (options.buildWeb) {
|
|
155
166
|
runPnpm(["--filter", "vantaloom-app", "build"], { cwd: sourceRoot })
|
|
@@ -178,6 +189,10 @@ async function applyPackage(packageRoot, prefix, options) {
|
|
|
178
189
|
spawnSync(existingCtl, ["stop", "--prefix", prefix], { stdio: "inherit" })
|
|
179
190
|
}
|
|
180
191
|
|
|
192
|
+
// Kill lingering tray process that may hold locks on bin/ (older versions
|
|
193
|
+
// don't write tray.pid, so vantaloomctl stop won't find them).
|
|
194
|
+
killTrayProcess(prefix)
|
|
195
|
+
|
|
181
196
|
for (const name of ["bin", "web", "cli"]) {
|
|
182
197
|
removeKnownPath(path.join(prefix, name), prefix)
|
|
183
198
|
await cp(path.join(packageRoot, name), path.join(prefix, name), {
|
|
@@ -218,7 +233,8 @@ async function syncFromNpmRegistry(options, action) {
|
|
|
218
233
|
const installedConfig = readInstalledConfig(prefix)
|
|
219
234
|
const runtimePackage = options.runtimePackage || installedConfig.runtimePackage || runtimePackageName(platformId())
|
|
220
235
|
const runtimeVersion = options.runtimeVersion || installedConfig.runtimeVersion || "latest"
|
|
221
|
-
const
|
|
236
|
+
const explicitRegistry = options.npmRegistry || installedConfig.npmRegistry
|
|
237
|
+
const registry = normalizeRegistry(explicitRegistry || detectNpmRegistry() || defaultNpmRegistry)
|
|
222
238
|
const tempRoot = mkdtempSync(path.join(os.tmpdir(), "vantaloom-npm-"))
|
|
223
239
|
|
|
224
240
|
try {
|
|
@@ -226,7 +242,11 @@ async function syncFromNpmRegistry(options, action) {
|
|
|
226
242
|
const archive = path.join(tempRoot, `${packageBasename(runtimePackage)}-${runtimeVersion}.tgz`)
|
|
227
243
|
mkdirSync(extractRoot, { recursive: true })
|
|
228
244
|
|
|
229
|
-
const resolved = await
|
|
245
|
+
const resolved = await resolveNpmPackageWithFallback({
|
|
246
|
+
registries: explicitRegistry ? [registry] : [registry, ...fallbackNpmRegistries.map(normalizeRegistry)],
|
|
247
|
+
name: runtimePackage,
|
|
248
|
+
version: runtimeVersion,
|
|
249
|
+
})
|
|
230
250
|
await downloadNpmTarball({
|
|
231
251
|
tarballUrl: resolved.tarball,
|
|
232
252
|
target: archive,
|
|
@@ -240,13 +260,14 @@ async function syncFromNpmRegistry(options, action) {
|
|
|
240
260
|
noStart: options.noStart,
|
|
241
261
|
runtimePackage,
|
|
242
262
|
runtimeVersion: options.runtimeVersion ? resolved.version : "latest",
|
|
243
|
-
npmRegistry: registry,
|
|
263
|
+
npmRegistry: resolved.registry,
|
|
244
264
|
update: action === "update",
|
|
245
265
|
})
|
|
246
266
|
|
|
247
267
|
console.log(`${action === "update" ? "updated" : "installed"} Vantaloom: ${prefix}`)
|
|
248
268
|
console.log(`version: ${version}`)
|
|
249
269
|
console.log(`source: ${runtimePackage}@${resolved.version}`)
|
|
270
|
+
console.log(`registry: ${resolved.registry}`)
|
|
250
271
|
console.log(`run: ${displayCommand(prefix)} status`)
|
|
251
272
|
} finally {
|
|
252
273
|
removeKnownPath(tempRoot, os.tmpdir())
|
|
@@ -338,14 +359,95 @@ async function downloadReleaseAsset({ repo, releaseTag, assetName, target, token
|
|
|
338
359
|
await writeFile(target, buffer)
|
|
339
360
|
}
|
|
340
361
|
|
|
362
|
+
function detectNpmRegistry() {
|
|
363
|
+
// 1. NPM_CONFIG_REGISTRY env var (highest priority, set by npm/npx when running)
|
|
364
|
+
if (process.env.NPM_CONFIG_REGISTRY) {
|
|
365
|
+
return process.env.npm_config_registry || process.env.NPM_CONFIG_REGISTRY
|
|
366
|
+
}
|
|
367
|
+
// npm also sets the lowercase variant
|
|
368
|
+
if (process.env.npm_config_registry) {
|
|
369
|
+
return process.env.npm_config_registry
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
// 2. Read user .npmrc
|
|
373
|
+
try {
|
|
374
|
+
const npmrcPaths = [
|
|
375
|
+
path.join(os.homedir(), ".npmrc"),
|
|
376
|
+
]
|
|
377
|
+
// Also check project-level .npmrc
|
|
378
|
+
const localNpmrc = path.resolve(".npmrc")
|
|
379
|
+
if (localNpmrc !== npmrcPaths[0]) {
|
|
380
|
+
npmrcPaths.unshift(localNpmrc)
|
|
381
|
+
}
|
|
382
|
+
for (const npmrcPath of npmrcPaths) {
|
|
383
|
+
if (existsSync(npmrcPath)) {
|
|
384
|
+
const content = readFileSync(npmrcPath, "utf8")
|
|
385
|
+
const match = content.match(/^\s*registry\s*=\s*(.+)/m)
|
|
386
|
+
if (match) {
|
|
387
|
+
return match[1].trim()
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
} catch {
|
|
392
|
+
// Ignore .npmrc read errors
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
return ""
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
async function resolveNpmPackageWithFallback({ registries, name, version }) {
|
|
399
|
+
const errors = []
|
|
400
|
+
for (const registry of registries) {
|
|
401
|
+
try {
|
|
402
|
+
const result = await resolveNpmPackage({ registry, name, version })
|
|
403
|
+
return { ...result, registry }
|
|
404
|
+
} catch (error) {
|
|
405
|
+
const isNetworkError = error?.cause?.code === "ECONNREFUSED"
|
|
406
|
+
|| error?.cause?.code === "ENOTFOUND"
|
|
407
|
+
|| error?.cause?.code === "ETIMEDOUT"
|
|
408
|
+
|| error?.cause?.code === "ECONNRESET"
|
|
409
|
+
|| error?.cause?.code === "UND_ERR_CONNECT_TIMEOUT"
|
|
410
|
+
|| (error instanceof TypeError && error.message === "fetch failed")
|
|
411
|
+
errors.push({ registry, error, isNetworkError })
|
|
412
|
+
|
|
413
|
+
if (isNetworkError && registries.length > 1) {
|
|
414
|
+
console.error(`vantaloom: ${registry} unreachable, trying next registry...`)
|
|
415
|
+
continue
|
|
416
|
+
}
|
|
417
|
+
// Non-network error (404, parse error, etc.) — don't try fallbacks
|
|
418
|
+
throw error
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
// All registries failed with network errors
|
|
423
|
+
const tried = errors.map((e) => e.registry).join(", ")
|
|
424
|
+
throw new Error(
|
|
425
|
+
`all registries unreachable (tried: ${tried}). ` +
|
|
426
|
+
`Check your network or specify --npm-registry <url>`
|
|
427
|
+
)
|
|
428
|
+
}
|
|
429
|
+
|
|
341
430
|
async function resolveNpmPackage({ registry, name, version }) {
|
|
342
431
|
const metadataUrl = `${registry}/${encodeURIComponent(name).replace("%2F", "%2f")}`
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
432
|
+
let response
|
|
433
|
+
try {
|
|
434
|
+
response = await fetch(metadataUrl, {
|
|
435
|
+
headers: {
|
|
436
|
+
Accept: "application/vnd.npm.install-v1+json",
|
|
437
|
+
"User-Agent": "vantaloom-cli",
|
|
438
|
+
},
|
|
439
|
+
signal: AbortSignal.timeout(15000),
|
|
440
|
+
})
|
|
441
|
+
} catch (error) {
|
|
442
|
+
if (error instanceof TypeError && error.message === "fetch failed") {
|
|
443
|
+
const cause = error.cause ? ` (${error.cause.code || error.cause.message || error.cause})` : ""
|
|
444
|
+
throw Object.assign(
|
|
445
|
+
new Error(`cannot reach registry ${registry}${cause}`),
|
|
446
|
+
{ cause: error.cause }
|
|
447
|
+
)
|
|
448
|
+
}
|
|
449
|
+
throw error
|
|
450
|
+
}
|
|
349
451
|
if (!response.ok) {
|
|
350
452
|
const detail = await response.text().catch(() => "")
|
|
351
453
|
throw new Error(`failed to inspect npm package ${name}: HTTP ${response.status}${detail ? ` ${detail.slice(0, 200)}` : ""}`)
|
|
@@ -462,7 +564,7 @@ function runtimeConfigFromSource(sourceRoot) {
|
|
|
462
564
|
releaseTag: defaultReleaseTag,
|
|
463
565
|
runtimePackage: runtimePackageName(platformId()),
|
|
464
566
|
runtimeVersion: "latest",
|
|
465
|
-
npmRegistry: defaultNpmRegistry,
|
|
567
|
+
npmRegistry: detectNpmRegistry() || defaultNpmRegistry,
|
|
466
568
|
}
|
|
467
569
|
}
|
|
468
570
|
|
|
@@ -598,13 +700,20 @@ function printPaths(options) {
|
|
|
598
700
|
console.log(JSON.stringify({ sourceRoot, prefix }, null, 2))
|
|
599
701
|
}
|
|
600
702
|
|
|
601
|
-
function buildGo(sourceRoot, buildBin, name) {
|
|
703
|
+
function buildGo(sourceRoot, buildBin, name, targetPlatform) {
|
|
704
|
+
const goEnv = targetPlatform ? platformToGoEnv(targetPlatform) : {}
|
|
705
|
+
const isWindowsTarget = targetPlatform
|
|
706
|
+
? targetPlatform.startsWith("win32")
|
|
707
|
+
: process.platform === "win32"
|
|
708
|
+
const ext = isWindowsTarget ? ".exe" : ""
|
|
709
|
+
const ldflags = name === "vantaloom-tray" ? "-s -w -H windowsgui" : "-s -w"
|
|
602
710
|
run("go", [
|
|
603
711
|
"build",
|
|
712
|
+
"-ldflags", ldflags,
|
|
604
713
|
"-o",
|
|
605
|
-
path.join(buildBin,
|
|
714
|
+
path.join(buildBin, `${name}${ext}`),
|
|
606
715
|
`./apps/api/cmd/${name}`,
|
|
607
|
-
], { cwd: sourceRoot })
|
|
716
|
+
], { cwd: sourceRoot, env: { ...process.env, ...goEnv } })
|
|
608
717
|
}
|
|
609
718
|
|
|
610
719
|
async function copyDir(source, destination, options = {}) {
|
|
@@ -621,6 +730,10 @@ async function copyDir(source, destination, options = {}) {
|
|
|
621
730
|
}
|
|
622
731
|
|
|
623
732
|
function writeBuildManifest(buildRoot, version, platform) {
|
|
733
|
+
const components = ["api", "agent", "web", "ctl"]
|
|
734
|
+
if (platform.startsWith("win32")) {
|
|
735
|
+
components.push("tray")
|
|
736
|
+
}
|
|
624
737
|
writeFileSync(path.join(buildRoot, "VERSION"), `${version}\n`)
|
|
625
738
|
writeFileSync(
|
|
626
739
|
path.join(buildRoot, "manifest.json"),
|
|
@@ -630,7 +743,7 @@ function writeBuildManifest(buildRoot, version, platform) {
|
|
|
630
743
|
version,
|
|
631
744
|
platform,
|
|
632
745
|
updatedAt: new Date().toISOString(),
|
|
633
|
-
components
|
|
746
|
+
components,
|
|
634
747
|
},
|
|
635
748
|
null,
|
|
636
749
|
2
|
|
@@ -748,6 +861,12 @@ function parseOptions(args) {
|
|
|
748
861
|
case "npm-package":
|
|
749
862
|
options.npmPackage = true
|
|
750
863
|
break
|
|
864
|
+
case "target":
|
|
865
|
+
options.target = inlineValue ?? args[++index]
|
|
866
|
+
if (!options.target) {
|
|
867
|
+
throw new Error("missing value for --target")
|
|
868
|
+
}
|
|
869
|
+
break
|
|
751
870
|
case "local":
|
|
752
871
|
options.local = true
|
|
753
872
|
break
|
|
@@ -799,8 +918,22 @@ function runPnpm(args, options = {}) {
|
|
|
799
918
|
run("pnpm", args, options)
|
|
800
919
|
}
|
|
801
920
|
|
|
802
|
-
function binaryName(name) {
|
|
803
|
-
|
|
921
|
+
function binaryName(name, targetPlatform) {
|
|
922
|
+
const isWindows = targetPlatform
|
|
923
|
+
? targetPlatform.startsWith("win32")
|
|
924
|
+
: process.platform === "win32"
|
|
925
|
+
return isWindows ? `${name}.exe` : name
|
|
926
|
+
}
|
|
927
|
+
|
|
928
|
+
function platformToGoEnv(platform) {
|
|
929
|
+
const { os: runtimeOS, cpu } = parsePlatformId(platform)
|
|
930
|
+
const goosMap = { win32: "windows", linux: "linux", darwin: "darwin" }
|
|
931
|
+
const goarchMap = { x64: "amd64", arm64: "arm64" }
|
|
932
|
+
return {
|
|
933
|
+
GOOS: goosMap[runtimeOS] ?? runtimeOS,
|
|
934
|
+
GOARCH: goarchMap[cpu] ?? cpu,
|
|
935
|
+
CGO_ENABLED: "0",
|
|
936
|
+
}
|
|
804
937
|
}
|
|
805
938
|
|
|
806
939
|
function platformId() {
|
|
@@ -858,6 +991,38 @@ async function writeText(filePath, content) {
|
|
|
858
991
|
await writeFile(filePath, content)
|
|
859
992
|
}
|
|
860
993
|
|
|
994
|
+
function killTrayProcess(prefix) {
|
|
995
|
+
if (process.platform === "win32") {
|
|
996
|
+
// Try PID file first (new tray versions write runtime/tray.pid).
|
|
997
|
+
const pidFile = path.join(prefix, "runtime", "tray.pid")
|
|
998
|
+
if (existsSync(pidFile)) {
|
|
999
|
+
const pid = readFileSync(pidFile, "utf8").trim()
|
|
1000
|
+
if (pid) {
|
|
1001
|
+
spawnSync("taskkill", ["/PID", pid, "/F"], { stdio: "ignore" })
|
|
1002
|
+
try { rmSync(pidFile, { force: true }) } catch {}
|
|
1003
|
+
}
|
|
1004
|
+
}
|
|
1005
|
+
// Fallback: kill by image name if the binary is inside our prefix.
|
|
1006
|
+
const result = spawnSync("tasklist", ["/FI", "IMAGENAME eq vantaloom-tray.exe", "/FO", "CSV", "/NH"], {
|
|
1007
|
+
encoding: "utf8",
|
|
1008
|
+
windowsHide: true,
|
|
1009
|
+
})
|
|
1010
|
+
if (result.stdout) {
|
|
1011
|
+
for (const line of result.stdout.split("\n")) {
|
|
1012
|
+
const match = line.match(/"vantaloom-tray\.exe","(\d+)"/)
|
|
1013
|
+
if (match) {
|
|
1014
|
+
spawnSync("taskkill", ["/PID", match[1], "/F"], { stdio: "ignore" })
|
|
1015
|
+
}
|
|
1016
|
+
}
|
|
1017
|
+
}
|
|
1018
|
+
// Brief pause to let file handles release.
|
|
1019
|
+
spawnSync("timeout", ["/t", "1", "/nobreak"], { stdio: "ignore", windowsHide: true })
|
|
1020
|
+
} else {
|
|
1021
|
+
// Unix: pkill by name (best-effort).
|
|
1022
|
+
spawnSync("pkill", ["-f", "vantaloom-tray"], { stdio: "ignore" })
|
|
1023
|
+
}
|
|
1024
|
+
}
|
|
1025
|
+
|
|
861
1026
|
function printHelp() {
|
|
862
1027
|
console.log(`Vantaloom CLI
|
|
863
1028
|
|
|
@@ -866,7 +1031,7 @@ Usage:
|
|
|
866
1031
|
vantaloom install --local [--prefix <dir>] [--source <repo>] [--build-web] [--no-start]
|
|
867
1032
|
vantaloom update [--prefix <dir>] [--runtime-version <version>] [--npm-registry <url>] [--no-start]
|
|
868
1033
|
vantaloom update --local [--prefix <dir>] [--source <repo>] [--build-web] [--no-start]
|
|
869
|
-
vantaloom package [--source <repo>] [--output <dir>] [--build-web] [--archive] [--npm-package]
|
|
1034
|
+
vantaloom package [--source <repo>] [--output <dir>] [--build-web] [--archive] [--npm-package] [--target <platform>]
|
|
870
1035
|
vantaloom start [--prefix <dir>] [--component all|api|agent|web]
|
|
871
1036
|
vantaloom stop [--prefix <dir>] [--component all|api|agent|web]
|
|
872
1037
|
vantaloom restart [--prefix <dir>] [--component all|api|agent|web]
|
package/manifest.json
CHANGED
package/package.json
CHANGED
package/web/404.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><!--
|
|
1
|
+
<!DOCTYPE html><!--E7xzma4lFaip8CvAM7CW1--><html lang="zh-CN" class="font-sans antialiased" data-vtl-theme="default" data-vtl-density="default" data-vtl-motion="default"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/73d2c788f1076e9a.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/a678910d6e3629e7.js"/><script src="/_next/static/chunks/b9cfbaaba1fd82be.js" async=""></script><script src="/_next/static/chunks/757e2e1b77b5bacc.js" async=""></script><script src="/_next/static/chunks/turbopack-d8677f40582561e6.js" async=""></script><script src="/_next/static/chunks/eca64d281474b631.js" async=""></script><script src="/_next/static/chunks/7dfeab42587bcc0e.js" async=""></script><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><title>Vantaloom</title><meta name="description" content="Vantaloom local agent operations console."/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><script>((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}})("class","theme","system",null,["light","dark"],null,true,true)</script><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>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)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/a678910d6e3629e7.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[22332,[\"/_next/static/chunks/eca64d281474b631.js\",\"/_next/static/chunks/7dfeab42587bcc0e.js\"],\"ThemeProvider\"]\n3:I[45121,[\"/_next/static/chunks/eca64d281474b631.js\",\"/_next/static/chunks/7dfeab42587bcc0e.js\"],\"default\"]\n4:I[60512,[\"/_next/static/chunks/eca64d281474b631.js\",\"/_next/static/chunks/7dfeab42587bcc0e.js\"],\"default\"]\n5:I[35417,[\"/_next/static/chunks/eca64d281474b631.js\",\"/_next/static/chunks/7dfeab42587bcc0e.js\"],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n8:I[35417,[\"/_next/static/chunks/eca64d281474b631.js\",\"/_next/static/chunks/7dfeab42587bcc0e.js\"],\"ViewportBoundary\"]\na:I[35417,[\"/_next/static/chunks/eca64d281474b631.js\",\"/_next/static/chunks/7dfeab42587bcc0e.js\"],\"MetadataBoundary\"]\nc:I[50025,[\"/_next/static/chunks/eca64d281474b631.js\",\"/_next/static/chunks/7dfeab42587bcc0e.js\"],\"default\"]\n:HL[\"/_next/static/chunks/73d2c788f1076e9a.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"E7xzma4lFaip8CvAM7CW1\",\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/73d2c788f1076e9a.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/eca64d281474b631.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/7dfeab42587bcc0e.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"zh-CN\",\"suppressHydrationWarning\":true,\"className\":\"font-sans antialiased\",\"data-vtl-theme\":\"default\",\"data-vtl-density\":\"default\",\"data-vtl-motion\":\"default\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"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.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:style\",\"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\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"7:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"Vantaloom\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Vantaloom local agent operations console.\"}]]\n"])</script></body></html>
|
package/web/__next.__PAGE__.txt
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[66863,["/_next/static/chunks/7dfeab42587bcc0e.js"],"ClientPageRoot"]
|
|
3
|
-
3:I[66204,["/_next/static/chunks/eca64d281474b631.js","/_next/static/chunks/17e0384154325960.js","/_next/static/chunks/c990601c49cb69a5.js","/_next/static/chunks/
|
|
3
|
+
3:I[66204,["/_next/static/chunks/eca64d281474b631.js","/_next/static/chunks/17e0384154325960.js","/_next/static/chunks/c990601c49cb69a5.js","/_next/static/chunks/7d5ab4ba8d474929.js","/_next/static/chunks/742d3900ca49db0a.js"],"default"]
|
|
4
4
|
6:I[35417,["/_next/static/chunks/7dfeab42587bcc0e.js"],"OutletBoundary"]
|
|
5
5
|
7:"$Sreact.suspense"
|
|
6
|
-
0:{"buildId":"
|
|
6
|
+
0:{"buildId":"E7xzma4lFaip8CvAM7CW1","rsc":["$","$1","c",{"children":[["$","$L2",null,{"Component":"$3","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@4","$@5"]}}],[["$","script","script-0",{"src":"/_next/static/chunks/17e0384154325960.js","async":true}],["$","script","script-1",{"src":"/_next/static/chunks/c990601c49cb69a5.js","async":true}],["$","script","script-2",{"src":"/_next/static/chunks/7d5ab4ba8d474929.js","async":true}],["$","script","script-3",{"src":"/_next/static/chunks/742d3900ca49db0a.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"loading":null,"isPartial":false}
|
|
7
7
|
4:{}
|
|
8
8
|
5:"$0:rsc:props:children:0:props:serverProvidedParams:params"
|
|
9
9
|
8:null
|
package/web/__next._full.txt
CHANGED
|
@@ -3,14 +3,14 @@
|
|
|
3
3
|
3:I[45121,["/_next/static/chunks/7dfeab42587bcc0e.js"],"default"]
|
|
4
4
|
4:I[60512,["/_next/static/chunks/7dfeab42587bcc0e.js"],"default"]
|
|
5
5
|
5:I[66863,["/_next/static/chunks/7dfeab42587bcc0e.js"],"ClientPageRoot"]
|
|
6
|
-
6:I[66204,["/_next/static/chunks/eca64d281474b631.js","/_next/static/chunks/17e0384154325960.js","/_next/static/chunks/c990601c49cb69a5.js","/_next/static/chunks/
|
|
6
|
+
6:I[66204,["/_next/static/chunks/eca64d281474b631.js","/_next/static/chunks/17e0384154325960.js","/_next/static/chunks/c990601c49cb69a5.js","/_next/static/chunks/7d5ab4ba8d474929.js","/_next/static/chunks/742d3900ca49db0a.js"],"default"]
|
|
7
7
|
9:I[35417,["/_next/static/chunks/7dfeab42587bcc0e.js"],"OutletBoundary"]
|
|
8
8
|
a:"$Sreact.suspense"
|
|
9
9
|
c:I[35417,["/_next/static/chunks/7dfeab42587bcc0e.js"],"ViewportBoundary"]
|
|
10
10
|
e:I[35417,["/_next/static/chunks/7dfeab42587bcc0e.js"],"MetadataBoundary"]
|
|
11
11
|
10:I[50025,["/_next/static/chunks/7dfeab42587bcc0e.js"],"default"]
|
|
12
|
-
:HL["/_next/static/chunks/
|
|
13
|
-
0:{"P":null,"b":"
|
|
12
|
+
:HL["/_next/static/chunks/73d2c788f1076e9a.css","style"]
|
|
13
|
+
0:{"P":null,"b":"E7xzma4lFaip8CvAM7CW1","c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/73d2c788f1076e9a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/eca64d281474b631.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"zh-CN","suppressHydrationWarning":true,"className":"font-sans antialiased","data-vtl-theme":"default","data-vtl-density":"default","data-vtl-motion":"default","children":["$","body",null,{"children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","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."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}],{"children":[["$","$1","c",{"children":[["$","$L5",null,{"Component":"$6","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@7","$@8"]}}],[["$","script","script-0",{"src":"/_next/static/chunks/17e0384154325960.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/c990601c49cb69a5.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/7d5ab4ba8d474929.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/_next/static/chunks/742d3900ca49db0a.js","async":true,"nonce":"$undefined"}]],["$","$L9",null,{"children":["$","$a",null,{"name":"Next.MetadataOutlet","children":"$@b"}]}]]}],{},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$Lc",null,{"children":"$Ld"}],["$","div",null,{"hidden":true,"children":["$","$Le",null,{"children":["$","$a",null,{"name":"Next.Metadata","children":"$Lf"}]}]}],null]}],false]],"m":"$undefined","G":["$10",[]],"S":true}
|
|
14
14
|
7:{}
|
|
15
15
|
8:"$0:f:0:1:1:children:0:props:children:0:props:serverProvidedParams:params"
|
|
16
16
|
d:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
package/web/__next._head.txt
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
2:I[35417,["/_next/static/chunks/7dfeab42587bcc0e.js"],"ViewportBoundary"]
|
|
3
3
|
3:I[35417,["/_next/static/chunks/7dfeab42587bcc0e.js"],"MetadataBoundary"]
|
|
4
4
|
4:"$Sreact.suspense"
|
|
5
|
-
0:{"buildId":"
|
|
5
|
+
0:{"buildId":"E7xzma4lFaip8CvAM7CW1","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":[["$","title","0",{"children":"Vantaloom"}],["$","meta","1",{"name":"description","content":"Vantaloom local agent operations console."}]]}]}]}],null]}],"loading":null,"isPartial":false}
|
package/web/__next._index.txt
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
2:I[22332,["/_next/static/chunks/eca64d281474b631.js"],"ThemeProvider"]
|
|
3
3
|
3:I[45121,["/_next/static/chunks/7dfeab42587bcc0e.js"],"default"]
|
|
4
4
|
4:I[60512,["/_next/static/chunks/7dfeab42587bcc0e.js"],"default"]
|
|
5
|
-
:HL["/_next/static/chunks/
|
|
6
|
-
0:{"buildId":"
|
|
5
|
+
:HL["/_next/static/chunks/73d2c788f1076e9a.css","style"]
|
|
6
|
+
0:{"buildId":"E7xzma4lFaip8CvAM7CW1","rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/73d2c788f1076e9a.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/eca64d281474b631.js","async":true}]],["$","html",null,{"lang":"zh-CN","suppressHydrationWarning":true,"className":"font-sans antialiased","data-vtl-theme":"default","data-vtl-density":"default","data-vtl-motion":"default","children":["$","body",null,{"children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","template":["$","$L4",null,{}],"notFound":[[["$","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."}]}]]}]}]],[]]}]}]}]}]]}],"loading":null,"isPartial":false}
|
package/web/__next._tree.txt
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
:HL["/_next/static/chunks/
|
|
2
|
-
0:{"buildId":"
|
|
1
|
+
:HL["/_next/static/chunks/73d2c788f1076e9a.css","style"]
|
|
2
|
+
0:{"buildId":"E7xzma4lFaip8CvAM7CW1","tree":{"name":"","paramType":null,"paramKey":"","hasRuntimePrefetch":false,"slots":{"children":{"name":"__PAGE__","paramType":null,"paramKey":"__PAGE__","hasRuntimePrefetch":false,"slots":null,"isRootLayout":false}},"isRootLayout":true},"staleTime":300}
|