@alexjbarnes/cockpit 0.3.1 → 0.4.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/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +10 -2
- package/.next/build-manifest.json +4 -4
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +21 -45
- package/.next/react-loadable-manifest.json +279 -267
- package/.next/routes-manifest.json +68 -12
- package/.next/server/app/(app)/agents/[name]/page.js +3 -3
- package/.next/server/app/(app)/agents/[name]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/agents/[name]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/agents/page.js +2 -2
- package/.next/server/app/(app)/agents/page.js.nft.json +1 -1
- package/.next/server/app/(app)/agents/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/claude-md/edit/page.js +2 -2
- package/.next/server/app/(app)/claude-md/edit/page.js.nft.json +1 -1
- package/.next/server/app/(app)/claude-md/edit/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/claude-md/page.js +2 -2
- package/.next/server/app/(app)/claude-md/page.js.nft.json +1 -1
- package/.next/server/app/(app)/claude-md/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/commands/[name]/page.js +3 -3
- package/.next/server/app/(app)/commands/[name]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/commands/[name]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/commands/page.js +2 -2
- package/.next/server/app/(app)/commands/page.js.nft.json +1 -1
- package/.next/server/app/(app)/commands/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/hooks/[event]/page.js +3 -3
- package/.next/server/app/(app)/hooks/[event]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/hooks/[event]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/hooks/page.js +2 -2
- package/.next/server/app/(app)/hooks/page.js.nft.json +1 -1
- package/.next/server/app/(app)/hooks/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/inbox/[id]/page.js +2 -2
- package/.next/server/app/(app)/inbox/[id]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/inbox/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/inbox/page.js +2 -2
- package/.next/server/app/(app)/inbox/page.js.nft.json +1 -1
- package/.next/server/app/(app)/inbox/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/jobs/[id]/edit/page.js +2 -2
- package/.next/server/app/(app)/jobs/[id]/edit/page.js.nft.json +1 -1
- package/.next/server/app/(app)/jobs/[id]/edit/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/jobs/[id]/page.js +2 -2
- package/.next/server/app/(app)/jobs/[id]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/jobs/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/jobs/[id]/runs/[runId]/page.js +2 -2
- package/.next/server/app/(app)/jobs/[id]/runs/[runId]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/jobs/[id]/runs/[runId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/jobs/page.js +2 -2
- package/.next/server/app/(app)/jobs/page.js.nft.json +1 -1
- package/.next/server/app/(app)/jobs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/mcp-servers/[name]/page.js +2 -2
- package/.next/server/app/(app)/mcp-servers/[name]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/mcp-servers/[name]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/mcp-servers/page.js +2 -2
- package/.next/server/app/(app)/mcp-servers/page.js.nft.json +1 -1
- package/.next/server/app/(app)/mcp-servers/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/page.js +2 -2
- package/.next/server/app/(app)/page.js.nft.json +1 -1
- package/.next/server/app/(app)/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/plugins/page.js +2 -0
- package/.next/server/app/(app)/{files → plugins}/page.js.nft.json +1 -1
- package/.next/server/app/(app)/plugins/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/reviews/[owner]/[repo]/[number]/page.js +4 -4
- package/.next/server/app/(app)/reviews/[owner]/[repo]/[number]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/reviews/[owner]/[repo]/[number]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/reviews/[owner]/[repo]/page.js +2 -2
- package/.next/server/app/(app)/reviews/[owner]/[repo]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/reviews/[owner]/[repo]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/reviews/page.js +2 -2
- package/.next/server/app/(app)/reviews/page.js.nft.json +1 -1
- package/.next/server/app/(app)/reviews/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/sessions/[id]/page.js +2 -2
- package/.next/server/app/(app)/sessions/[id]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/sessions/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/settings/appearance/page.js +2 -2
- package/.next/server/app/(app)/settings/appearance/page.js.nft.json +1 -1
- package/.next/server/app/(app)/settings/appearance/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/settings/notifications/page.js +2 -2
- package/.next/server/app/(app)/settings/notifications/page.js.nft.json +1 -1
- package/.next/server/app/(app)/settings/notifications/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/settings/page.js +2 -2
- package/.next/server/app/(app)/settings/page.js.nft.json +1 -1
- package/.next/server/app/(app)/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/settings/providers/[id]/page.js +2 -2
- package/.next/server/app/(app)/settings/providers/[id]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/settings/providers/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/settings/providers/new/page.js +2 -2
- package/.next/server/app/(app)/settings/providers/new/page.js.nft.json +1 -1
- package/.next/server/app/(app)/settings/providers/new/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/settings/providers/page.js +2 -2
- package/.next/server/app/(app)/settings/providers/page.js.nft.json +1 -1
- package/.next/server/app/(app)/settings/providers/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/settings/session/page.js +2 -2
- package/.next/server/app/(app)/settings/session/page.js.nft.json +1 -1
- package/.next/server/app/(app)/settings/session/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/skills/[name]/page.js +3 -3
- package/.next/server/app/(app)/skills/[name]/page.js.nft.json +1 -1
- package/.next/server/app/(app)/skills/[name]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/skills/page.js +2 -2
- package/.next/server/app/(app)/skills/page.js.nft.json +1 -1
- package/.next/server/app/(app)/skills/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error/page.js +3 -3
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +2 -2
- package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/agents.html +1 -1
- package/.next/server/app/agents.rsc +4 -4
- package/.next/server/app/agents.segments/!KGFwcCk/agents/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/agents.segments/!KGFwcCk/agents.segment.rsc +1 -1
- package/.next/server/app/agents.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/agents.segments/_full.segment.rsc +4 -4
- package/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/.next/server/app/agents.segments/_index.segment.rsc +2 -2
- package/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/agents/[name]/route.js +1 -1
- package/.next/server/app/api/agents/route.js +1 -1
- package/.next/server/app/api/assistant-session/route.js +1 -0
- package/.next/server/app/api/assistant-session/route.js.nft.json +1 -0
- package/.next/server/app/api/assistant-session/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/check/route.js +1 -1
- package/.next/server/app/api/auth/login/route.js +1 -1
- package/.next/server/app/api/auth/setup/route.js +1 -1
- package/.next/server/app/api/auth/ws-token/route.js +1 -1
- package/.next/server/app/api/btw/route.js +2 -2
- package/.next/server/app/api/claude-md/route.js +1 -1
- package/.next/server/app/api/commands/[name]/route.js +1 -1
- package/.next/server/app/api/commands/route.js +1 -1
- package/.next/server/app/api/config/cwd/route.js +1 -0
- package/.next/server/app/api/config/cwd/route.js.nft.json +1 -0
- package/.next/server/app/api/config/cwd/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/defaults/route.js +1 -1
- package/.next/server/app/api/filesystem/browse/route.js +1 -1
- package/.next/server/app/api/filesystem/files/route.js +1 -1
- package/.next/server/app/api/filesystem/mkdir/route.js +1 -1
- package/.next/server/app/api/filesystem/read/route.js +1 -1
- package/.next/server/app/api/git/clone/route.js +1 -1
- package/.next/server/app/api/git/commit/route.js +1 -1
- package/.next/server/app/api/git/diff/route.js +1 -1
- package/.next/server/app/api/git/discard/route.js +1 -1
- package/.next/server/app/api/git/generate-message/route.js +2 -2
- package/.next/server/app/api/git/push/route.js +1 -1
- package/.next/server/app/api/git/status/route.js +1 -1
- package/.next/server/app/api/github/file-content/route.js +1 -1
- package/.next/server/app/api/github/orgs/route.js +1 -1
- package/.next/server/app/api/github/prs/checks/route.js +1 -1
- package/.next/server/app/api/github/prs/diff/route.js +1 -1
- package/.next/server/app/api/github/prs/review/route.js +1 -1
- package/.next/server/app/api/github/prs/route.js +1 -1
- package/.next/server/app/api/github/prs/view/route.js +1 -1
- package/.next/server/app/api/github/repos/route.js +1 -1
- package/.next/server/app/api/github/review-session/route.js +1 -1
- package/.next/server/app/api/github/review-session/route.js.nft.json +1 -1
- package/.next/server/app/api/health/route.js +1 -1
- package/.next/server/app/api/hooks/route.js +1 -1
- package/.next/server/app/api/inbox/[id]/route.js +1 -5
- package/.next/server/app/api/inbox/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/inbox/route.js +1 -5
- package/.next/server/app/api/inbox/route.js.nft.json +1 -1
- package/.next/server/app/api/jobs/[id]/route.js +1 -1
- package/.next/server/app/api/jobs/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/jobs/[id]/runs/[runId]/route.js +1 -1
- package/.next/server/app/api/jobs/[id]/runs/[runId]/transcript/route.js +1 -1
- package/.next/server/app/api/jobs/[id]/runs/[runId]/transcript/route.js.nft.json +1 -1
- package/.next/server/app/api/jobs/[id]/runs/route.js +1 -1
- package/.next/server/app/api/jobs/[id]/stop/route.js +1 -0
- package/.next/server/app/api/jobs/[id]/stop/route.js.nft.json +1 -0
- package/.next/server/app/api/jobs/[id]/stop/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/jobs/[id]/trigger/route.js +1 -1
- package/.next/server/app/api/jobs/[id]/trigger/route.js.nft.json +1 -1
- package/.next/server/app/api/jobs/mcp-discover/route.js +1 -1
- package/.next/server/app/api/jobs/mcp-discover/route.js.nft.json +1 -1
- package/.next/server/app/api/jobs/route.js +1 -1
- package/.next/server/app/api/jobs/route.js.nft.json +1 -1
- package/.next/server/app/api/jobs/status/route.js +1 -1
- package/.next/server/app/api/mcp-servers/[name]/route.js +1 -1
- package/.next/server/app/api/mcp-servers/[name]/test/route.js +1 -1
- package/.next/server/app/api/mcp-servers/[name]/tools/route.js +1 -0
- package/.next/server/app/api/mcp-servers/[name]/tools/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp-servers/[name]/tools/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp-servers/route.js +1 -1
- package/.next/server/app/api/notifications/route.js +1 -1
- package/.next/server/app/api/notifications/test/route.js +3 -3
- package/.next/server/app/api/plugins/[id]/route.js +1 -0
- package/.next/server/app/api/plugins/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/plugins/install/route.js +1 -0
- package/.next/server/app/api/plugins/install/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/install/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/plugins/marketplaces/[name]/route.js +1 -0
- package/.next/server/app/api/plugins/marketplaces/[name]/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/marketplaces/[name]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/plugins/marketplaces/route.js +1 -0
- package/.next/server/app/api/plugins/marketplaces/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/marketplaces/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/plugins/route.js +1 -0
- package/.next/server/app/api/plugins/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/providers/[id]/route.js +1 -1
- package/.next/server/app/api/providers/route.js +1 -1
- package/.next/server/app/api/reviews/pinned/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/mcp/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/search/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/search/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/tabs/route.js +1 -1
- package/.next/server/app/api/sessions/bulk-delete/route.js +1 -1
- package/.next/server/app/api/sessions/bulk-delete/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/by-ids/route.js +1 -1
- package/.next/server/app/api/sessions/by-ids/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/group/route.js +1 -1
- package/.next/server/app/api/sessions/group/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/pinned/route.js +1 -1
- package/.next/server/app/api/sessions/route.js +1 -1
- package/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/search/route.js +1 -1
- package/.next/server/app/api/sessions/search/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/thinking/route.js +1 -1
- package/.next/server/app/api/sessions/thinking/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/[name]/route.js +1 -1
- package/.next/server/app/api/skills/route.js +1 -1
- package/.next/server/app/api/terminal/[id]/route.js +1 -1
- package/.next/server/app/api/terminal/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/terminal/route.js +1 -1
- package/.next/server/app/api/terminal/route.js.nft.json +1 -1
- package/.next/server/app/api/usage/route.js +1 -1
- package/.next/server/app/api/version/changelog/route.js +1 -1
- package/.next/server/app/api/version/cockpit/changelog/route.js +1 -1
- package/.next/server/app/api/version/cockpit/route.js +1 -1
- package/.next/server/app/api/version/route.js +2 -2
- package/.next/server/app/claude-md/edit.html +1 -1
- package/.next/server/app/claude-md/edit.rsc +4 -4
- package/.next/server/app/claude-md/edit.segments/!KGFwcCk/claude-md/edit/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/claude-md/edit.segments/!KGFwcCk/claude-md/edit.segment.rsc +1 -1
- package/.next/server/app/claude-md/edit.segments/!KGFwcCk/claude-md.segment.rsc +1 -1
- package/.next/server/app/claude-md/edit.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/claude-md/edit.segments/_full.segment.rsc +4 -4
- package/.next/server/app/claude-md/edit.segments/_head.segment.rsc +1 -1
- package/.next/server/app/claude-md/edit.segments/_index.segment.rsc +2 -2
- package/.next/server/app/claude-md/edit.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/claude-md.html +1 -1
- package/.next/server/app/claude-md.rsc +4 -4
- package/.next/server/app/claude-md.segments/!KGFwcCk/claude-md/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/claude-md.segments/!KGFwcCk/claude-md.segment.rsc +1 -1
- package/.next/server/app/claude-md.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/claude-md.segments/_full.segment.rsc +4 -4
- package/.next/server/app/claude-md.segments/_head.segment.rsc +1 -1
- package/.next/server/app/claude-md.segments/_index.segment.rsc +2 -2
- package/.next/server/app/claude-md.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/commands.html +1 -1
- package/.next/server/app/commands.rsc +4 -4
- package/.next/server/app/commands.segments/!KGFwcCk/commands/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/commands.segments/!KGFwcCk/commands.segment.rsc +1 -1
- package/.next/server/app/commands.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/commands.segments/_full.segment.rsc +4 -4
- package/.next/server/app/commands.segments/_head.segment.rsc +1 -1
- package/.next/server/app/commands.segments/_index.segment.rsc +2 -2
- package/.next/server/app/commands.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/hooks.html +1 -1
- package/.next/server/app/hooks.rsc +4 -4
- package/.next/server/app/hooks.segments/!KGFwcCk/hooks/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/hooks.segments/!KGFwcCk/hooks.segment.rsc +1 -1
- package/.next/server/app/hooks.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/hooks.segments/_full.segment.rsc +4 -4
- package/.next/server/app/hooks.segments/_head.segment.rsc +1 -1
- package/.next/server/app/hooks.segments/_index.segment.rsc +2 -2
- package/.next/server/app/hooks.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/inbox.html +1 -1
- package/.next/server/app/inbox.rsc +4 -4
- package/.next/server/app/inbox.segments/!KGFwcCk/inbox/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/inbox.segments/!KGFwcCk/inbox.segment.rsc +1 -1
- package/.next/server/app/inbox.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/inbox.segments/_full.segment.rsc +4 -4
- package/.next/server/app/inbox.segments/_head.segment.rsc +1 -1
- package/.next/server/app/inbox.segments/_index.segment.rsc +2 -2
- package/.next/server/app/inbox.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +4 -4
- package/.next/server/app/index.segments/!KGFwcCk/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +4 -4
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/jobs.html +1 -1
- package/.next/server/app/jobs.rsc +4 -4
- package/.next/server/app/jobs.segments/!KGFwcCk/jobs/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/jobs.segments/!KGFwcCk/jobs.segment.rsc +1 -1
- package/.next/server/app/jobs.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/jobs.segments/_full.segment.rsc +4 -4
- package/.next/server/app/jobs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/jobs.segments/_index.segment.rsc +2 -2
- package/.next/server/app/jobs.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/login/page.js +2 -2
- package/.next/server/app/login/page.js.nft.json +1 -1
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/login.html +1 -1
- package/.next/server/app/login.rsc +3 -3
- package/.next/server/app/login.segments/_full.segment.rsc +3 -3
- package/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/server/app/login.segments/_index.segment.rsc +2 -2
- package/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/server/app/mcp-servers.html +1 -1
- package/.next/server/app/mcp-servers.rsc +4 -4
- package/.next/server/app/mcp-servers.segments/!KGFwcCk/mcp-servers/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/mcp-servers.segments/!KGFwcCk/mcp-servers.segment.rsc +1 -1
- package/.next/server/app/mcp-servers.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/mcp-servers.segments/_full.segment.rsc +4 -4
- package/.next/server/app/mcp-servers.segments/_head.segment.rsc +1 -1
- package/.next/server/app/mcp-servers.segments/_index.segment.rsc +2 -2
- package/.next/server/app/mcp-servers.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/plugins.html +1 -0
- package/.next/server/app/{changes.meta → plugins.meta} +3 -3
- package/.next/server/app/{changes.rsc → plugins.rsc} +4 -4
- package/.next/server/app/{files.segments/!KGFwcCk/files → plugins.segments/!KGFwcCk/plugins}/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/{changes.segments/!KGFwcCk/changes.segment.rsc → plugins.segments/!KGFwcCk/plugins.segment.rsc} +1 -1
- package/.next/server/app/{changes.segments → plugins.segments}/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/{changes.segments → plugins.segments}/_full.segment.rsc +4 -4
- package/.next/server/app/{changes.segments → plugins.segments}/_head.segment.rsc +1 -1
- package/.next/server/app/{files.segments → plugins.segments}/_index.segment.rsc +2 -2
- package/.next/server/app/{changes.segments → plugins.segments}/_tree.segment.rsc +2 -2
- package/.next/server/app/reviews.html +1 -1
- package/.next/server/app/reviews.rsc +4 -4
- package/.next/server/app/reviews.segments/!KGFwcCk/reviews/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/reviews.segments/!KGFwcCk/reviews.segment.rsc +1 -1
- package/.next/server/app/reviews.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/reviews.segments/_full.segment.rsc +4 -4
- package/.next/server/app/reviews.segments/_head.segment.rsc +1 -1
- package/.next/server/app/reviews.segments/_index.segment.rsc +2 -2
- package/.next/server/app/reviews.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/appearance.html +1 -1
- package/.next/server/app/settings/appearance.rsc +4 -4
- package/.next/server/app/settings/appearance.segments/!KGFwcCk/settings/appearance/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings/appearance.segments/!KGFwcCk/settings/appearance.segment.rsc +1 -1
- package/.next/server/app/settings/appearance.segments/!KGFwcCk/settings.segment.rsc +1 -1
- package/.next/server/app/settings/appearance.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/settings/appearance.segments/_full.segment.rsc +4 -4
- package/.next/server/app/settings/appearance.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/appearance.segments/_index.segment.rsc +2 -2
- package/.next/server/app/settings/appearance.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/notifications.html +1 -1
- package/.next/server/app/settings/notifications.rsc +4 -4
- package/.next/server/app/settings/notifications.segments/!KGFwcCk/settings/notifications/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings/notifications.segments/!KGFwcCk/settings/notifications.segment.rsc +1 -1
- package/.next/server/app/settings/notifications.segments/!KGFwcCk/settings.segment.rsc +1 -1
- package/.next/server/app/settings/notifications.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/settings/notifications.segments/_full.segment.rsc +4 -4
- package/.next/server/app/settings/notifications.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/notifications.segments/_index.segment.rsc +2 -2
- package/.next/server/app/settings/notifications.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/providers/new.html +1 -1
- package/.next/server/app/settings/providers/new.rsc +4 -4
- package/.next/server/app/settings/providers/new.segments/!KGFwcCk/settings/providers/new/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings/providers/new.segments/!KGFwcCk/settings/providers/new.segment.rsc +1 -1
- package/.next/server/app/settings/providers/new.segments/!KGFwcCk/settings/providers.segment.rsc +1 -1
- package/.next/server/app/settings/providers/new.segments/!KGFwcCk/settings.segment.rsc +1 -1
- package/.next/server/app/settings/providers/new.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/settings/providers/new.segments/_full.segment.rsc +4 -4
- package/.next/server/app/settings/providers/new.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/providers/new.segments/_index.segment.rsc +2 -2
- package/.next/server/app/settings/providers/new.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/providers.html +1 -1
- package/.next/server/app/settings/providers.rsc +4 -4
- package/.next/server/app/settings/providers.segments/!KGFwcCk/settings/providers/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings/providers.segments/!KGFwcCk/settings/providers.segment.rsc +1 -1
- package/.next/server/app/settings/providers.segments/!KGFwcCk/settings.segment.rsc +1 -1
- package/.next/server/app/settings/providers.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/settings/providers.segments/_full.segment.rsc +4 -4
- package/.next/server/app/settings/providers.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/providers.segments/_index.segment.rsc +2 -2
- package/.next/server/app/settings/providers.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/session.html +1 -1
- package/.next/server/app/settings/session.rsc +4 -4
- package/.next/server/app/settings/session.segments/!KGFwcCk/settings/session/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings/session.segments/!KGFwcCk/settings/session.segment.rsc +1 -1
- package/.next/server/app/settings/session.segments/!KGFwcCk/settings.segment.rsc +1 -1
- package/.next/server/app/settings/session.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/settings/session.segments/_full.segment.rsc +4 -4
- package/.next/server/app/settings/session.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/session.segments/_index.segment.rsc +2 -2
- package/.next/server/app/settings/session.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings.html +1 -1
- package/.next/server/app/settings.rsc +4 -4
- package/.next/server/app/settings.segments/!KGFwcCk/settings/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings.segments/!KGFwcCk/settings.segment.rsc +1 -1
- package/.next/server/app/settings.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/settings.segments/_full.segment.rsc +4 -4
- package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/skills.html +1 -1
- package/.next/server/app/skills.rsc +4 -4
- package/.next/server/app/skills.segments/!KGFwcCk/skills/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/skills.segments/!KGFwcCk/skills.segment.rsc +1 -1
- package/.next/server/app/skills.segments/!KGFwcCk.segment.rsc +2 -2
- package/.next/server/app/skills.segments/_full.segment.rsc +4 -4
- package/.next/server/app/skills.segments/_head.segment.rsc +1 -1
- package/.next/server/app/skills.segments/_index.segment.rsc +2 -2
- package/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
- package/.next/server/app-paths-manifest.json +10 -2
- package/.next/server/chunks/1011.js +1 -1
- package/.next/server/chunks/1327.js +1 -1
- package/.next/server/chunks/1979.js +7 -2
- package/.next/server/chunks/2666.js +1 -0
- package/.next/server/chunks/3136.js +11 -0
- package/.next/server/chunks/319.js +45 -0
- package/.next/server/chunks/3445.js +2 -2
- package/.next/server/chunks/3764.js +1 -1
- package/.next/server/chunks/4053.js +4971 -0
- package/.next/server/chunks/4734.js +201 -0
- package/.next/server/chunks/5318.js +1 -1
- package/.next/server/chunks/5472.js +1 -1
- package/.next/server/chunks/6304.js +1 -1
- package/.next/server/chunks/6705.js +1 -1
- package/.next/server/chunks/7539.js +5 -0
- package/.next/server/chunks/7891.js +3 -0
- package/.next/server/chunks/8578.js +1 -1
- package/.next/server/chunks/8728.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/NTa6G91R3HtKCLYuQqdR0/_buildManifest.js +1 -0
- package/.next/static/chunks/12644.84908edd1bec8b5a.js +1 -0
- package/.next/static/chunks/14371-46bd93e838a73082.js +201 -0
- package/.next/static/chunks/1550-2b61396833da3dec.js +25 -0
- package/.next/static/chunks/18977.393a8bc1bef44fc4.js +1 -0
- package/.next/static/chunks/{2503.bb9d3528c3c7ccae.js → 2503.68e12779c4b14adb.js} +1 -1
- package/.next/static/chunks/{27455.1bce740b63d7c3cc.js → 27455.8f2189c777c63368.js} +1 -1
- package/.next/static/chunks/33072.3d32bb7b2a85ca9b.js +1 -0
- package/.next/static/chunks/39267.0c93a6bed8e46ac0.js +1 -0
- package/.next/static/chunks/52333.ff3bf0753b68875e.js +1 -0
- package/.next/static/chunks/69940.42e1ca99efc62caf.js +1 -0
- package/.next/static/chunks/70400.ffe0412efe741888.js +1 -0
- package/.next/static/chunks/7113.336a2a8deabe2aa5.js +1 -0
- package/.next/static/chunks/{71642.852436e8f0287b89.js → 71642.e11bcaa30efbf1f2.js} +1 -1
- package/.next/static/chunks/{72839.a5325a99f8c12fed.js → 72839.225c36dd5e767a20.js} +1 -1
- package/.next/static/chunks/{69427.a0b463c808aa54c8.js → 81272.b0027c9bc80050aa.js} +1 -1
- package/.next/static/chunks/85853.421f0c913b3d332b.js +1 -0
- package/.next/static/chunks/86155.3c5c1468fa2f446e.js +1 -0
- package/.next/static/chunks/86339.ba009abde9765665.js +1 -0
- package/.next/static/chunks/86939-ba1fb2321ef9cd80.js +1 -0
- package/.next/static/chunks/93794-b87eef7d177fe7b3.js +32 -0
- package/.next/static/chunks/989-6074551b2b54a168.js +3 -0
- package/.next/static/chunks/app/(app)/agents/[name]/page-2b04446e17990f1a.js +8 -0
- package/.next/static/chunks/app/(app)/agents/page-ba23fc2296a7be83.js +1 -0
- package/.next/static/chunks/app/(app)/claude-md/edit/page-a281913e0b8add64.js +1 -0
- package/.next/static/chunks/app/(app)/claude-md/{page-cd9e2176a12ba241.js → page-2d96e3554ef23d18.js} +1 -1
- package/.next/static/chunks/app/(app)/commands/[name]/page-fb34a46c0c086dab.js +6 -0
- package/.next/static/chunks/app/(app)/commands/page-3802984c62d8ac69.js +1 -0
- package/.next/static/chunks/app/(app)/hooks/[event]/{page-28038323fd29adfa.js → page-9481839e736408cb.js} +2 -2
- package/.next/static/chunks/app/(app)/hooks/page-f430735f702c7219.js +1 -0
- package/.next/static/chunks/app/(app)/inbox/[id]/page-aadeab885f4845b0.js +1 -0
- package/.next/static/chunks/app/(app)/inbox/page-b95594cb0a1a5cac.js +1 -0
- package/.next/static/chunks/app/(app)/jobs/[id]/edit/page-cc5a314765daff0b.js +1 -0
- package/.next/static/chunks/app/(app)/jobs/[id]/page-5890d22a832830ae.js +1 -0
- package/.next/static/chunks/app/(app)/jobs/[id]/runs/[runId]/page-0b99d3ca8a0db5a4.js +1 -0
- package/.next/static/chunks/app/(app)/jobs/page-3112e52c1cf2a1c6.js +1 -0
- package/.next/static/chunks/app/(app)/{layout-ce9e1be301c60fe5.js → layout-62bd7715bd974abb.js} +1 -1
- package/.next/static/chunks/app/(app)/mcp-servers/[name]/{page-d6d805a27ec0b0c0.js → page-c8586b1dc6f9824d.js} +1 -1
- package/.next/static/chunks/app/(app)/mcp-servers/page-bfc2a6ca8f7968c9.js +1 -0
- package/.next/static/chunks/app/(app)/page-7fa2e1ffac49c78b.js +1 -0
- package/.next/static/chunks/app/(app)/plugins/page-f37a96c5d3bd20a1.js +1 -0
- package/.next/static/chunks/app/(app)/reviews/[owner]/[repo]/[number]/page-9bdb676f496d53bd.js +13 -0
- package/.next/static/chunks/app/(app)/reviews/[owner]/[repo]/{page-c5fd013309ab3eba.js → page-200fefe31b935564.js} +1 -1
- package/.next/static/chunks/app/(app)/reviews/page-2b8118a506454063.js +1 -0
- package/.next/static/chunks/app/(app)/sessions/[id]/page-428e74d62712abe2.js +1 -0
- package/.next/static/chunks/app/(app)/settings/appearance/{page-95902da748ac5f1e.js → page-e2b21c857330b047.js} +1 -1
- package/.next/static/chunks/app/(app)/settings/notifications/page-4c4e5802b3993e7f.js +1 -0
- package/.next/static/chunks/app/(app)/settings/page-3c1d956c719f0160.js +1 -0
- package/.next/static/chunks/app/(app)/settings/providers/[id]/page-020f2eab5c3a93ee.js +1 -0
- package/.next/static/chunks/app/(app)/settings/providers/new/page-9010d32aeca78d7f.js +1 -0
- package/.next/static/chunks/app/(app)/settings/providers/page-d86ebcd6d1cb033d.js +1 -0
- package/.next/static/chunks/app/(app)/settings/session/page-174370077dbb9079.js +1 -0
- package/.next/static/chunks/app/(app)/skills/[name]/page-dfea5f58b95c01b6.js +6 -0
- package/.next/static/chunks/app/(app)/skills/page-c33dbb722dbdf826.js +1 -0
- package/.next/static/chunks/app/_global-error/page-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/agents/[name]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/agents/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/assistant-session/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/auth/check/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/auth/login/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/auth/setup/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/auth/ws-token/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/btw/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/claude-md/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/commands/[name]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/commands/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/config/cwd/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/defaults/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/filesystem/browse/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/filesystem/files/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/filesystem/mkdir/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/filesystem/read/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/git/clone/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/git/commit/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/git/diff/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/git/discard/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/git/generate-message/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/git/push/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/git/status/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/github/file-content/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/github/orgs/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/github/prs/checks/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/github/prs/diff/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/github/prs/review/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/github/prs/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/github/prs/view/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/github/repos/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/github/review-session/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/health/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/hooks/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/inbox/[id]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/inbox/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/jobs/[id]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/jobs/[id]/runs/[runId]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/jobs/[id]/runs/[runId]/transcript/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/jobs/[id]/runs/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/jobs/[id]/stop/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/jobs/[id]/trigger/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/jobs/mcp-discover/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/jobs/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/jobs/status/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/mcp-servers/[name]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/mcp-servers/[name]/test/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/mcp-servers/[name]/tools/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/mcp-servers/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/notifications/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/notifications/test/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/plugins/[id]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/plugins/install/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/plugins/marketplaces/[name]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/plugins/marketplaces/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/plugins/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/providers/[id]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/providers/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/reviews/pinned/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/mcp/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/search/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/tabs/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/bulk-delete/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/by-ids/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/group/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/pinned/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/search/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/sessions/thinking/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/skills/[name]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/skills/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/terminal/[id]/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/terminal/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/usage/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/version/changelog/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/version/cockpit/changelog/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/version/cockpit/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/app/api/version/route-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/{framework-6fd9f138158c42e0.js → framework-45a1aae1a0f575fd.js} +1 -1
- package/.next/static/chunks/{main-5dac9bfffcc23702.js → main-eb9ff0b73c75808a.js} +3 -3
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-bf8153dffcb47d46.js +1 -0
- package/.next/static/chunks/webpack-76a545b642140725.js +1 -0
- package/.next/static/css/4cc7360c7e3ca504.css +1 -0
- package/README.md +2 -2
- package/dist/server.js +10 -0
- package/dist/src/lib/cli-commands.js +147 -0
- package/dist/src/lib/models.js +57 -1
- package/dist/src/lib/paste-detect.js +161 -0
- package/dist/src/server/assistant-settings.js +35 -0
- package/dist/src/server/claude-bin.js +32 -0
- package/dist/src/server/claude-settings.js +3 -0
- package/dist/src/server/cli-init-fetch.js +6 -1
- package/dist/src/server/inbox.js +2 -2
- package/dist/src/server/job-scheduler.js +146 -4
- package/dist/src/server/job-storage.js +33 -0
- package/dist/src/server/mcp/cockpit-agent-prompt.js +5 -0
- package/dist/src/server/mcp/cockpit-config-server.js +632 -0
- package/dist/src/server/mcp/run-context.js +23 -0
- package/dist/src/server/notifications.js +51 -10
- package/dist/src/server/plugins.js +103 -0
- package/dist/src/server/providers.js +25 -2
- package/dist/src/server/pty-runtime.js +113 -3
- package/dist/src/server/pty-session.js +7 -4
- package/dist/src/server/session-manager.js +394 -116
- package/dist/src/server/singleton.js +9 -0
- package/dist/src/server/terminal-buffer.js +17 -0
- package/dist/src/server/terminal-manager.js +9 -13
- package/dist/src/server/transcript.js +65 -27
- package/dist/src/server/ws-handler.js +19 -7
- package/next.config.ts +1 -0
- package/package.json +3 -2
- package/.next/server/app/(app)/changes/page.js +0 -2
- package/.next/server/app/(app)/changes/page.js.nft.json +0 -1
- package/.next/server/app/(app)/changes/page_client-reference-manifest.js +0 -1
- package/.next/server/app/(app)/files/page.js +0 -2
- package/.next/server/app/(app)/files/page_client-reference-manifest.js +0 -1
- package/.next/server/app/changes.html +0 -1
- package/.next/server/app/changes.segments/!KGFwcCk/changes/__PAGE__.segment.rsc +0 -9
- package/.next/server/app/changes.segments/_index.segment.rsc +0 -5
- package/.next/server/app/files.html +0 -1
- package/.next/server/app/files.meta +0 -16
- package/.next/server/app/files.rsc +0 -23
- package/.next/server/app/files.segments/!KGFwcCk/files.segment.rsc +0 -5
- package/.next/server/app/files.segments/!KGFwcCk.segment.rsc +0 -7
- package/.next/server/app/files.segments/_full.segment.rsc +0 -23
- package/.next/server/app/files.segments/_head.segment.rsc +0 -6
- package/.next/server/app/files.segments/_tree.segment.rsc +0 -2
- package/.next/server/chunks/3006.js +0 -199
- package/.next/server/chunks/4342.js +0 -1
- package/.next/server/chunks/4352.js +0 -1
- package/.next/server/chunks/4445.js +0 -1
- package/.next/server/chunks/63.js +0 -45
- package/.next/server/chunks/7782.js +0 -6
- package/.next/server/chunks/8148.js +0 -1
- package/.next/server/chunks/9599.js +0 -11
- package/.next/static/I-rxZaJEzhe3ZUTjSqB11/_buildManifest.js +0 -1
- package/.next/static/chunks/18977.a98edaf19c6df2d4.js +0 -1
- package/.next/static/chunks/26126-97874904b42befb8.js +0 -1
- package/.next/static/chunks/31010-6e87f77b97544424.js +0 -1
- package/.next/static/chunks/33072.9c3cd19e8d515dea.js +0 -1
- package/.next/static/chunks/3765-d323c6675307a63e.js +0 -20
- package/.next/static/chunks/39267.ef60669ade47cf4c.js +0 -1
- package/.next/static/chunks/41487-d802643f4a8fad3c.js +0 -199
- package/.next/static/chunks/48273-fb393846bb4333c0.js +0 -6
- package/.next/static/chunks/52333.f98d1cca9a127b34.js +0 -1
- package/.next/static/chunks/6935-f436a624267529fb.js +0 -1
- package/.next/static/chunks/70400.1816c247ad90f9bc.js +0 -1
- package/.next/static/chunks/7113.39704408fef3d26e.js +0 -1
- package/.next/static/chunks/85853.39872899093b140a.js +0 -1
- package/.next/static/chunks/86155.40f687f9aaa13854.js +0 -1
- package/.next/static/chunks/86339.4dbd51a9b9871f65.js +0 -1
- package/.next/static/chunks/86939-dfc6f8eb395caa89.js +0 -1
- package/.next/static/chunks/93794-5f89a674d8cefcff.js +0 -32
- package/.next/static/chunks/989-94bf2b9d242776c3.js +0 -3
- package/.next/static/chunks/app/(app)/agents/[name]/page-8bdd0359043537d4.js +0 -8
- package/.next/static/chunks/app/(app)/agents/page-6fcfd7ab6781814e.js +0 -1
- package/.next/static/chunks/app/(app)/changes/page-4549a5bd72d77e3e.js +0 -1
- package/.next/static/chunks/app/(app)/claude-md/edit/page-08e6e120e71979f4.js +0 -1
- package/.next/static/chunks/app/(app)/commands/[name]/page-7cdfdef29ded0aa0.js +0 -6
- package/.next/static/chunks/app/(app)/commands/page-f126b608b04747ac.js +0 -1
- package/.next/static/chunks/app/(app)/files/page-f526eb95821e000e.js +0 -1
- package/.next/static/chunks/app/(app)/hooks/page-f1f39284e53c0344.js +0 -1
- package/.next/static/chunks/app/(app)/inbox/[id]/page-bc1ff3a0db0114a4.js +0 -1
- package/.next/static/chunks/app/(app)/inbox/page-82e03870103ce9bd.js +0 -1
- package/.next/static/chunks/app/(app)/jobs/[id]/edit/page-7fb788f772ff2129.js +0 -1
- package/.next/static/chunks/app/(app)/jobs/[id]/page-a5856b9ae967ff59.js +0 -1
- package/.next/static/chunks/app/(app)/jobs/[id]/runs/[runId]/page-b7c513402db11db6.js +0 -1
- package/.next/static/chunks/app/(app)/jobs/page-e9bbd6c116b9699f.js +0 -1
- package/.next/static/chunks/app/(app)/mcp-servers/page-4b7276d43451cd43.js +0 -1
- package/.next/static/chunks/app/(app)/page-027a5382da30ddb9.js +0 -1
- package/.next/static/chunks/app/(app)/reviews/[owner]/[repo]/[number]/page-9ab2955c455bb5fa.js +0 -13
- package/.next/static/chunks/app/(app)/reviews/page-47530d93bb9d4a76.js +0 -1
- package/.next/static/chunks/app/(app)/sessions/[id]/page-94f891e1b54fd05f.js +0 -1
- package/.next/static/chunks/app/(app)/settings/notifications/page-229f1db6beb1d19c.js +0 -1
- package/.next/static/chunks/app/(app)/settings/page-8ed16a66fdde10cd.js +0 -1
- package/.next/static/chunks/app/(app)/settings/providers/[id]/page-13654263246617b3.js +0 -1
- package/.next/static/chunks/app/(app)/settings/providers/new/page-e1798e321ccbc6df.js +0 -1
- package/.next/static/chunks/app/(app)/settings/providers/page-0bb4c1db2ee35b3d.js +0 -1
- package/.next/static/chunks/app/(app)/settings/session/page-ab216a8fa37a0f76.js +0 -1
- package/.next/static/chunks/app/(app)/skills/[name]/page-8ab85d5090967ee4.js +0 -6
- package/.next/static/chunks/app/(app)/skills/page-c52773eacb27c04e.js +0 -1
- package/.next/static/chunks/app/_global-error/page-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/agents/[name]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/agents/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/auth/check/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/auth/login/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/auth/setup/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/auth/ws-token/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/btw/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/claude-md/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/commands/[name]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/commands/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/defaults/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/filesystem/browse/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/filesystem/files/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/filesystem/mkdir/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/filesystem/read/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/git/clone/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/git/commit/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/git/diff/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/git/discard/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/git/generate-message/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/git/push/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/git/status/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/github/file-content/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/github/orgs/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/github/prs/checks/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/github/prs/diff/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/github/prs/review/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/github/prs/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/github/prs/view/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/github/repos/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/github/review-session/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/health/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/hooks/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/inbox/[id]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/inbox/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/jobs/[id]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/jobs/[id]/runs/[runId]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/jobs/[id]/runs/[runId]/transcript/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/jobs/[id]/runs/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/jobs/[id]/trigger/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/jobs/mcp-discover/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/jobs/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/jobs/status/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/mcp-servers/[name]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/mcp-servers/[name]/test/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/mcp-servers/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/notifications/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/notifications/test/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/providers/[id]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/providers/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/reviews/pinned/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/context/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/mcp/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/search/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/tabs/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/bulk-delete/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/by-ids/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/group/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/pinned/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/search/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/sessions/thinking/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/skills/[name]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/skills/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/terminal/[id]/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/terminal/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/usage/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/version/changelog/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/version/cockpit/changelog/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/version/cockpit/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/app/api/version/route-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-fc747760bd4c8a4b.js +0 -1
- package/.next/static/chunks/webpack-e31bb45fa59caed8.js +0 -1
- package/.next/static/css/3f8af4ae6f812d5c.css +0 -1
- /package/.next/static/{I-rxZaJEzhe3ZUTjSqB11 → NTa6G91R3HtKCLYuQqdR0}/_ssgManifest.js +0 -0
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[989],{622:(e,t,r)=>{r.d(t,{QP:()=>em});let o=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),n=[],l=(e,t,r)=>{if(0==e.length-t)return r.classGroupId;let o=e[t],n=r.nextPart.get(o);if(n){let r=l(e,t+1,n);if(r)return r}let a=r.validators;if(null===a)return;let i=0===t?e.join("-"):e.slice(t).join("-"),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(i))return t.classGroupId}},a=(e,t)=>{let r=o();for(let o in e)i(e[o],r,o,t);return r},i=(e,t,r,o)=>{let n=e.length;for(let l=0;l<n;l++)s(e[l],t,r,o)},s=(e,t,r,o)=>{"string"==typeof e?d(e,t,r):"function"==typeof e?c(e,t,r,o):u(e,t,r,o)},d=(e,t,r)=>{(""===e?t:m(t,e)).classGroupId=r},c=(e,t,r,o)=>{f(e)?i(e(o),t,r,o):(null===t.validators&&(t.validators=[]),t.validators.push({classGroupId:r,validator:e}))},u=(e,t,r,o)=>{let n=Object.entries(e),l=n.length;for(let e=0;e<l;e++){let[l,a]=n[e];i(a,m(t,l),r,o)}},m=(e,t)=>{let r=e,n=t.split("-"),l=n.length;for(let e=0;e<l;e++){let t=n[e],l=r.nextPart.get(t);l||(l=o(),r.nextPart.set(t,l)),r=l}return r},f=e=>"isThemeGetter"in e&&!0===e.isThemeGetter,p=[],b=(e,t,r,o,n)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:n}),g=/\s+/,h=e=>{let t;if("string"==typeof e)return e;let r="";for(let o=0;o<e.length;o++)e[o]&&(t=h(e[o]))&&(r&&(r+=" "),r+=t);return r},y=[],v=e=>{let t=t=>t[e]||y;return t.isThemeGetter=!0,t},w=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,x=/^\((?:(\w[\w-]*):)?(.+)\)$/i,k=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,_=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,j=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,z=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,P=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,O=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,S=e=>k.test(e),C=e=>!!e&&!Number.isNaN(Number(e)),E=e=>!!e&&Number.isInteger(Number(e)),R=e=>e.endsWith("%")&&C(e.slice(0,-1)),M=e=>_.test(e),$=()=>!0,I=e=>j.test(e)&&!z.test(e),N=()=>!1,D=e=>P.test(e),A=e=>O.test(e),W=e=>!T(e)&&!H(e),G=e=>er(e,ea,N),T=e=>w.test(e),q=e=>er(e,ei,I),L=e=>er(e,es,C),F=e=>er(e,ec,$),U=e=>er(e,ed,N),B=e=>er(e,en,N),V=e=>er(e,el,A),X=e=>er(e,eu,D),H=e=>x.test(e),Q=e=>eo(e,ei),J=e=>eo(e,ed),Y=e=>eo(e,en),Z=e=>eo(e,ea),K=e=>eo(e,el),ee=e=>eo(e,eu,!0),et=e=>eo(e,ec,!0),er=(e,t,r)=>{let o=w.exec(e);return!!o&&(o[1]?t(o[1]):r(o[2]))},eo=(e,t,r=!1)=>{let o=x.exec(e);return!!o&&(o[1]?t(o[1]):r)},en=e=>"position"===e||"percentage"===e,el=e=>"image"===e||"url"===e,ea=e=>"length"===e||"size"===e||"bg-size"===e,ei=e=>"length"===e,es=e=>"number"===e,ed=e=>"family-name"===e,ec=e=>"number"===e||"weight"===e,eu=e=>"shadow"===e,em=((e,...t)=>{let r,o,i,s,d=e=>{let t=o(e);if(t)return t;let n=((e,t)=>{let{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:n,sortModifiers:l}=t,a=[],i=e.trim().split(g),s="";for(let e=i.length-1;e>=0;e-=1){let t=i[e],{isExternal:d,modifiers:c,hasImportantModifier:u,baseClassName:m,maybePostfixModifierPosition:f}=r(t);if(d){s=t+(s.length>0?" "+s:s);continue}let p=!!f,b=o(p?m.substring(0,f):m);if(!b){if(!p||!(b=o(m))){s=t+(s.length>0?" "+s:s);continue}p=!1}let g=0===c.length?"":1===c.length?c[0]:l(c).join(":"),h=u?g+"!":g,y=h+b;if(a.indexOf(y)>-1)continue;a.push(y);let v=n(b,p);for(let e=0;e<v.length;++e){let t=v[e];a.push(h+t)}s=t+(s.length>0?" "+s:s)}return s})(e,r);return i(e,n),n};return s=c=>{var u;let m;return o=(r={cache:(e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,r=Object.create(null),o=Object.create(null),n=(n,l)=>{r[n]=l,++t>e&&(t=0,o=r,r=Object.create(null))};return{get(e){let t=r[e];return void 0!==t?t:void 0!==(t=o[e])?(n(e,t),t):void 0},set(e,t){e in r?r[e]=t:n(e,t)}}})((u=t.reduce((e,t)=>t(e),e())).cacheSize),parseClassName:(e=>{let{prefix:t,experimentalParseClassName:r}=e,o=e=>{let t,r=[],o=0,n=0,l=0,a=e.length;for(let i=0;i<a;i++){let a=e[i];if(0===o&&0===n){if(":"===a){r.push(e.slice(l,i)),l=i+1;continue}if("/"===a){t=i;continue}}"["===a?o++:"]"===a?o--:"("===a?n++:")"===a&&n--}let i=0===r.length?e:e.slice(l),s=i,d=!1;return i.endsWith("!")?(s=i.slice(0,-1),d=!0):i.startsWith("!")&&(s=i.slice(1),d=!0),b(r,d,s,t&&t>l?t-l:void 0)};if(t){let e=t+":",r=o;o=t=>t.startsWith(e)?r(t.slice(e.length)):b(p,!1,t,void 0,!0)}if(r){let e=o;o=t=>r({className:t,parseClassName:e})}return o})(u),sortModifiers:(m=new Map,u.orderSensitiveModifiers.forEach((e,t)=>{m.set(e,1e6+t)}),e=>{let t=[],r=[];for(let o=0;o<e.length;o++){let n=e[o],l="["===n[0],a=m.has(n);l||a?(r.length>0&&(r.sort(),t.push(...r),r=[]),t.push(n)):r.push(n)}return r.length>0&&(r.sort(),t.push(...r)),t}),...(e=>{let t=(e=>{let{theme:t,classGroups:r}=e;return a(r,t)})(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:e=>{if(e.startsWith("[")&&e.endsWith("]")){var r;let t,o,n;return -1===(r=e).slice(1,-1).indexOf(":")?void 0:(o=(t=r.slice(1,-1)).indexOf(":"),(n=t.slice(0,o))?"arbitrary.."+n:void 0)}let o=e.split("-"),n=+(""===o[0]&&o.length>1);return l(o,n,t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=o[e],l=r[e];if(t){if(l){let e=Array(l.length+t.length);for(let t=0;t<l.length;t++)e[t]=l[t];for(let r=0;r<t.length;r++)e[l.length+r]=t[r];return e}return t}return l||n}return r[e]||n}}})(u)}).cache.get,i=r.cache.set,s=d,d(c)},(...e)=>s(((...e)=>{let t,r,o=0,n="";for(;o<e.length;)(t=e[o++])&&(r=h(t))&&(n&&(n+=" "),n+=r);return n})(...e))})(()=>{let e=v("color"),t=v("font"),r=v("text"),o=v("font-weight"),n=v("tracking"),l=v("leading"),a=v("breakpoint"),i=v("container"),s=v("spacing"),d=v("radius"),c=v("shadow"),u=v("inset-shadow"),m=v("text-shadow"),f=v("drop-shadow"),p=v("blur"),b=v("perspective"),g=v("aspect"),h=v("ease"),y=v("animate"),w=()=>["auto","avoid","all","avoid-page","page","left","right","column"],x=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],k=()=>[...x(),H,T],_=()=>["auto","hidden","clip","visible","scroll"],j=()=>["auto","contain","none"],z=()=>[H,T,s],P=()=>[S,"full","auto",...z()],O=()=>[E,"none","subgrid",H,T],I=()=>["auto",{span:["full",E,H,T]},E,H,T],N=()=>[E,"auto",H,T],D=()=>["auto","min","max","fr",H,T],A=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],er=()=>["start","end","center","stretch","center-safe","end-safe"],eo=()=>["auto",...z()],en=()=>[S,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...z()],el=()=>[S,"screen","full","dvw","lvw","svw","min","max","fit",...z()],ea=()=>[S,"screen","full","lh","dvh","lvh","svh","min","max","fit",...z()],ei=()=>[e,H,T],es=()=>[...x(),Y,B,{position:[H,T]}],ed=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ec=()=>["auto","cover","contain",Z,G,{size:[H,T]}],eu=()=>[R,Q,q],em=()=>["","none","full",d,H,T],ef=()=>["",C,Q,q],ep=()=>["solid","dashed","dotted","double"],eb=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],eg=()=>[C,R,Y,B],eh=()=>["","none",p,H,T],ey=()=>["none",C,H,T],ev=()=>["none",C,H,T],ew=()=>[C,H,T],ex=()=>[S,"full",...z()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[M],breakpoint:[M],color:[$],container:[M],"drop-shadow":[M],ease:["in","out","in-out"],font:[W],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[M],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[M],shadow:[M],spacing:["px",C],text:[M],"text-shadow":[M],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",S,T,H,g]}],container:["container"],columns:[{columns:[C,T,H,i]}],"break-after":[{"break-after":w()}],"break-before":[{"break-before":w()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:k()}],overflow:[{overflow:_()}],"overflow-x":[{"overflow-x":_()}],"overflow-y":[{"overflow-y":_()}],overscroll:[{overscroll:j()}],"overscroll-x":[{"overscroll-x":j()}],"overscroll-y":[{"overscroll-y":j()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:P()}],"inset-x":[{"inset-x":P()}],"inset-y":[{"inset-y":P()}],start:[{"inset-s":P(),start:P()}],end:[{"inset-e":P(),end:P()}],"inset-bs":[{"inset-bs":P()}],"inset-be":[{"inset-be":P()}],top:[{top:P()}],right:[{right:P()}],bottom:[{bottom:P()}],left:[{left:P()}],visibility:["visible","invisible","collapse"],z:[{z:[E,"auto",H,T]}],basis:[{basis:[S,"full","auto",i,...z()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[C,S,"auto","initial","none",T]}],grow:[{grow:["",C,H,T]}],shrink:[{shrink:["",C,H,T]}],order:[{order:[E,"first","last","none",H,T]}],"grid-cols":[{"grid-cols":O()}],"col-start-end":[{col:I()}],"col-start":[{"col-start":N()}],"col-end":[{"col-end":N()}],"grid-rows":[{"grid-rows":O()}],"row-start-end":[{row:I()}],"row-start":[{"row-start":N()}],"row-end":[{"row-end":N()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":D()}],"auto-rows":[{"auto-rows":D()}],gap:[{gap:z()}],"gap-x":[{"gap-x":z()}],"gap-y":[{"gap-y":z()}],"justify-content":[{justify:[...A(),"normal"]}],"justify-items":[{"justify-items":[...er(),"normal"]}],"justify-self":[{"justify-self":["auto",...er()]}],"align-content":[{content:["normal",...A()]}],"align-items":[{items:[...er(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...er(),{baseline:["","last"]}]}],"place-content":[{"place-content":A()}],"place-items":[{"place-items":[...er(),"baseline"]}],"place-self":[{"place-self":["auto",...er()]}],p:[{p:z()}],px:[{px:z()}],py:[{py:z()}],ps:[{ps:z()}],pe:[{pe:z()}],pbs:[{pbs:z()}],pbe:[{pbe:z()}],pt:[{pt:z()}],pr:[{pr:z()}],pb:[{pb:z()}],pl:[{pl:z()}],m:[{m:eo()}],mx:[{mx:eo()}],my:[{my:eo()}],ms:[{ms:eo()}],me:[{me:eo()}],mbs:[{mbs:eo()}],mbe:[{mbe:eo()}],mt:[{mt:eo()}],mr:[{mr:eo()}],mb:[{mb:eo()}],ml:[{ml:eo()}],"space-x":[{"space-x":z()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":z()}],"space-y-reverse":["space-y-reverse"],size:[{size:en()}],"inline-size":[{inline:["auto",...el()]}],"min-inline-size":[{"min-inline":["auto",...el()]}],"max-inline-size":[{"max-inline":["none",...el()]}],"block-size":[{block:["auto",...ea()]}],"min-block-size":[{"min-block":["auto",...ea()]}],"max-block-size":[{"max-block":["none",...ea()]}],w:[{w:[i,"screen",...en()]}],"min-w":[{"min-w":[i,"screen","none",...en()]}],"max-w":[{"max-w":[i,"screen","none","prose",{screen:[a]},...en()]}],h:[{h:["screen","lh",...en()]}],"min-h":[{"min-h":["screen","lh","none",...en()]}],"max-h":[{"max-h":["screen","lh",...en()]}],"font-size":[{text:["base",r,Q,q]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,et,F]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",R,T]}],"font-family":[{font:[J,U,t]}],"font-features":[{"font-features":[T]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[n,H,T]}],"line-clamp":[{"line-clamp":[C,"none",H,L]}],leading:[{leading:[l,...z()]}],"list-image":[{"list-image":["none",H,T]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",H,T]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:ei()}],"text-color":[{text:ei()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...ep(),"wavy"]}],"text-decoration-thickness":[{decoration:[C,"from-font","auto",H,q]}],"text-decoration-color":[{decoration:ei()}],"underline-offset":[{"underline-offset":[C,"auto",H,T]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:z()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",H,T]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",H,T]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:es()}],"bg-repeat":[{bg:ed()}],"bg-size":[{bg:ec()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},E,H,T],radial:["",H,T],conic:[E,H,T]},K,V]}],"bg-color":[{bg:ei()}],"gradient-from-pos":[{from:eu()}],"gradient-via-pos":[{via:eu()}],"gradient-to-pos":[{to:eu()}],"gradient-from":[{from:ei()}],"gradient-via":[{via:ei()}],"gradient-to":[{to:ei()}],rounded:[{rounded:em()}],"rounded-s":[{"rounded-s":em()}],"rounded-e":[{"rounded-e":em()}],"rounded-t":[{"rounded-t":em()}],"rounded-r":[{"rounded-r":em()}],"rounded-b":[{"rounded-b":em()}],"rounded-l":[{"rounded-l":em()}],"rounded-ss":[{"rounded-ss":em()}],"rounded-se":[{"rounded-se":em()}],"rounded-ee":[{"rounded-ee":em()}],"rounded-es":[{"rounded-es":em()}],"rounded-tl":[{"rounded-tl":em()}],"rounded-tr":[{"rounded-tr":em()}],"rounded-br":[{"rounded-br":em()}],"rounded-bl":[{"rounded-bl":em()}],"border-w":[{border:ef()}],"border-w-x":[{"border-x":ef()}],"border-w-y":[{"border-y":ef()}],"border-w-s":[{"border-s":ef()}],"border-w-e":[{"border-e":ef()}],"border-w-bs":[{"border-bs":ef()}],"border-w-be":[{"border-be":ef()}],"border-w-t":[{"border-t":ef()}],"border-w-r":[{"border-r":ef()}],"border-w-b":[{"border-b":ef()}],"border-w-l":[{"border-l":ef()}],"divide-x":[{"divide-x":ef()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":ef()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...ep(),"hidden","none"]}],"divide-style":[{divide:[...ep(),"hidden","none"]}],"border-color":[{border:ei()}],"border-color-x":[{"border-x":ei()}],"border-color-y":[{"border-y":ei()}],"border-color-s":[{"border-s":ei()}],"border-color-e":[{"border-e":ei()}],"border-color-bs":[{"border-bs":ei()}],"border-color-be":[{"border-be":ei()}],"border-color-t":[{"border-t":ei()}],"border-color-r":[{"border-r":ei()}],"border-color-b":[{"border-b":ei()}],"border-color-l":[{"border-l":ei()}],"divide-color":[{divide:ei()}],"outline-style":[{outline:[...ep(),"none","hidden"]}],"outline-offset":[{"outline-offset":[C,H,T]}],"outline-w":[{outline:["",C,Q,q]}],"outline-color":[{outline:ei()}],shadow:[{shadow:["","none",c,ee,X]}],"shadow-color":[{shadow:ei()}],"inset-shadow":[{"inset-shadow":["none",u,ee,X]}],"inset-shadow-color":[{"inset-shadow":ei()}],"ring-w":[{ring:ef()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:ei()}],"ring-offset-w":[{"ring-offset":[C,q]}],"ring-offset-color":[{"ring-offset":ei()}],"inset-ring-w":[{"inset-ring":ef()}],"inset-ring-color":[{"inset-ring":ei()}],"text-shadow":[{"text-shadow":["none",m,ee,X]}],"text-shadow-color":[{"text-shadow":ei()}],opacity:[{opacity:[C,H,T]}],"mix-blend":[{"mix-blend":[...eb(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":eb()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[C]}],"mask-image-linear-from-pos":[{"mask-linear-from":eg()}],"mask-image-linear-to-pos":[{"mask-linear-to":eg()}],"mask-image-linear-from-color":[{"mask-linear-from":ei()}],"mask-image-linear-to-color":[{"mask-linear-to":ei()}],"mask-image-t-from-pos":[{"mask-t-from":eg()}],"mask-image-t-to-pos":[{"mask-t-to":eg()}],"mask-image-t-from-color":[{"mask-t-from":ei()}],"mask-image-t-to-color":[{"mask-t-to":ei()}],"mask-image-r-from-pos":[{"mask-r-from":eg()}],"mask-image-r-to-pos":[{"mask-r-to":eg()}],"mask-image-r-from-color":[{"mask-r-from":ei()}],"mask-image-r-to-color":[{"mask-r-to":ei()}],"mask-image-b-from-pos":[{"mask-b-from":eg()}],"mask-image-b-to-pos":[{"mask-b-to":eg()}],"mask-image-b-from-color":[{"mask-b-from":ei()}],"mask-image-b-to-color":[{"mask-b-to":ei()}],"mask-image-l-from-pos":[{"mask-l-from":eg()}],"mask-image-l-to-pos":[{"mask-l-to":eg()}],"mask-image-l-from-color":[{"mask-l-from":ei()}],"mask-image-l-to-color":[{"mask-l-to":ei()}],"mask-image-x-from-pos":[{"mask-x-from":eg()}],"mask-image-x-to-pos":[{"mask-x-to":eg()}],"mask-image-x-from-color":[{"mask-x-from":ei()}],"mask-image-x-to-color":[{"mask-x-to":ei()}],"mask-image-y-from-pos":[{"mask-y-from":eg()}],"mask-image-y-to-pos":[{"mask-y-to":eg()}],"mask-image-y-from-color":[{"mask-y-from":ei()}],"mask-image-y-to-color":[{"mask-y-to":ei()}],"mask-image-radial":[{"mask-radial":[H,T]}],"mask-image-radial-from-pos":[{"mask-radial-from":eg()}],"mask-image-radial-to-pos":[{"mask-radial-to":eg()}],"mask-image-radial-from-color":[{"mask-radial-from":ei()}],"mask-image-radial-to-color":[{"mask-radial-to":ei()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":x()}],"mask-image-conic-pos":[{"mask-conic":[C]}],"mask-image-conic-from-pos":[{"mask-conic-from":eg()}],"mask-image-conic-to-pos":[{"mask-conic-to":eg()}],"mask-image-conic-from-color":[{"mask-conic-from":ei()}],"mask-image-conic-to-color":[{"mask-conic-to":ei()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:es()}],"mask-repeat":[{mask:ed()}],"mask-size":[{mask:ec()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",H,T]}],filter:[{filter:["","none",H,T]}],blur:[{blur:eh()}],brightness:[{brightness:[C,H,T]}],contrast:[{contrast:[C,H,T]}],"drop-shadow":[{"drop-shadow":["","none",f,ee,X]}],"drop-shadow-color":[{"drop-shadow":ei()}],grayscale:[{grayscale:["",C,H,T]}],"hue-rotate":[{"hue-rotate":[C,H,T]}],invert:[{invert:["",C,H,T]}],saturate:[{saturate:[C,H,T]}],sepia:[{sepia:["",C,H,T]}],"backdrop-filter":[{"backdrop-filter":["","none",H,T]}],"backdrop-blur":[{"backdrop-blur":eh()}],"backdrop-brightness":[{"backdrop-brightness":[C,H,T]}],"backdrop-contrast":[{"backdrop-contrast":[C,H,T]}],"backdrop-grayscale":[{"backdrop-grayscale":["",C,H,T]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[C,H,T]}],"backdrop-invert":[{"backdrop-invert":["",C,H,T]}],"backdrop-opacity":[{"backdrop-opacity":[C,H,T]}],"backdrop-saturate":[{"backdrop-saturate":[C,H,T]}],"backdrop-sepia":[{"backdrop-sepia":["",C,H,T]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":z()}],"border-spacing-x":[{"border-spacing-x":z()}],"border-spacing-y":[{"border-spacing-y":z()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",H,T]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[C,"initial",H,T]}],ease:[{ease:["linear","initial",h,H,T]}],delay:[{delay:[C,H,T]}],animate:[{animate:["none",y,H,T]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[b,H,T]}],"perspective-origin":[{"perspective-origin":k()}],rotate:[{rotate:ey()}],"rotate-x":[{"rotate-x":ey()}],"rotate-y":[{"rotate-y":ey()}],"rotate-z":[{"rotate-z":ey()}],scale:[{scale:ev()}],"scale-x":[{"scale-x":ev()}],"scale-y":[{"scale-y":ev()}],"scale-z":[{"scale-z":ev()}],"scale-3d":["scale-3d"],skew:[{skew:ew()}],"skew-x":[{"skew-x":ew()}],"skew-y":[{"skew-y":ew()}],transform:[{transform:[H,T,"","none","gpu","cpu"]}],"transform-origin":[{origin:k()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ex()}],"translate-x":[{"translate-x":ex()}],"translate-y":[{"translate-y":ex()}],"translate-z":[{"translate-z":ex()}],"translate-none":["translate-none"],accent:[{accent:ei()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:ei()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",H,T]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":z()}],"scroll-mx":[{"scroll-mx":z()}],"scroll-my":[{"scroll-my":z()}],"scroll-ms":[{"scroll-ms":z()}],"scroll-me":[{"scroll-me":z()}],"scroll-mbs":[{"scroll-mbs":z()}],"scroll-mbe":[{"scroll-mbe":z()}],"scroll-mt":[{"scroll-mt":z()}],"scroll-mr":[{"scroll-mr":z()}],"scroll-mb":[{"scroll-mb":z()}],"scroll-ml":[{"scroll-ml":z()}],"scroll-p":[{"scroll-p":z()}],"scroll-px":[{"scroll-px":z()}],"scroll-py":[{"scroll-py":z()}],"scroll-ps":[{"scroll-ps":z()}],"scroll-pe":[{"scroll-pe":z()}],"scroll-pbs":[{"scroll-pbs":z()}],"scroll-pbe":[{"scroll-pbe":z()}],"scroll-pt":[{"scroll-pt":z()}],"scroll-pr":[{"scroll-pr":z()}],"scroll-pb":[{"scroll-pb":z()}],"scroll-pl":[{"scroll-pl":z()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",H,T]}],fill:[{fill:["none",...ei()]}],"stroke-w":[{stroke:[C,Q,q,L]}],stroke:[{stroke:["none",...ei()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}})},5772:(e,t,r)=>{r.d(t,{default:()=>n.a});var o=r(97651),n=r.n(o)},12590:(e,t)=>{function r({widthInt:e,heightInt:t,blurWidth:o,blurHeight:n,blurDataURL:l,objectFit:a}){let i=o?40*o:e,s=n?40*n:t,d=i&&s?`viewBox='0 0 ${i} ${s}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${d}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${d?"none":"contain"===a?"xMidYMid":"cover"===a?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${l}'/%3E%3C/svg%3E`}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getImageBlurSvg",{enumerable:!0,get:function(){return r}})},17150:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ImageConfigContext",{enumerable:!0,get:function(){return l}});let o=r(73623)._(r(12115)),n=r(55762),l=o.default.createContext(n.imageConfigDefault)},18460:(e,t,r)=>{r.d(t,{F:()=>a});var o=r(29722);let n=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,l=o.$,a=(e,t)=>r=>{var o;if((null==t?void 0:t.variants)==null)return l(e,null==r?void 0:r.class,null==r?void 0:r.className);let{variants:a,defaultVariants:i}=t,s=Object.keys(a).map(e=>{let t=null==r?void 0:r[e],o=null==i?void 0:i[e];if(null===t)return null;let l=n(t)||n(o);return a[e][l]}),d=r&&Object.entries(r).reduce((e,t)=>{let[r,o]=t;return void 0===o||(e[r]=o),e},{});return l(e,s,null==t||null==(o=t.compoundVariants)?void 0:o.reduce((e,t)=>{let{class:r,className:o,...n}=t;return Object.entries(n).every(e=>{let[t,r]=e;return Array.isArray(r)?r.includes({...i,...d}[t]):({...i,...d})[t]===r})?[...e,r,o]:e},[]),null==r?void 0:r.class,null==r?void 0:r.className)}},18857:(e,t)=>{function r(e,t){let r=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e,t.qualities[0]):r}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"findClosestQuality",{enumerable:!0,get:function(){return r}})},21172:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"useMergedRef",{enumerable:!0,get:function(){return n}});let o=r(12115);function n(e,t){let r=(0,o.useRef)(null),n=(0,o.useRef)(null);return(0,o.useCallback)(o=>{if(null===o){let e=r.current;e&&(r.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(r.current=l(e,o)),t&&(n.current=l(t,o))},[e,t])}function l(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>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)},29722:(e,t,r)=>{r.d(t,{$:()=>o});function o(){for(var e,t,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(t=function e(t){var r,o,n="";if("string"==typeof t||"number"==typeof t)n+=t;else if("object"==typeof t)if(Array.isArray(t)){var l=t.length;for(r=0;r<l;r++)t[r]&&(o=e(t[r]))&&(n&&(n+=" "),n+=o)}else for(o in t)t[o]&&(n&&(n+=" "),n+=o);return n}(e))&&(o&&(o+=" "),o+=t);return o}},36095:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return a}});let o=r(18857),n=r(53887);function l({config:e,src:t,width:r,quality:a}){let i=(0,n.getDeploymentId)();if(t.startsWith("/")&&!t.startsWith("//")){let e=t.indexOf("?");if(-1!==e){let r=new URLSearchParams(t.slice(e+1)),o=r.get("dpl");if(o){i=o,r.delete("dpl");let n=r.toString();t=t.slice(0,e)+(n?"?"+n:"")}}}if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let s=(0,o.findClosestQuality)(a,e);return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${s}${t.startsWith("/")&&i?`&dpl=${i}`:""}`}l.__next_img_default=!0;let a=l},38437:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Image",{enumerable:!0,get:function(){return w}});let o=r(73623),n=r(66388),l=r(95155),a=n._(r(12115)),i=o._(r(47650)),s=o._(r(46686)),d=r(95413),c=r(55762),u=r(17150);r(47284);let m=r(60751),f=o._(r(36095)),p=r(21172),b={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0};function g(e,t,r,o,n,l,a){let i=e?.src;e&&e["data-loaded-src"]!==i&&(e["data-loaded-src"]=i,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&n(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let o=!1,n=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>o,isPropagationStopped:()=>n,persist:()=>{},preventDefault:()=>{o=!0,t.preventDefault()},stopPropagation:()=>{n=!0,t.stopPropagation()}})}o?.current&&o.current(e)}}))}function h(e){return a.use?{fetchPriority:e}:{fetchpriority:e}}let y=(0,a.forwardRef)(({src:e,srcSet:t,sizes:r,height:o,width:n,decoding:i,className:s,style:d,fetchPriority:c,placeholder:u,loading:m,unoptimized:f,fill:b,onLoadRef:y,onLoadingCompleteRef:v,setBlurComplete:w,setShowAltText:x,sizesInput:k,onLoad:_,onError:j,...z},P)=>{let O=(0,a.useCallback)(e=>{e&&(j&&(e.src=e.src),e.complete&&g(e,u,y,v,w,f,k))},[e,u,y,v,w,j,f,k]),S=(0,p.useMergedRef)(P,O);return(0,l.jsx)("img",{...z,...h(c),loading:m,width:n,height:o,decoding:i,"data-nimg":b?"fill":"1",className:s,style:d,sizes:r,srcSet:t,src:e,ref:S,onLoad:e=>{g(e.currentTarget,u,y,v,w,f,k)},onError:e=>{x(!0),"empty"!==u&&w(!0),j&&j(e)}})});function v({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...h(t.fetchPriority)};return e&&i.default.preload?(i.default.preload(t.src,r),null):(0,l.jsx)(s.default,{children:(0,l.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let w=(0,a.forwardRef)((e,t)=>{let r=(0,a.useContext)(m.RouterContext),o=(0,a.useContext)(u.ImageConfigContext),n=(0,a.useMemo)(()=>{let e=b||o||c.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>e-t),r=e.deviceSizes.sort((e,t)=>e-t),n=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:n,localPatterns:e.localPatterns}},[o]),{onLoad:i,onLoadingComplete:s}=e,p=(0,a.useRef)(i);(0,a.useEffect)(()=>{p.current=i},[i]);let g=(0,a.useRef)(s);(0,a.useEffect)(()=>{g.current=s},[s]);let[h,w]=(0,a.useState)(!1),[x,k]=(0,a.useState)(!1),{props:_,meta:j}=(0,d.getImgProps)(e,{defaultLoader:f.default,imgConf:n,blurComplete:h,showAltText:x});return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(y,{..._,unoptimized:j.unoptimized,placeholder:j.placeholder,fill:j.fill,onLoadRef:p,onLoadingCompleteRef:g,setBlurComplete:w,setShowAltText:k,sizesInput:e.sizes,ref:t}),j.preload?(0,l.jsx)(v,{isAppRouter:!r,imgAttributes:_}):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)},46686:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var o={default:function(){return b},defaultHead:function(){return u}};for(var n in o)Object.defineProperty(t,n,{enumerable:!0,get:o[n]});let l=r(73623),a=r(66388),i=r(95155),s=a._(r(12115)),d=l._(r(76899)),c=r(75368);function u(){return[(0,i.jsx)("meta",{charSet:"utf-8"},"charset"),(0,i.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function m(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===s.default.Fragment?e.concat(s.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}r(47284);let f=["name","httpEquiv","charSet","itemProp"];function p(e){let t,r,o,n;return e.reduce(m,[]).reverse().concat(u().reverse()).filter((t=new Set,r=new Set,o=new Set,n={},e=>{let l=!0,a=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){a=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?l=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?l=!1:r.add(e.type);break;case"meta":for(let t=0,r=f.length;t<r;t++){let r=f[t];if(e.props.hasOwnProperty(r))if("charSet"===r)o.has(r)?l=!1:o.add(r);else{let t=e.props[r],o=n[r]||new Set;("name"!==r||!a)&&o.has(t)?l=!1:(o.add(t),n[r]=o)}}}return l})).reverse().map((e,t)=>{let r=e.key||t;return s.default.cloneElement(e,{key:r})})}let b=function({children:e}){let t=(0,s.useContext)(c.HeadManagerContext);return(0,i.jsx)(d.default,{reduceComponentsToState:p,headManager:t,children:e})};("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},54850:(e,t,r)=>{let o,n,l;r.d(t,{DX:()=>f});var a=r(12115),i=r.t(a,2);function s(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}var d=r(95155),c=Symbol.for("react.lazy"),u=i[" use ".trim().toString()];function m(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===c&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var f=((l=a.forwardRef((e,t)=>{let{children:r,...o}=e;if(m(r)&&"function"==typeof u&&(r=u(r._payload)),a.isValidElement(r)){var n;let e,l,i=(n=r,(l=(e=Object.getOwnPropertyDescriptor(n.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?n.ref:(l=(e=Object.getOwnPropertyDescriptor(n,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?n.props.ref:n.props.ref||n.ref),d=function(e,t){let r={...t};for(let o in t){let n=e[o],l=t[o];/^on[A-Z]/.test(o)?n&&l?r[o]=(...e)=>{let t=l(...e);return n(...e),t}:n&&(r[o]=n):"style"===o?r[o]={...n,...l}:"className"===o&&(r[o]=[n,l].filter(Boolean).join(" "))}return{...e,...r}}(o,r.props);return r.type!==a.Fragment&&(d.ref=t?function(...e){return t=>{let r=!1,o=e.map(e=>{let o=s(e,t);return r||"function"!=typeof o||(r=!0),o});if(r)return()=>{for(let t=0;t<o.length;t++){let r=o[t];"function"==typeof r?r():s(e[t],null)}}}}(t,i):i),a.cloneElement(r,d)}return a.Children.count(r)>1?a.Children.only(null):null})).displayName="Slot.SlotClone",o=l,(n=a.forwardRef((e,t)=>{let{children:r,...n}=e;m(r)&&"function"==typeof u&&(r=u(r._payload));let l=a.Children.toArray(r),i=l.find(b);if(i){let e=i.props.children,r=l.map(t=>t!==i?t:a.Children.count(e)>1?a.Children.only(null):a.isValidElement(e)?e.props.children:null);return(0,d.jsx)(o,{...n,ref:t,children:a.isValidElement(e)?a.cloneElement(e,void 0,r):null})}return(0,d.jsx)(o,{...n,ref:t,children:r})})).displayName="Slot.Slot",n),p=Symbol("radix.slottable");function b(e){return a.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===p}},55762:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});var r={VALID_LOADERS:function(){return n},imageConfigDefault:function(){return l}};for(var o in r)Object.defineProperty(t,o,{enumerable:!0,get:r[o]});let n=["default","imgix","cloudinary","akamai","custom"],l={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1,customCacheHandler:!1}},60751:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"RouterContext",{enumerable:!0,get:function(){return o}});let o=r(73623)._(r(12115)).default.createContext(null)},73321:(e,t,r)=>{var o=r(74645);r.o(o,"useParams")&&r.d(t,{useParams:function(){return o.useParams}}),r.o(o,"usePathname")&&r.d(t,{usePathname:function(){return o.usePathname}}),r.o(o,"useRouter")&&r.d(t,{useRouter:function(){return o.useRouter}}),r.o(o,"useSearchParams")&&r.d(t,{useSearchParams:function(){return o.useSearchParams}})},76899:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return a}});let o=r(12115),n=o.useLayoutEffect,l=o.useEffect;function a(e){let{headManager:t,reduceComponentsToState:r}=e;function a(){if(t&&t.mountedInstances){let e=o.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return n(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),n(()=>(t&&(t._pendingUpdate=a),()=>{t&&(t._pendingUpdate=a)})),l(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},95413:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getImgProps",{enumerable:!0,get:function(){return d}}),r(47284);let o=r(53887),n=r(12590),l=r(55762),a=["-moz-initial","fill","none","scale-down",void 0];function i(e){return void 0!==e.default}function s(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function d({src:e,sizes:t,unoptimized:r=!1,priority:c=!1,preload:u=!1,loading:m,className:f,quality:p,width:b,height:g,fill:h=!1,style:y,overrideSrc:v,onLoad:w,onLoadingComplete:x,placeholder:k="empty",blurDataURL:_,fetchPriority:j,decoding:z="async",layout:P,objectFit:O,objectPosition:S,lazyBoundary:C,lazyRoot:E,...R},M){var $;let I,N,D,{imgConf:A,showAltText:W,blurComplete:G,defaultLoader:T}=M,q=A||l.imageConfigDefault;if("allSizes"in q)I=q;else{let e=[...q.deviceSizes,...q.imageSizes].sort((e,t)=>e-t),t=q.deviceSizes.sort((e,t)=>e-t),r=q.qualities?.sort((e,t)=>e-t);I={...q,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===T)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let L=R.loader||T;delete R.loader,delete R.srcSet;let F="__next_img_default"in L;if(F){if("custom"===I.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
|
|
3
|
-
Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=L;L=t=>{let{config:r,...o}=t;return e(o)}}if(P){"fill"===P&&(h=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[P];e&&(y={...y,...e});let r={responsive:"100vw",fill:"100vw"}[P];r&&!t&&(t=r)}let U="",B=s(b),V=s(g);if(($=e)&&"object"==typeof $&&(i($)||void 0!==$.src)){let t=i(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(N=t.blurWidth,D=t.blurHeight,_=_||t.blurDataURL,U=t.src,!h)if(B||V){if(B&&!V){let e=B/t.width;V=Math.round(t.height*e)}else if(!B&&V){let e=V/t.height;B=Math.round(t.width*e)}}else B=t.width,V=t.height}let X=!c&&!u&&("lazy"===m||void 0===m);(!(e="string"==typeof e?e:U)||e.startsWith("data:")||e.startsWith("blob:"))&&(r=!0,X=!1),I.unoptimized&&(r=!0),F&&!I.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(r=!0);let H=s(p),Q=Object.assign(h?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:O,objectPosition:S}:{},W?{}:{color:"transparent"},y),J=G||"empty"===k?null:"blur"===k?`url("data:image/svg+xml;charset=utf-8,${(0,n.getImageBlurSvg)({widthInt:B,heightInt:V,blurWidth:N,blurHeight:D,blurDataURL:_||"",objectFit:Q.objectFit})}")`:`url("${k}")`,Y=a.includes(Q.objectFit)?"fill"===Q.objectFit?"100% 100%":"cover":Q.objectFit,Z=J?{backgroundSize:Y,backgroundPosition:Q.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:J}:{},K=function({config:e,src:t,unoptimized:r,width:n,quality:l,sizes:a,loader:i}){if(r){if(t.startsWith("/")&&!t.startsWith("//")){let e=(0,o.getDeploymentId)();if(e){let r=t.indexOf("?");if(-1!==r){let o=new URLSearchParams(t.slice(r+1));o.get("dpl")||(o.append("dpl",e),t=t.slice(0,r)+"?"+o.toString())}else t+=`?dpl=${e}`}}return{src:t,srcSet:void 0,sizes:void 0}}let{widths:s,kind:d}=function({deviceSizes:e,allSizes:t},r,o){if(o){let r=/(^|\s)(1?\d?\d)vw/g,n=[];for(let e;e=r.exec(o);)n.push(parseInt(e[2]));if(n.length){let r=.01*Math.min(...n);return{widths:t.filter(t=>t>=e[0]*r),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof r?{widths:e,kind:"w"}:{widths:[...new Set([r,2*r].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,n,a),c=s.length-1;return{sizes:a||"w"!==d?a:"100vw",srcSet:s.map((r,o)=>`${i({config:e,src:t,quality:l,width:r})} ${"w"===d?r:o+1}${d}`).join(", "),src:i({config:e,src:t,quality:l,width:s[c]})}}({config:I,src:e,unoptimized:r,width:B,quality:H,sizes:t,loader:L}),ee=X?"lazy":m;return{props:{...R,loading:ee,fetchPriority:j,width:B,height:V,decoding:z,className:f,style:{...Q,...Z},sizes:K.sizes,srcSet:K.srcSet,src:v||K.src},meta:{unoptimized:r,preload:u||c,placeholder:k,fill:h}}}},97651:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var o={default:function(){return c},getImageProps:function(){return d}};for(var n in o)Object.defineProperty(t,n,{enumerable:!0,get:o[n]});let l=r(73623),a=r(95413),i=r(38437),s=l._(r(36095));function d(e){let{props:t}=(0,a.getImgProps)(e,{defaultLoader:s.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let c=i.Image}}]);
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[63230],{49470:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>p});var r=n(95155),s=n(64577),a=n(99314),o=n(81402),c=n(73321),u=n(12115),l=n(3765),i=n(98757),d=n(45160),f=n(89239),m=n(60529);let h=`---
|
|
2
|
-
name: my-agent
|
|
3
|
-
description: What this agent does
|
|
4
|
-
model: sonnet
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
Your system prompt here.
|
|
8
|
-
`;function p({params:e}){let{name:t}=(0,u.use)(e),n=(0,c.useSearchParams)(),x=(0,c.useRouter)(),g="new"===t,v=n.get("scope")||"user",w=n.get("cwd")||void 0;(0,l.si)(g?"New Agent":"Edit Agent",{hideActions:!0});let[y,b]=(0,u.useState)(g?"":decodeURIComponent(t)),[N,j]=(0,u.useState)(g?h:""),[C,S]=(0,u.useState)(g?h:""),[k,E]=(0,u.useState)(!g),[R,$]=(0,u.useState)(!1),[L,_]=(0,u.useState)(null),[z,A]=(0,u.useState)(!1),U=N!==C;(0,u.useEffect)(()=>{if(g)return;let e=new URLSearchParams({scope:v});w&&e.set("cwd",w),fetch(`/api/agents/${encodeURIComponent(t)}?${e}`).then(e=>{if(!e.ok)throw Error("Not found");return e.json()}).then(e=>{j(e.content),S(e.content)}).catch(()=>{_("Failed to load agent")}).finally(()=>E(!1))},[g,t,v,w]);let O=(0,u.useCallback)(async()=>{let e=y.trim();if(!e)return void _("Name is required");if(!/^[a-zA-Z0-9_-]+$/.test(e))return void _("Name can only contain letters, numbers, hyphens, and underscores");$(!0),_(null);try{if(!(await fetch(`/api/agents/${encodeURIComponent(e)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({scope:v,cwd:w,content:N})})).ok)throw Error("Save failed");if(S(N),_("Saved"),g){let t=new URLSearchParams({scope:v});w&&t.set("cwd",w),x.replace(`/agents/${encodeURIComponent(e)}?${t}`)}}catch{_("Failed to save")}finally{$(!1)}},[y,N,v,w,g,x]);return k?(0,r.jsx)("div",{className:"flex-1 min-h-0 p-4",children:(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading..."})}):(0,r.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"flex-1 min-w-0",children:g?(0,r.jsx)(m.p,{placeholder:"agent-name",value:y,onChange:e=>b(e.target.value),className:"font-mono"}):(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("span",{className:"font-mono font-bold text-lg",children:y}),(0,r.jsx)(d.E,{variant:"secondary",children:"user"===v?"Global":"Project"})]})}),(0,r.jsxs)(f.$,{size:"sm",variant:"outline",onClick:()=>{let e=document.createElement("textarea");e.value=N,e.style.position="fixed",e.style.opacity="0",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e),A(!0),setTimeout(()=>A(!1),1500)},children:[z?(0,r.jsx)(s.A,{className:"h-4 w-4 mr-1"}):(0,r.jsx)(a.A,{className:"h-4 w-4 mr-1"}),z?"Copied":"Copy"]}),(0,r.jsxs)(f.$,{size:"sm",onClick:O,disabled:R||!g&&!U,children:[(0,r.jsx)(o.A,{className:"h-4 w-4 mr-1"}),R?"Saving...":"Save"]})]}),L&&(0,r.jsx)("p",{className:`text-sm ${"Saved"===L?"text-green-600":"text-destructive"}`,children:L}),(0,r.jsx)(i.B,{value:N,onChange:j,language:"markdown",onSave:O,className:"flex-1"})]})}},60470:(e,t,n)=>{Promise.resolve().then(n.bind(n,49470))},98757:(e,t,n)=>{"use strict";n.d(t,{B:()=>h});var r=n(95155),s=n(13748),a=n(53649),o=n(27071),c=n(74059),u=n(89561),l=n(62465),i=n(12115);let d=u.Lz.theme({"&":{backgroundColor:"transparent"},".cm-gutters":{backgroundColor:"transparent",borderRight:"1px solid hsl(var(--border))"}});function f(){return!("u"<typeof document)&&document.documentElement.classList.contains("dark")}function m(e){switch(e){case"markdown":default:return(0,s.wD)();case"yaml":return(0,a.oQ)()}}function h({value:e,onChange:t,language:n,readOnly:s,className:a,onSave:p}){let x=(0,i.useRef)(null),g=(0,i.useRef)(null),v=(0,i.useRef)(new o.xx),w=(0,i.useRef)(new o.xx),y=(0,i.useRef)(new o.xx),b=(0,i.useRef)(t),N=(0,i.useRef)(p),j=(0,i.useRef)(e);return b.current=t,N.current=p,(0,i.useEffect)(()=>{if(!x.current)return;let e=o.$t.create({doc:j.current,extensions:[l.oQ,u.Lz.lineWrapping,v.current.of(f()?c.bM:d),w.current.of(m(n)),y.current.of(o.$t.readOnly.of(!!s)),u.w4.of([{key:"Mod-s",run:()=>(N.current?.(),!0)}]),u.Lz.updateListener.of(e=>{if(e.docChanged){let t=e.state.doc.toString();j.current=t,b.current(t)}})]}),t=new u.Lz({state:e,parent:x.current});return g.current=t,()=>{t.destroy(),g.current=null}},[]),(0,i.useEffect)(()=>{let t=g.current;t&&e!==j.current&&(j.current=e,t.dispatch({changes:{from:0,to:t.state.doc.length,insert:e}}))},[e]),(0,i.useEffect)(()=>{let e=g.current;if(!e)return;let t=new MutationObserver(()=>{e.dispatch({effects:v.current.reconfigure(f()?c.bM:d)})});return t.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>t.disconnect()},[]),(0,i.useEffect)(()=>{let e=g.current;e&&e.dispatch({effects:w.current.reconfigure(m(n))})},[n]),(0,i.useEffect)(()=>{let e=g.current;e&&e.dispatch({effects:y.current.reconfigure(o.$t.readOnly.of(!!s))})},[s]),(0,r.jsx)("div",{ref:x,className:`overflow-auto rounded-md border bg-background text-sm [&_.cm-editor]:min-h-[200px] [&_.cm-editor.cm-focused]:outline-none ${a||""}`})}}},e=>{e.O(0,[6079,989,41487,6802,3765,28441,93794,77358],()=>e(e.s=60470)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[35130],{49194:(e,s,t)=>{Promise.resolve().then(t.bind(t,86646))},86646:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>h});var n=t(95155),a=t(2125),c=t(65738),l=t(73321),r=t(12115),o=t(3765),i=t(45160),d=t(89239),m=t(81477),u=t(42763);function h(){(0,o.si)("Agents",{hideActions:!0});let e="u">typeof localStorage&&localStorage.getItem("cockpit-agents-cwd")||void 0,{agents:s,loading:t,deleteAgent:c}=function(e){let[s,t]=(0,r.useState)([]),[n,a]=(0,r.useState)(!0),c=(0,r.useCallback)(()=>{a(!0);let s=new URLSearchParams;e&&s.set("cwd",e),fetch(`/api/agents?${s}`).then(e=>e.json()).then(e=>t(e.agents)).catch(()=>t([])).finally(()=>a(!1))},[e]);(0,r.useEffect)(()=>{c()},[c]);let l=(0,r.useCallback)(async(s,t)=>{let n=new URLSearchParams({scope:t});"project"===t&&e&&n.set("cwd",e);try{if((await fetch(`/api/agents/${encodeURIComponent(s)}?${n}`,{method:"DELETE"})).ok)return c(),!0;return!1}catch{return!1}},[e,c]);return{agents:s,loading:n,refresh:c,deleteAgent:l}}(e),i=(0,l.useRouter)(),[h,p]=(0,r.useState)(null),[j,f]=(0,r.useState)(!1),g=s.filter(e=>"user"===e.scope),N=s.filter(e=>"project"===e.scope);function b(s){f(!1);let t=new URLSearchParams({scope:s});"project"===s&&e&&t.set("cwd",e),i.push(`/agents/new?${t}`)}function v(s,t){let n=new URLSearchParams({scope:t});"project"===t&&e&&n.set("cwd",e),i.push(`/agents/${encodeURIComponent(s)}?${n}`)}async function w(){h&&(await c(h.name,h.scope),p(null))}return(0,n.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("div",{}),(0,n.jsxs)(d.$,{size:"sm",onClick:()=>f(!0),children:[(0,n.jsx)(a.A,{className:"h-4 w-4 mr-1"}),"New Agent"]})]}),t&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading agents..."}),!t&&0===s.length&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No custom agents found. Create one to get started."}),g.length>0&&(0,n.jsxs)(m.Zp,{children:[(0,n.jsx)(m.aR,{children:(0,n.jsx)(m.ZB,{className:"text-base",children:"Global"})}),(0,n.jsx)(m.Wu,{className:"space-y-1",children:g.map(e=>(0,n.jsx)(x,{name:e.name,scope:"user",description:e.description,onClick:()=>v(e.name,"user"),onDelete:()=>p({name:e.name,scope:"user"})},e.name))})]}),N.length>0&&(0,n.jsxs)(m.Zp,{children:[(0,n.jsx)(m.aR,{children:(0,n.jsx)(m.ZB,{className:"text-base",children:"Project"})}),(0,n.jsx)(m.Wu,{className:"space-y-1",children:N.map(e=>(0,n.jsx)(x,{name:e.name,scope:"project",description:e.description,onClick:()=>v(e.name,"project"),onDelete:()=>p({name:e.name,scope:"project"})},e.name))})]}),(0,n.jsx)(u.lG,{open:j,onOpenChange:f,children:(0,n.jsxs)(u.Cf,{children:[(0,n.jsx)(u.c7,{children:(0,n.jsx)(u.L3,{children:"New Agent"})}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:"Where should this agent be saved?"}),(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsx)(d.$,{variant:"outline",className:"flex-1",onClick:()=>b("user"),children:"Global"}),(0,n.jsx)(d.$,{variant:"outline",className:"flex-1",onClick:()=>b("project"),disabled:!e,children:"Project"})]})]})}),(0,n.jsx)(u.lG,{open:!!h,onOpenChange:()=>p(null),children:(0,n.jsxs)(u.Cf,{children:[(0,n.jsx)(u.c7,{children:(0,n.jsx)(u.L3,{children:"Delete Agent"})}),(0,n.jsxs)("p",{className:"text-sm text-muted-foreground mb-4",children:["Delete ",(0,n.jsx)("span",{className:"font-mono font-bold",children:h?.name}),"? This cannot be undone."]}),(0,n.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,n.jsx)(d.$,{variant:"outline",onClick:()=>p(null),children:"Cancel"}),(0,n.jsx)(d.$,{variant:"destructive",onClick:w,children:"Delete"})]})]})})]})}function x({name:e,scope:s,description:t,onClick:a,onDelete:l}){return(0,n.jsxs)("div",{className:"flex items-center gap-3 rounded px-2 py-2 hover:bg-muted transition-colors",children:[(0,n.jsxs)("button",{type:"button",className:"flex-1 text-left min-w-0",onClick:a,children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("span",{className:"font-mono font-bold text-sm",children:e}),(0,n.jsx)(i.E,{variant:"secondary",className:"text-[10px]",children:"user"===s?"Global":"Project"})]}),t&&(0,n.jsx)("p",{className:"text-xs text-muted-foreground truncate mt-0.5",children:t})]}),(0,n.jsx)("button",{type:"button",className:"shrink-0 p-1 rounded hover:bg-destructive/10 text-muted-foreground hover:text-destructive transition-colors",onClick:e=>{e.stopPropagation(),l()},children:(0,n.jsx)(c.A,{className:"h-4 w-4"})})]})}}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=49194)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[909],{167:(e,t,s)=>{Promise.resolve().then(s.bind(s,81323))},81323:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>c});var n=s(95155),i=s(73321),l=s(3765),r=s(6935),u=s(12115);function c(){let e=(0,i.useSearchParams)(),t=e.get("cwd")||"",s=e.get("sessionId");(0,l.si)("Changes"),(0,l.mq)(t||void 0);let{sessionId:c}=function(e,t){let[s,n]=(0,u.useState)(t||null),[i,l]=(0,u.useState)(!t);return(0,u.useEffect)(()=>{if(t){n(t),l(!1);return}let s=!1;return l(!0),Promise.all([fetch("/api/sessions").then(e=>e.ok?e.json():null),fetch("/api/sessions/pinned").then(e=>e.ok?e.json():null)]).then(([t,i])=>{if(s)return;let r=t?.groups||[],u=new Set(i?.pinned||[]),c=r.find(t=>t.cwd===e);if(!c){n(null),l(!1);return}let o=c.sessions.filter(e=>u.has(e.id)||"running"===e.status).sort((e,t)=>t.lastActiveAt-e.lastActiveAt);n(o.length>0?o[0].id:null),l(!1)}).catch(()=>{s||(n(null),l(!1))}),()=>{s=!0}},[e,t]),{sessionId:s,loading:i}}(t,s);return t?(0,n.jsx)(r.V,{cwd:t,sessionId:c}):(0,n.jsx)("div",{className:"flex items-center justify-center h-full text-sm text-muted-foreground",children:"No working directory specified."})}}},e=>{e.O(0,[989,41487,31010,3765,48273,6935,28441,93794,77358],()=>e(e.s=167)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[32805],{54669:(e,t,r)=>{Promise.resolve().then(r.bind(r,55165))},55165:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>h});var n=r(95155),s=r(64577),c=r(99314),a=r(81402),l=r(73321),o=r(12115),u=r(3765),d=r(98757),i=r(45160),f=r(89239);let m={user:{title:"~/.claude/CLAUDE.md",badge:"Global"},project:{title:"CLAUDE.md",badge:"Project"},"project-hidden":{title:".claude/CLAUDE.md",badge:"Project"}};function h(){let e=(0,l.useSearchParams)(),t=e.get("scope")||"user",r=e.get("cwd")||void 0,h=m[t];(0,u.si)("Edit CLAUDE.md",{hideActions:!0});let[x,p]=(0,o.useState)(""),[g,v]=(0,o.useState)(""),[b,j]=(0,o.useState)(!0),[w,y]=(0,o.useState)(!1),[C,E]=(0,o.useState)(null),[N,k]=(0,o.useState)(!1),S=x!==g;(0,o.useEffect)(()=>{let e=new URLSearchParams({scope:t});r&&e.set("cwd",r),fetch(`/api/claude-md?${e}`).then(e=>e.json()).then(e=>{p(e.content),v(e.content)}).catch(()=>E("Failed to load")).finally(()=>j(!1))},[t,r]);let L=(0,o.useCallback)(async()=>{y(!0),E(null);try{if(!(await fetch("/api/claude-md",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({scope:t,cwd:r,content:x})})).ok)throw Error("Save failed");v(x),E("Saved")}catch{E("Failed to save")}finally{y(!1)}},[t,r,x]);return b?(0,n.jsx)("div",{className:"flex-1 min-h-0 p-4",children:(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading..."})}):(0,n.jsxs)("div",{className:"flex-1 min-h-0 flex flex-col p-4 gap-3",children:[(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:[(0,n.jsx)("span",{className:"font-mono font-bold text-sm truncate",children:h.title}),(0,n.jsx)(i.E,{variant:"secondary",className:"shrink-0",children:h.badge})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[C&&(0,n.jsx)("p",{className:`text-sm ${"Saved"===C?"text-green-600":"text-destructive"}`,children:C}),(0,n.jsxs)(f.$,{size:"sm",variant:"outline",onClick:()=>{let e=document.createElement("textarea");e.value=x,e.style.position="fixed",e.style.opacity="0",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e),k(!0),setTimeout(()=>k(!1),1500)},children:[N?(0,n.jsx)(s.A,{className:"h-4 w-4 mr-1"}):(0,n.jsx)(c.A,{className:"h-4 w-4 mr-1"}),N?"Copied":"Copy"]}),(0,n.jsxs)(f.$,{size:"sm",onClick:L,disabled:w||!S,children:[(0,n.jsx)(a.A,{className:"h-4 w-4 mr-1"}),w?"Saving...":"Save"]})]})]}),(0,n.jsx)("div",{className:"flex-1 min-h-0",children:(0,n.jsx)(d.B,{value:x,onChange:e=>{p(e),E(null)},language:"markdown",onSave:L,className:"h-full [&_.cm-editor]:min-h-[400px]"})})]})}},98757:(e,t,r)=>{"use strict";r.d(t,{B:()=>h});var n=r(95155),s=r(13748),c=r(53649),a=r(27071),l=r(74059),o=r(89561),u=r(62465),d=r(12115);let i=o.Lz.theme({"&":{backgroundColor:"transparent"},".cm-gutters":{backgroundColor:"transparent",borderRight:"1px solid hsl(var(--border))"}});function f(){return!("u"<typeof document)&&document.documentElement.classList.contains("dark")}function m(e){switch(e){case"markdown":default:return(0,s.wD)();case"yaml":return(0,c.oQ)()}}function h({value:e,onChange:t,language:r,readOnly:s,className:c,onSave:x}){let p=(0,d.useRef)(null),g=(0,d.useRef)(null),v=(0,d.useRef)(new a.xx),b=(0,d.useRef)(new a.xx),j=(0,d.useRef)(new a.xx),w=(0,d.useRef)(t),y=(0,d.useRef)(x),C=(0,d.useRef)(e);return w.current=t,y.current=x,(0,d.useEffect)(()=>{if(!p.current)return;let e=a.$t.create({doc:C.current,extensions:[u.oQ,o.Lz.lineWrapping,v.current.of(f()?l.bM:i),b.current.of(m(r)),j.current.of(a.$t.readOnly.of(!!s)),o.w4.of([{key:"Mod-s",run:()=>(y.current?.(),!0)}]),o.Lz.updateListener.of(e=>{if(e.docChanged){let t=e.state.doc.toString();C.current=t,w.current(t)}})]}),t=new o.Lz({state:e,parent:p.current});return g.current=t,()=>{t.destroy(),g.current=null}},[]),(0,d.useEffect)(()=>{let t=g.current;t&&e!==C.current&&(C.current=e,t.dispatch({changes:{from:0,to:t.state.doc.length,insert:e}}))},[e]),(0,d.useEffect)(()=>{let e=g.current;if(!e)return;let t=new MutationObserver(()=>{e.dispatch({effects:v.current.reconfigure(f()?l.bM:i)})});return t.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>t.disconnect()},[]),(0,d.useEffect)(()=>{let e=g.current;e&&e.dispatch({effects:b.current.reconfigure(m(r))})},[r]),(0,d.useEffect)(()=>{let e=g.current;e&&e.dispatch({effects:j.current.reconfigure(a.$t.readOnly.of(!!s))})},[s]),(0,n.jsx)("div",{ref:p,className:`overflow-auto rounded-md border bg-background text-sm [&_.cm-editor]:min-h-[200px] [&_.cm-editor.cm-focused]:outline-none ${c||""}`})}}},e=>{e.O(0,[6079,989,41487,6802,3765,28441,93794,77358],()=>e(e.s=54669)),_N_E=e.O()}]);
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[36994],{96326:(e,t,n)=>{Promise.resolve().then(n.bind(n,98334))},98334:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>p});var r=n(95155),s=n(64577),a=n(99314),o=n(81402),c=n(73321),u=n(12115),d=n(3765),l=n(98757),i=n(45160),m=n(89239),f=n(60529);let h=`---
|
|
2
|
-
description: What this command does
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
Your command prompt here. Use $ARGUMENTS for user input.
|
|
6
|
-
`;function p({params:e}){let{name:t}=(0,u.use)(e),n=(0,c.useSearchParams)(),x=(0,c.useRouter)(),v="new"===t,g=n.get("scope")||"user",w=n.get("cwd")||void 0;(0,d.si)(v?"New Command":"Edit Command",{hideActions:!0});let[y,b]=(0,u.useState)(v?"":decodeURIComponent(t)),[N,C]=(0,u.useState)(v?h:""),[j,S]=(0,u.useState)(v?h:""),[E,R]=(0,u.useState)(!v),[k,$]=(0,u.useState)(!1),[L,U]=(0,u.useState)(null),[_,z]=(0,u.useState)(!1),A=N!==j;(0,u.useEffect)(()=>{if(v)return;let e=new URLSearchParams({scope:g});w&&e.set("cwd",w),fetch(`/api/commands/${encodeURIComponent(t)}?${e}`).then(e=>{if(!e.ok)throw Error("Not found");return e.json()}).then(e=>{C(e.content),S(e.content)}).catch(()=>{U("Failed to load command")}).finally(()=>R(!1))},[v,t,g,w]);let O=(0,u.useCallback)(async()=>{let e=y.trim();if(!e)return void U("Name is required");if(!/^[a-zA-Z0-9_-]+$/.test(e))return void U("Name can only contain letters, numbers, hyphens, and underscores");$(!0),U(null);try{if(!(await fetch(`/api/commands/${encodeURIComponent(e)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({scope:g,cwd:w,content:N})})).ok)throw Error("Save failed");if(S(N),U("Saved"),v){let t=new URLSearchParams({scope:g});w&&t.set("cwd",w),x.replace(`/commands/${encodeURIComponent(e)}?${t}`)}}catch{U("Failed to save")}finally{$(!1)}},[y,N,g,w,v,x]);return E?(0,r.jsx)("div",{className:"flex-1 min-h-0 p-4",children:(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading..."})}):(0,r.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"flex-1 min-w-0",children:v?(0,r.jsx)(f.p,{placeholder:"command-name",value:y,onChange:e=>b(e.target.value),className:"font-mono"}):(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("span",{className:"font-mono font-bold text-lg",children:y}),(0,r.jsx)(i.E,{variant:"secondary",children:"user"===g?"Global":"Project"})]})}),(0,r.jsxs)(m.$,{size:"sm",variant:"outline",onClick:()=>{let e=document.createElement("textarea");e.value=N,e.style.position="fixed",e.style.opacity="0",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e),z(!0),setTimeout(()=>z(!1),1500)},children:[_?(0,r.jsx)(s.A,{className:"h-4 w-4 mr-1"}):(0,r.jsx)(a.A,{className:"h-4 w-4 mr-1"}),_?"Copied":"Copy"]}),(0,r.jsxs)(m.$,{size:"sm",onClick:O,disabled:k||!v&&!A,children:[(0,r.jsx)(o.A,{className:"h-4 w-4 mr-1"}),k?"Saving...":"Save"]})]}),L&&(0,r.jsx)("p",{className:`text-sm ${"Saved"===L?"text-green-600":"text-destructive"}`,children:L}),(0,r.jsx)(l.B,{value:N,onChange:C,language:"markdown",onSave:O,className:"flex-1"})]})}},98757:(e,t,n)=>{"use strict";n.d(t,{B:()=>h});var r=n(95155),s=n(13748),a=n(53649),o=n(27071),c=n(74059),u=n(89561),d=n(62465),l=n(12115);let i=u.Lz.theme({"&":{backgroundColor:"transparent"},".cm-gutters":{backgroundColor:"transparent",borderRight:"1px solid hsl(var(--border))"}});function m(){return!("u"<typeof document)&&document.documentElement.classList.contains("dark")}function f(e){switch(e){case"markdown":default:return(0,s.wD)();case"yaml":return(0,a.oQ)()}}function h({value:e,onChange:t,language:n,readOnly:s,className:a,onSave:p}){let x=(0,l.useRef)(null),v=(0,l.useRef)(null),g=(0,l.useRef)(new o.xx),w=(0,l.useRef)(new o.xx),y=(0,l.useRef)(new o.xx),b=(0,l.useRef)(t),N=(0,l.useRef)(p),C=(0,l.useRef)(e);return b.current=t,N.current=p,(0,l.useEffect)(()=>{if(!x.current)return;let e=o.$t.create({doc:C.current,extensions:[d.oQ,u.Lz.lineWrapping,g.current.of(m()?c.bM:i),w.current.of(f(n)),y.current.of(o.$t.readOnly.of(!!s)),u.w4.of([{key:"Mod-s",run:()=>(N.current?.(),!0)}]),u.Lz.updateListener.of(e=>{if(e.docChanged){let t=e.state.doc.toString();C.current=t,b.current(t)}})]}),t=new u.Lz({state:e,parent:x.current});return v.current=t,()=>{t.destroy(),v.current=null}},[]),(0,l.useEffect)(()=>{let t=v.current;t&&e!==C.current&&(C.current=e,t.dispatch({changes:{from:0,to:t.state.doc.length,insert:e}}))},[e]),(0,l.useEffect)(()=>{let e=v.current;if(!e)return;let t=new MutationObserver(()=>{e.dispatch({effects:g.current.reconfigure(m()?c.bM:i)})});return t.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>t.disconnect()},[]),(0,l.useEffect)(()=>{let e=v.current;e&&e.dispatch({effects:w.current.reconfigure(f(n))})},[n]),(0,l.useEffect)(()=>{let e=v.current;e&&e.dispatch({effects:y.current.reconfigure(o.$t.readOnly.of(!!s))})},[s]),(0,r.jsx)("div",{ref:x,className:`overflow-auto rounded-md border bg-background text-sm [&_.cm-editor]:min-h-[200px] [&_.cm-editor.cm-focused]:outline-none ${a||""}`})}}},e=>{e.O(0,[6079,989,41487,6802,3765,28441,93794,77358],()=>e(e.s=96326)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[96494],{36456:(e,s,n)=>{"use strict";n.r(s),n.d(s,{default:()=>h});var t=n(95155),a=n(2125),c=n(65738),l=n(73321),o=n(12115),r=n(3765),i=n(45160),d=n(89239),m=n(81477),u=n(42763);function h(){(0,r.si)("Commands",{hideActions:!0});let e="u">typeof localStorage&&localStorage.getItem("cockpit-agents-cwd")||void 0,{commands:s,loading:n,deleteCommand:c}=function(e){let[s,n]=(0,o.useState)([]),[t,a]=(0,o.useState)(!0),c=(0,o.useCallback)(()=>{a(!0);let s=new URLSearchParams;e&&s.set("cwd",e),fetch(`/api/commands?${s}`).then(e=>e.json()).then(e=>n(e.commands)).catch(()=>n([])).finally(()=>a(!1))},[e]);(0,o.useEffect)(()=>{c()},[c]);let l=(0,o.useCallback)(async(s,n)=>{let t=new URLSearchParams({scope:n});"project"===n&&e&&t.set("cwd",e);try{if((await fetch(`/api/commands/${encodeURIComponent(s)}?${t}`,{method:"DELETE"})).ok)return c(),!0;return!1}catch{return!1}},[e,c]);return{commands:s,loading:t,refresh:c,deleteCommand:l}}(e),i=(0,l.useRouter)(),[h,p]=(0,o.useState)(null),[j,f]=(0,o.useState)(!1),N=s.filter(e=>"user"===e.scope),C=s.filter(e=>"project"===e.scope);function b(s){f(!1);let n=new URLSearchParams({scope:s});"project"===s&&e&&n.set("cwd",e),i.push(`/commands/new?${n}`)}function g(s,n){let t=new URLSearchParams({scope:n});"project"===n&&e&&t.set("cwd",e),i.push(`/commands/${encodeURIComponent(s)}?${t}`)}async function v(){h&&(await c(h.name,h.scope),p(null))}return(0,t.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("div",{}),(0,t.jsxs)(d.$,{size:"sm",onClick:()=>f(!0),children:[(0,t.jsx)(a.A,{className:"h-4 w-4 mr-1"}),"New Command"]})]}),n&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading commands..."}),!n&&0===s.length&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:"No custom commands found. Create one to get started."}),N.length>0&&(0,t.jsxs)(m.Zp,{children:[(0,t.jsx)(m.aR,{children:(0,t.jsx)(m.ZB,{className:"text-base",children:"Global"})}),(0,t.jsx)(m.Wu,{className:"space-y-1",children:N.map(e=>(0,t.jsx)(x,{name:e.name,scope:"user",description:e.description,onClick:()=>g(e.name,"user"),onDelete:()=>p({name:e.name,scope:"user"})},e.name))})]}),C.length>0&&(0,t.jsxs)(m.Zp,{children:[(0,t.jsx)(m.aR,{children:(0,t.jsx)(m.ZB,{className:"text-base",children:"Project"})}),(0,t.jsx)(m.Wu,{className:"space-y-1",children:C.map(e=>(0,t.jsx)(x,{name:e.name,scope:"project",description:e.description,onClick:()=>g(e.name,"project"),onDelete:()=>p({name:e.name,scope:"project"})},e.name))})]}),(0,t.jsx)(u.lG,{open:j,onOpenChange:f,children:(0,t.jsxs)(u.Cf,{children:[(0,t.jsx)(u.c7,{children:(0,t.jsx)(u.L3,{children:"New Command"})}),(0,t.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:"Where should this command be saved?"}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(d.$,{variant:"outline",className:"flex-1",onClick:()=>b("user"),children:"Global"}),(0,t.jsx)(d.$,{variant:"outline",className:"flex-1",onClick:()=>b("project"),disabled:!e,children:"Project"})]})]})}),(0,t.jsx)(u.lG,{open:!!h,onOpenChange:()=>p(null),children:(0,t.jsxs)(u.Cf,{children:[(0,t.jsx)(u.c7,{children:(0,t.jsx)(u.L3,{children:"Delete Command"})}),(0,t.jsxs)("p",{className:"text-sm text-muted-foreground mb-4",children:["Delete ",(0,t.jsx)("span",{className:"font-mono font-bold",children:h?.name}),"? This cannot be undone."]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,t.jsx)(d.$,{variant:"outline",onClick:()=>p(null),children:"Cancel"}),(0,t.jsx)(d.$,{variant:"destructive",onClick:v,children:"Delete"})]})]})})]})}function x({name:e,scope:s,description:n,onClick:a,onDelete:l}){return(0,t.jsxs)("div",{className:"flex items-center gap-3 rounded px-2 py-2 hover:bg-muted transition-colors",children:[(0,t.jsxs)("button",{type:"button",className:"flex-1 text-left min-w-0",onClick:a,children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"font-mono font-bold text-sm",children:e}),(0,t.jsx)(i.E,{variant:"secondary",className:"text-[10px]",children:"user"===s?"Global":"Project"})]}),n&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground truncate mt-0.5",children:n})]}),(0,t.jsx)("button",{type:"button",className:"shrink-0 p-1 rounded hover:bg-destructive/10 text-muted-foreground hover:text-destructive transition-colors",onClick:e=>{e.stopPropagation(),l()},children:(0,t.jsx)(c.A,{className:"h-4 w-4"})})]})}},89850:(e,s,n)=>{Promise.resolve().then(n.bind(n,36456))}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=89850)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[79851],{25182:(e,t,s)=>{"use strict";s.d(t,{A:()=>i});let i=(0,s(99537).A)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},88737:(e,t,s)=>{Promise.resolve().then(s.bind(s,89255))},89255:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>l});var i=s(95155),r=s(73321),c=s(3765),d=s(26126);function l(){let e=(0,r.useSearchParams)(),t=e.get("cwd")||"",s=e.get("file");return((0,c.si)("Files"),(0,c.mq)(t||void 0),t)?(0,i.jsx)(d.L,{cwd:t,initialFile:s}):(0,i.jsx)("div",{className:"flex items-center justify-center h-full text-sm text-muted-foreground",children:"No working directory specified."})}},94088:(e,t,s)=>{"use strict";s.d(t,{A:()=>i});let i=(0,s(99537).A)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]])}},e=>{e.O(0,[989,41487,3765,26126,28441,93794,77358],()=>e(e.s=88737)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[40992],{64025:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>d});var o=s(95155),n=s(73321),a=s(3765),r=s(45160),l=s(81477),c=s(12115);let i={global:"Global",project:"Project","project-local":"Local"},h=new Set(["UserPromptSubmit","PreToolUse","PermissionRequest","Stop","SubagentStop"]);function d(){(0,a.si)("Hooks",{hideActions:!0});let e="u">typeof localStorage&&localStorage.getItem("cockpit-agents-cwd")||void 0,{hooks:t,loading:s}=function(e){let[t,s]=(0,c.useState)([]),[o,n]=(0,c.useState)([]),[a,r]=(0,c.useState)(!0),l=(0,c.useCallback)(()=>{r(!0);let t=new URLSearchParams;e&&t.set("cwd",e),fetch(`/api/hooks?${t}`).then(e=>e.json()).then(e=>{s(e.hooks),n(e.events)}).catch(()=>s([])).finally(()=>r(!1))},[e]);(0,c.useEffect)(()=>{l()},[l]);let i=(0,c.useCallback)(async(t,s,o)=>{let n=new URLSearchParams;e&&n.set("cwd",e);try{if((await fetch(`/api/hooks?${n}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({filePath:t,event:s,hooks:o})})).ok)return l(),!0;return!1}catch{return!1}},[e,l]);return{hooks:t,events:o,loading:a,refresh:l,saveHooks:i}}(e),d=(0,n.useRouter)(),m={};for(let e of t){let t=e.scope;m[t]||(m[t]=[]),m[t].push(e)}return(0,o.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[(0,o.jsxs)("div",{className:"flex items-center justify-between",children:[(0,o.jsx)("div",{}),(0,o.jsx)("button",{className:"inline-flex items-center rounded-md bg-primary px-3 py-1.5 text-sm font-medium text-primary-foreground hover:bg-primary/90",onClick:function(){let t=new URLSearchParams;e&&t.set("cwd",e),d.push(`/hooks/new?${t}`)},children:"New Hook"})]}),s&&(0,o.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading hooks..."}),!s&&0===t.length&&(0,o.jsx)("p",{className:"text-sm text-muted-foreground",children:"No hooks configured. Hooks let you run commands, HTTP requests, or prompts at key points in the agent lifecycle."}),Object.entries(m).map(([t,s])=>(0,o.jsxs)(l.Zp,{children:[(0,o.jsx)(l.aR,{children:(0,o.jsx)(l.ZB,{className:"text-base",children:i[t]||t})}),(0,o.jsx)(l.Wu,{className:"space-y-1",children:s.map(t=>(0,o.jsx)("button",{type:"button",className:"flex w-full items-center gap-3 rounded px-2 py-2 hover:bg-muted transition-colors text-left",onClick:()=>{var s;let o;return s=t.event,o=new URLSearchParams({scope:t.scope,filePath:t.filePath}),void(e&&o.set("cwd",e),d.push(`/hooks/${encodeURIComponent(s)}?${o}`))},children:(0,o.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,o.jsxs)("div",{className:"flex items-center gap-2",children:[(0,o.jsx)("span",{className:"font-mono font-bold text-sm",children:t.event}),h.has(t.event)&&(0,o.jsx)(r.E,{variant:"outline",className:"text-[10px]",children:"can block"})]}),(0,o.jsxs)("p",{className:"text-xs text-muted-foreground mt-0.5",children:[t.hooks.length," hook",1!==t.hooks.length?"s":""," — ",t.hooks.map(e=>e.type).join(", ")]})]})},`${t.event}-${t.scope}`))})]},t))]})}},70532:(e,t,s)=>{Promise.resolve().then(s.bind(s,64025))}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=70532)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[58346],{11012:(e,s,t)=>{"use strict";t.d(s,{A:()=>a});let a=(0,t(99537).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},14577:(e,s,t)=>{"use strict";t.d(s,{A:()=>a});let a=(0,t(99537).A)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]])},35484:(e,s,t)=>{"use strict";t.d(s,{A:()=>a});let a=(0,t(99537).A)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]])},54722:(e,s,t)=>{Promise.resolve().then(t.bind(t,96218))},75796:(e,s,t)=>{"use strict";t.d(s,{A:()=>a});let a=(0,t(99537).A)("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]])},96218:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>f});var a=t(95155),i=t(35484),n=t(11012),l=t(14577),c=t(92571),r=t(31966),d=t(75796),h=t(65738),x=t(73321),o=t(12115),m=t(3765),u=t(64233),j=t(89239),p=t(42763);function f(){(0,m.si)("Inbox",{hideActions:!0});let{id:e}=(0,x.useParams)(),s=(0,x.useRouter)(),[t,f]=(0,o.useState)(null),[y,k]=(0,o.useState)(!0),[v,N]=(0,o.useState)(!1),g=(0,o.useCallback)(async()=>{let s=await fetch("/api/inbox");if(s.ok){let t=((await s.json()).messages||[]).find(s=>s.id===e);f(t||null),t&&!t.read&&await fetch(`/api/inbox/${t.id}`,{method:"PATCH"})}k(!1)},[e]);(0,o.useEffect)(()=>{g()},[g]);let b=async()=>{await fetch(`/api/inbox/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({read:!1})}),s.push("/inbox")},w=async()=>{await fetch(`/api/inbox/${e}`,{method:"DELETE"}),s.push("/inbox")};return y?(0,a.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,a.jsx)(c.A,{className:"h-5 w-5 animate-spin text-muted-foreground"})}):t?(0,a.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)(j.$,{variant:"ghost",size:"sm",onClick:()=>s.push("/inbox"),children:[(0,a.jsx)(r.A,{className:"h-4 w-4 mr-1"}),"Back"]}),(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsxs)(j.$,{variant:"ghost",size:"sm",onClick:b,children:[(0,a.jsx)(d.A,{className:"h-4 w-4 mr-1"}),"Mark unread"]}),(0,a.jsxs)(j.$,{variant:"ghost",size:"sm",className:"text-destructive hover:text-destructive",onClick:()=>N(!0),children:[(0,a.jsx)(h.A,{className:"h-4 w-4 mr-1"}),"Delete"]})]})]}),(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[function(e){switch(e){case"error":return(0,a.jsx)(i.A,{className:"h-5 w-5 text-destructive shrink-0"});case"warning":return(0,a.jsx)(n.A,{className:"h-5 w-5 text-yellow-500 shrink-0"});default:return(0,a.jsx)(l.A,{className:"h-5 w-5 text-blue-500 shrink-0"})}}(t.priority),(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-lg font-semibold",children:t.title}),(0,a.jsxs)("div",{className:"flex items-center gap-2 mt-1 text-xs text-muted-foreground",children:[t.jobName&&(0,a.jsx)("span",{children:t.jobName}),(0,a.jsx)("span",{children:new Date(t.createdAt).toLocaleString()})]})]})]}),(0,a.jsx)("div",{className:"border-t pt-4",children:(0,a.jsx)(u.Y,{content:t.body,variant:"full"})}),(0,a.jsx)(p.lG,{open:v,onOpenChange:()=>N(!1),children:(0,a.jsxs)(p.Cf,{children:[(0,a.jsx)(p.c7,{children:(0,a.jsx)(p.L3,{children:"Delete Message"})}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:"Delete this message? This cannot be undone."}),(0,a.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,a.jsx)(j.$,{variant:"outline",onClick:()=>N(!1),children:"Cancel"}),(0,a.jsx)(j.$,{variant:"destructive",onClick:w,children:"Delete"})]})]})})]}):(0,a.jsxs)("div",{className:"flex-1 p-4",children:[(0,a.jsxs)(j.$,{variant:"ghost",size:"sm",onClick:()=>s.push("/inbox"),children:[(0,a.jsx)(r.A,{className:"h-4 w-4 mr-1"}),"Back"]}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground mt-8 text-center",children:"Message not found."})]})}}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=54722)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[10576],{11012:(e,s,t)=>{"use strict";t.d(s,{A:()=>a});let a=(0,t(99537).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},14577:(e,s,t)=>{"use strict";t.d(s,{A:()=>a});let a=(0,t(99537).A)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]])},34454:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>j});var a=t(95155),n=t(35484),r=t(11012),i=t(14577);let l=(0,t(99537).A)("check-check",[["path",{d:"M18 6 7 17l-5-5",key:"116fxf"}],["path",{d:"m22 10-7.5 7.5L13 16",key:"ke71qq"}]]);var c=t(65738),d=t(92571),o=t(64577),h=t(75796),x=t(73321),m=t(12115),u=t(3765),p=t(89239),f=t(42763);function j(){(0,u.si)("Inbox",{hideActions:!0});let e=(0,x.useRouter)(),[s,t]=(0,m.useState)([]),[j,g]=(0,m.useState)(!0),[y,N]=(0,m.useState)(null),[k,v]=(0,m.useState)(!1),b=(0,m.useCallback)(async()=>{let e=await fetch("/api/inbox");e.ok&&t((await e.json()).messages||[]),g(!1)},[]);(0,m.useEffect)(()=>{b()},[b]);let w=async(e,s)=>{e.stopPropagation();let a=!s.read;await fetch(`/api/inbox/${s.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({read:a})}),t(e=>e.map(e=>e.id===s.id?{...e,read:a}:e))},C=async()=>{y&&(await fetch(`/api/inbox/${y}`,{method:"DELETE"}),t(e=>e.filter(e=>e.id!==y)),N(null))},A=async()=>{await fetch("/api/inbox",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"mark_all_read"})}),t(e=>e.map(e=>({...e,read:!0})))},$=async()=>{await fetch("/api/inbox",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"clear"})}),t([]),v(!1)},M=s.filter(e=>!e.read).length;return(0,a.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:s.length>0&&(0,a.jsxs)(a.Fragment,{children:[s.length," message",1!==s.length?"s":"",M>0&&` (${M} unread)`]})}),s.length>0&&(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[M>0&&(0,a.jsxs)(p.$,{variant:"outline",size:"sm",onClick:A,children:[(0,a.jsx)(l,{className:"h-3.5 w-3.5 mr-1"}),"Mark all read"]}),(0,a.jsxs)(p.$,{variant:"outline",size:"sm",onClick:()=>v(!0),children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 mr-1"}),"Clear all"]})]})]}),j&&(0,a.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,a.jsx)(d.A,{className:"h-5 w-5 animate-spin text-muted-foreground"})}),!j&&0===s.length&&(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center py-16 text-center",children:[(0,a.jsx)(o.A,{className:"h-12 w-12 text-muted-foreground/50 mb-4"}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"No messages."}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Messages from scheduled jobs will appear here."})]}),(0,a.jsx)("div",{className:"space-y-2",children:s.map(s=>(0,a.jsx)("div",{className:`rounded-lg border bg-card transition-colors cursor-pointer hover:bg-accent/50 ${!s.read?"border-l-2 border-l-blue-500":""}`,role:"button",onClick:()=>e.push(`/inbox/${s.id}`),children:(0,a.jsxs)("div",{className:"flex items-center gap-3 p-4",children:[function(e){switch(e){case"error":return(0,a.jsx)(n.A,{className:"h-4 w-4 text-destructive shrink-0"});case"warning":return(0,a.jsx)(r.A,{className:"h-4 w-4 text-yellow-500 shrink-0"});default:return(0,a.jsx)(i.A,{className:"h-4 w-4 text-blue-500 shrink-0"})}}(s.priority),(0,a.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,a.jsx)("div",{className:"flex items-center gap-2",children:(0,a.jsx)("span",{className:`text-sm truncate ${!s.read?"font-semibold":""}`,children:s.title})}),(0,a.jsxs)("div",{className:"flex items-center gap-2 mt-0.5 text-xs text-muted-foreground",children:[s.jobName&&(0,a.jsx)("span",{children:s.jobName}),(0,a.jsx)("span",{children:function(e){let s=Math.floor((Date.now()-e)/6e4);if(s<1)return"just now";if(s<60)return`${s}m ago`;let t=Math.floor(s/60);if(t<24)return`${t}h ago`;let a=Math.floor(t/24);return`${a}d ago`}(s.createdAt)})]})]}),(0,a.jsxs)("div",{className:"flex items-center shrink-0",children:[(0,a.jsx)(p.$,{variant:"ghost",size:"icon",className:"h-8 w-8 text-muted-foreground hover:text-foreground",title:s.read?"Mark as unread":"Mark as read",onClick:e=>w(e,s),children:s.read?(0,a.jsx)(h.A,{className:"h-3.5 w-3.5"}):(0,a.jsx)(o.A,{className:"h-3.5 w-3.5"})}),(0,a.jsx)(p.$,{variant:"ghost",size:"icon",className:"h-8 w-8 text-muted-foreground hover:text-destructive",onClick:e=>{var t;return t=s.id,void(e.stopPropagation(),N(t))},children:(0,a.jsx)(c.A,{className:"h-3.5 w-3.5"})})]})]})},s.id))}),(0,a.jsx)(f.lG,{open:!!y,onOpenChange:()=>N(null),children:(0,a.jsxs)(f.Cf,{children:[(0,a.jsx)(f.c7,{children:(0,a.jsx)(f.L3,{children:"Delete Message"})}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:"Delete this message? This cannot be undone."}),(0,a.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,a.jsx)(p.$,{variant:"outline",onClick:()=>N(null),children:"Cancel"}),(0,a.jsx)(p.$,{variant:"destructive",onClick:C,children:"Delete"})]})]})}),(0,a.jsx)(f.lG,{open:k,onOpenChange:()=>v(!1),children:(0,a.jsxs)(f.Cf,{children:[(0,a.jsx)(f.c7,{children:(0,a.jsx)(f.L3,{children:"Clear All Messages"})}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:"Delete all inbox messages? This cannot be undone."}),(0,a.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,a.jsx)(p.$,{variant:"outline",onClick:()=>v(!1),children:"Cancel"}),(0,a.jsx)(p.$,{variant:"destructive",onClick:$,children:"Clear All"})]})]})})]})}},35484:(e,s,t)=>{"use strict";t.d(s,{A:()=>a});let a=(0,t(99537).A)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]])},46728:(e,s,t)=>{Promise.resolve().then(t.bind(t,34454))},75796:(e,s,t)=>{"use strict";t.d(s,{A:()=>a});let a=(0,t(99537).A)("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]])}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=46728)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[58179],{10895:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>k});var l=t(95155),n=t(9005),a=t(31966),i=t(2125),r=t(73321),o=t(12115),d=t(3765),c=t(41158),m=t(89239),u=t(81477),x=t(60529),h=t(8081),p=t(84949);let f=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],j=["Read","Write","Edit","Bash","Bash git","Bash npm","Bash ls","Grep","Glob","Agent","WebFetch","WebSearch"],y={low:"Low",medium:"Medium",high:"High",xhigh:"XHigh",max:"Max"},v=(0,h.zQ)("sonnet")?.modelId||"",g="w-full rounded-md border bg-background px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-ring";function b({checked:e,onChange:s}){return(0,l.jsx)("button",{type:"button",role:"switch","aria-checked":e,onClick:()=>s(!e),className:`relative inline-flex h-5 w-9 shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors ${e?"bg-primary":"bg-muted"}`,children:(0,l.jsx)("span",{className:`pointer-events-none inline-block h-4 w-4 rounded-full bg-background shadow-lg transition-transform ${e?"translate-x-4":"translate-x-0"}`})})}function N({value:e,onChange:s,onRemove:t,canRemove:a}){let i="simple"===e.type;return(0,l.jsxs)("div",{className:"border rounded-md p-3 space-y-2",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{className:"flex gap-2",children:[(0,l.jsx)(m.$,{variant:i?"default":"outline",size:"sm",onClick:()=>s({type:"simple",frequency:"daily",time:"09:00"}),children:"Simple"}),(0,l.jsx)(m.$,{variant:i?"outline":"default",size:"sm",onClick:()=>s({type:"cron",expression:"0 9 * * *"}),children:"Cron"})]}),a&&(0,l.jsx)("button",{type:"button",onClick:t,className:"text-muted-foreground hover:text-destructive",children:(0,l.jsx)(n.A,{className:"h-4 w-4"})})]}),i?(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsxs)("select",{value:e.frequency,onChange:t=>s({...e,frequency:t.target.value}),className:g,children:[(0,l.jsx)("option",{value:"hourly",children:"Hourly"}),(0,l.jsx)("option",{value:"daily",children:"Daily"}),(0,l.jsx)("option",{value:"weekly",children:"Weekly"}),(0,l.jsx)("option",{value:"monthly",children:"Monthly"})]}),"hourly"!==e.frequency&&(0,l.jsx)(x.p,{type:"time",value:e.time||"09:00",onChange:t=>s({...e,time:t.target.value})}),"weekly"===e.frequency&&(0,l.jsx)("select",{value:e.dayOfWeek??1,onChange:t=>s({...e,dayOfWeek:Number(t.target.value)}),className:g,children:f.map((e,s)=>(0,l.jsx)("option",{value:s,children:e},e))}),"monthly"===e.frequency&&(0,l.jsx)(x.p,{type:"number",min:1,max:31,value:e.dayOfMonth??1,onChange:t=>s({...e,dayOfMonth:Number(t.target.value)}),placeholder:"Day of month"})]}):(0,l.jsx)(x.p,{value:e.expression,onChange:e=>s({type:"cron",expression:e.target.value}),placeholder:"0 9 * * 1-5",className:"font-mono"}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:(0,p.Bg)(e)})]})}function k(){let e=(0,r.useParams)(),s=(0,r.useSearchParams)(),t=e.id,f="new"===t,k=f?s.get("from"):null,w=f?s.get("cwd"):null,C=(0,r.useRouter)();(0,d.si)(k?"Duplicate Job":f?"New Job":"Edit Job",{hideActions:!0});let[S,$]=(0,o.useState)(""),[M,W]=(0,o.useState)(w||""),[A,z]=(0,o.useState)(""),[E,T]=(0,o.useState)(!0),[D,I]=(0,o.useState)([{type:"simple",frequency:"daily",time:"09:00"}]),[O,B]=(0,o.useState)(v),[R,P]=(0,o.useState)("200k"),[Z,L]=(0,o.useState)("medium"),[q,J]=(0,o.useState)("anthropic"),[F,U]=(0,o.useState)("stream"),[_,H]=(0,o.useState)(30),[K,X]=(0,o.useState)(!1),[G,Q]=(0,o.useState)([]),[V,Y]=(0,o.useState)(""),[ee,es]=(0,o.useState)([]),[et,el]=(0,o.useState)({}),[en,ea]=(0,o.useState)({}),[ei,er]=(0,o.useState)(new Set),[eo,ed]=(0,o.useState)([]),[ec,em]=(0,o.useState)(!1),[eu,ex]=(0,o.useState)(90),[eh,ep]=(0,o.useState)(!1),[ef,ej]=(0,o.useState)([]),[ey,ev]=(0,o.useState)([]),[eg,eb]=(0,o.useState)([]),[eN,ek]=(0,o.useState)(!1),[ew,eC]=(0,o.useState)(!1),[eS,e$]=(0,o.useState)(!f||!!k),eM="anthropic"===q,eW=eg.find(e=>e.id===q),eA=eM&&O?(0,h.bs)(O):null,ez=eA?.alias||null,eE=ez?(0,h.r5)(ez):[],eT=eE.length>1,eD=!eM&&eW?eW.models.find(e=>e.modelId===O):null,eI=(0,o.useMemo)(()=>eM?eA?.contextSizes??["200k"]:eD?.contextSizes??["200k"],[eM,eA,eD]);(0,o.useEffect)(()=>{eI.includes(R)||P(eI[0]??"200k")},[eI,R]);let eO=(()=>{if(!eM&&eD)return eD.effortLevels;let e=O.replace(/\[.*\]$/,"");for(let s of eg){let t=s.models.find(s=>s.modelId===e);if(t&&t.effortLevels.length>0)return t.effortLevels}return eA?(0,h.iz)(eA):[]})(),eB=j.filter(e=>!G.includes(e)),eR=eg.filter(e=>!e.isBuiltin);function eP(e){let s=(0,h.zQ)(e);s&&(J("anthropic"),B(s.modelId),P("200k"),L((0,h.Mi)(s)||""))}function eZ(e){let s=e.trim();s&&!G.includes(s)&&Q([...G,s]),Y("")}let eL=(0,o.useCallback)((e,s)=>{$(s?`${e.name} (copy)`:e.name),W(e.cwd),z(e.prompt),T(e.enabled),I((0,p.KU)(e));let t=e.model||"",l=t.replace(/\[.*\]$/,""),n=l.indexOf(":");if(n>0)J(l.slice(0,n)),B(l.slice(n+1));else{J("anthropic");let e=(0,h.AX)(l);B(e?.modelId||v)}let a=/\[1m\]$/i.test(t);P(e.contextSize??(a?"1m":"200k"));let i=(0,h.AX)(l);L(e.thinkingLevel||(0,h.Mi)(i)||""),H(e.maxDurationMinutes??30),X(e.bypassPermissions??!1),Q(e.allowedTools||[]),es(e.mcpServers||[]),el(e.mcpToolFilters||{}),em(e.skipIfMissed??!1),ex(e.retentionDays??90),ep(e.inboxOutput??!1),ej(e.notifyProviders||[]),U(e.runtime||"stream")},[]),eq=(0,o.useCallback)(async()=>{let e=k||(f?null:t);if(e)try{let s=await fetch(`/api/jobs/${e}`);if(!s.ok)return void C.push("/jobs");let t=await s.json();eL(t.job,!!k)}finally{e$(!1)}},[t,f,k,C,eL]);async function eJ(){eC(!0);let e=O;!eM&&q&&(e=`${q}:${O}`);let s={name:S,cwd:M,prompt:A,enabled:E,schedule:D[0],schedules:D,model:e,contextSize:R,thinkingLevel:Z||void 0,maxDurationMinutes:_,bypassPermissions:K,allowedTools:G,mcpServers:ee,mcpToolFilters:et,skipIfMissed:ec,retentionDays:eu,inboxOutput:eh,notifyProviders:ef,runtime:F};try{let e=f?"/api/jobs":`/api/jobs/${t}`,l=f?"POST":"PUT",n=await fetch(e,{method:l,headers:{"Content-Type":"application/json"},body:JSON.stringify(s)});if(n.ok){let e=await n.json(),s=f?e.job.id:t;C.push(`/jobs/${s}`)}}finally{eC(!1)}}return((0,o.useEffect)(()=>{eq()},[eq]),(0,o.useEffect)(()=>{let e=M?`?cwd=${encodeURIComponent(M)}`:"";fetch(`/api/jobs/mcp-discover${e}`).then(e=>e.json()).then(e=>ed(e.servers)).catch(()=>ed([]))},[M]),(0,o.useEffect)(()=>{fetch("/api/notifications").then(e=>e.json()).then(e=>ev((e.providers||[]).filter(e=>e.enabled))).catch(()=>ev([]))},[]),(0,o.useEffect)(()=>{fetch("/api/providers").then(e=>e.json()).then(e=>{Array.isArray(e)&&eb(e)}).catch(()=>{})},[]),eS)?(0,l.jsx)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4",children:(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading..."})}):(0,l.jsx)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4",children:(0,l.jsxs)("div",{className:"max-w-2xl mx-auto space-y-4 pb-8",children:[(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)(m.$,{variant:"ghost",size:"icon",onClick:()=>C.push(f?"/jobs":`/jobs/${t}`),children:(0,l.jsx)(a.A,{className:"h-4 w-4"})}),(0,l.jsx)("h2",{className:"font-semibold",children:k?"Duplicate Job":f?"New Job":"Edit Job"})]}),(0,l.jsx)(u.Zp,{children:(0,l.jsxs)(u.Wu,{className:"pt-6 space-y-4",children:[(0,l.jsxs)("div",{className:"space-y-1.5",children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Name"}),(0,l.jsx)(x.p,{value:S,onChange:e=>$(e.target.value),placeholder:"Weekly dependency update"})]}),(0,l.jsxs)("div",{className:"space-y-1.5",children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Prompt"}),(0,l.jsx)("textarea",{value:A,onChange:e=>z(e.target.value),placeholder:"Check for outdated dependencies and create a PR updating them...",className:"w-full min-h-[120px] rounded-md border bg-background px-3 py-2 text-sm font-mono resize-y focus:outline-none focus:ring-2 focus:ring-ring"})]})]})}),(0,l.jsxs)(u.Zp,{children:[(0,l.jsx)(u.aR,{className:"pb-2",children:(0,l.jsx)(u.ZB,{className:"text-sm font-medium",children:"Working Directory"})}),(0,l.jsxs)(u.Wu,{className:"space-y-2",children:[(0,l.jsxs)("div",{className:"flex gap-2",children:[(0,l.jsx)(x.p,{value:M,onChange:e=>W(e.target.value),placeholder:"Leave empty for scratchpad",className:"flex-1"}),(0,l.jsx)(m.$,{variant:"outline",size:"sm",onClick:()=>ek(!0),children:"Browse"})]}),!M&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:"Uses ~/.cockpit/jobs as a temporary scratchpad directory"}),eN&&(0,l.jsx)("div",{className:"border rounded-md p-3",children:(0,l.jsx)(c.K,{onSelect:e=>{W(e),ek(!1)},onCancel:()=>ek(!1)})})]})]}),(0,l.jsxs)(u.Zp,{children:[(0,l.jsx)(u.aR,{className:"pb-2",children:(0,l.jsx)(u.ZB,{className:"text-sm font-medium",children:"Schedule"})}),(0,l.jsxs)(u.Wu,{className:"space-y-3",children:[D.map((e,s)=>(0,l.jsx)(N,{value:e,onChange:e=>I(D.map((t,l)=>l===s?e:t)),onRemove:()=>I(D.filter((e,t)=>t!==s)),canRemove:D.length>1},s)),(0,l.jsxs)("button",{type:"button",onClick:()=>I([...D,{type:"simple",frequency:"daily",time:"09:00"}]),className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-primary transition-colors",children:[(0,l.jsx)(i.A,{className:"h-3 w-3"}),"Add schedule"]})]})]}),(0,l.jsxs)(u.Zp,{children:[(0,l.jsx)(u.aR,{className:"pb-2",children:(0,l.jsx)(u.ZB,{className:"text-sm font-medium",children:"Model"})}),(0,l.jsxs)(u.Wu,{className:"space-y-1",children:[(0,l.jsxs)("div",{className:"flex flex-col gap-1.5 px-2 py-2 text-sm",children:[(0,l.jsx)("span",{children:"Provider"}),(0,l.jsxs)("select",{value:q,onChange:e=>{if("anthropic"===e.target.value)(0,h.bs)(O)?J("anthropic"):eP("sonnet");else{var s=e.target.value;J(s);let t=eg.find(e=>e.id===s);if(t&&t.models.length>0){let e=t.models[0];B(e.modelId),P("200k"),L(e.defaultEffort||(e.effortLevels.length>0?e.effortLevels[0]:""))}}},className:g,children:[(0,l.jsx)("option",{value:"anthropic",children:"Anthropic"}),eR.map(e=>(0,l.jsx)("option",{value:e.id,children:e.name},e.id))]})]}),eM&&(0,l.jsxs)("div",{className:"flex items-center justify-between px-2 py-2 text-sm",children:[(0,l.jsx)("span",{children:"Model"}),(0,l.jsx)("div",{className:"flex gap-1 flex-wrap justify-end",children:["haiku","sonnet","opus"].map(e=>(0,l.jsx)(m.$,{variant:ez===e?"default":"outline",size:"sm",onClick:()=>eP(e),children:e.charAt(0).toUpperCase()+e.slice(1)},e))})]}),!eM&&eW&&(0,l.jsxs)("div",{className:"flex items-center justify-between px-2 py-2 text-sm",children:[(0,l.jsx)("span",{children:"Model"}),(0,l.jsx)("div",{className:"flex gap-1 flex-wrap justify-end",children:eW.models.map(e=>(0,l.jsx)(m.$,{variant:O===e.modelId?"default":"outline",size:"sm",onClick:()=>{B(e.modelId),P("200k"),L(e.defaultEffort||(e.effortLevels.length>0?e.effortLevels[0]:""))},children:e.displayName},e.modelId))})]}),eM&&eT&&(0,l.jsxs)("div",{className:"flex items-center justify-between px-2 py-2 text-sm",children:[(0,l.jsx)("span",{children:"Version"}),(0,l.jsx)("div",{className:"flex gap-1 flex-wrap justify-end",children:eE.map(e=>(0,l.jsx)(m.$,{variant:eA?.version===e.version?"default":"outline",size:"sm",onClick:()=>(function(e){if(!ez)return;let s=(0,h.r5)(ez).find(s=>s.version===e);if(s){B(s.modelId);let e=(()=>{for(let e of eg){let t=e.models.find(e=>e.modelId===s.modelId);if(t)return t.effortLevels}return[]})(),t=e.length>0?e:(0,h.iz)(s);Z&&!t.includes(Z)&&L((0,h.Mi)(s)||"")}})(e.version),children:e.version},e.version))})]}),eI.length>=2&&(0,l.jsxs)("div",{className:"flex items-center justify-between px-2 py-2 text-sm",children:[(0,l.jsx)("span",{children:"Context"}),(0,l.jsx)("div",{className:"flex gap-1",children:eI.map(e=>(0,l.jsx)(m.$,{variant:R===e?"default":"outline",size:"sm",onClick:()=>P(e),children:h.XR[e].label},e))})]}),eO.length>0&&(0,l.jsxs)("div",{className:"flex items-center justify-between px-2 py-2 text-sm",children:[(0,l.jsx)("span",{children:"Thinking"}),(0,l.jsx)("div",{className:"flex gap-1 flex-wrap justify-end",children:eO.map(e=>(0,l.jsx)(m.$,{variant:Z===e?"default":"outline",size:"sm",onClick:()=>L(e),children:y[e]},e))})]})]})]}),(0,l.jsxs)(u.Zp,{children:[(0,l.jsx)(u.aR,{className:"pb-2",children:(0,l.jsx)(u.ZB,{className:"text-sm font-medium",children:"Permissions"})}),(0,l.jsxs)(u.Wu,{className:"space-y-4",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Bypass Permissions"}),K&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:"All tool permissions will be auto-approved"})]}),(0,l.jsx)(b,{checked:K,onChange:X})]}),!K&&(0,l.jsxs)("div",{className:"space-y-2 border-t pt-4",children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Allowed Tools"}),G.length>0&&(0,l.jsx)("div",{className:"flex flex-wrap gap-1.5",children:G.map(e=>(0,l.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs px-2 py-1 rounded-md bg-primary/10 text-primary font-mono",children:[e,(0,l.jsx)("button",{type:"button",onClick:()=>{Q(G.filter(s=>s!==e))},className:"hover:text-destructive",children:(0,l.jsx)(n.A,{className:"h-3 w-3"})})]},e))}),(0,l.jsxs)("div",{className:"flex gap-2",children:[(0,l.jsx)(x.p,{value:V,onChange:e=>Y(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),eZ(V))},placeholder:"Type tool name and press Enter",className:"flex-1 font-mono"}),(0,l.jsx)(m.$,{variant:"outline",size:"sm",onClick:()=>eZ(V),disabled:!V.trim(),children:"Add"})]}),eB.length>0&&(0,l.jsx)("div",{className:"flex flex-wrap gap-1",children:eB.map(e=>(0,l.jsxs)("button",{type:"button",onClick:()=>eZ(e),className:"text-xs px-2 py-0.5 rounded border border-dashed border-muted-foreground/30 text-muted-foreground hover:border-primary hover:text-primary transition-colors",children:["+ ",e]},e))}),0===G.length&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:"No tools permitted. Add tools this job is allowed to use."})]})]})]}),(0,l.jsxs)(u.Zp,{children:[(0,l.jsx)(u.aR,{className:"pb-2",children:(0,l.jsx)(u.ZB,{className:"text-sm font-medium",children:"MCP Servers"})}),(0,l.jsxs)(u.Wu,{className:"space-y-2",children:[0===eo.length&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:"No MCP servers found. Configure servers in Settings."}),eo.length>0&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{className:"flex flex-wrap gap-1.5",children:eo.map(e=>{let s=ee.includes(e);return(0,l.jsx)("button",{type:"button",onClick:()=>{if(s){es(ee.filter(s=>s!==e));let{[e]:s,...t}=et;el(t),er(s=>{let t=new Set(s);return t.delete(e),t})}else es([...ee,e])},className:`inline-flex items-center gap-1 text-xs px-2.5 py-1 rounded-md font-mono transition-colors ${s?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-accent"}`,children:e},e)})}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:0===ee.length?"No servers enabled. Select servers to activate.":`${ee.length} enabled.`}),ee.map(e=>{let s=et[e]||[],t=ei.has(e),a=en[e]||"";return(0,l.jsxs)("div",{className:"border rounded-md p-2 space-y-2",children:[(0,l.jsxs)("button",{type:"button",onClick:()=>er(s=>{let t=new Set(s);return t.has(e)?t.delete(e):t.add(e),t}),className:"w-full flex items-center justify-between text-xs text-muted-foreground hover:text-primary",children:[(0,l.jsx)("span",{className:"font-mono",children:e}),(0,l.jsx)("span",{children:0===s.length?"All tools":`${s.length} tool${1===s.length?"":"s"} filtered`})]}),t&&(0,l.jsxs)("div",{className:"space-y-2 pt-1",children:[s.length>0&&(0,l.jsx)("div",{className:"flex flex-wrap gap-1.5",children:s.map(t=>(0,l.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs px-2 py-1 rounded-md bg-primary/10 text-primary font-mono",children:[t,(0,l.jsx)("button",{type:"button",onClick:()=>{let l=s.filter(e=>e!==t);if(0===l.length){let{[e]:s,...t}=et;el(t)}else el({...et,[e]:l})},className:"hover:text-destructive",children:(0,l.jsx)(n.A,{className:"h-3 w-3"})})]},t))}),(0,l.jsxs)("div",{className:"flex gap-2",children:[(0,l.jsx)(x.p,{value:a,onChange:s=>ea({...en,[e]:s.target.value}),onKeyDown:t=>{if("Enter"===t.key){t.preventDefault();let l=a.trim();l&&!s.includes(l)&&(el({...et,[e]:[...s,l]}),ea({...en,[e]:""}))}},placeholder:"Tool name or server:tool",className:"flex-1 font-mono text-xs"}),(0,l.jsx)(m.$,{variant:"outline",size:"sm",onClick:()=>{let t=a.trim();t&&!s.includes(t)&&(el({...et,[e]:[...s,t]}),ea({...en,[e]:""}))},disabled:!a.trim(),children:"Add"})]}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:"Leave empty to allow all tools. For proxy servers, use server:tool format."})]})]},e)})]})]})]}),(0,l.jsxs)(u.Zp,{children:[(0,l.jsx)(u.aR,{className:"pb-2",children:(0,l.jsx)(u.ZB,{className:"text-sm font-medium",children:"Execution"})}),(0,l.jsxs)(u.Wu,{className:"space-y-4",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Runtime"}),(0,l.jsxs)("div",{className:"flex gap-1",children:[(0,l.jsx)(m.$,{variant:"stream"===F?"default":"outline",size:"sm",onClick:()=>U("stream"),children:"Stream"}),(0,l.jsx)(m.$,{variant:"pty"===F?"default":"outline",size:"sm",onClick:()=>U("pty"),children:"PTY"})]})]}),(0,l.jsxs)("div",{className:"space-y-1.5",children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Max Duration (minutes)"}),(0,l.jsx)(x.p,{type:"number",min:1,value:_,onChange:e=>H(Number(e.target.value))})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Retry missed runs"}),(0,l.jsx)(b,{checked:!ec,onChange:e=>em(!e)})]}),(0,l.jsxs)("div",{className:"space-y-1.5",children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Audit log retention (days)"}),(0,l.jsx)(x.p,{type:"number",min:1,value:eu,onChange:e=>ex(Number(e.target.value))})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Enabled"}),(0,l.jsx)(b,{checked:E,onChange:T})]})]})]}),(0,l.jsxs)(u.Zp,{children:[(0,l.jsx)(u.aR,{className:"pb-2",children:(0,l.jsx)(u.ZB,{className:"text-sm font-medium",children:"Output"})}),(0,l.jsxs)(u.Wu,{className:"space-y-4",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"Send to Inbox"}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5",children:"The agent will format its final output as a structured message delivered to your Cockpit inbox."})]}),(0,l.jsx)(b,{checked:eh,onChange:ep})]}),eh&&ey.length>0&&(0,l.jsxs)("div",{className:"mt-4 pt-4 border-t",children:[(0,l.jsx)("label",{className:"text-sm font-medium",children:"External notifications"}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5 mb-2",children:"Also send to these providers when a message is delivered."}),(0,l.jsx)("div",{className:"space-y-1.5",children:ey.map(e=>(0,l.jsxs)("label",{className:"flex items-center gap-2 text-sm cursor-pointer",children:[(0,l.jsx)("input",{type:"checkbox",checked:ef.includes(e.id),onChange:s=>ej(t=>s.target.checked?[...t,e.id]:t.filter(s=>s!==e.id)),className:"rounded border-input"}),(0,l.jsx)("span",{children:e.name}),(0,l.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",e.type,")"]})]},e.id))})]})]})]}),(0,l.jsxs)("div",{className:"flex gap-2",children:[(0,l.jsx)(m.$,{onClick:eJ,disabled:ew||!S||!A,children:ew?"Saving...":"Save"}),(0,l.jsx)(m.$,{variant:"outline",onClick:()=>C.push(f?"/jobs":`/jobs/${t}`),children:"Cancel"})]})]})})}},39071:(e,s,t)=>{Promise.resolve().then(t.bind(t,10895))},84949:(e,s,t)=>{"use strict";function l(e,s,t){let l=[];for(let n of e.split(",")){let e=n.match(/^(.+)\/(\d+)$/),a=e?Number.parseInt(e[2],10):1,i=e?e[1]:n;if("*"===i)for(let e=s;e<=t;e+=a)l.push(e);else if(i.includes("-")){let[e,s]=i.split("-"),t=Number.parseInt(e,10),n=Number.parseInt(s,10);for(let e=t;e<=n;e+=a)l.push(e)}else l.push(Number.parseInt(i,10))}return l}function n(e){if("cron"===e.type)return`cron: ${e.expression}`;let s=e.time||"00:00";switch(e.frequency){case"hourly":return`Every hour at :${s.split(":")[1]||"00"}`;case"daily":return`Daily at ${s}`;case"weekly":return`Weekly on ${["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][e.dayOfWeek??0]} at ${s}`;case"monthly":return`Monthly on day ${e.dayOfMonth??1} at ${s}`}}function a(e){return e.schedules?.length?e.schedules:[e.schedule]}function i(e){return e.map(n).join("; ")}function r(e,s){let t=null;for(let n of e){let e=function(e,s){let t=function(e){let s=e.trim().split(/\s+/);if(5!==s.length)throw Error(`Invalid cron expression: expected 5 fields, got ${s.length}`);return{minute:l(s[0],0,59),hour:l(s[1],0,23),dayOfMonth:l(s[2],1,31),month:l(s[3],1,12),dayOfWeek:l(s[4],0,6),domWild:"*"===s[2],dowWild:"*"===s[4]}}("cron"===e.type?e.expression:function(e){let[s,t]=(e.time||"00:00").split(":").map(Number);switch(e.frequency){case"hourly":return`${t} * * * *`;case"daily":return`${t} ${s} * * *`;case"weekly":return`${t} ${s} * * ${e.dayOfWeek??0}`;case"monthly":return`${t} ${s} ${e.dayOfMonth??1} * *`}}(e)),n=new Date(s.getTime());n.setSeconds(0,0),n.setMinutes(n.getMinutes()+1);for(let e=0;e<525960;e++){if(t.minute.includes(n.getMinutes())&&t.hour.includes(n.getHours())&&t.dayOfMonth.includes(n.getDate())&&t.month.includes(n.getMonth()+1)&&t.dayOfWeek.includes(n.getDay()))return n;n.setMinutes(n.getMinutes()+1)}return new Date(s.getTime()+864e5)}(n,s);(!t||e.getTime()<t.getTime())&&(t=new Date(e.getTime()))}return t??new Date(s.getTime()+864e5)}t.d(s,{Bg:()=>n,JH:()=>i,KU:()=>a,ay:()=>r})}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=39071)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[39410],{2330:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>b});var n=t(95155),a=t(94088),r=t(12363),l=t(31966),i=t(18986),c=t(92571),d=t(36619),o=t(65738),u=t(73321),m=t(12115),h=t(3765),x=t(45160),p=t(89239),f=t(81477),j=t(42763),g=t(67032),N=t(8081),y=t(84949);function w({prompt:e}){let[s,t]=(0,m.useState)(!1),l=e.split("\n"),i=l.length>8,c=i&&!s?l.slice(0,8).join("\n"):e;return(0,n.jsxs)(f.Zp,{children:[(0,n.jsx)(f.aR,{className:"pb-2",children:(0,n.jsx)(f.ZB,{className:"text-sm font-medium",children:"Prompt"})}),(0,n.jsxs)(f.Wu,{children:[(0,n.jsx)("pre",{className:"text-sm whitespace-pre-wrap break-all font-mono bg-muted rounded p-3",children:c}),i&&(0,n.jsxs)("button",{onClick:()=>t(!s),className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground mt-2 transition-colors",children:[s?(0,n.jsx)(a.A,{className:"h-3 w-3"}):(0,n.jsx)(r.A,{className:"h-3 w-3"}),s?"Show less":`Show all ${l.length} lines`]})]})]})}function b(){let e=(0,u.useParams)().id,s=(0,u.useRouter)(),[t,a]=(0,m.useState)(null),[r,b]=(0,m.useState)(!0),[v,$]=(0,m.useState)(!1),[k,M]=(0,m.useState)(!1);(0,h.si)(t?.name||"Job",{hideActions:!0});let{runs:A,loading:D,loadingMore:C,hasMore:E,refresh:S,loadMore:T}=(0,g.Jm)(e),O=(0,m.useCallback)(async()=>{try{let t=await fetch(`/api/jobs/${e}`);if(!t.ok)return void s.push("/jobs");let n=await t.json();a(n.job)}finally{b(!1)}},[e,s]);async function W(){$(!0),await fetch(`/api/jobs/${e}/trigger`,{method:"POST"}),$(!1),S()}async function z(){(await fetch(`/api/jobs/${e}`,{method:"DELETE"})).ok&&s.push("/jobs")}return((0,m.useEffect)(()=>{O()},[O]),r||!t)?(0,n.jsx)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4",children:(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading..."})}):(0,n.jsx)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4",children:(0,n.jsxs)("div",{className:"max-w-2xl mx-auto space-y-4 pb-8",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(p.$,{variant:"ghost",size:"icon",onClick:()=>s.push("/jobs"),children:(0,n.jsx)(l.A,{className:"h-4 w-4"})}),(0,n.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("h2",{className:"font-semibold truncate",children:t.name}),t.enabled?(0,n.jsx)(x.E,{variant:"default",children:"Active"}):(0,n.jsx)(x.E,{variant:"secondary",children:"Disabled"})]}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground",children:(0,y.JH)((0,y.KU)(t))})]})]}),(0,n.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,n.jsxs)(p.$,{variant:"outline",size:"sm",onClick:()=>s.push(`/jobs/${e}/edit`),children:[(0,n.jsx)(i.A,{className:"h-4 w-4 mr-1"}),"Edit"]}),(0,n.jsxs)(p.$,{variant:"outline",size:"sm",onClick:W,disabled:v,children:[v?(0,n.jsx)(c.A,{className:"h-4 w-4 mr-1 animate-spin"}):(0,n.jsx)(d.A,{className:"h-4 w-4 mr-1"}),"Run Now"]}),(0,n.jsxs)(p.$,{variant:"ghost",size:"sm",className:"text-destructive hover:text-destructive",onClick:()=>M(!0),children:[(0,n.jsx)(o.A,{className:"h-4 w-4 mr-1"}),"Delete"]})]}),(0,n.jsx)(w,{prompt:t.prompt}),(0,n.jsx)(f.Zp,{children:(0,n.jsx)(f.Wu,{className:"pt-4",children:(0,n.jsxs)("div",{className:"grid grid-cols-2 gap-y-2 text-sm",children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Model"}),(0,n.jsx)("span",{className:"text-right",children:function(e){let s=e.model||"",t=/\[1m\]$/i.test(s)?" (1M)":"",n=s.replace(/\[.*\]$/,""),a=n.indexOf(":");if(a>0)return`${n.slice(a+1)}${t}`;let r=(0,N.bs)(n);if(!r)return s||"Default";let l=r.alias.charAt(0).toUpperCase()+r.alias.slice(1);return`${l} ${r.version}${t}`}(t)}),t.thinkingLevel&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Thinking"}),(0,n.jsx)("span",{className:"text-right capitalize",children:t.thinkingLevel})]}),(0,n.jsx)("span",{className:"text-muted-foreground",children:"Runtime"}),(0,n.jsx)("span",{className:"text-right uppercase",children:t.runtime||"stream"}),(0,n.jsx)("span",{className:"text-muted-foreground",children:"Max Duration"}),(0,n.jsxs)("span",{className:"text-right",children:[t.maxDurationMinutes??30," min"]}),t.cwd&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Directory"}),(0,n.jsx)("span",{className:"text-right font-mono text-xs truncate",children:t.cwd})]}),(0,n.jsx)("span",{className:"text-muted-foreground",children:"Permissions"}),(0,n.jsx)("span",{className:"text-right",children:t.bypassPermissions?"Bypass all":`${(t.allowedTools||[]).length} tools allowed`}),(t.mcpServers||[]).length>0&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"MCP Servers"}),(0,n.jsx)("span",{className:"text-right text-xs font-mono truncate",children:(t.mcpServers||[]).join(", ")})]})]})})}),(0,n.jsxs)(f.Zp,{children:[(0,n.jsx)(f.aR,{className:"pb-2",children:(0,n.jsx)(f.ZB,{className:"text-sm font-medium",children:"Run History"})}),(0,n.jsxs)(f.Wu,{children:[D&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading runs..."}),!D&&0===A.length&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No runs yet."}),(0,n.jsx)("div",{className:"space-y-1",children:A.map(t=>(0,n.jsxs)("button",{type:"button",className:"w-full flex items-center gap-3 rounded px-2 py-2 hover:bg-muted transition-colors text-left",onClick:()=>s.push(`/jobs/${e}/runs/${t.id}`),children:[function(e){switch(e){case"success":return(0,n.jsx)(x.E,{className:"bg-green-600 text-white",children:"Success"});case"failure":return(0,n.jsx)(x.E,{variant:"destructive",children:"Failed"});case"timeout":return(0,n.jsx)(x.E,{className:"bg-yellow-600 text-white",children:"Timeout"});case"running":return(0,n.jsx)(x.E,{className:"bg-blue-600 text-white",children:"Running"});default:return(0,n.jsx)(x.E,{variant:"secondary",children:e})}}(t.status),(0,n.jsx)("span",{className:"text-xs text-muted-foreground flex-1",children:new Date(t.startedAt).toLocaleString()}),null!=t.durationMs&&(0,n.jsxs)("span",{className:"text-xs text-muted-foreground",children:[Math.round(t.durationMs/1e3),"s"]})]},t.id))}),E&&(0,n.jsx)(p.$,{variant:"ghost",size:"sm",className:"w-full mt-2",onClick:T,disabled:C,children:C?"Loading...":"Load more"})]})]}),(0,n.jsx)(j.lG,{open:k,onOpenChange:M,children:(0,n.jsxs)(j.Cf,{children:[(0,n.jsx)(j.c7,{children:(0,n.jsx)(j.L3,{children:"Delete Job"})}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:"Delete this job and all run history? This cannot be undone."}),(0,n.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,n.jsx)(p.$,{variant:"outline",onClick:()=>M(!1),children:"Cancel"}),(0,n.jsx)(p.$,{variant:"destructive",onClick:z,children:"Delete"})]})]})})]})})}},18986:(e,s,t)=>{"use strict";t.d(s,{A:()=>n});let n=(0,t(99537).A)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]])},36619:(e,s,t)=>{"use strict";t.d(s,{A:()=>n});let n=(0,t(99537).A)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]])},83250:(e,s,t)=>{Promise.resolve().then(t.bind(t,2330))},84949:(e,s,t)=>{"use strict";function n(e,s,t){let n=[];for(let a of e.split(",")){let e=a.match(/^(.+)\/(\d+)$/),r=e?Number.parseInt(e[2],10):1,l=e?e[1]:a;if("*"===l)for(let e=s;e<=t;e+=r)n.push(e);else if(l.includes("-")){let[e,s]=l.split("-"),t=Number.parseInt(e,10),a=Number.parseInt(s,10);for(let e=t;e<=a;e+=r)n.push(e)}else n.push(Number.parseInt(l,10))}return n}function a(e){if("cron"===e.type)return`cron: ${e.expression}`;let s=e.time||"00:00";switch(e.frequency){case"hourly":return`Every hour at :${s.split(":")[1]||"00"}`;case"daily":return`Daily at ${s}`;case"weekly":return`Weekly on ${["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][e.dayOfWeek??0]} at ${s}`;case"monthly":return`Monthly on day ${e.dayOfMonth??1} at ${s}`}}function r(e){return e.schedules?.length?e.schedules:[e.schedule]}function l(e){return e.map(a).join("; ")}function i(e,s){let t=null;for(let a of e){let e=function(e,s){let t=function(e){let s=e.trim().split(/\s+/);if(5!==s.length)throw Error(`Invalid cron expression: expected 5 fields, got ${s.length}`);return{minute:n(s[0],0,59),hour:n(s[1],0,23),dayOfMonth:n(s[2],1,31),month:n(s[3],1,12),dayOfWeek:n(s[4],0,6),domWild:"*"===s[2],dowWild:"*"===s[4]}}("cron"===e.type?e.expression:function(e){let[s,t]=(e.time||"00:00").split(":").map(Number);switch(e.frequency){case"hourly":return`${t} * * * *`;case"daily":return`${t} ${s} * * *`;case"weekly":return`${t} ${s} * * ${e.dayOfWeek??0}`;case"monthly":return`${t} ${s} ${e.dayOfMonth??1} * *`}}(e)),a=new Date(s.getTime());a.setSeconds(0,0),a.setMinutes(a.getMinutes()+1);for(let e=0;e<525960;e++){if(t.minute.includes(a.getMinutes())&&t.hour.includes(a.getHours())&&t.dayOfMonth.includes(a.getDate())&&t.month.includes(a.getMonth()+1)&&t.dayOfWeek.includes(a.getDay()))return a;a.setMinutes(a.getMinutes()+1)}return new Date(s.getTime()+864e5)}(a,s);(!t||e.getTime()<t.getTime())&&(t=new Date(e.getTime()))}return t??new Date(s.getTime()+864e5)}t.d(s,{Bg:()=>a,JH:()=>l,KU:()=>r,ay:()=>i})},94088:(e,s,t)=>{"use strict";t.d(s,{A:()=>n});let n=(0,t(99537).A)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]])}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=83250)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[15496],{25494:(e,s,t)=>{"use strict";t.d(s,{A:()=>n});let n=(0,t(99537).A)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]])},46172:(e,s,t)=>{Promise.resolve().then(t.bind(t,60532))},60532:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>b});var n=t(95155),a=t(94088),r=t(12363),i=t(76721),l=t(9005),c=t(92571),d=t(31966),o=t(36483),u=t(25494),x=t(73321),m=t(12115),h=t(3765),p=t(513),j=t(45160),f=t(89239),g=t(81477);function N({prompt:e}){let[s,t]=(0,m.useState)(!1),i=e.split("\n"),l=i.length>8,c=l&&!s?i.slice(0,8).join("\n"):e;return(0,n.jsxs)("div",{className:"mt-2",children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Prompt:"}),(0,n.jsx)("pre",{className:"mt-1 text-xs bg-muted rounded p-2 whitespace-pre-wrap",children:c}),l&&(0,n.jsxs)("button",{onClick:()=>t(!s),className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground mt-1 transition-colors",children:[s?(0,n.jsx)(a.A,{className:"h-3 w-3"}):(0,n.jsx)(r.A,{className:"h-3 w-3"}),s?"Show less":`Show all ${i.length} lines`]})]})}function v({tool:e}){let[s,t]=(0,m.useState)(!1);return(0,n.jsxs)("div",{className:"border rounded-md",children:[(0,n.jsxs)("button",{type:"button",className:"w-full flex items-center gap-2 px-3 py-2 text-left text-sm hover:bg-muted/50 transition-colors",onClick:()=>t(!s),children:[s?(0,n.jsx)(r.A,{className:"h-3 w-3 shrink-0"}):(0,n.jsx)(i.A,{className:"h-3 w-3 shrink-0"}),(0,n.jsx)("span",{className:"font-mono font-medium truncate min-w-0",children:e.name}),void 0!==e.permitted&&(0,n.jsx)(j.E,{variant:e.permitted?"secondary":"destructive",className:"text-[10px]",children:e.permitted?"Allowed":"Denied"}),null!=e.durationMs&&(0,n.jsxs)("span",{className:"text-xs text-muted-foreground ml-auto shrink-0",children:[e.durationMs,"ms"]})]}),s&&(0,n.jsxs)("div",{className:"border-t px-3 py-2 space-y-2",children:[e.input&&(0,n.jsxs)("div",{children:[(0,n.jsx)("p",{className:"text-xs font-medium text-muted-foreground mb-1",children:"Input"}),(0,n.jsx)("pre",{className:"text-xs bg-muted rounded p-2 overflow-x-auto max-h-48 whitespace-pre-wrap",children:e.input})]}),e.output&&(0,n.jsxs)("div",{children:[(0,n.jsx)("p",{className:"text-xs font-medium text-muted-foreground mb-1",children:"Output"}),(0,n.jsx)("pre",{className:"text-xs bg-muted rounded p-2 overflow-x-auto max-h-48 whitespace-pre-wrap",children:e.output})]})]})]})}function w({jobId:e,runId:s,onClose:t}){let[a,r]=(0,m.useState)([]),[i,d]=(0,m.useState)(!0),[o,u]=(0,m.useState)(null),x=(0,m.useRef)(new Set);(0,m.useEffect)(()=>{fetch(`/api/jobs/${e}/runs/${s}/transcript`).then(e=>{if(!e.ok)throw Error("Failed to load transcript");return e.json()}).then(e=>{r(e.messages),d(!1)}).catch(e=>{u(e.message),d(!1)})},[e,s]),(0,m.useEffect)(()=>{let e=e=>{"Escape"===e.key&&(e.preventDefault(),e.stopPropagation(),t())};return window.addEventListener("keydown",e,!0),()=>window.removeEventListener("keydown",e,!0)},[t]);let h=(0,m.useCallback)(e=>{e.target===e.currentTarget&&t()},[t]);return(0,n.jsx)("div",{className:"fixed inset-0 z-50 bg-black/50 flex items-center justify-center p-4",onClick:h,children:(0,n.jsxs)(g.Zp,{className:"w-full max-w-3xl flex flex-col",style:{maxHeight:"calc(100dvh - 2rem)"},children:[(0,n.jsxs)("div",{className:"flex items-center justify-between px-4 py-2 border-b shrink-0",children:[(0,n.jsx)("span",{className:"text-sm font-medium text-muted-foreground",children:"Run transcript"}),(0,n.jsx)(f.$,{variant:"ghost",size:"icon",className:"h-6 w-6",onClick:t,children:(0,n.jsx)(l.A,{className:"h-4 w-4"})})]}),(0,n.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[i&&(0,n.jsx)("div",{className:"flex justify-center py-12",children:(0,n.jsx)(c.A,{className:"h-5 w-5 animate-spin text-muted-foreground"})}),o&&(0,n.jsx)("div",{className:"text-center text-sm text-red-500 py-12",children:o}),!i&&0===a.length&&!o&&(0,n.jsx)("div",{className:"text-center text-sm text-muted-foreground py-12",children:"No transcript found for this run."}),!i&&a.map(e=>(0,n.jsx)("div",{children:(0,n.jsx)(p.s,{message:e,expandedToolIds:x})},e.id))]})]})})}function b(){let e=(0,x.useParams)(),s=e.id,t=e.runId,a=(0,x.useRouter)();(0,h.si)("Run Detail",{hideActions:!0});let[r,i]=(0,m.useState)(null),[l,c]=(0,m.useState)(!0),[p,b]=(0,m.useState)(!1),y=(0,m.useCallback)(async()=>{try{let e=await fetch(`/api/jobs/${s}/runs/${t}`);if(!e.ok)return void a.push(`/jobs/${s}`);let n=await e.json();i(n.run)}finally{c(!1)}},[s,t,a]);return((0,m.useEffect)(()=>{y()},[y]),l||!r)?(0,n.jsx)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4",children:(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading..."})}):(0,n.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[(0,n.jsx)("div",{className:"flex items-center gap-2",children:(0,n.jsx)(f.$,{variant:"ghost",size:"icon",onClick:()=>a.push(`/jobs/${s}`),children:(0,n.jsx)(d.A,{className:"h-4 w-4"})})}),(0,n.jsxs)(g.Zp,{children:[(0,n.jsx)(g.aR,{children:(0,n.jsxs)(g.ZB,{className:"text-base flex items-center gap-2",children:["Run Summary",function(e){switch(e){case"success":return(0,n.jsx)(j.E,{className:"bg-green-600 text-white",children:"Success"});case"failure":return(0,n.jsx)(j.E,{variant:"destructive",children:"Failed"});case"timeout":return(0,n.jsx)(j.E,{className:"bg-yellow-600 text-white",children:"Timeout"});case"running":return(0,n.jsx)(j.E,{className:"bg-blue-600 text-white",children:"Running"});default:return(0,n.jsx)(j.E,{variant:"secondary",children:e})}}(r.status)]})}),(0,n.jsxs)(g.Wu,{className:"space-y-2 text-sm",children:[(0,n.jsxs)("div",{className:"grid grid-cols-2 gap-2",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Started:"})," ",new Date(r.startedAt).toLocaleString()]}),r.completedAt&&(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Completed:"})," ",new Date(r.completedAt).toLocaleString()]}),null!=r.durationMs&&(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Duration:"})," ",Math.round(r.durationMs/1e3),"s"]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Messages:"})," ",r.messageCount]})]}),r.error&&(0,n.jsx)("div",{className:"mt-2 p-2 rounded bg-destructive/10 text-destructive text-xs",children:r.error}),(0,n.jsx)(N,{prompt:r.prompt}),(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Working Directory:"})," ",(0,n.jsx)("span",{className:"font-mono text-xs",children:r.cwd})]}),(0,n.jsxs)("div",{className:"pt-2 flex gap-2",children:[(0,n.jsxs)(f.$,{variant:"outline",size:"sm",onClick:()=>b(!0),children:[(0,n.jsx)(o.A,{className:"h-3 w-3 mr-1"}),"View Transcript"]}),(0,n.jsxs)(f.$,{variant:"outline",size:"sm",onClick:()=>a.push(`/sessions/${r.sessionId}?cwd=${encodeURIComponent(r.cwd)}`),children:[(0,n.jsx)(u.A,{className:"h-3 w-3 mr-1"}),"Continue Session"]})]})]})]}),(0,n.jsxs)(g.Zp,{children:[(0,n.jsx)(g.aR,{children:(0,n.jsxs)(g.ZB,{className:"text-base",children:["Tool Usage (",r.toolsUsed.length,")"]})}),(0,n.jsxs)(g.Wu,{children:[0===r.toolsUsed.length&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No tool invocations recorded."}),(0,n.jsx)("div",{className:"space-y-1",children:r.toolsUsed.map((e,s)=>(0,n.jsx)(v,{tool:e},`${e.name}-${e.timestamp}-${s}`))})]})]}),p&&(0,n.jsx)(w,{jobId:s,runId:t,onClose:()=>b(!1)})]})}},94088:(e,s,t)=>{"use strict";t.d(s,{A:()=>n});let n=(0,t(99537).A)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]])}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=46172)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[17288],{35484:(e,t,s)=>{"use strict";s.d(t,{A:()=>n});let n=(0,s(99537).A)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]])},36619:(e,t,s)=>{"use strict";s.d(t,{A:()=>n});let n=(0,s(99537).A)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]])},61112:(e,t,s)=>{Promise.resolve().then(s.bind(s,92396))},84949:(e,t,s)=>{"use strict";function n(e,t,s){let n=[];for(let a of e.split(",")){let e=a.match(/^(.+)\/(\d+)$/),r=e?Number.parseInt(e[2],10):1,l=e?e[1]:a;if("*"===l)for(let e=t;e<=s;e+=r)n.push(e);else if(l.includes("-")){let[e,t]=l.split("-"),s=Number.parseInt(e,10),a=Number.parseInt(t,10);for(let e=s;e<=a;e+=r)n.push(e)}else n.push(Number.parseInt(l,10))}return n}function a(e){if("cron"===e.type)return`cron: ${e.expression}`;let t=e.time||"00:00";switch(e.frequency){case"hourly":return`Every hour at :${t.split(":")[1]||"00"}`;case"daily":return`Daily at ${t}`;case"weekly":return`Weekly on ${["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][e.dayOfWeek??0]} at ${t}`;case"monthly":return`Monthly on day ${e.dayOfMonth??1} at ${t}`}}function r(e){return e.schedules?.length?e.schedules:[e.schedule]}function l(e){return e.map(a).join("; ")}function i(e,t){let s=null;for(let a of e){let e=function(e,t){let s=function(e){let t=e.trim().split(/\s+/);if(5!==t.length)throw Error(`Invalid cron expression: expected 5 fields, got ${t.length}`);return{minute:n(t[0],0,59),hour:n(t[1],0,23),dayOfMonth:n(t[2],1,31),month:n(t[3],1,12),dayOfWeek:n(t[4],0,6),domWild:"*"===t[2],dowWild:"*"===t[4]}}("cron"===e.type?e.expression:function(e){let[t,s]=(e.time||"00:00").split(":").map(Number);switch(e.frequency){case"hourly":return`${s} * * * *`;case"daily":return`${s} ${t} * * *`;case"weekly":return`${s} ${t} * * ${e.dayOfWeek??0}`;case"monthly":return`${s} ${t} ${e.dayOfMonth??1} * *`}}(e)),a=new Date(t.getTime());a.setSeconds(0,0),a.setMinutes(a.getMinutes()+1);for(let e=0;e<525960;e++){if(s.minute.includes(a.getMinutes())&&s.hour.includes(a.getHours())&&s.dayOfMonth.includes(a.getDate())&&s.month.includes(a.getMonth()+1)&&s.dayOfWeek.includes(a.getDay()))return a;a.setMinutes(a.getMinutes()+1)}return new Date(t.getTime()+864e5)}(a,t);(!s||e.getTime()<s.getTime())&&(s=new Date(e.getTime()))}return s??new Date(t.getTime()+864e5)}s.d(t,{Bg:()=>a,JH:()=>l,KU:()=>r,ay:()=>i})},92396:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>C});var n=s(95155),a=s(35484),r=s(64962),l=s(92571),i=s(36619),c=s(99314),o=s(65738),u=s(76721),d=s(14225),h=s(2125),m=s(77618),x=s(73321),f=s(12115),p=s(3765),g=s(45160),j=s(89239),N=s(81477),y=s(42763),b=s(67032),w=s(84949);function v(e){if(!e.lastRunAt)return null;let t=function(e){let t=Math.floor((Date.now()-e)/6e4);if(t<1)return"just now";if(t<60)return`${t}m ago`;let s=Math.floor(t/60);if(s<24)return`${s}h ago`;let n=Math.floor(s/24);return`${n}d ago`}(e.lastRunAt);return"failure"===e.lastRunStatus||"timeout"===e.lastRunStatus?(0,n.jsxs)("span",{className:"flex items-center gap-1 text-destructive",children:[(0,n.jsx)(a.A,{className:"h-3 w-3"}),"Failed ",t]}):"success"===e.lastRunStatus?(0,n.jsxs)("span",{className:"flex items-center gap-1 text-green-500",children:[(0,n.jsx)(r.A,{className:"h-3 w-3"}),"Succeeded ",t]}):"running"===e.lastRunStatus?(0,n.jsxs)("span",{className:"flex items-center gap-1",children:[(0,n.jsx)(l.A,{className:"h-3 w-3 animate-spin"}),"Running"]}):null}function k({job:e,triggeringJobs:t,onTrigger:s,onDuplicate:a,onDelete:r,onClick:u}){return(0,n.jsx)(N.Zp,{className:"cursor-pointer hover:bg-accent/50 transition-colors",onClick:()=>u(e.id),children:(0,n.jsx)(N.Wu,{className:"p-4",children:(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[(0,n.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 mb-1",children:[(0,n.jsx)("span",{className:"font-medium text-sm truncate",children:e.name}),e.enabled?"failure"===e.lastRunStatus||"timeout"===e.lastRunStatus?(0,n.jsx)(g.E,{variant:"destructive",children:"Failed"}):"running"===e.lastRunStatus?(0,n.jsx)(g.E,{variant:"default",children:"Running"}):(0,n.jsx)(g.E,{variant:"default",children:"Active"}):(0,n.jsx)(g.E,{variant:"secondary",children:"Disabled"})]}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground",children:(0,w.JH)((0,w.KU)(e))}),(0,n.jsxs)("p",{className:"text-xs text-muted-foreground mt-0.5",children:["Next: ",function(e){if(!e.enabled)return"Disabled";try{return(0,w.ay)((0,w.KU)(e),new Date).toLocaleString()}catch{return"Unknown"}}(e)]}),v(e)&&(0,n.jsx)("p",{className:"text-xs mt-0.5",children:v(e)})]}),(0,n.jsxs)("div",{className:"flex items-center gap-1 shrink-0",children:[(0,n.jsx)(j.$,{variant:"ghost",size:"icon",className:"h-8 w-8",title:"Run now",disabled:t.has(e.id),onClick:t=>s(t,e.id),children:t.has(e.id)?(0,n.jsx)(l.A,{className:"h-4 w-4 animate-spin"}):(0,n.jsx)(i.A,{className:"h-4 w-4"})}),(0,n.jsx)(j.$,{variant:"ghost",size:"icon",className:"h-8 w-8",title:"Duplicate",onClick:t=>a(t,e.id),children:(0,n.jsx)(c.A,{className:"h-4 w-4"})}),(0,n.jsx)(j.$,{variant:"ghost",size:"icon",className:"h-8 w-8 text-destructive hover:text-destructive",title:"Delete",onClick:t=>r(t,e.id),children:(0,n.jsx)(o.A,{className:"h-4 w-4"})})]})]})})})}function $({group:e,triggeringJobs:t,onTrigger:s,onDuplicate:a,onDelete:r,onClickJob:l,onCreateJob:i,defaultExpanded:c}){let[o,m]=(0,f.useState)(c),x=e.jobs.filter(e=>"failure"===e.lastRunStatus||"timeout"===e.lastRunStatus).length;return(0,n.jsxs)("div",{className:"rounded-lg border bg-card",children:[(0,n.jsxs)("div",{role:"button",onClick:()=>m(!o),className:"w-full flex items-center gap-2 p-3 text-left hover:bg-accent/50 rounded-lg transition-colors cursor-pointer",children:[(0,n.jsx)(u.A,{className:`h-4 w-4 shrink-0 text-muted-foreground transition-transform ${o?"rotate-90":""}`}),(0,n.jsx)(d.A,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),(0,n.jsx)("span",{className:"font-medium text-sm truncate flex-1",children:e.dirName}),(0,n.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[x>0&&(0,n.jsxs)("span",{className:"text-xs bg-destructive text-destructive-foreground px-1.5 py-0.5 rounded",children:[x," failed"]}),(0,n.jsxs)("span",{className:"text-xs text-muted-foreground",children:[e.jobs.length," job",1!==e.jobs.length?"s":""]}),(0,n.jsx)("button",{onClick:t=>{t.stopPropagation(),i(e.cwd)},className:"p-1 rounded hover:bg-accent",title:"New job in this folder",children:(0,n.jsx)(h.A,{className:"h-3.5 w-3.5 text-muted-foreground"})})]})]}),o&&(0,n.jsx)("div",{className:"px-3 pb-3 space-y-2",children:e.jobs.map(e=>(0,n.jsx)(k,{job:e,triggeringJobs:t,onTrigger:s,onDuplicate:a,onDelete:r,onClick:l},e.id))})]})}function C(){(0,p.si)("Scheduled Jobs",{hideActions:!0});let{jobs:e,loading:t,deleteJob:s,triggerJob:a,refresh:r}=(0,b.Os)(),l=(0,x.useRouter)(),[i,c]=(0,f.useState)(null),[o,u]=(0,f.useState)(new Set),d=(0,f.useMemo)(()=>(function(e){let t=new Map;for(let s of e){let e=s.cwd||"",n=t.get(e)||[];n.push(s),t.set(e,n)}let s=[];for(let[e,n]of t)s.push({cwd:e,dirName:function(e){if(!e)return"Scratchpad";let t=e.replace(/\/+$/,"").split("/");return t[t.length-1]||e}(e),jobs:n});return s.sort((e,t)=>e.cwd?t.cwd?e.dirName.localeCompare(t.dirName):1:-1),s})(e),[e]);async function g(){i&&(await s(i),c(null))}async function N(e,t){e.stopPropagation(),u(e=>new Set(e).add(t)),await a(t),u(e=>{let s=new Set(e);return s.delete(t),s}),r()}function w(e,t){e.stopPropagation(),l.push(`/jobs/new/edit?from=${t}`)}function v(e,t){e.stopPropagation(),c(t)}return(0,n.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 pb-24 space-y-4",children:[t&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading jobs..."}),!t&&0===e.length&&(0,n.jsxs)("div",{className:"flex flex-col items-center justify-center py-16 text-center",children:[(0,n.jsx)(m.A,{className:"h-12 w-12 text-muted-foreground/50 mb-4"}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No scheduled jobs yet."}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Create one to run Claude on a schedule."})]}),(0,n.jsx)("div",{className:"space-y-2",children:1===d.length?d[0].jobs.map(e=>(0,n.jsx)(k,{job:e,triggeringJobs:o,onTrigger:N,onDuplicate:w,onDelete:v,onClick:e=>l.push(`/jobs/${e}`)},e.id)):d.map(e=>(0,n.jsx)($,{group:e,triggeringJobs:o,onTrigger:N,onDuplicate:w,onDelete:v,onClickJob:e=>l.push(`/jobs/${e}`),onCreateJob:e=>l.push(`/jobs/new/edit?cwd=${encodeURIComponent(e)}`),defaultExpanded:d.length<=3},e.cwd))}),(0,n.jsx)("div",{className:"fixed bottom-6 right-6",children:(0,n.jsxs)(j.$,{size:"lg",className:"rounded-full shadow-lg",onClick:()=>l.push("/jobs/new/edit"),children:[(0,n.jsx)(h.A,{className:"h-5 w-5 mr-1"}),"New Job"]})}),(0,n.jsx)(y.lG,{open:!!i,onOpenChange:()=>c(null),children:(0,n.jsxs)(y.Cf,{children:[(0,n.jsx)(y.c7,{children:(0,n.jsx)(y.L3,{children:"Delete Job"})}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:"Delete this job and all its run history? This cannot be undone."}),(0,n.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,n.jsx)(j.$,{variant:"outline",onClick:()=>c(null),children:"Cancel"}),(0,n.jsx)(j.$,{variant:"destructive",onClick:g,children:"Delete"})]})]})})]})}}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=61112)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[67797],{36619:(e,s,t)=>{"use strict";t.d(s,{A:()=>n});let n=(0,t(99537).A)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]])},61239:(e,s,t)=>{Promise.resolve().then(t.bind(t,78357))},78357:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>j});var n=t(95155),a=t(2125),r=t(92571),c=t(36619),l=t(65738),o=t(73321),i=t(12115),d=t(3765),m=t(41158),u=t(45160),x=t(89239),h=t(81477),p=t(42763);function j(){(0,d.si)("MCP Servers",{hideActions:!0});let e="u">typeof localStorage&&localStorage.getItem("cockpit-agents-cwd")||void 0,{servers:s,loading:t,deleteServer:r}=function(e){let[s,t]=(0,i.useState)([]),[n,a]=(0,i.useState)(!0),r=(0,i.useCallback)(()=>{a(!0);let s=new URLSearchParams;e&&s.set("cwd",e),fetch(`/api/mcp-servers?${s}`).then(e=>e.json()).then(e=>t(e.servers)).catch(()=>t([])).finally(()=>a(!1))},[e]);(0,i.useEffect)(()=>{r()},[r]);let c=(0,i.useCallback)(async(s,t)=>{let n=new URLSearchParams({scope:t});"project"===t&&e&&n.set("cwd",e);try{if((await fetch(`/api/mcp-servers/${encodeURIComponent(s)}?${n}`,{method:"DELETE"})).ok)return r(),!0;return!1}catch{return!1}},[e,r]);return{servers:s,loading:n,refresh:r,deleteServer:c}}(e),c=(0,o.useRouter)(),[l,u]=(0,i.useState)(null),[j,g]=(0,i.useState)(!1),[v,N]=(0,i.useState)(!1),b=s.filter(e=>"user"===e.scope),w=s.filter(e=>"project"===e.scope);function C(e,s){g(!1),N(!1);let t=new URLSearchParams({scope:e});"project"===e&&s&&t.set("cwd",s),c.push(`/mcp-servers/new?${t}`)}function y(s,t){let n=new URLSearchParams({scope:t});"project"===t&&e&&n.set("cwd",e),c.push(`/mcp-servers/${encodeURIComponent(s)}?${n}`)}async function k(){l&&(await r(l.name,l.scope),u(null))}return(0,n.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto p-4 space-y-4",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("div",{}),(0,n.jsxs)(x.$,{size:"sm",onClick:()=>g(!0),children:[(0,n.jsx)(a.A,{className:"h-4 w-4 mr-1"}),"New Server"]})]}),t&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading servers..."}),!t&&0===s.length&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No MCP servers configured. Add one to get started."}),b.length>0&&(0,n.jsxs)(h.Zp,{children:[(0,n.jsx)(h.aR,{children:(0,n.jsx)(h.ZB,{className:"text-base",children:"Global"})}),(0,n.jsx)(h.Wu,{className:"space-y-1",children:b.map(e=>(0,n.jsx)(f,{name:e.name,type:e.type,detail:e.command||e.url,scope:"user",onClick:()=>y(e.name,"user"),onDelete:()=>u({name:e.name,scope:"user"})},e.name))})]}),w.length>0&&(0,n.jsxs)(h.Zp,{children:[(0,n.jsx)(h.aR,{children:(0,n.jsx)(h.ZB,{className:"text-base",children:"Project"})}),(0,n.jsx)(h.Wu,{className:"space-y-1",children:w.map(s=>(0,n.jsx)(f,{name:s.name,type:s.type,detail:s.command||s.url,scope:"project",cwd:e,onClick:()=>y(s.name,"project"),onDelete:()=>u({name:s.name,scope:"project"})},s.name))})]}),(0,n.jsx)(p.lG,{open:j,onOpenChange:e=>{g(e),e||N(!1)},children:(0,n.jsxs)(p.Cf,{children:[(0,n.jsx)(p.c7,{children:(0,n.jsx)(p.L3,{children:"New MCP Server"})}),v?(0,n.jsx)(m.K,{onSelect:e=>C("project",e),onCancel:()=>N(!1)}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:"Where should this server be saved?"}),(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsx)(x.$,{variant:"outline",className:"flex-1",onClick:()=>C("user"),children:"Global"}),(0,n.jsx)(x.$,{variant:"outline",className:"flex-1",onClick:()=>N(!0),children:"Project"})]})]})]})}),(0,n.jsx)(p.lG,{open:!!l,onOpenChange:()=>u(null),children:(0,n.jsxs)(p.Cf,{children:[(0,n.jsx)(p.c7,{children:(0,n.jsx)(p.L3,{children:"Delete Server"})}),(0,n.jsxs)("p",{className:"text-sm text-muted-foreground mb-4",children:["Delete ",(0,n.jsx)("span",{className:"font-mono font-bold",children:l?.name}),"? This cannot be undone."]}),(0,n.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,n.jsx)(x.$,{variant:"outline",onClick:()=>u(null),children:"Cancel"}),(0,n.jsx)(x.$,{variant:"destructive",onClick:k,children:"Delete"})]})]})})]})}function f({name:e,type:s,detail:t,scope:a,cwd:o,onClick:d,onDelete:m}){let[x,h]=(0,i.useState)(!1),[p,j]=(0,i.useState)(null);async function g(s){s.stopPropagation(),h(!0),j(null);try{let s=new URLSearchParams({scope:a});"project"===a&&o&&s.set("cwd",o);let t=await fetch(`/api/mcp-servers/${encodeURIComponent(e)}/test?${s}`,{method:"POST"}),n=await t.json();j(n)}catch{j({success:!1,logs:"Request failed"})}finally{h(!1)}}return(0,n.jsxs)("div",{className:"rounded px-2 py-2 hover:bg-muted transition-colors",children:[(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[(0,n.jsxs)("button",{type:"button",className:"flex-1 text-left min-w-0",onClick:d,children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("span",{className:"font-mono font-bold text-sm",children:e}),(0,n.jsx)(u.E,{variant:"secondary",className:"text-[10px]",children:s})]}),t&&(0,n.jsx)("p",{className:"text-xs text-muted-foreground truncate mt-0.5",children:t})]}),(0,n.jsxs)("div",{className:"flex items-center gap-1 shrink-0",children:[(0,n.jsx)("button",{type:"button",className:"p-1 rounded text-muted-foreground hover:text-primary transition-colors",onClick:g,disabled:x,title:"Test connection",children:x?(0,n.jsx)(r.A,{className:"h-4 w-4 animate-spin"}):(0,n.jsx)(c.A,{className:"h-4 w-4"})}),(0,n.jsx)("button",{type:"button",className:"p-1 rounded hover:bg-destructive/10 text-muted-foreground hover:text-destructive transition-colors",onClick:e=>{e.stopPropagation(),m()},children:(0,n.jsx)(l.A,{className:"h-4 w-4"})})]})]}),p&&(0,n.jsxs)("div",{className:`mt-2 rounded border p-2 text-xs ${p.success?"border-green-500/30 bg-green-500/5":"border-red-500/30 bg-red-500/5"}`,children:[(0,n.jsxs)("div",{className:"flex items-center gap-1.5 mb-1",children:[(0,n.jsx)("span",{className:`inline-block h-2 w-2 rounded-full ${p.success?"bg-green-500":"bg-red-500"}`}),(0,n.jsx)("span",{className:"font-medium",children:p.success?"Connected":"Failed"})]}),(0,n.jsx)("pre",{className:"whitespace-pre-wrap text-muted-foreground font-mono leading-relaxed",children:p.logs})]})]})}}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=61239)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[29415],{14683:(e,t,s)=>{Promise.resolve().then(s.bind(s,49524))},49524:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>M});var n=s(95155),l=s(3765),a=s(76721),r=s(14225),o=s(65738),i=s(2125);let c=(0,s(99537).A)("star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]);var d=s(16449),u=s(49804),x=s(73321),h=s(12115),m=s(45160),f=s(89239),p=s(42763),g=s(89323),j=s(64577),w=s(99314),N=s(65377),b=s(92571),v=s(9005),y=s(81477),S=s(16617);function k({preview:e,matchStart:t,matchLength:s}){let l=e.slice(0,t),a=e.slice(t,t+s),r=e.slice(t+s);return(0,n.jsxs)("span",{className:"text-sm text-muted-foreground whitespace-pre-wrap break-words select-text",children:[l,(0,n.jsx)("mark",{className:"bg-yellow-300/30 text-foreground rounded-sm px-0.5",children:a}),r]})}function C({text:e}){let[t,s]=(0,h.useState)(!1),l=(0,h.useCallback)(t=>{t.stopPropagation(),navigator.clipboard.writeText(e),s(!0),setTimeout(()=>s(!1),1500)},[e]);return(0,n.jsx)(f.$,{variant:"ghost",size:"icon",className:"h-6 w-6 shrink-0",onClick:l,title:"Copy full message",children:t?(0,n.jsx)(j.A,{className:"h-3 w-3"}):(0,n.jsx)(w.A,{className:"h-3 w-3"})})}function $({onClose:e}){let[t,s]=(0,h.useState)(""),[l,a]=(0,h.useState)([]),[o,i]=(0,h.useState)(!1),[c,d]=(0,h.useState)(!1),[u,x]=(0,h.useState)(!1),[p,g]=(0,h.useState)(null),[j,w]=(0,h.useState)(null),A=(0,h.useRef)(null),E=(0,h.useRef)(null);(0,h.useEffect)(()=>{A.current?.focus()},[]);let D=(0,h.useCallback)((e,t,s)=>fetch(`/api/sessions/search?q=${encodeURIComponent(e)}&offset=${t}`,{signal:s}).then(e=>e.json()),[]);(0,h.useEffect)(()=>{if(t.length<2){a([]),x(!1),g(null);return}let e=setTimeout(()=>{E.current?.abort();let e=new AbortController;E.current=e,i(!0),D(t,0,e.signal).then(t=>{e.signal.aborted||(a(t.results||[]),g({total:t.totalFilesSearched||0,truncated:!!t.truncated}),x(!0),i(!1))}).catch(e=>{"AbortError"!==e.name&&(i(!1),x(!0))})},500);return()=>{clearTimeout(e)}},[t,D]);let L=(0,h.useCallback)(()=>{if(c||!p?.truncated)return;d(!0);let e=new AbortController;D(t,l.length,e.signal).then(e=>{a(t=>[...t,...e.results||[]]),g({total:e.totalFilesSearched||0,truncated:!!e.truncated}),d(!1)}).catch(()=>{d(!1)})},[t,l.length,c,p?.truncated,D]);(0,h.useEffect)(()=>()=>{E.current?.abort()},[]);let T=(0,h.useCallback)(t=>{t.target===t.currentTarget&&e()},[e]);return((0,h.useEffect)(()=>{let t=t=>{"Escape"===t.key&&(t.preventDefault(),t.stopPropagation(),e())};return window.addEventListener("keydown",t,!0),()=>window.removeEventListener("keydown",t,!0)},[e]),j)?(0,n.jsx)(S.Q,{timestamp:j.timestamp,sessionId:j.sessionId,cwd:j.cwd,onClose:()=>w(null)}):(0,n.jsx)("div",{className:"fixed inset-0 z-50 bg-black/50 flex items-center justify-center p-4",onClick:T,children:(0,n.jsxs)(y.Zp,{className:"w-full max-w-2xl flex flex-col",style:{maxHeight:"calc(100dvh - 2rem)"},children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 p-4 border-b",children:[(0,n.jsx)(N.A,{className:"h-4 w-4 text-muted-foreground shrink-0"}),(0,n.jsx)("input",{ref:A,value:t,onChange:e=>s(e.target.value),placeholder:"Search all session messages...",className:"flex-1 bg-transparent outline-none text-sm"}),o&&(0,n.jsx)(b.A,{className:"h-4 w-4 animate-spin text-muted-foreground shrink-0"}),(0,n.jsx)(f.$,{variant:"ghost",size:"icon",className:"h-6 w-6 shrink-0",onClick:e,children:(0,n.jsx)(v.A,{className:"h-4 w-4"})})]}),(0,n.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto",children:[u&&0===l.length&&(0,n.jsx)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:"No results"}),l.map((e,t)=>(0,n.jsxs)("button",{onClick:()=>w(e),className:"w-full text-left p-4 border-b last:border-b-0 hover:bg-muted/50 transition-colors cursor-pointer",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 mb-1",children:[(0,n.jsx)(m.E,{variant:"user"===e.role?"default":"secondary",className:"text-[10px] px-1.5 py-0",children:"user"===e.role?"User":"Assistant"}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:new Date(e.timestamp).toLocaleString()}),(0,n.jsx)("div",{className:"ml-auto flex items-center gap-1",children:(0,n.jsx)(C,{text:e.fullContent})})]}),(0,n.jsxs)("div",{className:"mb-1.5 text-[11px] text-muted-foreground",children:[(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)(r.A,{className:"h-3 w-3 shrink-0"}),(0,n.jsx)("span",{className:"truncate",children:e.dirName})]}),(0,n.jsx)("div",{className:"truncate pl-[18px]",children:e.sessionName})]}),(0,n.jsx)(k,{preview:e.preview,matchStart:e.matchStart,matchLength:e.matchLength})]},`${e.messageId}-${t}`))]}),p&&u&&l.length>0&&(0,n.jsxs)("div",{className:"px-4 py-2 border-t text-[11px] text-muted-foreground flex items-center justify-between",children:[(0,n.jsxs)("span",{children:[l.length," result",1!==l.length?"s":""," across ",p.total," session",1!==p.total?"s":""]}),p.truncated&&(0,n.jsx)("button",{onClick:L,disabled:c,className:"text-[11px] text-primary hover:underline disabled:opacity-50",children:c?"Loading...":"Load more"})]})]})})}function A(){let[e,t]=(0,h.useState)(!1);return(0,h.useEffect)(()=>{let e=e=>{(e.metaKey||e.ctrlKey)&&e.shiftKey&&"f"===e.key&&(e.preventDefault(),t(!0))};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[]),(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("button",{onClick:()=>t(!0),className:"w-full flex items-center gap-2 rounded-lg border bg-card px-3 py-2 text-sm text-muted-foreground hover:bg-accent/50 transition-colors",children:[(0,n.jsx)(N.A,{className:"h-4 w-4"}),(0,n.jsx)("span",{children:"Search all session messages..."}),(0,n.jsx)("kbd",{className:"ml-auto hidden sm:inline text-[10px] border rounded px-1.5 py-0.5",children:"Ctrl+Shift+F"})]}),e&&(0,n.jsx)($,{onClose:()=>t(!1)})]})}var E=s(20108);function D({session:e,onClick:t,onDelete:s}){return(0,n.jsxs)("button",{onClick:t,className:"w-full flex items-center gap-3 px-3 py-2 text-left rounded-md hover:bg-accent/50 transition-colors group",children:[(0,n.jsx)("span",{className:"text-sm truncate flex-1",children:e.name}),(0,n.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:["running"===e.status&&(0,n.jsx)(m.E,{variant:"default",className:"text-xs",children:"running"}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:function(e){let t=Math.floor((Date.now()-e)/1e3);if(t<60)return"just now";let s=Math.floor(t/60);if(s<60)return`${s}m ago`;let n=Math.floor(s/60);if(n<24)return`${n}h ago`;let l=Math.floor(n/24);return l<30?`${l}d ago`:new Date(e).toLocaleDateString()}(e.lastActiveAt)}),s&&"running"!==e.status&&(0,n.jsx)("span",{role:"button",onClick:e=>{e.stopPropagation(),s(e)},className:"p-1 rounded hover:bg-destructive/10 opacity-0 group-hover:opacity-100 transition-opacity",title:"Delete session",children:(0,n.jsx)(o.A,{className:"h-3.5 w-3.5 text-muted-foreground hover:text-destructive"})})]})]})}var L=s(70518);let T=null,I="cockpit_fav_dirs";function O({group:e,isFavorite:t,onToggleFavorite:s,onSelectSession:l,onCreateSession:d,onDeleteSession:u,onDeleteAll:x}){let[f,p]=(0,h.useState)(!1),[g,j]=(0,h.useState)(null),[w,N]=(0,h.useState)(!1),b=g||e.sessions,v=b.length<e.totalSessionCount,y=b[0]?.lastActiveAt||0,S=b.filter(e=>"running"===e.status).length,k=async()=>{if(!w){N(!0);try{let t=await fetch(`/api/sessions/group?cwd=${encodeURIComponent(e.cwd)}`);if(t.ok){let e=await t.json();j(e.sessions||[])}}finally{N(!1)}}};return(0,n.jsxs)("div",{className:"rounded-lg border bg-card",children:[(0,n.jsxs)("div",{role:"button",onClick:()=>p(!f),className:"w-full flex items-center gap-2 p-3 text-left hover:bg-accent/50 rounded-lg transition-colors cursor-pointer",children:[(0,n.jsx)(a.A,{className:`h-4 w-4 shrink-0 text-muted-foreground transition-transform ${f?"rotate-90":""}`}),(0,n.jsx)(r.A,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),(0,n.jsx)("span",{className:"font-medium text-sm truncate flex-1",children:e.dirName}),(0,n.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[S>0&&(0,n.jsxs)("span",{className:"text-xs bg-primary text-primary-foreground px-1.5 py-0.5 rounded",children:[S," running"]}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:function(e){let t=Math.floor((Date.now()-e)/1e3);if(t<60)return"just now";let s=Math.floor(t/60);if(s<60)return`${s}m ago`;let n=Math.floor(s/60);if(n<24)return`${n}h ago`;let l=Math.floor(n/24);return l<30?`${l}d ago`:new Date(e).toLocaleDateString()}(y)}),(0,n.jsxs)(m.E,{variant:"secondary",className:"text-[10px] px-1.5 py-0",children:[e.totalSessionCount," session",1!==e.totalSessionCount?"s":""]})]})]}),f&&(0,n.jsxs)("div",{className:"px-3 pb-3 space-y-1",children:[(0,n.jsxs)("div",{className:"flex items-center justify-end gap-1 pb-1",children:[(0,n.jsx)("button",{onClick:()=>x(e),className:"p-1 rounded hover:bg-destructive/10",title:"Delete all sessions in this folder",children:(0,n.jsx)(o.A,{className:"h-3.5 w-3.5 text-muted-foreground hover:text-destructive"})}),(0,n.jsx)("button",{onClick:()=>d(e.cwd),className:"p-1 rounded hover:bg-accent",title:"New session in this folder",children:(0,n.jsx)(i.A,{className:"h-3.5 w-3.5 text-muted-foreground"})}),(0,n.jsx)("button",{onClick:()=>s(),className:"p-1 rounded hover:bg-accent",children:(0,n.jsx)(c,{className:`h-3.5 w-3.5 ${t?"fill-yellow-400 text-yellow-400":"text-muted-foreground"}`})})]}),b.map(e=>(0,n.jsx)(D,{session:e,onClick:()=>l(e),onDelete:()=>u(e)},e.id)),v&&(0,n.jsx)("button",{onClick:k,disabled:w,className:"w-full text-xs text-muted-foreground hover:text-foreground py-2 rounded hover:bg-accent/50 transition-colors disabled:opacity-50",children:w?"Loading...":`Load all ${e.totalSessionCount} sessions`})]})]})}function P(){let e=(0,x.useRouter)(),{connected:t}=(0,g.h)(),[s,l]=(0,h.useState)(T||[]),[a,r]=(0,h.useState)(new Set),[o,c]=(0,h.useState)(!1),[m,j]=(0,h.useState)(!!T),w=(0,h.useRef)(!1),[N,b]=(0,h.useState)(null),[v,y]=(0,h.useState)(!1),[S,k]=(0,h.useState)(null);(0,h.useEffect)(()=>{r(function(){try{let e=localStorage.getItem(I);if(e)return new Set(JSON.parse(e))}catch{}return new Set}())},[]);let C=(0,h.useCallback)(async()=>{let e=await fetch("/api/sessions");if(e.ok){let t=((await e.json()).groups||[]).filter(e=>!e.cwd.endsWith(".cockpit/reviews"));T=t,l(t)}j(!0)},[]);(0,h.useEffect)(()=>{w.current||(w.current=!0,C())},[C]),(0,h.useEffect)(()=>{t&&C()},[t,C]);let $=e=>{r(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),localStorage.setItem(I,JSON.stringify([...s])),s})},D=async(t,s,n)=>{let l=await fetch("/api/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:t,name:s||void 0,runtime:n})});if(l.ok){let s=await l.json();await (0,L.MN)(s.sessionId),e.push(`/sessions/${s.sessionId}?cwd=${encodeURIComponent(t)}`)}},P=t=>{e.push(`/sessions/${t.id}?cwd=${encodeURIComponent(t.cwd)}&historyView=true`)},M=async()=>{if(N){if(y(!0),"single"===N.type){let{session:e}=N;await fetch(`/api/sessions/${e.id}?cwd=${encodeURIComponent(e.cwd)}`,{method:"DELETE"})}else{let{group:e}=N,t=e.sessions;if(e.totalSessionCount>e.sessions.length){let s=await fetch(`/api/sessions/group?cwd=${encodeURIComponent(e.cwd)}`);s.ok&&(t=(await s.json()).sessions||t)}let s=t.filter(e=>"running"!==e.status).map(e=>({id:e.id,cwd:e.cwd}));s.length>0&&await fetch("/api/sessions/bulk-delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessions:s})})}b(null),y(!1),C()}},R=N?.type==="single"?"Delete Session":"Delete All Sessions",F=N?.type==="single"?"Permanently delete this session and its transcript? This cannot be undone.":(()=>{let e=N?.group;if(!e)return"";let t=e.sessions.filter(e=>"running"===e.status).length,s=e.totalSessionCount-t,n=`Permanently delete ${s} session${1!==s?"s":""} in "${e.dirName}"? This cannot be undone.`;return t>0&&(n+=` ${t} running session${1!==t?"s":""} will be skipped.`),n})(),_=s.filter(e=>a.has(e.cwd)),U=s.filter(e=>!a.has(e.cwd));return(0,n.jsxs)("div",{className:"mx-auto max-w-lg p-4 pb-24 space-y-3",children:[(0,n.jsx)("h1",{className:"text-2xl font-bold",children:"Sessions"}),(0,n.jsx)(A,{}),0===s.length&&m&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No sessions found. Create one to get started."}),_.map(e=>(0,n.jsx)(O,{group:e,isFavorite:!0,onToggleFavorite:()=>$(e.cwd),onSelectSession:P,onCreateSession:e=>k(e),onDeleteSession:e=>b({type:"single",session:e}),onDeleteAll:e=>b({type:"bulk",group:e})},e.cwd)),_.length>0&&U.length>0&&(0,n.jsx)("div",{className:"border-t"}),U.map(e=>(0,n.jsx)(O,{group:e,isFavorite:!1,onToggleFavorite:()=>$(e.cwd),onSelectSession:P,onCreateSession:e=>k(e),onDeleteSession:e=>b({type:"single",session:e}),onDeleteAll:e=>b({type:"bulk",group:e})},e.cwd)),(0,n.jsx)("div",{className:"fixed bottom-6 right-6",children:(0,n.jsxs)(f.$,{size:"lg",className:"rounded-full shadow-lg",onClick:()=>c(!0),children:[(0,n.jsx)(i.A,{className:"h-5 w-5 mr-1"}),"New Session"]})}),(0,n.jsx)(E.t,{open:o,onOpenChange:c,onSubmit:D}),(0,n.jsx)(p.lG,{open:!!S,onOpenChange:e=>{e||k(null)},children:(0,n.jsxs)(p.Cf,{onClose:()=>k(null),children:[(0,n.jsx)(p.c7,{children:(0,n.jsx)(p.L3,{children:"Choose Backend"})}),(0,n.jsxs)("div",{className:"space-y-3 mt-2",children:[(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"Pick how claude runs for this session."}),(0,n.jsx)("button",{type:"button",onClick:()=>{k(null),D(S,"","pty")},className:"w-full text-left rounded-lg border border-input bg-card px-4 py-3 transition-colors hover:border-foreground hover:bg-accent",children:(0,n.jsxs)("div",{className:"flex items-center gap-3 mb-1",children:[(0,n.jsx)(d.A,{className:"h-5 w-5 text-foreground"}),(0,n.jsxs)("div",{className:"flex-1",children:[(0,n.jsx)("div",{className:"text-sm font-medium",children:"PTY (interactive)"}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground",children:"Pseudo-terminal"})]})]})}),(0,n.jsx)("button",{type:"button",onClick:()=>{k(null),D(S,"","stream")},className:"w-full text-left rounded-lg border border-input bg-card px-4 py-3 transition-colors hover:border-foreground hover:bg-accent",children:(0,n.jsxs)("div",{className:"flex items-center gap-3 mb-1",children:[(0,n.jsx)(u.A,{className:"h-5 w-5 text-foreground"}),(0,n.jsxs)("div",{className:"flex-1",children:[(0,n.jsx)("div",{className:"text-sm font-medium",children:"Stream (headless)"}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground",children:"Structured output"})]})]})})]})]})}),(0,n.jsx)(p.lG,{open:!!N,onOpenChange:()=>b(null),children:(0,n.jsxs)(p.Cf,{children:[(0,n.jsx)(p.c7,{children:(0,n.jsx)(p.L3,{children:R})}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:F}),(0,n.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,n.jsx)(f.$,{variant:"outline",onClick:()=>b(null),disabled:v,children:"Cancel"}),(0,n.jsx)(f.$,{variant:"destructive",onClick:M,disabled:v,children:v?"Deleting...":"Delete"})]})]})})]})}function M(){return(0,l.si)("Cockpit"),(0,n.jsx)("div",{className:"flex-1 min-h-0 overflow-y-auto",children:(0,n.jsx)(P,{})})}}},e=>{e.O(0,[989,41487,3765,28441,93794,77358],()=>e(e.s=14683)),_N_E=e.O()}]);
|