@aitne/dashboard 0.1.4 → 0.1.6
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 +5 -1
- package/.next/build-manifest.json +3 -3
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/diagnostics/route-bundle-stats.json +450 -356
- package/.next/fallback-build-manifest.json +3 -3
- package/.next/prerender-manifest.json +96 -0
- package/.next/routes-manifest.json +24 -0
- 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/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.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.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 +15 -15
- package/.next/server/app/_not-found.segments/_full.segment.rsc +15 -15
- package/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/.next/server/app/_not-found.segments/_index.segment.rsc +10 -10
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/activity/page.js.nft.json +1 -1
- package/.next/server/app/activity/page_client-reference-manifest.js +1 -1
- package/.next/server/app/activity.html +1 -1
- package/.next/server/app/activity.rsc +19 -19
- package/.next/server/app/activity.segments/_full.segment.rsc +19 -19
- package/.next/server/app/activity.segments/_head.segment.rsc +4 -4
- package/.next/server/app/activity.segments/_index.segment.rsc +10 -10
- package/.next/server/app/activity.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/activity.segments/activity/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/activity.segments/activity.segment.rsc +4 -4
- package/.next/server/app/analytics/page.js.nft.json +1 -1
- package/.next/server/app/analytics/page_client-reference-manifest.js +1 -1
- package/.next/server/app/analytics.html +1 -1
- package/.next/server/app/analytics.rsc +19 -19
- package/.next/server/app/analytics.segments/_full.segment.rsc +19 -19
- package/.next/server/app/analytics.segments/_head.segment.rsc +4 -4
- package/.next/server/app/analytics.segments/_index.segment.rsc +10 -10
- package/.next/server/app/analytics.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/analytics.segments/analytics/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/analytics.segments/analytics.segment.rsc +4 -4
- package/.next/server/app/api/[...path]/route.js +1 -1
- package/.next/server/app/api/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/chat/page.js.nft.json +1 -1
- package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
- package/.next/server/app/chat.html +1 -1
- package/.next/server/app/chat.rsc +17 -17
- package/.next/server/app/chat.segments/_full.segment.rsc +17 -17
- package/.next/server/app/chat.segments/_head.segment.rsc +4 -4
- package/.next/server/app/chat.segments/_index.segment.rsc +10 -10
- package/.next/server/app/chat.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/chat.segments/chat/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/chat.segments/chat.segment.rsc +3 -3
- package/.next/server/app/connections/calendar/page.js.nft.json +1 -1
- package/.next/server/app/connections/calendar/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connections/calendar.html +1 -1
- package/.next/server/app/connections/calendar.rsc +18 -18
- package/.next/server/app/connections/calendar.segments/_full.segment.rsc +18 -18
- package/.next/server/app/connections/calendar.segments/_head.segment.rsc +4 -4
- package/.next/server/app/connections/calendar.segments/_index.segment.rsc +10 -10
- package/.next/server/app/connections/calendar.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connections/calendar.segments/connections/calendar/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/connections/calendar.segments/connections/calendar.segment.rsc +3 -3
- package/.next/server/app/connections/calendar.segments/connections.segment.rsc +4 -4
- package/.next/server/app/connections/journal/page.js.nft.json +1 -1
- package/.next/server/app/connections/journal/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connections/journal.html +1 -1
- package/.next/server/app/connections/journal.rsc +16 -16
- package/.next/server/app/connections/journal.segments/_full.segment.rsc +16 -16
- package/.next/server/app/connections/journal.segments/_head.segment.rsc +4 -4
- package/.next/server/app/connections/journal.segments/_index.segment.rsc +10 -10
- package/.next/server/app/connections/journal.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connections/journal.segments/connections/journal/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/connections/journal.segments/connections/journal.segment.rsc +3 -3
- package/.next/server/app/connections/journal.segments/connections.segment.rsc +4 -4
- package/.next/server/app/connections/knowledge/page.js.nft.json +1 -1
- package/.next/server/app/connections/knowledge/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connections/knowledge.html +1 -1
- package/.next/server/app/connections/knowledge.rsc +18 -18
- package/.next/server/app/connections/knowledge.segments/_full.segment.rsc +18 -18
- package/.next/server/app/connections/knowledge.segments/_head.segment.rsc +4 -4
- package/.next/server/app/connections/knowledge.segments/_index.segment.rsc +10 -10
- package/.next/server/app/connections/knowledge.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connections/knowledge.segments/connections/knowledge/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/connections/knowledge.segments/connections/knowledge.segment.rsc +3 -3
- package/.next/server/app/connections/knowledge.segments/connections.segment.rsc +4 -4
- package/.next/server/app/connections/mail/page.js.nft.json +1 -1
- package/.next/server/app/connections/mail/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connections/mail.html +1 -1
- package/.next/server/app/connections/mail.rsc +18 -18
- package/.next/server/app/connections/mail.segments/_full.segment.rsc +18 -18
- package/.next/server/app/connections/mail.segments/_head.segment.rsc +4 -4
- package/.next/server/app/connections/mail.segments/_index.segment.rsc +10 -10
- package/.next/server/app/connections/mail.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connections/mail.segments/connections/mail/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/connections/mail.segments/connections/mail.segment.rsc +3 -3
- package/.next/server/app/connections/mail.segments/connections.segment.rsc +4 -4
- package/.next/server/app/connections/mcp/page.js.nft.json +1 -1
- package/.next/server/app/connections/mcp/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connections/mcp.html +1 -1
- package/.next/server/app/connections/mcp.rsc +18 -18
- package/.next/server/app/connections/mcp.segments/_full.segment.rsc +18 -18
- package/.next/server/app/connections/mcp.segments/_head.segment.rsc +4 -4
- package/.next/server/app/connections/mcp.segments/_index.segment.rsc +10 -10
- package/.next/server/app/connections/mcp.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connections/mcp.segments/connections/mcp/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/connections/mcp.segments/connections/mcp.segment.rsc +3 -3
- package/.next/server/app/connections/mcp.segments/connections.segment.rsc +4 -4
- package/.next/server/app/connections/messaging/page.js.nft.json +1 -1
- package/.next/server/app/connections/messaging/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connections/messaging.html +1 -1
- package/.next/server/app/connections/messaging.rsc +18 -18
- package/.next/server/app/connections/messaging.segments/_full.segment.rsc +18 -18
- package/.next/server/app/connections/messaging.segments/_head.segment.rsc +4 -4
- package/.next/server/app/connections/messaging.segments/_index.segment.rsc +10 -10
- package/.next/server/app/connections/messaging.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connections/messaging.segments/connections/messaging/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/connections/messaging.segments/connections/messaging.segment.rsc +3 -3
- package/.next/server/app/connections/messaging.segments/connections.segment.rsc +4 -4
- package/.next/server/app/connections/page.js.nft.json +1 -1
- package/.next/server/app/connections/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connections/repositories/page.js.nft.json +1 -1
- package/.next/server/app/connections/repositories/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connections/repositories.html +1 -1
- package/.next/server/app/connections/repositories.rsc +18 -18
- package/.next/server/app/connections/repositories.segments/_full.segment.rsc +18 -18
- package/.next/server/app/connections/repositories.segments/_head.segment.rsc +4 -4
- package/.next/server/app/connections/repositories.segments/_index.segment.rsc +10 -10
- package/.next/server/app/connections/repositories.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connections/repositories.segments/connections/repositories/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/connections/repositories.segments/connections/repositories.segment.rsc +3 -3
- package/.next/server/app/connections/repositories.segments/connections.segment.rsc +4 -4
- package/.next/server/app/connections/routines/page.js.nft.json +1 -1
- package/.next/server/app/connections/routines/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connections/routines.html +1 -1
- package/.next/server/app/connections/routines.rsc +16 -16
- package/.next/server/app/connections/routines.segments/_full.segment.rsc +16 -16
- package/.next/server/app/connections/routines.segments/_head.segment.rsc +4 -4
- package/.next/server/app/connections/routines.segments/_index.segment.rsc +10 -10
- package/.next/server/app/connections/routines.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connections/routines.segments/connections/routines/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/connections/routines.segments/connections/routines.segment.rsc +3 -3
- package/.next/server/app/connections/routines.segments/connections.segment.rsc +4 -4
- package/.next/server/app/connections.html +1 -1
- package/.next/server/app/connections.rsc +16 -16
- package/.next/server/app/connections.segments/_full.segment.rsc +16 -16
- package/.next/server/app/connections.segments/_head.segment.rsc +4 -4
- package/.next/server/app/connections.segments/_index.segment.rsc +10 -10
- package/.next/server/app/connections.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connections.segments/connections/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/connections.segments/connections.segment.rsc +4 -4
- package/.next/server/app/conversations/[id]/page.js.nft.json +1 -1
- package/.next/server/app/conversations/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/conversations/page.js.nft.json +1 -1
- package/.next/server/app/conversations/page_client-reference-manifest.js +1 -1
- package/.next/server/app/conversations.html +1 -1
- package/.next/server/app/conversations.rsc +15 -15
- package/.next/server/app/conversations.segments/_full.segment.rsc +15 -15
- package/.next/server/app/conversations.segments/_head.segment.rsc +4 -4
- package/.next/server/app/conversations.segments/_index.segment.rsc +10 -10
- package/.next/server/app/conversations.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/conversations.segments/conversations/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/conversations.segments/conversations.segment.rsc +3 -3
- package/.next/server/app/docs/[[...slug]]/page.js.nft.json +1 -1
- package/.next/server/app/docs/[[...slug]]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/finance/page.js.nft.json +1 -1
- package/.next/server/app/finance/page_client-reference-manifest.js +1 -1
- package/.next/server/app/finance.html +1 -1
- package/.next/server/app/finance.rsc +17 -17
- package/.next/server/app/finance.segments/_full.segment.rsc +17 -17
- package/.next/server/app/finance.segments/_head.segment.rsc +4 -4
- package/.next/server/app/finance.segments/_index.segment.rsc +10 -10
- package/.next/server/app/finance.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/finance.segments/finance/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/finance.segments/finance.segment.rsc +3 -3
- package/.next/server/app/git/page.js.nft.json +1 -1
- package/.next/server/app/git/page_client-reference-manifest.js +1 -1
- package/.next/server/app/git.html +1 -1
- package/.next/server/app/git.rsc +17 -17
- package/.next/server/app/git.segments/_full.segment.rsc +17 -17
- package/.next/server/app/git.segments/_head.segment.rsc +4 -4
- package/.next/server/app/git.segments/_index.segment.rsc +10 -10
- package/.next/server/app/git.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/git.segments/git/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/git.segments/git.segment.rsc +3 -3
- package/.next/server/app/health/page.js.nft.json +1 -1
- package/.next/server/app/health/page_client-reference-manifest.js +1 -1
- package/.next/server/app/health.html +1 -1
- package/.next/server/app/health.rsc +17 -17
- package/.next/server/app/health.segments/_full.segment.rsc +17 -17
- package/.next/server/app/health.segments/_head.segment.rsc +4 -4
- package/.next/server/app/health.segments/_index.segment.rsc +10 -10
- package/.next/server/app/health.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/health.segments/health/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/health.segments/health.segment.rsc +3 -3
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +17 -17
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/index.segments/_full.segment.rsc +17 -17
- package/.next/server/app/index.segments/_head.segment.rsc +4 -4
- package/.next/server/app/index.segments/_index.segment.rsc +10 -10
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/knowledge/page.js.nft.json +1 -1
- package/.next/server/app/knowledge/page_client-reference-manifest.js +1 -1
- package/.next/server/app/knowledge.html +1 -1
- package/.next/server/app/knowledge.rsc +18 -18
- package/.next/server/app/knowledge.segments/_full.segment.rsc +18 -18
- package/.next/server/app/knowledge.segments/_head.segment.rsc +4 -4
- package/.next/server/app/knowledge.segments/_index.segment.rsc +10 -10
- package/.next/server/app/knowledge.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/knowledge.segments/knowledge/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/knowledge.segments/knowledge.segment.rsc +4 -4
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/reading/page.js.nft.json +1 -1
- package/.next/server/app/reading/page_client-reference-manifest.js +1 -1
- package/.next/server/app/reading.html +1 -1
- package/.next/server/app/reading.rsc +17 -17
- package/.next/server/app/reading.segments/_full.segment.rsc +17 -17
- package/.next/server/app/reading.segments/_head.segment.rsc +4 -4
- package/.next/server/app/reading.segments/_index.segment.rsc +10 -10
- package/.next/server/app/reading.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/reading.segments/reading/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/reading.segments/reading.segment.rsc +3 -3
- package/.next/server/app/schedule/page.js.nft.json +1 -1
- package/.next/server/app/schedule/page_client-reference-manifest.js +1 -1
- package/.next/server/app/schedule.html +1 -1
- package/.next/server/app/schedule.rsc +17 -17
- package/.next/server/app/schedule.segments/_full.segment.rsc +17 -17
- package/.next/server/app/schedule.segments/_head.segment.rsc +4 -4
- package/.next/server/app/schedule.segments/_index.segment.rsc +10 -10
- package/.next/server/app/schedule.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/schedule.segments/schedule/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/schedule.segments/schedule.segment.rsc +3 -3
- package/.next/server/app/settings/advanced/page.js.nft.json +1 -1
- package/.next/server/app/settings/advanced/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/advanced.html +1 -1
- package/.next/server/app/settings/advanced.rsc +18 -18
- package/.next/server/app/settings/advanced.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings/advanced.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/advanced.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/advanced.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/advanced.segments/settings/advanced/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings/advanced.segments/settings/advanced.segment.rsc +3 -3
- package/.next/server/app/settings/advanced.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/backends/page.js.nft.json +1 -1
- package/.next/server/app/settings/backends/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/backends.html +1 -1
- package/.next/server/app/settings/backends.rsc +16 -16
- package/.next/server/app/settings/backends.segments/_full.segment.rsc +16 -16
- package/.next/server/app/settings/backends.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/backends.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/backends.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/backends.segments/settings/backends/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings/backends.segments/settings/backends.segment.rsc +3 -3
- package/.next/server/app/settings/backends.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/commands/page.js.nft.json +1 -1
- package/.next/server/app/settings/commands/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/commands.html +1 -1
- package/.next/server/app/settings/commands.rsc +18 -18
- package/.next/server/app/settings/commands.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings/commands.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/commands.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/commands.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/commands.segments/settings/commands/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings/commands.segments/settings/commands.segment.rsc +3 -3
- package/.next/server/app/settings/commands.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/connections/page.js.nft.json +1 -1
- package/.next/server/app/settings/connections/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/connections.html +1 -1
- package/.next/server/app/settings/connections.rsc +16 -16
- package/.next/server/app/settings/connections.segments/_full.segment.rsc +16 -16
- package/.next/server/app/settings/connections.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/connections.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/connections.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/connections.segments/settings/connections/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings/connections.segments/settings/connections.segment.rsc +3 -3
- package/.next/server/app/settings/connections.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/journal/page.js.nft.json +1 -1
- package/.next/server/app/settings/journal/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/journal.html +1 -1
- package/.next/server/app/settings/journal.rsc +18 -18
- package/.next/server/app/settings/journal.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings/journal.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/journal.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/journal.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/journal.segments/settings/journal/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings/journal.segments/settings/journal.segment.rsc +3 -3
- package/.next/server/app/settings/journal.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/management/page.js.nft.json +1 -1
- package/.next/server/app/settings/management/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/management.html +1 -1
- package/.next/server/app/settings/management.rsc +18 -18
- package/.next/server/app/settings/management.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings/management.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/management.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/management.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/management.segments/settings/management/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings/management.segments/settings/management.segment.rsc +3 -3
- package/.next/server/app/settings/management.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/messaging/page.js.nft.json +1 -1
- package/.next/server/app/settings/messaging/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/messaging.html +1 -1
- package/.next/server/app/settings/messaging.rsc +16 -16
- package/.next/server/app/settings/messaging.segments/_full.segment.rsc +16 -16
- package/.next/server/app/settings/messaging.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/messaging.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/messaging.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/messaging.segments/settings/messaging/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings/messaging.segments/settings/messaging.segment.rsc +3 -3
- package/.next/server/app/settings/messaging.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/models/page.js.nft.json +1 -1
- package/.next/server/app/settings/models/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/models.html +1 -1
- package/.next/server/app/settings/models.rsc +18 -18
- package/.next/server/app/settings/models.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings/models.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/models.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/models.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/models.segments/settings/models/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings/models.segments/settings/models.segment.rsc +3 -3
- package/.next/server/app/settings/models.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/processes/page.js.nft.json +1 -1
- package/.next/server/app/settings/processes/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/processes.html +1 -1
- package/.next/server/app/settings/processes.rsc +16 -16
- package/.next/server/app/settings/processes.segments/_full.segment.rsc +16 -16
- package/.next/server/app/settings/processes.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/processes.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/processes.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/processes.segments/settings/processes/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings/processes.segments/settings/processes.segment.rsc +3 -3
- package/.next/server/app/settings/processes.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/routines/page.js.nft.json +1 -1
- package/.next/server/app/settings/routines/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/routines.html +1 -1
- package/.next/server/app/settings/routines.rsc +18 -18
- package/.next/server/app/settings/routines.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings/routines.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/routines.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/routines.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/routines.segments/settings/routines/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings/routines.segments/settings/routines.segment.rsc +3 -3
- package/.next/server/app/settings/routines.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/schedule/page.js.nft.json +1 -1
- package/.next/server/app/settings/schedule/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/schedule.html +1 -1
- package/.next/server/app/settings/schedule.rsc +18 -18
- package/.next/server/app/settings/schedule.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings/schedule.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/schedule.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/schedule.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/schedule.segments/settings/schedule/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings/schedule.segments/settings/schedule.segment.rsc +3 -3
- package/.next/server/app/settings/schedule.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/self-learning/page.js.nft.json +1 -1
- package/.next/server/app/settings/self-learning/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/self-learning.html +1 -1
- package/.next/server/app/settings/self-learning.rsc +18 -18
- package/.next/server/app/settings/self-learning.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings/self-learning.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings/self-learning.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings/self-learning.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings/self-learning.segments/settings/self-learning/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings/self-learning.segments/settings/self-learning.segment.rsc +3 -3
- package/.next/server/app/settings/self-learning.segments/settings.segment.rsc +4 -4
- package/.next/server/app/settings/wiki/page/app-paths-manifest.json +3 -0
- package/.next/server/app/settings/wiki/page/build-manifest.json +18 -0
- package/.next/server/app/settings/wiki/page/next-font-manifest.json +6 -0
- package/.next/server/app/settings/wiki/page/react-loadable-manifest.json +8 -0
- package/.next/server/app/settings/wiki/page/server-reference-manifest.json +4 -0
- package/.next/server/app/settings/wiki/page.js +16 -0
- package/.next/server/app/settings/wiki/page.js.map +5 -0
- package/.next/server/app/settings/wiki/page.js.nft.json +1 -0
- package/.next/server/app/settings/wiki/page_client-reference-manifest.js +3 -0
- package/.next/server/app/settings/wiki/timeline/page/app-paths-manifest.json +3 -0
- package/.next/server/app/settings/wiki/timeline/page/build-manifest.json +18 -0
- package/.next/server/app/settings/wiki/timeline/page/next-font-manifest.json +6 -0
- package/.next/server/app/settings/wiki/timeline/page/react-loadable-manifest.json +8 -0
- package/.next/server/app/settings/wiki/timeline/page/server-reference-manifest.json +4 -0
- package/.next/server/app/settings/wiki/timeline/page.js +17 -0
- package/.next/server/app/settings/wiki/timeline/page.js.map +5 -0
- package/.next/server/app/settings/wiki/timeline/page.js.nft.json +1 -0
- package/.next/server/app/settings/wiki/timeline/page_client-reference-manifest.js +3 -0
- package/.next/server/app/settings/wiki/timeline.html +1 -0
- package/.next/server/app/settings/wiki/timeline.meta +17 -0
- package/.next/server/app/settings/wiki/timeline.rsc +24 -0
- package/.next/server/app/settings/wiki/timeline.segments/_full.segment.rsc +24 -0
- package/.next/server/app/settings/wiki/timeline.segments/_head.segment.rsc +6 -0
- package/.next/server/app/settings/wiki/timeline.segments/_index.segment.rsc +11 -0
- package/.next/server/app/settings/wiki/timeline.segments/_tree.segment.rsc +2 -0
- package/.next/server/app/settings/wiki/timeline.segments/settings/wiki/timeline/__PAGE__.segment.rsc +6 -0
- package/.next/server/app/settings/wiki/timeline.segments/settings/wiki/timeline.segment.rsc +5 -0
- package/.next/server/app/settings/wiki/timeline.segments/settings/wiki.segment.rsc +5 -0
- package/.next/server/app/settings/wiki/timeline.segments/settings.segment.rsc +5 -0
- package/.next/server/app/settings/wiki.html +1 -0
- package/.next/server/app/settings/wiki.meta +16 -0
- package/.next/server/app/settings/wiki.rsc +27 -0
- package/.next/server/app/settings/wiki.segments/_full.segment.rsc +27 -0
- package/.next/server/app/settings/wiki.segments/_head.segment.rsc +6 -0
- package/.next/server/app/settings/wiki.segments/_index.segment.rsc +11 -0
- package/.next/server/app/settings/wiki.segments/_tree.segment.rsc +2 -0
- package/.next/server/app/settings/wiki.segments/settings/wiki/__PAGE__.segment.rsc +9 -0
- package/.next/server/app/settings/wiki.segments/settings/wiki.segment.rsc +5 -0
- package/.next/server/app/settings/wiki.segments/settings.segment.rsc +5 -0
- package/.next/server/app/settings.html +1 -1
- package/.next/server/app/settings.rsc +18 -18
- package/.next/server/app/settings.segments/_full.segment.rsc +18 -18
- package/.next/server/app/settings.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings.segments/_index.segment.rsc +10 -10
- package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/settings.segments/settings.segment.rsc +4 -4
- package/.next/server/app/setup/page.js.nft.json +1 -1
- package/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/.next/server/app/setup.html +1 -1
- package/.next/server/app/setup.rsc +17 -17
- package/.next/server/app/setup.segments/_full.segment.rsc +17 -17
- package/.next/server/app/setup.segments/_head.segment.rsc +4 -4
- package/.next/server/app/setup.segments/_index.segment.rsc +10 -10
- package/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/setup.segments/setup.segment.rsc +3 -3
- package/.next/server/app/trip/page.js.nft.json +1 -1
- package/.next/server/app/trip/page_client-reference-manifest.js +1 -1
- package/.next/server/app/trip.html +1 -1
- package/.next/server/app/trip.rsc +17 -17
- package/.next/server/app/trip.segments/_full.segment.rsc +17 -17
- package/.next/server/app/trip.segments/_head.segment.rsc +4 -4
- package/.next/server/app/trip.segments/_index.segment.rsc +10 -10
- package/.next/server/app/trip.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/trip.segments/trip/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/trip.segments/trip.segment.rsc +3 -3
- package/.next/server/app/wiki/page/app-paths-manifest.json +3 -0
- package/.next/server/app/wiki/page/build-manifest.json +18 -0
- package/.next/server/app/wiki/page/next-font-manifest.json +6 -0
- package/.next/server/app/wiki/page/react-loadable-manifest.json +8 -0
- package/.next/server/app/wiki/page/server-reference-manifest.json +4 -0
- package/.next/server/app/wiki/page.js +15 -0
- package/.next/server/app/wiki/page.js.map +5 -0
- package/.next/server/app/wiki/page.js.nft.json +1 -0
- package/.next/server/app/wiki/page_client-reference-manifest.js +3 -0
- package/.next/server/app/wiki/timeline/page/app-paths-manifest.json +3 -0
- package/.next/server/app/wiki/timeline/page/build-manifest.json +18 -0
- package/.next/server/app/wiki/timeline/page/next-font-manifest.json +6 -0
- package/.next/server/app/wiki/timeline/page/react-loadable-manifest.json +8 -0
- package/.next/server/app/wiki/timeline/page/server-reference-manifest.json +4 -0
- package/.next/server/app/wiki/timeline/page.js +15 -0
- package/.next/server/app/wiki/timeline/page.js.map +5 -0
- package/.next/server/app/wiki/timeline/page.js.nft.json +1 -0
- package/.next/server/app/wiki/timeline/page_client-reference-manifest.js +3 -0
- package/.next/server/app/wiki/timeline.html +1 -0
- package/.next/server/app/wiki/timeline.meta +16 -0
- package/.next/server/app/wiki/timeline.rsc +26 -0
- package/.next/server/app/wiki/timeline.segments/_full.segment.rsc +26 -0
- package/.next/server/app/wiki/timeline.segments/_head.segment.rsc +6 -0
- package/.next/server/app/wiki/timeline.segments/_index.segment.rsc +11 -0
- package/.next/server/app/wiki/timeline.segments/_tree.segment.rsc +2 -0
- package/.next/server/app/wiki/timeline.segments/wiki/timeline/__PAGE__.segment.rsc +9 -0
- package/.next/server/app/wiki/timeline.segments/wiki/timeline.segment.rsc +5 -0
- package/.next/server/app/wiki/timeline.segments/wiki.segment.rsc +5 -0
- package/.next/server/app/wiki.html +1 -0
- package/.next/server/app/wiki.meta +15 -0
- package/.next/server/app/wiki.rsc +26 -0
- package/.next/server/app/wiki.segments/_full.segment.rsc +26 -0
- package/.next/server/app/wiki.segments/_head.segment.rsc +6 -0
- package/.next/server/app/wiki.segments/_index.segment.rsc +11 -0
- package/.next/server/app/wiki.segments/_tree.segment.rsc +2 -0
- package/.next/server/app/wiki.segments/wiki/__PAGE__.segment.rsc +9 -0
- package/.next/server/app/wiki.segments/wiki.segment.rsc +5 -0
- package/.next/server/app-paths-manifest.json +5 -1
- package/.next/server/chunks/0z~i_next_dist_esm_build_templates_app-route_0o_o_hp.js +1 -1
- package/.next/server/chunks/0z~i_next_dist_esm_build_templates_app-route_0o_o_hp.js.map +1 -1
- package/.next/server/chunks/{[root-of-the-server]__00gp8gz._.js → [root-of-the-server]__01knfi.._.js} +1 -1
- package/.next/server/chunks/{[root-of-the-server]__0-0wgko._.js → [root-of-the-server]__08_s4yo._.js} +2 -2
- package/.next/server/chunks/ssr/0juq_dashboard__next-internal_server_app_settings_wiki_timeline_page_actions_0czqn6z.js +3 -0
- package/.next/server/chunks/ssr/0juq_dashboard__next-internal_server_app_settings_wiki_timeline_page_actions_0czqn6z.js.map +1 -0
- package/.next/server/chunks/ssr/0mzu_lucide-react_dist_esm_icons_zap_115-27i.js +3 -0
- package/.next/server/chunks/ssr/0mzu_lucide-react_dist_esm_icons_zap_115-27i.js.map +1 -0
- package/.next/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_0k3x-na.js +4 -0
- package/.next/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_0k3x-na.js.map +1 -0
- package/.next/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_0km22.v.js +4 -0
- package/.next/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_0km22.v.js.map +1 -0
- package/.next/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_0vui1gx.js +4 -0
- package/.next/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_0vui1gx.js.map +1 -0
- package/.next/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_11h319t.js +4 -0
- package/.next/server/chunks/ssr/0z~i_next_dist_esm_build_templates_app-page_11h319t.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__007ymqm._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__007ymqm._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__00vjce2._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__00vjce2._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__07pkvm3._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__07pkvm3._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0dfuz7_._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0dfuz7_._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__117dw_l._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__117dw_l._.js.map +1 -0
- package/.next/server/chunks/ssr/_0-3uzu1._.js +3 -0
- package/.next/server/chunks/ssr/_0-3uzu1._.js.map +1 -0
- package/.next/server/chunks/ssr/_0-6jgyg._.js +3 -0
- package/.next/server/chunks/ssr/_0-6jgyg._.js.map +1 -0
- package/.next/server/chunks/ssr/_0-fv_sr._.js +1 -1
- package/.next/server/chunks/ssr/_0-fv_sr._.js.map +1 -1
- package/.next/server/chunks/ssr/_0.7pki~._.js +3 -0
- package/.next/server/chunks/ssr/_0.7pki~._.js.map +1 -0
- package/.next/server/chunks/ssr/_02s86rg._.js +3 -0
- package/.next/server/chunks/ssr/_02s86rg._.js.map +1 -0
- package/.next/server/chunks/ssr/_03bq.de._.js +3 -0
- package/.next/server/chunks/ssr/_03bq.de._.js.map +1 -0
- package/.next/server/chunks/ssr/_03u6ja0._.js +3 -0
- package/.next/server/chunks/ssr/_03u6ja0._.js.map +1 -0
- package/.next/server/chunks/ssr/_04-.z69._.js +3 -0
- package/.next/server/chunks/ssr/_04-.z69._.js.map +1 -0
- package/.next/server/chunks/ssr/_05rlac0._.js +3 -0
- package/.next/server/chunks/ssr/_05rlac0._.js.map +1 -0
- package/.next/server/chunks/ssr/_05xysbw._.js +3 -0
- package/.next/server/chunks/ssr/_05xysbw._.js.map +1 -0
- package/.next/server/chunks/ssr/_09e_66m._.js +3 -0
- package/.next/server/chunks/ssr/_09e_66m._.js.map +1 -0
- package/.next/server/chunks/ssr/_0_bnan9._.js +3 -0
- package/.next/server/chunks/ssr/_0_bnan9._.js.map +1 -0
- package/.next/server/chunks/ssr/_0b00io4._.js +3 -0
- package/.next/server/chunks/ssr/_0b00io4._.js.map +1 -0
- package/.next/server/chunks/ssr/_0es_2i2._.js +3 -0
- package/.next/server/chunks/ssr/_0es_2i2._.js.map +1 -0
- package/.next/server/chunks/ssr/_0g7_r5i._.js +3 -0
- package/.next/server/chunks/ssr/_0g7_r5i._.js.map +1 -0
- package/.next/server/chunks/ssr/_0hojxqy._.js +1 -1
- package/.next/server/chunks/ssr/_0hojxqy._.js.map +1 -1
- package/.next/server/chunks/ssr/_0ifb9jm._.js +3 -0
- package/.next/server/chunks/ssr/_0ifb9jm._.js.map +1 -0
- package/.next/server/chunks/ssr/_0jl_-u5._.js +3 -0
- package/.next/server/chunks/ssr/_0jl_-u5._.js.map +1 -0
- package/.next/server/chunks/ssr/_0lfuvjg._.js +3 -0
- package/.next/server/chunks/ssr/_0lfuvjg._.js.map +1 -0
- package/.next/server/chunks/ssr/{_0jm~wn-._.js → _0mp7n5i._.js} +2 -2
- package/.next/server/chunks/ssr/{_0jm~wn-._.js.map → _0mp7n5i._.js.map} +1 -1
- package/.next/server/chunks/ssr/_0powsoh._.js +3 -0
- package/.next/server/chunks/ssr/_0powsoh._.js.map +1 -0
- package/.next/server/chunks/ssr/_0q34y9l._.js +3 -0
- package/.next/server/chunks/ssr/_0q34y9l._.js.map +1 -0
- package/.next/server/chunks/ssr/_0q4rpi-._.js +5 -0
- package/.next/server/chunks/ssr/_0q4rpi-._.js.map +1 -0
- package/.next/server/chunks/ssr/_0rc-7d4._.js +3 -0
- package/.next/server/chunks/ssr/_0rc-7d4._.js.map +1 -0
- package/.next/server/chunks/ssr/_0tjsh16._.js +3 -0
- package/.next/server/chunks/ssr/_0tjsh16._.js.map +1 -0
- package/.next/server/chunks/ssr/_0tl98en._.js +1 -1
- package/.next/server/chunks/ssr/_0tl98en._.js.map +1 -1
- package/.next/server/chunks/ssr/{_0._ysx3._.js → _0v_6ros._.js} +2 -2
- package/.next/server/chunks/ssr/_0v_6ros._.js.map +1 -0
- package/.next/server/chunks/ssr/_0vncjim._.js +3 -0
- package/.next/server/chunks/ssr/_0vncjim._.js.map +1 -0
- package/.next/server/chunks/ssr/_0vx-jgf._.js +3 -0
- package/.next/server/chunks/ssr/_0vx-jgf._.js.map +1 -0
- package/.next/server/chunks/ssr/_0w1ez1p._.js +3 -0
- package/.next/server/chunks/ssr/_0w1ez1p._.js.map +1 -0
- package/.next/server/chunks/ssr/_0yl49yk._.js +3 -0
- package/.next/server/chunks/ssr/_0yl49yk._.js.map +1 -0
- package/.next/server/chunks/ssr/_0z1ah9x._.js +1 -1
- package/.next/server/chunks/ssr/_0z1ah9x._.js.map +1 -1
- package/.next/server/chunks/ssr/_0z9ikwn._.js +3 -0
- package/.next/server/chunks/ssr/_0z9ikwn._.js.map +1 -0
- package/.next/server/chunks/ssr/_0z_cp12._.js +3 -0
- package/.next/server/chunks/ssr/_0z_cp12._.js.map +1 -0
- package/.next/server/chunks/ssr/_10hvwg5._.js +3 -0
- package/.next/server/chunks/ssr/_10hvwg5._.js.map +1 -0
- package/.next/server/chunks/ssr/packages_dashboard__next-internal_server_app_settings_wiki_page_actions_12d~w9l.js +3 -0
- package/.next/server/chunks/ssr/packages_dashboard__next-internal_server_app_settings_wiki_page_actions_12d~w9l.js.map +1 -0
- package/.next/server/chunks/ssr/packages_dashboard__next-internal_server_app_wiki_page_actions_026bi.d.js +3 -0
- package/.next/server/chunks/ssr/packages_dashboard__next-internal_server_app_wiki_page_actions_026bi.d.js.map +1 -0
- package/.next/server/chunks/ssr/packages_dashboard__next-internal_server_app_wiki_timeline_page_actions_06jb4gg.js +3 -0
- package/.next/server/chunks/ssr/packages_dashboard__next-internal_server_app_wiki_timeline_page_actions_06jb4gg.js.map +1 -0
- package/.next/server/chunks/ssr/packages_dashboard_src_0bx940s._.js +3 -0
- package/.next/server/chunks/ssr/packages_dashboard_src_0bx940s._.js.map +1 -0
- package/.next/server/chunks/ssr/packages_dashboard_src_0fo7nqq._.js +3 -0
- package/.next/server/chunks/ssr/packages_dashboard_src_0fo7nqq._.js.map +1 -0
- package/.next/server/chunks/ssr/packages_dashboard_src_0uxs9-.._.js +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_0uxs9-.._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_activity_page_tsx_08yep46._.js +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_activity_page_tsx_08yep46._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_connections_repositories_page_tsx_08y6paq._.js +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_connections_repositories_page_tsx_08y6paq._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_git_page_tsx_0ah19-6._.js +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_git_page_tsx_0ah19-6._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_schedule_page_tsx_0znc404._.js +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_schedule_page_tsx_0znc404._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_settings_models_page_tsx_0djsx88._.js +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_settings_models_page_tsx_0djsx88._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_settings_schedule_page_tsx_0b8zr2l._.js +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_settings_schedule_page_tsx_0b8zr2l._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_settings_wiki_page_tsx_0..1tkb._.js +3 -0
- package/.next/server/chunks/ssr/packages_dashboard_src_app_settings_wiki_page_tsx_0..1tkb._.js.map +1 -0
- package/.next/server/chunks/ssr/packages_dashboard_src_app_setup_page_tsx_06k3via._.js +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_app_setup_page_tsx_06k3via._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_components_connections_slack-card_tsx_0mahejj._.js +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_components_connections_slack-card_tsx_0mahejj._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_components_settings_backend-settings_tsx_0i-tp_u._.js +3 -0
- package/.next/server/chunks/ssr/packages_dashboard_src_components_settings_backend-settings_tsx_0i-tp_u._.js.map +1 -0
- package/.next/server/chunks/ssr/packages_shared_dist_index_0kuvow-.js +1 -1
- package/.next/server/chunks/ssr/packages_shared_dist_index_0kuvow-.js.map +1 -1
- package/.next/server/middleware/middleware-manifest.json +1 -1
- package/.next/server/middleware-build-manifest.js +3 -3
- package/.next/server/middleware-manifest.json +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/static/chunks/01yix41q.0970.js +1 -0
- package/.next/static/chunks/02qjylw4yp63l.js +1 -0
- package/.next/static/chunks/06y2ddf5x9x_4.js +1 -0
- package/.next/static/chunks/{0ztl~44vjnpe1.js → 08ie9t4zn6n4-.js} +1 -1
- package/.next/static/chunks/091khs5zza4_4.js +1 -0
- package/.next/static/chunks/{0~_56pt8wsmeo.js → 0abhg-m1-acdb.js} +1 -1
- package/.next/static/chunks/0ae.1upy09t--.js +1 -0
- package/.next/static/chunks/0bvcd~k.vfro8.js +1 -0
- package/.next/static/chunks/{0g6.0r0i-wyeg.js → 0eqm47_oikj36.js} +1 -1
- package/.next/static/chunks/0fqugh~hv4my1.js +1 -0
- package/.next/static/chunks/0has04tc4mrik.js +1 -0
- package/.next/static/chunks/0huynm-qbj26k.js +1 -0
- package/.next/static/chunks/0ibq4zul6305p.js +1 -0
- package/.next/static/chunks/0jm_e6e6n~rdn.js +1 -0
- package/.next/static/chunks/0k0.4cksmybb2.js +1 -0
- package/.next/static/chunks/0l07yrtw3fxp5.js +1 -0
- package/.next/static/chunks/0nhqu-sq045x7.js +1 -0
- package/.next/static/chunks/0op3oc-if6n5-.js +3 -0
- package/.next/static/chunks/0p34n6.st3s~1.js +1 -0
- package/.next/static/chunks/0r8nosw42e2m9.js +1 -0
- package/.next/static/chunks/0shx3_mxukfhr.js +1 -0
- package/.next/static/chunks/0thm~t5g5adz1.js +1 -0
- package/.next/static/chunks/0thyr1cngc-j..css +1 -0
- package/.next/static/chunks/0ttdb_354lh4t.js +1 -0
- package/.next/static/chunks/0v..ut2v38yep.js +1 -0
- package/.next/static/chunks/{17npklzvg8-~3.js → 0vhj0k-zy6jhh.js} +1 -1
- package/.next/static/chunks/0wdx410~0~gmn.js +1 -0
- package/.next/static/chunks/0y3ptqa0bbi-h.js +1 -0
- package/.next/static/chunks/{0zbxi2grjtx.c.js → 0zx_~u_zxg_7e.js} +1 -1
- package/.next/static/chunks/{0f3kjzb~5zhc~.js → 10pq~97vgkzro.js} +1 -1
- package/.next/static/chunks/11hlk6.h1of0y.js +1 -0
- package/.next/static/chunks/13w_6v~nprp8j.js +11 -0
- package/.next/static/chunks/14-kkni6ecqaw.js +1 -0
- package/.next/static/chunks/{148a9fv~bo0gq.js → 1555iv~_t.1lp.js} +1 -1
- package/.next/static/chunks/{04bbme2th8s1_.js → 15ec5~pa1pv_z.js} +1 -1
- package/.next/static/chunks/15vc-857cdedi.js +1 -0
- package/.next/static/chunks/16zgco6hwlr-n.js +1 -0
- package/.next/types/routes.d.ts +5 -1
- package/.next/types/validator.ts +36 -0
- package/package.json +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__02idks~._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__02idks~._.js.map +0 -1
- package/.next/server/chunks/ssr/_0-8__9s._.js +0 -3
- package/.next/server/chunks/ssr/_0-8__9s._.js.map +0 -1
- package/.next/server/chunks/ssr/_0._ysx3._.js.map +0 -1
- package/.next/server/chunks/ssr/_0.h-tj4._.js +0 -3
- package/.next/server/chunks/ssr/_0.h-tj4._.js.map +0 -1
- package/.next/server/chunks/ssr/_02g4o18._.js +0 -3
- package/.next/server/chunks/ssr/_02g4o18._.js.map +0 -1
- package/.next/server/chunks/ssr/_0463dg_._.js +0 -3
- package/.next/server/chunks/ssr/_0463dg_._.js.map +0 -1
- package/.next/server/chunks/ssr/_04a42pa._.js +0 -3
- package/.next/server/chunks/ssr/_04a42pa._.js.map +0 -1
- package/.next/server/chunks/ssr/_04kt9.8._.js +0 -3
- package/.next/server/chunks/ssr/_04kt9.8._.js.map +0 -1
- package/.next/server/chunks/ssr/_052zlig._.js +0 -3
- package/.next/server/chunks/ssr/_052zlig._.js.map +0 -1
- package/.next/server/chunks/ssr/_060itkv._.js +0 -3
- package/.next/server/chunks/ssr/_060itkv._.js.map +0 -1
- package/.next/server/chunks/ssr/_07p0n9g._.js +0 -3
- package/.next/server/chunks/ssr/_07p0n9g._.js.map +0 -1
- package/.next/server/chunks/ssr/_08mbdt1._.js +0 -3
- package/.next/server/chunks/ssr/_08mbdt1._.js.map +0 -1
- package/.next/server/chunks/ssr/_08r_qwd._.js +0 -3
- package/.next/server/chunks/ssr/_08r_qwd._.js.map +0 -1
- package/.next/server/chunks/ssr/_08xk3kp._.js +0 -3
- package/.next/server/chunks/ssr/_08xk3kp._.js.map +0 -1
- package/.next/server/chunks/ssr/_0938p.1._.js +0 -3
- package/.next/server/chunks/ssr/_0938p.1._.js.map +0 -1
- package/.next/server/chunks/ssr/_0afdsbz._.js +0 -3
- package/.next/server/chunks/ssr/_0afdsbz._.js.map +0 -1
- package/.next/server/chunks/ssr/_0ff5qav._.js +0 -3
- package/.next/server/chunks/ssr/_0ff5qav._.js.map +0 -1
- package/.next/server/chunks/ssr/_0gp8d.p._.js +0 -3
- package/.next/server/chunks/ssr/_0gp8d.p._.js.map +0 -1
- package/.next/server/chunks/ssr/_0k2j6-t._.js +0 -3
- package/.next/server/chunks/ssr/_0k2j6-t._.js.map +0 -1
- package/.next/server/chunks/ssr/_0mix09j._.js +0 -3
- package/.next/server/chunks/ssr/_0mix09j._.js.map +0 -1
- package/.next/server/chunks/ssr/_0mk7dqt._.js +0 -3
- package/.next/server/chunks/ssr/_0mk7dqt._.js.map +0 -1
- package/.next/server/chunks/ssr/_0n168uk._.js +0 -3
- package/.next/server/chunks/ssr/_0n168uk._.js.map +0 -1
- package/.next/server/chunks/ssr/_0nwg6lo._.js +0 -3
- package/.next/server/chunks/ssr/_0nwg6lo._.js.map +0 -1
- package/.next/server/chunks/ssr/_0pwd-nz._.js +0 -3
- package/.next/server/chunks/ssr/_0pwd-nz._.js.map +0 -1
- package/.next/server/chunks/ssr/_0rspzax._.js +0 -3
- package/.next/server/chunks/ssr/_0rspzax._.js.map +0 -1
- package/.next/server/chunks/ssr/_0t-2u_i._.js +0 -3
- package/.next/server/chunks/ssr/_0t-2u_i._.js.map +0 -1
- package/.next/server/chunks/ssr/_0vn5_62._.js +0 -5
- package/.next/server/chunks/ssr/_0vn5_62._.js.map +0 -1
- package/.next/server/chunks/ssr/_0yiz~s5._.js +0 -3
- package/.next/server/chunks/ssr/_0yiz~s5._.js.map +0 -1
- package/.next/server/chunks/ssr/_0~4ta0s._.js +0 -3
- package/.next/server/chunks/ssr/_0~4ta0s._.js.map +0 -1
- package/.next/server/chunks/ssr/_0~5r_8s._.js +0 -3
- package/.next/server/chunks/ssr/_0~5r_8s._.js.map +0 -1
- package/.next/server/chunks/ssr/_115_o9h._.js +0 -3
- package/.next/server/chunks/ssr/_115_o9h._.js.map +0 -1
- package/.next/server/chunks/ssr/_13mk_9n._.js +0 -3
- package/.next/server/chunks/ssr/_13mk_9n._.js.map +0 -1
- package/.next/server/chunks/ssr/packages_dashboard_src_07.4ogy._.js +0 -3
- package/.next/server/chunks/ssr/packages_dashboard_src_07.4ogy._.js.map +0 -1
- package/.next/static/chunks/00p2fat~wl7uz.js +0 -1
- package/.next/static/chunks/07aksg8x5r0d9.js +0 -1
- package/.next/static/chunks/082cjr-p4ubw7.js +0 -1
- package/.next/static/chunks/09hewwcw-ts34.js +0 -1
- package/.next/static/chunks/09j~fmfefj03i.js +0 -1
- package/.next/static/chunks/0adfy5uyh_8c8.js +0 -1
- package/.next/static/chunks/0agoryx~xvt31.js +0 -1
- package/.next/static/chunks/0aoci_z-c0ele.css +0 -1
- package/.next/static/chunks/0atsym5j2dgzw.js +0 -1
- package/.next/static/chunks/0b3tta7tnnbur.js +0 -1
- package/.next/static/chunks/0d02.lqlwe9a_.js +0 -1
- package/.next/static/chunks/0eqyosc.qae5n.js +0 -1
- package/.next/static/chunks/0kkrrex6qm68-.js +0 -1
- package/.next/static/chunks/0lfxqap3b6sar.js +0 -11
- package/.next/static/chunks/0ord2b6oqi.3g.js +0 -1
- package/.next/static/chunks/0rh-ee9ky1ybq.js +0 -1
- package/.next/static/chunks/0t5v~o90gn66f.js +0 -1
- package/.next/static/chunks/0vaymprggmdwi.js +0 -3
- package/.next/static/chunks/0x2vder5-rzy3.js +0 -1
- package/.next/static/chunks/0yk64vsbmwqd8.js +0 -1
- package/.next/static/chunks/0yvzj34_7s6kb.js +0 -1
- package/.next/static/chunks/104za._t2qmr8.js +0 -1
- package/.next/static/chunks/13pe2-ed6nel..js +0 -1
- package/.next/static/chunks/13zn61okwjlyn.js +0 -1
- package/.next/static/chunks/153hm0-366-at.js +0 -1
- package/.next/static/chunks/16k3_-6f7kx97.js +0 -1
- package/.next/static/chunks/18904zqns5ncn.js +0 -1
- package/.next/trace +0 -2
- package/.next/trace-build +0 -1
- /package/.next/server/chunks/{[root-of-the-server]__00gp8gz._.js.map → [root-of-the-server]__01knfi.._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__0-0wgko._.js.map → [root-of-the-server]__08_s4yo._.js.map} +0 -0
- /package/.next/static/{CDXVH-99b-ZdHz0Rd9pr_ → lsV2FU1YUtwJPmeiim7tk}/_buildManifest.js +0 -0
- /package/.next/static/{CDXVH-99b-ZdHz0Rd9pr_ → lsV2FU1YUtwJPmeiim7tk}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{CDXVH-99b-ZdHz0Rd9pr_ → lsV2FU1YUtwJPmeiim7tk}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[21765,a=>{"use strict";var b=a.i(39752),c=a.i(34542),d=a.i(43095),e=a.i(43179),f=a.i(21218),g=a.i(30400),h=a.i(27727),i=a.i(86807),j=a.i(55140),k=a.i(50891),l=a.i(85857),m=a.i(29629),n=a.i(7384),o=a.i(8212),p=a.i(95827),q=a.i(62588),r=a.i(8753),s=a.i(81130),t=a.i(59974);let u=["git-accounts"];function v(){return(0,q.useQuery)({queryKey:u,queryFn:()=>t.api.get("/git-accounts"),staleTime:3e4})}let w=/^[a-z0-9._-]+$/,x={alias:"",type:"github",authMode:"gh-cli-profile",ghProfile:"",host:"github.com",token:""};function y(){let a,d,g=v(),h=(a=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:({alias:a,payload:b})=>t.api.put(`/git-accounts/${a}`,b),onSuccess:()=>{a.invalidateQueries({queryKey:u}),a.invalidateQueries({queryKey:["config"]})}})),i=(d=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:a=>t.api.delete(`/git-accounts/${a}`),onSuccess:()=>{d.invalidateQueries({queryKey:u}),d.invalidateQueries({queryKey:["config"]})}})),k=(0,r.useMutation)({mutationFn:a=>t.api.post(`/git-accounts/${a}/probe`,{})}),[l,n]=(0,c.useState)(x),[q,y]=(0,c.useState)(null),[A,B]=(0,c.useState)({}),C=g.data?.accounts??[],D=async()=>{if(y(null),!w.test(l.alias))return void y("Alias must use lowercase letters, digits, dot, dash, or underscore.");if("gh-cli-profile"===l.authMode&&!l.ghProfile.trim())return void y("gh-cli-profile mode requires a gh login name.");if("pat-keychain"===l.authMode&&!l.token.trim())return void y("PAT mode requires a token on first save.");try{await h.mutateAsync({alias:l.alias,payload:{type:l.type,authMode:l.authMode,host:l.host||"github.com",..."gh-cli-profile"===l.authMode?{ghProfile:l.ghProfile}:{},...l.token?{token:l.token}:{}}}),n(x)}catch(a){y(a instanceof Error?a.message:"Failed to save account.")}},E=async a=>{B(b=>({...b,[a]:"Probing…"}));try{let b=await k.mutateAsync(a),c=b.ok?`OK — authenticated as ${b.login}`:`Probe failed: ${b.reason??"unknown"}`;B(b=>({...b,[a]:c}))}catch(b){B(c=>({...c,[a]:b instanceof Error?b.message:"Probe failed"}))}};return(0,b.jsx)(p.ConnectionCard,{name:"Git Accounts",icon:(0,b.jsx)(j.KeyRound,{className:"h-4 w-4"}),status:(0,p.deriveConfiguredStatus)(C.length>0),children:(0,b.jsxs)("div",{className:"mt-2 space-y-3",children:[(0,b.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Named credentials attached to watched repositories via"," ",(0,b.jsx)("code",{className:"rounded bg-muted px-1",children:"accountAlias"}),". Direct mode injects the resolved token per poll; Delegated mode currently uses the default ",(0,b.jsx)("code",{children:"gh"})," profile."]}),q&&(0,b.jsx)(m.Alert,{variant:"error",children:q}),(0,b.jsxs)("div",{className:"space-y-2",children:[0===C.length&&(0,b.jsx)("p",{className:"text-xs italic text-muted-foreground",children:"No accounts configured. Add one below."}),C.map(a=>(0,b.jsx)(z,{entry:a,onDelete:()=>i.mutate(a.alias),onProbe:()=>E(a.alias),probeMessage:A[a.alias],busy:i.isPending||k.isPending},a.alias))]}),(0,b.jsxs)("div",{className:"space-y-2 rounded border bg-background p-3",children:[(0,b.jsx)("p",{className:"text-xs font-medium",children:"Add account"}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsx)(o.Input,{value:l.alias,onChange:a=>n(b=>({...b,alias:a.target.value})),placeholder:"alias (e.g. work-github)",className:"max-w-[200px]"}),(0,b.jsxs)("select",{value:l.authMode,onChange:a=>n(b=>({...b,authMode:a.target.value})),className:"h-9 rounded border bg-background px-2 text-sm",children:[(0,b.jsx)("option",{value:"gh-cli-profile",children:"gh CLI profile"}),(0,b.jsx)("option",{value:"pat-keychain",children:"Personal Access Token"})]}),(0,b.jsx)(o.Input,{value:l.host,onChange:a=>n(b=>({...b,host:a.target.value})),placeholder:"github.com",className:"max-w-[180px]"}),"gh-cli-profile"===l.authMode?(0,b.jsx)(o.Input,{value:l.ghProfile,onChange:a=>n(b=>({...b,ghProfile:a.target.value})),placeholder:"gh login name (e.g. alice)",className:"max-w-[220px]"}):(0,b.jsx)(o.Input,{type:"password",value:l.token,onChange:a=>n(b=>({...b,token:a.target.value})),placeholder:"ghp_… (PAT — never persisted to disk)",className:"max-w-[280px]"}),(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",onClick:D,disabled:h.isPending||!l.alias.trim(),children:[(0,b.jsx)(e.Plus,{className:"mr-1 h-3.5 w-3.5"}),"Save"]})]})]})]})})}function z({entry:a,onDelete:c,onProbe:d,probeMessage:e,busy:g}){return(0,b.jsxs)("div",{className:"flex flex-col gap-2 rounded border bg-background p-2 sm:flex-row sm:items-center",children:[(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("p",{className:"font-mono text-sm font-medium",children:a.alias}),(0,b.jsxs)("div",{className:"mt-1 flex flex-wrap items-center gap-1.5",children:[(0,b.jsx)(n.Badge,{variant:"gray",children:a.host}),(0,b.jsx)(n.Badge,{variant:"pat-keychain"===a.authMode?"green":"gray",children:a.authMode}),a.ghProfile&&(0,b.jsxs)(n.Badge,{variant:"gray",children:["user: ",a.ghProfile]}),!0===a.tokenStored&&(0,b.jsx)(n.Badge,{variant:"green",children:"token stored"}),!1===a.tokenStored&&(0,b.jsx)(n.Badge,{variant:"red",children:"no token"})]}),e&&(0,b.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:e})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsxs)(f.Button,{size:"sm",variant:"ghost",onClick:d,disabled:g,children:[(0,b.jsx)(k.ShieldCheck,{className:"mr-1 h-3.5 w-3.5"}),"Probe"]}),(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:c,disabled:g,className:"h-8 w-8 p-0",children:(0,b.jsx)(l.X,{className:"h-3.5 w-3.5"})})]})]})}var A=a.i(5423);let B=(0,A.default)("FileType2",[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M2 13v-1h6v1",key:"1dh9dg"}],["path",{d:"M5 12v6",key:"150t9c"}],["path",{d:"M4 18h2",key:"1xrofg"}]]);var C=a.i(92241),D=a.i(87759),E=a.i(95024),F=a.i(61213);let G=a=>["git-template",a],H=["git-template","retemplate-status"];function I(){return(0,q.useQuery)({queryKey:H,queryFn:()=>t.api.get("/git/templates/retemplate/status"),refetchInterval:a=>{let b=a.state.data;return!!(b?.status&&!b.status.finalizedAt)&&2e3},staleTime:1e3})}function J(a){return"project"===a?"Project (projects/<slug>.md)":"Repo-only (git-repos/<slug>.md)"}let K=["project","git-repo"];function L(){let a=I(),c=a.data?.status??null,d=function(a){if(!a)return null;if(!a.finalizedAt)return{label:"Re-template in progress…",tone:"info"};switch(a.finalStatus){case"success":default:return{label:"Re-template completed",tone:"success"};case"partial":return{label:"Re-template completed with rollbacks",tone:"warning"};case"failed":return{label:"Re-template failed",tone:"error"}}}(c);return(0,b.jsx)(p.ConnectionCard,{name:"Project document templates",icon:(0,b.jsx)(B,{className:"h-4 w-4"}),status:(0,p.deriveConfiguredStatus)(!0),children:(0,b.jsxs)("div",{className:"mt-2 space-y-3",children:[(0,b.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Edit the templates the agent uses when it (re)writes"," ",(0,b.jsx)("code",{className:"rounded bg-muted px-1",children:"context/projects/<slug>.md"})," ","and"," ",(0,b.jsx)("code",{className:"rounded bg-muted px-1",children:"context/git-repos/<slug>.md"}),". Changes are forward-only — existing files keep their old shape until the next git lifecycle event touches them, or until you press “Apply” below to re-conform every existing file at once."]}),d&&(0,b.jsx)(m.Alert,{variant:"error"===d.tone?"error":"warning"===d.tone?"warning":"success"===d.tone?"success":"info",children:(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsx)("span",{children:d.label}),c&&(0,b.jsxs)("span",{className:"text-xs font-mono text-muted-foreground",children:[c.kind," · run #",c.scheduleId]})]})}),K.map(a=>(0,b.jsx)(M,{kind:a},a)),(0,b.jsx)(N,{})]})})}function M({kind:a}){let d,e,g,h=(0,q.useQuery)({queryKey:G(a),queryFn:()=>t.api.get(`/git/templates/${encodeURIComponent(a)}`),staleTime:5e3}),i=(d=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:b=>t.api.put(`/git/templates/${encodeURIComponent(a)}`,{content:b}),onSuccess:()=>{d.invalidateQueries({queryKey:G(a)})}})),j=(e=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:()=>t.api.post(`/git/templates/${encodeURIComponent(a)}/apply`),onSuccess:()=>{e.invalidateQueries({queryKey:H})}})),[k,l]=(0,c.useState)(null),[o,p]=(0,c.useState)(null),[u,v]=(0,c.useState)(!1),[w,x]=(0,c.useState)(null),y=h.data?.active??"",z=h.data?.bundled??"",A=h.data?.hasOverride??!1,B=k??y,I=null!==k&&k!==y,K=async()=>{if(null!==k){p(null);try{await i.mutateAsync(k),l(null)}catch(a){p(a instanceof Error?a.message:"Failed to save template")}}},L=(g=J(a),{title:`Re-template 0 ${"project"===a?"project":"git-repo"} documents?`,bullets:[`${g} files will be re-conformed to the current template body.`,"Re-templating may lose information or formatting that the new template does not represent. Files matching the previous schema's sections may have content moved, merged, or dropped depending on how the template changed.","Every targeted file is auto-backed up before the run. The backup path is shown after you confirm.","If a file's session aborts mid-write, the daemon restores it from backup automatically."],acknowledge:"Yes, apply the template"}),N=async()=>{p(null);try{let a=await j.mutateAsync();x(a),v(!1)}catch(a){p(a instanceof Error?a.message:"Failed to apply template")}};return(0,b.jsxs)("div",{className:"rounded border bg-card p-3 space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-sm font-medium",children:J(a)}),A&&(0,b.jsx)(n.Badge,{variant:"green",children:"overridden"})]}),(0,b.jsx)("span",{className:"text-xs text-muted-foreground",children:"project"===a?"project.md":"git-repo.md"})]}),o&&(0,b.jsx)(m.Alert,{variant:"error",children:o}),(0,b.jsxs)("div",{className:"grid gap-2 lg:grid-cols-2",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"mb-1 text-xs font-medium text-muted-foreground",children:"Bundled (read-only)"}),(0,b.jsx)("textarea",{value:z,readOnly:!0,className:"h-64 w-full resize-none rounded border bg-muted p-2 font-mono text-xs"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"mb-1 text-xs font-medium text-muted-foreground",children:"Active (edit and save)"}),(0,b.jsx)("textarea",{value:B,onChange:a=>l(a.target.value),className:"h-64 w-full resize-none rounded border bg-background p-2 font-mono text-xs",spellCheck:!1,disabled:h.isLoading})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",onClick:K,disabled:!I||i.isPending,children:[(0,b.jsx)(E.Save,{className:"mr-1 h-3.5 w-3.5"}),"Save template"]}),(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:()=>{l(z)},disabled:h.isLoading,children:"Reset to bundled"}),(0,b.jsxs)(f.Button,{size:"sm",variant:"default",onClick:()=>v(!0),disabled:j.isPending,children:[j.isPending?(0,b.jsx)(C.Loader2,{className:"mr-1 h-3.5 w-3.5 animate-spin"}):(0,b.jsx)(D.Play,{className:"mr-1 h-3.5 w-3.5"}),"Apply current template to existing ","project"===a?"projects":"git-repos"]})]}),w&&(0,b.jsx)(m.Alert,{variant:"info",children:(0,b.jsxs)("div",{className:"space-y-1 text-xs",children:[(0,b.jsxs)("div",{children:["Re-template enqueued — schedule #",w.scheduleId,","," ",w.targets.length," file(s) backed up."]}),(0,b.jsxs)("div",{className:"font-mono text-muted-foreground break-all",children:["backup: ",w.backupRoot]})]})}),(0,b.jsx)(F.Sheet,{open:u,onOpenChange:v,children:(0,b.jsxs)(F.SheetContent,{side:"right",className:"w-[480px] sm:w-[540px]",children:[(0,b.jsx)(F.SheetHeader,{children:(0,b.jsx)(F.SheetTitle,{children:L.title})}),(0,b.jsxs)("div",{className:"mt-4 space-y-3 text-sm",children:[(0,b.jsx)("ul",{className:"list-disc space-y-1 pl-5",children:L.bullets.map(a=>(0,b.jsx)("li",{children:a},a))}),(0,b.jsxs)("div",{className:"flex gap-2 pt-2",children:[(0,b.jsxs)(f.Button,{size:"sm",onClick:N,disabled:j.isPending,children:[j.isPending&&(0,b.jsx)(C.Loader2,{className:"mr-1 h-3.5 w-3.5 animate-spin"}),L.acknowledge]}),(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:()=>v(!1),children:"Cancel"})]})]})]})})]})}function N(){let a=I(),d=a.data?.status??null,e=(0,c.useMemo)(()=>d?Object.values(d.files).map(a=>({slug:a.slug,contextFile:a.contextFile,status:a.status,reason:a.reason??null,error:a.error??null,bytesDelta:void 0!==a.beforeBytes&&void 0!==a.afterBytes?a.afterBytes-a.beforeBytes:null,startedAt:a.startedAt??null,completedAt:a.completedAt??null})).sort((a,b)=>a.slug.localeCompare(b.slug)):[],[d]),f=(0,c.useMemo)(()=>(function(a){let b={pending:0,started:0,completed:0,skipped:0,failed:0,rolled_back:0};for(let c of a)b[c.status]+=1;return b})(e),[e]);return d?(0,b.jsxs)("div",{className:"rounded border bg-card p-3 space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)("span",{className:"text-sm font-medium",children:"Last re-template run"}),(0,b.jsx)("div",{className:"flex flex-wrap gap-1 text-xs",children:Object.entries(f).map(([a,c])=>c>0?(0,b.jsxs)(n.Badge,{variant:O(a),children:[a,": ",c]},a):null)})]}),(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full text-xs",children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{className:"border-b text-left text-muted-foreground",children:[(0,b.jsx)("th",{className:"px-2 py-1",children:"Slug"}),(0,b.jsx)("th",{className:"px-2 py-1",children:"Status"}),(0,b.jsx)("th",{className:"px-2 py-1",children:"File"}),(0,b.jsx)("th",{className:"px-2 py-1",children:"Bytes Δ"}),(0,b.jsx)("th",{className:"px-2 py-1",children:"Note"})]})}),(0,b.jsx)("tbody",{children:e.map(a=>(0,b.jsxs)("tr",{className:"border-b last:border-0",children:[(0,b.jsx)("td",{className:"px-2 py-1 font-mono",children:a.slug}),(0,b.jsx)("td",{className:"px-2 py-1",children:(0,b.jsx)(n.Badge,{variant:O(a.status),children:a.status})}),(0,b.jsx)("td",{className:"px-2 py-1 font-mono text-muted-foreground",children:a.contextFile}),(0,b.jsx)("td",{className:"px-2 py-1",children:null===a.bytesDelta?"—":a.bytesDelta>=0?`+${a.bytesDelta}`:`${a.bytesDelta}`}),(0,b.jsx)("td",{className:"px-2 py-1 text-muted-foreground",children:a.error??a.reason??""})]},a.slug))})]})})]}):(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"No re-template runs recorded yet."})}function O(a){switch(a){case"completed":return"green";case"skipped":return"gray";case"started":case"pending":return"blue";case"failed":return"red";case"rolled_back":return"amber";default:return"default"}}let P=(0,A.default)("FilePen",[["path",{d:"M12.5 22H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v9.5",key:"1couwa"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M13.378 15.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"1y4qbx"}]]);var Q=a.i(70297);let R=["task-flows"],S=["git.","github."];function T(){let a,d,e=(0,q.useQuery)({queryKey:R,queryFn:()=>t.api.get("/task-flows"),staleTime:3e4}),g=(0,c.useMemo)(()=>(e.data?.flows??[]).filter(a=>S.some(b=>a.key.startsWith(b))),[e.data]),[h,i]=(0,c.useState)(null),j=h??(g.length>0?g[0].key:null),k=(0,q.useQuery)({queryKey:["task-flow",j],queryFn:()=>null===j?Promise.reject(Error("no_key")):t.api.get(`/task-flows/${encodeURIComponent(j)}`),enabled:null!==j,staleTime:5e3}),l=(a=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:({key:a,content:b})=>t.api.put(`/task-flows/${encodeURIComponent(a)}`,{content:b}),onSuccess:(b,{key:c})=>{a.invalidateQueries({queryKey:R}),a.invalidateQueries({queryKey:["task-flow",c]})}})),o=(d=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:a=>t.api.delete(`/task-flows/${encodeURIComponent(a)}`),onSuccess:(a,b)=>{d.invalidateQueries({queryKey:R}),d.invalidateQueries({queryKey:["task-flow",b]})}})),[u,v]=(0,c.useState)({}),[w,x]=(0,c.useState)(null),y=j?u[j]??k.data?.override??k.data?.bundled??"":"",z=!!j&&void 0!==u[j]&&u[j]!==(k.data?.override??""),A=g.filter(a=>a.hasOverride).length,B=async()=>{if(j){x(null);try{await l.mutateAsync({key:j,content:y})}catch(a){x(a instanceof Error?a.message:"Failed to save override")}}},C=async()=>{if(j){x(null);try{await o.mutateAsync(j),v(a=>{let b={...a};return delete b[j],b})}catch(a){x(a instanceof Error?a.message:"Failed to reset")}}};return(0,b.jsx)(p.ConnectionCard,{name:"Task Flow Overrides",icon:(0,b.jsx)(P,{className:"h-4 w-4"}),status:(0,p.deriveConfiguredStatus)(A>0),children:(0,b.jsxs)("div",{className:"mt-2 space-y-3",children:[(0,b.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Override the prompt body the dispatcher uses for a Git/GitHub event. The bundled body stays read-only on the left; your edits land at ",(0,b.jsx)("code",{className:"rounded bg-muted px-1",children:"~/.personal-agent/task-flows/<key>.md"})," ","and take effect on the next session. Resetting falls back to bundled."]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,b.jsxs)("select",{value:j??"",onChange:a=>i(a.target.value||null),className:"h-9 min-w-[260px] rounded border bg-background px-2 text-sm",disabled:0===g.length,children:[0===g.length&&(0,b.jsx)("option",{value:"",children:"No git.* / github.* keys"}),g.map(a=>(0,b.jsxs)("option",{value:a.key,children:[a.key,a.hasOverride?" ★":""]},a.key))]}),k.data?.hasOverride&&(0,b.jsx)(n.Badge,{variant:"green",children:"overridden"})]}),w&&(0,b.jsx)(m.Alert,{variant:"error",children:w}),(0,b.jsxs)("div",{className:"grid gap-3 lg:grid-cols-2",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"mb-1 text-xs font-medium text-muted-foreground",children:"Bundled (read-only)"}),(0,b.jsx)("textarea",{value:k.data?.bundled??"",readOnly:!0,className:"h-72 w-full resize-none rounded border bg-muted p-2 font-mono text-xs"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"mb-1 text-xs font-medium text-muted-foreground",children:"Override (edit and save)"}),(0,b.jsx)("textarea",{value:y,onChange:a=>{var b;return b=a.target.value,void(j&&v(a=>({...a,[j]:b})))},className:"h-72 w-full resize-none rounded border bg-background p-2 font-mono text-xs",spellCheck:!1})]})]}),(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",onClick:B,disabled:!j||l.isPending||!z,children:[(0,b.jsx)(E.Save,{className:"mr-1 h-3.5 w-3.5"}),"Save override"]}),(0,b.jsxs)(f.Button,{size:"sm",variant:"ghost",onClick:C,disabled:!j||o.isPending||!k.data?.hasOverride,children:[(0,b.jsx)(Q.RotateCcw,{className:"mr-1 h-3.5 w-3.5"}),"Reset to bundled"]})]})]})})}var U=a.i(33165),V=a.i(36581),W=a.i(62988),X=a.i(33432),Y=a.i(11307);let Z=(0,A.default)("Github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]);var $=a.i(48033),_=a.i(7037),aa=a.i(96336);let ab=(0,A.default)("Unlink",[["path",{d:"m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71",key:"yqzxt4"}],["path",{d:"m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71",key:"4qinb0"}],["line",{x1:"8",x2:"8",y1:"2",y2:"5",key:"1041cp"}],["line",{x1:"2",x2:"5",y1:"8",y2:"8",key:"14m1p5"}],["line",{x1:"16",x2:"16",y1:"19",y2:"22",key:"rzdirn"}],["line",{x1:"19",x2:"22",y1:"16",y2:"16",key:"ox905f"}]]);var ac=a.i(28314),ad=a.i(91534),ae=a.i(21283);let af="text-[11px] font-medium uppercase tracking-wider text-muted-foreground",ag=["project","repo-only"],ah=["work","personal","research","client","other"];function ai({repo:a}){let[h,i]=(0,c.useState)(!1),[j,k]=(0,c.useState)(!1),[l,m]=(0,c.useState)(!1),o=(0,ae.useDeleteRepository)(),p=(0,ae.useUpdateRepository)(),q=(0,ac.useConfirm)(),r=(0,ae.repositoryHasGithub)(a),s=(0,ae.repositoryHasLocal)(a),t=a.localOnly,u=async()=>{await q({title:`Delete ${(0,ae.repositoryDisplayName)(a)}?`,description:"This removes the repository registration along with its triggers and management state. The local clone on disk is not touched.",confirmLabel:"Delete",variant:"destructive"})&&await o.mutateAsync(a.id)},v=async b=>{b&&r?await q({title:"Mark as local-only?",description:"This will clear the GitHub link. To keep both sides, leave 'local-only' off.",confirmLabel:"Mark local-only"})&&await p.mutateAsync({id:a.id,body:{localOnly:!0,githubOwner:null,githubRepo:null,githubAccount:null}}):await p.mutateAsync({id:a.id,body:{localOnly:b}})},w=async()=>{r?await q({title:"Unlink local clone?",description:`The clone at ${a.localPath} stays on disk; only the registration is detached.`,confirmLabel:"Unlink"})&&await p.mutateAsync({id:a.id,body:{localPath:null}}):await q({title:"Cannot unlink the local clone",description:"This row has no GitHub side, so unlinking would leave it empty. Delete the repository instead.",confirmLabel:"OK"})},x=async()=>{!await q({title:"Unlink GitHub remote?",description:s?"The local clone stays registered.":"This row has no local clone, so unlinking would leave it empty. Use 'Mark local-only' instead.",confirmLabel:"Unlink"})||s&&await p.mutateAsync({id:a.id,body:{githubOwner:null,githubRepo:null,githubAccount:null}})};return(0,b.jsxs)(g.Card,{children:[(0,b.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(d.GitBranch,{className:"h-4 w-4 text-muted-foreground"}),(0,b.jsx)("span",{className:"truncate text-sm font-medium text-foreground",children:(0,ae.repositoryDisplayName)(a)}),t&&(0,b.jsxs)(n.Badge,{variant:"gray",className:"text-[10px]",children:[(0,b.jsx)($.Lock,{className:"mr-1 h-3 w-3"}),"local-only"]}),(0,b.jsx)(n.Badge,{variant:"project"===a.classification?"green":"gray",children:a.classification}),(0,b.jsx)(n.Badge,{variant:"gray",children:a.category})]}),(0,b.jsx)("p",{className:"mt-1 truncate text-[11px] text-muted-foreground",children:a.id})]}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-1",children:[(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:()=>i(!0),title:"Edit",children:(0,b.jsx)(_.Pencil,{className:"h-3.5 w-3.5"})}),(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:u,title:"Delete",children:(0,b.jsx)(aa.Trash2,{className:"h-3.5 w-3.5"})})]})]}),(0,b.jsxs)("div",{className:"mt-3 grid gap-3 md:grid-cols-2",children:[(0,b.jsxs)("div",{className:"rounded-md border bg-background/40 p-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5 text-xs font-medium text-muted-foreground",children:[(0,b.jsx)(Z,{className:"h-3.5 w-3.5"}),"GitHub"]}),r?(0,b.jsxs)("div",{className:"mt-1 space-y-1 text-sm",children:[(0,b.jsxs)("p",{className:"font-medium",children:[a.githubOwner,"/",a.githubRepo]}),(0,b.jsxs)("p",{className:"text-[11px] text-muted-foreground",children:["account: ",a.githubAccount??"default"]}),s&&!t&&(0,b.jsxs)(f.Button,{size:"sm",variant:"ghost",className:"mt-1 h-7 px-1.5",onClick:x,children:[(0,b.jsx)(ab,{className:"mr-1 h-3 w-3"}),"Unlink"]})]}):t?(0,b.jsx)("p",{className:"mt-2 text-xs text-muted-foreground",children:"Local-only — toggle off to enable GitHub linking."}):(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",className:"mt-2 h-8",onClick:()=>k(!0),children:[(0,b.jsx)(e.Plus,{className:"mr-1 h-3 w-3"}),"Link GitHub remote"]})]}),(0,b.jsxs)("div",{className:"rounded-md border bg-background/40 p-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5 text-xs font-medium text-muted-foreground",children:[(0,b.jsx)(Y.FolderOpen,{className:"h-3.5 w-3.5"}),"Local clone"]}),s?(0,b.jsxs)("div",{className:"mt-1 space-y-1 text-sm",children:[(0,b.jsx)("p",{className:"truncate font-medium",title:a.localPath??"",children:a.localPath}),(0,b.jsxs)("p",{className:"text-[11px] text-muted-foreground",children:["slug: ",(0,b.jsx)("span",{className:"font-mono",children:a.slug})]}),r&&(0,b.jsxs)(f.Button,{size:"sm",variant:"ghost",className:"mt-1 h-7 px-1.5",onClick:w,children:[(0,b.jsx)(ab,{className:"mr-1 h-3 w-3"}),"Unlink"]})]}):(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",className:"mt-2 h-8",onClick:()=>m(!0),children:[(0,b.jsx)(e.Plus,{className:"mr-1 h-3 w-3"}),"Link local clone"]})]})]}),(0,b.jsxs)("div",{className:"mt-3 flex items-center justify-between text-[11px] text-muted-foreground",children:[(0,b.jsxs)("label",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("input",{type:"checkbox",checked:t,disabled:p.isPending,onChange:a=>void v(a.target.checked)}),"Local-only repository"]}),(0,b.jsxs)(W.default,{href:"/git",className:"flex items-center gap-1 text-foreground underline-offset-2 hover:underline",children:["Configure polling & triggers in my life › git",(0,b.jsx)(X.ArrowUpRight,{className:"h-3 w-3"})]})]}),h&&(0,b.jsx)(aj,{repo:a,onClose:()=>i(!1)}),j&&(0,b.jsx)(ak,{repo:a,onClose:()=>k(!1)}),l&&(0,b.jsx)(al,{repo:a,onClose:()=>m(!1)})]})}function aj({repo:a,onClose:d}){let e=(0,ae.useUpdateRepository)(),[g,h]=(0,c.useState)(a.displayName??""),[i,j]=(0,c.useState)(a.classification),[k,l]=(0,c.useState)(a.category),[m,n]=(0,c.useState)(null),p=async b=>{b.preventDefault(),n(null);try{let b={displayName:g.trim()?g.trim():null,classification:i,category:k};await e.mutateAsync({id:a.id,body:b}),d()}catch(a){n(a instanceof Error?a.message:"Failed to save changes")}};return(0,b.jsx)(F.Sheet,{open:!0,onOpenChange:a=>!a&&d(),children:(0,b.jsxs)(F.SheetContent,{className:"overflow-y-auto",children:[(0,b.jsx)(F.SheetHeader,{children:(0,b.jsx)(F.SheetTitle,{children:"Edit repository metadata"})}),(0,b.jsxs)("form",{onSubmit:p,className:"mt-6 space-y-4",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Display name"}),(0,b.jsx)(o.Input,{value:g,onChange:a=>h(a.target.value),placeholder:(0,ae.repositoryDisplayName)(a)}),(0,b.jsx)("p",{className:"text-[11px] text-muted-foreground",children:"Optional — drives the slug used for context paths and dashboard deep-links."})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Classification"}),(0,b.jsx)("select",{value:i,onChange:a=>j(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:ag.map(a=>(0,b.jsx)("option",{value:a,children:a},a))}),(0,b.jsx)("p",{className:"text-[11px] text-muted-foreground",children:"Project entries carry lifecycle phases in the overview MD; repo-only stays lightweight."})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Category"}),(0,b.jsx)("select",{value:k,onChange:a=>l(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:ah.map(a=>(0,b.jsx)("option",{value:a,children:a},a))})]}),m&&(0,b.jsx)("p",{className:"rounded-md border border-red-200 bg-red-50/50 p-2 text-xs text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:m}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t pt-4",children:[(0,b.jsx)(f.Button,{type:"button",variant:"ghost",onClick:d,children:"Cancel"}),(0,b.jsx)(f.Button,{type:"submit",disabled:e.isPending,children:e.isPending?"Saving…":"Save"})]})]})]})})}function ak({repo:a,onClose:d}){let e=(0,ae.useLinkGithub)(),{data:g}=v(),[h,i]=(0,c.useState)(""),[j,k]=(0,c.useState)(""),[l,m]=(0,c.useState)(""),[n,p]=(0,c.useState)(null),q=async b=>{if(b.preventDefault(),p(null),!h.trim()||!j.trim())return void p("owner and repo are required");try{await e.mutateAsync({id:a.id,owner:h.trim(),repo:j.trim(),account:l.trim()||void 0}),d()}catch(a){p(a instanceof Error?a.message:"Failed to link")}};return(0,b.jsx)(F.Sheet,{open:!0,onOpenChange:a=>!a&&d(),children:(0,b.jsxs)(F.SheetContent,{className:"overflow-y-auto",children:[(0,b.jsx)(F.SheetHeader,{children:(0,b.jsx)(F.SheetTitle,{children:"Link a GitHub remote"})}),(0,b.jsxs)("form",{onSubmit:q,className:"mt-6 space-y-4",children:[(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"Personal accounts on github.com only. GHES is not in scope for v1."}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-2",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Owner"}),(0,b.jsx)(o.Input,{value:h,onChange:a=>i(a.target.value),placeholder:"acme",autoFocus:!0})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Repository"}),(0,b.jsx)(o.Input,{value:j,onChange:a=>k(a.target.value),placeholder:"widgets"})]})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Account alias"}),(0,b.jsxs)("select",{value:l,onChange:a=>m(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:[(0,b.jsx)("option",{value:"",children:"default"}),(g?.accounts??[]).map(a=>(0,b.jsx)("option",{value:a.alias,children:a.alias},a.alias))]})]}),n&&(0,b.jsx)("p",{className:"rounded-md border border-red-200 bg-red-50/50 p-2 text-xs text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:n}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t pt-4",children:[(0,b.jsx)(f.Button,{type:"button",variant:"ghost",onClick:d,children:"Cancel"}),(0,b.jsx)(f.Button,{type:"submit",disabled:e.isPending,children:e.isPending?"Linking…":"Link"})]})]})]})})}function al({repo:a,onClose:d}){let e=(0,ae.useLinkLocal)(),[g,h]=(0,c.useState)(""),[i,j]=(0,c.useState)(null),k=async b=>{if(b.preventDefault(),j(null),!g.trim())return void j("Local path is required");try{await e.mutateAsync({id:a.id,localPath:g.trim()}),d()}catch(a){j(a instanceof Error?a.message:"Failed to link")}};return(0,b.jsx)(F.Sheet,{open:!0,onOpenChange:a=>!a&&d(),children:(0,b.jsxs)(F.SheetContent,{className:"overflow-y-auto",children:[(0,b.jsx)(F.SheetHeader,{children:(0,b.jsx)(F.SheetTitle,{children:"Link a local clone"})}),(0,b.jsxs)("form",{onSubmit:k,className:"mt-6 space-y-4",children:[(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"Pick the directory of the local clone of this repository. The agent never inspects `.git/config` to suggest values — paths are user-supplied."}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Repository directory"}),(0,b.jsx)(ad.DirectoryPickerField,{value:g,onChange:h,title:"Choose local clone directory"})]}),i&&(0,b.jsx)("p",{className:"rounded-md border border-red-200 bg-red-50/50 p-2 text-xs text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:i}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t pt-4",children:[(0,b.jsx)(f.Button,{type:"button",variant:"ghost",onClick:d,children:"Cancel"}),(0,b.jsx)(f.Button,{type:"submit",disabled:e.isPending,children:e.isPending?"Linking…":"Link"})]})]})]})})}let am="text-[11px] font-medium uppercase tracking-wider text-muted-foreground",an="text-[11px] leading-relaxed text-muted-foreground",ao="text-[11px] font-medium uppercase tracking-wider text-muted-foreground",ap=[{value:"both",label:"GitHub + local clone",description:"Recommended. Agent watches GitHub activity AND reads files from your local clone."},{value:"github",label:"GitHub only",description:"Agent watches PRs, issues, and commits on GitHub. No access to source files."},{value:"local",label:"Local folder only",description:"Agent watches a folder on this Mac. No GitHub remote — e.g. a private working directory."}],aq=[{value:"repo-only",label:"Just track activity",description:"Lightweight. Agent logs commits, PRs, and issues. No long-form project document."},{value:"project",label:"Treat as a project",description:"Agent maintains a rich project document with goals, decisions, and milestones in your context notes."}],ar=["work","personal","research","client","other"];function as({onClose:a}){let d=(0,ae.useCreateRepository)(),{data:e}=v(),[g,h]=(0,c.useState)("both"),[i,j]=(0,c.useState)(""),[k,l]=(0,c.useState)(""),[m,n]=(0,c.useState)(""),[p,q]=(0,c.useState)(""),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(""),[w,x]=(0,c.useState)("repo-only"),[y,z]=(0,c.useState)("other"),[A,B]=(0,c.useState)(null),C="github"===g||"both"===g&&!r,D="local"===g||"both"===g,E=async b=>{b.preventDefault(),B(null);let c={classification:w,category:y,displayName:t.trim()?t.trim():void 0};if(C){if(!i.trim()||!k.trim())return void B("GitHub owner and repository are required.");c.githubOwner=i.trim(),c.githubRepo=k.trim(),m.trim()&&(c.githubAccount=m.trim())}if(D){if(!p.trim())return void B("Local clone path is required.");c.localPath=p.trim()}"local"===g&&r&&(c.localOnly=!0);try{await d.mutateAsync(c),a()}catch(a){B(a instanceof Error?a.message:"Failed to add repository")}},G=e?.accounts??[];return(0,b.jsx)(F.Sheet,{open:!0,onOpenChange:b=>!b&&a(),children:(0,b.jsxs)(F.SheetContent,{className:"overflow-y-auto",children:[(0,b.jsxs)(F.SheetHeader,{children:[(0,b.jsx)(F.SheetTitle,{children:"Add repository"}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"Tell the agent about a code repository to watch. It will track activity (commits, PRs, issues) and optionally maintain a project document in your context notes."})]}),(0,b.jsxs)("form",{onSubmit:E,className:"mt-6 space-y-6",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:am,children:"Where does this repository live?"}),(0,b.jsx)("div",{className:"grid gap-2",children:ap.map(a=>{let c=g===a.value;return(0,b.jsxs)("button",{type:"button",onClick:()=>h(a.value),className:"rounded-md border px-3 py-2 text-left transition-colors "+(c?"border-primary bg-primary/10":"border-border hover:bg-accent"),children:[(0,b.jsx)("div",{className:"text-sm font-medium "+(c?"text-primary":"text-foreground"),children:a.label}),(0,b.jsx)("div",{className:an+" mt-0.5",children:a.description})]},a.value)})})]}),C&&(0,b.jsxs)("div",{className:"space-y-3 rounded-md border bg-background/40 p-3",children:[(0,b.jsxs)("div",{className:"space-y-1",children:[(0,b.jsx)("p",{className:ao,children:"GitHub remote"}),(0,b.jsxs)("p",{className:an,children:["From the GitHub URL"," ",(0,b.jsx)("code",{className:"rounded bg-muted px-1 py-px text-[10px]",children:"github.com/acme/widgets"}),", the owner is ",(0,b.jsx)("strong",{children:"acme"})," and the repository is"," ",(0,b.jsx)("strong",{children:"widgets"}),"."]})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-2",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:am,children:"Owner (user or org)"}),(0,b.jsx)(o.Input,{value:i,onChange:a=>j(a.target.value),placeholder:"acme"})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:am,children:"Repository name"}),(0,b.jsx)(o.Input,{value:k,onChange:a=>l(a.target.value),placeholder:"widgets"})]})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:am,children:"GitHub account to use"}),(0,b.jsxs)("select",{value:m,onChange:a=>n(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:[(0,b.jsx)("option",{value:"",children:"default"}),G.map(a=>(0,b.jsx)("option",{value:a.alias,children:a.alias},a.alias))]}),(0,b.jsxs)("p",{className:an,children:["Which set of GitHub credentials the agent should use to read this repo."," ",0===G.length?"Only the default account is set up — manage more under Connections → GitHub accounts.":"Manage accounts under Connections → GitHub accounts."]})]})]}),D&&(0,b.jsxs)("div",{className:"space-y-3 rounded-md border bg-background/40 p-3",children:[(0,b.jsxs)("div",{className:"space-y-1",children:[(0,b.jsx)("p",{className:ao,children:"Local clone"}),(0,b.jsx)("p",{className:an,children:"Folder on this Mac where the repo is checked out. The agent reads source files, commits, and uncommitted changes from here."})]}),(0,b.jsx)(ad.DirectoryPickerField,{value:p,onChange:q,title:"Choose local clone directory"}),"local"===g&&(0,b.jsxs)("label",{className:"flex items-start gap-2 text-xs text-muted-foreground",children:[(0,b.jsx)("input",{type:"checkbox",checked:r,onChange:a=>s(a.target.checked),className:"mt-0.5"}),(0,b.jsx)("span",{children:"This folder is not (and will never be) backed by a GitHub remote. Skip GitHub linking permanently."})]})]}),(0,b.jsxs)("div",{className:"space-y-3 rounded-md border bg-background/40 p-3",children:[(0,b.jsx)("p",{className:ao,children:"Naming & tracking"}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:am,children:"Display name (optional)"}),(0,b.jsx)(o.Input,{value:t,onChange:a=>u(a.target.value),placeholder:"Leave blank to use the repo or folder name"}),(0,b.jsx)("p",{className:an,children:"How this repository appears in the dashboard and in your context notes."})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:am,children:"How should the agent treat this?"}),(0,b.jsx)("div",{className:"grid gap-2",children:aq.map(a=>{let c=w===a.value;return(0,b.jsxs)("button",{type:"button",onClick:()=>x(a.value),className:"rounded-md border px-3 py-2 text-left transition-colors "+(c?"border-primary bg-primary/10":"border-border hover:bg-accent"),children:[(0,b.jsx)("div",{className:"text-sm font-medium "+(c?"text-primary":"text-foreground"),children:a.label}),(0,b.jsx)("div",{className:an+" mt-0.5",children:a.description})]},a.value)})})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:am,children:"Category (tag)"}),(0,b.jsx)("select",{value:y,onChange:a=>z(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:ar.map(a=>(0,b.jsx)("option",{value:a,children:a},a))}),(0,b.jsx)("p",{className:an,children:"Used to group repositories in the dashboard. Pick whichever feels right."})]})]}),A&&(0,b.jsx)("p",{className:"rounded-md border border-red-200 bg-red-50/50 p-2 text-xs text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:A}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t pt-4",children:[(0,b.jsx)(f.Button,{type:"button",variant:"ghost",onClick:a,children:"Cancel"}),(0,b.jsx)(f.Button,{type:"submit",disabled:d.isPending,children:d.isPending?"Adding…":"Add repository"})]})]})]})})}var at=a.i(40410);a.s(["default",0,function(){let a=(0,ae.useRepositories)(),{data:j,isLoading:k}=(0,at.useHealth)(),[l,m]=(0,c.useState)(!1),n=a.data?.repositories??[],o=n.length,p=n.filter(a=>a.githubOwner&&a.githubRepo).length,q=n.filter(a=>a.localPath).length,r=a.isLoading||k,s=!r&&(!a.data||!j);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(i.ConnectionsSectionHeader,{title:"Repositories",description:"Each repository pairs an optional GitHub remote and an optional local clone. Configure polling, triggers, and daily git management on the my life › git page.",healthy:+(o>0),total:1,actions:(0,b.jsxs)(f.Button,{onClick:()=>m(!0),children:[(0,b.jsx)(e.Plus,{className:"h-4 w-4"}),"Add repository"]})}),s&&(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"Daemon not connected. Start the daemon to manage repositories."}),!r&&(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsx)(V.IntegrationCard,{integrationKey:"git"}),(0,b.jsx)(V.IntegrationCard,{integrationKey:"github"}),0===n.length?(0,b.jsx)(h.EmptyState,{icon:d.GitBranch,title:"No repositories registered",description:"Add a repository to start watching commits, polling GitHub events, and wiring per-repo triggers.",children:(0,b.jsxs)(f.Button,{className:"mt-4",onClick:()=>m(!0),children:[(0,b.jsx)(e.Plus,{className:"h-4 w-4"}),"Add your first repository"]})}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(g.Card,{className:"flex items-center justify-between text-xs text-muted-foreground",children:(0,b.jsxs)("span",{children:[o," repositor",1===o?"y":"ies"," ·"," ",p," with GitHub · ",q," with local clone"]})}),(0,b.jsx)("div",{className:"space-y-3",children:n.map(a=>(0,b.jsx)(ai,{repo:a},a.id))})]}),(0,b.jsx)(y,{}),(0,b.jsx)(L,{}),(0,b.jsx)(T,{}),(0,b.jsx)(U.ProcessModelCard,{processKey:"git.project.init",title:"Git Project Init Model",description:"Generates the initial overview MD when daily git management is first enabled for a repository."}),(0,b.jsx)(U.ProcessModelCard,{processKey:"git.project.update",title:"Git Project Update Model",description:"Runs the daily 24h scan that appends to journal MDs and curates overview sections."}),(0,b.jsx)(U.ProcessModelCard,{processKey:"git.project.retemplate",title:"Git Project Re-template Model",description:"One-shot session that re-conforms existing project documents to the current template body."})]}),l&&(0,b.jsx)(as,{onClose:()=>m(!1)})]})}],21765)}];
|
|
1
|
+
module.exports=[21765,a=>{"use strict";var b=a.i(39752),c=a.i(34542),d=a.i(43095),e=a.i(43179),f=a.i(21218),g=a.i(30400),h=a.i(27727),i=a.i(86807),j=a.i(55140),k=a.i(50891),l=a.i(85857),m=a.i(29629),n=a.i(7384),o=a.i(8212),p=a.i(95827),q=a.i(62588),r=a.i(8753),s=a.i(81130),t=a.i(59974);let u=["git-accounts"];function v(){return(0,q.useQuery)({queryKey:u,queryFn:()=>t.api.get("/git-accounts"),staleTime:3e4})}let w=/^[a-z0-9._-]+$/,x={alias:"",type:"github",authMode:"gh-cli-profile",ghProfile:"",host:"github.com",token:""};function y(){let a,d,g=v(),h=(a=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:({alias:a,payload:b})=>t.api.put(`/git-accounts/${a}`,b),onSuccess:()=>{a.invalidateQueries({queryKey:u}),a.invalidateQueries({queryKey:["config"]})}})),i=(d=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:a=>t.api.delete(`/git-accounts/${a}`),onSuccess:()=>{d.invalidateQueries({queryKey:u}),d.invalidateQueries({queryKey:["config"]})}})),k=(0,r.useMutation)({mutationFn:a=>t.api.post(`/git-accounts/${a}/probe`,{})}),[l,n]=(0,c.useState)(x),[q,y]=(0,c.useState)(null),[A,B]=(0,c.useState)({}),C=g.data?.accounts??[],D=async()=>{if(y(null),!w.test(l.alias))return void y("Alias must use lowercase letters, digits, dot, dash, or underscore.");if("gh-cli-profile"===l.authMode&&!l.ghProfile.trim())return void y("gh-cli-profile mode requires a gh login name.");if("pat-keychain"===l.authMode&&!l.token.trim())return void y("PAT mode requires a token on first save.");try{await h.mutateAsync({alias:l.alias,payload:{type:l.type,authMode:l.authMode,host:l.host||"github.com",..."gh-cli-profile"===l.authMode?{ghProfile:l.ghProfile}:{},...l.token?{token:l.token}:{}}}),n(x)}catch(a){y(a instanceof Error?a.message:"Failed to save account.")}},E=async a=>{B(b=>({...b,[a]:"Probing…"}));try{let b=await k.mutateAsync(a),c=b.ok?`OK — authenticated as ${b.login}`:`Probe failed: ${b.reason??"unknown"}`;B(b=>({...b,[a]:c}))}catch(b){B(c=>({...c,[a]:b instanceof Error?b.message:"Probe failed"}))}};return(0,b.jsx)(p.ConnectionCard,{name:"Git Accounts",icon:(0,b.jsx)(j.KeyRound,{className:"h-4 w-4"}),status:(0,p.deriveConfiguredStatus)(C.length>0),children:(0,b.jsxs)("div",{className:"mt-2 space-y-3",children:[(0,b.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Named credentials attached to watched repositories via"," ",(0,b.jsx)("code",{className:"rounded bg-muted px-1",children:"accountAlias"}),". Direct mode injects the resolved token per poll; Delegated mode currently uses the default ",(0,b.jsx)("code",{children:"gh"})," profile."]}),q&&(0,b.jsx)(m.Alert,{variant:"error",children:q}),(0,b.jsxs)("div",{className:"space-y-2",children:[0===C.length&&(0,b.jsx)("p",{className:"text-xs italic text-muted-foreground",children:"No accounts configured. Add one below."}),C.map(a=>(0,b.jsx)(z,{entry:a,onDelete:()=>i.mutate(a.alias),onProbe:()=>E(a.alias),probeMessage:A[a.alias],busy:i.isPending||k.isPending},a.alias))]}),(0,b.jsxs)("div",{className:"space-y-2 rounded border bg-background p-3",children:[(0,b.jsx)("p",{className:"text-xs font-medium",children:"Add account"}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsx)(o.Input,{value:l.alias,onChange:a=>n(b=>({...b,alias:a.target.value})),placeholder:"alias (e.g. work-github)",className:"max-w-[200px]"}),(0,b.jsxs)("select",{value:l.authMode,onChange:a=>n(b=>({...b,authMode:a.target.value})),className:"h-9 rounded border bg-background px-2 text-sm",children:[(0,b.jsx)("option",{value:"gh-cli-profile",children:"gh CLI profile"}),(0,b.jsx)("option",{value:"pat-keychain",children:"Personal Access Token"})]}),(0,b.jsx)(o.Input,{value:l.host,onChange:a=>n(b=>({...b,host:a.target.value})),placeholder:"github.com",className:"max-w-[180px]"}),"gh-cli-profile"===l.authMode?(0,b.jsx)(o.Input,{value:l.ghProfile,onChange:a=>n(b=>({...b,ghProfile:a.target.value})),placeholder:"gh login name (e.g. alice)",className:"max-w-[220px]"}):(0,b.jsx)(o.Input,{type:"password",value:l.token,onChange:a=>n(b=>({...b,token:a.target.value})),placeholder:"ghp_… (PAT — never persisted to disk)",className:"max-w-[280px]"}),(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",onClick:D,disabled:h.isPending||!l.alias.trim(),children:[(0,b.jsx)(e.Plus,{className:"mr-1 h-3.5 w-3.5"}),"Save"]})]})]})]})})}function z({entry:a,onDelete:c,onProbe:d,probeMessage:e,busy:g}){return(0,b.jsxs)("div",{className:"flex flex-col gap-2 rounded border bg-background p-2 sm:flex-row sm:items-center",children:[(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("p",{className:"font-mono text-sm font-medium",children:a.alias}),(0,b.jsxs)("div",{className:"mt-1 flex flex-wrap items-center gap-1.5",children:[(0,b.jsx)(n.Badge,{variant:"gray",children:a.host}),(0,b.jsx)(n.Badge,{variant:"pat-keychain"===a.authMode?"green":"gray",children:a.authMode}),a.ghProfile&&(0,b.jsxs)(n.Badge,{variant:"gray",children:["user: ",a.ghProfile]}),!0===a.tokenStored&&(0,b.jsx)(n.Badge,{variant:"green",children:"token stored"}),!1===a.tokenStored&&(0,b.jsx)(n.Badge,{variant:"red",children:"no token"})]}),e&&(0,b.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:e})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsxs)(f.Button,{size:"sm",variant:"ghost",onClick:d,disabled:g,children:[(0,b.jsx)(k.ShieldCheck,{className:"mr-1 h-3.5 w-3.5"}),"Probe"]}),(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:c,disabled:g,className:"h-8 w-8 p-0",children:(0,b.jsx)(l.X,{className:"h-3.5 w-3.5"})})]})]})}var A=a.i(5423);let B=(0,A.default)("FileType2",[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M2 13v-1h6v1",key:"1dh9dg"}],["path",{d:"M5 12v6",key:"150t9c"}],["path",{d:"M4 18h2",key:"1xrofg"}]]);var C=a.i(92241),D=a.i(87759),E=a.i(95024),F=a.i(61213);let G=a=>["git-template",a],H=["git-template","retemplate-status"];function I(){return(0,q.useQuery)({queryKey:H,queryFn:()=>t.api.get("/git/templates/retemplate/status"),refetchInterval:a=>{let b=a.state.data;return!!(b?.status&&!b.status.finalizedAt)&&2e3},staleTime:1e3})}function J(a){return"project"===a?"Project (projects/<slug>.md)":"Repo-only (git-repos/<slug>.md)"}let K=["project","git-repo"];function L(){let a=I(),c=a.data?.status??null,d=function(a){if(!a)return null;if(!a.finalizedAt)return{label:"Re-template in progress…",tone:"info"};switch(a.finalStatus){case"success":default:return{label:"Re-template completed",tone:"success"};case"partial":return{label:"Re-template completed with rollbacks",tone:"warning"};case"failed":return{label:"Re-template failed",tone:"error"}}}(c);return(0,b.jsx)(p.ConnectionCard,{name:"Project document templates",icon:(0,b.jsx)(B,{className:"h-4 w-4"}),status:(0,p.deriveConfiguredStatus)(!0),children:(0,b.jsxs)("div",{className:"mt-2 space-y-3",children:[(0,b.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Edit the templates the agent uses when it (re)writes"," ",(0,b.jsx)("code",{className:"rounded bg-muted px-1",children:"context/projects/<slug>.md"})," ","and"," ",(0,b.jsx)("code",{className:"rounded bg-muted px-1",children:"context/git-repos/<slug>.md"}),". Changes are forward-only — existing files keep their old shape until the next git lifecycle event touches them, or until you press “Apply” below to re-conform every existing file at once."]}),d&&(0,b.jsx)(m.Alert,{variant:"error"===d.tone?"error":"warning"===d.tone?"warning":"success"===d.tone?"success":"info",children:(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsx)("span",{children:d.label}),c&&(0,b.jsxs)("span",{className:"text-xs font-mono text-muted-foreground",children:[c.kind," · run #",c.scheduleId]})]})}),K.map(a=>(0,b.jsx)(M,{kind:a},a)),(0,b.jsx)(N,{})]})})}function M({kind:a}){let d,e,g,h=(0,q.useQuery)({queryKey:G(a),queryFn:()=>t.api.get(`/git/templates/${encodeURIComponent(a)}`),staleTime:5e3}),i=(d=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:b=>t.api.put(`/git/templates/${encodeURIComponent(a)}`,{content:b}),onSuccess:()=>{d.invalidateQueries({queryKey:G(a)})}})),j=(e=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:()=>t.api.post(`/git/templates/${encodeURIComponent(a)}/apply`),onSuccess:()=>{e.invalidateQueries({queryKey:H})}})),[k,l]=(0,c.useState)(null),[o,p]=(0,c.useState)(null),[u,v]=(0,c.useState)(!1),[w,x]=(0,c.useState)(null),y=h.data?.active??"",z=h.data?.bundled??"",A=h.data?.hasOverride??!1,B=k??y,I=null!==k&&k!==y,K=async()=>{if(null!==k){p(null);try{await i.mutateAsync(k),l(null)}catch(a){p(a instanceof Error?a.message:"Failed to save template")}}},L=(g=J(a),{title:`Re-template 0 ${"project"===a?"project":"git-repo"} documents?`,bullets:[`${g} files will be re-conformed to the current template body.`,"Re-templating may lose information or formatting that the new template does not represent. Files matching the previous schema's sections may have content moved, merged, or dropped depending on how the template changed.","Every targeted file is auto-backed up before the run. The backup path is shown after you confirm.","If a file's session aborts mid-write, the daemon restores it from backup automatically."],acknowledge:"Yes, apply the template"}),N=async()=>{p(null);try{let a=await j.mutateAsync();x(a),v(!1)}catch(a){p(a instanceof Error?a.message:"Failed to apply template")}};return(0,b.jsxs)("div",{className:"rounded border bg-card p-3 space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-sm font-medium",children:J(a)}),A&&(0,b.jsx)(n.Badge,{variant:"green",children:"overridden"})]}),(0,b.jsx)("span",{className:"text-xs text-muted-foreground",children:"project"===a?"project.md":"git-repo.md"})]}),o&&(0,b.jsx)(m.Alert,{variant:"error",children:o}),(0,b.jsxs)("div",{className:"grid gap-2 lg:grid-cols-2",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"mb-1 text-xs font-medium text-muted-foreground",children:"Bundled (read-only)"}),(0,b.jsx)("textarea",{value:z,readOnly:!0,className:"h-64 w-full resize-none rounded border bg-muted p-2 font-mono text-xs"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"mb-1 text-xs font-medium text-muted-foreground",children:"Active (edit and save)"}),(0,b.jsx)("textarea",{value:B,onChange:a=>l(a.target.value),className:"h-64 w-full resize-none rounded border bg-background p-2 font-mono text-xs",spellCheck:!1,disabled:h.isLoading})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",onClick:K,disabled:!I||i.isPending,children:[(0,b.jsx)(E.Save,{className:"mr-1 h-3.5 w-3.5"}),"Save template"]}),(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:()=>{l(z)},disabled:h.isLoading,children:"Reset to bundled"}),(0,b.jsxs)(f.Button,{size:"sm",variant:"default",onClick:()=>v(!0),disabled:j.isPending,children:[j.isPending?(0,b.jsx)(C.Loader2,{className:"mr-1 h-3.5 w-3.5 animate-spin"}):(0,b.jsx)(D.Play,{className:"mr-1 h-3.5 w-3.5"}),"Apply current template to existing ","project"===a?"projects":"git-repos"]})]}),w&&(0,b.jsx)(m.Alert,{variant:"info",children:(0,b.jsxs)("div",{className:"space-y-1 text-xs",children:[(0,b.jsxs)("div",{children:["Re-template enqueued — schedule #",w.scheduleId,","," ",w.targets.length," file(s) backed up."]}),(0,b.jsxs)("div",{className:"font-mono text-muted-foreground break-all",children:["backup: ",w.backupRoot]})]})}),(0,b.jsx)(F.Sheet,{open:u,onOpenChange:v,children:(0,b.jsxs)(F.SheetContent,{side:"right",className:"w-[480px] sm:w-[540px]",children:[(0,b.jsx)(F.SheetHeader,{children:(0,b.jsx)(F.SheetTitle,{children:L.title})}),(0,b.jsxs)("div",{className:"mt-4 space-y-3 text-sm",children:[(0,b.jsx)("ul",{className:"list-disc space-y-1 pl-5",children:L.bullets.map(a=>(0,b.jsx)("li",{children:a},a))}),(0,b.jsxs)("div",{className:"flex gap-2 pt-2",children:[(0,b.jsxs)(f.Button,{size:"sm",onClick:N,disabled:j.isPending,children:[j.isPending&&(0,b.jsx)(C.Loader2,{className:"mr-1 h-3.5 w-3.5 animate-spin"}),L.acknowledge]}),(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:()=>v(!1),children:"Cancel"})]})]})]})})]})}function N(){let a=I(),d=a.data?.status??null,e=(0,c.useMemo)(()=>d?Object.values(d.files).map(a=>({slug:a.slug,contextFile:a.contextFile,status:a.status,reason:a.reason??null,error:a.error??null,bytesDelta:void 0!==a.beforeBytes&&void 0!==a.afterBytes?a.afterBytes-a.beforeBytes:null,startedAt:a.startedAt??null,completedAt:a.completedAt??null})).sort((a,b)=>a.slug.localeCompare(b.slug)):[],[d]),f=(0,c.useMemo)(()=>(function(a){let b={pending:0,started:0,completed:0,skipped:0,failed:0,rolled_back:0};for(let c of a)b[c.status]+=1;return b})(e),[e]);return d?(0,b.jsxs)("div",{className:"rounded border bg-card p-3 space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)("span",{className:"text-sm font-medium",children:"Last re-template run"}),(0,b.jsx)("div",{className:"flex flex-wrap gap-1 text-xs",children:Object.entries(f).map(([a,c])=>c>0?(0,b.jsxs)(n.Badge,{variant:O(a),children:[a,": ",c]},a):null)})]}),(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full text-xs",children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{className:"border-b text-left text-muted-foreground",children:[(0,b.jsx)("th",{className:"px-2 py-1",children:"Slug"}),(0,b.jsx)("th",{className:"px-2 py-1",children:"Status"}),(0,b.jsx)("th",{className:"px-2 py-1",children:"File"}),(0,b.jsx)("th",{className:"px-2 py-1",children:"Bytes Δ"}),(0,b.jsx)("th",{className:"px-2 py-1",children:"Note"})]})}),(0,b.jsx)("tbody",{children:e.map(a=>(0,b.jsxs)("tr",{className:"border-b last:border-0",children:[(0,b.jsx)("td",{className:"px-2 py-1 font-mono",children:a.slug}),(0,b.jsx)("td",{className:"px-2 py-1",children:(0,b.jsx)(n.Badge,{variant:O(a.status),children:a.status})}),(0,b.jsx)("td",{className:"px-2 py-1 font-mono text-muted-foreground",children:a.contextFile}),(0,b.jsx)("td",{className:"px-2 py-1",children:null===a.bytesDelta?"—":a.bytesDelta>=0?`+${a.bytesDelta}`:`${a.bytesDelta}`}),(0,b.jsx)("td",{className:"px-2 py-1 text-muted-foreground",children:a.error??a.reason??""})]},a.slug))})]})})]}):(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"No re-template runs recorded yet."})}function O(a){switch(a){case"completed":return"green";case"skipped":return"gray";case"started":case"pending":return"blue";case"failed":return"red";case"rolled_back":return"amber";default:return"default"}}let P=(0,A.default)("FilePen",[["path",{d:"M12.5 22H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v9.5",key:"1couwa"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M13.378 15.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"1y4qbx"}]]);var Q=a.i(70297);let R=["task-flows"],S=["git.","github."];function T(){let a,d,e=(0,q.useQuery)({queryKey:R,queryFn:()=>t.api.get("/task-flows"),staleTime:3e4}),g=(0,c.useMemo)(()=>(e.data?.flows??[]).filter(a=>S.some(b=>a.key.startsWith(b))),[e.data]),[h,i]=(0,c.useState)(null),j=h??(g.length>0?g[0].key:null),k=(0,q.useQuery)({queryKey:["task-flow",j],queryFn:()=>null===j?Promise.reject(Error("no_key")):t.api.get(`/task-flows/${encodeURIComponent(j)}`),enabled:null!==j,staleTime:5e3}),l=(a=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:({key:a,content:b})=>t.api.put(`/task-flows/${encodeURIComponent(a)}`,{content:b}),onSuccess:(b,{key:c})=>{a.invalidateQueries({queryKey:R}),a.invalidateQueries({queryKey:["task-flow",c]})}})),o=(d=(0,s.useQueryClient)(),(0,r.useMutation)({mutationFn:a=>t.api.delete(`/task-flows/${encodeURIComponent(a)}`),onSuccess:(a,b)=>{d.invalidateQueries({queryKey:R}),d.invalidateQueries({queryKey:["task-flow",b]})}})),[u,v]=(0,c.useState)({}),[w,x]=(0,c.useState)(null),y=j?u[j]??k.data?.override??k.data?.bundled??"":"",z=!!j&&void 0!==u[j]&&u[j]!==(k.data?.override??""),A=g.filter(a=>a.hasOverride).length,B=async()=>{if(j){x(null);try{await l.mutateAsync({key:j,content:y})}catch(a){x(a instanceof Error?a.message:"Failed to save override")}}},C=async()=>{if(j){x(null);try{await o.mutateAsync(j),v(a=>{let b={...a};return delete b[j],b})}catch(a){x(a instanceof Error?a.message:"Failed to reset")}}};return(0,b.jsx)(p.ConnectionCard,{name:"Task Flow Overrides",icon:(0,b.jsx)(P,{className:"h-4 w-4"}),status:(0,p.deriveConfiguredStatus)(A>0),children:(0,b.jsxs)("div",{className:"mt-2 space-y-3",children:[(0,b.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Override the prompt body the dispatcher uses for a Git/GitHub event. The bundled body stays read-only on the left; your edits land at ",(0,b.jsx)("code",{className:"rounded bg-muted px-1",children:"~/.personal-agent/task-flows/<key>.md"})," ","and take effect on the next session. Resetting falls back to bundled."]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,b.jsxs)("select",{value:j??"",onChange:a=>i(a.target.value||null),className:"h-9 min-w-[260px] rounded border bg-background px-2 text-sm",disabled:0===g.length,children:[0===g.length&&(0,b.jsx)("option",{value:"",children:"No git.* / github.* keys"}),g.map(a=>(0,b.jsxs)("option",{value:a.key,children:[a.key,a.hasOverride?" ★":""]},a.key))]}),k.data?.hasOverride&&(0,b.jsx)(n.Badge,{variant:"green",children:"overridden"})]}),w&&(0,b.jsx)(m.Alert,{variant:"error",children:w}),(0,b.jsxs)("div",{className:"grid gap-3 lg:grid-cols-2",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"mb-1 text-xs font-medium text-muted-foreground",children:"Bundled (read-only)"}),(0,b.jsx)("textarea",{value:k.data?.bundled??"",readOnly:!0,className:"h-72 w-full resize-none rounded border bg-muted p-2 font-mono text-xs"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"mb-1 text-xs font-medium text-muted-foreground",children:"Override (edit and save)"}),(0,b.jsx)("textarea",{value:y,onChange:a=>{var b;return b=a.target.value,void(j&&v(a=>({...a,[j]:b})))},className:"h-72 w-full resize-none rounded border bg-background p-2 font-mono text-xs",spellCheck:!1})]})]}),(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",onClick:B,disabled:!j||l.isPending||!z,children:[(0,b.jsx)(E.Save,{className:"mr-1 h-3.5 w-3.5"}),"Save override"]}),(0,b.jsxs)(f.Button,{size:"sm",variant:"ghost",onClick:C,disabled:!j||o.isPending||!k.data?.hasOverride,children:[(0,b.jsx)(Q.RotateCcw,{className:"mr-1 h-3.5 w-3.5"}),"Reset to bundled"]})]})]})})}var U=a.i(33165),V=a.i(36581),W=a.i(62988),X=a.i(33432),Y=a.i(11307);let Z=(0,A.default)("Github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]);var $=a.i(48033),_=a.i(7037),aa=a.i(96336);let ab=(0,A.default)("Unlink",[["path",{d:"m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71",key:"yqzxt4"}],["path",{d:"m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71",key:"4qinb0"}],["line",{x1:"8",x2:"8",y1:"2",y2:"5",key:"1041cp"}],["line",{x1:"2",x2:"5",y1:"8",y2:"8",key:"14m1p5"}],["line",{x1:"16",x2:"16",y1:"19",y2:"22",key:"rzdirn"}],["line",{x1:"19",x2:"22",y1:"16",y2:"16",key:"ox905f"}]]);var ac=a.i(28314),ad=a.i(91534),ae=a.i(21283);let af="text-[11px] font-medium uppercase tracking-wider text-muted-foreground",ag=["project","repo-only"],ah=["work","personal","research","client","other"];function ai({repo:a}){let[h,i]=(0,c.useState)(!1),[j,k]=(0,c.useState)(!1),[l,m]=(0,c.useState)(!1),o=(0,ae.useDeleteRepository)(),p=(0,ae.useUpdateRepository)(),q=(0,ac.useConfirm)(),r=(0,ae.repositoryHasGithub)(a),s=(0,ae.repositoryHasLocal)(a),t=a.localOnly,u=async()=>{await q({title:`Delete ${(0,ae.repositoryDisplayName)(a)}?`,description:"This removes the repository registration along with its triggers and management state. The local clone on disk is not touched.",confirmLabel:"Delete",variant:"destructive"})&&await o.mutateAsync(a.id)},v=async b=>{b&&r?await q({title:"Mark as local-only?",description:"This will clear the GitHub link. To keep both sides, leave 'local-only' off.",confirmLabel:"Mark local-only"})&&await p.mutateAsync({id:a.id,body:{localOnly:!0,githubOwner:null,githubRepo:null,githubAccount:null}}):await p.mutateAsync({id:a.id,body:{localOnly:b}})},w=async()=>{r?await q({title:"Unlink local clone?",description:`The clone at ${a.localPath} stays on disk; only the registration is detached.`,confirmLabel:"Unlink"})&&await p.mutateAsync({id:a.id,body:{localPath:null}}):await q({title:"Cannot unlink the local clone",description:"This row has no GitHub side, so unlinking would leave it empty. Delete the repository instead.",confirmLabel:"OK"})},x=async()=>{!await q({title:"Unlink GitHub remote?",description:s?"The local clone stays registered.":"This row has no local clone, so unlinking would leave it empty. Use 'Mark local-only' instead.",confirmLabel:"Unlink"})||s&&await p.mutateAsync({id:a.id,body:{githubOwner:null,githubRepo:null,githubAccount:null}})};return(0,b.jsxs)(g.Card,{children:[(0,b.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(d.GitBranch,{className:"h-4 w-4 text-muted-foreground"}),(0,b.jsx)("span",{className:"truncate text-sm font-medium text-foreground",children:(0,ae.repositoryDisplayName)(a)}),t&&(0,b.jsxs)(n.Badge,{variant:"gray",className:"text-[10px]",children:[(0,b.jsx)($.Lock,{className:"mr-1 h-3 w-3"}),"local-only"]}),(0,b.jsx)(n.Badge,{variant:"project"===a.classification?"green":"gray",children:a.classification}),(0,b.jsx)(n.Badge,{variant:"gray",children:a.category})]}),(0,b.jsx)("p",{className:"mt-1 truncate text-[11px] text-muted-foreground",children:a.id})]}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-1",children:[(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:()=>i(!0),title:"Edit",children:(0,b.jsx)(_.Pencil,{className:"h-3.5 w-3.5"})}),(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",onClick:u,title:"Delete",children:(0,b.jsx)(aa.Trash2,{className:"h-3.5 w-3.5"})})]})]}),(0,b.jsxs)("div",{className:"mt-3 grid gap-3 md:grid-cols-2",children:[(0,b.jsxs)("div",{className:"rounded-md border bg-background/40 p-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5 text-xs font-medium text-muted-foreground",children:[(0,b.jsx)(Z,{className:"h-3.5 w-3.5"}),"GitHub"]}),r?(0,b.jsxs)("div",{className:"mt-1 space-y-1 text-sm",children:[(0,b.jsxs)("p",{className:"font-medium",children:[a.githubOwner,"/",a.githubRepo]}),(0,b.jsxs)("p",{className:"text-[11px] text-muted-foreground",children:["account: ",a.githubAccount??"default"]}),s&&!t&&(0,b.jsxs)(f.Button,{size:"sm",variant:"ghost",className:"mt-1 h-7 px-1.5",onClick:x,children:[(0,b.jsx)(ab,{className:"mr-1 h-3 w-3"}),"Unlink"]})]}):t?(0,b.jsx)("p",{className:"mt-2 text-xs text-muted-foreground",children:"Local-only — toggle off to enable GitHub linking."}):(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",className:"mt-2 h-8",onClick:()=>k(!0),children:[(0,b.jsx)(e.Plus,{className:"mr-1 h-3 w-3"}),"Link GitHub remote"]})]}),(0,b.jsxs)("div",{className:"rounded-md border bg-background/40 p-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5 text-xs font-medium text-muted-foreground",children:[(0,b.jsx)(Y.FolderOpen,{className:"h-3.5 w-3.5"}),"Local clone"]}),s?(0,b.jsxs)("div",{className:"mt-1 space-y-1 text-sm",children:[(0,b.jsx)("p",{className:"truncate font-medium",title:a.localPath??"",children:a.localPath}),(0,b.jsxs)("p",{className:"text-[11px] text-muted-foreground",children:["slug: ",(0,b.jsx)("span",{className:"font-mono",children:a.slug})]}),r&&(0,b.jsxs)(f.Button,{size:"sm",variant:"ghost",className:"mt-1 h-7 px-1.5",onClick:w,children:[(0,b.jsx)(ab,{className:"mr-1 h-3 w-3"}),"Unlink"]})]}):(0,b.jsxs)(f.Button,{size:"sm",variant:"outline",className:"mt-2 h-8",onClick:()=>m(!0),children:[(0,b.jsx)(e.Plus,{className:"mr-1 h-3 w-3"}),"Link local clone"]})]})]}),(0,b.jsxs)("div",{className:"mt-3 flex items-center justify-between text-[11px] text-muted-foreground",children:[(0,b.jsxs)("label",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("input",{type:"checkbox",checked:t,disabled:p.isPending,onChange:a=>void v(a.target.checked)}),"Local-only repository"]}),(0,b.jsxs)(W.default,{href:"/git",className:"flex items-center gap-1 text-foreground underline-offset-2 hover:underline",children:["Configure polling & triggers in my life › git",(0,b.jsx)(X.ArrowUpRight,{className:"h-3 w-3"})]})]}),(0,b.jsx)(aj,{repo:a,open:h,onClose:()=>i(!1)}),(0,b.jsx)(al,{repo:a,open:j,onClose:()=>k(!1)}),(0,b.jsx)(an,{repo:a,open:l,onClose:()=>m(!1)})]})}function aj({repo:a,open:c,onClose:d}){return(0,b.jsx)(F.Sheet,{open:c,onOpenChange:a=>!a&&d(),children:c&&(0,b.jsx)(ak,{repo:a,onClose:d})})}function ak({repo:a,onClose:d}){let e=(0,ae.useUpdateRepository)(),[g,h]=(0,c.useState)(a.displayName??""),[i,j]=(0,c.useState)(a.classification),[k,l]=(0,c.useState)(a.category),[m,n]=(0,c.useState)(null),p=async b=>{b.preventDefault(),n(null);try{let b={displayName:g.trim()?g.trim():null,classification:i,category:k};await e.mutateAsync({id:a.id,body:b}),d()}catch(a){n(a instanceof Error?a.message:"Failed to save changes")}};return(0,b.jsxs)(F.SheetContent,{className:"overflow-y-auto",children:[(0,b.jsx)(F.SheetHeader,{children:(0,b.jsx)(F.SheetTitle,{children:"Edit repository metadata"})}),(0,b.jsxs)("form",{onSubmit:p,className:"mt-6 space-y-4",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Display name"}),(0,b.jsx)(o.Input,{value:g,onChange:a=>h(a.target.value),placeholder:(0,ae.repositoryDisplayName)(a)}),(0,b.jsx)("p",{className:"text-[11px] text-muted-foreground",children:"Optional — drives the slug used for context paths and dashboard deep-links."})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Classification"}),(0,b.jsx)("select",{value:i,onChange:a=>j(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:ag.map(a=>(0,b.jsx)("option",{value:a,children:a},a))}),(0,b.jsx)("p",{className:"text-[11px] text-muted-foreground",children:"Project entries carry lifecycle phases in the overview MD; repo-only stays lightweight."})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Category"}),(0,b.jsx)("select",{value:k,onChange:a=>l(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:ah.map(a=>(0,b.jsx)("option",{value:a,children:a},a))})]}),m&&(0,b.jsx)("p",{className:"rounded-md border border-red-200 bg-red-50/50 p-2 text-xs text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:m}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t pt-4",children:[(0,b.jsx)(f.Button,{type:"button",variant:"ghost",onClick:d,children:"Cancel"}),(0,b.jsx)(f.Button,{type:"submit",disabled:e.isPending,children:e.isPending?"Saving…":"Save"})]})]})]})}function al({repo:a,open:c,onClose:d}){return(0,b.jsx)(F.Sheet,{open:c,onOpenChange:a=>!a&&d(),children:c&&(0,b.jsx)(am,{repo:a,onClose:d})})}function am({repo:a,onClose:d}){let e=(0,ae.useLinkGithub)(),{data:g}=v(),[h,i]=(0,c.useState)(""),[j,k]=(0,c.useState)(""),[l,m]=(0,c.useState)(""),[n,p]=(0,c.useState)(null),q=async b=>{if(b.preventDefault(),p(null),!h.trim()||!j.trim())return void p("owner and repo are required");try{await e.mutateAsync({id:a.id,owner:h.trim(),repo:j.trim(),account:l.trim()||void 0}),d()}catch(a){p(a instanceof Error?a.message:"Failed to link")}};return(0,b.jsxs)(F.SheetContent,{className:"overflow-y-auto",children:[(0,b.jsx)(F.SheetHeader,{children:(0,b.jsx)(F.SheetTitle,{children:"Link a GitHub remote"})}),(0,b.jsxs)("form",{onSubmit:q,className:"mt-6 space-y-4",children:[(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"Personal accounts on github.com only. GHES is not in scope for v1."}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-2",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Owner"}),(0,b.jsx)(o.Input,{value:h,onChange:a=>i(a.target.value),placeholder:"acme",autoFocus:!0})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Repository"}),(0,b.jsx)(o.Input,{value:j,onChange:a=>k(a.target.value),placeholder:"widgets"})]})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Account alias"}),(0,b.jsxs)("select",{value:l,onChange:a=>m(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:[(0,b.jsx)("option",{value:"",children:"default"}),(g?.accounts??[]).map(a=>(0,b.jsx)("option",{value:a.alias,children:a.alias},a.alias))]})]}),n&&(0,b.jsx)("p",{className:"rounded-md border border-red-200 bg-red-50/50 p-2 text-xs text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:n}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t pt-4",children:[(0,b.jsx)(f.Button,{type:"button",variant:"ghost",onClick:d,children:"Cancel"}),(0,b.jsx)(f.Button,{type:"submit",disabled:e.isPending,children:e.isPending?"Linking…":"Link"})]})]})]})}function an({repo:a,open:c,onClose:d}){return(0,b.jsx)(F.Sheet,{open:c,onOpenChange:a=>!a&&d(),children:c&&(0,b.jsx)(ao,{repo:a,onClose:d})})}function ao({repo:a,onClose:d}){let e=(0,ae.useLinkLocal)(),[g,h]=(0,c.useState)(""),[i,j]=(0,c.useState)(null),k=async b=>{if(b.preventDefault(),j(null),!g.trim())return void j("Local path is required");try{await e.mutateAsync({id:a.id,localPath:g.trim()}),d()}catch(a){j(a instanceof Error?a.message:"Failed to link")}};return(0,b.jsxs)(F.SheetContent,{className:"overflow-y-auto",children:[(0,b.jsx)(F.SheetHeader,{children:(0,b.jsx)(F.SheetTitle,{children:"Link a local clone"})}),(0,b.jsxs)("form",{onSubmit:k,className:"mt-6 space-y-4",children:[(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"Pick the directory of the local clone of this repository. The agent never inspects `.git/config` to suggest values — paths are user-supplied."}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:af,children:"Repository directory"}),(0,b.jsx)(ad.DirectoryPickerField,{value:g,onChange:h,title:"Choose local clone directory"})]}),i&&(0,b.jsx)("p",{className:"rounded-md border border-red-200 bg-red-50/50 p-2 text-xs text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:i}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t pt-4",children:[(0,b.jsx)(f.Button,{type:"button",variant:"ghost",onClick:d,children:"Cancel"}),(0,b.jsx)(f.Button,{type:"submit",disabled:e.isPending,children:e.isPending?"Linking…":"Link"})]})]})]})}let ap="text-[11px] font-medium uppercase tracking-wider text-muted-foreground",aq="text-[11px] leading-relaxed text-muted-foreground",ar="text-[11px] font-medium uppercase tracking-wider text-muted-foreground",as=[{value:"both",label:"GitHub + local clone",description:"Recommended. Agent watches GitHub activity AND reads files from your local clone."},{value:"github",label:"GitHub only",description:"Agent watches PRs, issues, and commits on GitHub. No access to source files."},{value:"local",label:"Local folder only",description:"Agent watches a folder on this Mac. No GitHub remote — e.g. a private working directory."}],at=[{value:"repo-only",label:"Just track activity",description:"Lightweight. Agent logs commits, PRs, and issues. No long-form project document."},{value:"project",label:"Treat as a project",description:"Agent maintains a rich project document with goals, decisions, and milestones in your context notes."}],au=["work","personal","research","client","other"];function av({open:a,onClose:c}){return(0,b.jsx)(F.Sheet,{open:a,onOpenChange:a=>!a&&c(),children:a&&(0,b.jsx)(aw,{onClose:c})})}function aw({onClose:a}){let d=(0,ae.useCreateRepository)(),{data:e}=v(),[g,h]=(0,c.useState)("both"),[i,j]=(0,c.useState)(""),[k,l]=(0,c.useState)(""),[m,n]=(0,c.useState)(""),[p,q]=(0,c.useState)(""),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(""),[w,x]=(0,c.useState)("repo-only"),[y,z]=(0,c.useState)("other"),[A,B]=(0,c.useState)(null),C="github"===g||"both"===g&&!r,D="local"===g||"both"===g,E=async b=>{b.preventDefault(),B(null);let c={classification:w,category:y,displayName:t.trim()?t.trim():void 0};if(C){if(!i.trim()||!k.trim())return void B("GitHub owner and repository are required.");c.githubOwner=i.trim(),c.githubRepo=k.trim(),m.trim()&&(c.githubAccount=m.trim())}if(D){if(!p.trim())return void B("Local clone path is required.");c.localPath=p.trim()}"local"===g&&r&&(c.localOnly=!0);try{await d.mutateAsync(c),a()}catch(a){B(a instanceof Error?a.message:"Failed to add repository")}},G=e?.accounts??[];return(0,b.jsxs)(F.SheetContent,{className:"overflow-y-auto",children:[(0,b.jsxs)(F.SheetHeader,{children:[(0,b.jsx)(F.SheetTitle,{children:"Add repository"}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"Tell the agent about a code repository to watch. It will track activity (commits, PRs, issues) and optionally maintain a project document in your context notes."})]}),(0,b.jsxs)("form",{onSubmit:E,className:"mt-6 space-y-6",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:ap,children:"Where does this repository live?"}),(0,b.jsx)("div",{className:"grid gap-2",children:as.map(a=>{let c=g===a.value;return(0,b.jsxs)("button",{type:"button",onClick:()=>h(a.value),className:"rounded-md border px-3 py-2 text-left transition-colors "+(c?"border-primary bg-primary/10":"border-border hover:bg-accent"),children:[(0,b.jsx)("div",{className:"text-sm font-medium "+(c?"text-primary":"text-foreground"),children:a.label}),(0,b.jsx)("div",{className:aq+" mt-0.5",children:a.description})]},a.value)})})]}),C&&(0,b.jsxs)("div",{className:"space-y-3 rounded-md border bg-background/40 p-3",children:[(0,b.jsxs)("div",{className:"space-y-1",children:[(0,b.jsx)("p",{className:ar,children:"GitHub remote"}),(0,b.jsxs)("p",{className:aq,children:["From the GitHub URL"," ",(0,b.jsx)("code",{className:"rounded bg-muted px-1 py-px text-[10px]",children:"github.com/acme/widgets"}),", the owner is ",(0,b.jsx)("strong",{children:"acme"})," and the repository is"," ",(0,b.jsx)("strong",{children:"widgets"}),"."]})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-2",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:ap,children:"Owner (user or org)"}),(0,b.jsx)(o.Input,{value:i,onChange:a=>j(a.target.value),placeholder:"acme"})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:ap,children:"Repository name"}),(0,b.jsx)(o.Input,{value:k,onChange:a=>l(a.target.value),placeholder:"widgets"})]})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:ap,children:"GitHub account to use"}),(0,b.jsxs)("select",{value:m,onChange:a=>n(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:[(0,b.jsx)("option",{value:"",children:"default"}),G.map(a=>(0,b.jsx)("option",{value:a.alias,children:a.alias},a.alias))]}),(0,b.jsxs)("p",{className:aq,children:["Which set of GitHub credentials the agent should use to read this repo."," ",0===G.length?"Only the default account is set up — manage more under Connections → GitHub accounts.":"Manage accounts under Connections → GitHub accounts."]})]})]}),D&&(0,b.jsxs)("div",{className:"space-y-3 rounded-md border bg-background/40 p-3",children:[(0,b.jsxs)("div",{className:"space-y-1",children:[(0,b.jsx)("p",{className:ar,children:"Local clone"}),(0,b.jsx)("p",{className:aq,children:"Folder on this Mac where the repo is checked out. The agent reads source files, commits, and uncommitted changes from here."})]}),(0,b.jsx)(ad.DirectoryPickerField,{value:p,onChange:q,title:"Choose local clone directory"}),"local"===g&&(0,b.jsxs)("label",{className:"flex items-start gap-2 text-xs text-muted-foreground",children:[(0,b.jsx)("input",{type:"checkbox",checked:r,onChange:a=>s(a.target.checked),className:"mt-0.5"}),(0,b.jsx)("span",{children:"This folder is not (and will never be) backed by a GitHub remote. Skip GitHub linking permanently."})]})]}),(0,b.jsxs)("div",{className:"space-y-3 rounded-md border bg-background/40 p-3",children:[(0,b.jsx)("p",{className:ar,children:"Naming & tracking"}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:ap,children:"Display name (optional)"}),(0,b.jsx)(o.Input,{value:t,onChange:a=>u(a.target.value),placeholder:"Leave blank to use the repo or folder name"}),(0,b.jsx)("p",{className:aq,children:"How this repository appears in the dashboard and in your context notes."})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:ap,children:"How should the agent treat this?"}),(0,b.jsx)("div",{className:"grid gap-2",children:at.map(a=>{let c=w===a.value;return(0,b.jsxs)("button",{type:"button",onClick:()=>x(a.value),className:"rounded-md border px-3 py-2 text-left transition-colors "+(c?"border-primary bg-primary/10":"border-border hover:bg-accent"),children:[(0,b.jsx)("div",{className:"text-sm font-medium "+(c?"text-primary":"text-foreground"),children:a.label}),(0,b.jsx)("div",{className:aq+" mt-0.5",children:a.description})]},a.value)})})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("label",{className:ap,children:"Category (tag)"}),(0,b.jsx)("select",{value:y,onChange:a=>z(a.target.value),className:"h-9 w-full rounded-md border bg-background px-2 text-sm",children:au.map(a=>(0,b.jsx)("option",{value:a,children:a},a))}),(0,b.jsx)("p",{className:aq,children:"Used to group repositories in the dashboard. Pick whichever feels right."})]})]}),A&&(0,b.jsx)("p",{className:"rounded-md border border-red-200 bg-red-50/50 p-2 text-xs text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:A}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t pt-4",children:[(0,b.jsx)(f.Button,{type:"button",variant:"ghost",onClick:a,children:"Cancel"}),(0,b.jsx)(f.Button,{type:"submit",disabled:d.isPending,children:d.isPending?"Adding…":"Add repository"})]})]})]})}var ax=a.i(40410);a.s(["default",0,function(){let a=(0,ae.useRepositories)(),{data:j,isLoading:k}=(0,ax.useHealth)(),[l,m]=(0,c.useState)(!1),n=a.data?.repositories??[],o=n.length,p=n.filter(a=>a.githubOwner&&a.githubRepo).length,q=n.filter(a=>a.localPath).length,r=a.isLoading||k,s=!r&&(!a.data||!j);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(i.ConnectionsSectionHeader,{title:"Repositories",description:"Each repository pairs an optional GitHub remote and an optional local clone. Configure polling, triggers, and daily git management on the my life › git page.",healthy:+(o>0),total:1,actions:(0,b.jsxs)(f.Button,{onClick:()=>m(!0),children:[(0,b.jsx)(e.Plus,{className:"h-4 w-4"}),"Add repository"]})}),s&&(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"Daemon not connected. Start the daemon to manage repositories."}),!r&&(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsx)(V.IntegrationCard,{integrationKey:"git"}),(0,b.jsx)(V.IntegrationCard,{integrationKey:"github"}),0===n.length?(0,b.jsx)(h.EmptyState,{icon:d.GitBranch,title:"No repositories registered",description:"Add a repository to start watching commits, polling GitHub events, and wiring per-repo triggers.",children:(0,b.jsxs)(f.Button,{className:"mt-4",onClick:()=>m(!0),children:[(0,b.jsx)(e.Plus,{className:"h-4 w-4"}),"Add your first repository"]})}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(g.Card,{className:"flex items-center justify-between text-xs text-muted-foreground",children:(0,b.jsxs)("span",{children:[o," repositor",1===o?"y":"ies"," ·"," ",p," with GitHub · ",q," with local clone"]})}),(0,b.jsx)("div",{className:"space-y-3",children:n.map(a=>(0,b.jsx)(ai,{repo:a},a.id))})]}),(0,b.jsx)(y,{}),(0,b.jsx)(L,{}),(0,b.jsx)(T,{}),(0,b.jsx)(U.ProcessModelCard,{processKey:"git.project.init",title:"Git Project Init Model",description:"Generates the initial overview MD when daily git management is first enabled for a repository."}),(0,b.jsx)(U.ProcessModelCard,{processKey:"git.project.update",title:"Git Project Update Model",description:"Runs the daily 24h scan that appends to journal MDs and curates overview sections."}),(0,b.jsx)(U.ProcessModelCard,{processKey:"git.project.retemplate",title:"Git Project Re-template Model",description:"One-shot session that re-conforms existing project documents to the current template body."})]}),(0,b.jsx)(av,{open:l,onClose:()=>m(!1)})]})}],21765)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=packages_dashboard_src_app_connections_repositories_page_tsx_08y6paq._.js.map
|