watchbell 1.2.5 → 1.3.0
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/package.json +1 -1
- package/server/.next/BUILD_ID +1 -1
- package/server/.next/build-manifest.json +3 -3
- package/server/.next/prerender-manifest.json +3 -3
- package/server/.next/server/app/(console)/(private)/ai/agents/page/server-reference-manifest.json +22 -12
- package/server/.next/server/app/(console)/(private)/ai/agents/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/agents/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/agents/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/ask/page/server-reference-manifest.json +21 -11
- package/server/.next/server/app/(console)/(private)/ai/ask/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/ask/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/ask/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/connect/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/(private)/ai/connect/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/connect/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/connect/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/keys/page/server-reference-manifest.json +23 -13
- package/server/.next/server/app/(console)/(private)/ai/keys/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/keys/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/keys/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/logs/page/server-reference-manifest.json +21 -11
- package/server/.next/server/app/(console)/(private)/ai/logs/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/logs/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/logs/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/models/page/server-reference-manifest.json +30 -20
- package/server/.next/server/app/(console)/(private)/ai/models/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/models/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/models/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/(private)/ai/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/playground/page/server-reference-manifest.json +23 -13
- package/server/.next/server/app/(console)/(private)/ai/playground/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/playground/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/playground/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/providers/page/server-reference-manifest.json +26 -16
- package/server/.next/server/app/(console)/(private)/ai/providers/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/providers/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/providers/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/quota/page/server-reference-manifest.json +21 -11
- package/server/.next/server/app/(console)/(private)/ai/quota/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/quota/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/quota/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/usage/page/server-reference-manifest.json +21 -11
- package/server/.next/server/app/(console)/(private)/ai/usage/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/ai/usage/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/usage/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/auto-actions/page/server-reference-manifest.json +21 -11
- package/server/.next/server/app/(console)/(private)/auto-actions/page.js +63 -67
- package/server/.next/server/app/(console)/(private)/auto-actions/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/auto-actions/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/alerts/page/server-reference-manifest.json +36 -26
- package/server/.next/server/app/(console)/alerts/page.js +63 -67
- package/server/.next/server/app/(console)/alerts/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/alerts/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/apps/[id]/page/server-reference-manifest.json +94 -54
- package/server/.next/server/app/(console)/apps/[id]/page.js +69 -71
- package/server/.next/server/app/(console)/apps/[id]/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/apps/[id]/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/apps/page/server-reference-manifest.json +23 -13
- package/server/.next/server/app/(console)/apps/page.js +66 -69
- package/server/.next/server/app/(console)/apps/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/apps/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/backups/page/server-reference-manifest.json +23 -13
- package/server/.next/server/app/(console)/backups/page.js +63 -67
- package/server/.next/server/app/(console)/backups/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/backups/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/catalog/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/catalog/page.js +63 -67
- package/server/.next/server/app/(console)/catalog/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/catalog/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/connections/page/server-reference-manifest.json +31 -21
- package/server/.next/server/app/(console)/connections/page.js +63 -67
- package/server/.next/server/app/(console)/connections/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/connections/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/d1/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/d1/page.js +63 -67
- package/server/.next/server/app/(console)/d1/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/d1/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/deployments/page/server-reference-manifest.json +46 -16
- package/server/.next/server/app/(console)/deployments/page.js +66 -69
- package/server/.next/server/app/(console)/deployments/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/deployments/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/dns/page/server-reference-manifest.json +27 -17
- package/server/.next/server/app/(console)/dns/page.js +63 -67
- package/server/.next/server/app/(console)/dns/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/dns/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/domains/page/server-reference-manifest.json +22 -12
- package/server/.next/server/app/(console)/domains/page.js +63 -67
- package/server/.next/server/app/(console)/domains/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/domains/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/events/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/events/page.js +63 -67
- package/server/.next/server/app/(console)/events/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/events/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/firebase/page/server-reference-manifest.json +27 -17
- package/server/.next/server/app/(console)/firebase/page.js +63 -67
- package/server/.next/server/app/(console)/firebase/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/firebase/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/logs/page/server-reference-manifest.json +21 -11
- package/server/.next/server/app/(console)/logs/page.js +63 -67
- package/server/.next/server/app/(console)/logs/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/logs/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/manage/sections/page/server-reference-manifest.json +21 -11
- package/server/.next/server/app/(console)/manage/sections/page.js +63 -67
- package/server/.next/server/app/(console)/manage/sections/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/manage/sections/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/neon/page/server-reference-manifest.json +31 -21
- package/server/.next/server/app/(console)/neon/page.js +63 -67
- package/server/.next/server/app/(console)/neon/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/neon/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/overview/page/server-reference-manifest.json +28 -18
- package/server/.next/server/app/(console)/overview/page.js +69 -72
- package/server/.next/server/app/(console)/overview/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/overview/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/repos/[id]/page/server-reference-manifest.json +21 -11
- package/server/.next/server/app/(console)/repos/[id]/page.js +67 -70
- package/server/.next/server/app/(console)/repos/[id]/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/repos/[id]/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/repos/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/repos/page.js +65 -68
- package/server/.next/server/app/(console)/repos/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/repos/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/settings/page/server-reference-manifest.json +30 -20
- package/server/.next/server/app/(console)/settings/page.js +63 -67
- package/server/.next/server/app/(console)/settings/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/settings/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/sql/page/server-reference-manifest.json +27 -17
- package/server/.next/server/app/(console)/sql/page.js +63 -67
- package/server/.next/server/app/(console)/sql/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/sql/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/status/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/status/page.js +63 -67
- package/server/.next/server/app/(console)/status/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/status/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/supabase/page/server-reference-manifest.json +39 -29
- package/server/.next/server/app/(console)/supabase/page.js +63 -67
- package/server/.next/server/app/(console)/supabase/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/supabase/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/topology/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/topology/page.js +63 -67
- package/server/.next/server/app/(console)/topology/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/topology/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/turso/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/turso/page.js +63 -67
- package/server/.next/server/app/(console)/turso/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/turso/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/upstash/page/server-reference-manifest.json +20 -10
- package/server/.next/server/app/(console)/upstash/page.js +63 -67
- package/server/.next/server/app/(console)/upstash/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/upstash/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/uptime/page/server-reference-manifest.json +34 -24
- package/server/.next/server/app/(console)/uptime/page.js +63 -67
- package/server/.next/server/app/(console)/uptime/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/uptime/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/welcome/page/server-reference-manifest.json +25 -15
- package/server/.next/server/app/(console)/welcome/page.js +63 -67
- package/server/.next/server/app/(console)/welcome/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/welcome/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
- package/server/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/server/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/_global-error.html +1 -1
- package/server/.next/server/app/_global-error.rsc +2 -2
- package/server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
- package/server/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
- package/server/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/server/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/server/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/_not-found.html +1 -1
- package/server/.next/server/app/_not-found.rsc +3 -3
- package/server/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/server/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/server/.next/server/app/account/password/page/server-reference-manifest.json +2 -2
- package/server/.next/server/app/account/password/page.js.nft.json +1 -1
- package/server/.next/server/app/account/password/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/api/collect/route/server-reference-manifest.json +17 -7
- package/server/.next/server/app/api/collect/route.js +69 -71
- package/server/.next/server/app/api/collect/route.js.nft.json +1 -1
- package/server/.next/server/app/api/daily/route/server-reference-manifest.json +17 -7
- package/server/.next/server/app/api/daily/route.js +51 -53
- package/server/.next/server/app/api/daily/route.js.nft.json +1 -1
- package/server/.next/server/app/api/status/route.js +2 -2
- package/server/.next/server/app/api/status/route.js.nft.json +1 -1
- package/server/.next/server/app/api/telegram/webhook/route/server-reference-manifest.json +17 -7
- package/server/.next/server/app/api/telegram/webhook/route.js +48 -50
- package/server/.next/server/app/api/telegram/webhook/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/advice/route.js +4 -3
- package/server/.next/server/app/api/v1/advice/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/ai/questions/route.js +2 -2
- package/server/.next/server/app/api/v1/ai/questions/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/mcp/route.js +1 -1
- package/server/.next/server/app/api/v1/mcp/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/status/apps/[app]/route.js +4 -3
- package/server/.next/server/app/api/v1/status/apps/[app]/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/status/route.js +4 -3
- package/server/.next/server/app/api/v1/status/route.js.nft.json +1 -1
- package/server/.next/server/app/api/watchdog/route.js +15 -15
- package/server/.next/server/app/api/watchdog/route.js.nft.json +1 -1
- package/server/.next/server/app/invite/page/server-reference-manifest.json +2 -2
- package/server/.next/server/app/invite/page.js.nft.json +1 -1
- package/server/.next/server/app/invite/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/mfa/page/server-reference-manifest.json +2 -2
- package/server/.next/server/app/mfa/page.js +25 -25
- package/server/.next/server/app/mfa/page.js.nft.json +1 -1
- package/server/.next/server/app/mfa/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/mfa/setup/page/server-reference-manifest.json +3 -3
- package/server/.next/server/app/mfa/setup/page.js +25 -25
- package/server/.next/server/app/mfa/setup/page.js.nft.json +1 -1
- package/server/.next/server/app/mfa/setup/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/page/server-reference-manifest.json +1 -1
- package/server/.next/server/app/page.js.nft.json +1 -1
- package/server/.next/server/app/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/s/[slug]/page/server-reference-manifest.json +1 -1
- package/server/.next/server/app/s/[slug]/page.js +7 -7
- package/server/.next/server/app/s/[slug]/page.js.nft.json +1 -1
- package/server/.next/server/app/s/[slug]/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/setup/page/server-reference-manifest.json +2 -2
- package/server/.next/server/app/setup/page.js.nft.json +1 -1
- package/server/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/signin/page/server-reference-manifest.json +3 -3
- package/server/.next/server/app/signin/page.js +28 -29
- package/server/.next/server/app/signin/page.js.nft.json +1 -1
- package/server/.next/server/app/signin/page_client-reference-manifest.js +1 -1
- package/server/.next/server/chunks/{[externals]__0ia-wyj5qrosx._.js → [externals]__1-y7b_mfadqi-._.js} +1 -1
- package/server/.next/server/chunks/{[externals]__0igl_rsv6z3fr._.js → [externals]__1b3dgyi9diwhy._.js} +1 -1
- package/server/.next/server/chunks/{[externals]__0mh8e6gkgfswq._.js → [externals]__1dd9hhrnxhegy._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__01vos42kjq9nn._.js → [root-of-the-server]__0-94urkhm871c._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0_e2eoq7w3ff_._.js → [root-of-the-server]__0-zrmrb4499ay._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0ezd1s2862iob._.js → [root-of-the-server]__01hgqxx2a0okv._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0exicuoq6gmph._.js → [root-of-the-server]__02h-ec_gusm_2._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0-ftc1hhcjcl2._.js → [root-of-the-server]__038br8sr9eepd._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__20ng0hgzxagf_._.js → [root-of-the-server]__040a3il587nja._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0cc32xnniktg9._.js → [root-of-the-server]__04iumkvxok49x._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__0a5op--7u5_xh._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__040ix5fqb_zb-._.js → [root-of-the-server]__0a5t6bkr3-uqw._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0r88w3qhrtzz_._.js → [root-of-the-server]__0c2heh-0pjyob._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1gt_-h9n48pwi._.js → [root-of-the-server]__0c9y_zg74k4oe._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0185dne3slx7e._.js → [root-of-the-server]__0cmp5mwchd8sn._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0oqltt9cni6m0._.js → [root-of-the-server]__0ct18spdi1leu._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0rb1-3538-pq9._.js → [root-of-the-server]__0db2p-om-b_4s._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__09uh8gefrxmkg._.js → [root-of-the-server]__0fc4c9-xzmkol._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0ikiyg3u02ofv._.js → [root-of-the-server]__0fmt9z8-xukob._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0sabwm3w1rm0q._.js → [root-of-the-server]__0i3h5covkd6_t._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0inf2zuuqjrq6._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0070gc9ml0mf7._.js → [root-of-the-server]__0jswmvddgl3sb._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0ms1uw85c5wg2._.js → [root-of-the-server]__0lco43i5w25zg._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0x6qqr79pq_j9._.js → [root-of-the-server]__0m_nqt44ioex_._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0w_og0zl6hqzj._.js → [root-of-the-server]__0qme276hvajvy._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0r3cq1lecww4e._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0r_6xpjwcdrda._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0rctmpp7p7cp9._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0rpys5i04hzww._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1ol4c4uzqqqfw._.js → [root-of-the-server]__0sp5xoed3-994._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__01yzy5zxsekxi._.js → [root-of-the-server]__0ubalx5w0ds9m._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0vv63vp8y0fs-._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0-st5xltl53h9._.js → [root-of-the-server]__0w07p3ypro834._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0znmcklxfccvk._.js → [root-of-the-server]__0x929r1phz1oi._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__1vqs8o9bv1wbk._.js → [root-of-the-server]__0xfgfo-ks4_e8._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__0ycpg444s91lb._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0zjhlf_yodox3._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1cc__h9taeylv._.js → [root-of-the-server]__0zkeao78mms1_._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0y_xyc1cyvtej._.js → [root-of-the-server]__0zwr7fll4dm9q._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0cz3da2wx3_wd._.js → [root-of-the-server]__1-2ckgdamg0-j._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1-ne3clcouvm2._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1bce11artflky._.js → [root-of-the-server]__130_vkgsongq_._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0x47i6wm-cd1z._.js → [root-of-the-server]__14jw0y_hj7jmw._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__14vj8ywy5spa2._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__05jzua9637vlo._.js → [root-of-the-server]__15vqo7amys573._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__08-puk3_gawjd._.js → [root-of-the-server]__161v5qfd5qk2p._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__16jyhasrd2ojp._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__16u9d_hm9lefl._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0kzpzdkpz_nt0._.js → [root-of-the-server]__177l2p7kcj-16._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__186-sa38csgot._.js → [root-of-the-server]__17dr2z1o1hsvk._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1hl9k6e1o7xh2._.js → [root-of-the-server]__1_df6aphi-pfk._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1_zr2xlmtkn4l._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1aagly59gw-xf._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0tykhzqhwdx_k._.js → [root-of-the-server]__1bjvjngj7lvqi._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1c0cb3ur16yhh._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1g4iy2tasmn0f._.js → [root-of-the-server]__1d1u-wejsfl84._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__05pabbazg42oy._.js → [root-of-the-server]__1g6xpr_typmce._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__195ax9c1nsi5b._.js → [root-of-the-server]__1j527a18gh10b._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__1a7_3nq1jjab-._.js → [root-of-the-server]__1jjusd74y8gd5._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1jvy8r4n-62x7._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1k-7jan2fsbys._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1kr6f03r82mk6._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1m8gyvj7rkapj._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1pa_syiho939h._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1qmdi981syrsn._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1r9v6qgjwlv32._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0xqgsjnebebv8._.js → [root-of-the-server]__1smidspfoqz48._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__20r_62r36t28o._.js → [root-of-the-server]__1t87mhqedigsz._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1u5my3-gpw499._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1uad-kugxmkx8._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1ny8nr52qvr4i._.js → [root-of-the-server]__20sp5m_w5iklm._.js} +2 -2
- package/server/.next/server/chunks/{_1_9n8x5ncta29._.js → _0-jfehdfklu-i._.js} +2 -2
- package/server/.next/server/chunks/{_1n-fm2bdo9t2m._.js → _0-ub844lc_z_a._.js} +3 -3
- package/server/.next/server/chunks/_004c7-39glldb._.js +4 -4
- package/server/.next/server/chunks/_05hhw0eql5-dv._.js +12 -0
- package/server/.next/server/chunks/{_0zj10_al6r59j._.js → _08fv52mqg619m._.js} +12 -10
- package/server/.next/server/chunks/{_1cq1vvbp6pglr._.js → _08z7lmk32r__5._.js} +3 -3
- package/server/.next/server/chunks/_0b7rdk-4lrvfy._.js +10 -0
- package/server/.next/server/chunks/_0n-wbmmvp4omq._.js +1 -1
- package/server/.next/server/chunks/_0tz4o-qufnu3l._.js +4 -4
- package/server/.next/server/chunks/{_1myv9csc_in08._.js → _1-pv4d4qhe7to._.js} +3 -3
- package/server/.next/server/chunks/_10vh_l3hht4_3._.js +4 -4
- package/server/.next/server/chunks/{_1e_rbkrukj0x9._.js → _13dlt388gceez._.js} +12 -10
- package/server/.next/server/chunks/_19wqm5leaaesp._.js +1 -1
- package/server/.next/server/chunks/_1d_77nvqcnkcg._.js +3 -0
- package/server/.next/server/chunks/_1e_6lrlg9ml3-._.js +1 -1
- package/server/.next/server/chunks/_1fj4vzjpusyn8._.js +5 -0
- package/server/.next/server/chunks/_1l-68brbq289m._.js +12 -0
- package/server/.next/server/chunks/{_1476vtrt9101m._.js → _1rskctyr7yt-b._.js} +2 -2
- package/server/.next/server/chunks/src_0--qn984h6czu._.js +1 -1
- package/server/.next/server/chunks/src_05vq-abuilwk4._.js +3 -0
- package/server/.next/server/chunks/src_063xvouojxyoa._.js +1 -1
- package/server/.next/server/chunks/src_06lwphwuzgl6e._.js +3 -0
- package/server/.next/server/chunks/src_0_9n02bmhtk4z._.js +3 -0
- package/server/.next/server/chunks/{src_0_l3dzp06o4x5._.js → src_0j8daco-75zka._.js} +2 -2
- package/server/.next/server/chunks/src_0tw-h0otr2tgt._.js +1 -1
- package/server/.next/server/chunks/src_1a5yibsjcy1ga._.js +1 -1
- package/server/.next/server/chunks/{src_0m6xxpw2u-xv_._.js → src_1lvv9wiag2d8-._.js} +2 -2
- package/server/.next/server/chunks/src_1u-olt84z63rx._.js +1 -1
- package/server/.next/server/chunks/{src_15fupbs9-n8q9._.js → src_20sym_ohuqw76._.js} +2 -2
- package/server/.next/server/chunks/src_2108_me3q06ih._.js +3 -0
- package/server/.next/server/chunks/src_lib_0eqv8l-v8d5ze._.js +1 -1
- package/server/.next/server/chunks/src_lib_0glcfed-uogyd._.js +1 -1
- package/server/.next/server/chunks/src_lib_0n-8zjgq6mcc7._.js +3 -0
- package/server/.next/server/chunks/src_lib_0pyyxm3m1rttg._.js +9 -0
- package/server/.next/server/chunks/src_lib_13irheo9qqhgx._.js +9 -0
- package/server/.next/server/chunks/src_lib_1nkahiclbn55q._.js +3 -0
- package/server/.next/server/chunks/src_lib_1y5l54dwaet39._.js +3 -0
- package/server/.next/server/chunks/src_lib_collector_runners_ts_12z4gtgikss74._.js +5 -5
- package/server/.next/server/chunks/src_lib_view_labels_ts_1uxs84z7vclz5._.js +1 -1
- package/server/.next/server/chunks/src_private_0uwb-eyaxy9b3._.js +5 -0
- package/server/.next/server/chunks/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_agents_page_actions_21atz5tidps07.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_models_page_actions_0rvlzfa8rjyz_.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_playground_page_actions_01ejc1xilpuh4.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_quota_page_actions_0iki29gyi8cwa.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_usage_page_actions_1c99h-kwdnep7.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_auto-actions_page_actions_1kw4ce6-efkr1.js +1 -1
- package/server/.next/server/chunks/ssr/{[externals]__0vlxry7jq5j1j._.js → [externals]__02s9k1gg9qqkm._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[externals]__1mol6ksxmtkv6._.js → [externals]__1rj83sktdlxvt._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[externals]__0yyslm1ka5px3._.js → [externals]__1s7xw086rvse0._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[externals]__0irbihjwcc9is._.js → [externals]__20leqouf6m6f3._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__193nmh09rrpbx._.js → [root-of-the-server]__0-zqh1gf4dsj3._.js} +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__001mglelq4wpc._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__03mal5uo1rzg4._.js +3 -0
- package/server/.next/server/chunks/ssr/[root-of-the-server]__05_98ql5tgeii._.js +3 -0
- package/server/.next/server/chunks/ssr/[root-of-the-server]__077-acap7g4ck._.js +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1_h_ya1h8efdj._.js → [root-of-the-server]__07k_84t5-d55n._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0wi2grctadbk8._.js → [root-of-the-server]__080do5vfu69n5._.js} +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__09blzlbsxqvy9._.js +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1_z273zso5at1._.js → [root-of-the-server]__09j1po2u91fp3._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0sj92w6mg92ds._.js → [root-of-the-server]__0b3g72j9cu141._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0xjg51t1__v-s._.js → [root-of-the-server]__0e1s_5gg-u3iu._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0-i_tj8wp9oto._.js → [root-of-the-server]__0ed6qo3lg9_f9._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0z_1k5876-_wx._.js → [root-of-the-server]__0ee5ew5q3jh8i._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__110158s15r7mi._.js → [root-of-the-server]__0fd39clnjw9fb._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0h2hxe0vl-2x0._.js +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0i07g85h2g72h._.js → [root-of-the-server]__0h9rpg5-lhp5q._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0jgapr1cnvhi6._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0keo0-hwsnkw9._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0l50vsk8enxzj._.js +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1a0b_dbx4uans._.js → [root-of-the-server]__0p86d9imejczs._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0rdf04ziqasfz._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0rrdzb9wowemv._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0s2of3mcou177._.js +3 -0
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1-d88ogkwql_b._.js → [root-of-the-server]__0skfdezx5rxie._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1ijizmc3ga_6o._.js → [root-of-the-server]__0tqqte5jb6jz7._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1ogwz1buruc_x._.js → [root-of-the-server]__11paa809_igt_._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1_f7nip9age3d._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1e9tlsk1gl8lw._.js +4 -0
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0hzlz_t5eect2._.js → [root-of-the-server]__1qrk2rfmx21b_._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1sw2q1p1t59y8._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1u_13nhw3kuz3._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1v3b498_j-68t._.js +4 -0
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0n-sc7pzu7fpz._.js → [root-of-the-server]__1y7nfsglxx7cn._.js} +1 -1
- package/server/.next/server/chunks/ssr/_02eudwc8ieb2r._.js +2 -2
- package/server/.next/server/chunks/ssr/_08xqk3eibu5aw._.js +1 -1
- package/server/.next/server/chunks/ssr/{_10q5jocsvw-i8._.js → _09arvqnznfrzl._.js} +2 -2
- package/server/.next/server/chunks/ssr/_09s2unlb4r6yf._.js +3 -0
- package/server/.next/server/chunks/ssr/_0_oc9q0vqkynd._.js +1 -1
- package/server/.next/server/chunks/ssr/_0a22b7zsckifp._.js +1 -1
- package/server/.next/server/chunks/ssr/_0ao-urx9ftj1s._.js +3 -0
- package/server/.next/server/chunks/ssr/_0azq3ml4gbn1d._.js +1 -1
- package/server/.next/server/chunks/ssr/_0bd4cxnpnnq2u._.js +1 -1
- package/server/.next/server/chunks/ssr/_0c7stbntpuyt_._.js +1 -1
- package/server/.next/server/chunks/ssr/_0c8kew3jsb-yb._.js +3 -0
- package/server/.next/server/chunks/ssr/_0cbbks0ms7i_u._.js +2 -2
- package/server/.next/server/chunks/ssr/_0cw4kz3d6kmb1._.js +1 -1
- package/server/.next/server/chunks/ssr/_0d2d527wcx-lf._.js +2 -2
- package/server/.next/server/chunks/ssr/_0d702k82llasi._.js +1 -1
- package/server/.next/server/chunks/ssr/_0dvz4dndt6lkf._.js +3 -0
- package/server/.next/server/chunks/ssr/{_0s8qoh8v5kqcm._.js → _0f11sdi6yislb._.js} +2 -2
- package/server/.next/server/chunks/ssr/_0gl-ewvbhb677._.js +2 -2
- package/server/.next/server/chunks/ssr/_0gmw45sb1llld._.js +3 -0
- package/server/.next/server/chunks/ssr/_0i04zoixa2iup._.js +2 -2
- package/server/.next/server/chunks/ssr/_0idbg-ok0so2h._.js +2 -2
- package/server/.next/server/chunks/ssr/_0iy27gi4y9-fe._.js +4 -0
- package/server/.next/server/chunks/ssr/_0kdn56_ow-x_s._.js +1 -1
- package/server/.next/server/chunks/ssr/_0oovfx_t_-u0k._.js +1 -1
- package/server/.next/server/chunks/ssr/_0oub-njkja8gu._.js +2 -2
- package/server/.next/server/chunks/ssr/_0pqkexxo7rts_._.js +2 -2
- package/server/.next/server/chunks/ssr/_0qhvl_fw4qetx._.js +1 -1
- package/server/.next/server/chunks/ssr/_0rsh9v4b3yj0b._.js +3 -0
- package/server/.next/server/chunks/ssr/{_1476vtrt9101m._.js → _0rw2pberdmaa5._.js} +2 -2
- package/server/.next/server/chunks/ssr/_0tnd528j0i1i4._.js +2 -2
- package/server/.next/server/chunks/ssr/_0uwkwcgucqgcf._.js +2 -2
- package/server/.next/server/chunks/ssr/_0v6v5w16qxwke._.js +1 -1
- package/server/.next/server/chunks/ssr/{_1edj756n1im8t._.js → _0w3mz8059j-pk._.js} +2 -2
- package/server/.next/server/chunks/ssr/_0wo-lpqf7hr1y._.js +2 -2
- package/server/.next/server/chunks/ssr/_0xmud7u5hdnqu._.js +4 -0
- package/server/.next/server/chunks/ssr/_1-4401bfn50mf._.js +4 -0
- package/server/.next/server/chunks/ssr/_1-6d1tm3r_qwg._.js +1 -1
- package/server/.next/server/chunks/ssr/_10bven6gb1vj0._.js +1 -1
- package/server/.next/server/chunks/ssr/_118h21qua_4o3._.js +1 -1
- package/server/.next/server/chunks/ssr/_12makqwatfke-._.js +2 -2
- package/server/.next/server/chunks/ssr/_12wjuabpo0ofk._.js +3 -0
- package/server/.next/server/chunks/ssr/_19-3vzkc6rk97._.js +1 -1
- package/server/.next/server/chunks/ssr/_1_-o2s48aj4i7._.js +1 -1
- package/server/.next/server/chunks/ssr/_1c7jkkvkvzj_u._.js +2 -2
- package/server/.next/server/chunks/ssr/_1cl55h_h3q-b_._.js +1 -1
- package/server/.next/server/chunks/ssr/_1dlo17ba9g-f9._.js +2 -2
- package/server/.next/server/chunks/ssr/_1dp5bgqob29-f._.js +3 -0
- package/server/.next/server/chunks/ssr/{_1qiv079hbwt43._.js → _1er-95g7emfdz._.js} +2 -2
- package/server/.next/server/chunks/ssr/_1fc8k_0p8l00c._.js +2 -2
- package/server/.next/server/chunks/ssr/_1fj4vzjpusyn8._.js +5 -0
- package/server/.next/server/chunks/ssr/_1fuywfexex2s8._.js +2 -2
- package/server/.next/server/chunks/ssr/_1g2zbl_-4z_hg._.js +1 -1
- package/server/.next/server/chunks/ssr/{_18z44n8yl5tzj._.js → _1h7x73oxtp7h5._.js} +2 -2
- package/server/.next/server/chunks/ssr/_1he21-bt45k8z._.js +2 -2
- package/server/.next/server/chunks/ssr/_1j9cka-44jd65._.js +1 -1
- package/server/.next/server/chunks/ssr/_1jh_o2i8hj2g5._.js +1 -1
- package/server/.next/server/chunks/ssr/{_166ljgwi6shw7._.js → _1jl374mbl90fb._.js} +2 -2
- package/server/.next/server/chunks/ssr/{_1r7o1vx4875hu._.js → _1ktvwngz0lzjr._.js} +2 -2
- package/server/.next/server/chunks/ssr/_1ln6o3a9quwxo._.js +2 -2
- package/server/.next/server/chunks/ssr/_1m4km_w39x5e9._.js +1 -1
- package/server/.next/server/chunks/ssr/_1pp1o361lgpwu._.js +2 -2
- package/server/.next/server/chunks/ssr/_1rskctyr7yt-b._.js +3 -0
- package/server/.next/server/chunks/ssr/_1yh3k88t_kh4h._.js +2 -2
- package/server/.next/server/chunks/ssr/_1z6dy1k48mskn._.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_keys_page_actions_181-3r4e_0yb5.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_logs_page_actions_1ryb93n6khky3.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_alerts_page_actions_06_3gmyq3jtvi.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_1--1mjfnoprr2.js +3 -0
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_page_actions_0ksau5eicvycc.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_1fgolmmpxrouc.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_dns_page_actions_17d_lvhl-u_4w.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_domains_page_actions_1yv3fj_fh-n-5.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_firebase_page_actions_00wuues_v_j3r.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_logs_page_actions_0oqh51t2rx6q0.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_manage_sections_page_actions_1sb2ldu57uj32.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_settings_page_actions_12wgjpd0lbh12.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_supabase_page_actions_1f3a_tpkwjo8z.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_uptime_page_actions_1ylbdz0-ykfh6.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_account_password_page_actions_1v4e71_oifbx9.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_signin_page_actions_11wzk446p6_zi.js +1 -1
- package/server/.next/server/chunks/ssr/src_0330uf9pdfco9._.js +1 -1
- package/server/.next/server/chunks/ssr/src_04o0-kzfmcnim._.js +3 -0
- package/server/.next/server/chunks/ssr/src_06tjy8wljego8._.js +1 -1
- package/server/.next/server/chunks/ssr/src_084tdkx3c_yqi._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0abts6wp5ucc0._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0dceh6hsdybq8._.js +3 -0
- package/server/.next/server/chunks/ssr/src_0etvjdinp5urq._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0ovx2ogvlz2eh._.js +3 -0
- package/server/.next/server/chunks/ssr/src_0ph020gy78gi9._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0uitfl3c1mdqb._.js +3 -1
- package/server/.next/server/chunks/ssr/src_0yxy3bklfxtzz._.js +3 -0
- package/server/.next/server/chunks/ssr/src_1-k3gvxaqli74._.js +3 -0
- package/server/.next/server/chunks/ssr/src_10zavgy86u3us._.js +1 -1
- package/server/.next/server/chunks/ssr/{src_186l56gdeizg8._.js → src_14ulgwoxoyfkq._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_1ckoccd8qvnje._.js +1 -1
- package/server/.next/server/chunks/ssr/src_1maoe8g5gnv0u._.js +8 -0
- package/server/.next/server/chunks/ssr/src_1q-jgpnd3lbcu._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_agents_1fyhh1ldgm23z._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_ask_ask-form_tsx_18ttm9nna_9y6._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_logs_export-button_tsx_1k-crb88n1za_._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_models_0ayzqn062pnv5._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_playground_playground-view_tsx_18ua5zn_a0mar._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_providers_1ru-30x6-uwu4._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_limits-form_tsx_1vouaaf560z_x._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_limits-form_tsx_0sfk3ver58rqw._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_0u4_y9-b7g971._.js +3 -0
- package/server/.next/server/chunks/ssr/{src_app_(console)_1vpkg9rd7v3pk._.js → src_app_(console)_11o_ga_rurg55._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_app_(console)_alerts_0j5xlt68kwg8x._.js +2 -2
- package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_10xvt--29v-ed._.js +3 -0
- package/server/.next/server/chunks/ssr/src_app_(console)_backups_actions_ts_1vpytsdh0wc1f._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_backups_drive-buttons_tsx_00cku5r_z3jkg._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fahc65-97qla._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fmp_anbkapur._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_connections_actions_ts_103blv4gzq76z._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_create_actions_ts_05-86qr6kfjey._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_deployments_06a83hsex1kba._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_dns_actions_ts_1jzn58xzwbukz._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_dns_record-actions_tsx_0cqmz51zcuebv._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_firebase_row-menu_tsx_0hssoq3pqjl-n._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_logs_log-viewer_tsx_0v3e4cflfk14w._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_manage_sections_section-switch_tsx_1mfs-o_357i22._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_monitor-actions_ts_10w3h7myk2ppi._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_overview_page_tsx_0se3f3ln9q-42._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_palette-action_ts_0zyw9a9imev6p._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_repos_[id]_page_tsx_1nkxthc4ethrj._.js +2 -2
- package/server/.next/server/chunks/ssr/src_app_(console)_repos_repo-list_tsx_1n1gcm4qfrfdt._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_sql_1icfsti04djqe._.js +2 -2
- package/server/.next/server/chunks/ssr/src_app_(console)_sql_actions_ts_1oqco02hw-3vp._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_supabase_0ib3m2ch9gu-4._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_supabase_pool-actions_ts_0nzd4vwy_9zzx._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_uptime_1mnnkfi-2zv-k._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_vercel-actions_ts_0wpk1yo9v632d._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_mfa_setup_setup-flow_tsx_1fpwygr2vdgnh._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_setup_setup-form_tsx_0izoagdur96e1._.js +1 -1
- package/server/.next/server/chunks/ssr/{src_app_signin_0ndz9-tbuaohn._.js → src_app_signin_0u6eoxbd8ttqy._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_components_create_create-dialog_tsx_1s_9clly_m1ru._.js +1 -1
- package/server/.next/server/chunks/ssr/src_components_list-filter_tsx_1zp29997g97yd._.js +1 -1
- package/server/.next/server/chunks/ssr/{_0ls7sornjrg95._.js → src_lib_0-nc33gvdtkg5._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_lib_0eqv8l-v8d5ze._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_0n-8zjgq6mcc7._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_10d18lqjfj8je._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_1eioo4oodq-8h._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_1y5l54dwaet39._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_collector_run_ts_0-q8is8s0y9cq._.js +3 -3
- package/server/.next/server/chunks/ssr/{src_lib_demo_0ftmf3wmtezvl._.js → src_lib_demo_0sbw5n9n4mpzx._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_lib_providers_github-browse_ts_1apskpn4fe9qr._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_view_labels_ts_1uxs84z7vclz5._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_0iy_wyg2p1jkn._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_1b8918m4jsjpi._.js +5 -0
- package/server/.next/server/chunks/ssr/src_private_1yzfhupl3rlpx._.js +6 -0
- package/server/.next/server/chunks/ssr/src_private_actions_decide-form_tsx_1hngtxpyle3v8._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_ai_providers_actions_ts_0wxa36ai6s5nn._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
- package/server/.next/server/functions-config-manifest.json +3 -0
- package/server/.next/server/middleware-build-manifest.js +3 -3
- package/server/.next/server/pages/404.html +1 -1
- package/server/.next/server/pages/500.html +1 -1
- package/server/.next/server/preview-props.json +3 -3
- package/server/.next/server/server-reference-manifest.js +1 -1
- package/server/.next/server/server-reference-manifest.json +384 -168
- package/server/.next/static/chunks/{3o45i7xbzm0w-.js → 05uco41_mcq9o.js} +1 -1
- package/server/.next/static/chunks/{2_vwhuzct036v.js → 06o7zhf9tv649.js} +1 -1
- package/server/.next/static/chunks/{25je6-38ula0p.js → 0bkm_mj9zqjdn.js} +1 -1
- package/server/.next/static/chunks/0bqipdtnu2hws.js +1 -0
- package/server/.next/static/chunks/0d609c7qn6uke.js +1 -0
- package/server/.next/static/chunks/0ghhg0xs85ipn.js +1 -0
- package/server/.next/static/chunks/{026a6w6rbx-fh.js → 0inb7hk8o9yz-.js} +1 -1
- package/server/.next/static/chunks/{1khar1yl-th2r.js → 0lgt6mz4u8rzx.js} +1 -1
- package/server/.next/static/chunks/0r-etc_jv_08f.js +1 -0
- package/server/.next/static/chunks/{0p14kwfj_2w_l.js → 0un8ttgrt0gtq.js} +1 -1
- package/server/.next/static/chunks/{1bsk5ub4zhehk.js → 0v5xmga7srjvl.js} +1 -1
- package/server/.next/static/chunks/{24p8ti6ronsdf.js → 0zzbinjpe41vj.js} +1 -1
- package/server/.next/static/chunks/{1ruv-a_ft592k.js → 12vmyliqgjlbi.js} +1 -1
- package/server/.next/static/chunks/{234h8_ywb6t9s.js → 131_xlsbuxnhr.js} +1 -1
- package/server/.next/static/chunks/{19bfo1_ejzqmp.js → 146uoz7wc8q2y.js} +1 -1
- package/server/.next/static/chunks/{2w3otuq4cx1pd.js → 1crspgs6bd_rg.js} +1 -1
- package/server/.next/static/chunks/{1b4nkf_ka3hwr.js → 1h0025pjnwxmg.js} +2 -2
- package/server/.next/static/chunks/{35ua22np4u9jr.js → 1ot9e084ramy3.js} +1 -1
- package/server/.next/static/chunks/{3ngtjj5afybe9.js → 1ouf289jk00f3.js} +1 -1
- package/server/.next/static/chunks/{3m825h0uvc8b6.js → 1sds57ddvk_30.js} +1 -1
- package/server/.next/static/chunks/{3oe302ug_esoe.js → 1sexa68j4kb7d.js} +1 -1
- package/server/.next/static/chunks/1t9iq0wi3ykuc.js +1 -0
- package/server/.next/static/chunks/{2baqn9ru2pmf4.js → 1u4r7ru8i619_.js} +2 -2
- package/server/.next/static/chunks/{0m3kg-eiti9zu.js → 1vuqw31-hmrxb.js} +1 -1
- package/server/.next/static/chunks/{20ujg0hz_need.js → 1xhyfwwelhzu1.js} +1 -1
- package/server/.next/static/chunks/{2ehpfaelmkee6.js → 1z85thzinc0kx.js} +1 -1
- package/server/.next/static/chunks/{1j7e6cd8t5jar.js → 25erhrojc-1fi.js} +1 -1
- package/server/.next/static/chunks/{2uk9mjknuxmxx.js → 29sduk6krs_b1.js} +1 -1
- package/server/.next/static/chunks/{0o-c28x8k05p4.js → 29v9jg7vw7brb.js} +1 -1
- package/server/.next/static/chunks/2dbx53nx6f-9f.js +7 -0
- package/server/.next/static/chunks/{25ba60sl_edr3.js → 2e195xkcjq72y.js} +1 -1
- package/server/.next/static/chunks/{1urtw14pwufsv.js → 2f07frmj7udob.js} +1 -1
- package/server/.next/static/chunks/{16en34z8w8ezr.js → 2fp4pmte8dtbb.js} +1 -1
- package/server/.next/static/chunks/2gv1tg_m49u9m.js +1 -0
- package/server/.next/static/chunks/{0jbau1a66ts45.js → 2ockms4mqiec_.js} +11 -11
- package/server/.next/static/chunks/{1rgejqx65romt.js → 2p-ty5g5uq133.js} +1 -1
- package/server/.next/static/chunks/{231dmdy7r03nd.js → 2tnbp3f6x0jv_.js} +1 -1
- package/server/.next/static/chunks/{1y8hxiy48l5hq.js → 2uu38i0lq_wlc.js} +1 -1
- package/server/.next/static/chunks/2uufhbm18_cri.js +1 -0
- package/server/.next/static/chunks/{4126vjheqklsp.js → 2vxmvnntekclp.js} +1 -1
- package/server/.next/static/chunks/{0lhj_nuhfszt5.js → 2xhqwi0hiv_70.js} +1 -1
- package/server/.next/static/chunks/{05rysjdxtzhu1.js → 3-8by5unw1j-r.js} +1 -1
- package/server/.next/static/chunks/{15x1am33zx_7r.js → 310xe703zu_qp.js} +1 -1
- package/server/.next/static/chunks/{3odrzjmblvoxt.js → 33z05hmv7hw1s.js} +1 -1
- package/server/.next/static/chunks/{1aiapinh40brx.js → 36wyyf_gobe7n.js} +1 -1
- package/server/.next/static/chunks/{1kwbsrtnz8o1l.js → 3_5xff9sl-2e3.js} +1 -1
- package/server/.next/static/chunks/{3zx1pe40m_ddz.js → 3b0xtqo5kfyuj.js} +1 -1
- package/server/.next/static/chunks/{34jajbsx3uisy.js → 3cvrxnnojhvxz.js} +1 -1
- package/server/.next/static/chunks/{20pwnun2aiajo.js → 3fais-5rzury8.js} +2 -2
- package/server/.next/static/chunks/{317o5vyehd1xx.js → 3gj8dc0o09zl6.js} +1 -1
- package/server/.next/static/chunks/{0wz_jmdt88plr.js → 3s3unktz7g7f0.js} +1 -1
- package/server/.next/static/chunks/{35j75g5h_qytc.js → 3w26qimof6fnj.js} +1 -1
- package/server/.next/static/chunks/{0o08yqz8_53p6.js → 3z70obsntezy0.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__028cxv1v6v0yb._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__07g16s_wi2sai._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0dvuy3ibsyiik._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0e2utnqdim70d._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0gmn5s40au84-._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0i75m0es1m3hf._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0k7o0hgdraix2._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0o0z59_jylzvy._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0quiawzx_nww0._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0wdxw44t9l9o_._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0y99cuuxm0xs3._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0zflnh-2nol66._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__10dp33pb5e0ml._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__12xl6ax-q8s93._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__14sac3h4sfhh7._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__17xbg7cngebwp._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__18lfi0w0e_h0k._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1c1wqmzm65xo8._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1gry2nrq5xhxl._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1kk_s-q90445m._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1lfsf7un8kdbr._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1nusfevn1z4nm._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1oc55uo0ax787._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1uqxnb7qfqcms._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1vxtt1favjdfr._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1xwgj26z5f7ih._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__20sv90-2ei08l._.js +0 -3
- package/server/.next/server/chunks/_0hsj1tx2ynla-._.js +0 -3
- package/server/.next/server/chunks/_0ls7sornjrg95._.js +0 -5
- package/server/.next/server/chunks/_0qmi54vmnlwdv._.js +0 -10
- package/server/.next/server/chunks/_1daeuesc2d2tg._.js +0 -3
- package/server/.next/server/chunks/_1g_prqb_u33e3._.js +0 -10
- package/server/.next/server/chunks/src_12wdz9bdn7a-7._.js +0 -3
- package/server/.next/server/chunks/src_lib_103kimc1xvc_0._.js +0 -9
- package/server/.next/server/chunks/src_lib_1sdusf16f07x-._.js +0 -9
- package/server/.next/server/chunks/src_lib_collector_http-check_ts_0bh0rtjky3u1-._.js +0 -3
- package/server/.next/server/chunks/src_lib_data_apps-db_ts_02ovqtci8e7o6._.js +0 -3
- package/server/.next/server/chunks/src_lib_data_deployments-db_ts_1shbv_55rwa2-._.js +0 -3
- package/server/.next/server/chunks/src_lib_domain-move_ts_04stiet1-xpe2._.js +0 -3
- package/server/.next/server/chunks/src_private_1_nggk_wre7qf._.js +0 -5
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0nxyo70ahj7tk._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1ctkj-25wt37o._.js +0 -4
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1e0l6kek0ufui._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1kfivch_kfesn._.js +0 -4
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1o63-3k1wez40._.js +0 -3
- package/server/.next/server/chunks/ssr/_0-wc6f6p0c8lv._.js +0 -3
- package/server/.next/server/chunks/ssr/_034fv8o7kws2k._.js +0 -3
- package/server/.next/server/chunks/ssr/_042ow6smd_1gj._.js +0 -3
- package/server/.next/server/chunks/ssr/_0hsj1tx2ynla-._.js +0 -3
- package/server/.next/server/chunks/ssr/_0uvkx5n0kf7r2._.js +0 -3
- package/server/.next/server/chunks/ssr/_0zixhhc1lheoi._.js +0 -4
- package/server/.next/server/chunks/ssr/_0zkmkbrbc96-h._.js +0 -3
- package/server/.next/server/chunks/ssr/_1b1t9p1xljuql._.js +0 -5
- package/server/.next/server/chunks/ssr/_1o94cw0ml7xu7._.js +0 -3
- package/server/.next/server/chunks/ssr/_218164gkxgum_._.js +0 -4
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_0y5m8cul6d7kk.js +0 -3
- package/server/.next/server/chunks/ssr/src_0_5_wl0sww-x7._.js +0 -8
- package/server/.next/server/chunks/ssr/src_1koc8y1nfdlw3._.js +0 -3
- package/server/.next/server/chunks/ssr/src_1xoua7wkmyfkn._.js +0 -3
- package/server/.next/server/chunks/ssr/src_1y827m5-ojdib._.js +0 -6
- package/server/.next/server/chunks/ssr/src_app_(console)_0f-d8u7sm169e._.js +0 -3
- package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_1sfvku9ui1le-._.js +0 -3
- package/server/.next/server/chunks/ssr/src_components_08d78uqnnmrrh._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_04orn7u7ufxp1._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_1l8ej-zoyyegd._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_collector_http-check_ts_0bh0rtjky3u1-._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_data_apps-db_ts_02ovqtci8e7o6._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_data_deployments-db_ts_1shbv_55rwa2-._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_data_vercel-action_ts_1hvera3nwo5fp._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_domain-move_ts_04stiet1-xpe2._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_view_14iq8onyfo7nd._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_view_deploy-actions_ts_1l3rr2k-04gi4._.js +0 -3
- package/server/.next/server/chunks/ssr/src_private_04omlb_sgy-_r._.js +0 -5
- package/server/.next/static/chunks/0-0tkevn8vwix.js +0 -1
- package/server/.next/static/chunks/0qd8lafp_2ta5.js +0 -1
- package/server/.next/static/chunks/14teejsfv-awi.js +0 -1
- package/server/.next/static/chunks/1c0s-ejiwfy2u.js +0 -1
- package/server/.next/static/chunks/38rdy3k5li9gb.js +0 -1
- package/server/.next/static/chunks/3u-qfdthw123i.js +0 -7
- package/server/.next/static/chunks/3xhrztkjpas1b.js +0 -1
- /package/server/.next/static/{00kxZsHPpI3WSDxVn1e4b → WqHYD3Noq8qkEPXvfVDGQ}/_buildManifest.js +0 -0
- /package/server/.next/static/{00kxZsHPpI3WSDxVn1e4b → WqHYD3Noq8qkEPXvfVDGQ}/_clientMiddlewareManifest.js +0 -0
- /package/server/.next/static/{00kxZsHPpI3WSDxVn1e4b → WqHYD3Noq8qkEPXvfVDGQ}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[801789,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(405050);let g=(0,f.createServerReference)("001e9ad44945cb3bcbd90d82f68952c2c04476845c",f.callServer,void 0,f.findSourceMapURL,"dismissWhatsNew");a.s(["WhatsNewDismiss",0,function(){let[a,f]=(0,c.useTransition)();return(0,b.jsx)(e.K,{size:"sm",onClick:()=>f(async()=>{try{let a=await g();a.ok||d.c.error(a.error)}catch{d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}}),disabled:a,children:a?"Saving…":"Got it"})}],801789)},480761,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(771378),e=a.i(728951),f=a.i(368114),g=a.i(50944),h=a.i(405050);let i=(0,h.createServerReference)("008bca6de048142834daeda05d13d05a603427fc3d",h.callServer,void 0,h.findSourceMapURL,"loadPaletteSource"),j={home:{label:"Home",holds:"Overview, Topology, Events and Provider status.",appears:"Always on."},hosting:{label:"Hosting",holds:"Applications, Deployments, Domains, DNS records, Uptime and Logs.",appears:"On from the start, so Uptime is always in the menu."},database:{label:"Database",holds:"Supabase, Neon, Firebase, Turso, Upstash Redis, Cloudflare D1, the SQL console and Free databases.",appears:"Appears when you connect Supabase, Neon, Firebase, Turso or Upstash, or once a database is watched.",keeps:"Keep active and Auto-restore keep running while it is off, so your free Supabase projects aren't paused."},devops:{label:"DevOps",holds:"Automation: GitHub repositories, their Actions runs and dependency advisories.",appears:"Appears when you connect GitHub."},manage:{label:"Manage",holds:"Connections, Alerts, Auto-actions, Sections, Settings, AI gateway, API explorer, Status page and Backups.",appears:"Always on."}},k={home:[{key:"overview",label:"Overview",href:"/overview",icon:"dashboard",stage:2},{key:"topology",label:"Topology",href:"/topology",icon:"topology",stage:4},{key:"events",label:"Events",href:"/events",icon:"activity",stage:2},{key:"status",label:"Provider status",href:"/status",icon:"broadcast",stage:5}],hosting:[{key:"apps",label:"Applications",href:"/apps",icon:"apps",stage:2},{key:"deployments",label:"Deployments",href:"/deployments",icon:"rocket",stage:2},{key:"domains",label:"Domains",href:"/domains",icon:"world",stage:4},{key:"dns",label:"DNS records",href:"/dns",icon:"sitemap",stage:4},{key:"uptime",label:"Uptime",href:"/uptime",icon:"heartbeat",stage:2},{key:"logs",label:"Logs",href:"/logs",icon:"file",stage:5,hideForViewer:!0}],database:[{key:"supabase",label:"Supabase",href:"/supabase",icon:"bolt",stage:3},{key:"neon",label:"Neon",href:"/neon",icon:"database",stage:3},{key:"firebase",label:"Firebase",href:"/firebase",icon:"flame",stage:3},{key:"turso",label:"Turso",href:"/turso",icon:"database",stage:8},{key:"upstash",label:"Upstash Redis",href:"/upstash",icon:"bolt",stage:8},{key:"d1",label:"Cloudflare D1",href:"/d1",icon:"cloud",stage:8},{key:"sql",label:"SQL console",href:"/sql",icon:"terminal",stage:9,ownerOnly:!0},{key:"catalog",label:"Free databases",href:"/catalog",icon:"books",stage:7}],devops:[{key:"repos",label:"Repositories",href:"/repos",icon:"github",stage:9,sub:"Automation"}],manage:[{key:"alerts",label:"Alerts",href:"/alerts",icon:"bell",stage:5,sub:"Alerting"},{key:"status-page",label:"Status page",href:"/settings?tab=status-page",icon:"page",stage:7,ownerOnly:!0,sub:"Alerting"},{key:"connections",label:"Connections",href:"/connections",icon:"plug",stage:1,ownerOnly:!0,sub:"Setup"},{key:"settings",label:"Settings",href:"/settings",icon:"settings",stage:1,ownerOnly:!0,sub:"Setup"},{key:"sections",label:"Sections",href:"/manage/sections",icon:"layout",stage:12,ownerOnly:!0,sub:"Setup"},{key:"backups",label:"Backups",href:"/backups",icon:"cloud-upload",stage:7,ownerOnly:!0,sub:"Setup"}]},l=["home","hosting","database","devops","manage"].map(a=>({section:a,group:j[a].label,items:k[a]})),m={nav:[]};function n(a=m){let b=l.map(a=>({...a,items:[...a.items]}));for(let c of a.nav){let a=b.find(a=>a.section===c.section)??b.find(a=>"manage"===a.section),d=c.after?a.items.findIndex(a=>a.key===c.after):-1;d<0?a.items.push(...c.items):a.items.splice(d+1,0,...c.items)}return b}function o(a,b=m,c){let d=c?new Set(c):null;return n(b).filter(a=>!d||d.has(a.section)).map(b=>({...b,items:b.items.filter(b=>b.ownerOnly?"owner"===a:!b.hideForViewer||"viewer"!==a)})).filter(a=>a.items.length>0)}let p=a=>a.split("?")[0];function q(a,b){let c=b.trim().toLowerCase(),d=a.toLowerCase(),e=d.indexOf(c);if(e<0)return null;if(0===e)return 0;for(let a=d.indexOf(c);a>=0;a=d.indexOf(c,a+1))if(!/[a-z0-9]/.test(d[a-1]??" "))return 1;return 2}var r=a.i(424567),s=a.i(742089),t=a.i(449862);let u=(0,t.f)("outline","apps","Apps",[["path",{d:"M4 5a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4",key:"svg-0"}],["path",{d:"M4 15a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4",key:"svg-1"}],["path",{d:"M14 15a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4",key:"svg-2"}],["path",{d:"M14 7l6 0",key:"svg-3"}],["path",{d:"M17 4l0 6",key:"svg-4"}]]);var v=a.i(896293),w=a.i(133004);let x=(0,t.f)("outline","books","Books",[["path",{d:"M5 5a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -14",key:"svg-0"}],["path",{d:"M9 5a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -14",key:"svg-1"}],["path",{d:"M5 8h4",key:"svg-2"}],["path",{d:"M9 16h4",key:"svg-3"}],["path",{d:"M13.803 4.56l2.184 -.53c.562 -.135 1.133 .19 1.282 .732l3.695 13.418a1.02 1.02 0 0 1 -.634 1.219l-.133 .041l-2.184 .53c-.562 .135 -1.133 -.19 -1.282 -.732l-3.695 -13.418a1.02 1.02 0 0 1 .634 -1.219l.133 -.041",key:"svg-4"}],["path",{d:"M14 9l4 -1",key:"svg-5"}],["path",{d:"M16 16l3.923 -.98",key:"svg-6"}]]);var y=a.i(36600);let z=(0,t.f)("outline","broadcast","Broadcast",[["path",{d:"M18.364 19.364a9 9 0 1 0 -12.728 0",key:"svg-0"}],["path",{d:"M15.536 16.536a5 5 0 1 0 -7.072 0",key:"svg-1"}],["path",{d:"M11 13a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}]]),A=(0,t.f)("outline","browser","Browser",[["path",{d:"M4 8h16",key:"svg-0"}],["path",{d:"M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -12",key:"svg-1"}],["path",{d:"M8 4v4",key:"svg-2"}]]);var B=a.i(786581);let C=(0,t.f)("outline","cloud-upload","CloudUpload",[["path",{d:"M7 18a4.6 4.4 0 0 1 0 -9a5 4.5 0 0 1 11 2h1a3.5 3.5 0 0 1 0 7h-1",key:"svg-0"}],["path",{d:"M9 15l3 -3l3 3",key:"svg-1"}],["path",{d:"M12 12l0 9",key:"svg-2"}]]);var D=a.i(713352);let E=(0,t.f)("outline","file-text","FileText",[["path",{d:"M14 3v4a1 1 0 0 0 1 1h4",key:"svg-0"}],["path",{d:"M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2",key:"svg-1"}],["path",{d:"M9 9l1 0",key:"svg-2"}],["path",{d:"M9 13l6 0",key:"svg-3"}],["path",{d:"M9 17l6 0",key:"svg-4"}]]);var F=a.i(471941),G=a.i(614548);let H=(0,t.f)("outline","hierarchy-3","Hierarchy3",[["path",{d:"M10 5a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-0"}],["path",{d:"M6 12a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M10 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-2"}],["path",{d:"M18 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-3"}],["path",{d:"M2 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-4"}],["path",{d:"M14 12a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-5"}],["path",{d:"M5 17l2 -3",key:"svg-6"}],["path",{d:"M9 10l2 -3",key:"svg-7"}],["path",{d:"M13 7l2 3",key:"svg-8"}],["path",{d:"M17 14l2 3",key:"svg-9"}],["path",{d:"M15 14l-2 3",key:"svg-10"}],["path",{d:"M9 14l2 3",key:"svg-11"}]]);var I=a.i(615016);let J=(0,t.f)("outline","layout-list","LayoutList",[["path",{d:"M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -2",key:"svg-0"}],["path",{d:"M4 16a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -2",key:"svg-1"}]]);var K=a.i(335371);let L=(0,t.f)("outline","rocket","Rocket",[["path",{d:"M4 13a8 8 0 0 1 7 7a6 6 0 0 0 3 -5a9 9 0 0 0 6 -8a3 3 0 0 0 -3 -3a9 9 0 0 0 -8 6a6 6 0 0 0 -5 3",key:"svg-0"}],["path",{d:"M7 14a6 6 0 0 0 -3 6a6 6 0 0 0 6 -3",key:"svg-1"}],["path",{d:"M14 9a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}]]),M=(0,t.f)("outline","route-2","Route2",[["path",{d:"M3 19a2 2 0 1 0 4 0a2 2 0 0 0 -4 0",key:"svg-0"}],["path",{d:"M19 7a2 2 0 1 0 0 -4a2 2 0 0 0 0 4",key:"svg-1"}],["path",{d:"M14 5a2 2 0 0 0 -2 2v10a2 2 0 0 1 -2 2",key:"svg-2"}]]),N=(0,t.f)("outline","settings","Settings",[["path",{d:"M10.325 4.317c.426 -1.756 2.924 -1.756 3.35 0a1.724 1.724 0 0 0 2.573 1.066c1.543 -.94 3.31 .826 2.37 2.37a1.724 1.724 0 0 0 1.065 2.572c1.756 .426 1.756 2.924 0 3.35a1.724 1.724 0 0 0 -1.066 2.573c.94 1.543 -.826 3.31 -2.37 2.37a1.724 1.724 0 0 0 -2.572 1.065c-.426 1.756 -2.924 1.756 -3.35 0a1.724 1.724 0 0 0 -2.573 -1.066c-1.543 .94 -3.31 -.826 -2.37 -2.37a1.724 1.724 0 0 0 -1.065 -2.572c-1.756 -.426 -1.756 -2.924 0 -3.35a1.724 1.724 0 0 0 1.066 -2.573c-.94 -1.543 .826 -3.31 2.37 -2.37c1 .608 2.296 .07 2.572 -1.065",key:"svg-0"}],["path",{d:"M9 12a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-1"}]]);var O=a.i(105084);let P=(0,t.f)("outline","terminal-2","Terminal2",[["path",{d:"M8 9l3 3l-3 3",key:"svg-0"}],["path",{d:"M13 15l3 0",key:"svg-1"}],["path",{d:"M3 6a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2l0 -12",key:"svg-2"}]]),Q=(0,t.f)("outline","world","World",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M3.6 9h16.8",key:"svg-1"}],["path",{d:"M3.6 15h16.8",key:"svg-2"}],["path",{d:"M11.5 3a17 17 0 0 0 0 18",key:"svg-3"}],["path",{d:"M12.5 3a17 17 0 0 1 0 18",key:"svg-4"}]]),R={dashboard:I.f,topology:H,activity:r.f,apps:u,rocket:L,world:Q,sitemap:O.f,bolt:w.f,database:D.f,flame:F.f,books:x,heartbeat:G.f,bell:v.f,file:E,broadcast:z,plug:K.f,"cloud-upload":C,cloud:B.f,settings:N,route:M,api:s.f,github:y.f,terminal:P,layout:J,page:A};function S({role:a,ext:d,sections:e,open:f,opener:g,onOpen:h,onClose:k}){let[l,m]=(0,c.useState)(null),[n,p]=(0,c.useState)(!1),q=(0,c.useRef)(!1);(0,c.useEffect)(()=>{function a(a){"k"!==a.key.toLowerCase()||!(a.ctrlKey||a.metaKey)||a.shiftKey||a.altKey||(a.preventDefault(),a.repeat||(f?k():h(document.activeElement)))}return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[f,h,k]),(0,c.useEffect)(()=>{f&&!q.current&&(q.current=!0,i().then(a=>{a.ok&&a.data?(m(a.data),p(!1)):p(!0)}).catch(()=>p(!0)).finally(()=>{q.current=!1}))},[f]);let r=(0,c.useMemo)(()=>(function(a,b,c={nav:[],palette:[]},d){let e=o(a,c,d).flatMap(a=>a.items.map(b=>({id:`page:${b.key}`,label:b.label,hint:a.group,href:b.href,icon:b.icon}))),f="owner"!==a?[]:c.palette.filter(a=>!e.some(b=>b.href===a.href)).map(a=>{let b=c.nav.flatMap(a=>a.items.map(b=>({g:a,i:b}))).find(({i:b})=>a.href===b.href||a.href.startsWith(`${b.href}/`));return{id:`ext:${a.href}`,label:a.label,hint:b?`${j[b.g.section].label} \xb7 ${b.i.label}`:"Page",href:a.href,icon:b?.i.icon??"dashboard",keywords:a.keywords}}),g=[...e,...f];if(!b)return g;let h=b.apps.map(a=>({id:`app:${a.id}`,label:a.name,hint:a.domain,href:`/apps/${a.id}`,icon:"apps"})),i=b.monitors.map(a=>({id:`monitor:${a.id}`,label:`${a.appName}${a.path}`,hint:"Monitor",href:`/apps/${a.appId}`,icon:"heartbeat"}));return[...g,...h,...(b.domains??[]).map(a=>({id:`domain:${a.id}`,label:a.name,hint:"Domain",href:"/domains",icon:"world"})),...i]})(a,l,d,e),[a,l,d,e]);return f?(0,b.jsx)(T,{items:r,loading:null===l&&!n,opener:g,onClose:k}):null}function T({items:a,loading:e,opener:h=null,onClose:i}){let j=(0,g.useRouter)(),k=(0,c.useId)(),l=(0,c.useRef)(null),[m,n]=(0,c.useState)(""),[o,p]=(0,c.useState)(0),{shot:r}=(0,d.usePrivacy)(),s=(0,d.useMask)(),t=(0,c.useMemo)(()=>a.map(a=>a.id.startsWith("page:")?a:{...a,label:s("text",a.label),hint:s("text",a.hint)}),[a,s]),u=(0,c.useMemo)(()=>(function(a,b,c,d=20){if(!c.trim())return b.slice(0,d);let e=a=>(function(a,b){let c=q(a.label,b);if(null!==c)return c;let d=q(a.hint,b);if(null!==d)return d+3;let e=(a.keywords??[]).map(a=>q(a,b)).filter(a=>null!==a);return e.length?Math.min(...e)+6:null})(a,c),f=[];return a.forEach((a,c)=>{let d=e(a),g=e(b[c]),h=null===d?g:null===g?d:Math.min(d,g);null!==h&&f.push({item:b[c],score:h})}),f.sort((a,b)=>a.score-b.score).slice(0,d).map(a=>a.item)})(a,r?t:a,m),[a,t,r,m]),v=Math.min(o,Math.max(0,u.length-1)),w=a=>`${k}-opt-${a}`;function x(a){a&&(i(),j.push(a.href))}return(0,c.useEffect)(()=>{l.current?.focus()},[]),(0,c.useEffect)(()=>()=>{h instanceof HTMLElement&&h.isConnected&&h.focus()},[h]),(0,c.useEffect)(()=>{document.getElementById(`${k}-opt-${v}`)?.scrollIntoView?.({block:"nearest"})},[k,v,u]),(0,c.useEffect)(()=>{function a(a){"Escape"===a.key&&i(),"Tab"===a.key&&a.preventDefault()}return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[i]),(0,b.jsx)("div",{className:"fixed inset-0 z-[80] flex items-start justify-center bg-black/45 pt-[12vh]",onMouseDown:a=>{a.target===a.currentTarget&&i()},children:(0,b.jsxs)("div",{role:"dialog","aria-modal":"true","aria-label":"Search",onMouseDown:a=>{a.target!==l.current&&a.preventDefault()},className:"w-[560px] max-w-[calc(100vw-32px)] overflow-hidden rounded-[10px] border border-line-strong bg-surface shadow-[0_16px_48px_rgba(0,0,0,.25)]",children:[(0,b.jsx)("input",{ref:l,role:"combobox","aria-expanded":u.length>0,"aria-controls":u.length>0?`${k}-list`:void 0,"aria-activedescendant":u.length>0?w(v):void 0,"aria-autocomplete":"list","aria-label":"Search",autoComplete:"off",placeholder:"Jump to a page, app, database, or domain",value:m,onChange:a=>{n(a.target.value),p(0)},onKeyDown:function(a){a.nativeEvent.isComposing||("ArrowDown"===a.key&&(p(Math.min(v+1,u.length-1)),a.preventDefault()),"ArrowUp"===a.key&&(p(Math.max(v-1,0)),a.preventDefault()),"Enter"===a.key&&(x(u[v]),a.preventDefault()))},className:"w-full border-0 border-b border-line bg-transparent px-4 py-3.5 text-[15px] text-ink outline-none placeholder:text-ink-faint"}),u.length>0?(0,b.jsx)("ul",{id:`${k}-list`,role:"listbox","aria-label":"Results",className:"m-0 max-h-[360px] list-none overflow-y-auto p-1.5",children:u.map((a,c)=>{let d=R[a.icon];return(0,b.jsxs)("li",{id:w(c),role:"option","aria-selected":c===v,onMouseMove:()=>{c!==v&&p(c)},onClick:()=>x(a),className:(0,f.f)("flex cursor-pointer items-center gap-2.5 rounded-md px-2.5 py-2",c===v&&"bg-brand-soft"),children:[(0,b.jsx)(d,{size:17,className:"shrink-0 text-ink-faint"}),(0,b.jsx)("span",{className:"min-w-0 truncate",children:a.label}),(0,b.jsx)("small",{className:"ml-auto shrink-0 pl-3 text-[12.5px] text-ink-faint",children:a.hint})]},a.id)})}):(0,b.jsx)("p",{role:"status",className:"m-0 p-4 text-ink-soft",children:e&&m.trim()?"Loading apps…":"No matches"})]})})}function U(){return(0,b.jsx)("div",{role:"note",className:"border-b border-line bg-brand-soft px-6 py-1.5 text-[12.5px] text-nav-active-text max-[720px]:px-3.5",children:"Demo — data is made up and resets. Results of your actions can disappear when the demo restarts."})}function V({size:a=28,title:c,className:d}){return(0,b.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",width:a,height:a,className:(0,f.f)("shrink-0",d),role:c?"img":void 0,"aria-hidden":!c||void 0,focusable:"false",children:[c?(0,b.jsx)("title",{children:c}):null,(0,b.jsx)("rect",{x:"0.5",y:"0.5",width:"31",height:"31",rx:"7",fill:"#14213d",strokeWidth:"1",className:"stroke-transparent dark:stroke-[#2f4372]"}),(0,b.jsxs)("g",{transform:"rotate(-14 15 16)",fill:"#fcc419",children:[(0,b.jsx)("rect",{x:"13.7",y:"5.4",width:"2.6",height:"2.4",rx:"1.1"}),(0,b.jsx)("path",{d:"M15 7.2c-4.3 0-6.8 3.1-6.8 7.3v4.1l-2.4 3.3h18.4l-2.4-3.3v-4.1c0-4.2-2.5-7.3-6.8-7.3z"}),(0,b.jsx)("circle",{cx:"15",cy:"24.3",r:"2.3"})]}),(0,b.jsxs)("g",{fill:"none",stroke:"#fcc419",strokeWidth:"2.2",strokeLinecap:"round",children:[(0,b.jsx)("path",{d:"M24.4 9.2c1.4 1.4 2.2 3.2 2.2 5.2"}),(0,b.jsx)("path",{d:"M22.8 11.1c.8.8 1.2 1.8 1.2 2.9"})]})]})}let W=(0,t.f)("outline","chevron-right","ChevronRight",[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]]);var X=a.i(238246),Y=a.i(507504);let Z={ok:"bg-ok",warn:"bg-warn-icon",err:"bg-err",idle:"bg-idle"};function $({initialLastRunAt:a,initialNow:d,demo:e=!1}){let[g,h]=(0,c.useState)(a),[i,j]=(0,c.useState)(d);(0,c.useEffect)(()=>{(0,Y.markCollectorRun)(e||!g?null:Date.parse(g))},[g,e]),(0,c.useEffect)(()=>{if(e)return;let a=()=>{fetch("/api/status",{cache:"no-store"}).then(a=>a.ok&&!a.redirected&&(a.headers.get("content-type")??"").includes("application/json")?a.json():null).then(a=>{a&&"object"==typeof a&&"lastRunAt"in a&&(h(a.lastRunAt??null),j(Date.now()))}).catch(()=>void 0)},b=()=>{"visible"===document.visibilityState&&a()},c=()=>{"visible"===document.visibilityState&&a()};b();let d=setInterval(()=>j(Date.now()),5e3),f=setInterval(b,3e4);return document.addEventListener("visibilitychange",c),()=>{clearInterval(d),clearInterval(f),document.removeEventListener("visibilitychange",c)}},[e]);let k=e?{state:"ok",text:"Demo · no live collector"}:function(a,b){if(!a)return{state:"idle",text:"Collector hasn't run yet"};let c=Math.max(0,Math.round((b.getTime()-a.getTime())/1e3)),d=Math.floor(c/60);return c<60?{state:"ok",text:`Collector ran ${c}s ago`}:c<120?{state:"ok",text:`Collector ran ${d} min ago`}:c<300?{state:"warn",text:`Collector late \xb7 ran ${d} min ago`}:{state:"err",text:`Collector stopped ${d} min ago`}}(g?new Date(g):null,new Date(i));return(0,b.jsxs)("div",{className:"flex items-center gap-2 border-t border-line px-4 py-3 text-xs text-ink-soft","aria-live":"off",children:[(0,b.jsx)("span",{className:(0,f.f)("size-2 shrink-0 rounded-full",Z[k.state]),"aria-hidden":!0}),k.text]})}function _({role:a,ext:d,sections:e,collector:h,alerts:i,mobileOpen:j,onNavigate:k,navRef:l}){let q=function(a,b=m,c){return function(a,b=m,c){let[d,e]=a.split("?"),f=d.replace(/\/+$/,"")||"/",g=null!=c?new URLSearchParams(c):void 0!==e?new URLSearchParams(e):null,h=null;for(let a of n(b).flatMap(a=>a.items)){let b=p(a.href);if(f!==b&&!f.startsWith(`${b}/`))continue;let c=a.href.includes("?");if(c&&(f!==b||!function(a,b){let c=a.split("?")[1];return!c||!!b&&[...new URLSearchParams(c)].every(([a,c])=>b.get(a)===c)}(a.href,g)))continue;let d=h?p(h.href).length:-1;(!h||b.length>d||b.length===d&&c&&!h.href.includes("?"))&&(h=a)}return h}(a,b,c)?.key??null}((0,g.usePathname)(),d,(0,g.useSearchParams)()),[r,s]=(0,c.useState)({});return(0,b.jsxs)("nav",{ref:l,tabIndex:-1,"aria-label":"Main navigation",className:(0,f.f)("sticky top-0 flex h-screen flex-col overflow-y-auto border-r border-line bg-nav focus:outline-none","max-[1000px]:fixed max-[1000px]:inset-y-0 max-[1000px]:left-0 max-[1000px]:z-50 max-[1000px]:w-[264px]",!j&&"max-[1000px]:invisible max-[1000px]:-translate-x-full"),children:[(0,b.jsxs)(X.default,{href:"/",className:"flex items-center gap-2.5 border-b border-line px-4 py-3.5 text-ink hover:no-underline",children:[(0,b.jsx)(V,{}),(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-semibold",children:"Watchbell"}),(0,b.jsx)("small",{className:"block text-xs text-ink-faint",children:"Personal"})]})]}),(0,b.jsx)("div",{className:"flex-1 px-2 pb-4 pt-2",children:o(a,d,e).map(a=>{let d=!r[a.section];return(0,b.jsxs)("div",{className:"mt-1.5",children:[(0,b.jsxs)("button",{type:"button","aria-expanded":d,onClick:()=>s(b=>({...b,[a.section]:d})),className:"flex w-full items-center gap-1.5 rounded-md px-2 py-1.5 text-xs font-medium text-ink-faint hover:text-ink",children:[a.group,(0,b.jsx)(W,{size:14,className:(0,f.f)("ml-auto transition-transform",d&&"rotate-90")})]}),d&&(0,b.jsx)("ul",{children:a.items.map((d,e)=>{let g=R[d.icon],h=d.key===q,j=d.sub&&d.sub!==a.items[e-1]?.sub?d.sub:null;return(0,b.jsxs)(c.Fragment,{children:[j&&(0,b.jsx)("li",{"aria-hidden":!0,className:"px-2.5 pb-0.5 pt-1.5 text-[11px] uppercase tracking-[0.06em] text-ink-faint",children:j}),(0,b.jsx)("li",{children:(0,b.jsxs)(X.default,{href:d.href,onClick:k,"aria-current":h?"page":void 0,className:(0,f.f)("flex items-center gap-2.5 rounded-md px-2.5 py-[7px] text-nav-text hover:bg-hover hover:no-underline",h&&"bg-nav-active font-medium text-nav-active-text"),children:[(0,b.jsx)(g,{size:17,className:h?"text-nav-active-text":"text-ink-faint"}),d.label,"alerts"===d.key&&i>0&&(0,b.jsxs)("span",{className:"ml-auto rounded-[10px] bg-err-soft px-1.5 font-mono text-[11px] font-medium text-err",children:[i,(0,b.jsx)("span",{className:"sr-only",children:" firing"})]})]})})]},d.key)})})]},a.section)})}),(0,b.jsx)($,{initialLastRunAt:h.lastRunAt,initialNow:h.now,demo:h.demo})]})}let aa=(0,t.f)("outline","eye","Eye",[["path",{d:"M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0",key:"svg-0"}],["path",{d:"M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6",key:"svg-1"}]]),ab=(0,t.f)("outline","eye-off","EyeOff",[["path",{d:"M10.585 10.587a2 2 0 0 0 2.829 2.828",key:"svg-0"}],["path",{d:"M16.681 16.673a8.717 8.717 0 0 1 -4.681 1.327c-3.6 0 -6.6 -2 -9 -6c1.272 -2.12 2.712 -3.678 4.32 -4.674m2.86 -1.146a9.055 9.055 0 0 1 1.82 -.18c3.6 0 6.6 2 9 6c-.666 1.11 -1.379 2.067 -2.138 2.87",key:"svg-1"}],["path",{d:"M3 3l18 18",key:"svg-2"}]]),ac=(0,t.f)("outline","layout-sidebar","LayoutSidebar",[["path",{d:"M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -12",key:"svg-0"}],["path",{d:"M9 4l0 16",key:"svg-1"}]]),ad=(0,t.f)("outline","search","Search",[["path",{d:"M3 10a7 7 0 1 0 14 0a7 7 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M21 21l-6 -6",key:"svg-1"}]]),ae=(0,t.f)("outline","tag","Tag",[["path",{d:"M6.5 7.5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M3 6v5.172a2 2 0 0 0 .586 1.414l7.71 7.71a2.41 2.41 0 0 0 3.408 0l5.592 -5.592a2.41 2.41 0 0 0 0 -3.408l-7.71 -7.71a2 2 0 0 0 -1.414 -.586h-5.172a3 3 0 0 0 -3 3",key:"svg-1"}]]);var af=a.i(619089),ag=a.i(403990);let ah=(0,t.f)("outline","sun","Sun",[["path",{d:"M8 12a4 4 0 1 0 8 0a4 4 0 1 0 -8 0",key:"svg-0"}],["path",{d:"M3 12h1m8 -9v1m8 8h1m-9 8v1m-6.4 -15.4l.7 .7m12.1 -.7l-.7 .7m0 11.4l.7 .7m-12.1 -.7l-.7 .7",key:"svg-1"}]]);var ai=a.i(678464);function aj(a){let b=new MutationObserver(a);return b.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>b.disconnect()}function ak(){return"dark"===document.documentElement.dataset.theme?"dark":"light"}function al(){return"light"}function am(){let a=(0,c.useSyncExternalStore)(aj,ak,al);return(0,b.jsx)("button",{type:"button",onClick:function(){let b=(0,ai.w)(a);document.documentElement.dataset.theme=b;try{localStorage.setItem(ai.K,b)}catch{}},"aria-label":"Toggle theme",title:"Toggle theme",className:"relative inline-grid size-[34px] place-items-center rounded-md text-ink-soft hover:bg-hover hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:"dark"===a?(0,b.jsx)(ah,{size:18}):(0,b.jsx)(ag.f,{size:18})})}var an=a.i(740197),ao=a.i(521341),ap=a.i(768758),aq=a.i(505358),ar=a.i(749867),as=a.i(532489);let at=(0,t.f)("outline","building-skyscraper","BuildingSkyscraper",[["path",{d:"M3 21l18 0",key:"svg-0"}],["path",{d:"M5 21v-14l8 -4v18",key:"svg-1"}],["path",{d:"M19 21v-10l-6 -4",key:"svg-2"}],["path",{d:"M9 9l0 .01",key:"svg-3"}],["path",{d:"M9 12l0 .01",key:"svg-4"}],["path",{d:"M9 15l0 .01",key:"svg-5"}],["path",{d:"M9 18l0 .01",key:"svg-6"}]]);var au=a.i(851519);function av({link:a}){let[d,e]=(0,c.useState)(!1);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(af._,{label:a.label,pressed:d,onClick:()=>e(!0),children:(0,b.jsx)(at,{size:18})}),(0,b.jsx)(an.f.Root,{open:d,onOpenChange:e,children:(0,b.jsxs)(ao.f.Portal,{children:[(0,b.jsx)(ap.f.Backdrop,{className:"fixed inset-0 z-50 bg-black/10"}),(0,b.jsxs)(aq.f.Popup,{"aria-describedby":void 0,className:"fixed inset-y-0 right-0 z-50 flex w-1/2 min-w-[560px] flex-col border-l border-line bg-surface text-ink shadow-lg outline-none max-[900px]:w-full max-[900px]:min-w-0",children:[(0,b.jsxs)("div",{className:"flex h-[52px] shrink-0 items-center gap-3 border-b border-line px-4",children:[(0,b.jsx)(ar.f.Title,{className:"text-[15px] font-semibold",children:a.title}),(0,b.jsx)(X.default,{href:a.href,onClick:()=>e(!1),className:"ml-auto text-[13px] font-medium text-brand hover:underline",children:a.openLabel}),(0,b.jsx)(as.f.Close,{"aria-label":"Close",title:"Close",className:"inline-grid size-[34px] place-items-center rounded-md text-ink-soft hover:bg-hover hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:(0,b.jsx)(au.f,{size:18})})]}),(0,b.jsx)("iframe",{src:a.frame,title:a.title,className:"min-h-0 w-full flex-1 border-0"})]})]})})]})}var aw=a.i(715137),ax=a.i(335732);let ay={owner:"Owner",operator:"Operator",viewer:"Viewer"};function az({email:a,role:e,hasPassword:f=!1}){let[g,h]=(0,c.useTransition)(),i=(0,d.useMask)()("email",a),j=i!==a;return(0,b.jsxs)(ax.G,{children:[(0,b.jsx)(ax.X,{"aria-label":"Account menu",className:"ml-1 grid size-[30px] place-items-center rounded-full border border-line bg-sunken font-mono text-[11px] font-medium uppercase focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:j?"··":a.slice(0,2)}),(0,b.jsxs)(ax.L,{align:"end",className:"min-w-[200px]",children:[(0,b.jsx)(ax.P,{children:(0,b.jsxs)(ax.B,{children:[(0,b.jsx)("span",{className:"block truncate",children:i}),(0,b.jsx)("span",{className:"block text-xs font-normal text-ink-faint",children:ay[e]})]})}),(0,b.jsx)(ax.U,{}),f&&(0,b.jsx)(ax.r,{render:(0,b.jsx)(X.default,{href:"/account/password"}),children:"Change password"}),(0,b.jsx)(ax.r,{className:"text-err",disabled:g,onClick:()=>h(()=>(0,aw.f)()),children:"Sign out"})]})]})}function aA({user:a,office:c,alerts:f,onToggleNav:g,onOpenPalette:h,navButtonRef:i}){let{show:j,toggle:k}=(0,e.useSources)(),{shot:l,setShot:m}=(0,d.usePrivacy)();return(0,b.jsxs)("header",{className:"sticky top-0 z-20 flex h-[52px] items-center gap-2 border-b border-line bg-surface px-4",children:[(0,b.jsx)(af._,{ref:i,label:"Toggle navigation",onClick:g,children:(0,b.jsx)(ac,{size:18})}),(0,b.jsxs)("button",{type:"button",onClick:a=>h(a.currentTarget),"aria-label":"Search","aria-keyshortcuts":"Control+K Meta+K",className:"ml-2 flex w-[280px] items-center gap-2 whitespace-nowrap rounded-[7px] border border-line bg-surface-2 px-2.5 py-1.5 text-ink-faint max-[720px]:w-auto",children:[(0,b.jsx)(ad,{size:16}),(0,b.jsx)("span",{className:"max-[720px]:hidden",children:"Search apps, databases, pages"}),(0,b.jsx)("kbd",{className:"ml-auto rounded border border-line-strong px-[5px] font-mono text-[11px] text-ink-soft max-[720px]:hidden",children:"Ctrl K"})]}),(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-0.5",children:[l&&(0,b.jsxs)("button",{type:"button",onClick:()=>m(!1),title:"Screenshot mode is on. Click to turn it off.","aria-label":"Screenshot mode is on. Turn it off",className:"mr-1.5 inline-flex items-center gap-1 whitespace-nowrap rounded-full border border-warn/40 bg-warn-soft px-2.5 py-0.5 text-[12.5px] font-medium text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:[(0,b.jsx)(ab,{size:14,"aria-hidden":!0,className:"text-warn-icon"}),(0,b.jsx)("span",{className:"max-[480px]:hidden",children:"Screenshot mode"})]}),(0,b.jsx)(Y.LiveIndicator,{}),(0,b.jsx)(af._,{label:"Show data sources",pressed:j,onClick:k,children:(0,b.jsx)(ae,{size:18})}),c&&"owner"===a.role&&(0,b.jsx)(av,{link:c}),(0,b.jsx)(af._,{label:"Screenshot mode",pressed:l,onClick:()=>m(!l),children:l?(0,b.jsx)(ab,{size:18}):(0,b.jsx)(aa,{size:18})}),(0,b.jsx)(am,{}),(0,b.jsxs)(X.default,{href:"/alerts","aria-label":f?`Alerts, ${f} firing`:"Alerts",className:"relative inline-grid size-[34px] place-items-center rounded-md text-ink-soft hover:bg-hover hover:text-ink",children:[(0,b.jsx)(v.f,{size:18}),f>0&&(0,b.jsx)("span",{"aria-hidden":!0,className:"absolute right-0.5 top-[3px] rounded-[9px] bg-err px-1 font-mono text-[10px] font-medium leading-[15px] text-white",children:f})]}),(0,b.jsx)(az,{email:a.email,role:a.role,hasPassword:a.hasPassword})]})]})}let aB={nav:[],palette:[]};a.s(["Shell",0,function({user:a,collector:g,alerts:h,book:i,shot:j,ext:k=aB,sections:l,children:m}){let[n,o]=(0,c.useState)(!1),[p,q]=(0,c.useState)(!1),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(null),v=(0,c.useRef)(null),w=(0,c.useRef)(null),x=(0,c.useRef)(!1);function y(a){u(a),s(!0)}return(0,c.useEffect)(()=>{n?(x.current=!0,v.current?.focus()):x.current&&(x.current=!1,w.current?.focus())},[n]),(0,c.useEffect)(()=>{if(n)return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a);function a(a){"Escape"===a.key&&o(!1)}},[n]),(0,b.jsx)(d.AliasProvider,{book:i,shot:j,children:(0,b.jsxs)(e.SourcesProvider,{children:[(0,b.jsxs)("div",{className:(0,f.f)("grid min-h-screen grid-cols-1",!p&&"min-[1001px]:grid-cols-[248px_minmax(0,1fr)]"),children:[(!p||n)&&(0,b.jsx)(_,{role:a.role,ext:k,sections:l,collector:g,alerts:h,mobileOpen:n,onNavigate:()=>o(!1),navRef:v}),n&&(0,b.jsx)("button",{type:"button","aria-label":"Close navigation",className:"fixed inset-0 z-40 bg-black/45 min-[1001px]:hidden",onClick:()=>o(!1)}),(0,b.jsxs)("main",{className:"min-w-0",children:[g.demo&&(0,b.jsx)(U,{}),(0,b.jsx)(aA,{user:a,office:k.office,alerts:h,onToggleNav:function(){window.matchMedia("(max-width: 1000px)").matches?o(a=>!a):q(a=>!a)},onOpenPalette:y,navButtonRef:w}),(0,b.jsx)("div",{className:"flex max-w-[1480px] flex-col gap-4 px-6 pb-10 pt-5 max-[720px]:px-3.5",children:m})]})]}),(0,b.jsx)(S,{role:a.role,ext:k,sections:l,open:r,opener:t,onOpen:y,onClose:()=>s(!1)})]})})}],480761)},299233,a=>{var b=a.i(147474);a.s(["TimeZoneSync",0,function({zone:a}){return(0,b.k)(a),null}])}]})();
|
|
1
|
+
(()=>{"use strict";module.exports=[801789,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(405050);let g=(0,f.createServerReference)("005e8c18c126566e2a4b9b1468076ca810414582ef",f.callServer,void 0,f.findSourceMapURL,"dismissWhatsNew");a.s(["WhatsNewDismiss",0,function(){let[a,f]=(0,c.useTransition)();return(0,b.jsx)(e.K,{size:"sm",onClick:()=>f(async()=>{try{let a=await g();a.ok||d.c.error(a.error)}catch{d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}}),disabled:a,children:a?"Saving…":"Got it"})}],801789)},480761,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(771378),e=a.i(728951),f=a.i(368114),g=a.i(50944),h=a.i(405050);let i=(0,h.createServerReference)("004f72f7f8a0a103f10727ef06f8e8cc2af89ffc82",h.callServer,void 0,h.findSourceMapURL,"loadPaletteSource"),j={home:{label:"Home",holds:"Overview, Topology, Events and Provider status.",appears:"Always on."},hosting:{label:"Hosting",holds:"Applications, Deployments, Domains, DNS records, Uptime and Logs.",appears:"On from the start, so Uptime is always in the menu."},database:{label:"Database",holds:"Supabase, Neon, Firebase, Turso, Upstash Redis, Cloudflare D1, the SQL console and Free databases.",appears:"Appears when you connect Supabase, Neon, Firebase, Turso or Upstash, or once a database is watched.",keeps:"Keep active and Auto-restore keep running while it is off, so your free Supabase projects aren't paused."},devops:{label:"DevOps",holds:"Automation: GitHub repositories, their Actions runs and dependency advisories.",appears:"Appears when you connect GitHub."},manage:{label:"Manage",holds:"Connections, Alerts, Auto-actions, Sections, Settings, AI gateway, API explorer, Status page and Backups.",appears:"Always on."}},k={home:[{key:"overview",label:"Overview",href:"/overview",icon:"dashboard",stage:2},{key:"topology",label:"Topology",href:"/topology",icon:"topology",stage:4},{key:"events",label:"Events",href:"/events",icon:"activity",stage:2},{key:"status",label:"Provider status",href:"/status",icon:"broadcast",stage:5}],hosting:[{key:"apps",label:"Applications",href:"/apps",icon:"apps",stage:2},{key:"deployments",label:"Deployments",href:"/deployments",icon:"rocket",stage:2},{key:"domains",label:"Domains",href:"/domains",icon:"world",stage:4},{key:"dns",label:"DNS records",href:"/dns",icon:"sitemap",stage:4},{key:"uptime",label:"Uptime",href:"/uptime",icon:"heartbeat",stage:2},{key:"logs",label:"Logs",href:"/logs",icon:"file",stage:5,hideForViewer:!0}],database:[{key:"supabase",label:"Supabase",href:"/supabase",icon:"bolt",stage:3},{key:"neon",label:"Neon",href:"/neon",icon:"database",stage:3},{key:"firebase",label:"Firebase",href:"/firebase",icon:"flame",stage:3},{key:"turso",label:"Turso",href:"/turso",icon:"database",stage:8},{key:"upstash",label:"Upstash Redis",href:"/upstash",icon:"bolt",stage:8},{key:"d1",label:"Cloudflare D1",href:"/d1",icon:"cloud",stage:8},{key:"sql",label:"SQL console",href:"/sql",icon:"terminal",stage:9,ownerOnly:!0},{key:"catalog",label:"Free databases",href:"/catalog",icon:"books",stage:7}],devops:[{key:"repos",label:"Repositories",href:"/repos",icon:"github",stage:9,sub:"Automation"}],manage:[{key:"alerts",label:"Alerts",href:"/alerts",icon:"bell",stage:5,sub:"Alerting"},{key:"status-page",label:"Status page",href:"/settings?tab=status-page",icon:"page",stage:7,ownerOnly:!0,sub:"Alerting"},{key:"connections",label:"Connections",href:"/connections",icon:"plug",stage:1,ownerOnly:!0,sub:"Setup"},{key:"settings",label:"Settings",href:"/settings",icon:"settings",stage:1,ownerOnly:!0,sub:"Setup"},{key:"sections",label:"Sections",href:"/manage/sections",icon:"layout",stage:12,ownerOnly:!0,sub:"Setup"},{key:"backups",label:"Backups",href:"/backups",icon:"cloud-upload",stage:7,ownerOnly:!0,sub:"Setup"}]},l=["home","hosting","database","devops","manage"].map(a=>({section:a,group:j[a].label,items:k[a]})),m={nav:[]};function n(a=m){let b=l.map(a=>({...a,items:[...a.items]}));for(let c of a.nav){let a=b.find(a=>a.section===c.section)??b.find(a=>"manage"===a.section),d=c.after?a.items.findIndex(a=>a.key===c.after):-1;d<0?a.items.push(...c.items):a.items.splice(d+1,0,...c.items)}return b}function o(a,b=m,c){let d=c?new Set(c):null;return n(b).filter(a=>!d||d.has(a.section)).map(b=>({...b,items:b.items.filter(b=>b.ownerOnly?"owner"===a:!b.hideForViewer||"viewer"!==a)})).filter(a=>a.items.length>0)}let p=a=>a.split("?")[0];function q(a,b){let c=b.trim().toLowerCase(),d=a.toLowerCase(),e=d.indexOf(c);if(e<0)return null;if(0===e)return 0;for(let a=d.indexOf(c);a>=0;a=d.indexOf(c,a+1))if(!/[a-z0-9]/.test(d[a-1]??" "))return 1;return 2}var r=a.i(424567),s=a.i(742089),t=a.i(449862);let u=(0,t.f)("outline","apps","Apps",[["path",{d:"M4 5a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4",key:"svg-0"}],["path",{d:"M4 15a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4",key:"svg-1"}],["path",{d:"M14 15a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4",key:"svg-2"}],["path",{d:"M14 7l6 0",key:"svg-3"}],["path",{d:"M17 4l0 6",key:"svg-4"}]]);var v=a.i(896293),w=a.i(133004);let x=(0,t.f)("outline","books","Books",[["path",{d:"M5 5a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -14",key:"svg-0"}],["path",{d:"M9 5a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -14",key:"svg-1"}],["path",{d:"M5 8h4",key:"svg-2"}],["path",{d:"M9 16h4",key:"svg-3"}],["path",{d:"M13.803 4.56l2.184 -.53c.562 -.135 1.133 .19 1.282 .732l3.695 13.418a1.02 1.02 0 0 1 -.634 1.219l-.133 .041l-2.184 .53c-.562 .135 -1.133 -.19 -1.282 -.732l-3.695 -13.418a1.02 1.02 0 0 1 .634 -1.219l.133 -.041",key:"svg-4"}],["path",{d:"M14 9l4 -1",key:"svg-5"}],["path",{d:"M16 16l3.923 -.98",key:"svg-6"}]]);var y=a.i(36600);let z=(0,t.f)("outline","broadcast","Broadcast",[["path",{d:"M18.364 19.364a9 9 0 1 0 -12.728 0",key:"svg-0"}],["path",{d:"M15.536 16.536a5 5 0 1 0 -7.072 0",key:"svg-1"}],["path",{d:"M11 13a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}]]),A=(0,t.f)("outline","browser","Browser",[["path",{d:"M4 8h16",key:"svg-0"}],["path",{d:"M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -12",key:"svg-1"}],["path",{d:"M8 4v4",key:"svg-2"}]]);var B=a.i(786581);let C=(0,t.f)("outline","cloud-upload","CloudUpload",[["path",{d:"M7 18a4.6 4.4 0 0 1 0 -9a5 4.5 0 0 1 11 2h1a3.5 3.5 0 0 1 0 7h-1",key:"svg-0"}],["path",{d:"M9 15l3 -3l3 3",key:"svg-1"}],["path",{d:"M12 12l0 9",key:"svg-2"}]]);var D=a.i(713352);let E=(0,t.f)("outline","file-text","FileText",[["path",{d:"M14 3v4a1 1 0 0 0 1 1h4",key:"svg-0"}],["path",{d:"M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2",key:"svg-1"}],["path",{d:"M9 9l1 0",key:"svg-2"}],["path",{d:"M9 13l6 0",key:"svg-3"}],["path",{d:"M9 17l6 0",key:"svg-4"}]]);var F=a.i(471941),G=a.i(614548);let H=(0,t.f)("outline","hierarchy-3","Hierarchy3",[["path",{d:"M10 5a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-0"}],["path",{d:"M6 12a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M10 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-2"}],["path",{d:"M18 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-3"}],["path",{d:"M2 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-4"}],["path",{d:"M14 12a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-5"}],["path",{d:"M5 17l2 -3",key:"svg-6"}],["path",{d:"M9 10l2 -3",key:"svg-7"}],["path",{d:"M13 7l2 3",key:"svg-8"}],["path",{d:"M17 14l2 3",key:"svg-9"}],["path",{d:"M15 14l-2 3",key:"svg-10"}],["path",{d:"M9 14l2 3",key:"svg-11"}]]);var I=a.i(615016);let J=(0,t.f)("outline","layout-list","LayoutList",[["path",{d:"M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -2",key:"svg-0"}],["path",{d:"M4 16a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -2",key:"svg-1"}]]);var K=a.i(335371);let L=(0,t.f)("outline","rocket","Rocket",[["path",{d:"M4 13a8 8 0 0 1 7 7a6 6 0 0 0 3 -5a9 9 0 0 0 6 -8a3 3 0 0 0 -3 -3a9 9 0 0 0 -8 6a6 6 0 0 0 -5 3",key:"svg-0"}],["path",{d:"M7 14a6 6 0 0 0 -3 6a6 6 0 0 0 6 -3",key:"svg-1"}],["path",{d:"M14 9a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}]]),M=(0,t.f)("outline","route-2","Route2",[["path",{d:"M3 19a2 2 0 1 0 4 0a2 2 0 0 0 -4 0",key:"svg-0"}],["path",{d:"M19 7a2 2 0 1 0 0 -4a2 2 0 0 0 0 4",key:"svg-1"}],["path",{d:"M14 5a2 2 0 0 0 -2 2v10a2 2 0 0 1 -2 2",key:"svg-2"}]]),N=(0,t.f)("outline","settings","Settings",[["path",{d:"M10.325 4.317c.426 -1.756 2.924 -1.756 3.35 0a1.724 1.724 0 0 0 2.573 1.066c1.543 -.94 3.31 .826 2.37 2.37a1.724 1.724 0 0 0 1.065 2.572c1.756 .426 1.756 2.924 0 3.35a1.724 1.724 0 0 0 -1.066 2.573c.94 1.543 -.826 3.31 -2.37 2.37a1.724 1.724 0 0 0 -2.572 1.065c-.426 1.756 -2.924 1.756 -3.35 0a1.724 1.724 0 0 0 -2.573 -1.066c-1.543 .94 -3.31 -.826 -2.37 -2.37a1.724 1.724 0 0 0 -1.065 -2.572c-1.756 -.426 -1.756 -2.924 0 -3.35a1.724 1.724 0 0 0 1.066 -2.573c-.94 -1.543 .826 -3.31 2.37 -2.37c1 .608 2.296 .07 2.572 -1.065",key:"svg-0"}],["path",{d:"M9 12a3 3 0 1 0 6 0a3 3 0 0 0 -6 0",key:"svg-1"}]]);var O=a.i(105084);let P=(0,t.f)("outline","terminal-2","Terminal2",[["path",{d:"M8 9l3 3l-3 3",key:"svg-0"}],["path",{d:"M13 15l3 0",key:"svg-1"}],["path",{d:"M3 6a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2l0 -12",key:"svg-2"}]]),Q=(0,t.f)("outline","world","World",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M3.6 9h16.8",key:"svg-1"}],["path",{d:"M3.6 15h16.8",key:"svg-2"}],["path",{d:"M11.5 3a17 17 0 0 0 0 18",key:"svg-3"}],["path",{d:"M12.5 3a17 17 0 0 1 0 18",key:"svg-4"}]]),R={dashboard:I.f,topology:H,activity:r.f,apps:u,rocket:L,world:Q,sitemap:O.f,bolt:w.f,database:D.f,flame:F.f,books:x,heartbeat:G.f,bell:v.f,file:E,broadcast:z,plug:K.f,"cloud-upload":C,cloud:B.f,settings:N,route:M,api:s.f,github:y.f,terminal:P,layout:J,page:A};function S({role:a,ext:d,sections:e,open:f,opener:g,onOpen:h,onClose:k}){let[l,m]=(0,c.useState)(null),[n,p]=(0,c.useState)(!1),q=(0,c.useRef)(!1);(0,c.useEffect)(()=>{function a(a){"k"!==a.key.toLowerCase()||!(a.ctrlKey||a.metaKey)||a.shiftKey||a.altKey||(a.preventDefault(),a.repeat||(f?k():h(document.activeElement)))}return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[f,h,k]),(0,c.useEffect)(()=>{f&&!q.current&&(q.current=!0,i().then(a=>{a.ok&&a.data?(m(a.data),p(!1)):p(!0)}).catch(()=>p(!0)).finally(()=>{q.current=!1}))},[f]);let r=(0,c.useMemo)(()=>(function(a,b,c={nav:[],palette:[]},d){let e=o(a,c,d).flatMap(a=>a.items.map(b=>({id:`page:${b.key}`,label:b.label,hint:a.group,href:b.href,icon:b.icon}))),f="owner"!==a?[]:c.palette.filter(a=>!e.some(b=>b.href===a.href)).map(a=>{let b=c.nav.flatMap(a=>a.items.map(b=>({g:a,i:b}))).find(({i:b})=>a.href===b.href||a.href.startsWith(`${b.href}/`));return{id:`ext:${a.href}`,label:a.label,hint:b?`${j[b.g.section].label} \xb7 ${b.i.label}`:"Page",href:a.href,icon:b?.i.icon??"dashboard",keywords:a.keywords}}),g=[...e,...f];if(!b)return g;let h=b.apps.map(a=>({id:`app:${a.id}`,label:a.name,hint:a.domain,href:`/apps/${a.id}`,icon:"apps"})),i=b.monitors.map(a=>({id:`monitor:${a.id}`,label:`${a.appName}${a.path}`,hint:"Monitor",href:`/apps/${a.appId}`,icon:"heartbeat"}));return[...g,...h,...(b.domains??[]).map(a=>({id:`domain:${a.id}`,label:a.name,hint:"Domain",href:"/domains",icon:"world"})),...i]})(a,l,d,e),[a,l,d,e]);return f?(0,b.jsx)(T,{items:r,loading:null===l&&!n,opener:g,onClose:k}):null}function T({items:a,loading:e,opener:h=null,onClose:i}){let j=(0,g.useRouter)(),k=(0,c.useId)(),l=(0,c.useRef)(null),[m,n]=(0,c.useState)(""),[o,p]=(0,c.useState)(0),{shot:r}=(0,d.usePrivacy)(),s=(0,d.useMask)(),t=(0,c.useMemo)(()=>a.map(a=>a.id.startsWith("page:")?a:{...a,label:s("text",a.label),hint:s("text",a.hint)}),[a,s]),u=(0,c.useMemo)(()=>(function(a,b,c,d=20){if(!c.trim())return b.slice(0,d);let e=a=>(function(a,b){let c=q(a.label,b);if(null!==c)return c;let d=q(a.hint,b);if(null!==d)return d+3;let e=(a.keywords??[]).map(a=>q(a,b)).filter(a=>null!==a);return e.length?Math.min(...e)+6:null})(a,c),f=[];return a.forEach((a,c)=>{let d=e(a),g=e(b[c]),h=null===d?g:null===g?d:Math.min(d,g);null!==h&&f.push({item:b[c],score:h})}),f.sort((a,b)=>a.score-b.score).slice(0,d).map(a=>a.item)})(a,r?t:a,m),[a,t,r,m]),v=Math.min(o,Math.max(0,u.length-1)),w=a=>`${k}-opt-${a}`;function x(a){a&&(i(),j.push(a.href))}return(0,c.useEffect)(()=>{l.current?.focus()},[]),(0,c.useEffect)(()=>()=>{h instanceof HTMLElement&&h.isConnected&&h.focus()},[h]),(0,c.useEffect)(()=>{document.getElementById(`${k}-opt-${v}`)?.scrollIntoView?.({block:"nearest"})},[k,v,u]),(0,c.useEffect)(()=>{function a(a){"Escape"===a.key&&i(),"Tab"===a.key&&a.preventDefault()}return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[i]),(0,b.jsx)("div",{className:"fixed inset-0 z-[80] flex items-start justify-center bg-black/45 pt-[12vh]",onMouseDown:a=>{a.target===a.currentTarget&&i()},children:(0,b.jsxs)("div",{role:"dialog","aria-modal":"true","aria-label":"Search",onMouseDown:a=>{a.target!==l.current&&a.preventDefault()},className:"w-[560px] max-w-[calc(100vw-32px)] overflow-hidden rounded-[10px] border border-line-strong bg-surface shadow-[0_16px_48px_rgba(0,0,0,.25)]",children:[(0,b.jsx)("input",{ref:l,role:"combobox","aria-expanded":u.length>0,"aria-controls":u.length>0?`${k}-list`:void 0,"aria-activedescendant":u.length>0?w(v):void 0,"aria-autocomplete":"list","aria-label":"Search",autoComplete:"off",placeholder:"Jump to a page, app, database, or domain",value:m,onChange:a=>{n(a.target.value),p(0)},onKeyDown:function(a){a.nativeEvent.isComposing||("ArrowDown"===a.key&&(p(Math.min(v+1,u.length-1)),a.preventDefault()),"ArrowUp"===a.key&&(p(Math.max(v-1,0)),a.preventDefault()),"Enter"===a.key&&(x(u[v]),a.preventDefault()))},className:"w-full border-0 border-b border-line bg-transparent px-4 py-3.5 text-[15px] text-ink outline-none placeholder:text-ink-faint"}),u.length>0?(0,b.jsx)("ul",{id:`${k}-list`,role:"listbox","aria-label":"Results",className:"m-0 max-h-[360px] list-none overflow-y-auto p-1.5",children:u.map((a,c)=>{let d=R[a.icon];return(0,b.jsxs)("li",{id:w(c),role:"option","aria-selected":c===v,onMouseMove:()=>{c!==v&&p(c)},onClick:()=>x(a),className:(0,f.f)("flex cursor-pointer items-center gap-2.5 rounded-md px-2.5 py-2",c===v&&"bg-brand-soft"),children:[(0,b.jsx)(d,{size:17,className:"shrink-0 text-ink-faint"}),(0,b.jsx)("span",{className:"min-w-0 truncate",children:a.label}),(0,b.jsx)("small",{className:"ml-auto shrink-0 pl-3 text-[12.5px] text-ink-faint",children:a.hint})]},a.id)})}):(0,b.jsx)("p",{role:"status",className:"m-0 p-4 text-ink-soft",children:e&&m.trim()?"Loading apps…":"No matches"})]})})}function U(){return(0,b.jsx)("div",{role:"note",className:"border-b border-line bg-brand-soft px-6 py-1.5 text-[12.5px] text-nav-active-text max-[720px]:px-3.5",children:"Demo — data is made up and resets. Results of your actions can disappear when the demo restarts."})}function V({size:a=28,title:c,className:d}){return(0,b.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",width:a,height:a,className:(0,f.f)("shrink-0",d),role:c?"img":void 0,"aria-hidden":!c||void 0,focusable:"false",children:[c?(0,b.jsx)("title",{children:c}):null,(0,b.jsx)("rect",{x:"0.5",y:"0.5",width:"31",height:"31",rx:"7",fill:"#14213d",strokeWidth:"1",className:"stroke-transparent dark:stroke-[#2f4372]"}),(0,b.jsxs)("g",{transform:"rotate(-14 15 16)",fill:"#fcc419",children:[(0,b.jsx)("rect",{x:"13.7",y:"5.4",width:"2.6",height:"2.4",rx:"1.1"}),(0,b.jsx)("path",{d:"M15 7.2c-4.3 0-6.8 3.1-6.8 7.3v4.1l-2.4 3.3h18.4l-2.4-3.3v-4.1c0-4.2-2.5-7.3-6.8-7.3z"}),(0,b.jsx)("circle",{cx:"15",cy:"24.3",r:"2.3"})]}),(0,b.jsxs)("g",{fill:"none",stroke:"#fcc419",strokeWidth:"2.2",strokeLinecap:"round",children:[(0,b.jsx)("path",{d:"M24.4 9.2c1.4 1.4 2.2 3.2 2.2 5.2"}),(0,b.jsx)("path",{d:"M22.8 11.1c.8.8 1.2 1.8 1.2 2.9"})]})]})}let W=(0,t.f)("outline","chevron-right","ChevronRight",[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]]);var X=a.i(238246),Y=a.i(507504);let Z={ok:"bg-ok",warn:"bg-warn-icon",err:"bg-err",idle:"bg-idle"};function $({initialLastRunAt:a,initialNow:d,demo:e=!1,initialStaleMs:g}){let[h,i]=(0,c.useState)(a),[j,k]=(0,c.useState)(g),[l,m]=(0,c.useState)(d);(0,c.useEffect)(()=>{(0,Y.markCollectorRun)(e||!h?null:Date.parse(h))},[h,e]),(0,c.useEffect)(()=>{if(e)return;let a=()=>{fetch("/api/status",{cache:"no-store"}).then(a=>a.ok&&!a.redirected&&(a.headers.get("content-type")??"").includes("application/json")?a.json():null).then(a=>{a&&"object"==typeof a&&"lastRunAt"in a&&(i(a.lastRunAt??null),"number"==typeof a.staleMs&&k(a.staleMs),m(Date.now()))}).catch(()=>void 0)},b=()=>{"visible"===document.visibilityState&&a()},c=()=>{"visible"===document.visibilityState&&a()};b();let d=setInterval(()=>m(Date.now()),5e3),f=setInterval(b,3e4);return document.addEventListener("visibilitychange",c),()=>{clearInterval(d),clearInterval(f),document.removeEventListener("visibilitychange",c)}},[e]);let n=e?{state:"ok",text:"Demo · no live collector"}:function(a,b,c=3e5){if(!a)return{state:"idle",text:"Collector hasn't run yet"};let d=Math.max(0,Math.round((b.getTime()-a.getTime())/1e3)),e=Math.floor(d/60),f=c>3e5,g=f?Math.round(.8*c/1e3):120,h=f?Math.round(c/1e3):300;return d<60?{state:"ok",text:`Collector ran ${d}s ago`}:d<g?{state:"ok",text:`Collector ran ${e} min ago`}:d<h?{state:"warn",text:`Collector late \xb7 ran ${e} min ago`}:{state:"err",text:`Collector stopped ${e} min ago`}}(h?new Date(h):null,new Date(l),j);return(0,b.jsxs)("div",{className:"flex items-center gap-2 border-t border-line px-4 py-3 text-xs text-ink-soft","aria-live":"off",children:[(0,b.jsx)("span",{className:(0,f.f)("size-2 shrink-0 rounded-full",Z[n.state]),"aria-hidden":!0}),n.text]})}function _({role:a,ext:d,sections:e,collector:h,alerts:i,mobileOpen:j,onNavigate:k,navRef:l}){let q=function(a,b=m,c){return function(a,b=m,c){let[d,e]=a.split("?"),f=d.replace(/\/+$/,"")||"/",g=null!=c?new URLSearchParams(c):void 0!==e?new URLSearchParams(e):null,h=null;for(let a of n(b).flatMap(a=>a.items)){let b=p(a.href);if(f!==b&&!f.startsWith(`${b}/`))continue;let c=a.href.includes("?");if(c&&(f!==b||!function(a,b){let c=a.split("?")[1];return!c||!!b&&[...new URLSearchParams(c)].every(([a,c])=>b.get(a)===c)}(a.href,g)))continue;let d=h?p(h.href).length:-1;(!h||b.length>d||b.length===d&&c&&!h.href.includes("?"))&&(h=a)}return h}(a,b,c)?.key??null}((0,g.usePathname)(),d,(0,g.useSearchParams)()),[r,s]=(0,c.useState)({});return(0,b.jsxs)("nav",{ref:l,tabIndex:-1,"aria-label":"Main navigation",className:(0,f.f)("sticky top-0 flex h-screen flex-col overflow-y-auto border-r border-line bg-nav focus:outline-none","max-[1000px]:fixed max-[1000px]:inset-y-0 max-[1000px]:left-0 max-[1000px]:z-50 max-[1000px]:w-[264px]",!j&&"max-[1000px]:invisible max-[1000px]:-translate-x-full"),children:[(0,b.jsxs)(X.default,{href:"/",className:"flex items-center gap-2.5 border-b border-line px-4 py-3.5 text-ink hover:no-underline",children:[(0,b.jsx)(V,{}),(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-semibold",children:"Watchbell"}),(0,b.jsx)("small",{className:"block text-xs text-ink-faint",children:"Personal"})]})]}),(0,b.jsx)("div",{className:"flex-1 px-2 pb-4 pt-2",children:o(a,d,e).map(a=>{let d=!r[a.section];return(0,b.jsxs)("div",{className:"mt-1.5",children:[(0,b.jsxs)("button",{type:"button","aria-expanded":d,onClick:()=>s(b=>({...b,[a.section]:d})),className:"flex w-full items-center gap-1.5 rounded-md px-2 py-1.5 text-xs font-medium text-ink-faint hover:text-ink",children:[a.group,(0,b.jsx)(W,{size:14,className:(0,f.f)("ml-auto transition-transform",d&&"rotate-90")})]}),d&&(0,b.jsx)("ul",{children:a.items.map((d,e)=>{let g=R[d.icon],h=d.key===q,j=d.sub&&d.sub!==a.items[e-1]?.sub?d.sub:null;return(0,b.jsxs)(c.Fragment,{children:[j&&(0,b.jsx)("li",{"aria-hidden":!0,className:"px-2.5 pb-0.5 pt-1.5 text-[11px] uppercase tracking-[0.06em] text-ink-faint",children:j}),(0,b.jsx)("li",{children:(0,b.jsxs)(X.default,{href:d.href,onClick:k,"aria-current":h?"page":void 0,className:(0,f.f)("flex items-center gap-2.5 rounded-md px-2.5 py-[7px] text-nav-text hover:bg-hover hover:no-underline",h&&"bg-nav-active font-medium text-nav-active-text"),children:[(0,b.jsx)(g,{size:17,className:h?"text-nav-active-text":"text-ink-faint"}),d.label,"alerts"===d.key&&i>0&&(0,b.jsxs)("span",{className:"ml-auto rounded-[10px] bg-err-soft px-1.5 font-mono text-[11px] font-medium text-err",children:[i,(0,b.jsx)("span",{className:"sr-only",children:" firing"})]})]})})]},d.key)})})]},a.section)})}),(0,b.jsx)($,{initialLastRunAt:h.lastRunAt,initialNow:h.now,demo:h.demo,initialStaleMs:h.staleMs})]})}let aa=(0,t.f)("outline","eye","Eye",[["path",{d:"M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0",key:"svg-0"}],["path",{d:"M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6",key:"svg-1"}]]),ab=(0,t.f)("outline","eye-off","EyeOff",[["path",{d:"M10.585 10.587a2 2 0 0 0 2.829 2.828",key:"svg-0"}],["path",{d:"M16.681 16.673a8.717 8.717 0 0 1 -4.681 1.327c-3.6 0 -6.6 -2 -9 -6c1.272 -2.12 2.712 -3.678 4.32 -4.674m2.86 -1.146a9.055 9.055 0 0 1 1.82 -.18c3.6 0 6.6 2 9 6c-.666 1.11 -1.379 2.067 -2.138 2.87",key:"svg-1"}],["path",{d:"M3 3l18 18",key:"svg-2"}]]),ac=(0,t.f)("outline","layout-sidebar","LayoutSidebar",[["path",{d:"M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -12",key:"svg-0"}],["path",{d:"M9 4l0 16",key:"svg-1"}]]),ad=(0,t.f)("outline","search","Search",[["path",{d:"M3 10a7 7 0 1 0 14 0a7 7 0 1 0 -14 0",key:"svg-0"}],["path",{d:"M21 21l-6 -6",key:"svg-1"}]]),ae=(0,t.f)("outline","tag","Tag",[["path",{d:"M6.5 7.5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M3 6v5.172a2 2 0 0 0 .586 1.414l7.71 7.71a2.41 2.41 0 0 0 3.408 0l5.592 -5.592a2.41 2.41 0 0 0 0 -3.408l-7.71 -7.71a2 2 0 0 0 -1.414 -.586h-5.172a3 3 0 0 0 -3 3",key:"svg-1"}]]);var af=a.i(619089),ag=a.i(403990);let ah=(0,t.f)("outline","sun","Sun",[["path",{d:"M8 12a4 4 0 1 0 8 0a4 4 0 1 0 -8 0",key:"svg-0"}],["path",{d:"M3 12h1m8 -9v1m8 8h1m-9 8v1m-6.4 -15.4l.7 .7m12.1 -.7l-.7 .7m0 11.4l.7 .7m-12.1 -.7l-.7 .7",key:"svg-1"}]]);var ai=a.i(678464);function aj(a){let b=new MutationObserver(a);return b.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>b.disconnect()}function ak(){return"dark"===document.documentElement.dataset.theme?"dark":"light"}function al(){return"light"}function am(){let a=(0,c.useSyncExternalStore)(aj,ak,al);return(0,b.jsx)("button",{type:"button",onClick:function(){let b=(0,ai.w)(a);document.documentElement.dataset.theme=b;try{localStorage.setItem(ai.K,b)}catch{}},"aria-label":"Toggle theme",title:"Toggle theme",className:"relative inline-grid size-[34px] place-items-center rounded-md text-ink-soft hover:bg-hover hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:"dark"===a?(0,b.jsx)(ah,{size:18}):(0,b.jsx)(ag.f,{size:18})})}var an=a.i(740197),ao=a.i(521341),ap=a.i(768758),aq=a.i(505358),ar=a.i(749867),as=a.i(532489);let at=(0,t.f)("outline","building-skyscraper","BuildingSkyscraper",[["path",{d:"M3 21l18 0",key:"svg-0"}],["path",{d:"M5 21v-14l8 -4v18",key:"svg-1"}],["path",{d:"M19 21v-10l-6 -4",key:"svg-2"}],["path",{d:"M9 9l0 .01",key:"svg-3"}],["path",{d:"M9 12l0 .01",key:"svg-4"}],["path",{d:"M9 15l0 .01",key:"svg-5"}],["path",{d:"M9 18l0 .01",key:"svg-6"}]]);var au=a.i(851519);function av({link:a}){let[d,e]=(0,c.useState)(!1);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(af._,{label:a.label,pressed:d,onClick:()=>e(!0),children:(0,b.jsx)(at,{size:18})}),(0,b.jsx)(an.f.Root,{open:d,onOpenChange:e,children:(0,b.jsxs)(ao.f.Portal,{children:[(0,b.jsx)(ap.f.Backdrop,{className:"fixed inset-0 z-50 bg-black/10"}),(0,b.jsxs)(aq.f.Popup,{"aria-describedby":void 0,className:"fixed inset-y-0 right-0 z-50 flex w-1/2 min-w-[560px] flex-col border-l border-line bg-surface text-ink shadow-lg outline-none max-[900px]:w-full max-[900px]:min-w-0",children:[(0,b.jsxs)("div",{className:"flex h-[52px] shrink-0 items-center gap-3 border-b border-line px-4",children:[(0,b.jsx)(ar.f.Title,{className:"text-[15px] font-semibold",children:a.title}),(0,b.jsx)(X.default,{href:a.href,onClick:()=>e(!1),className:"ml-auto text-[13px] font-medium text-brand hover:underline",children:a.openLabel}),(0,b.jsx)(as.f.Close,{"aria-label":"Close",title:"Close",className:"inline-grid size-[34px] place-items-center rounded-md text-ink-soft hover:bg-hover hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:(0,b.jsx)(au.f,{size:18})})]}),(0,b.jsx)("iframe",{src:a.frame,title:a.title,className:"min-h-0 w-full flex-1 border-0"})]})]})})]})}var aw=a.i(830308),ax=a.i(335732);let ay={owner:"Owner",operator:"Operator",viewer:"Viewer"};function az({email:a,role:e,hasPassword:f=!1}){let[g,h]=(0,c.useTransition)(),i=(0,d.useMask)()("email",a),j=i!==a;return(0,b.jsxs)(ax.G,{children:[(0,b.jsx)(ax.X,{"aria-label":"Account menu",className:"ml-1 grid size-[30px] place-items-center rounded-full border border-line bg-sunken font-mono text-[11px] font-medium uppercase focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:j?"··":a.slice(0,2)}),(0,b.jsxs)(ax.L,{align:"end",className:"min-w-[200px]",children:[(0,b.jsx)(ax.P,{children:(0,b.jsxs)(ax.B,{children:[(0,b.jsx)("span",{className:"block truncate",children:i}),(0,b.jsx)("span",{className:"block text-xs font-normal text-ink-faint",children:ay[e]})]})}),(0,b.jsx)(ax.U,{}),f&&(0,b.jsx)(ax.r,{render:(0,b.jsx)(X.default,{href:"/account/password"}),children:"Change password"}),(0,b.jsx)(ax.r,{className:"text-err",disabled:g,onClick:()=>h(()=>(0,aw.f)()),children:"Sign out"})]})]})}function aA({user:a,office:c,alerts:f,onToggleNav:g,onOpenPalette:h,navButtonRef:i}){let{show:j,toggle:k}=(0,e.useSources)(),{shot:l,setShot:m}=(0,d.usePrivacy)();return(0,b.jsxs)("header",{className:"sticky top-0 z-20 flex h-[52px] items-center gap-2 border-b border-line bg-surface px-4",children:[(0,b.jsx)(af._,{ref:i,label:"Toggle navigation",onClick:g,children:(0,b.jsx)(ac,{size:18})}),(0,b.jsxs)("button",{type:"button",onClick:a=>h(a.currentTarget),"aria-label":"Search","aria-keyshortcuts":"Control+K Meta+K",className:"ml-2 flex w-[280px] items-center gap-2 whitespace-nowrap rounded-[7px] border border-line bg-surface-2 px-2.5 py-1.5 text-ink-faint max-[720px]:w-auto",children:[(0,b.jsx)(ad,{size:16}),(0,b.jsx)("span",{className:"max-[720px]:hidden",children:"Search apps, databases, pages"}),(0,b.jsx)("kbd",{className:"ml-auto rounded border border-line-strong px-[5px] font-mono text-[11px] text-ink-soft max-[720px]:hidden",children:"Ctrl K"})]}),(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-0.5",children:[l&&(0,b.jsxs)("button",{type:"button",onClick:()=>m(!1),title:"Screenshot mode is on. Click to turn it off.","aria-label":"Screenshot mode is on. Turn it off",className:"mr-1.5 inline-flex items-center gap-1 whitespace-nowrap rounded-full border border-warn/40 bg-warn-soft px-2.5 py-0.5 text-[12.5px] font-medium text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:[(0,b.jsx)(ab,{size:14,"aria-hidden":!0,className:"text-warn-icon"}),(0,b.jsx)("span",{className:"max-[480px]:hidden",children:"Screenshot mode"})]}),(0,b.jsx)(Y.LiveIndicator,{}),(0,b.jsx)(af._,{label:"Show data sources",pressed:j,onClick:k,children:(0,b.jsx)(ae,{size:18})}),c&&"owner"===a.role&&(0,b.jsx)(av,{link:c}),(0,b.jsx)(af._,{label:"Screenshot mode",pressed:l,onClick:()=>m(!l),children:l?(0,b.jsx)(ab,{size:18}):(0,b.jsx)(aa,{size:18})}),(0,b.jsx)(am,{}),(0,b.jsxs)(X.default,{href:"/alerts","aria-label":f?`Alerts, ${f} firing`:"Alerts",className:"relative inline-grid size-[34px] place-items-center rounded-md text-ink-soft hover:bg-hover hover:text-ink",children:[(0,b.jsx)(v.f,{size:18}),f>0&&(0,b.jsx)("span",{"aria-hidden":!0,className:"absolute right-0.5 top-[3px] rounded-[9px] bg-err px-1 font-mono text-[10px] font-medium leading-[15px] text-white",children:f})]}),(0,b.jsx)(az,{email:a.email,role:a.role,hasPassword:a.hasPassword})]})]})}let aB={nav:[],palette:[]};a.s(["Shell",0,function({user:a,collector:g,alerts:h,book:i,shot:j,ext:k=aB,sections:l,children:m}){let[n,o]=(0,c.useState)(!1),[p,q]=(0,c.useState)(!1),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(null),v=(0,c.useRef)(null),w=(0,c.useRef)(null),x=(0,c.useRef)(!1);function y(a){u(a),s(!0)}return(0,c.useEffect)(()=>{n?(x.current=!0,v.current?.focus()):x.current&&(x.current=!1,w.current?.focus())},[n]),(0,c.useEffect)(()=>{if(n)return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a);function a(a){"Escape"===a.key&&o(!1)}},[n]),(0,b.jsx)(d.AliasProvider,{book:i,shot:j,children:(0,b.jsxs)(e.SourcesProvider,{children:[(0,b.jsxs)("div",{className:(0,f.f)("grid min-h-screen grid-cols-1",!p&&"min-[1001px]:grid-cols-[248px_minmax(0,1fr)]"),children:[(!p||n)&&(0,b.jsx)(_,{role:a.role,ext:k,sections:l,collector:g,alerts:h,mobileOpen:n,onNavigate:()=>o(!1),navRef:v}),n&&(0,b.jsx)("button",{type:"button","aria-label":"Close navigation",className:"fixed inset-0 z-40 bg-black/45 min-[1001px]:hidden",onClick:()=>o(!1)}),(0,b.jsxs)("main",{className:"min-w-0",children:[g.demo&&(0,b.jsx)(U,{}),(0,b.jsx)(aA,{user:a,office:k.office,alerts:h,onToggleNav:function(){window.matchMedia("(max-width: 1000px)").matches?o(a=>!a):q(a=>!a)},onOpenPalette:y,navButtonRef:w}),(0,b.jsx)("div",{className:"flex max-w-[1480px] flex-col gap-4 px-6 pb-10 pt-5 max-[720px]:px-3.5",children:m})]})]}),(0,b.jsx)(S,{role:a.role,ext:k,sections:l,open:r,opener:t,onOpen:y,onClose:()=>s(!1)})]})})}],480761)},299233,a=>{var b=a.i(147474);a.s(["TimeZoneSync",0,function({zone:a}){return(0,b.k)(a),null}])}]})();
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_0330uf9pdfco9._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[[414280,a=>{var b=a.i(907997),c=a.i(863858);a.s(["f",0,function({href:a,children:d,className:e,...f}){return(0,c.f)()?(0,b.jsx)("a",{href:a,className:e,...f,children:d}):(0,b.jsx)("span",{className:e,children:d})}])},678831,a=>{var b=a.i(118558),c=a.i(371289);function d(a,b){if((0,c.r)())for(let c of new Set(a))try{b(c)}catch(a){console.warn(`cache: couldn't expire ${c}: ${a instanceof Error?a.message.slice(0,120):"unknown"}`)}}a.s(["D",0,function(a){d(a,a=>(0,b.revalidateTag)(a,{expire:0}))},"J",0,function(a){d(a,a=>(0,b.updateTag)(a))}])},50908,a=>{var b=a.i(93321),c=a.i(548734),d=a.i(837137),e=a.i(20060);async function f(){let[a]=await (0,c.f)().select({value:d.settings.value}).from(d.settings).where((0,b.u)(d.settings.key,e.o)).limit(1);return a?(0,e.m)(a.value):null}async function g(a,b,h,i=process.env){if((0,e.s)(i).off)return;let j=b-Date.now();if(j<1e3)throw Error("skipped, time budget used");let k=await (0,e.i)({timeoutMs:Math.min(e.Y,j)}),l=await f();k.indexError&&h.push(`node: ${k.indexError}`),k.cyclesError&&h.push(`node: ${k.cyclesError}`);let m=(0,e.T)(l,k,a);await (0,c.f)().insert(d.settings).values({key:e.o,value:m}).onConflictDoUpdate({target:d.settings.key,set:{value:m,updatedAt:a}})}a.s(["i",0,f,"q",0,g])},863858,a=>{var b=a.i(371289);a.s(["f",0,function(a=process.env){return!(0,b.W)(a)}])}],461750,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[root-of-the-server]__07k_84t5-d55n._.js","server/chunks/ssr/src_db_pglite_ts_0r1r9wqxilnam._.js","server/chunks/ssr/node_modules_0vppy-p56c35f._.js","server/chunks/ssr/node_modules_@electric-sql_pglite_dist_0j1fzsq3ed7ph._.js"].map(b=>a.l(b))).then(()=>b(614755)))},73710,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_demo_cookie_ts_0a12-0n1novgh._.js"].map(b=>a.l(b))).then(()=>b(716983)))},871289,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[root-of-the-server]__0skfdezx5rxie._.js","server/chunks/ssr/node_modules_0vppy-p56c35f._.js","server/chunks/ssr/node_modules_@electric-sql_pglite_dist_0j1fzsq3ed7ph._.js"].map(b=>a.l(b))).then(()=>b(204048)))},734864,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_demo_0sbw5n9n4mpzx._.js"].map(b=>a.l(b))).then(()=>b(579739)))},522169,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_demo_seed_members_ts_0pz2fa9295pvm._.js"].map(b=>a.l(b))).then(()=>b(615089)))},372153,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_demo_session_ts_0rwvb3aun41zx._.js","server/chunks/ssr/src_lib_demo_0a5wqvhuj5hjh._.js"].map(b=>a.l(b))).then(()=>b(765161)))},414785,a=>{a.v(a=>Promise.resolve().then(()=>a(534908)))},801116,a=>{a.v(a=>Promise.resolve().then(()=>a(624065)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=src_04o0-kzfmcnim._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[388474,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(405050);let g=(0,f.createServerReference)("
|
|
1
|
+
(()=>{"use strict";module.exports=[388474,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(405050);let g=(0,f.createServerReference)("4095405b524f5169d2c3cfc351230b28d49d2029ff",f.callServer,void 0,f.findSourceMapURL,"recheck");a.s(["RecheckButton",0,function({domainId:a,name:f}){let[h,i]=(0,c.useTransition)(),j=(0,c.useRef)(!1);return(0,b.jsx)(e.K,{size:"sm",onClick:()=>{if(j.current)return;j.current=!0;let b=d.c.loading(`Checking ${f}. This takes a few seconds.`);i(async()=>{try{let c=await g(a);c.ok?d.c.success(c.message??"",{id:b}):d.c.error(c.error,{id:b})}catch{d.c.error("Watchbell didn't answer. Check that it's still running, then try again.",{id:b})}finally{j.current=!1}})},disabled:h,"aria-label":`Re-check ${f}`,children:h?"Checking…":"Re-check"})}],388474)},54901,45830,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(771378),e=a.i(611619),f=a.i(619089);function g(a,b=a=>a){return a.ok?{ok:!0,message:b(a.message??"Done.")}:{ok:!1,message:b(a.error)}}function h(){let a=(0,d.useMask)();return b=>g(b,b=>a("text",b))}a.s(["f",0,g],45830),a.s(["p",0,function({label:a,title:c,body:d,cta:g,danger:i=!1,run:j}){let k=h();return(0,b.jsx)(e.f,{trigger:(0,b.jsx)(f.K,{variant:i?"danger":"secondary",children:a}),title:c,body:d,cta:g,danger:i,onConfirm:async()=>k(await j())})},"W",0,function(){let[a,d]=(0,c.useState)(null),f=h(),g=a?(0,b.jsx)(e.f,{open:!0,onOpenChange:a=>{a||d(null)},title:a.title,body:a.body,cta:a.cta,danger:a.danger,onConfirm:async()=>f(await a.run())}):null;return{open:d,dialog:g}}],54901)}]})();
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_06tjy8wljego8._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[813627,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(894198),e=a.i(900037),f=a.i(651467);let g=0,h=0;a.s(["default",0,function({error:a,retry:i}){return(0,c.useEffect)(()=>{let a=Date.now();a-h>12e4&&(g=0);let b=setInterval(()=>(function(a,b){if("visible"!==document.visibilityState||!1===navigator.onLine)return;let c=Date.now();c-Math.max(a,h)<(0,f.$)(g)||(g+=1,h=c,b())})(a,i),1e3);return()=>clearInterval(b)},[i]),(0,b.jsx)(d.f,{digest:a.digest,retry:i,note:"Retrying…",notice:(0,e.f)(a.digest)??void 0})}])},894198,a=>{var b=a.i(187924),c=a.i(890206),d=a.i(
|
|
1
|
+
(()=>{"use strict";module.exports=[813627,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(894198),e=a.i(900037),f=a.i(651467);let g=0,h=0;a.s(["default",0,function({error:a,retry:i}){return(0,c.useEffect)(()=>{let a=Date.now();a-h>12e4&&(g=0);let b=setInterval(()=>(function(a,b){if("visible"!==document.visibilityState||!1===navigator.onLine)return;let c=Date.now();c-Math.max(a,h)<(0,f.$)(g)||(g+=1,h=c,b())})(a,i),1e3);return()=>clearInterval(b)},[i]),(0,b.jsx)(d.f,{digest:a.digest,retry:i,note:"Retrying…",notice:(0,e.f)(a.digest)??void 0})}])},894198,a=>{var b=a.i(187924),c=a.i(890206),d=a.i(830308),e=a.i(619089);a.s(["f",0,function({digest:a,retry:f,withSignOut:g=!1,note:h,notice:i}){return(0,b.jsx)(e.N,{children:(0,b.jsxs)(e.k,{icon:c.f,title:i?"Try again soon":"This page didn't load",action:(0,b.jsxs)("div",{className:"flex flex-wrap justify-center gap-2",children:[(0,b.jsx)(e.K,{variant:"primary",onClick:()=>f(),children:"Try again"}),g&&(0,b.jsx)("form",{action:d.f,children:(0,b.jsx)(e.K,{type:"submit",children:"Sign out"})})]}),children:[i??"Watchbell couldn't read its database, or a setting is missing. It keeps retrying on its own; the server log has the details (reference below).",h&&(0,b.jsx)("p",{className:"mt-2 text-xs text-ink-soft",role:"status",children:h}),a&&!i&&(0,b.jsxs)("p",{className:"mt-2 font-mono text-xs text-ink-faint",children:["Reference ",a]})]})})}])},900037,a=>{let b=new Map([["watchbell-demo-busy","The demo is busy right now. Try again in a minute."],["watchbell-demo-too-many","Too many new demo sessions from your network. Try again in a few minutes."]]);new Map([...b].map(([a,b])=>[b,a])),a.s(["f",0,function(a){return"string"==typeof a?b.get(a)??null:null}])}]})();
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_084tdkx3c_yqi._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[270044,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(771378),f=a.i(619089),g=a.i(405050);let h=(0,g.createServerReference)("
|
|
1
|
+
(()=>{"use strict";module.exports=[270044,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(771378),f=a.i(619089),g=a.i(405050);let h=(0,g.createServerReference)("404196e9a61c480267caf76d5e856473c07fd567ba",g.callServer,void 0,g.findSourceMapURL,"scanDependencies");a.s(["DepsScanButton",0,function({appId:a,appName:g}){let[i,j]=(0,c.useTransition)(),k=(0,c.useRef)(!1),l=(0,e.useMask)();return(0,b.jsx)(f.K,{size:"sm",onClick:()=>{if(k.current)return;k.current=!0;let b=d.c.loading(`Scanning the dependencies of ${l("app",g)}. This can take up to half a minute.`);j(async()=>{try{let c=await h(a);c.ok?c.data?.vulns?d.c.warning(c.message??"",{id:b}):d.c.success(c.message??"",{id:b}):d.c.error(c.error,{id:b})}catch{d.c.error("Watchbell didn't answer. Check that it's still running, then try again.",{id:b})}finally{k.current=!1}})},disabled:i,children:i?"Scanning…":"Scan now"})}],270044)},585709,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(486747),e=a.i(462007),f=a.i(427110);a.s(["PlainTable",0,function({head:a,rows:g}){let[h,i]=(0,c.useState)(1),j=(0,f.$)(g,h);return j.page!==h&&i(j.page),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:e.o,children:[(0,b.jsx)(e.U,{head:a}),(0,b.jsx)("tbody",{children:j.rows.map(a=>(0,b.jsx)(c.Fragment,{children:a.row},a.key))})]})}),(0,b.jsx)(d.f,{page:j.page,pages:j.pages,text:(0,f.z)(j),onPage:i})]})}])},683874,a=>{var b=a.i(187924);a.i(238246),a.i(771378);var c=a.i(368114);let d={app:["APP","bg-brand-soft text-brand"],db:["DB","bg-teal-soft text-teal"],br:["BR","bg-teal-soft text-teal"],fs:["FS","bg-teal-soft text-teal"],mon:["MON","bg-amber-soft text-amber"],dpl:["DPL","bg-gray-soft text-ink-soft"],dom:["DOM","bg-gray-soft text-ink-soft"],dns:["DNS","bg-gray-soft text-ink-soft"],usr:["USR","bg-gray-soft text-ink-soft"]};a.s(["f",0,function({kind:a}){let[e,f]=d[a];return(0,b.jsx)("span",{className:(0,c.f)("rounded px-[5px] py-px font-mono text-[10.5px] font-medium tracking-[0.02em]",f),children:e})}])}]})();
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_0abts6wp5ucc0._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
(()=>{"use strict";module.exports=[263251,a=>{a.s(["f",0,function(a){if(Array.isArray(a))return a;let b=a?.rows;return Array.isArray(b)?b:[]}])},655206,a=>{a.s(["f",0,{checks:7,rollupsHourly:90,deployments:30,events:90,alerts:90,collectorRuns:14,storedLogs:7,recommendationDismissals:90}])},460565,a=>{a.s(["B",0,3e5,"X",0,function(a){return"number"==typeof a&&Number.isFinite(a)&&a>0?6e4*a:3e5}])},656298,a=>{function b(a){return"RESOURCE_EXHAUSTED"===a.reason?{state:"err",label:"Daily quota used up"}:"SERVICE_DISABLED"===a.reason?{state:"err",label:"Firestore API is off in this project"}:"scope"===a.kind||"PERMISSION_DENIED"===a.reason||"scope"===a.reason?{state:"err",label:"No access: needs datastore.viewer"}:{state:"unknown",label:"Unknown"}}a.s(["T",0,{reads:5e4,writes:2e4,deletes:2e4},"_",0,"The stored data size (1 GiB free) isn't read on any plan: the row's Open usage page shows it in the Firebase console.","f",0,"Storage (1 GiB): not read; the Firebase console's usage page shows it.","z",0,b,"g",0,function(a){return a.ok?a.data.noDatabase?{state:"off",label:"No Firestore database"}:{state:"ok",label:`Reachable \xb7 ${a.data.latencyMs} ms`}:b(a)},"a",0,function(a){let b=new Intl.DateTimeFormat("en-US",{timeZone:"America/Los_Angeles",hour:"numeric",minute:"numeric",second:"numeric",hourCycle:"h23"}).formatToParts(a),c=a=>Number(b.find(b=>b.type===a)?.value??0),d=(3600*c("hour")+60*c("minute")+c("second"))*1e3+a.getUTCMilliseconds();return new Date(a.getTime()-d)}])},688275,a=>{let b={cuHours:100,storageBytes:0x40000000,transferBytes:0x140000000,branches:10,scaleToZeroMin:5};function c(a){return a.disabled?{state:"err",label:"Suspended"}:"init"===a.state||a.pendingState&&a.pendingState!==a.state?{state:"build",label:"Starting"}:"active"===a.state?{state:"ok",label:"Active"}:"idle"===a.state?{state:"idle",label:"Idle"}:{state:"unknown",label:"Unknown"}}a.s(["a",0,b,"c",0,(a,b)=>a===b?`${a} CU`:`${a}–${b} CU`,"g",0,a=>Math.round(a/360)/10,"T",0,c,"p",0,function(a){if((a.computeSeconds??0)>=3600*b.cuHours)return{state:"err",label:"CU-hours used up"};if(!a.endpoints.length)return{state:"unknown",label:"No compute"};let d=a.endpoints.map(c);return d.some(a=>"err"===a.state)?{state:"err",label:"Compute suspended"}:d.some(a=>"ok"===a.state)?{state:"ok",label:"Active"}:d.some(a=>"build"===a.state)?{state:"build",label:"Starting"}:d.every(a=>"idle"===a.state)?{state:"idle",label:"Idle"}:{state:"unknown",label:"Unknown"}}])},84877,a=>{function b(a){let[b,...c]=a.trim().split("-"),d=b.split(".").map(a=>Number.parseInt(a,10)||0);return{nums:[d[0]??0,d[1]??0,d[2]??0],pre:c.length?c.join("-").split("."):[]}}a.s(["f",0,function(a,c){let d=b(a),e=b(c);for(let a=0;a<3;a++)if(d.nums[a]!==e.nums[a])return d.nums[a]-e.nums[a];return function(a,b){if(!a.length||!b.length)return a.length?-1:+!!b.length;for(let c=0;c<Math.max(a.length,b.length);c++){if(void 0===a[c])return -1;if(void 0===b[c])return 1;let d=/^\d+$/.test(a[c])?Number(a[c]):null,e=/^\d+$/.test(b[c])?Number(b[c]):null;if(null!==d&&null!==e){if(d!==e)return d-e}else if(null!==d||null!==e)return null!==d?-1:1;else if(a[c]!==b[c])return a[c]<b[c]?-1:1}return 0}(d.pre,e.pre)}])}]})();
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=src_0dceh6hsdybq8._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[[790053,a=>{var b=a.i(907997),c=a.i(905246),d=a.i(410328),e=a.i(676882),f=a.i(109307),g=a.i(534908)
|
|
1
|
+
module.exports=[[790053,a=>{var b=a.i(907997),c=a.i(905246),d=a.i(410328),e=a.i(676882),f=a.i(109307),g=a.i(534908),h=a.i(569057);a.i(270432);var i=a.i(288950),j=a.i(414280),k=a.i(803681),l=a.i(511233),m=a.i(843162);function n({notice:a}){return a?"update"===a.kind?(0,b.jsxs)(k.M,{tone:"info",title:`Watchbell ${a.latest} is available (this is ${a.running})`,children:["Update with ",(0,b.jsx)("code",{className:"font-mono text-[12.5px]",children:"watchbell update"})," in a terminal on the machine that runs it, then start it again."," ",(0,b.jsx)(j.f,{href:(0,l.G)(a.latest),target:"_blank",rel:"noopener",children:"What's new"})]}):(0,b.jsx)(k.M,{tone:"info",title:`Updated to Watchbell ${a.version}`,action:(0,b.jsx)(m.WhatsNewDismiss,{}),children:(0,b.jsxs)(j.f,{href:(0,l.G)(a.version),target:"_blank",rel:"noopener",children:["See what's new in ",a.version]})}):null}var o=a.i(455317),p=a.i(532620),q=a.i(396667),r=a.i(371289),s=a.i(245710),t=a.i(556987);async function u({children:j}){(0,r.W)()&&await (await a.A(734864)).openDemoDb();let k=await (0,f.I)(),l=new Date,[m,v,w,x,y,z,A]=await Promise.all([(0,h.D)().catch(()=>null),(0,h.o)().catch(()=>void 0),(0,o.X)().catch(()=>0),(0,p.e)().catch(()=>t.a),(0,c.cookies)(),(0,q.Q)().then(a=>a.on).catch(()=>void 0),"owner"===k.role?(0,i.C)().catch(()=>null):null]),B=y.get(t.k)?.value==="1",C="owner"===k.role?{nav:g.extensions.nav,palette:g.extensions.palette,office:g.extensions.office}:{nav:[],palette:[]},D="selfhost"===(0,r.c)()?{email:k.email,role:k.role,hasPassword:!0}:{email:k.email,role:k.role};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.TimeZoneSync,{zone:(0,s.C)()}),(0,b.jsxs)(d.Shell,{user:D,collector:{lastRunAt:m?.toISOString()??null,now:l.getTime(),demo:(0,r.W)(),staleMs:v},alerts:w,book:x,shot:B,ext:C,sections:z,children:[(0,b.jsx)(n,{notice:A}),j]})]})}a.s(["default",0,u],790053)},356198,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call WhatsNewDismiss() from the server but WhatsNewDismiss is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/whats-new-dismiss.tsx","WhatsNewDismiss");a.s(["WhatsNewDismiss",0,b])},843162,a=>{var b=a.i(356198);a.n(b)},855160,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call Shell() from the server but Shell is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/shell/shell.tsx","Shell");a.s(["Shell",0,b])},410328,a=>{var b=a.i(855160);a.n(b)},638588,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call TimeZoneSync() from the server but TimeZoneSync is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/time-zone-sync.tsx","TimeZoneSync");a.s(["TimeZoneSync",0,b])},676882,a=>{var b=a.i(638588);a.n(b)}],7987,function(a){a.n(a.i(790053))}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_0etvjdinp5urq._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
(()=>{"use strict";module.exports=[812014,a=>{var b=a.i(137936),c=a.i(118558),d=a.i(600079),e=a.i(109307),f=a.i(221084),g=a.i(930270),h=a.i(683439),i=a.i(312573),j=a.i(323878);async function k(a){return(0,d.F)("operator",async b=>{if(!(0,h.f)(a))return{ok:!1,error:"Something in that request wasn't valid."};let d=await (0,j.C)(i.t.depsScan,b.id);if(!d.allowed)return{ok:!1,error:`Too many dependency scans. Try again in ${(0,i.H)(d.retryAfter)}.`};let e=await (0,g.h)(a);if(!e.ok)return{ok:!1,error:e.error};try{await (0,f.f)({kind:"ok",message:`Dependency scan \xb7 ${e.app} \xb7 ${e.vulns} open`,resourceId:a,actorUserId:b.userId})}catch{console.warn("audit event failed")}return(0,c.refresh)(),{ok:!0,message:e.message,data:{vulns:e.vulns}}},{requireActionMember:e.g})}(0,a.i(713095).ensureServerEntryExports)([k]),(0,b.registerServerReference)(k,"404196e9a61c480267caf76d5e856473c07fd567ba",null),a.s(["f",0,k])},128120,a=>{var b=a.i(137936),c=a.i(600079),d=a.i(109307),e=a.i(292321),f=a.i(683439),g=a.i(312573),h=a.i(323878),i=a.i(679594);async function j(a){return(0,c.F)("operator",async b=>{if(null!==a&&!(0,f.f)(a))return{ok:!1,error:"Something in that request wasn't valid."};let c=await (0,h.C)(g.t.logsLive,b.id);if(!c.allowed)return{ok:!1,error:`Too many reads. Try again in ${(0,g.H)(c.retryAfter)}.`};let d=await (0,e.$)(new Date,a);return{ok:!0,data:{lines:d.lines.map(i.l),readAt:d.readAt.toISOString(),problems:d.problems}}},{requireActionMember:d.g})}(0,a.i(713095).ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"4095e5325e7deedd7fb58c82c5ed5dad6ed74e704c",null),a.s(["f",0,j])},27522,a=>{let b=new Set(["in_progress","queued","waiting","pending","requested"]);a.s(["N",0,function(a,c){if(!a)return{state:"unknown",label:"Not read yet"};if("none"in a)return{state:"off",label:`No workflow runs${c?` on ${c}`:""}`};if(b.has(a.status))return{state:"build",label:"in_progress"===a.status?"Running":"Queued"};switch(a.conclusion){case"success":return{state:"ok",label:"Passing"};case"failure":case"timed_out":case"startup_failure":return{state:"err",label:"Failing"};case"action_required":return{state:"warn",label:"Waiting for approval"};case"cancelled":return{state:"off",label:"Cancelled"};case"skipped":case"neutral":case"stale":return{state:"off",label:"skipped"===a.conclusion?"Skipped":"Neutral"};default:return{state:"unknown",label:a.conclusion??a.status}}},"z",0,a=>"vercel"===a?"from the Vercel project's Git link":"chosen by the owner","_",0,a=>"name"===a?"same name as the app":"its package.json name matches the app"])},679594,a=>{var b=a.i(245710);a.s(["l",0,function(a){return{id:a.id,time:(0,b.T)(a.at),level:a.level,app:a.app,text:[a.method,a.path,a.status,a.message].filter(a=>null!==a&&""!==a).join(" ")}},"M",0,function(a,b){return"string"==typeof a&&a?`https://vercel.com/${encodeURIComponent(a)}/${encodeURIComponent(b)}/logs`:null}])}]})();
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=src_0ovx2ogvlz2eh._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[630718,a=>{var b=a.i(187924),c=a.i(218024),d=a.i(572131),e=a.i(823292),f=a.i(405050);let g=(0,f.createServerReference)("
|
|
1
|
+
(()=>{"use strict";module.exports=[630718,a=>{var b=a.i(187924),c=a.i(218024),d=a.i(572131),e=a.i(823292),f=a.i(405050);let g=(0,f.createServerReference)("60c081fd48535aadbce319b4bc103fd25dd7d4bd4e",f.callServer,void 0,f.findSourceMapURL,"approveCreateAction"),h=(0,f.createServerReference)("40031eab5e7ca506c841569c0a770a2885ae640e37",f.callServer,void 0,f.findSourceMapURL,"rejectCreateAction");var i=a.i(771378),j=a.i(611619),k=a.i(619089),l=a.i(507504),m=a.i(814574),n=a.i(486583);let o=new Set(["requested","approved","running"]),p=a=>o.has(a.status);var q=a.i(147474),r=a.i(368114);let s={requested:"Waiting for approval",approved:"Approved",running:"Creating…",done:"Created",failed:"Failed",rejected:"Rejected",expired:"Expired"};function t({items:a,owner:c,focus:d,quiet:e}){let f=(0,i.useMask)();return(0,b.jsx)("ul",{className:"divide-y divide-line",children:a.map(a=>{var g;let h;return(0,b.jsxs)("li",{id:`create-${a.id}`,className:(0,r.f)("flex flex-wrap items-center gap-x-3 gap-y-1.5 px-[18px] py-2.5",e&&"py-2 text-[13px]",d===a.id&&"bg-brand-soft"),children:[(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,b.jsx)("b",{className:(0,r.f)("font-medium",e&&"text-ink-soft"),children:n.S[a.type]}),(0,b.jsx)(k.E,{children:n.E[a.type]}),(0,b.jsx)("span",{className:(0,r.f)("text-[12.5px]","failed"===a.status?"text-err":"text-ink-soft"),children:s[a.status]})]}),(0,b.jsx)("p",{className:"font-mono text-[12.5px] text-ink-soft [overflow-wrap:anywhere]",children:f("text",a.summary)}),"requested"===a.status&&(0,b.jsxs)("p",{className:"text-[12px] text-ink-faint",children:[a.mine?"You asked":"Another member asked"," · expires ",(g=new Date(a.expiresAt),h=(0,q.e)(g),`${h.day} ${h.month} ${h.year}, ${(0,q.U)(g)}`)]}),a.error&&"requested"!==a.status&&(0,b.jsx)("p",{className:"text-[12.5px] text-err",children:f("text",a.error)}),a.result?.id&&"done"===a.status&&(0,b.jsxs)("p",{className:"text-[12px] text-ink-faint",children:["Created: ",(0,b.jsx)("span",{className:"font-mono",children:f("text",a.result.id)}),"firebase-pending"===a.result.note?" · Firebase still needs adding in the Firebase console":""]})]}),c&&"requested"===a.status&&(0,b.jsxs)("div",{className:"flex gap-1.5",children:[(0,b.jsx)(u,{item:a}),(0,b.jsx)(v,{item:a})]})]},a.id)})})}function u({item:a}){return(0,b.jsx)(j.f,{trigger:(0,b.jsx)(k.K,{size:"sm",children:"Reject"}),title:`Reject this ${n.S[a.type]}?`,body:"Nothing is created. The person who asked can ask again.",cta:"Reject",onConfirm:async()=>{let b=await h(a.id);return b.ok?{ok:!0,message:b.message??"Rejected."}:{ok:!1,message:b.error}}})}function v({item:a}){let[c,e]=(0,d.useState)(!1);return(0,l.useHoldRefresh)(c),(0,b.jsxs)(m.N,{open:c,onOpenChange:e,children:[(0,b.jsx)(m.a,{render:(0,b.jsx)(k.K,{size:"sm",variant:"primary"}),children:"Approve…"}),(0,b.jsx)(m.d,{className:"gap-0 p-0 sm:max-w-[560px]",showCloseButton:!1,children:c&&(0,b.jsx)(w,{item:a,onDone:()=>e(!1)})})]})}function w({item:a,onDone:c}){let f=(0,i.useMask)(),[h,j]=(0,d.useState)(""),[l,o]=(0,d.useState)(null),[p,q]=(0,d.useState)(null),[r,s]=(0,d.useState)(null),[t,u]=(0,d.useTransition)();return p?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"px-[18px] pb-2 pt-4",children:[(0,b.jsx)(m.F,{className:"text-base",children:"Copy the database password now"}),(0,b.jsxs)(m.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:[r," It is shown only here, only once."]})]}),(0,b.jsxs)("div",{className:"px-[18px] pt-1.5",children:[(0,b.jsx)(x,{value:p}),(0,b.jsx)("div",{className:"mb-3",children:(0,b.jsx)(k.M,{tone:"warning",title:"The console doesn't keep it",children:"Save it in your password manager. If it's lost, reset it in Supabase → Project settings → Database."})})]}),(0,b.jsx)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:(0,b.jsx)(k.K,{variant:"primary",onClick:()=>{q(null),c()},children:"I've saved it"})})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"px-[18px] pb-2 pt-4",children:[(0,b.jsx)(m.F,{className:"text-base",children:f("text",`Create ${n.S[a.type]} ${a.confirmName}?`)}),(0,b.jsxs)(m.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:["The console checks the free tier at ",n.E[a.type]," again now, then makes one create call. ",(0,n.d)(a.type)]})]}),(0,b.jsxs)("div",{className:"px-[18px] pt-2",children:[(0,b.jsx)("p",{className:"mb-3 rounded-md border border-line bg-sunken px-3 py-2 font-mono text-[12.5px] [overflow-wrap:anywhere]",children:f("text",a.summary)}),(0,b.jsx)(k.O,{id:`ap-${a.id}`,label:(0,b.jsxs)(b.Fragment,{children:["Type ",(0,b.jsx)("span",{className:"font-mono",children:f("text",a.confirmName)})," to approve"]}),error:l??void 0,children:(0,b.jsx)("input",{id:`ap-${a.id}`,className:k.S,value:h,autoComplete:"off",spellCheck:!1,onChange:a=>j(a.target.value)})})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(k.K,{onClick:c,disabled:t,children:"Cancel"}),(0,b.jsx)(k.K,{variant:"primary",onClick:function(){u(async()=>{try{let b=await g(a.id,h);if(!b.ok)return o(f("text",b.error));o(null),b.data?.secret?(q(b.data.secret),s(f("text",b.message??"Created."))):(e.c.success(f("text",b.message??"Created.")),c())}catch{o("Something went wrong. Check the provider's dashboard before trying again.")}})},disabled:t||h.trim()!==a.confirmName,children:t?"Checking and creating…":"Approve and create"})]})]})}function x({value:a}){let[f,g]=(0,d.useState)(!1),{shot:h}=(0,i.usePrivacy)(),[j,l]=(0,d.useState)(!1);return(0,b.jsxs)("div",{className:"mb-3 flex items-center gap-2 rounded-md border border-line-strong bg-sunken px-3 py-2",children:[h&&!j?(0,b.jsx)("button",{type:"button",className:"min-w-0 flex-1 text-left text-[13px] text-ink-soft",onClick:()=>l(!0),children:"Hidden in screenshot mode. Click to show it."}):(0,b.jsx)("code",{className:"min-w-0 flex-1 select-all font-mono text-[13px] [overflow-wrap:anywhere]",children:a}),(0,b.jsxs)(k.K,{size:"sm",onClick:()=>{navigator.clipboard.writeText(a).then(()=>g(!0),()=>e.c.error("Copy didn't work; select the text and copy it."))},children:[(0,b.jsx)(c.f,{size:14,"aria-hidden":!0,className:"mr-1 inline"}),f?"Copied":"Copy"]})]})}a.s(["CreateRequestList",0,function({items:a,owner:c,focus:d,title:e="Waiting for approval"}){let{pending:f,finished:g}={pending:a.filter(p),finished:a.filter(a=>!p(a))};if(!f.length&&!g.length)return null;let h=f.filter(a=>"requested"===a.status).length;return(0,b.jsxs)(b.Fragment,{children:[f.length>0&&(0,b.jsx)(k.N,{title:e,meta:h?`${h} waiting`:void 0,flush:!0,children:(0,b.jsx)(t,{items:f,owner:c,focus:d})}),g.length>0&&(0,b.jsx)(k.N,{title:"Recent requests",flush:!0,children:(0,b.jsx)(t,{items:g,owner:!1,focus:d,quiet:!0})})]})}],630718)},486583,a=>{let b={dns_record:"Cloudflare",neon_branch:"Neon",supabase_project:"Supabase",firebase_project:"Firebase"};a.s(["E",0,b,"S",0,{dns_record:"DNS record",neon_branch:"Neon branch",supabase_project:"Supabase project",firebase_project:"Firebase project"},"d",0,a=>`The console can't remove this later; remove it in ${b[a]}'s dashboard.`])}]})();
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_0ph020gy78gi9._.js.map
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[534908,a=>{let b;var c,d,e=a.i(462820),f=a.i(411350),g=a.i(61017),h=a.i(330863),i=a.i(779704);async function j(a){await (0,i.E)(a,{force:!1})}var k=a.i(907997),l=a.i(109307),m=a.i(920274);let n=(0,a.i(377269).f)("outline","notes","Notes",[["path",{d:"M5 5a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2l0 -14",key:"svg-0"}],["path",{d:"M9 7l6 0",key:"svg-1"}],["path",{d:"M9 11l6 0",key:"svg-2"}],["path",{d:"M9 15l4 0",key:"svg-3"}]]);var o=a.i(701702),p=a.i(245710),q=a.i(668495),r=a.i(191397),s=a.i(791450);let t={crit:"err",warn:"warn",info:"brand"};function u({note:a,now:b,showApp:c}){let d=["AI note",`from ${a.from}`,a.model,(0,p.$)(a.at,b),c&&a.appName?a.appName:null,"written by an agent, can be wrong"].filter(Boolean).join(" · ");return(0,k.jsxs)(r.f,{icon:(0,k.jsx)(n,{size:18,"aria-hidden":!0}),tone:t[a.severity]??"brand",meta:d,action:(0,k.jsx)(s.DismissNoteButton,{id:a.id}),children:[(0,k.jsx)("b",{className:"font-medium",children:(0,k.jsx)(o.MaskedText,{text:a.title})}),(0,k.jsx)(q.f,{source:a.body})]})}async function v({appId:a}){let{ok:b}=await (0,l.B)("owner");if(!b)return null;let c=new Date,d=await (0,m.N)(a,c).catch(()=>[]);return d.length?(0,k.jsx)("div",{className:"mb-3 flex flex-col gap-2.5",children:d.map(b=>(0,k.jsx)(u,{note:b,now:c,showApp:void 0===a},b.id))}):null}var w=a.i(694874),x=a.i(395936),y=a.i(86657),z=a.i(185538);async function A({count:a}){let{ok:b}=await (0,l.B)("owner");if(!b)return null;if(!await y.f.provider().catch(()=>null))return(await (0,m.N)(void 0,new Date).catch(()=>[])).length?null:(0,k.jsxs)("p",{className:"mb-3 flex items-center gap-1.5 text-[13px] text-ink-soft",children:[(0,k.jsx)(n,{size:16,"aria-hidden":!0,className:"text-ink-faint"}),(0,k.jsx)(x.default,{href:"/ai/connect",children:e.v.recConnect})]});if(0===a)return null;let c=await (0,i.h)().catch(()=>null);if(!c)return(0,k.jsxs)("p",{className:"mb-3 flex items-center gap-1.5 text-[13px] text-ink-soft",children:[(0,k.jsx)(w.f,{size:16,"aria-hidden":!0,className:"text-ink-faint"}),"No AI summary yet. ",(0,k.jsx)(z.RegenerateButton,{label:"Summarise"})]});let d=new Date;return(0,k.jsxs)(r.f,{className:"mb-3",icon:(0,k.jsx)(w.f,{size:18,"aria-hidden":!0}),meta:(0,k.jsxs)(k.Fragment,{children:[`AI \xb7 ${c.model} \xb7 ${(0,p.$)(new Date(c.at),d)} \xb7 from ${c.count} items, names aliased \xb7 can be wrong, check the items below \xb7 `,(0,k.jsx)(z.RegenerateButton,{label:"Regenerate"})]}),children:[(0,k.jsx)("b",{className:"font-medium",children:"Summary"}),(0,k.jsx)(q.f,{source:c.text})]})}var B=a.i(918962),C=a.i(962230),D=a.i(976517);async function E({appId:a}){let{ok:b}=await (0,l.B)("owner");if(!b)return null;let c=new Date,[d,e,f]=await Promise.all([y.f.provider().catch(()=>null),(0,C.N)("app",a,c).catch(()=>null),(0,B.c)(c).catch(()=>null)]),g=e?{...e,createdAt:e.createdAt.toISOString(),answeredAt:e.answeredAt?.toISOString()??null}:null;return(0,k.jsx)(D.WhyAi,{appId:a,provider:d?{model:d.model}:null,question:g,nowMs:c.getTime(),agConnected:f?.agConnected??!1})}var F=a.i(243446),G=a.i(803681),H=a.i(581156),I=a.i(411642),J=a.i(65932),K=a.i(94473),L=a.i(188282);let M={recheck:"Runs the monitor's check once, like Check now on the monitor.",neon_wake:"Wakes a suspended Neon compute, like Wake on the database page.",supabase_keepalive:"Sends one keep-alive query to a Supabase project close to auto-pause, like Keep active.",supabase_restore:"Restores a paused Supabase project.",vercel_redeploy:"Redeploys the current production deployment.",vercel_rollback:"Rolls production back to the previous ready deployment.",github_bump_pr:"Opens a pull request on a new branch that raises vulnerable packages to their fixed versions (needs the GitHub PR-write token).",daily_rerun:"Calls the console's daily job again when its heartbeat is down. Always asks for approval.",domain_recheck:"Re-reads a domain's TLS certificate and expiry when its certificate looks close to expiry, like Re-check on Domains.",monitor_update_url:"Points an uptime monitor at its app's new domain when the app moved, keeping the path, like Update monitor on Uptime."};async function N(){let[a,b,c]=await Promise.all([(0,K.I)(),(0,K.K)(),(0,K.X)()]),d=[10,15,20,30,45,60,90,120].filter(a=>a>=K.l&&a<=K.n),e=K.r.map(a=>({kind:a,label:L.H[a].label,risky:"risky"===L.H[a].risk,what:M[a]}));return(0,k.jsxs)(G.N,{title:"Auto-actions",flush:!0,meta:"All off by default",children:[(0,k.jsxs)("p",{className:"px-[18px] pb-3 text-ink-soft",children:["When a firing alert brings a proposal for one of these actions, a switched-on kind runs without asking and you get a short Telegram line afterwards. Everything else waits for you on ",(0,k.jsx)(x.default,{href:"/auto-actions",children:"Auto-actions"}),". Auto-run only does what the console button does, through the same checks, and every run is in the audit log (Events)."]}),(0,k.jsx)(H.AutoRunForm,{saved:a,rows:e}),(0,k.jsxs)("div",{className:"border-t border-line px-[18px] pb-4 pt-3.5",children:[(0,k.jsx)("h3",{className:"mb-1.5 text-[14px]",children:"Auto-rollback after a bad deploy"}),(0,k.jsxs)("p",{className:"mb-2.5 text-ink-soft",children:["Off by default. When on, a new production deploy that breaks the app is rolled back to the previous one without asking. Only ",(0,k.jsx)("span",{className:"font-mono text-[12.5px]",children:"vercel_rollback"}),", only within the first N minutes after a new production deploy goes live, only when a monitor is down or the logs show an error spike, at most once per deployment (and never twice for one app within 2 hours), and every run is reported on Telegram and in Events. Failed builds never go live on Vercel, so this is for builds that succeed but break at runtime."]}),(0,k.jsx)(I.AutoRollbackForm,{saved:b,choices:d})]}),(0,k.jsxs)("div",{className:"border-t border-line px-[18px] pb-4 pt-3.5",children:[(0,k.jsx)("h3",{className:"mb-1.5 text-[14px]",children:"Automatic security fixes"}),(0,k.jsx)("p",{className:"mb-2 text-ink-soft",children:"On by default. When a dependency scan finds a critical, high or moderate advisory with a fix, Watchbell fixes it end to end (the scan and the Next.js check run every 6 hours and right after each production deploy):"}),(0,k.jsxs)("ol",{className:"mb-2.5 list-decimal pl-5 text-ink-soft [&_li]:mt-0.5",children:[(0,k.jsx)("li",{children:"opens the update PR itself (package.json only, on a new watchpost/deps-… branch), only for direct packages that stay in their major version, never twice for the same package while a PR is open;"}),(0,k.jsx)("li",{children:"waits for GitHub's checks (all green), then Vercel's preview of the PR (READY);"}),(0,k.jsx)("li",{children:'tests the preview: "/" and up to 3 monitor paths must answer 200–399 within 15 s (behind Vercel Authentication: 3 minutes without error lines in the preview\'s logs);'}),(0,k.jsx)("li",{children:"squash-merges it, only while auto-rollback is on: the production deploy then runs on Vercel and auto-rollback guards its first minutes."})]}),(0,k.jsx)("p",{className:"mb-2.5 text-ink-soft",children:'Anything failing, or not done within 45 minutes, leaves the PR open marked "needs a look". A major update, a transitive package or a severity you switched off waits for your approval on Auto-actions, as before. Every PR opened and every merge or stop is sent to Telegram and logged in Events. Needs the GitHub PR-write token on Connections.'}),(0,k.jsx)(J.AutoSecurityForm,{saved:c,rollbackOn:b.enabled})]})]})}var O=a.i(93321),P=a.i(530385),Q=a.i(548734),R=a.i(837137),S=a.i(247730),T=a.i(221084),U=a.i(396667),V=a.i(976937),W=a.i(736780),X=a.i(944571),Y=a.i(322145),Z=a.i(664892),$=a.i(751263),_=a.i(521050),aa=a.i(760417),ab=a.i(812092),ac=a.i(572134),ad=a.i(658739),ae=a.i(556987),af=a.i(142754),ag=a.i(342634),ah=a.i(381544);let ai="waiting: Vercel didn't say which deployment is live";async function aj(a){let b=Date.now();try{let c=await fetch(a,{redirect:"manual",signal:AbortSignal.timeout(Z.w),cache:"no-store",headers:{"User-Agent":"Watchbell smoke test"}}),d=401===c.status||403===c.status?(await c.text().catch(()=>"")).slice(0,8192):"";return{status:c.status,ms:Date.now()-b,authWall:(0,Z.S)(c.status,d,c.headers)}}catch{return{status:null,ms:Date.now()-b,authWall:!1}}}async function ak(b,c){let{extensions:d}=await a.A(414785);return await d.runner?.lockfileJobActive(b,c).catch(()=>!1)??!1}let al=null;async function am(a,b){let c=(0,_.Q)(b.meta?.rootDirectory),d=(0,_.H)(c,"package.json"),e=b.lockfilePath??(0,_.H)(c,"package-lock.json");if(al?.token!==a){let b=await (0,ab.z)(a);if(!b.ok)return null;al={token:a,login:b.data}}let f=al.login,[g,h]=await Promise.all([(0,ab.O)(a,b.fullName,b.number),(0,ab.P)(a,b.fullName,b.number)]);if(!g.ok||!h.ok)return null;let i=[];for(let c of h.data.slice(0,Z.y+1)){let d=null!==c.login&&c.login.toLowerCase()===f.toLowerCase()?null:await (0,ab.h)(a,b.fullName,c.sha);if(d&&!d.ok)return null;i.push({...c,files:d?d.data:null})}let[j,k]=await Promise.all([(0,ab.E)(a,b.fullName,b.baseBranch,{},d),(0,ab.E)(a,b.fullName,b.headSha,{},d)]);if(!j.ok||!k.ok)return null;let l=j.data&&k.data?(0,Z.C)(j.data.text,k.data.text,b.packages):"unexpected change: package.json is missing",m=null;if(e!==d&&g.data.some(a=>a.filename===e||a.previous===e))if((0,ab.$)(e)){let[c,d]=await Promise.all([(0,ab.l)(a,b.fullName,b.baseBranch,e),(0,ab.l)(a,b.fullName,b.headSha,e)]);if(!c.ok||!d.ok)return null;m=(0,Z.T)(c.data,d.data,e)}else m=`unexpected lockfile change ${e} (only package-lock.json can be checked)`;return{manifest:d,lockfile:e,lockfileRequired:!!b.lockfilePath,manifestProblem:l,lockfileProblem:m,headSha:b.headSha,tokenLogin:f,files:g.data,commits:i}}async function an(a,b={}){let c=await (b.vercel??ao.vercel)(a);if(!c)return null;let d=await (b.serving??ac.k)(c.token,c.teamId,c.projectId);if(!d.ok)return null;let e=d.data.currentId,f=null;if(!e){let a=d.data.latest?.readyState??null;if("ERROR"!==a&&"CANCELED"!==a)return null;let g=await (b.running??ac.N)(c.token,c.teamId,c.projectId);if(!g.ok||g.data)return null;let h=await (b.ready??ac.r)(c.token,c.teamId,c.projectId);if(!h.ok)return null;let i=[...h.data].sort((a,b)=>b.createdAt.getTime()-a.createdAt.getTime()),j=d.data.promote;j?(f=i.find(a=>a.createdAt.getTime()>j.requestedAt)??null)||(e=j.toDeploymentId):f=i[0]??null}if(!f&&e){let a=await (b.deployment??ac.S)(c.token,{id:c.teamId,slug:c.teamId,name:c.teamId},e);if(!a.ok)return null;f=a.data}return f?{source:(0,$.s)({source:f.source,branch:f.branch,sha:f.sha,branchFrom:f.branchFrom??null,gitDirty:!0===f.gitDirty})}:null}let ao={rows:async()=>await (0,Q.f)().select({id:R.dependencyPrs.id,repoId:R.dependencyPrs.repoId,appId:R.dependencyPrs.appId,proposalId:R.dependencyPrs.proposalId,number:R.dependencyPrs.number,branch:R.dependencyPrs.branch,baseBranch:R.dependencyPrs.baseBranch,headSha:R.dependencyPrs.headSha,title:R.dependencyPrs.title,packages:R.dependencyPrs.packages,auto:R.dependencyPrs.auto,stage:R.dependencyPrs.stage,smokeMode:R.dependencyPrs.smokeMode,previewReadyAt:R.dependencyPrs.previewReadyAt,openedAt:R.dependencyPrs.openedAt,fullName:R.githubRepos.fullName,appName:R.resources.name,meta:R.resources.meta,lockfilePath:R.dependencyScans.lockfilePath,appMonitored:R.resources.monitored,appGone:R.resources.goneAt,stageText:R.dependencyPrs.stageText}).from(R.dependencyPrs).innerJoin(R.githubRepos,(0,O.u)(R.githubRepos.id,R.dependencyPrs.repoId)).leftJoin(R.resources,(0,O.u)(R.resources.id,R.dependencyPrs.appId)).leftJoin(R.dependencyScans,(0,O.u)(R.dependencyScans.repoId,R.dependencyPrs.repoId)).where((0,O.y)(R.dependencyPrs.stage,[...Z.X])).orderBy((0,P.M)(R.dependencyPrs.openedAt)).limit(10),security:K.X,rollback:K.K,writeToken:async()=>{let a=await (0,W.G)();return a&&"unreadable"!==a?a.token:null},readToken:async a=>{let b=await (0,X.l)(a);return b.ok?b.token:null},vercel:async a=>{let b=await (0,Y.p)(a,"app"),c=b?.resource.meta.teamId;return b&&"string"==typeof c&&b.resource.externalId?{token:b.token,teamId:c,projectId:b.resource.externalId}:null},monitorUrls:async a=>(await (0,Q.f)().select({url:R.monitors.url}).from(R.monitors).where((0,O.b)((0,O.u)(R.monitors.resourceId,a),(0,O.u)(R.monitors.kind,"http"))).limit(10)).map(a=>a.url),pull:ab.b,checks:ab.s,runs:aa.L,previews:ac.C,probe:aj,errorLogs:async(a,b,c,d)=>{let e=await (0,ad.f)(a.token,a.teamId,a.projectId,{since:c,until:d,now:d,deploymentId:b,levels:["error","fatal"],maxRows:20,timeoutMs:8e3});return e.ok?e.lines.length:null},merge:ab.C,review:am,save:async(a,b,c,d)=>{await (0,Q.f)().update(R.dependencyPrs).set({...b,stageText:d,checkedAt:new Date}).where((0,O.u)(R.dependencyPrs.id,a)),c&&await (0,Q.f)().update(af.O).set({result:d}).where((0,O.u)(af.O.id,c)).catch(()=>void 0)},notify:a=>(0,ah.y)(a),liveSource:a=>an(a),lockfileBusy:async(a,b,c)=>await ak(a,b)||await (0,V.W)(c,b),audit:(a,b)=>(0,T.f)({kind:"ok",message:a,resourceId:b,actorUserId:null}),book:()=>(0,S.f)()};async function ap(a,b,c=ao){let d={watched:0,merged:0,stopped:0},e=()=>b-Date.now(),f=await c.rows();if(!f.length)return d;let[g,h,i]=await Promise.all([c.security().catch(()=>null),c.rollback().catch(()=>null),c.writeToken().catch(()=>null)]);if(!i)return d;let j=await c.book().catch(()=>ae.a);for(let b of f){if(15e3>e())break;if(b.auto||g?.enabled)try{let e=await aq(b,a,i,h?.enabled===!0,c);if(!e)continue;d.watched++;let f=b.appName?(0,ae.r)(j,b.appName):"app";await as(b,e,f,h?.windowMin??30,a,i,c,d)}catch(a){console.warn("deps/watch failed:",a instanceof Error?a.name:"error")}}return d}async function aq(a,b,c,d,e){let f=await e.pull(c,a.fullName,a.number);if(!f.ok)return null;let g=await e.checks(c,a.fullName,f.data.headSha),h=null;if(g.ok&&null===g.data.checkRuns&&a.appId){let b=await e.readToken(a.appId),c=b?await e.runs(b,a.fullName,f.data.headSha):null;h=c?.ok?c.data:null}g.ok||(g={ok:!0,data:{checkRuns:[{status:"queued",conclusion:null}],combined:null}});let i=(0,Z.j)({...g.data,actionRuns:h}),j={state:null,readyAt:null},k=null,l=a.appId?await e.vercel(a.appId):null;if(l&&"success"===i&&f.data.headSha===a.headSha){let c=await e.previews(l.token,l.teamId,l.projectId,f.data.headSha),d=c.ok?c.data.find(a=>"preview"===a.target)??c.data[0]??null:null;if(d&&(j={state:d.state,readyAt:d.readyAt??("ready"===d.state?b:null)},"ready"===d.state&&d.url)){let c=a.previewReadyAt??j.readyAt??b;if("logs"!==a.smokeMode){let b=(0,Z.E)(a.appId?await e.monitorUrls(a.appId):[]),c=await Promise.all(b.map(async a=>({path:a,...await e.probe(`https://${d.url}${a}`)})));k=(0,Z.L)(c)}k||(k=(0,Z.n)(c,b,await e.errorLogs(l,d.id,c,b).catch(()=>null))),j.readyAt=c}}return{step:(0,Z.M)({now:b,openedAt:a.openedAt,pr:{state:f.data.state,merged:f.data.merged,mergeable:f.data.mergeable,headSha:f.data.headSha,base:f.data.base},recordedSha:a.headSha,recordedBase:a.baseBranch,checks:i,preview:j,smoke:k,autoRollbackOn:d}),smoke:k,previewReadyAt:j.readyAt,headSha:f.data.headSha}}function ar(a,b){if(!a.appId||!1===a.appMonitored||a.appGone)return"the app is gone or no longer watched, so Watchbell can't confirm what production is built from. Merging this PR could replace what is live";let c=(0,$.B)(a.meta?.productionSource,a.baseBranch,b);if(c)return c;let d=(0,$.O)(a.meta?.productionSource),e=a.meta?.productionBranch;return d?.kind==="git"&&d.ref===a.baseBranch&&"string"==typeof e&&e!==a.baseBranch?`Merging into ${a.baseBranch} won't deploy to production by itself: production was promoted from a ${a.baseBranch} preview. Merge, then promote the new preview.`:null}async function as(a,b,c,d,e,f,g,h){let{step:i}=b,j=b.smoke?{smokeMode:b.smoke.mode}:{},k=b.previewReadyAt?{previewReadyAt:b.previewReadyAt}:{},l={app:c,number:a.number,packages:a.packages};if("wait"===i.kind)return void await g.save(a.id,{stage:i.stage,...j,...k,...i.resetSha?{headSha:i.resetSha,previewReadyAt:null,smokeMode:null}:{}},a.proposalId,(0,Z.m)(a.number,i.stage,i.reason));if("done"===i.kind)return void await g.save(a.id,{stage:i.stage,finishedAt:e},a.proposalId,(0,Z.m)(a.number,i.stage));if("stop"===i.kind&&("CI gagal"===i.reason||"CI failed"===i.reason)&&await g.lockfileBusy?.(a.repoId,a.branch,a.fullName).catch(()=>!1))return void await g.save(a.id,{stage:"checks"},a.proposalId,(0,Z.m)(a.number,"checks","waiting for the lockfile from the runner"));let m=async b=>{await g.save(a.id,{stage:"failed",finishedAt:e,...j},a.proposalId,(0,Z.m)(a.number,"failed",b)),h.stopped++,await g.notify({...l,kind:"stopped",reason:b.replace(/\.$/,"")}).catch(()=>void 0)},n="merge"===i.kind||"stop"===i.kind&&"ready-manual"===i.stage?ar(a,e):null;if(n)return m(n);let o=async()=>{let c=a.appId?await g.liveSource(a.appId).catch(()=>null):null;if(!c){let c=b.previewReadyAt??a.previewReadyAt??a.openedAt;if((a.stageText??"").includes(ai)&&e.getTime()-c.getTime()>Z.R)return await m("Vercel didn't say which deployment is live for 45 minutes, so Watchbell can't confirm what production is built from. Check it, then merge yourself"),!0;let d="checks"===a.stage||"preview"===a.stage||"smoke"===a.stage?a.stage:"smoke";return await g.save(a.id,{stage:d,...j,...k},a.proposalId,(0,Z.m)(a.number,d,ai)),!0}let d=c.source?ar({...a,meta:{...a.meta??{},productionSource:{...c.source,at:e.toISOString()}}},e):`Watchbell can't confirm what production is built from (Vercel names no branch for it). Merging this PR could deploy ${a.baseBranch} to production and replace what is live.`;return!!d&&(await m(d),!0)};if("stop"===i.kind&&"ready-manual"===i.stage&&await o())return;if("stop"===i.kind){await g.save(a.id,{stage:i.stage,finishedAt:e,...j},a.proposalId,(0,Z.m)(a.number,i.stage,"ready-manual"===i.stage?null:i.reason)),h.stopped++,await g.notify({...l,kind:"ready-manual"===i.stage?"ready-manual":"stopped",reason:i.reason}).catch(()=>void 0);return}let p=await g.review(f,a).catch(()=>null);if(!p)return;let q=(0,Z.k)(p);if(!q&&(0,Z.H)(p)&&e.getTime()-a.openedAt.getTime()>Z.R){let b="the lockfile wasn't added within 45 minutes";await g.save(a.id,{stage:"timeout",finishedAt:e,...j},a.proposalId,(0,Z.m)(a.number,"timeout",b)),h.stopped++,await g.notify({...l,kind:"stopped",reason:b}).catch(()=>void 0);return}if(!q&&(0,Z.H)(p))return void await g.save(a.id,{stage:"checks"},a.proposalId,(0,Z.m)(a.number,"checks","waiting for the lockfile"));if(q){await g.save(a.id,{stage:"failed",finishedAt:e,...j},a.proposalId,(0,Z.m)(a.number,"failed",q)),h.stopped++,await g.notify({...l,kind:"stopped",reason:q}).catch(()=>void 0);return}if(await o())return;await g.save(a.id,{stage:"merging",...j,...k},a.proposalId,(0,Z.m)(a.number,"merging"));let r=await g.merge(f,a.fullName,a.number,a.branch,a.baseBranch,a.headSha,a.title);if(r.ok){await g.save(a.id,{stage:"merged",mergedSha:r.data.sha,finishedAt:e},a.proposalId,(0,Z.m)(a.number,"merged")),h.merged++,await g.audit(`${ag.v}PR #${a.number} merged \xb7 ${a.packages.join(", ")}`.slice(0,200),a.appId).catch(()=>void 0),await g.notify({...l,kind:"merged",windowMin:d}).catch(()=>void 0);return}if(409===r.status)return void await g.save(a.id,{stage:"checks"},a.proposalId,(0,Z.m)(a.number,"checks","new commit on the PR branch, checking again"));let s=405===r.status?"GitHub refused the merge (cannot be merged)":`merge failed: ${r.error}`.slice(0,150);await g.save(a.id,{stage:"failed",finishedAt:e},a.proposalId,(0,Z.m)(a.number,"failed",s)),h.stopped++,await g.notify({...l,kind:"stopped",reason:s}).catch(()=>void 0)}let at=null;async function au(a,b,c=U.I){if((0,Z.f)(a,at)&&!(await c()).has("devops")){at=a.getTime();try{let c=await ap(a,b?.deadline??a.getTime()+5e4);c.watched&&console.log(`deps/watch: ${c.watched} PR, ${c.merged} merged, ${c.stopped} stopped`)}catch(a){console.warn("deps/watch failed:",a instanceof Error?a.name:"error")}}}var av=a.i(691100),aw=a.i(624065);let ax={nav:[{section:"manage",after:"backups",items:[{key:"ai",label:"AI Gateway",href:"/ai",icon:"route",stage:5,ownerOnly:!0,sub:"AI & API"},{key:"api-docs",label:"API explorer",href:"/api-docs",icon:"api",stage:5,ownerOnly:!0,sub:"AI & API"}]}],palette:[{label:"AI Gateway",href:"/ai",keywords:["ai","gateway","overview"]},{label:"API keys",href:"/ai/keys",keywords:["key","token","wb_","wp_"]},{label:"Agents",href:"/ai/agents",keywords:["agent","client","mcp"]},{label:"Connect an agent",href:"/ai/connect",keywords:["mcp",...e.I.palette.connectKeywords,"gemini cli","quick start"]},{label:"Bring your own key",href:"/ai/providers",keywords:["provider","byok","cloudflare","groq","openrouter","gemini"]},{label:"Quota",href:"/ai/quota",keywords:["limit","usage","rate"]},{label:"AI logs",href:"/ai/logs",keywords:["logs","requests","usage"]},{label:"Models",href:"/ai/models",keywords:["model","llm"]},{label:"Playground",href:"/ai/playground",keywords:["chat","try","prompt"]},{label:"API explorer",href:"/api-docs",keywords:["openapi","swagger","api","v1"]}]},ay={dailySteps:[{name:"ai-usage-retention",run:g.$}]},az={WhyAiSlot:E,RecSummarySlot:A,AiNotesSlot:v,dailySteps:[{name:"advisor-summary",run:j}],minuteSteps:[{name:"advisor-notes",run:h.I}]},aA={dailySteps:[{name:"ai-notes-retention",run:F.v}]},aB={nav:[{section:"manage",after:"alerts",items:[{key:"auto-actions",label:"Auto-actions",href:"/auto-actions",icon:"bolt",stage:9,ownerOnly:!0,sub:"Alerting"}]}],palette:[{label:"Auto-actions",href:"/auto-actions",keywords:["proposal","approve","reject","auto-run","rollback"]}],dailySteps:[{name:"auto-actions-retention",run:av.t}],minuteSteps:[{name:"auto-actions",run:av.Z},{name:"deps-pr-watch",run:au}],settingsTabs:[{key:"office-auto-run",label:"Auto-actions",Tab:N}]},aC={telegramCallback:aw.proposalCallback},aD=function(...a){let b={nav:[],palette:[]};for(let c of a){for(let a of c.nav??[]){let c=b.nav.find(b=>b.section===a.section&&b.after===a.after);c?c.items=[...c.items,...a.items]:b.nav.push({...a,items:[...a.items]})}b.palette.push(...c.palette??[]),c.dailySteps?.length&&(b.dailySteps=[...b.dailySteps??[],...c.dailySteps]),c.minuteSteps?.length&&(b.minuteSteps=[...b.minuteSteps??[],...c.minuteSteps]),c.WhyAiSlot&&(b.WhyAiSlot=c.WhyAiSlot),c.RecSummarySlot&&(b.RecSummarySlot=c.RecSummarySlot),c.AiNotesSlot&&(b.AiNotesSlot=c.AiNotesSlot),c.DevNotesSlot&&(b.DevNotesSlot=c.DevNotesSlot),c.office&&(b.office=c.office),c.settingsTabs?.length&&(b.settingsTabs=[...b.settingsTabs??[],...c.settingsTabs]),c.telegramCallback&&(b.telegramCallback=c.telegramCallback),c.runner&&(b.runner=c.runner),c.RepoPreviewSlot&&(b.RepoPreviewSlot=c.RepoPreviewSlot)}return b}({...ax,palette:(c=ax.palette??[],d={label:"Ask AI",href:"/ai/ask",keywords:["ask","question","answer"]},(b=c.findIndex(a=>"/ai"===a.href))<0?[...c,d]:[...c.slice(0,b+1),d,...c.slice(b+1)])},{dailySteps:[{name:"ai-agents-prune",run:()=>(0,f.w)()}]},ay,{},{},aA,aB,az,aC);a.s(["extensions",0,aD],534908)},285138,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call AutoRollbackForm() from the server but AutoRollbackForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/actions/auto-rollback-form.tsx","AutoRollbackForm");a.s(["AutoRollbackForm",0,b])},411642,a=>{var b=a.i(285138);a.n(b)},305093,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call AutoRunForm() from the server but AutoRunForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/actions/auto-run-form.tsx","AutoRunForm");a.s(["AutoRunForm",0,b])},581156,a=>{var b=a.i(305093);a.n(b)},173666,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call AutoSecurityForm() from the server but AutoSecurityForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/actions/auto-security-form.tsx","AutoSecurityForm");a.s(["AutoSecurityForm",0,b])},65932,a=>{var b=a.i(173666);a.n(b)},140025,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call DismissNoteButton() from the server but DismissNoteButton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/slots/dismiss-note-button.tsx","DismissNoteButton");a.s(["DismissNoteButton",0,b])},791450,a=>{var b=a.i(140025);a.n(b)},581542,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call RegenerateButton() from the server but RegenerateButton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/slots/regenerate-button.tsx","RegenerateButton");a.s(["RegenerateButton",0,b])},185538,a=>{var b=a.i(581542);a.n(b)},402242,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call WhyAi() from the server but WhyAi is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/slots/why-ai.tsx","WhyAi");a.s(["WhyAi",0,b])},976517,a=>{var b=a.i(402242);a.n(b)}]})();
|
|
1
|
+
(()=>{"use strict";module.exports=[534908,72922,a=>{let b;var c,d,e=a.i(462820),f=a.i(411350),g=a.i(61017),h=a.i(330863);let i="«redacted»",j=[[/-----BEGIN [A-Z0-9 ]*(?:PRIVATE KEY|KEY)-----[\s\S]*?(?:-----END [A-Z0-9 ]*(?:PRIVATE KEY|KEY)-----|$)/g,i],[/\b(?:postgres(?:ql)?|mysql|mariadb|mongodb(?:\+srv)?|rediss?|amqps?|mssql|sqlserver|clickhouse|libsql):\/\/[^\s'"`<>]+/gi,i],[/\b[a-z][a-z0-9+.-]*:\/\/[^\s'"`<>/:@]+:[^\s'"`<>@]+@[^\s'"`<>]+/gi,i],[/\beyJ[A-Za-z0-9_-]{8,}\.[A-Za-z0-9_-]{8,}\.[A-Za-z0-9_-]{6,}/g,i],[/\b(?:gh[pousr]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{20,})/g,i],[/\b(?:sk|pk|rk)_(?:live|test)_[A-Za-z0-9]{10,}/g,i],[/\bsk-(?:proj-|ant-)?[A-Za-z0-9_-]{16,}/g,i],[/\bxox[abposr]-[A-Za-z0-9-]{10,}/g,i],[/\b(?:AKIA|ASIA)[0-9A-Z]{16}\b/g,i],[/\bAIza[0-9A-Za-z_-]{30,}/g,i],[/\b(?:glpat|npm|hf|gsk|whsec|shpat|shpss|dop_v1|sbp|sb_secret|sb_publishable|re|wb|wp|hb|wr|xai|pplx)[-_][A-Za-z0-9_-]{16,}/g,i],[/\bSG\.[A-Za-z0-9_-]{16,}\.[A-Za-z0-9_-]{16,}/g,i],[/\b(Bearer|Basic|Token)\s+[A-Za-z0-9._~+/=-]{12,}/g,(a,b)=>`${b} ${i}`],[/\b([A-Za-z0-9_$.-]*(?:key|token|secret|passw(?:or)?d|passwd|pwd|credential|auth|dsn|signature|salt)[A-Za-z0-9_$-]*["']?\]?\s*(?:=|:|=>)\s*)(["'`])([^"'`\n]{4,})\2/gi,(a,b,c)=>`${b}${c}${i}${c}`],[/^(\s*(?:export\s+)?[A-Z0-9_]*(?:KEY|TOKEN|SECRET|PASSWORD|PASSWD|PWD|DSN|URL|AUTH|CREDENTIALS?)[A-Z0-9_]*\s*=\s*)(?!["'`])(\S{4,})/gm,(a,b)=>`${b}${i}`],[/(["'`])((?=[A-Za-z0-9+/_=-]*[0-9])(?=[A-Za-z0-9+/_=-]*[A-Za-z])[A-Za-z0-9+/_=-]{32,})\1/g,(a,b)=>`${b}${i}${b}`],[/[A-Za-z0-9._%+-]+@[A-Za-z0-9-]+(?:\.[A-Za-z0-9-]+)*\.[A-Za-z]{2,}/g,i]];function k(a){let b=String(a??"");for(let[a,c]of j)b=b.replace(a,c);return b}a.s(["f",0,k],72922);var l=a.i(109336),m=a.i(86657);let n=/error|failed|cannot|not found|exit code/i;async function o(a,b){let c,d,f,g,h=(c=b.lines.map((a,b)=>({l:a,i:b})).filter(({l:a})=>"delimiter"!==a.kind&&""!==a.text.trim()),d=a=>"stderr"===a.kind||n.test(a.text),g=120-(f=c.filter(({l:a})=>d(a)).slice(-120)).length,[...f,...g>0?c.filter(({l:a})=>!d(a)).slice(-g):[]].sort((a,b)=>a.i-b.i).map(({l:a})=>k("command"===a.kind?`$ ${a.text}`:a.text).slice(0,400)));if(h.length<3||!h.some(a=>n.test(a)))return{ok:!1,error:"There is too little in the build log to explain."};let i=await a.overQuota(b.memberId);if(i)return{ok:!1,error:i};if(!await a.provider())return{ok:!1,error:e.B.noProvider};try{var j;let c=await a.complete((j=b.app,[{role:"system",content:"You read a web app's failed build log and explain it to its developer. Answer in at most 6 short lines of plain text, no headings and no preamble: what broke, the likely fix, and the file (with the line, when the log names one). If the log doesn't say enough, say what to look at next."},{role:"user",content:`The build of ${j} failed. The end of its build log (secrets removed):
|
|
2
|
+
|
|
3
|
+
${h.join("\n")}`}]),{purpose:"ask-ai",maxTokens:400}),d=c.text.trim();return d?{ok:!0,text:d,model:c.model}:{ok:!1,error:"The model returned no text. Try again."}}catch(a){return{ok:!1,error:(0,l.W)(a)}}}var p=a.i(779704);async function q(a){await (0,p.E)(a,{force:!1})}var r=a.i(907997),s=a.i(109307),t=a.i(920274),u=a.i(791450);let v=(0,a.i(377269).f)("outline","notes","Notes",[["path",{d:"M5 5a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2l0 -14",key:"svg-0"}],["path",{d:"M9 7l6 0",key:"svg-1"}],["path",{d:"M9 11l6 0",key:"svg-2"}],["path",{d:"M9 15l4 0",key:"svg-3"}]]);var w=a.i(701702),x=a.i(245710),y=a.i(668495),z=a.i(191397);let A={crit:"err",warn:"warn",info:"brand"};function B({note:a,now:b,showApp:c}){let d=["AI note",`from ${a.from}`,a.model,(0,x.$)(a.at,b),c&&a.appName?a.appName:null,"written by an agent, can be wrong"].filter(Boolean).join(" · ");return(0,r.jsxs)(z.f,{icon:(0,r.jsx)(v,{size:18,"aria-hidden":!0}),tone:A[a.severity]??"brand",meta:d,action:(0,r.jsx)(u.DismissNoteButton,{id:a.id}),children:[(0,r.jsx)("b",{className:"font-medium",children:(0,r.jsx)(w.MaskedText,{text:a.title})}),(0,r.jsx)(y.f,{source:a.body})]})}async function C({appId:a}){let{ok:b}=await (0,s.B)("owner");if(!b)return null;let c=new Date,d=await (0,t.N)(a,c).catch(()=>[]);return d.length?(0,r.jsxs)("div",{className:"mb-3 flex flex-col gap-2.5",children:[d.length>1&&(0,r.jsx)("div",{className:"flex justify-end",children:(0,r.jsx)(u.DismissAllNotesButton,{ids:d.map(a=>a.id)})}),d.map(b=>(0,r.jsx)(B,{note:b,now:c,showApp:void 0===a},b.id))]}):null}var D=a.i(694874),E=a.i(395936),F=a.i(185538);async function G({count:a}){let{ok:b}=await (0,s.B)("owner");if(!b)return null;if(!await m.f.provider().catch(()=>null))return(await (0,t.N)(void 0,new Date).catch(()=>[])).length?null:(0,r.jsxs)("p",{className:"mb-3 flex items-center gap-1.5 text-[13px] text-ink-soft",children:[(0,r.jsx)(v,{size:16,"aria-hidden":!0,className:"text-ink-faint"}),(0,r.jsx)(E.default,{href:"/ai/connect",children:e.v.recConnect})]});if(0===a)return null;let c=await (0,p.h)().catch(()=>null);if(!c)return(0,r.jsxs)("p",{className:"mb-3 flex items-center gap-1.5 text-[13px] text-ink-soft",children:[(0,r.jsx)(D.f,{size:16,"aria-hidden":!0,className:"text-ink-faint"}),"No AI summary yet. ",(0,r.jsx)(F.RegenerateButton,{label:"Summarise"})]});let d=new Date;return(0,r.jsxs)(z.f,{className:"mb-3",icon:(0,r.jsx)(D.f,{size:18,"aria-hidden":!0}),meta:(0,r.jsxs)(r.Fragment,{children:[`AI \xb7 ${c.model} \xb7 ${(0,x.$)(new Date(c.at),d)} \xb7 from ${c.count} items, names aliased \xb7 can be wrong, check the items below \xb7 `,(0,r.jsx)(F.RegenerateButton,{label:"Regenerate"})]}),children:[(0,r.jsx)("b",{className:"font-medium",children:"Summary"}),(0,r.jsx)(y.f,{source:c.text})]})}var H=a.i(918962),I=a.i(962230),J=a.i(976517);async function K({appId:a}){let{ok:b}=await (0,s.B)("owner");if(!b)return null;let c=new Date,[d,e,f]=await Promise.all([m.f.provider().catch(()=>null),(0,I.N)("app",a,c).catch(()=>null),(0,H.c)(c).catch(()=>null)]),g=e?{...e,createdAt:e.createdAt.toISOString(),answeredAt:e.answeredAt?.toISOString()??null}:null;return(0,r.jsx)(J.WhyAi,{appId:a,provider:d?{model:d.model}:null,question:g,nowMs:c.getTime(),agConnected:f?.agConnected??!1})}var L=a.i(243446),M=a.i(803681),N=a.i(581156),O=a.i(411642),P=a.i(65932),Q=a.i(94473),R=a.i(188282);let S={recheck:"Runs the monitor's check once, like Check now on the monitor.",neon_wake:"Wakes a suspended Neon compute, like Wake on the database page.",supabase_keepalive:"Sends one keep-alive query to a Supabase project close to auto-pause, like Keep active.",supabase_restore:"Restores a paused Supabase project.",vercel_redeploy:"Redeploys the current production deployment.",vercel_rollback:"Rolls production back to the previous ready deployment.",github_bump_pr:"Opens a pull request on a new branch that raises vulnerable packages to their fixed versions (needs the GitHub PR-write token).",daily_rerun:"Calls the console's daily job again when its heartbeat is down. Always asks for approval.",domain_recheck:"Re-reads a domain's TLS certificate and expiry when its certificate looks close to expiry, like Re-check on Domains.",monitor_update_url:"Points an uptime monitor at its app's new domain when the app moved, keeping the path, like Update monitor on Uptime."};async function T(){let[a,b,c]=await Promise.all([(0,Q.I)(),(0,Q.K)(),(0,Q.X)()]),d=[10,15,20,30,45,60,90,120].filter(a=>a>=Q.l&&a<=Q.n),e=Q.r.map(a=>({kind:a,label:R.H[a].label,risky:"risky"===R.H[a].risk,what:S[a]}));return(0,r.jsxs)(M.N,{title:"Auto-actions",flush:!0,meta:"All off by default",children:[(0,r.jsxs)("p",{className:"px-[18px] pb-3 text-ink-soft",children:["When a firing alert brings a proposal for one of these actions, a switched-on kind runs without asking and you get a short Telegram line afterwards. Everything else waits for you on ",(0,r.jsx)(E.default,{href:"/auto-actions",children:"Auto-actions"}),". Auto-run only does what the console button does, through the same checks, and every run is in the audit log (Events)."]}),(0,r.jsx)(N.AutoRunForm,{saved:a,rows:e}),(0,r.jsxs)("div",{className:"border-t border-line px-[18px] pb-4 pt-3.5",children:[(0,r.jsx)("h3",{className:"mb-1.5 text-[14px]",children:"Auto-rollback after a bad deploy"}),(0,r.jsxs)("p",{className:"mb-2.5 text-ink-soft",children:["Off by default. When on, a new production deploy that breaks the app is rolled back to the previous one without asking. Only ",(0,r.jsx)("span",{className:"font-mono text-[12.5px]",children:"vercel_rollback"}),", only within the first N minutes after a new production deploy goes live, only when a monitor is down or the logs show an error spike, at most once per deployment (and never twice for one app within 2 hours), and every run is reported on Telegram and in Events. Failed builds never go live on Vercel, so this is for builds that succeed but break at runtime."]}),(0,r.jsx)(O.AutoRollbackForm,{saved:b,choices:d})]}),(0,r.jsxs)("div",{className:"border-t border-line px-[18px] pb-4 pt-3.5",children:[(0,r.jsx)("h3",{className:"mb-1.5 text-[14px]",children:"Automatic security fixes"}),(0,r.jsx)("p",{className:"mb-2 text-ink-soft",children:"On by default. When a dependency scan finds a critical, high or moderate advisory with a fix, Watchbell fixes it end to end (the scan and the Next.js check run every 6 hours and right after each production deploy):"}),(0,r.jsxs)("ol",{className:"mb-2.5 list-decimal pl-5 text-ink-soft [&_li]:mt-0.5",children:[(0,r.jsx)("li",{children:"opens the update PR itself (package.json only, on a new watchpost/deps-… branch), only for direct packages that stay in their major version, never twice for the same package while a PR is open;"}),(0,r.jsx)("li",{children:"waits for GitHub's checks (all green), then Vercel's preview of the PR (READY);"}),(0,r.jsx)("li",{children:'tests the preview: "/" and up to 3 monitor paths must answer 200–399 within 15 s (behind Vercel Authentication: 3 minutes without error lines in the preview\'s logs);'}),(0,r.jsx)("li",{children:"squash-merges it, only while auto-rollback is on: the production deploy then runs on Vercel and auto-rollback guards its first minutes."})]}),(0,r.jsx)("p",{className:"mb-2.5 text-ink-soft",children:'Anything failing, or not done within 45 minutes, leaves the PR open marked "needs a look". A major update, a transitive package or a severity you switched off waits for your approval on Auto-actions, as before. Every PR opened and every merge or stop is sent to Telegram and logged in Events. Needs the GitHub PR-write token on Connections.'}),(0,r.jsx)(P.AutoSecurityForm,{saved:c,rollbackOn:b.enabled})]})]})}var U=a.i(93321),V=a.i(530385),W=a.i(548734),X=a.i(837137),Y=a.i(247730),Z=a.i(221084),$=a.i(396667),_=a.i(976937),aa=a.i(736780),ab=a.i(944571),ac=a.i(322145),ad=a.i(664892),ae=a.i(751263),af=a.i(521050),ag=a.i(760417),ah=a.i(812092),ai=a.i(572134),aj=a.i(658739),ak=a.i(556987),al=a.i(142754),am=a.i(342634),an=a.i(381544);let ao="waiting: Vercel didn't say which deployment is live";async function ap(a){let b=Date.now();try{let c=await fetch(a,{redirect:"manual",signal:AbortSignal.timeout(ad.w),cache:"no-store",headers:{"User-Agent":"Watchbell smoke test"}}),d=401===c.status||403===c.status?(await c.text().catch(()=>"")).slice(0,8192):"";return{status:c.status,ms:Date.now()-b,authWall:(0,ad.S)(c.status,d,c.headers)}}catch{return{status:null,ms:Date.now()-b,authWall:!1}}}async function aq(b,c){let{extensions:d}=await a.A(414785);return await d.runner?.lockfileJobActive(b,c).catch(()=>!1)??!1}let ar=null;async function as(a,b){let c=(0,af.Q)(b.meta?.rootDirectory),d=(0,af.H)(c,"package.json"),e=b.lockfilePath??(0,af.H)(c,"package-lock.json");if(ar?.token!==a){let b=await (0,ah.z)(a);if(!b.ok)return null;ar={token:a,login:b.data}}let f=ar.login,[g,h]=await Promise.all([(0,ah.O)(a,b.fullName,b.number),(0,ah.P)(a,b.fullName,b.number)]);if(!g.ok||!h.ok)return null;let i=[];for(let c of h.data.slice(0,ad.y+1)){let d=null!==c.login&&c.login.toLowerCase()===f.toLowerCase()?null:await (0,ah.h)(a,b.fullName,c.sha);if(d&&!d.ok)return null;i.push({...c,files:d?d.data:null})}let[j,k]=await Promise.all([(0,ah.E)(a,b.fullName,b.baseBranch,{},d),(0,ah.E)(a,b.fullName,b.headSha,{},d)]);if(!j.ok||!k.ok)return null;let l=j.data&&k.data?(0,ad.C)(j.data.text,k.data.text,b.packages):"unexpected change: package.json is missing",m=null;if(e!==d&&g.data.some(a=>a.filename===e||a.previous===e))if((0,ah.$)(e)){let[c,d]=await Promise.all([(0,ah.l)(a,b.fullName,b.baseBranch,e),(0,ah.l)(a,b.fullName,b.headSha,e)]);if(!c.ok||!d.ok)return null;m=(0,ad.T)(c.data,d.data,e)}else m=`unexpected lockfile change ${e} (only package-lock.json can be checked)`;return{manifest:d,lockfile:e,lockfileRequired:!!b.lockfilePath,manifestProblem:l,lockfileProblem:m,headSha:b.headSha,tokenLogin:f,files:g.data,commits:i}}async function at(a,b={}){let c=await (b.vercel??au.vercel)(a);if(!c)return null;let d=await (b.serving??ai.k)(c.token,c.teamId,c.projectId);if(!d.ok)return null;let e=d.data.currentId,f=null;if(!e){let a=d.data.latest?.readyState??null;if("ERROR"!==a&&"CANCELED"!==a)return null;let g=await (b.running??ai.N)(c.token,c.teamId,c.projectId);if(!g.ok||g.data)return null;let h=await (b.ready??ai.r)(c.token,c.teamId,c.projectId);if(!h.ok)return null;let i=[...h.data].sort((a,b)=>b.createdAt.getTime()-a.createdAt.getTime()),j=d.data.promote;j?(f=i.find(a=>a.createdAt.getTime()>j.requestedAt)??null)||(e=j.toDeploymentId):f=i[0]??null}if(!f&&e){let a=await (b.deployment??ai.S)(c.token,{id:c.teamId,slug:c.teamId,name:c.teamId},e);if(!a.ok)return null;f=a.data}return f?{source:(0,ae.s)({source:f.source,branch:f.branch,sha:f.sha,branchFrom:f.branchFrom??null,gitDirty:!0===f.gitDirty})}:null}let au={rows:async()=>await (0,W.f)().select({id:X.dependencyPrs.id,repoId:X.dependencyPrs.repoId,appId:X.dependencyPrs.appId,proposalId:X.dependencyPrs.proposalId,number:X.dependencyPrs.number,branch:X.dependencyPrs.branch,baseBranch:X.dependencyPrs.baseBranch,headSha:X.dependencyPrs.headSha,title:X.dependencyPrs.title,packages:X.dependencyPrs.packages,auto:X.dependencyPrs.auto,stage:X.dependencyPrs.stage,smokeMode:X.dependencyPrs.smokeMode,previewReadyAt:X.dependencyPrs.previewReadyAt,openedAt:X.dependencyPrs.openedAt,fullName:X.githubRepos.fullName,appName:X.resources.name,meta:X.resources.meta,lockfilePath:X.dependencyScans.lockfilePath,appMonitored:X.resources.monitored,appGone:X.resources.goneAt,stageText:X.dependencyPrs.stageText}).from(X.dependencyPrs).innerJoin(X.githubRepos,(0,U.u)(X.githubRepos.id,X.dependencyPrs.repoId)).leftJoin(X.resources,(0,U.u)(X.resources.id,X.dependencyPrs.appId)).leftJoin(X.dependencyScans,(0,U.u)(X.dependencyScans.repoId,X.dependencyPrs.repoId)).where((0,U.y)(X.dependencyPrs.stage,[...ad.X])).orderBy((0,V.M)(X.dependencyPrs.openedAt)).limit(10),security:Q.X,rollback:Q.K,writeToken:async()=>{let a=await (0,aa.G)();return a&&"unreadable"!==a?a.token:null},readToken:async a=>{let b=await (0,ab.l)(a);return b.ok?b.token:null},vercel:async a=>{let b=await (0,ac.p)(a,"app"),c=b?.resource.meta.teamId;return b&&"string"==typeof c&&b.resource.externalId?{token:b.token,teamId:c,projectId:b.resource.externalId}:null},monitorUrls:async a=>(await (0,W.f)().select({url:X.monitors.url}).from(X.monitors).where((0,U.b)((0,U.u)(X.monitors.resourceId,a),(0,U.u)(X.monitors.kind,"http"))).limit(10)).map(a=>a.url),pull:ah.b,checks:ah.s,runs:ag.L,previews:ai.C,probe:ap,errorLogs:async(a,b,c,d)=>{let e=await (0,aj.f)(a.token,a.teamId,a.projectId,{since:c,until:d,now:d,deploymentId:b,levels:["error","fatal"],maxRows:20,timeoutMs:8e3});return e.ok?e.lines.length:null},merge:ah.C,review:as,save:async(a,b,c,d)=>{await (0,W.f)().update(X.dependencyPrs).set({...b,stageText:d,checkedAt:new Date}).where((0,U.u)(X.dependencyPrs.id,a)),c&&await (0,W.f)().update(al.O).set({result:d}).where((0,U.u)(al.O.id,c)).catch(()=>void 0)},notify:a=>(0,an.y)(a),liveSource:a=>at(a),lockfileBusy:async(a,b,c)=>await aq(a,b)||await (0,_.W)(c,b),audit:(a,b)=>(0,Z.f)({kind:"ok",message:a,resourceId:b,actorUserId:null}),book:()=>(0,Y.f)()};async function av(a,b,c=au){let d={watched:0,merged:0,stopped:0},e=()=>b-Date.now(),f=await c.rows();if(!f.length)return d;let[g,h,i]=await Promise.all([c.security().catch(()=>null),c.rollback().catch(()=>null),c.writeToken().catch(()=>null)]);if(!i)return d;let j=await c.book().catch(()=>ak.a);for(let b of f){if(15e3>e())break;if(b.auto||g?.enabled)try{let e=await aw(b,a,i,h?.enabled===!0,c);if(!e)continue;d.watched++;let f=b.appName?(0,ak.r)(j,b.appName):"app";await ay(b,e,f,h?.windowMin??30,a,i,c,d)}catch(a){console.warn("deps/watch failed:",a instanceof Error?a.name:"error")}}return d}async function aw(a,b,c,d,e){let f=await e.pull(c,a.fullName,a.number);if(!f.ok)return null;let g=await e.checks(c,a.fullName,f.data.headSha),h=null;if(g.ok&&null===g.data.checkRuns&&a.appId){let b=await e.readToken(a.appId),c=b?await e.runs(b,a.fullName,f.data.headSha):null;h=c?.ok?c.data:null}g.ok||(g={ok:!0,data:{checkRuns:[{status:"queued",conclusion:null}],combined:null}});let i=(0,ad.j)({...g.data,actionRuns:h}),j={state:null,readyAt:null},k=null,l=a.appId?await e.vercel(a.appId):null;if(l&&"success"===i&&f.data.headSha===a.headSha){let c=await e.previews(l.token,l.teamId,l.projectId,f.data.headSha),d=c.ok?c.data.find(a=>"preview"===a.target)??c.data[0]??null:null;if(d&&(j={state:d.state,readyAt:d.readyAt??("ready"===d.state?b:null)},"ready"===d.state&&d.url)){let c=a.previewReadyAt??j.readyAt??b;if("logs"!==a.smokeMode){let b=(0,ad.E)(a.appId?await e.monitorUrls(a.appId):[]),c=await Promise.all(b.map(async a=>({path:a,...await e.probe(`https://${d.url}${a}`)})));k=(0,ad.L)(c)}k||(k=(0,ad.n)(c,b,await e.errorLogs(l,d.id,c,b).catch(()=>null))),j.readyAt=c}}return{step:(0,ad.M)({now:b,openedAt:a.openedAt,pr:{state:f.data.state,merged:f.data.merged,mergeable:f.data.mergeable,headSha:f.data.headSha,base:f.data.base},recordedSha:a.headSha,recordedBase:a.baseBranch,checks:i,preview:j,smoke:k,autoRollbackOn:d}),smoke:k,previewReadyAt:j.readyAt,headSha:f.data.headSha}}function ax(a,b){if(!a.appId||!1===a.appMonitored||a.appGone)return"the app is gone or no longer watched, so Watchbell can't confirm what production is built from. Merging this PR could replace what is live";let c=(0,ae.B)(a.meta?.productionSource,a.baseBranch,b);if(c)return c;let d=(0,ae.O)(a.meta?.productionSource),e=a.meta?.productionBranch;return d?.kind==="git"&&d.ref===a.baseBranch&&"string"==typeof e&&e!==a.baseBranch?`Merging into ${a.baseBranch} won't deploy to production by itself: production was promoted from a ${a.baseBranch} preview. Merge, then promote the new preview.`:null}async function ay(a,b,c,d,e,f,g,h){let{step:i}=b,j=b.smoke?{smokeMode:b.smoke.mode}:{},k=b.previewReadyAt?{previewReadyAt:b.previewReadyAt}:{},l={app:c,number:a.number,packages:a.packages};if("wait"===i.kind)return void await g.save(a.id,{stage:i.stage,...j,...k,...i.resetSha?{headSha:i.resetSha,previewReadyAt:null,smokeMode:null}:{}},a.proposalId,(0,ad.m)(a.number,i.stage,i.reason));if("done"===i.kind)return void await g.save(a.id,{stage:i.stage,finishedAt:e},a.proposalId,(0,ad.m)(a.number,i.stage));if("stop"===i.kind&&("CI gagal"===i.reason||"CI failed"===i.reason)&&await g.lockfileBusy?.(a.repoId,a.branch,a.fullName).catch(()=>!1))return void await g.save(a.id,{stage:"checks"},a.proposalId,(0,ad.m)(a.number,"checks","waiting for the lockfile from the runner"));let m=async b=>{await g.save(a.id,{stage:"failed",finishedAt:e,...j},a.proposalId,(0,ad.m)(a.number,"failed",b)),h.stopped++,await g.notify({...l,kind:"stopped",reason:b.replace(/\.$/,"")}).catch(()=>void 0)},n="merge"===i.kind||"stop"===i.kind&&"ready-manual"===i.stage?ax(a,e):null;if(n)return m(n);let o=async()=>{let c=a.appId?await g.liveSource(a.appId).catch(()=>null):null;if(!c){let c=b.previewReadyAt??a.previewReadyAt??a.openedAt;if((a.stageText??"").includes(ao)&&e.getTime()-c.getTime()>ad.R)return await m("Vercel didn't say which deployment is live for 45 minutes, so Watchbell can't confirm what production is built from. Check it, then merge yourself"),!0;let d="checks"===a.stage||"preview"===a.stage||"smoke"===a.stage?a.stage:"smoke";return await g.save(a.id,{stage:d,...j,...k},a.proposalId,(0,ad.m)(a.number,d,ao)),!0}let d=c.source?ax({...a,meta:{...a.meta??{},productionSource:{...c.source,at:e.toISOString()}}},e):`Watchbell can't confirm what production is built from (Vercel names no branch for it). Merging this PR could deploy ${a.baseBranch} to production and replace what is live.`;return!!d&&(await m(d),!0)};if("stop"===i.kind&&"ready-manual"===i.stage&&await o())return;if("stop"===i.kind){await g.save(a.id,{stage:i.stage,finishedAt:e,...j},a.proposalId,(0,ad.m)(a.number,i.stage,"ready-manual"===i.stage?null:i.reason)),h.stopped++,await g.notify({...l,kind:"ready-manual"===i.stage?"ready-manual":"stopped",reason:i.reason}).catch(()=>void 0);return}let p=await g.review(f,a).catch(()=>null);if(!p)return;let q=(0,ad.k)(p);if(!q&&(0,ad.H)(p)&&e.getTime()-a.openedAt.getTime()>ad.R){let b="the lockfile wasn't added within 45 minutes";await g.save(a.id,{stage:"timeout",finishedAt:e,...j},a.proposalId,(0,ad.m)(a.number,"timeout",b)),h.stopped++,await g.notify({...l,kind:"stopped",reason:b}).catch(()=>void 0);return}if(!q&&(0,ad.H)(p))return void await g.save(a.id,{stage:"checks"},a.proposalId,(0,ad.m)(a.number,"checks","waiting for the lockfile"));if(q){await g.save(a.id,{stage:"failed",finishedAt:e,...j},a.proposalId,(0,ad.m)(a.number,"failed",q)),h.stopped++,await g.notify({...l,kind:"stopped",reason:q}).catch(()=>void 0);return}if(await o())return;await g.save(a.id,{stage:"merging",...j,...k},a.proposalId,(0,ad.m)(a.number,"merging"));let r=await g.merge(f,a.fullName,a.number,a.branch,a.baseBranch,a.headSha,a.title);if(r.ok){await g.save(a.id,{stage:"merged",mergedSha:r.data.sha,finishedAt:e},a.proposalId,(0,ad.m)(a.number,"merged")),h.merged++,await g.audit(`${am.v}PR #${a.number} merged \xb7 ${a.packages.join(", ")}`.slice(0,200),a.appId).catch(()=>void 0),await g.notify({...l,kind:"merged",windowMin:d}).catch(()=>void 0);return}if(409===r.status)return void await g.save(a.id,{stage:"checks"},a.proposalId,(0,ad.m)(a.number,"checks","new commit on the PR branch, checking again"));let s=405===r.status?"GitHub refused the merge (cannot be merged)":`merge failed: ${r.error}`.slice(0,150);await g.save(a.id,{stage:"failed",finishedAt:e},a.proposalId,(0,ad.m)(a.number,"failed",s)),h.stopped++,await g.notify({...l,kind:"stopped",reason:s}).catch(()=>void 0)}let az=null;async function aA(a,b,c=$.I){if((0,ad.f)(a,az)&&!(await c()).has("devops")){az=a.getTime();try{let c=await av(a,b?.deadline??a.getTime()+5e4);c.watched&&console.log(`deps/watch: ${c.watched} PR, ${c.merged} merged, ${c.stopped} stopped`)}catch(a){console.warn("deps/watch failed:",a instanceof Error?a.name:"error")}}}var aB=a.i(691100),aC=a.i(624065);let aD={nav:[{section:"manage",after:"backups",items:[{key:"ai",label:"AI Gateway",href:"/ai",icon:"route",stage:5,ownerOnly:!0,sub:"AI & API"},{key:"api-docs",label:"API explorer",href:"/api-docs",icon:"api",stage:5,ownerOnly:!0,sub:"AI & API"}]}],palette:[{label:"AI Gateway",href:"/ai",keywords:["ai","gateway","overview"]},{label:"API keys",href:"/ai/keys",keywords:["key","token","wb_","wp_"]},{label:"Agents",href:"/ai/agents",keywords:["agent","client","mcp"]},{label:"Connect an agent",href:"/ai/connect",keywords:["mcp",...e.I.palette.connectKeywords,"gemini cli","quick start"]},{label:"Bring your own key",href:"/ai/providers",keywords:["provider","byok","cloudflare","groq","openrouter","gemini"]},{label:"Quota",href:"/ai/quota",keywords:["limit","usage","rate"]},{label:"AI logs",href:"/ai/logs",keywords:["logs","requests","usage"]},{label:"Models",href:"/ai/models",keywords:["model","llm"]},{label:"Playground",href:"/ai/playground",keywords:["chat","try","prompt"]},{label:"API explorer",href:"/api-docs",keywords:["openapi","swagger","api","v1"]}]},aE={dailySteps:[{name:"ai-usage-retention",run:g.$}]},aF={WhyAiSlot:K,RecSummarySlot:G,AiNotesSlot:C,explainBuild:a=>o({overQuota:l.A,provider:m.f.provider,complete:m.f.complete},a),dailySteps:[{name:"advisor-summary",run:q}],minuteSteps:[{name:"advisor-notes",run:h.I}]},aG={dailySteps:[{name:"ai-notes-retention",run:L.v}]},aH={nav:[{section:"manage",after:"alerts",items:[{key:"auto-actions",label:"Auto-actions",href:"/auto-actions",icon:"bolt",stage:9,ownerOnly:!0,sub:"Alerting"}]}],palette:[{label:"Auto-actions",href:"/auto-actions",keywords:["proposal","approve","reject","auto-run","rollback"]}],dailySteps:[{name:"auto-actions-retention",run:aB.t}],minuteSteps:[{name:"auto-actions",run:aB.Z},{name:"deps-pr-watch",run:aA}],settingsTabs:[{key:"office-auto-run",label:"Auto-actions",Tab:T}]},aI={telegramCallback:aC.proposalCallback},aJ=function(...a){let b={nav:[],palette:[]};for(let c of a){for(let a of c.nav??[]){let c=b.nav.find(b=>b.section===a.section&&b.after===a.after);c?c.items=[...c.items,...a.items]:b.nav.push({...a,items:[...a.items]})}b.palette.push(...c.palette??[]),c.dailySteps?.length&&(b.dailySteps=[...b.dailySteps??[],...c.dailySteps]),c.minuteSteps?.length&&(b.minuteSteps=[...b.minuteSteps??[],...c.minuteSteps]),c.WhyAiSlot&&(b.WhyAiSlot=c.WhyAiSlot),c.RecSummarySlot&&(b.RecSummarySlot=c.RecSummarySlot),c.AiNotesSlot&&(b.AiNotesSlot=c.AiNotesSlot),c.DevNotesSlot&&(b.DevNotesSlot=c.DevNotesSlot),c.office&&(b.office=c.office),c.settingsTabs?.length&&(b.settingsTabs=[...b.settingsTabs??[],...c.settingsTabs]),c.telegramCallback&&(b.telegramCallback=c.telegramCallback),c.runner&&(b.runner=c.runner),c.RepoPreviewSlot&&(b.RepoPreviewSlot=c.RepoPreviewSlot),c.explainBuild&&(b.explainBuild=c.explainBuild)}return b}({...aD,palette:(c=aD.palette??[],d={label:"Ask AI",href:"/ai/ask",keywords:["ask","question","answer"]},(b=c.findIndex(a=>"/ai"===a.href))<0?[...c,d]:[...c.slice(0,b+1),d,...c.slice(b+1)])},{dailySteps:[{name:"ai-agents-prune",run:()=>(0,f.w)()}]},aE,{},{},aG,aH,aF,aI);a.s(["extensions",0,aJ],534908)},285138,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call AutoRollbackForm() from the server but AutoRollbackForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/actions/auto-rollback-form.tsx","AutoRollbackForm");a.s(["AutoRollbackForm",0,b])},411642,a=>{var b=a.i(285138);a.n(b)},305093,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call AutoRunForm() from the server but AutoRunForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/actions/auto-run-form.tsx","AutoRunForm");a.s(["AutoRunForm",0,b])},581156,a=>{var b=a.i(305093);a.n(b)},173666,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call AutoSecurityForm() from the server but AutoSecurityForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/actions/auto-security-form.tsx","AutoSecurityForm");a.s(["AutoSecurityForm",0,b])},65932,a=>{var b=a.i(173666);a.n(b)},140025,a=>{var b=a.i(211857);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call DismissAllNotesButton() from the server but DismissAllNotesButton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/slots/dismiss-note-button.tsx","DismissAllNotesButton"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call DismissNoteButton() from the server but DismissNoteButton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/slots/dismiss-note-button.tsx","DismissNoteButton");a.s(["DismissAllNotesButton",0,c,"DismissNoteButton",0,d])},791450,a=>{var b=a.i(140025);a.n(b)},581542,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call RegenerateButton() from the server but RegenerateButton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/slots/regenerate-button.tsx","RegenerateButton");a.s(["RegenerateButton",0,b])},185538,a=>{var b=a.i(581542);a.n(b)},402242,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call WhyAi() from the server but WhyAi is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/private/slots/why-ai.tsx","WhyAi");a.s(["WhyAi",0,b])},976517,a=>{var b=a.i(402242);a.n(b)}]})();
|
|
2
4
|
|
|
3
5
|
//# sourceMappingURL=src_0uitfl3c1mdqb._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
(()=>{"use strict";module.exports=[486747,427110,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(619089),e=a.i(368114);function f(a,b,c=25){let d=a.length,e=Math.max(1,Math.ceil(d/c)),g=Math.min(Math.max(Number.isFinite(b)?Math.floor(b):1,1),e),h=(g-1)*c,i=a.slice(h,h+c);return{rows:i,page:g,pages:e,from:0===d?0:h+1,to:h+i.length,total:d}}a.s(["f",0,function({page:a,pages:f,text:g,onPage:h,bleed:i=!1}){let j=(0,c.useRef)(null),k=(0,c.useRef)(null);if((0,c.useEffect)(()=>{null!==k.current&&(j.current?.querySelectorAll("button")[k.current]?.focus(),k.current=null)},[a]),f<=1)return null;let l=(a,b)=>{(a<=1||a>=f)&&(k.current=b),h(a)};return(0,b.jsxs)("div",{className:(0,e.f)("flex items-center gap-2 border-t border-line px-[18px] py-2.5 text-[12.5px] text-ink-soft",i?"-mx-[18px] -mb-4 mt-2":"max-[720px]:px-3.5"),children:[(0,b.jsx)("span",{role:"status",children:g}),(0,b.jsxs)("span",{ref:j,className:"ml-auto flex gap-1.5",children:[(0,b.jsx)(d.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Previous page",disabled:a<=1,onClick:()=>l(a-1,1),children:"‹ Previous"}),(0,b.jsx)(d.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Next page",disabled:a>=f,onClick:()=>l(a+1,0),children:"Next ›"})]})]})}],486747),a.s(["k",0,function(a,b,c,d){return d<=1?null:b>0&&null!==c?c:a[0]?.id??null},"$",0,f,"f",0,function(a,b,c,d=25){let e=null===c?0:Math.max(0,a.findIndex(a=>a.id===c)),g=f(a.slice(e),b,d);return 0===e||g.page>1?{...g,shift:e}:{...f(a,1,d),shift:0}},"z",0,function(a,b=0,c=a.total){return`${a.from+b}–${a.to+b} of ${c}`}],427110)},773998,a=>{a.s(["O",0,a=>`${a} item${1===a?"":"s"}`,"J",0,function(a,b){let c=Math.max(0,b.getTime()-a.getTime());return c<6e4?"now":c<36e5?`${Math.floor(c/6e4)} min ago`:c<864e5?`${Math.floor(c/36e5)} h ago`:`${Math.floor(c/864e5)} d ago`}])}]})();
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=src_0yxy3bklfxtzz._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[[868358,a=>{var b=a.i(211857);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call AppActions() from the server but AppActions is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/app-actions.tsx","AppActions"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call PromoteStaged() from the server but PromoteStaged is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/app-actions.tsx","PromoteStaged");a.s(["AppActions",0,c,"PromoteStaged",0,d])},537728,a=>{var b=a.i(868358);a.n(b)},296045,a=>{var b=a.i(211857);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call EnvCard() from the server but EnvCard is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/env-card.tsx","EnvCard");(0,b.registerClientReference)(function(){throw Error("Attempted to call envFindingText() from the server but envFindingText is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/env-card.tsx","envFindingText"),a.s(["EnvCard",0,c])},645720,a=>{var b=a.i(296045);a.n(b)},199364,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call LinkDialog() from the server but LinkDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/link-dialog.tsx","LinkDialog");a.s(["LinkDialog",0,b])},466627,a=>{var b=a.i(199364);a.n(b)},252650,a=>{var b=a.i(907997),c=a.i(906974),d=a.i(395936);a.i(570396);var e=a.i(673727),f=a.i(252302),g=a.i(649247),h=a.i(803681),i=a.i(685865),j=a.i(701702),k=a.i(513553),l=a.i(154756),m=a.i(293167),n=a.i(954296),o=a.i(686251),p=a.i(605826),q=a.i(715513),r=a.i(414280),s=a.i(791444),t=a.i(473083),u=a.i(109307),v=a.i(534908),w=a.i(875016),x=a.i(840784),y=a.i(532620),z=a.i(858806),A=a.i(513701),B=a.i(930270),C=a.i(396667),D=a.i(944571),E=a.i(30184),F=a.i(565255),G=a.i(751263),H=a.i(27522),I=a.i(683439),J=a.i(960186),K=a.i(558418),L=a.i(245710),M=a.i(240387),N=a.i(139138),O=a.i(657582),P=a.i(469762),Q=a.i(556987),R=a.i(631107),S=a.i(505237),T=a.i(570845);function U({data:a,link:d}){return(0,b.jsxs)(b.Fragment,{children:[a.lines.map(a=>(0,b.jsxs)("div",{className:"former"===a.tag?"text-ink-faint":void 0,children:[d&&"former"!==a.tag?(0,b.jsxs)("a",{href:`https://${a.name}`,target:"_blank",rel:"noreferrer",children:[(0,b.jsx)(j.MaskedText,{text:a.name,inLink:!0})," ",(0,b.jsx)(c.f,{size:14,"aria-hidden":!0,className:"inline align-[-2px]"})]}):(0,b.jsx)(j.MaskedText,{text:a.name}),a.tag&&(0,b.jsxs)(b.Fragment,{children:[" ",(0,b.jsx)(h.E,{children:"redirect"===a.tag&&a.target?(0,b.jsxs)(b.Fragment,{children:["→ ",(0,b.jsx)(j.MaskedText,{text:a.target})]}):a.tag})]})]},a.name)),a.more>0&&(0,b.jsxs)("div",{className:"text-ink-faint",children:["+",a.more," more"]})]})}let V={github:"https://github.com/",gitlab:"https://gitlab.com/",bitbucket:"https://bitbucket.org/"},W=encodeURIComponent;function X(a){return"supabase_project"===a.kind?{label:`Supabase \xb7 ${a.name}`,href:`https://supabase.com/dashboard/project/${W(a.externalId)}`}:"neon_project"===a.kind?{label:`Neon \xb7 ${a.name}`,href:`https://console.neon.tech/app/projects/${W(a.externalId)}`}:"firestore"===a.kind?{label:`Firebase \xb7 ${a.name}`,href:`https://console.firebase.google.com/project/${W(a.externalId)}/overview`}:null}var Y=a.i(679594),Z=a.i(863858),$=a.i(182357),_=a.i(968715),aa=a.i(228173),ab=a.i(768183),ac=a.i(393260),ad=a.i(537728),ae=a.i(718064),af=a.i(645720),ag=a.i(466627),ah=a.i(881868),ai=a.i(991813),aj=a.i(143821);let ak="grid grid-cols-[170px_minmax(0,1fr)] gap-x-4 gap-y-2.5 max-[720px]:grid-cols-1 max-[720px]:gap-y-1 [&_dd]:min-w-0 [&_dd]:[overflow-wrap:anywhere] [&_dt]:text-ink-soft",al="font-mono text-[12.5px]",am=["details","metrics","deployments","logs"];async function an({params:a,searchParams:c}){var m,r,H,K,R,$;let ah,ai,ar,as,at,[{id:au},av]=await Promise.all([a,c]),aw=await (0,u.I)();(0,I.f)(au)||(0,e.notFound)();let ax=new Date,ay=(0,S.z)(aw.role),az=(0,w.T)(ax,au).catch(()=>null),[aA,aB,aC,aD,aE,aF,aG,aH,aI,aJ,aK]=await Promise.all([(0,x.Z)(au,ax),(0,A.P)(au,ax),(0,z.K)({appId:au}),(0,A.M)(au,new Date(ax.getTime()-864e5*_.F)),(0,E.P)(),(0,y.p)(),ay?(0,y.S)():Promise.resolve([]),(0,y.e)(),(0,D.c)(au).catch(()=>null),(0,B.j)(au).catch(()=>null),(0,C.I)()]);aA||(0,e.notFound)();let aL=await az,aM=aL&&aL.map(a=>(0,Q.d)(a,aH)),aN=(0,Z.f)(),aO="viewer"!==aw.role&&aN?(0,Y.M)(aA.teamSlug,aA.name):null,aP=(0,S.k)(aA),aQ=(0,M.f)({...aA,database:aA.database?{id:aA.database.id,kind:aA.database.kind,name:(0,Q.X)(aH,aA.database.id)}:null},ax),{WhyAiSlot:aR,AiNotesSlot:aS,DevNotesSlot:aT}=v.extensions,aU="owner"===aw.role&&aR?(0,b.jsx)(aR,{appId:aA.id}):null,aV="owner"===aw.role&&aS?(0,b.jsx)(aS,{appId:aA.id}):null,aW=aA.monitors.length>0&&aA.monitors.every(a=>a.ownerPaused),aX=aN?`https://${aA.domain}`:null,aY=(0,O.h)(aC),aZ=a=>{let b=a?aC.find(b=>b.externalId===a):void 0;return b?{id:b.externalId,sha:(0,P._)(b.commitSha).replace("—","")}:null},a$=aZ(aY.stagedId),a_=(0,G.g)(aA.productionSource,aA.productionBranch,ax),a0=am.find(a=>a===av.tab)??"details",a1="logs"===a0&&"viewer"===aw.role?"details":a0,a2=aF.find(a=>a.appId===aA.id&&a.zoneName),a3=aX?(m={teamSlug:aA.teamSlug,projectName:aA.name,repo:aA.repo,repoType:aA.repoType,siteUrl:aX,dbs:aA.database?[{...aA.database,name:(0,Q.X)(aH,aA.database.id)}]:[],zone:a2?{accountId:a2.cfAccountId,name:a2.zoneName}:null},ai=[],m.teamSlug&&ai.push({label:"Vercel project",href:`https://vercel.com/${W(m.teamSlug)}/${W(m.projectName)}`}),(ar=m.repoType?V[m.repoType]:void 0)&&m.repo&&ai.push({label:"Git repository",href:`${ar}${m.repo.split("/").map(W).join("/")}`}),ai.push({label:"Live site",href:m.siteUrl}),(as=[...m.dbs.map(X).filter(a=>null!==a),...m.zone?.accountId?[{label:`Cloudflare \xb7 ${m.zone.name}`,href:`https://dash.cloudflare.com/${W(m.zone.accountId)}/${W(m.zone.name)}`}]:[]]).length?[...ai,"---",...as]:ai):[];return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(i.AutoRefresh,{at:ax.getTime()}),(0,b.jsx)(h.L,{crumbs:[{label:"Applications",href:"/apps"},{label:aA.name}],badge:(0,b.jsx)(l.g,{kind:"app"}),title:aA.name,actions:(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aj.WhyStatus,{state:aP.state,label:aP.label,problems:aQ,nowMs:ax.getTime(),aiSlot:aU}),a3.length>0&&(0,b.jsx)(q.RowMenu,{button:!0,label:"Open in",items:a3.map(a=>"---"===a?a:{label:a.label,href:a.href})}),ay&&(0,b.jsx)(ad.AppActions,{app:{id:aA.id,name:aA.name,siteUrl:aX,paused:aW,monitorCount:aA.monitors.length},owner:"owner"===aw.role,current:aZ(aY.currentId),previous:aZ(aY.previousId),rolledBack:null!==a$})]})}),a$&&(0,b.jsx)("div",{className:"mb-4",children:(0,b.jsx)(h.M,{tone:"warning",title:"Rolled back: new pushes don't go live until you promote one.",action:ay?(0,b.jsx)(ad.PromoteStaged,{app:{id:aA.id,name:aA.name},staged:a$}):void 0})}),(0,b.jsxs)(t.Tabs,{defaultValue:a1,className:"gap-4",children:[(0,b.jsxs)(t.TabsList,{variant:"line",children:[(0,b.jsx)(t.TabsTrigger,{value:"details",children:"Details"}),(0,b.jsx)(t.TabsTrigger,{value:"metrics",children:"Metrics"}),(0,b.jsx)(t.TabsTrigger,{value:"deployments",children:"Deployments"}),"viewer"!==aw.role&&(0,b.jsx)(t.TabsTrigger,{value:"logs",children:"Logs"})]}),(0,b.jsxs)(t.TabsContent,{value:"details",children:[(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-4 min-[1001px]:grid-cols-2",children:[(0,b.jsx)(h.N,{title:"Details",meta:(0,b.jsx)(n.Src,{kind:"api"}),children:(0,b.jsxs)("dl",{className:ak,children:[(0,b.jsx)("dt",{children:"Name"}),(0,b.jsx)("dd",{children:(0,b.jsx)(j.Masked,{kind:"app",real:aA.name})}),(0,b.jsx)("dt",{children:"Domains"}),(0,b.jsx)("dd",{children:(0,b.jsx)(U,{data:aA.domainLines,link:aN})}),(0,b.jsx)("dt",{children:"Framework"}),(0,b.jsx)("dd",{children:aA.framework??"—"}),(0,b.jsx)("dt",{children:"Function region"}),(0,b.jsx)("dd",{className:(0,N.f)(al,!aA.functionRegions.length&&"text-ink-faint"),children:aA.functionRegions.join(", ")||"—"}),(0,b.jsx)("dt",{children:"Production branch"}),(0,b.jsx)("dd",{className:al,children:aA.productionBranch??"—"}),a_&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("dt",{children:"Production built from"}),(0,b.jsxs)("dd",{children:[(0,b.jsx)("span",{className:al,children:a_.text}),a_.warning&&(0,b.jsx)("span",{className:"ml-2 rounded border border-warn-icon/40 bg-warn-soft px-1.5 py-px text-[11.5px] text-warn",title:a_.warning,children:"Update PRs need your approval"})]})]}),(0,b.jsx)("dt",{children:"Repository"}),(0,b.jsx)("dd",{className:(0,N.f)(al,!aA.repo&&"text-ink-faint"),children:aA.repo?(0,b.jsx)(j.Masked,{kind:"repo",real:aA.repo}):"—"}),(0,b.jsx)("dt",{children:"Created"}),(0,b.jsx)("dd",{children:aA.createdAt?(0,P.H)(aA.createdAt):"—"})]})}),(0,b.jsx)(h.N,{title:"Status",children:(0,b.jsxs)("dl",{className:ak,children:[(0,b.jsx)("dt",{children:"Status"}),(0,b.jsx)("dd",{children:(0,b.jsx)(aj.WhyStatus,{state:aP.state,label:aP.label,problems:aQ,nowMs:ax.getTime(),aiSlot:aU})}),(0,b.jsx)("dt",{children:"Database"}),(0,b.jsxs)("dd",{children:[aA.database?(0,b.jsx)(aa.y,{db:aA.database}):(0,b.jsx)("span",{className:"text-ink-faint",children:"None"}),ay&&(0,b.jsxs)(b.Fragment,{children:[" ",(0,b.jsx)(ag.LinkDialog,{app:{id:aA.id,name:aA.name},options:aG,current:aA.database?.id??null,suggested:(0,J.U)(aA.name,aG)})]})]}),(0,b.jsx)("dt",{children:"Uptime 30 days"}),(0,b.jsx)("dd",{className:al,children:(0,P.C)(aA.uptime30)}),(0,b.jsx)("dt",{children:"Response 24 h"}),(0,b.jsxs)("dd",{className:al,children:["p50 ",(0,P.p)(aA.response.p50)," · p95 ",(0,P.p)(aA.response.p95)]}),(0,b.jsx)("dt",{children:"Last deploy"}),(0,b.jsx)("dd",{children:aA.lastDeploy?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:al,children:(0,P._)(aA.lastDeploy.commitSha)})," · ",(0,P.$)(aA.lastDeploy,ax)]}):"—"}),(0,b.jsx)("dt",{children:"Monitors"}),(0,b.jsxs)("dd",{children:[0===aA.monitors.length?(0,b.jsx)("span",{className:"text-ink-faint",children:"None"}):aA.monitors.map(a=>{let c=(0,S.M)({...a,appGone:aA.gone}),e=("err"===c.state||"warn"===c.state)&&!a.maintUntil,f=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(o.Z,{state:c.state}),(0,b.jsxs)("span",{className:"sr-only",children:[c.label,": "]}),(0,b.jsx)("span",{className:al,children:a.path})]});return e?(0,b.jsx)(d.default,{href:"/uptime",title:`${c.label}. See why on Uptime`,className:"mr-2.5 inline-flex items-center gap-1.5",children:f},a.id):(0,b.jsx)("span",{title:c.label,className:"mr-2.5 inline-flex items-center gap-1.5",children:f},a.id)}),aA.monitors.filter(a=>a.move&&!aA.gone).map(a=>(0,b.jsx)("div",{className:"mt-1",children:(0,b.jsx)(T.DomainMoved,{monitorId:a.id,from:a.move.from,to:a.move.to,canAct:ay})},`move-${a.id}`))]})]})})]}),(0,b.jsx)("div",{className:"mt-4",children:(0,b.jsx)(ap,{app:{id:aA.id,name:aA.name},security:aA.security,canAct:ay&&!aA.gone,now:ax,eol:aE})}),aJ&&aI&&(aI.connected||aI.link)&&(0,b.jsx)("div",{className:"mt-4",children:(0,b.jsx)(ae.f,{app:{id:aA.id,name:aA.name},view:aJ,canAct:ay&&!aA.gone,owner:"owner"===aw.role,now:ax,devopsOff:aK.has("devops")})}),ay&&!aA.gone&&(0,b.jsx)("div",{className:"mt-4",children:(0,b.jsx)(af.EnvCard,{appId:aA.id})}),aI&&(aI.connected||aI.link)&&(0,b.jsx)("div",{className:"mt-4",children:(0,b.jsx)(aq,{app:{id:aA.id,name:aA.name},view:aI,suggestion:aI.link?null:(R=aA.name,$=aI,(ah=(0,F.J)(R,$.repos))?{...ah,fullName:$.repos.find(a=>a.id===ah.repoId).fullName}:null),owner:"owner"===aw.role,canAct:ay,now:ax})}),"owner"===aw.role&&aT&&(0,b.jsx)("div",{className:"mt-4",children:(0,b.jsx)(aT,{appId:aA.id})}),aM&&(aM.length>0||aV)&&(0,b.jsx)("div",{className:"mt-4",children:(0,b.jsx)(k.f,{items:aM,canDismiss:ay,showSubject:!1,hideWhenEmpty:!0,notes:aV})})]}),(0,b.jsx)(t.TabsContent,{value:"metrics",keepMounted:!0,children:(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-4 min-[1001px]:grid-cols-3",children:[(0,b.jsx)(h.N,{title:"Response time",meta:(0,b.jsxs)(b.Fragment,{children:["24 h · ms",(0,b.jsx)(n.Src,{kind:"own"})]}),children:(0,b.jsx)(f.t,{values:aB.response,second:aB.median,ticks:(r=aB.first,H=aB.sizeMs,at=r+(K=aB.response.length)*H,aD.filter(a=>a.at.getTime()>=r&&a.at.getTime()<at).map(a=>{let b;return{x:Math.round(Math.min((a.at.getTime()-r)/H,K-1)/Math.max(1,K-1)*4e3)/10,title:`${"error"===(b=a.state)?"Deploy failed":"building"===b?"Deploying":"Deployed"} ${(0,P._)(a.sha)} \xb7 ${(0,L.U)(a.at)}`}})),width:400,height:120,fluid:!0,tone:"err"===aP.state?"err":"accent",label:"Response time p95 and p50 in 30-minute steps, last 24 hours, with production deploys"})}),(0,b.jsx)(h.N,{title:"Page views",meta:(0,b.jsxs)(b.Fragment,{children:["24 h",(0,b.jsx)(n.Src,{kind:"api"})]}),children:(0,b.jsx)(ao,{pv:aA.pageViews,note:aA.pageViewsNote,now:ax})}),(0,b.jsx)(h.N,{title:"5xx responses",meta:(0,b.jsxs)(b.Fragment,{children:["24 h",(0,b.jsx)(n.Src,{kind:"own"})]}),children:(0,b.jsx)(f.t,{values:aB.errors,width:400,height:120,fluid:!0,tone:"err",label:"5xx responses in 30-minute steps, last 24 hours"})})]}),(0,b.jsx)("p",{className:"text-[12.5px] text-ink-soft",children:"Vercel's request and error metrics need a paid plan, so response time and 5xx come from our own checks and stored logs. Page views come from Vercel Web Analytics (free on Hobby up to 50k events a month), read every 30 minutes."}),(0,b.jsx)(h.N,{title:"Uptime",flush:!0,meta:(0,b.jsx)("span",{className:"text-ink-faint",children:"A dark notch marks a day with a production deploy"}),children:0===aA.monitors.length?(0,b.jsx)(g.x,{}):(0,b.jsx)(p.PlainTable,{head:["Monitor","Last 90 days","Uptime"],rows:aA.monitors.map(a=>({key:a.id,state:a.state,text:a.path,row:(0,b.jsxs)("tr",{className:s.C,children:[(0,b.jsx)("td",{className:(0,N.f)(s.z,al),children:a.path}),(0,b.jsx)("td",{className:s.z,children:(0,b.jsx)(f.n,{bars:(0,_.h)(aA.days.get(a.id),ax,_.F,function(a){let b=new Map;for(let c of[...a].sort((a,b)=>a.at.getTime()-b.at.getTime())){let a=(0,L.x)(c.at),d=`${(0,P._)(c.sha)}${"error"===c.state?" (failed)":""}`;b.set(a,[...b.get(a)??[],d])}return new Map([...b].map(([a,b])=>[a,b.join(", ")]))}(aD))})}),(0,b.jsx)("td",{className:(0,N.f)(s.z,al),children:(0,P.C)((0,_.Y)((0,_.w)(aA.days.get(a.id),ax,_.I)))})]})}))})})]})}),(0,b.jsx)(t.TabsContent,{value:"deployments",keepMounted:!0,children:(0,b.jsx)(h.N,{flush:!0,children:0===aC.length?(0,b.jsx)(g.y,{}):(0,b.jsx)(p.PlainTable,{head:ab.G,rows:(0,ab.C)(aC,{canAct:ay,explain:"owner"===aw.role&&!!v.extensions.explainBuild,now:ax})})})}),"viewer"!==aw.role&&(0,b.jsx)(t.TabsContent,{value:"logs",children:(0,b.jsx)(h.N,{flush:!0,children:(0,b.jsx)(ac.LogViewer,{mode:"live",apps:[],appId:aA.id,initial:[],vercelUrl:aO})})})]})]})}function ao({pv:a,note:c,now:d}){return a?a.enabled?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("p",{className:"mb-2 flex flex-wrap items-baseline gap-x-2 gap-y-0.5",children:[(0,b.jsx)("span",{className:"text-[22px] font-semibold tracking-[-0.02em]",children:a.total.toLocaleString("en-US")}),(0,b.jsxs)("span",{className:"text-[12.5px] text-ink-soft",children:[1===a.total?"view":"views"," · ",null===a.visitors?"—":a.visitors.toLocaleString("en-US")," ",1===a.visitors?"visitor":"visitors"]}),(0,R.Z)(a.readAt,d)&&(0,b.jsxs)("span",{className:"ml-auto text-[12px] text-ink-faint",children:["Read ",(0,L.$)(a.readAt,d)]})]}),(0,b.jsx)(f.k,{hours:a.hours,height:80,label:`Page views per hour, last 24 hours: ${a.total} views from ${a.visitors??"an unknown number of"} visitors`})]}):(0,b.jsxs)("div",{className:"flex min-h-[120px] flex-col gap-1.5 text-[12.5px] text-ink-soft",children:[(0,b.jsx)("p",{className:"text-[13px] text-ink",children:"Web Analytics is off for this project."}),(0,b.jsxs)("ol",{className:"list-decimal space-y-1 pl-4",children:[(0,b.jsx)("li",{children:"Enable Web Analytics in the Vercel project (Analytics tab)."}),(0,b.jsxs)("li",{children:["Add ",(0,b.jsx)("code",{className:"font-mono text-[12px] text-ink",children:"<Analytics />"})," from ",(0,b.jsx)("code",{className:"font-mono text-[12px] text-ink",children:"@vercel/analytics"})," to the app's root layout and redeploy."]})]}),(0,b.jsx)("p",{className:"mt-auto text-ink-faint",children:"Free on Hobby up to 50k events a month."})]}):(0,b.jsx)("p",{className:"grid h-[120px] place-items-center text-center text-[12.5px] text-ink-soft",children:c??"Reading page views…"})}function ap({app:a,security:c,canAct:d,now:e,eol:f}){let g=(0,$.g)(c);return(0,b.jsxs)(h.N,{title:"Security",meta:(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(n.Src,{kind:"own"}),d&&(0,b.jsx)(ai.SecurityCheckButton,{appId:a.id,appName:a.name})]}),flush:!0,children:[(0,b.jsxs)("div",{className:"px-[18px] pb-4 pt-2",children:[(0,b.jsxs)("dl",{className:ak,children:[(0,b.jsx)("dt",{children:"Next.js"}),(0,b.jsx)("dd",{children:c?.version?(0,b.jsx)("span",{className:al,children:c.version}):c?.status==="unknown"?(0,b.jsxs)(b.Fragment,{children:["— ",(0,b.jsx)("span",{className:"text-ink-faint",children:c.reason})]}):"—"}),(0,b.jsxs)("dt",{children:["End of life ",(0,b.jsx)(n.Src,{kind:"api",children:"endoflife.date"})]}),(0,b.jsx)("dd",{children:(0,b.jsx)(ar,{version:c?.version??null,eol:f,now:e})}),(0,b.jsx)("dt",{children:"Checked"}),(0,b.jsx)("dd",{children:c?(0,L.$)(c.checkedAt,e):"—"})]}),g&&(0,b.jsxs)("p",{className:(0,N.f)("mt-3 flex items-start gap-1.5","ok"!==g.state&&"text-ink-soft"),children:[("ok"===g.state||"warn"===g.state)&&(0,b.jsx)(o.Z,{state:g.state}),(0,b.jsx)("span",{children:g.text})]})]}),(0,$.X)(c)&&(0,b.jsx)(p.PlainTable,{head:["ID","Severity","Summary","Fix"],rows:c.findings.map(a=>({key:a.id,state:a.severity,text:[a.id,a.cve,a.summary].join(" "),row:(0,b.jsxs)("tr",{className:s.C,children:[(0,b.jsxs)("td",{className:s.z,children:[(0,b.jsx)("a",{href:`https://osv.dev/vulnerability/${encodeURIComponent(a.id)}`,target:"_blank",rel:"noopener",className:al,children:a.id}),a.cve&&(0,b.jsx)("div",{className:(0,N.f)(al,"mt-0.5 text-xs text-ink-faint"),children:a.cve})]}),(0,b.jsx)("td",{className:s.z,children:(0,b.jsx)(m.s,{severity:a.severity})}),(0,b.jsx)("td",{className:(0,N.f)(s.z,s.M),children:a.summary||(0,b.jsx)("span",{className:"text-ink-faint",children:"No summary"})}),(0,b.jsx)("td",{className:(0,N.f)(s.z,al),children:a.fixed?`Fixed in ${a.fixed}`:(0,b.jsx)("span",{className:"text-ink-faint",children:"No fix yet"})})]})}))})]})}function aq({app:a,view:d,suggestion:e,owner:f,canAct:g,now:i}){let k=d.link?.repo??null,l=k?(0,H.N)(k.actions,k.defaultBranch):null,m=!k?.actions||"none"in k.actions?null:k.actions;return(0,b.jsx)(h.N,{title:"Repository",meta:(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(n.Src,{kind:"api",children:"GitHub"}),k&&g&&d.connected&&(0,b.jsx)(ah.RefreshActionsButton,{appId:a.id})]}),children:k?(0,b.jsxs)("dl",{className:ak,children:[(0,b.jsx)("dt",{children:"Repository"}),(0,b.jsxs)("dd",{children:[(0,b.jsx)(r.f,{href:k.htmlUrl??`https://github.com/${k.fullName}`,target:"_blank",rel:"noopener",className:al,children:(0,b.jsx)(j.Masked,{kind:"repo",real:k.fullName})}),(0,b.jsxs)("span",{className:"text-ink-faint",children:[" · ",k.private?"private":"public",k.archived?" · archived":"",k.goneAt?" · no longer shared with the token":""]}),f&&d.connected&&(0,b.jsxs)(b.Fragment,{children:[" ",(0,b.jsx)(ah.RepoDialog,{app:a,options:d.options,current:k.id,suggested:null,label:"Change"})]})]}),(0,b.jsx)("dt",{children:"Linked"}),(0,b.jsx)("dd",{className:"text-ink-soft",children:(0,H.z)(d.link.source)}),(0,b.jsx)("dt",{children:"Default branch"}),(0,b.jsx)("dd",{className:al,children:k.defaultBranch??"—"}),(0,b.jsx)("dt",{children:"Last push"}),(0,b.jsx)("dd",{children:k.pushedAt?(0,L.$)(k.pushedAt,i):"—"}),(0,b.jsx)("dt",{children:"GitHub Actions"}),(0,b.jsxs)("dd",{children:[(0,b.jsx)(o.F,{state:l.state,children:l.label}),m&&(0,b.jsxs)("span",{className:"text-ink-soft",children:[" · ",m.name??"workflow",m.runNumber?` #${m.runNumber}`:"",m.sha?(0,b.jsxs)(b.Fragment,{children:[" · ",(0,b.jsx)("span",{className:al,children:(0,P._)(m.sha)})]}):null,m.at?` \xb7 ${(0,L.$)(new Date(m.at),i)}`:""]}),m?.url&&(0,Z.f)()&&(0,b.jsxs)(b.Fragment,{children:[" · ",(0,b.jsxs)("a",{href:m.url,target:"_blank",rel:"noopener",children:["Open run ",(0,b.jsx)(c.f,{size:13,"aria-hidden":!0,className:"inline align-[-2px]"})]})]}),k.actionsCheckedAt&&(0,b.jsxs)("span",{className:"block text-[12px] text-ink-faint",children:["Read ",(0,L.$)(k.actionsCheckedAt,i)]})]})]}):(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2 text-ink-soft",children:[e?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("span",{children:["Suggested: ",(0,b.jsx)("span",{className:al,children:(0,b.jsx)(j.Masked,{kind:"repo",real:e.fullName})})," (",(0,H._)(e.why),")."]}),f&&(0,b.jsx)(ah.ConfirmRepo,{appId:a.id,repoId:e.repoId,fullName:e.fullName})]}):(0,b.jsxs)("span",{children:["No repository linked. ",d.options.length?"None matches the app's name.":"Sync GitHub on Connections to list your repositories."]}),f&&d.options.length>0&&(0,b.jsx)(ah.RepoDialog,{app:a,options:d.options,current:null,suggested:e?.repoId??null,label:"Choose…"})]})})}function ar({version:a,eol:c,now:d}){let e=(0,K.e)(a,c,d);return"unknown"===e.state?(0,b.jsx)("span",{className:"text-ink-faint",children:e.text}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(o.F,{state:e.state,children:e.text}),e.note&&(0,b.jsxs)("span",{className:"text-ink-faint",children:[" · ",e.note]})]})}a.s(["default",0,an,"maxDuration",0,60],252650)},228056,a=>{var b=a.i(211857);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call ConfirmRepo() from the server but ConfirmRepo is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/repo-dialog.tsx","ConfirmRepo"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call RefreshActionsButton() from the server but RefreshActionsButton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/repo-dialog.tsx","RefreshActionsButton"),e=(0,b.registerClientReference)(function(){throw Error("Attempted to call RepoDialog() from the server but RepoDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/repo-dialog.tsx","RepoDialog");a.s(["ConfirmRepo",0,c,"RefreshActionsButton",0,d,"RepoDialog",0,e])},881868,a=>{var b=a.i(228056);a.n(b)},300400,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call SecurityCheckButton() from the server but SecurityCheckButton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/security-check-button.tsx","SecurityCheckButton");a.s(["SecurityCheckButton",0,b])},991813,a=>{var b=a.i(300400);a.n(b)},340514,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call WhyStatus() from the server but WhyStatus is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/apps/[id]/why-status.tsx","WhyStatus");a.s(["WhyStatus",0,b])},143821,a=>{var b=a.i(340514);a.n(b)},492324,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call RowMenu() from the server but RowMenu is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/row-menu.tsx","RowMenu");a.s(["RowMenu",0,b])},715513,a=>{var b=a.i(492324);a.n(b)}],102158,function(a){a.n(a.i(252650))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=src_1-k3gvxaqli74._.js.map
|