denchclaw 2.0.8 → 2.0.11
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/apps/web/.next/standalone/apps/web/.next/BUILD_ID +1 -1
- package/apps/web/.next/standalone/apps/web/.next/app-build-manifest.json +73 -73
- package/apps/web/.next/standalone/apps/web/.next/app-path-routes-manifest.json +17 -17
- package/apps/web/.next/standalone/apps/web/.next/build-manifest.json +2 -2
- package/apps/web/.next/standalone/apps/web/.next/prerender-manifest.json +6 -6
- package/apps/web/.next/standalone/apps/web/.next/react-loadable-manifest.json +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/_not-found/page.js +2 -2
- package/apps/web/.next/standalone/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/_not-found.html +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/_not-found.rsc +3 -3
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/active/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/route.js +2 -2
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/stop/route.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/stop/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/stream/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/subagents/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/cron/jobs/[jobId]/runs/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/cron/jobs/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/cron/runs/[sessionId]/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/cron/runs/search-transcript/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/feedback/route.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/feedback/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/memories/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/profiles/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/profiles/switch/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/sessions/[sessionId]/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/web-sessions/[id]/messages/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/web-sessions/[id]/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/web-sessions/route.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/web-sessions/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/assets/[...path]/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/browse/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/browse-file/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/context/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/copy/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/db/introspect/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/db/query/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/delete/route.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/delete/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/file/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/init/route.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/init/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/list/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/mkdir/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/move/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/display-field/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/[id]/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/bulk-delete/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/options/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/route.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/fields/[fieldId]/enum-rename/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/fields/[fieldId]/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/fields/reorder/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/views/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/open-file/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/path-info/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/query/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/raw-file/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/rename/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/reports/execute/route.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/reports/execute/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/search-index/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/suggest-files/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/switch/route.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/switch/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/thumbnail/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/tree/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/upload/route.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/upload/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/virtual-file/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/watch/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/write-binary/route_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/index.html +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/index.rsc +4 -4
- package/apps/web/.next/standalone/apps/web/.next/server/app/page.js +236 -33
- package/apps/web/.next/standalone/apps/web/.next/server/app/page.js.nft.json +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/workspace/page.js +2 -241
- package/apps/web/.next/standalone/apps/web/.next/server/app/workspace/page.js.nft.json +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/workspace/page_client-reference-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/workspace.html +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/app/workspace.rsc +4 -4
- package/apps/web/.next/standalone/apps/web/.next/server/app-paths-manifest.json +17 -17
- package/apps/web/.next/standalone/apps/web/.next/server/chunks/785.js +1 -0
- package/apps/web/.next/standalone/apps/web/.next/server/functions-config-manifest.json +20 -20
- package/apps/web/.next/standalone/apps/web/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/pages/404.html +1 -1
- package/apps/web/.next/standalone/apps/web/.next/server/pages/500.html +1 -1
- package/apps/web/.next/{static/chunks/app/layout-4d0405acdb5ee8e5.js → standalone/apps/web/.next/static/chunks/app/layout-3421a7e89d2df0cf.js} +1 -1
- package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/page-c453e5a626dd5b93.js +1 -0
- package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/workspace/page-af2f54a846963ed0.js +1 -0
- package/apps/web/.next/standalone/apps/web/.next/static/css/1699045bdf479528.css +1 -0
- package/apps/web/.next/standalone/package.json +3 -2
- package/apps/web/.next/{standalone/apps/web/.next/static/chunks/app/layout-4d0405acdb5ee8e5.js → static/chunks/app/layout-3421a7e89d2df0cf.js} +1 -1
- package/apps/web/.next/static/chunks/app/page-c453e5a626dd5b93.js +1 -0
- package/apps/web/.next/static/chunks/app/workspace/page-af2f54a846963ed0.js +1 -0
- package/apps/web/.next/static/css/1699045bdf479528.css +1 -0
- package/dist/entry.js +1 -1
- package/dist/{program-BYwTE_Ot.js → program-DRoUqrZT.js} +113 -4
- package/dist/{run-main-CWe8UBRN.js → run-main-Boc4sBBw.js} +1 -1
- package/dist/{telemetry-CwRnbZ2F.js → telemetry-DgtS6PHg.js} +32 -14
- package/extensions/posthog-analytics/index.ts +16 -3
- package/extensions/posthog-analytics/lib/build-env.js +1 -0
- package/extensions/posthog-analytics/lib/build-env.ts +1 -0
- package/extensions/posthog-analytics/lib/event-mappers.ts +8 -16
- package/extensions/posthog-analytics/lib/posthog-client.ts +20 -1
- package/extensions/posthog-analytics/lib/privacy.ts +44 -6
- package/package.json +3 -2
- package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/page-b213929ad6255c65.js +0 -1
- package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/workspace/page-ad24ce15d77e044d.js +0 -1
- package/apps/web/.next/standalone/apps/web/.next/static/css/82d300cbeda03b69.css +0 -1
- package/apps/web/.next/static/chunks/app/page-b213929ad6255c65.js +0 -1
- package/apps/web/.next/static/chunks/app/workspace/page-ad24ce15d77e044d.js +0 -1
- package/apps/web/.next/static/css/82d300cbeda03b69.css +0 -1
- /package/apps/web/.next/standalone/apps/web/.next/static/{_8L73FbiTvTDeQfyyo9Kx → 1EQe45C2-Vh16JC8qyxb7}/_buildManifest.js +0 -0
- /package/apps/web/.next/standalone/apps/web/.next/static/{_8L73FbiTvTDeQfyyo9Kx → 1EQe45C2-Vh16JC8qyxb7}/_ssgManifest.js +0 -0
- /package/apps/web/.next/static/{_8L73FbiTvTDeQfyyo9Kx → 1EQe45C2-Vh16JC8qyxb7}/_buildManifest.js +0 -0
- /package/apps/web/.next/static/{_8L73FbiTvTDeQfyyo9Kx → 1EQe45C2-Vh16JC8qyxb7}/_ssgManifest.js +0 -0
|
@@ -1,21 +1,26 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { existsSync, readFileSync, writeFileSync, mkdirSync } from "node:fs";
|
|
3
|
+
import { join, dirname } from "node:path";
|
|
3
4
|
|
|
4
5
|
const SECRETS_PATTERN =
|
|
5
6
|
/(?:sk-[a-zA-Z0-9]{20,}|ghp_[a-zA-Z0-9]{36}|xoxb-[a-zA-Z0-9-]+|AKIA[A-Z0-9]{16}|eyJ[a-zA-Z0-9_-]{10,}\.[a-zA-Z0-9_-]{10,})/g;
|
|
6
7
|
|
|
7
8
|
const REDACTED = "[REDACTED]";
|
|
8
9
|
|
|
10
|
+
function resolveConfigPath(openclawConfig?: any): string {
|
|
11
|
+
const stateDir =
|
|
12
|
+
openclawConfig?.stateDir ??
|
|
13
|
+
join(process.env.HOME || "~", ".openclaw-dench");
|
|
14
|
+
return join(stateDir, "telemetry.json");
|
|
15
|
+
}
|
|
16
|
+
|
|
9
17
|
/**
|
|
10
18
|
* Read privacy mode from DenchClaw's telemetry config.
|
|
11
19
|
* Default is true (privacy on) when the file is missing or unreadable.
|
|
12
20
|
*/
|
|
13
21
|
export function readPrivacyMode(openclawConfig?: any): boolean {
|
|
14
22
|
try {
|
|
15
|
-
const
|
|
16
|
-
openclawConfig?.stateDir ??
|
|
17
|
-
join(process.env.HOME || "~", ".openclaw-dench");
|
|
18
|
-
const configPath = join(stateDir, "telemetry.json");
|
|
23
|
+
const configPath = resolveConfigPath(openclawConfig);
|
|
19
24
|
if (!existsSync(configPath)) return true;
|
|
20
25
|
const raw = JSON.parse(readFileSync(configPath, "utf-8"));
|
|
21
26
|
return raw.privacyMode !== false;
|
|
@@ -24,6 +29,39 @@ export function readPrivacyMode(openclawConfig?: any): boolean {
|
|
|
24
29
|
}
|
|
25
30
|
}
|
|
26
31
|
|
|
32
|
+
let _cachedAnonymousId: string | null = null;
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Read the persisted install-scoped anonymous ID from telemetry.json,
|
|
36
|
+
* generating and writing one if absent.
|
|
37
|
+
*/
|
|
38
|
+
export function readOrCreateAnonymousId(openclawConfig?: any): string {
|
|
39
|
+
if (_cachedAnonymousId) return _cachedAnonymousId;
|
|
40
|
+
|
|
41
|
+
try {
|
|
42
|
+
const configPath = resolveConfigPath(openclawConfig);
|
|
43
|
+
|
|
44
|
+
let raw: Record<string, unknown> = {};
|
|
45
|
+
if (existsSync(configPath)) {
|
|
46
|
+
raw = JSON.parse(readFileSync(configPath, "utf-8"));
|
|
47
|
+
}
|
|
48
|
+
if (typeof raw.anonymousId === "string" && raw.anonymousId) {
|
|
49
|
+
_cachedAnonymousId = raw.anonymousId;
|
|
50
|
+
return raw.anonymousId;
|
|
51
|
+
}
|
|
52
|
+
const id = randomUUID();
|
|
53
|
+
raw.anonymousId = id;
|
|
54
|
+
mkdirSync(dirname(configPath), { recursive: true });
|
|
55
|
+
writeFileSync(configPath, JSON.stringify(raw, null, 2) + "\n", "utf-8");
|
|
56
|
+
_cachedAnonymousId = id;
|
|
57
|
+
return id;
|
|
58
|
+
} catch {
|
|
59
|
+
const id = randomUUID();
|
|
60
|
+
_cachedAnonymousId = id;
|
|
61
|
+
return id;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
27
65
|
/** Strip known credential patterns from any string value. */
|
|
28
66
|
export function stripSecrets(value: unknown): unknown {
|
|
29
67
|
if (typeof value === "string") {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "denchclaw",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.11",
|
|
4
4
|
"description": "Fully Managed OpenClaw Framework for managing your CRM, Sales Automation and Outreach agents. The only local productivity tool you need.",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"homepage": "https://github.com/DenchHQ/DenchClaw#readme",
|
|
@@ -37,13 +37,14 @@
|
|
|
37
37
|
},
|
|
38
38
|
"scripts": {
|
|
39
39
|
"build": "tsdown",
|
|
40
|
+
"build:plugin-env": "node scripts/build-plugin-env.mjs",
|
|
40
41
|
"check": "pnpm format:check && pnpm lint",
|
|
41
42
|
"denchclaw": "node denchclaw.mjs",
|
|
42
43
|
"dev": "node denchclaw.mjs",
|
|
43
44
|
"format": "oxfmt --write",
|
|
44
45
|
"format:check": "oxfmt --check",
|
|
45
46
|
"lint": "oxlint --type-aware",
|
|
46
|
-
"prepack": "pnpm build && pnpm web:build && pnpm web:prepack",
|
|
47
|
+
"prepack": "pnpm build:plugin-env && pnpm build && pnpm web:build && pnpm web:prepack",
|
|
47
48
|
"start": "node denchclaw.mjs",
|
|
48
49
|
"test": "pnpm test:cli && pnpm --dir apps/web test",
|
|
49
50
|
"test:cli": "vitest run --config vitest.unit.config.ts src/cli/run-main.test.ts src/cli/bootstrap-external.test.ts src/cli/bootstrap-external.bootstrap-command.test.ts src/cli/workspace-seed.test.ts src/cli/web-runtime.test.ts src/cli/web-runtime-command.test.ts src/cli/flatten-standalone-deps.test.ts",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8974],{5269:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{DecodeError:function(){return h},MiddlewareNotFoundError:function(){return b},MissingStaticPage:function(){return g},NormalizeError:function(){return m},PageNotFoundError:function(){return y},SP:function(){return d},ST:function(){return p},WEB_VITALS:function(){return n},execOnce:function(){return r},getDisplayName:function(){return l},getLocationOrigin:function(){return u},getURL:function(){return a},isAbsoluteUrl:function(){return i},isResSent:function(){return s},loadGetInitialProps:function(){return f},normalizeRepeatedSlashes:function(){return c},stringifyError:function(){return v}});let n=["CLS","FCP","FID","INP","LCP","TTFB"];function r(e){let t,n=!1;return function(){for(var r=arguments.length,o=Array(r),i=0;i<r;i++)o[i]=arguments[i];return n||(n=!0,t=e(...o)),t}}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>o.test(e);function u(){let{protocol:e,hostname:t,port:n}=window.location;return e+"//"+t+(n?":"+n:"")}function a(){let{href:e}=window.location,t=u();return e.substring(t.length)}function l(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function s(e){return e.finished||e.headersSent}function c(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?"?"+t.slice(1).join("?"):"")}async function f(e,t){let n=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await f(t.Component,t.ctx)}:{};let r=await e.getInitialProps(t);if(n&&s(n))return r;if(!r)throw Object.defineProperty(Error('"'+l(e)+'.getInitialProps()" should resolve to an object. But found "'+r+'" instead.'),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return r}let d="undefined"!=typeof performance,p=d&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class h extends Error{}class m extends Error{}class y extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message="Cannot find module for page: "+e}}class g extends Error{constructor(e,t){super(),this.message="Failed to load static file for page: "+e+" "+t}}class b extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function v(e){return JSON.stringify({message:e.message,stack:e.stack})}},28968:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{default:function(){return y},useLinkStatus:function(){return b}});let r=n(48520),o=n(80534),i=r._(n(74166)),u=n(71135),a=n(95633),l=n(46424),s=n(5269),c=n(59891);n(92920);let f=n(85352),d=n(69522),p=n(97784);n(41326);let h=n(11339);function m(e){return"string"==typeof e?e:(0,u.formatUrl)(e)}function y(e){var t;let n,r,u,[y,b]=(0,i.useOptimistic)(f.IDLE_LINK_STATUS),v=(0,i.useRef)(null),{href:x,as:P,children:j,prefetch:_=null,passHref:E,replace:N,shallow:O,scroll:C,onClick:S,onMouseEnter:k,onTouchStart:w,legacyBehavior:M=!1,onNavigate:T,ref:A,unstable_dynamicOnHover:F,...R}=e;n=j,M&&("string"==typeof n||"number"==typeof n)&&(n=(0,o.jsx)("a",{children:n}));let L=i.default.useContext(a.AppRouterContext),I=!1!==_,U=!1!==_?null===(t=_)||"auto"===t?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,{href:D,as:z}=i.default.useMemo(()=>{let e=m(x);return{href:e,as:P?m(P):e}},[x,P]);M&&(r=i.default.Children.only(n));let K=M?r&&"object"==typeof r&&r.ref:A,B=i.default.useCallback(e=>(null!==L&&(v.current=(0,f.mountLinkInstance)(e,D,L,U,I,b)),()=>{v.current&&((0,f.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,f.unmountPrefetchableInstance)(e)}),[I,D,L,U,b]),W={ref:(0,l.useMergedRef)(B,K),onClick(e){M||"function"!=typeof S||S(e),M&&r.props&&"function"==typeof r.props.onClick&&r.props.onClick(e),L&&(e.defaultPrevented||function(e,t,n,r,o,u,a){let{nodeName:l}=e.currentTarget;if(!("A"===l.toUpperCase()&&function(e){let t=e.currentTarget.getAttribute("target");return t&&"_self"!==t||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.nativeEvent&&2===e.nativeEvent.which}(e)||e.currentTarget.hasAttribute("download"))){if(!(0,d.isLocalURL)(t)){o&&(e.preventDefault(),location.replace(t));return}if(e.preventDefault(),a){let e=!1;if(a({preventDefault:()=>{e=!0}}),e)return}i.default.startTransition(()=>{(0,p.dispatchNavigateAction)(n||t,o?"replace":"push",null==u||u,r.current)})}}(e,D,z,v,N,C,T))},onMouseEnter(e){M||"function"!=typeof k||k(e),M&&r.props&&"function"==typeof r.props.onMouseEnter&&r.props.onMouseEnter(e),L&&I&&(0,f.onNavigationIntent)(e.currentTarget,!0===F)},onTouchStart:function(e){M||"function"!=typeof w||w(e),M&&r.props&&"function"==typeof r.props.onTouchStart&&r.props.onTouchStart(e),L&&I&&(0,f.onNavigationIntent)(e.currentTarget,!0===F)}};return(0,s.isAbsoluteUrl)(z)?W.href=z:M&&!E&&("a"!==r.type||"href"in r.props)||(W.href=(0,c.addBasePath)(z)),u=M?i.default.cloneElement(r,W):(0,o.jsx)("a",{...R,...W,children:n}),(0,o.jsx)(g.Provider,{value:y,children:u})}let g=(0,i.createContext)(f.IDLE_LINK_STATUS),b=()=>(0,i.useContext)(g);("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},41326:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},46424:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"useMergedRef",{enumerable:!0,get:function(){return o}});let r=n(74166);function o(e,t){let n=(0,r.useRef)(null),o=(0,r.useRef)(null);return(0,r.useCallback)(r=>{if(null===r){let e=n.current;e&&(n.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(n.current=i(e,r)),t&&(o.current=i(t,r))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let n=e(t);return"function"==typeof n?n:()=>e(null)}}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},48121:(e,t,n)=>{Promise.resolve().then(n.bind(n,81710))},69522:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isLocalURL",{enumerable:!0,get:function(){return i}});let r=n(5269),o=n(2980);function i(e){if(!(0,r.isAbsoluteUrl)(e))return!0;try{let t=(0,r.getLocationOrigin)(),n=new URL(e,t);return n.origin===t&&(0,o.hasBasePath)(n.pathname)}catch(e){return!1}}},71135:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{formatUrl:function(){return i},formatWithValidation:function(){return a},urlObjectKeys:function(){return u}});let r=n(48520)._(n(73661)),o=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:n}=e,i=e.protocol||"",u=e.pathname||"",a=e.hash||"",l=e.query||"",s=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?s=t+e.host:n&&(s=t+(~n.indexOf(":")?"["+n+"]":n),e.port&&(s+=":"+e.port)),l&&"object"==typeof l&&(l=String(r.urlQueryToSearchParams(l)));let c=e.search||l&&"?"+l||"";return i&&!i.endsWith(":")&&(i+=":"),e.slashes||(!i||o.test(i))&&!1!==s?(s="//"+(s||""),u&&"/"!==u[0]&&(u="/"+u)):s||(s=""),a&&"#"!==a[0]&&(a="#"+a),c&&"?"!==c[0]&&(c="?"+c),""+i+s+(u=u.replace(/[?#]/g,encodeURIComponent))+(c=c.replace("#","%23"))+a}let u=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function a(e){return i(e)}},73661:(e,t)=>{"use strict";function n(e){let t={};for(let[n,r]of e.entries()){let e=t[n];void 0===e?t[n]=r:Array.isArray(e)?e.push(r):t[n]=[e,r]}return t}function r(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function o(e){let t=new URLSearchParams;for(let[n,o]of Object.entries(e))if(Array.isArray(o))for(let e of o)t.append(n,r(e));else t.set(n,r(o));return t}function i(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];for(let t of n){for(let n of t.keys())e.delete(n);for(let[n,r]of t.entries())e.append(n,r)}return e}Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{assign:function(){return i},searchParamsToUrlQuery:function(){return n},urlQueryToSearchParams:function(){return o}})},81710:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>l});var r=n(80534),o=n(28968),i=n.n(o);let u=[" ░░░░"," ░░░░░░"," ░░░░ ░░░░░░░"," ░░░░░░ ░░░░ ░░░▓▓░░░"," ░░░░ ░░░░░░░ ░░░░░░ ░░▓▓▓▓░░░"," ░░░░░░ ░░░▓▓░░░ ░░░░ ░░░░░░░ ░░▓▓▓▓▓░░ "," ░░░░░░░ ░░▓▓▓▓░░░ ░░░░░░ ░░░▓▓░░░ ░░▓▓▓▓▓░░ "," ░░░▓▓░░░ ░░▓▓▓▓▓░░ ░░░░░░░ ░░▓▓▓▓░░░ ░▓▓▓▓▓▓░░ "," ░░▓▓▓▓░░░ ░░▓▓▓▓▓░░ ░░░▓▓░░░ ░░▓▓▓▓▓░░ ░▓▓▓▓▓▓░░ "," ░░▓▓▓▓▓░░ ░▓▓▓▓▓▓░░ ░░▓▓▓▓░░░ ░░▓▓▓▓▓░░ ▓▓▓▓▓▓░░ "," ░░▓▓▓▓▓░░ ░▓▓▓▓▓▓░░ ░░▓▓▓▓▓░░ ░▓▓▓▓▓▓░░ ▓▓▓▓▓▓░░ "," ░░▓▓▓▓▓░░ ▓▓▓▓▓▓░░ ░░▓▓▓▓▓░░ ░▓▓▓▓▓░░ ▓▓▓▓▓░░░ "," ░▓▓▓▓▓▓░░ ▓▓▓▓▓▓░░ ░░▓▓▓▓▓░░ ▓▓▓▓▓▓░░ ▓▓▓▓▓░░ "," ░▓▓▓▓▓▓░░ ▓▓▓▓▓░░░ ░▓▓▓▓▓▓░░ ▓▓▓▓▓▓░░ ▓▓▓▓▓░░ "," ░▓▓▓▓▓▓░░ ▓▓▓▓▓░░ ░▓▓▓▓▓▓░░ ▓▓▓▓▓░░░ ▓▓▓▓▓░░ "," ░▓▓▓▓▓░░░ ▓▓▓▓▓░░ ░▓▓▓▓▓▓░░ ▓▓▓▓▓░░ ▓▓▓▓▓░░ "," ░▓▓▓▓▓░░ ▓▓▓▓░░░ ░▓▓▓▓▓░░░ ▓▓▓▓▓░░ ▓▓▓▓░░░ "," ░▓▓▓▓▓░░ ▓▓▓▓░░ ░░▓▓▓▓▓░░ ▓▓▓▓░░░ ▓▓▓▓░░ "," ░▓▓▓▓░░░ ▓▓▓▓░░ ░░▓▓▓▓▓░░ ▓▓▓▓░░ ▓▓▓▓░░ "," ░▓▓▓▓░░ ▓▓▓░░░ ░▓▓▓▓▓░░░ ▓▓▓▓░░ ▓▓▓░░░ "," ░▓▓▓▓░░ ▓▓▓░░ ░░▓▓▓▓░░ ▓▓▓░░░ ▓▓▓░░ "," ░▓▓▓░░░ ▓▓░░░ ░▓▓▓▓░░░ ▓▓▓░░ ▓▓▓░░ "," ░▓▓▓░░ ▓▓░░ ░░▓▓▓░░ ▓▓░░░ ▓▓░░░ "," ░▓▓░░░ ░▓░░ ░░▓▓▓░░ ▓▓░░ ▓▓░░ "," ░▓▓░░ ░▓░░ ░▓▓▓░░░ ░▓░░░ ░▓░░ "," ░▓░░░ ░░░ ░▓▓░░ ░▓░░ ░▓░░ "," ░▓░░ ░░ ░░▓░░░ ░░░░ ░░░░ "," ░░░░ ░ ░░▓░░ ░░░ ░░░ "," ░░░ ░░░░░ ░░ ░░ "," ░░ ░░░ ░ "," ░ ░░ "],a=[" ██╗██████╗ ██████╗ ███╗ ██╗ ██████╗██╗ █████╗ ██╗ ██╗"," ██║██╔══██╗██╔═══██╗████╗ ██║██╔════╝██║ ██╔══██╗██║ ██║"," ██║██████╔╝██║ ██║██╔██╗ ██║██║ ██║ ███████║██║ █╗ ██║"," ██║██╔══██╗██║ ██║██║╚██╗██║██║ ██║ ██╔══██║██║███╗██║"," ██║██║ ██║╚██████╔╝██║ ╚████║╚██████╗███████╗██║ ██║╚███╔███╔╝"," ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝ ╚═════╝╚══════╝╚═╝ ╚═╝ ╚══╝╚══╝ "];function l(){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("style",{children:'\n @keyframes iron-shimmer {\n 0% {\n background-position: -200% center;\n }\n 100% {\n background-position: 200% center;\n }\n }\n\n .ascii-banner {\n font-family: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono",\n "Courier New", monospace;\n white-space: pre;\n line-height: 1.15;\n font-size: clamp(0.5rem, 1.8vw, 1.4rem);\n background: linear-gradient(\n 90deg,\n #374151 0%,\n #4b5563 10%,\n #6b7280 20%,\n #9ca3af 30%,\n #d1d5db 40%,\n #f3f4f6 50%,\n #d1d5db 60%,\n #9ca3af 70%,\n #6b7280 80%,\n #4b5563 90%,\n #374151 100%\n );\n background-size: 200% 100%;\n background-clip: text;\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n animation: iron-shimmer 2.5s ease-in-out infinite;\n }\n '}),(0,r.jsxs)("div",{className:"relative flex flex-col items-center justify-center min-h-screen bg-stone-50 overflow-hidden px-4",children:[(0,r.jsx)("div",{className:"absolute inset-0 hidden md:flex items-center justify-center select-none pointer-events-none text-stone-200/40",style:{fontFamily:'"SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", "Courier New", monospace',whiteSpace:"pre",lineHeight:1,fontSize:"clamp(0.75rem, 1.6vw, 1.5rem)"},children:u.join("\n")}),(0,r.jsxs)("div",{className:"relative z-10 flex flex-col items-center",children:[(0,r.jsx)("div",{className:"ascii-banner select-none hidden sm:block","aria-label":"DENCHCLAW",children:a.join("\n")}),(0,r.jsx)("h1",{className:"sm:hidden text-3xl font-bold text-stone-600",style:{fontFamily:"monospace"},children:"DENCHCLAW"}),(0,r.jsx)(i(),{href:"/workspace",className:"mt-10 text-lg text-stone-400 hover:text-stone-600 transition-all min-h-[44px] flex items-center",style:{fontFamily:"monospace"},children:"enter the app →"})]})]})]})}}},e=>{e.O(0,[1705,8522,7358],()=>e(e.s=48121)),_N_E=e.O()}]);
|