watchbell 1.2.5 → 1.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +37 -27
- package/server/.next/server/app/(console)/apps/[id]/page.js +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +26 -16
- package/server/.next/server/app/(console)/deployments/page.js +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +60 -60
- 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 +63 -63
- 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 +45 -45
- 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 +42 -42
- 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 +14 -14
- 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 +14 -14
- 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.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 +23 -23
- 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]__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]__02h-ec_gusm_2._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0exicuoq6gmph._.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]__01vos42kjq9nn._.js → [root-of-the-server]__0655w3_d4ejfb._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0-ftc1hhcjcl2._.js → [root-of-the-server]__09dk9k-9q4d16._.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]__1gt_-h9n48pwi._.js → [root-of-the-server]__0c0pkv3an1lg-._.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]__0r88w3qhrtzz_._.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]__0rb1-3538-pq9._.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]__0ikiyg3u02ofv._.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]__0070gc9ml0mf7._.js → [root-of-the-server]__0r_6xpjwcdrda._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0rctmpp7p7cp9._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1hl9k6e1o7xh2._.js → [root-of-the-server]__0s8wo4espz6eu._.js} +2 -2
- 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]__0sabwm3w1rm0q._.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]__0x6qqr79pq_j9._.js → [root-of-the-server]__0whk62ebfu1u0._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1vqs8o9bv1wbk._.js → [root-of-the-server]__0x4_tt5v17fx3._.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]__01yzy5zxsekxi._.js → [root-of-the-server]__0ycpg444s91lb._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0z3hf530bwcq_._.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]__1-xgpr5q148ze._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1bce11artflky._.js → [root-of-the-server]__12lrpnd-dhawi._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__14-pt1-s1o5ex._.js +3 -0
- 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]__05jzua9637vlo._.js → [root-of-the-server]__15vqo7amys573._.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]__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]__08-puk3_gawjd._.js → [root-of-the-server]__17jngidngj3rb._.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]__1bg8grh9kfims._.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]__1c1nhm-kj5kqu._.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]__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]__1kr6f03r82mk6._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1kwldcrcmwc0x._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1lq25064c4ny_._.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]__1nm0sjvuf9jrb._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0i75m0es1m3hf._.js → [root-of-the-server]__1p3fqi03x5du8._.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]__195ax9c1nsi5b._.js → [root-of-the-server]__1r24segt1slar._.js} +2 -2
- 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]__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/{_1cq1vvbp6pglr._.js → _0-ub844lc_z_a._.js} +3 -3
- package/server/.next/server/chunks/_05hhw0eql5-dv._.js +10 -0
- package/server/.next/server/chunks/{_0zj10_al6r59j._.js → _08fv52mqg619m._.js} +2 -2
- package/server/.next/server/chunks/{_1myv9csc_in08._.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/{_1n-fm2bdo9t2m._.js → _1-pv4d4qhe7to._.js} +3 -3
- package/server/.next/server/chunks/{_1e_rbkrukj0x9._.js → _13dlt388gceez._.js} +2 -2
- package/server/.next/server/chunks/_19wqm5leaaesp._.js +1 -1
- package/server/.next/server/chunks/{_0ls7sornjrg95._.js → _1b1t9p1xljuql._.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/_1l-68brbq289m._.js +10 -0
- package/server/.next/server/chunks/src_0--qn984h6czu._.js +1 -1
- package/server/.next/server/chunks/{src_0_l3dzp06o4x5._.js → src_01fd1ve-xj9xo._.js} +2 -2
- package/server/.next/server/chunks/{src_0m6xxpw2u-xv_._.js → src_049aazgsmienv._.js} +2 -2
- 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_0tw-h0otr2tgt._.js +1 -1
- package/server/.next/server/chunks/src_1a5yibsjcy1ga._.js +1 -1
- 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_0pyyxm3m1rttg._.js +9 -0
- package/server/.next/server/chunks/src_lib_13irheo9qqhgx._.js +9 -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_1_nggk_wre7qf._.js +2 -2
- 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]__0d7rvi3tmo9zf._.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]__1ctkj-25wt37o._.js → [root-of-the-server]__05gue5stvejba._.js} +3 -3
- 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]__0wi2grctadbk8._.js → [root-of-the-server]__080do5vfu69n5._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0xjg51t1__v-s._.js → [root-of-the-server]__08u1c2f2i7ru4._.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]__0amfa4t2-in-x._.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]__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]__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]__1_h_ya1h8efdj._.js → [root-of-the-server]__0tqqte5jb6jz7._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1ijizmc3ga_6o._.js → [root-of-the-server]__0xscr-8y9a4cj._.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]__18gcvkhrt73zc._.js +3 -0
- 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]__1tj-iwvrxfd1a._.js → [root-of-the-server]__1o6cysvbfkltz._.js} +1 -1
- 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]__1kfivch_kfesn._.js → [root-of-the-server]__1tgcpistmcbrd._.js} +3 -3
- 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]__1-d88ogkwql_b._.js → [root-of-the-server]__1uzqsxyxwffdo._.js} +2 -2
- 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/_0-wc6f6p0c8lv._.js +1 -1
- package/server/.next/server/chunks/ssr/_02eudwc8ieb2r._.js +2 -2
- package/server/.next/server/chunks/ssr/{_18z44n8yl5tzj._.js → _07-dfx0qix52k._.js} +2 -2
- package/server/.next/server/chunks/ssr/{_10q5jocsvw-i8._.js → _07f-svx_l12lw._.js} +2 -2
- package/server/.next/server/chunks/ssr/_08xqk3eibu5aw._.js +1 -1
- 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/_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/_0gl-ewvbhb677._.js +2 -2
- 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/{_166ljgwi6shw7._.js → _0jqrjb30bblvy._.js} +2 -2
- 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/_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/_0wo-lpqf7hr1y._.js +2 -2
- package/server/.next/server/chunks/ssr/_0zixhhc1lheoi._.js +2 -2
- 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/_19-3vzkc6rk97._.js +1 -1
- package/server/.next/server/chunks/ssr/_1_-o2s48aj4i7._.js +1 -1
- package/server/.next/server/chunks/ssr/{_0s8qoh8v5kqcm._.js → _1bc69myq83woe._.js} +2 -2
- 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/_1fc8k_0p8l00c._.js +2 -2
- 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/_1he21-bt45k8z._.js +2 -2
- package/server/.next/server/chunks/ssr/{_1qiv079hbwt43._.js → _1j61tfpfj2t9d._.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/_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/_1r7o1vx4875hu._.js +1 -1
- 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/_218164gkxgum_._.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_0y5m8cul6d7kk.js +1 -1
- 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_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_0ph020gy78gi9._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0uitfl3c1mdqb._.js +1 -1
- 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_1bg_io_v7gt71._.js +3 -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)_1vpkg9rd7v3pk._.js → src_app_(console)_0e832kna-734m._.js} +2 -2
- package/server/.next/server/chunks/ssr/{src_app_(console)_0f-d8u7sm169e._.js → src_app_(console)_0kwns5iudhgwj._.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]_1sfvku9ui1le-._.js +1 -1
- 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)_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)_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_1fj68y-bbe-xr._.js +3 -0
- package/server/.next/server/chunks/ssr/src_components_08d78uqnnmrrh._.js +1 -1
- 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_lib_0eqv8l-v8d5ze._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_1eioo4oodq-8h._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_1gauld53vvpev._.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_09ht4doed9eqi._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_lib_view_labels_ts_1uxs84z7vclz5._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_04omlb_sgy-_r._.js +2 -2
- package/server/.next/server/chunks/ssr/src_private_0iy_wyg2p1jkn._.js +1 -1
- 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/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 +319 -141
- package/server/.next/static/chunks/{1bsk5ub4zhehk.js → 0-ett1b-o34r0.js} +1 -1
- package/server/.next/static/chunks/{2w3otuq4cx1pd.js → 0-fov5gyz32mj.js} +1 -1
- package/server/.next/static/chunks/{0p14kwfj_2w_l.js → 041ko45qawas9.js} +1 -1
- package/server/.next/static/chunks/{3u-qfdthw123i.js → 0ia5361d7hoce.js} +2 -2
- package/server/.next/static/chunks/{1kwbsrtnz8o1l.js → 0m40tf7-fh2ht.js} +1 -1
- package/server/.next/static/chunks/{0o08yqz8_53p6.js → 0o6_y6xu__s6q.js} +1 -1
- package/server/.next/static/chunks/{2uk9mjknuxmxx.js → 0x1xj431cbkfa.js} +1 -1
- package/server/.next/static/chunks/{3odrzjmblvoxt.js → 0x6eipkda93fh.js} +1 -1
- package/server/.next/static/chunks/{0m3kg-eiti9zu.js → 0zj507c7ui4jt.js} +1 -1
- package/server/.next/static/chunks/{1j7e6cd8t5jar.js → 11_iva96ceble.js} +1 -1
- package/server/.next/static/chunks/15_3o9t6d7ujo.js +1 -0
- package/server/.next/static/chunks/{20pwnun2aiajo.js → 1e0iyxugtm7b0.js} +2 -2
- package/server/.next/static/chunks/{026a6w6rbx-fh.js → 1eeqy_pc_llv4.js} +1 -1
- package/server/.next/static/chunks/{19bfo1_ejzqmp.js → 1g3u_ngexgvss.js} +1 -1
- package/server/.next/static/chunks/{4126vjheqklsp.js → 1ghfc_9g9io17.js} +1 -1
- package/server/.next/static/chunks/{15x1am33zx_7r.js → 1gw40u38oaj6z.js} +1 -1
- package/server/.next/static/chunks/{1rgejqx65romt.js → 1jc9qa7xb63lp.js} +1 -1
- package/server/.next/static/chunks/{234h8_ywb6t9s.js → 1muk1ubaswhlj.js} +1 -1
- package/server/.next/static/chunks/{05rysjdxtzhu1.js → 1qug5gmo2rbaf.js} +1 -1
- package/server/.next/static/chunks/{2ehpfaelmkee6.js → 1vyf467_8v-cw.js} +1 -1
- package/server/.next/static/chunks/{0o-c28x8k05p4.js → 1z8byc-won_tq.js} +1 -1
- package/server/.next/static/chunks/{317o5vyehd1xx.js → 1zhnm25vt6hu8.js} +1 -1
- package/server/.next/static/chunks/{2_vwhuzct036v.js → 243ijh4fs2zsq.js} +1 -1
- package/server/.next/static/chunks/{231dmdy7r03nd.js → 299jy1-g0cm8n.js} +1 -1
- package/server/.next/static/chunks/{25je6-38ula0p.js → 2hscqr4n7hu7n.js} +1 -1
- package/server/.next/static/chunks/2j4kmkog1zkpo.js +1 -0
- package/server/.next/static/chunks/{35j75g5h_qytc.js → 2j9fpx77gfesr.js} +1 -1
- package/server/.next/static/chunks/{1khar1yl-th2r.js → 2jdlcu25qy00d.js} +1 -1
- package/server/.next/static/chunks/{3m825h0uvc8b6.js → 2kurh5s5u8_4-.js} +1 -1
- package/server/.next/static/chunks/2seth6dz7lydu.js +1 -0
- package/server/.next/static/chunks/{16en34z8w8ezr.js → 2t30gqjhercob.js} +1 -1
- package/server/.next/static/chunks/2y05vm9r_wxds.js +1 -0
- package/server/.next/static/chunks/{3xhrztkjpas1b.js → 2ziborutqth-2.js} +1 -1
- package/server/.next/static/chunks/{25ba60sl_edr3.js → 3-xb6vd_khwfo.js} +1 -1
- package/server/.next/static/chunks/{1y8hxiy48l5hq.js → 36e9fpbpqndu5.js} +1 -1
- package/server/.next/static/chunks/{34jajbsx3uisy.js → 3cjokqd7600_0.js} +1 -1
- package/server/.next/static/chunks/{24p8ti6ronsdf.js → 3hpyrqm98toxv.js} +1 -1
- package/server/.next/static/chunks/{1b4nkf_ka3hwr.js → 3kqiccrh_bnpl.js} +2 -2
- package/server/.next/static/chunks/{1ruv-a_ft592k.js → 3r3-9oir5c1ul.js} +1 -1
- package/server/.next/static/chunks/{0lhj_nuhfszt5.js → 3wl06e5yyzlwh.js} +1 -1
- package/server/.next/static/chunks/{1aiapinh40brx.js → 3xbsyym_tfj0u.js} +1 -1
- package/server/.next/static/chunks/{0jbau1a66ts45.js → 3ymogjp57edbj.js} +11 -11
- package/server/.next/static/chunks/{0wz_jmdt88plr.js → 422gxqrwveuyc.js} +1 -1
- package/server/.next/static/chunks/{2baqn9ru2pmf4.js → 442t8i7d46g9y.js} +2 -2
- package/server/.next/static/chunks/{3ngtjj5afybe9.js → 4545xu4sehvxc.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]__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/_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/ssr/[root-of-the-server]__0nxyo70ahj7tk._.js +0 -3
- package/server/.next/server/chunks/ssr/_0uvkx5n0kf7r2._.js +0 -3
- package/server/.next/server/chunks/ssr/_0zkmkbrbc96-h._.js +0 -3
- package/server/.next/server/chunks/ssr/_1o94cw0ml7xu7._.js +0 -3
- package/server/.next/server/chunks/ssr/src_0jxjbvkvg0bjg._.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_signin_0ndz9-tbuaohn._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_04orn7u7ufxp1._.js +0 -3
- 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/38rdy3k5li9gb.js +0 -1
- /package/server/.next/static/{00kxZsHPpI3WSDxVn1e4b → u0RcJ9L5FEEUdENisty65}/_buildManifest.js +0 -0
- /package/server/.next/static/{00kxZsHPpI3WSDxVn1e4b → u0RcJ9L5FEEUdENisty65}/_clientMiddlewareManifest.js +0 -0
- /package/server/.next/static/{00kxZsHPpI3WSDxVn1e4b → u0RcJ9L5FEEUdENisty65}/_ssgManifest.js +0 -0
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
module.exports=[[871198,(e,t,r)=>{function o(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(o=function(e){return e?r:t})(e)}r._=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=o(t);if(r&&r.has(e))return r.get(e);var a={__proto__:null},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var i=n?Object.getOwnPropertyDescriptor(e,s):null;i&&(i.get||i.set)?Object.defineProperty(a,s,i):a[s]=e[s]}return a.default=e,r&&r.set(e,a),a}},963679,e=>{var t=e.i(845656);e.n(t)},287568,(e,t,r)=>{Object.defineProperty(r,"__esModule",{value:!0});var o={default:function(){return l},useLinkStatus:function(){return i.useLinkStatus}};for(var a in o)Object.defineProperty(r,a,{enumerable:!0,get:o[a]});let n=e.r(871198),s=e.r(222260),i=n._(e.r(963679));function l(e){let t=e.legacyBehavior,r="string"==typeof e.children||"number"==typeof e.children||"string"==typeof e.children?.type,o=e.children?.type?.$$typeof===Symbol.for("react.client.reference");return!t||r||o||(e.children?.type?.$$typeof===Symbol.for("react.lazy")?console.error("Using a Lazy Component as a direct child of `<Link legacyBehavior>` from a Server Component is not supported. If you need legacyBehavior, wrap your Lazy Component in a Client Component that renders the Link's `<a>` tag."):console.error("Using a Server Component as a direct child of `<Link legacyBehavior>` is not supported. If you need legacyBehavior, wrap your Server Component in a Client Component that renders the Link's `<a>` tag.")),(0,s.jsx)(i.default,{...e})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},222260,(e,t,r)=>{t.exports=e.r(442315).vendored["react-rsc"].ReactJsxRuntime},997953,(e,t,r)=>{t.exports=e.r(442315).vendored["react-rsc"].ReactServerDOMTurbopackServer},595935,e=>{var t=e.i(997953);(0,t.registerClientReference)(function(){throw Error("Attempted to call AliasProvider() from the server but AliasProvider 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/alias.tsx","AliasProvider"),(0,t.registerClientReference)(function(){throw Error("Attempted to call DbName() from the server but DbName 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/alias.tsx","DbName"),(0,t.registerClientReference)(function(){throw Error("Attempted to call Masked() from the server but Masked 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/alias.tsx","Masked");let r=(0,t.registerClientReference)(function(){throw Error("Attempted to call MaskedText() from the server but MaskedText 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/alias.tsx","MaskedText");(0,t.registerClientReference)(function(){throw Error("Attempted to call Reveal() from the server but Reveal 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/alias.tsx","Reveal"),(0,t.registerClientReference)(function(){throw Error("Attempted to call maskedValue() from the server but maskedValue 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/alias.tsx","maskedValue"),(0,t.registerClientReference)(function(){throw Error("Attempted to call useAliasBook() from the server but useAliasBook 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/alias.tsx","useAliasBook"),(0,t.registerClientReference)(function(){throw Error("Attempted to call useMask() from the server but useMask 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/alias.tsx","useMask"),(0,t.registerClientReference)(function(){throw Error("Attempted to call usePrivacy() from the server but usePrivacy 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/alias.tsx","usePrivacy"),e.s(["MaskedText",0,r])},646822,e=>{var t=e.i(595935);e.n(t)},13733,e=>{var t=e.i(875225),r=e.i(349129),o=e.i(924924),a=e.i(618916),n=e.i(390775),s=e.i(921991),i=e.i(547499);let l=e=>e.trim().toLowerCase();var d=e.i(479301),c=e.i(455037);async function p(e){let l=e?(0,t.b)((0,t.u)(a.accounts.id,e),(0,t.u)(a.accounts.provider,"github")):(0,t.u)(a.accounts.provider,"github"),[d]=await (0,o.f)().select().from(a.accounts).where(l).orderBy((0,r.M)(a.accounts.createdAt)).limit(1);if(!d)return null;let c=(0,s.V)({ciphertext:d.credentialCiphertext,iv:d.credentialIv},(0,i.f)().OPS_ENCRYPTION_KEY);return{account:d,token:c,problem:(0,n.A)(c)}}async function u(e,t,r){let o=0;for(let a=0;a<e.length&&!(Date.now()>t);a+=5){let t=e.slice(a,a+5);o+=t.length,await Promise.allSettled(t.map(r))}return o}async function m(e,r,s={}){var i,d;let h,b,g,w=await p(e);if(!w)return{ok:!1,error:"GitHub isn't connected."};let{account:y,token:k,problem:v}=w;if(v||!k)return{ok:!1,error:v??"The credential can't be read."};let x=await (0,c.o)(k,s);if(!x.ok){let e=(0,n.E)({ok:!1,kind:"scope"===x.kind?"auth":"missing"===x.kind?"transient":x.kind,error:x.error});return e&&await (0,o.f)().update(a.accounts).set({...e,updatedAt:new Date}).where((0,t.u)(a.accounts.id,y.id)),{ok:!1,error:x.error}}let A=new Date,I=(i=await (0,o.f)().select({id:a.githubRepos.id,externalId:a.githubRepos.externalId,goneAt:a.githubRepos.goneAt}).from(a.githubRepos).where((0,t.u)(a.githubRepos.accountId,y.id)).limit(1e3),d=x.data.repos,h=new Map(i.map(e=>[e.externalId,e])),b=new Set(d.map(e=>e.id)),{insert:d.filter(e=>!h.has(e.id)),update:d.filter(e=>h.has(e.id)).map(e=>({id:h.get(e.id).id,repo:e})),gone:i.filter(e=>!b.has(e.externalId)&&!e.goneAt).map(e=>e.id)}),j=e=>({owner:e.owner,name:e.name,fullName:e.fullName,defaultBranch:e.defaultBranch,private:e.private,archived:e.archived,htmlUrl:e.htmlUrl,pushedAt:e.pushedAt});await (0,o.f)().transaction(async e=>{for(let r of I.update)await e.update(a.githubRepos).set({...j(r.repo),lastSeenAt:A,goneAt:null,updatedAt:A}).where((0,t.u)(a.githubRepos.id,r.id));I.insert.length&&await e.insert(a.githubRepos).values(I.insert.map(e=>({accountId:y.id,externalId:e.id,...j(e)}))).onConflictDoNothing({target:[a.githubRepos.accountId,a.githubRepos.externalId]}),I.gone.length&&await e.update(a.githubRepos).set({goneAt:A,updatedAt:A}).where((0,t.b)((0,t.y)(a.githubRepos.id,I.gone),(0,t.M)(a.githubRepos.goneAt)))});let R=await (0,o.f)().select().from(a.githubRepos).where((0,t.u)(a.githubRepos.accountId,y.id)).limit(1e3),C=[];x.data.truncated&&C.push("Only the 300 most recently pushed repositories are listed.");let S=0;await u(R.filter(e=>!e.archived&&!e.goneAt&&(!e.packageCheckedAt||null!==e.pushedAt&&e.pushedAt>e.packageCheckedAt)).sort((e,t)=>(t.pushedAt?.getTime()??0)-(e.pushedAt?.getTime()??0)).slice(0,10),r,async e=>{let r=await (0,c.q)(k,e.fullName,s);r.ok?await (0,o.f)().update(a.githubRepos).set({packageName:r.data,packageCheckedAt:new Date,updatedAt:new Date}).where((0,t.u)(a.githubRepos.id,e.id)):"scope"===r.kind&&S++}),S&&C.push("Some package.json files can't be read: give the token Contents read on those repositories.");let N=await (0,o.f)().select({id:a.resources.id,name:a.resources.name,meta:a.resources.meta}).from(a.resources).where((0,t.b)((0,t.u)(a.resources.kind,"app"),(0,t.M)(a.resources.goneAt))).limit(500),M=await (0,o.f)().select({appId:a.appRepos.appId,repoId:a.appRepos.repoId,source:a.appRepos.source}).from(a.appRepos).limit(500),z=e=>"string"==typeof e&&e?e:null,P=function(e,t,r){let o=new Map(t.filter(e=>!e.goneAt).map(e=>[l(e.fullName),e.id])),a=new Map(r.map(e=>[e.appId,e])),n=[];for(let t of e){if("github"!==t.repoType||!t.repo)continue;let e=o.get(l(t.repo));if(!e)continue;let r=a.get(t.id);r?.source!=="manual"&&r?.repoId!==e&&n.push({appId:t.id,repoId:e})}return n}(N.map(e=>({id:e.id,name:e.name,repo:z(e.meta.repo),repoType:z(e.meta.repoType)})),R,M);for(let e of P)await (0,o.f)().insert(a.appRepos).values({appId:e.appId,repoId:e.repoId,source:"vercel"}).onConflictDoUpdate({target:a.appRepos.appId,set:{repoId:e.repoId,source:"vercel",updatedAt:new Date},setWhere:(0,t.c)(a.appRepos.source,"manual")});let O=await (0,o.f)().selectDistinct({id:a.githubRepos.id,fullName:a.githubRepos.fullName,defaultBranch:a.githubRepos.defaultBranch}).from(a.appRepos).innerJoin(a.githubRepos,(0,t.u)(a.githubRepos.id,a.appRepos.repoId)).where((0,t.b)((0,t.u)(a.githubRepos.accountId,y.id),(0,t.M)(a.githubRepos.goneAt))).limit(500),$=0,T=await u(O,r,async e=>{let t=await (0,c.W)(k,e.fullName,e.defaultBranch,s);t.ok?await f(e.id,t.data):"scope"===t.kind&&$++});$&&C.push("Some Actions runs can't be read: give the token Actions read on those repositories."),T<O.length&&C.push(`${O.length-T} Actions status${O.length-T==1?"":"es"} left for the next run, time budget used.`);let B=await (0,c.k)(k,s);await (0,o.f)().update(a.accounts).set({lastSyncAt:A,status:"ok",lastError:null,updatedAt:A,...B.ok?{expiresAt:B.data.expiresAt}:{}}).where((0,t.u)(a.accounts.id,y.id));let D={at:A.toISOString(),actionsDenied:$,contentsDenied:S};return await (0,o.f)().insert(a.settings).values({key:(g=y.id,`github.readGaps.${g}`),value:D}).onConflictDoUpdate({target:a.settings.key,set:{value:D,updatedAt:A}}),{ok:!0,repos:R.filter(e=>!e.goneAt).length,linked:O.length,newLinks:P.length,notes:C}}async function f(e,r){await (0,o.f)().update(a.githubRepos).set({actions:r,actionsCheckedAt:new Date,updatedAt:new Date}).where((0,t.u)(a.githubRepos.id,e))}async function h(e){let[r]=await (0,o.f)().select({id:a.accounts.id}).from(a.accounts).where((0,t.u)(a.accounts.provider,"github")).limit(1);if(!r)return null;if(Date.now()>e)return"left for the next run, time budget used";let n=await m(r.id,e);return n.ok?null:n.error}async function b(e){if(!(0,d.f)(e))return{ok:!1,reason:"no-repo",error:"That app no longer exists."};let[r]=await (0,o.f)().select({r:a.githubRepos}).from(a.appRepos).innerJoin(a.githubRepos,(0,t.u)(a.githubRepos.id,a.appRepos.repoId)).where((0,t.b)((0,t.u)(a.appRepos.appId,e),(0,t.M)(a.githubRepos.goneAt))).limit(1);if(!r)return{ok:!1,reason:"no-repo",error:"This app isn't linked to a GitHub repository yet."};let n=await p(r.r.accountId);return n?.token?{ok:!0,fullName:r.r.fullName,defaultBranch:r.r.defaultBranch,token:n.token}:{ok:!1,reason:"no-token",error:"The GitHub token can't be read; check the GitHub connection."}}e.s(["D",0,h,"l",0,b],13733)},310603,e=>{let t;var r,o,a=e.i(313931),n=e.i(597420),s=e.i(121232),i=e.i(613394),l=e.i(486400),d=e.i(643801),c=e.i(972857),p=e.i(316957),u=e.i(778504),m=e.i(130078),f=e.i(875225),h=e.i(349129),b=e.i(924924),g=e.i(618916),w=e.i(209576),y=e.i(407602),k=e.i(111970),v=e.i(825895),x=e.i(582931),A=e.i(13733),I=e.i(472832),j=e.i(256662),R=e.i(502240),C=e.i(581321),S=e.i(455037),N=e.i(267841),M=e.i(177706),z=e.i(36995),P=e.i(298397),O=e.i(291029),$=e.i(377489),T=e.i(442565),B=e.i(570191);let D="waiting: Vercel didn't say which deployment is live";async function W(e){let t=Date.now();try{let r=await fetch(e,{redirect:"manual",signal:AbortSignal.timeout(j.w),cache:"no-store",headers:{"User-Agent":"Watchbell smoke test"}}),o=401===r.status||403===r.status?(await r.text().catch(()=>"")).slice(0,8192):"";return{status:r.status,ms:Date.now()-t,authWall:(0,j.S)(r.status,o,r.headers)}}catch{return{status:null,ms:Date.now()-t,authWall:!1}}}async function _(t,r){let{extensions:o}=await e.A(774810);return await o.runner?.lockfileJobActive(t,r).catch(()=>!1)??!1}let E=null;async function L(e,t){let r=(0,C.Q)(t.meta?.rootDirectory),o=(0,C.H)(r,"package.json"),a=t.lockfilePath??(0,C.H)(r,"package-lock.json");if(E?.token!==e){let t=await (0,N.z)(e);if(!t.ok)return null;E={token:e,login:t.data}}let n=E.login,[s,i]=await Promise.all([(0,N.O)(e,t.fullName,t.number),(0,N.P)(e,t.fullName,t.number)]);if(!s.ok||!i.ok)return null;let l=[];for(let r of i.data.slice(0,j.y+1)){let o=null!==r.login&&r.login.toLowerCase()===n.toLowerCase()?null:await (0,N.h)(e,t.fullName,r.sha);if(o&&!o.ok)return null;l.push({...r,files:o?o.data:null})}let[d,c]=await Promise.all([(0,N.E)(e,t.fullName,t.baseBranch,{},o),(0,N.E)(e,t.fullName,t.headSha,{},o)]);if(!d.ok||!c.ok)return null;let p=d.data&&c.data?(0,j.C)(d.data.text,c.data.text,t.packages):"unexpected change: package.json is missing",u=null;if(a!==o&&s.data.some(e=>e.filename===a||e.previous===a))if((0,N.$)(a)){let[r,o]=await Promise.all([(0,N.l)(e,t.fullName,t.baseBranch,a),(0,N.l)(e,t.fullName,t.headSha,a)]);if(!r.ok||!o.ok)return null;u=(0,j.T)(r.data,o.data,a)}else u=`unexpected lockfile change ${a} (only package-lock.json can be checked)`;return{manifest:o,lockfile:a,lockfileRequired:!!t.lockfilePath,manifestProblem:p,lockfileProblem:u,headSha:t.headSha,tokenLogin:n,files:s.data,commits:l}}async function G(e,t={}){let r=await (t.vercel??F.vercel)(e);if(!r)return null;let o=await (t.serving??M.k)(r.token,r.teamId,r.projectId);if(!o.ok)return null;let a=o.data.currentId,n=null;if(!a){let e=o.data.latest?.readyState??null;if("ERROR"!==e&&"CANCELED"!==e)return null;let s=await (t.running??M.N)(r.token,r.teamId,r.projectId);if(!s.ok||s.data)return null;let i=await (t.ready??M.r)(r.token,r.teamId,r.projectId);if(!i.ok)return null;let l=[...i.data].sort((e,t)=>t.createdAt.getTime()-e.createdAt.getTime()),d=o.data.promote;d?(n=l.find(e=>e.createdAt.getTime()>d.requestedAt)??null)||(a=d.toDeploymentId):n=l[0]??null}if(!n&&a){let e=await (t.deployment??M.S)(r.token,{id:r.teamId,slug:r.teamId,name:r.teamId},a);if(!e.ok)return null;n=e.data}return n?{source:(0,R.s)({source:n.source,branch:n.branch,sha:n.sha,branchFrom:n.branchFrom??null,gitDirty:!0===n.gitDirty})}:null}let F={rows:async()=>await (0,b.f)().select({id:g.dependencyPrs.id,repoId:g.dependencyPrs.repoId,appId:g.dependencyPrs.appId,proposalId:g.dependencyPrs.proposalId,number:g.dependencyPrs.number,branch:g.dependencyPrs.branch,baseBranch:g.dependencyPrs.baseBranch,headSha:g.dependencyPrs.headSha,title:g.dependencyPrs.title,packages:g.dependencyPrs.packages,auto:g.dependencyPrs.auto,stage:g.dependencyPrs.stage,smokeMode:g.dependencyPrs.smokeMode,previewReadyAt:g.dependencyPrs.previewReadyAt,openedAt:g.dependencyPrs.openedAt,fullName:g.githubRepos.fullName,appName:g.resources.name,meta:g.resources.meta,lockfilePath:g.dependencyScans.lockfilePath,appMonitored:g.resources.monitored,appGone:g.resources.goneAt,stageText:g.dependencyPrs.stageText}).from(g.dependencyPrs).innerJoin(g.githubRepos,(0,f.u)(g.githubRepos.id,g.dependencyPrs.repoId)).leftJoin(g.resources,(0,f.u)(g.resources.id,g.dependencyPrs.appId)).leftJoin(g.dependencyScans,(0,f.u)(g.dependencyScans.repoId,g.dependencyPrs.repoId)).where((0,f.y)(g.dependencyPrs.stage,[...j.X])).orderBy((0,h.M)(g.dependencyPrs.openedAt)).limit(10),security:B.X,rollback:B.K,writeToken:async()=>{let e=await (0,x.G)();return e&&"unreadable"!==e?e.token:null},readToken:async e=>{let t=await (0,A.l)(e);return t.ok?t.token:null},vercel:async e=>{let t=await (0,I.p)(e,"app"),r=t?.resource.meta.teamId;return t&&"string"==typeof r&&t.resource.externalId?{token:t.token,teamId:r,projectId:t.resource.externalId}:null},monitorUrls:async e=>(await (0,b.f)().select({url:g.monitors.url}).from(g.monitors).where((0,f.b)((0,f.u)(g.monitors.resourceId,e),(0,f.u)(g.monitors.kind,"http"))).limit(10)).map(e=>e.url),pull:N.b,checks:N.s,runs:S.L,previews:M.C,probe:W,errorLogs:async(e,t,r,o)=>{let a=await (0,z.f)(e.token,e.teamId,e.projectId,{since:r,until:o,now:o,deploymentId:t,levels:["error","fatal"],maxRows:20,timeoutMs:8e3});return a.ok?a.lines.length:null},merge:N.C,review:L,save:async(e,t,r,o)=>{await (0,b.f)().update(g.dependencyPrs).set({...t,stageText:o,checkedAt:new Date}).where((0,f.u)(g.dependencyPrs.id,e)),r&&await (0,b.f)().update(O.O).set({result:o}).where((0,f.u)(O.O.id,r)).catch(()=>void 0)},notify:e=>(0,T.y)(e),liveSource:e=>G(e),lockfileBusy:async(e,t,r)=>await _(e,t)||await (0,v.W)(r,t),audit:(e,t)=>(0,y.f)({kind:"ok",message:e,resourceId:t,actorUserId:null}),book:()=>(0,w.f)()};async function H(e,t,r=F){let o={watched:0,merged:0,stopped:0},a=()=>t-Date.now(),n=await r.rows();if(!n.length)return o;let[s,i,l]=await Promise.all([r.security().catch(()=>null),r.rollback().catch(()=>null),r.writeToken().catch(()=>null)]);if(!l)return o;let d=await r.book().catch(()=>P.a);for(let t of n){if(15e3>a())break;if(t.auto||s?.enabled)try{let a=await q(t,e,l,i?.enabled===!0,r);if(!a)continue;o.watched++;let n=t.appName?(0,P.r)(d,t.appName):"app";await V(t,a,n,i?.windowMin??30,e,l,r,o)}catch(e){console.warn("deps/watch failed:",e instanceof Error?e.name:"error")}}return o}async function q(e,t,r,o,a){let n=await a.pull(r,e.fullName,e.number);if(!n.ok)return null;let s=await a.checks(r,e.fullName,n.data.headSha),i=null;if(s.ok&&null===s.data.checkRuns&&e.appId){let t=await a.readToken(e.appId),r=t?await a.runs(t,e.fullName,n.data.headSha):null;i=r?.ok?r.data:null}s.ok||(s={ok:!0,data:{checkRuns:[{status:"queued",conclusion:null}],combined:null}});let l=(0,j.j)({...s.data,actionRuns:i}),d={state:null,readyAt:null},c=null,p=e.appId?await a.vercel(e.appId):null;if(p&&"success"===l&&n.data.headSha===e.headSha){let r=await a.previews(p.token,p.teamId,p.projectId,n.data.headSha),o=r.ok?r.data.find(e=>"preview"===e.target)??r.data[0]??null:null;if(o&&(d={state:o.state,readyAt:o.readyAt??("ready"===o.state?t:null)},"ready"===o.state&&o.url)){let r=e.previewReadyAt??d.readyAt??t;if("logs"!==e.smokeMode){let t=(0,j.E)(e.appId?await a.monitorUrls(e.appId):[]),r=await Promise.all(t.map(async e=>({path:e,...await a.probe(`https://${o.url}${e}`)})));c=(0,j.L)(r)}c||(c=(0,j.n)(r,t,await a.errorLogs(p,o.id,r,t).catch(()=>null))),d.readyAt=r}}return{step:(0,j.M)({now:t,openedAt:e.openedAt,pr:{state:n.data.state,merged:n.data.merged,mergeable:n.data.mergeable,headSha:n.data.headSha,base:n.data.base},recordedSha:e.headSha,recordedBase:e.baseBranch,checks:l,preview:d,smoke:c,autoRollbackOn:o}),smoke:c,previewReadyAt:d.readyAt,headSha:n.data.headSha}}function U(e,t){if(!e.appId||!1===e.appMonitored||e.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 r=(0,R.B)(e.meta?.productionSource,e.baseBranch,t);if(r)return r;let o=(0,R.O)(e.meta?.productionSource),a=e.meta?.productionBranch;return o?.kind==="git"&&o.ref===e.baseBranch&&"string"==typeof a&&a!==e.baseBranch?`Merging into ${e.baseBranch} won't deploy to production by itself: production was promoted from a ${e.baseBranch} preview. Merge, then promote the new preview.`:null}async function V(e,t,r,o,a,n,s,i){let{step:l}=t,d=t.smoke?{smokeMode:t.smoke.mode}:{},c=t.previewReadyAt?{previewReadyAt:t.previewReadyAt}:{},p={app:r,number:e.number,packages:e.packages};if("wait"===l.kind)return void await s.save(e.id,{stage:l.stage,...d,...c,...l.resetSha?{headSha:l.resetSha,previewReadyAt:null,smokeMode:null}:{}},e.proposalId,(0,j.m)(e.number,l.stage,l.reason));if("done"===l.kind)return void await s.save(e.id,{stage:l.stage,finishedAt:a},e.proposalId,(0,j.m)(e.number,l.stage));if("stop"===l.kind&&("CI gagal"===l.reason||"CI failed"===l.reason)&&await s.lockfileBusy?.(e.repoId,e.branch,e.fullName).catch(()=>!1))return void await s.save(e.id,{stage:"checks"},e.proposalId,(0,j.m)(e.number,"checks","waiting for the lockfile from the runner"));let u=async t=>{await s.save(e.id,{stage:"failed",finishedAt:a,...d},e.proposalId,(0,j.m)(e.number,"failed",t)),i.stopped++,await s.notify({...p,kind:"stopped",reason:t.replace(/\.$/,"")}).catch(()=>void 0)},m="merge"===l.kind||"stop"===l.kind&&"ready-manual"===l.stage?U(e,a):null;if(m)return u(m);let f=async()=>{let r=e.appId?await s.liveSource(e.appId).catch(()=>null):null;if(!r){let r=t.previewReadyAt??e.previewReadyAt??e.openedAt;if((e.stageText??"").includes(D)&&a.getTime()-r.getTime()>j.R)return await u("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 o="checks"===e.stage||"preview"===e.stage||"smoke"===e.stage?e.stage:"smoke";return await s.save(e.id,{stage:o,...d,...c},e.proposalId,(0,j.m)(e.number,o,D)),!0}let o=r.source?U({...e,meta:{...e.meta??{},productionSource:{...r.source,at:a.toISOString()}}},a):`Watchbell can't confirm what production is built from (Vercel names no branch for it). Merging this PR could deploy ${e.baseBranch} to production and replace what is live.`;return!!o&&(await u(o),!0)};if("stop"===l.kind&&"ready-manual"===l.stage&&await f())return;if("stop"===l.kind){await s.save(e.id,{stage:l.stage,finishedAt:a,...d},e.proposalId,(0,j.m)(e.number,l.stage,"ready-manual"===l.stage?null:l.reason)),i.stopped++,await s.notify({...p,kind:"ready-manual"===l.stage?"ready-manual":"stopped",reason:l.reason}).catch(()=>void 0);return}let h=await s.review(n,e).catch(()=>null);if(!h)return;let b=(0,j.k)(h);if(!b&&(0,j.H)(h)&&a.getTime()-e.openedAt.getTime()>j.R){let t="the lockfile wasn't added within 45 minutes";await s.save(e.id,{stage:"timeout",finishedAt:a,...d},e.proposalId,(0,j.m)(e.number,"timeout",t)),i.stopped++,await s.notify({...p,kind:"stopped",reason:t}).catch(()=>void 0);return}if(!b&&(0,j.H)(h))return void await s.save(e.id,{stage:"checks"},e.proposalId,(0,j.m)(e.number,"checks","waiting for the lockfile"));if(b){await s.save(e.id,{stage:"failed",finishedAt:a,...d},e.proposalId,(0,j.m)(e.number,"failed",b)),i.stopped++,await s.notify({...p,kind:"stopped",reason:b}).catch(()=>void 0);return}if(await f())return;await s.save(e.id,{stage:"merging",...d,...c},e.proposalId,(0,j.m)(e.number,"merging"));let g=await s.merge(n,e.fullName,e.number,e.branch,e.baseBranch,e.headSha,e.title);if(g.ok){await s.save(e.id,{stage:"merged",mergedSha:g.data.sha,finishedAt:a},e.proposalId,(0,j.m)(e.number,"merged")),i.merged++,await s.audit(`${$.v}PR #${e.number} merged \xb7 ${e.packages.join(", ")}`.slice(0,200),e.appId).catch(()=>void 0),await s.notify({...p,kind:"merged",windowMin:o}).catch(()=>void 0);return}if(409===g.status)return void await s.save(e.id,{stage:"checks"},e.proposalId,(0,j.m)(e.number,"checks","new commit on the PR branch, checking again"));let w=405===g.status?"GitHub refused the merge (cannot be merged)":`merge failed: ${g.error}`.slice(0,150);await s.save(e.id,{stage:"failed",finishedAt:a},e.proposalId,(0,j.m)(e.number,"failed",w)),i.stopped++,await s.notify({...p,kind:"stopped",reason:w}).catch(()=>void 0)}let J=null;async function K(e,t,r=k.I){if((0,j.f)(e,J)&&!(await r()).has("devops")){J=e.getTime();try{let r=await H(e,t?.deadline??e.getTime()+5e4);r.watched&&console.log(`deps/watch: ${r.watched} PR, ${r.merged} merged, ${r.stopped} stopped`)}catch(e){console.warn("deps/watch failed:",e instanceof Error?e.name:"error")}}}var X=e.i(447933),Y=e.i(610514);let Q={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",...a.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"]}]},Z={dailySteps:[{name:"ai-usage-retention",run:s.$}]},ee={WhyAiSlot:p.f,RecSummarySlot:c.f,AiNotesSlot:d.f,dailySteps:[{name:"advisor-summary",run:l.f}],minuteSteps:[{name:"advisor-notes",run:i.f}]},et={dailySteps:[{name:"ai-notes-retention",run:u.v}]},er={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:X.t}],minuteSteps:[{name:"auto-actions",run:X.Z},{name:"deps-pr-watch",run:K}],settingsTabs:[{key:"office-auto-run",label:"Auto-actions",Tab:m.f}]},eo={telegramCallback:Y.proposalCallback},ea=function(...e){let t={nav:[],palette:[]};for(let r of e){for(let e of r.nav??[]){let r=t.nav.find(t=>t.section===e.section&&t.after===e.after);r?r.items=[...r.items,...e.items]:t.nav.push({...e,items:[...e.items]})}t.palette.push(...r.palette??[]),r.dailySteps?.length&&(t.dailySteps=[...t.dailySteps??[],...r.dailySteps]),r.minuteSteps?.length&&(t.minuteSteps=[...t.minuteSteps??[],...r.minuteSteps]),r.WhyAiSlot&&(t.WhyAiSlot=r.WhyAiSlot),r.RecSummarySlot&&(t.RecSummarySlot=r.RecSummarySlot),r.AiNotesSlot&&(t.AiNotesSlot=r.AiNotesSlot),r.DevNotesSlot&&(t.DevNotesSlot=r.DevNotesSlot),r.office&&(t.office=r.office),r.settingsTabs?.length&&(t.settingsTabs=[...t.settingsTabs??[],...r.settingsTabs]),r.telegramCallback&&(t.telegramCallback=r.telegramCallback),r.runner&&(t.runner=r.runner),r.RepoPreviewSlot&&(t.RepoPreviewSlot=r.RepoPreviewSlot)}return t}({...Q,palette:(r=Q.palette??[],o={label:"Ask AI",href:"/ai/ask",keywords:["ask","question","answer"]},(t=r.findIndex(e=>"/ai"===e.href))<0?[...r,o]:[...r.slice(0,t+1),o,...r.slice(t+1)])},{dailySteps:[{name:"ai-agents-prune",run:()=>(0,n.f)()}]},Z,{},{},et,er,ee,eo);e.s(["extensions",0,ea],310603)},627925,e=>{let t=(0,e.i(997953).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");e.s(["AutoRollbackForm",0,t])},909743,e=>{var t=e.i(627925);e.n(t)},336799,e=>{let t=(0,e.i(997953).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");e.s(["AutoRunForm",0,t])},482272,e=>{var t=e.i(336799);e.n(t)},405692,e=>{let t=(0,e.i(997953).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");e.s(["AutoSecurityForm",0,t])},979898,e=>{var t=e.i(405692);e.n(t)},597420,613394,486400,643801,972857,316957,130078,e=>{let t,r,o,a,n;var s,i=e.i(518899),l=e.i(924924);e.i(656083);var d=e.i(291029);async function c(){await (0,l.f)().execute(i.B`
|
|
2
|
-
delete from ops.ai_agents where id in (select id from ops.ai_agents order by last_seen_at desc offset ${2e3})
|
|
3
|
-
`)}e.s(["f",0,c],597420);var p=e.i(875225),u=e.i(473283),m=e.i(618916),f=e.i(185284),h=e.i(477660),b=e.i(28357),g=e.i(778504),w=e.i(971724),y=e.i(105954),k=e.i(604147),v=e.i(218331),x=e.i(76482);let A={enabled:!0,model:null};function I(e){let{hour:t,minute:r}=(0,v.z)(e);return 7!==t&&19!==t||r>=15?null:`${(0,v.x)(e)}T${String(t).padStart(2,"0")}`}let j=e=>"string"==typeof e?e.toLowerCase():"",R=w.z.object({app:y.z.string().trim().min(1).max(80),severity:k.z.enum(["info","warn","crit"]),title:y.z.string().trim().min(3).max(79),body:y.z.string().trim().min(10).max(600)}),C=/\b(?:[a-z0-9-]+\.)+(?:com|net|org|io|app|dev|id|co|xyz|cloud|site|me|ai)\b/i,S=e=>e.split(/(?<=[.!?])\s+/).filter(e=>e.trim().length>0).length,N="watchpost";async function M(){let[e]=await (0,l.f)().select({value:m.settings.value}).from(m.settings).where((0,p.u)(m.settings.key,"ai.advisorNotes")).limit(1);var t=e?.value;if(!t||"object"!=typeof t||Array.isArray(t))return A;let r="string"==typeof t.model&&t.model.trim()&&t.model.length<=200?t.model.trim():null;return{enabled:!1!==t.enabled,model:r}}async function z(e,t){let r=t.toISOString(),o=await (0,l.f)().execute(i.B`
|
|
4
|
-
insert into ops.settings (key, value, created_at, updated_at)
|
|
5
|
-
values (${"ai.advisorRuns"}, ${JSON.stringify({window:e,at:r})}::jsonb, ${r}::timestamptz, ${r}::timestamptz)
|
|
6
|
-
on conflict (key) do update set value = excluded.value, updated_at = excluded.updated_at
|
|
7
|
-
where ops.settings.value->>'window' is distinct from ${e}
|
|
8
|
-
returning 1 as claimed`);return 1===(0,u.f)(o).length}async function P(e,t={}){var r,o;let a,n,s,i=I(e);if(!t.force&&!i)return{status:"skipped",reason:"outside-window"};let l=await M();if(!t.force&&!l.enabled)return{status:"skipped",reason:"off"};try{await (0,f.M)(l.model??void 0)}catch{return{status:"skipped",reason:"no-provider"}}if(!t.force&&!await z(i,e))return{status:"skipped",reason:"already-ran"};let d=await (0,h.V)(e),c=function(e){let t=e.apps.map(e=>e.id),r=new Map,o=(e,o)=>{let a=t.find(t=>t.toLowerCase()===j(e));a&&r.set(a,Math.max(r.get(a)??0,o))};for(let t of e.apps)"down"===t.state?o(t.id,4):"degraded"===t.state&&o(t.id,2);for(let t of e.alerts.items??[])o(t.app,3);for(let t of e.monitors.items??[])("down"===t.state||"degraded"===t.state)&&o(t.app,2);for(let t of e.advisor??[])("warn"===t.severity||"crit"===t.severity||"critical"===t.severity||"warning"===t.severity)&&o(t.app,1);let a,n=[...r.entries()].filter(([e])=>e!==a).sort((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0])).slice(0,3).map(([e])=>e);return[...a?[a]:[],...n]}(d);if(0===c.length)return{status:"skipped",reason:"no-apps"};let p=await (r=(0,f.X)((a=e=>c.some(t=>t.toLowerCase()===j(e)),n={generatedAt:d.generatedAt,apps:d.apps.filter(e=>a(e.id)).map(e=>({app:(0,x.O)(e.id,80),state:e.state,uptime30d:e.uptime30d,database:e.database?(0,x.O)(e.database,40):null,lastDeploy:e.lastDeploy?(0,x.O)(e.lastDeploy,40):null,problems:e.problems.slice(0,8).map(e=>({kind:(0,x.O)(e.kind,30),where:(0,x.O)(e.where,120),what:(0,x.O)(e.what),fix:e.fix?(0,x.O)(e.fix):null}))})),alerts:(d.alerts.items??[]).filter(e=>a(e.app)).slice(0,12).map(e=>({app:(0,x.O)(e.app,80),severity:(0,x.O)(e.severity,20),title:(0,x.O)(e.title),message:(0,x.O)(e.message)})),monitors:(d.monitors.items??[]).filter(e=>a(e.app)).slice(0,12).map(e=>({app:(0,x.O)(e.app,80),state:(0,x.O)(e.state,20),path:(0,x.O)(e.path,120)})),recommendations:(d.advisor??[]).filter(e=>a(e.app)).slice(0,12).map(e=>({app:(0,x.O)(e.app,80),severity:(0,x.O)(e.severity,20),title:(0,x.O)(e.title)}))},[{role:"system",content:x.o},{role:"user",content:[`Write one short advisor note for each of these apps: ${c.map(e=>(0,x.O)(e,80)).join(", ")}.`,'Answer with JSON only, no prose and no code fence: {"notes":[{"app":"<app name as given>","severity":"info|warn|crit","title":"<under 80 characters>","body":"<at most 4 short sentences in English with one concrete suggestion>"}]}.\nUse only the data below. Never include secrets, keys, email addresses, hostnames or URLs. Severity: crit when the app is down or has a critical alert, warn for anything else wrong, info when all is well.\n',JSON.stringify(n)].join("\n")}]),{...l.model?{model:l.model,fallback:!0}:{},purpose:"summary",maxTokens:1500,temperature:.2}),o=t.deadlineMs??4e4,Promise.race([r,new Promise((e,t)=>{s=setTimeout(()=>t(Error("advisor deadline")),o)})]).finally(()=>clearTimeout(s))),u=function(e,t){let r,o=e.indexOf("{"),a=e.lastIndexOf("}");if(o<0||a<=o)return[];try{r=JSON.parse(e.slice(o,a+1))}catch{return[]}let n=r?.notes;if(!Array.isArray(n))return[];let s=[];for(let e of n.slice(0,20)){let r=R.safeParse(e);if(!r.success)continue;let o=t.find(e=>e.toLowerCase()===r.data.app.toLowerCase());if(!o||s.some(e=>e.app===o))continue;let{title:a,body:n}=r.data;if(S(n)>4)continue;let i=`${a} ${n}`;if(!((0,x.O)(i,1e4)!==i.replace(/\s+/g," ").trim()||C.test(i))&&(s.push({app:o,severity:r.data.severity,title:a,body:n}),s.length>=4))break}return s}(p.text,c);if(0===u.length)return{status:"skipped",reason:"no-valid-notes"};let m=await (0,b.z)(),w=0;for(let t of u)(await (0,g.T)({title:t.title,body:t.body,severity:t.severity,appId:(0,b.m)(m,t.app)?.id??null,model:p.model.slice(0,120),client:N},null,N,e)).ok&&w++;return{status:"written",count:w,model:p.model}}async function O(e){if(I(e))try{let t=await P(e,{deadlineMs:4e4});"written"===t.status?console.log(`advisor notes: ${t.count} written (${t.model})`):"already-ran"!==t.reason&&"outside-window"!==t.reason&&console.log(`advisor notes: skipped (${t.reason})`)}catch(e){console.warn("advisor notes failed:",e instanceof Error?"advisor deadline"===e.message?"deadline":e.name:"unknown")}}e.s(["f",0,O],613394);var $=e.i(77193);let T={provider:async()=>{if((0,$.W)())return{name:"Demo",model:"demo"};try{let e=await (0,f.M)();return{name:e.conn.name,model:e.publicId}}catch{return null}},appSnapshot:h.w,advice:h.y,complete:f.X};var B=e.i(666680),D=e.i(206033);let W="advisor.ai_summary",_=w.z.object({text:y.z.string().min(1).max(1200),model:y.z.string().max(200),at:y.z.string(),count:D.z.number().int().min(0),hash:y.z.string().length(64)});function E(e){let t=e.map(e=>`${e.severity}\0${e.app}\0${e.title}`).sort();return(0,B.createHash)("sha256").update(t.join("\x01")).digest("hex")}async function L(){let[e]=await (0,l.f)().select({value:m.settings.value}).from(m.settings).where((0,p.u)(m.settings.key,W)).limit(1),t=_.safeParse(e?.value);return t.success?t.data:null}async function G(e,t){var r,o;if(!await T.provider())return{status:"no-provider"};let a=await T.advice(e),n=(r=await L(),o=t.force,a.length?!o&&r&&r.hash===E(a)?"skip-unchanged":"run":"skip-empty");if("skip-empty"===n)return{status:"empty"};if("skip-unchanged"===n)return{status:"unchanged"};let s=await T.complete((0,x.N)(a),{purpose:"summary",maxTokens:400}),i=s.text.trim().slice(0,1200);if(!i)throw Error("The model returned no text.");let d={text:i,model:s.model.slice(0,200),at:e.toISOString(),count:a.length,hash:E(a)};return await (0,l.f)().insert(m.settings).values({key:W,value:d}).onConflictDoUpdate({target:m.settings.key,set:{value:d,updatedAt:e}}),{status:"stored",summary:d}}async function F(e){await G(e,{force:!1})}e.s(["f",0,F],486400);var H=e.i(222260),q=e.i(79832),U=e.i(349129);let V=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;async function J(e,t=new Date){let r=null,o=new Map;if(void 0!==e){if(!V.test(e))return[];let[t]=await (0,l.f)().select({name:m.resources.name}).from(m.resources).where((0,p.u)(m.resources.id,e)).limit(1);r=t?[e,t.name]:[e],t&&(o=new Map([[e,t.name]]))}let a=new Date(t.getTime()-2592e6),n=(0,p.b)((0,p.M)(d.c.dismissedAt),(0,p.B)(d.c.createdAt,a)),s=await (0,l.f)().select({id:d.c.id,appId:d.c.appId,severity:d.c.severity,title:d.c.title,body:d.c.body,source:d.c.source,client:d.c.client,model:d.c.model,createdAt:d.c.createdAt}).from(d.c).where(r?(0,p.b)(n,(0,p.y)(d.c.appId,r)):n).orderBy((0,U.A)(d.c.createdAt)).limit(20);if(void 0===e){let e=[...new Set(s.map(e=>e.appId).filter(e=>!!e&&V.test(e)))];e.length&&(o=new Map((await (0,l.f)().select({id:m.resources.id,name:m.resources.name}).from(m.resources).where((0,p.y)(m.resources.id,e)).limit(e.length)).map(e=>[e.id,e.name])))}return s.map(e=>{let t;return{id:e.id,appId:e.appId,appName:e.appId?o.get(e.appId)??((t=e.appId,V.test(t))?null:e.appId):null,severity:e.severity,title:e.title,body:e.body,from:e.client||e.source,model:e.model,at:e.createdAt}})}var K=e.i(347540),X={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};let Y=(e,t,r,o)=>{let a=(0,K.forwardRef)(({color:r="currentColor",size:a=24,stroke:n=2,title:s,className:i,children:l,...d},c)=>(0,K.createElement)("svg",{ref:c,...X[e],width:a,height:a,className:["tabler-icon",`tabler-icon-${t}`,i].filter(Boolean).join(" "),..."filled"===e?{fill:r}:{strokeWidth:n,stroke:r},...d},[s&&(0,K.createElement)("title",{key:"svg-title"},s),...o.map(([e,t])=>(0,K.createElement)(e,t)),...Array.isArray(l)?l:[l]]));return a.displayName=`${r}`,a},Q=Y("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 Z=e.i(646822);let ee=/(\*\*[^*\n]+\*\*|`[^`\n]+`|\[[^\]\n]+\]\([^)\s]+\))/g;function et(e){let t=[];for(let r of e.split(ee))if(r)if(r.startsWith("**")&&r.endsWith("**")&&r.length>4)t.push({t:"b",text:r.slice(2,-2)});else if(r.startsWith("`")&&r.endsWith("`")&&r.length>2)t.push({t:"code",text:r.slice(1,-1)});else{let e=/^\[([^\]]+)\]\(([^)\s]+)\)$/.exec(r);e?t.push({t:"text",text:/^https?:\/\//i.test(e[2])?`${e[1]} (${e[2]})`:e[1]}):t.push({t:"text",text:r})}return t}function er({list:e}){return(0,H.jsx)(H.Fragment,{children:e.map((e,t)=>(0,H.jsx)(K.Fragment,{children:"b"===e.t?(0,H.jsx)("b",{className:"font-medium",children:(0,H.jsx)(Z.MaskedText,{text:e.text})}):"code"===e.t?(0,H.jsx)("code",{className:"rounded bg-sunken px-1 font-mono text-[12.5px]",children:e.text}):(0,H.jsx)(Z.MaskedText,{text:e.text})},t))})}function eo({b:e}){if("p"===e.t)return(0,H.jsx)("p",{className:"mt-1.5 first:mt-0",children:(0,H.jsx)(er,{list:e.inl})});if("h"===e.t)return(0,H.jsx)("p",{className:"mt-2 font-medium first:mt-0",children:(0,H.jsx)(er,{list:e.inl})});if("code"===e.t)return(0,H.jsx)("pre",{className:"mt-1.5 overflow-x-auto rounded-md border border-line bg-sunken p-2 font-mono text-[12.5px]",children:e.text});let t="ul"===e.t?"ul":"ol";return(0,H.jsx)(t,{className:`mt-1.5 space-y-0.5 pl-5 ${"ul"===e.t?"list-disc":"list-decimal"}`,children:e.items.map((e,t)=>(0,H.jsx)("li",{children:(0,H.jsx)(er,{list:e})},t))})}function ea({source:e}){return(0,H.jsx)("div",{className:"text-[13px]",children:(function(e){let t=e.slice(0,8e3).replace(/\r\n?/g,"\n").split("\n"),r=[],o=[],a=()=>{o.length&&r.push({t:"p",inl:et(o.join(" "))}),o=[]};for(let e=0;e<t.length;e++){let n=t[e];if(/^\s*```/.test(n)){a();let o=[];for(e++;e<t.length&&!/^\s*```/.test(t[e]);)o.push(t[e++]);r.push({t:"code",text:o.join("\n")});continue}if(!n.trim()){a();continue}let s=/^\s{0,3}#{1,6}\s+(.+)$/.exec(n);if(s){a(),r.push({t:"h",inl:et(s[1].trim())});continue}let i=/^\s*([-*]|\d+[.)])\s+(.+)$/.exec(n);if(i){a();let e=/\d/.test(i[1])?"ol":"ul",t=r[r.length-1],o=et(i[2].trim());t&&("ul"===t.t||"ol"===t.t)&&t.t===e?t.items.push(o):r.push({t:e,items:[o]});continue}o.push(n.trim())}return a(),r})(e).map((e,t)=>(0,H.jsx)(eo,{b:e},t))})}let en=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),es=[],ei=(e,t,r)=>{if(0==e.length-t)return r.classGroupId;let o=e[t],a=r.nextPart.get(o);if(a){let r=ei(e,t+1,a);if(r)return r}let n=r.validators;if(null===n)return;let s=0===t?e.join("-"):e.slice(t).join("-"),i=n.length;for(let e=0;e<i;e++){let t=n[e];if(t.validator(s))return t.classGroupId}},el=(e,t)=>{let r=en();for(let o in e)ed(e[o],r,o,t);return r},ed=(e,t,r,o)=>{let a=e.length;for(let n=0;n<a;n++)ec(e[n],t,r,o)},ec=(e,t,r,o)=>{"string"==typeof e?ep(e,t,r):"function"==typeof e?eu(e,t,r,o):em(e,t,r,o)},ep=(e,t,r)=>{(""===e?t:ef(t,e)).classGroupId=r},eu=(e,t,r,o)=>{eh(e)?ed(e(o),t,r,o):(null===t.validators&&(t.validators=[]),t.validators.push({classGroupId:r,validator:e}))},em=(e,t,r,o)=>{let a=Object.entries(e),n=a.length;for(let e=0;e<n;e++){let[n,s]=a[e];ed(s,ef(t,n),r,o)}},ef=(e,t)=>{let r=e,o=t.split("-"),a=o.length;for(let e=0;e<a;e++){let t=o[e],a=r.nextPart.get(t);a||(a=en(),r.nextPart.set(t,a)),r=a}return r},eh=e=>"isThemeGetter"in e&&!0===e.isThemeGetter,eb=[],eg=(e,t,r,o,a)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:a}),ew=/\s+/,ey=e=>{let t;if("string"==typeof e)return e;let r="";for(let o=0;o<e.length;o++)e[o]&&(t=ey(e[o]))&&(r&&(r+=" "),r+=t);return r},ek=[],ev=e=>{let t=t=>t[e]||ek;return t.isThemeGetter=!0,t.themeKey=e,t},ex=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,eA=/^\((?:(\w[\w-]*):)?(.+)\)$/i,eI=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,ej=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,eR=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,eC=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix|color|light-dark)\(.+\)$/,eS=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,eN=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,eM=e=>eI.test(e),ez=e=>!!e&&!Number.isNaN(Number(e)),eP=e=>!!e&&Number.isInteger(Number(e)),eO=e=>e.endsWith("%")&&ez(e.slice(0,-1)),e$=e=>ej.test(e),eT=()=>!0,eB=e=>eR.test(e)&&!eC.test(e),eD=()=>!1,eW=e=>eS.test(e),e_=e=>eN.test(e),eE=e=>!eF(e)&&!eY(e),eL=e=>e.startsWith("@container")&&("/"===e[10]&&void 0!==e[11]||"s"===e[11]&&void 0!==e[16]&&e.startsWith("-size/",10)||"n"===e[11]&&void 0!==e[18]&&e.startsWith("-normal/",10)),eG=e=>e4(e,e7,eD),eF=e=>ex.test(e),eH=e=>e4(e,te,eB),eq=e=>e4(e,tt,ez),eU=e=>e4(e,to,eT),eV=e=>e4(e,tr,eD),eJ=e=>e4(e,e8,eD),eK=e=>e4(e,e6,e_),eX=e=>e4(e,ta,eW),eY=e=>eA.test(e),eQ=e=>e5(e,te),eZ=e=>e5(e,tr),e0=e=>e5(e,e8),e1=e=>e5(e,e7),e2=e=>e5(e,e6),e9=e=>e5(e,ta,!0),e3=e=>e5(e,to,!0),e4=(e,t,r)=>{let o=ex.exec(e);return!!o&&(o[1]?t(o[1]):r(o[2]))},e5=(e,t,r=!1)=>{let o=eA.exec(e);return!!o&&(o[1]?t(o[1]):r)},e8=e=>"position"===e||"percentage"===e,e6=e=>"image"===e||"url"===e,e7=e=>"length"===e||"size"===e||"bg-size"===e,te=e=>"length"===e,tt=e=>"number"===e,tr=e=>"family-name"===e,to=e=>"number"===e||"weight"===e,ta=e=>"shadow"===e,tn=(s=()=>{let e=ev("color"),t=ev("font"),r=ev("text"),o=ev("font-weight"),a=ev("tracking"),n=ev("leading"),s=ev("breakpoint"),i=ev("container"),l=ev("spacing"),d=ev("radius"),c=ev("shadow"),p=ev("inset-shadow"),u=ev("text-shadow"),m=ev("drop-shadow"),f=ev("blur"),h=ev("perspective"),b=ev("aspect"),g=ev("ease"),w=ev("animate"),y=()=>["auto","avoid","all","avoid-page","page","left","right","column"],k=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],v=()=>[...k(),eY,eF],x=()=>["auto","hidden","clip","visible","scroll"],A=()=>["auto","contain","none"],I=()=>[eY,eF,l],j=()=>[eM,"full","auto",...I()],R=()=>[eP,"none","subgrid",eY,eF],C=()=>["auto",{span:["full",eP,eY,eF]},eP,eY,eF],S=()=>[eP,"auto",eY,eF],N=()=>["auto","min","max","fr",eY,eF],M=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],z=()=>["start","end","center","stretch","center-safe","end-safe"],P=()=>["auto",...I()],O=()=>[eM,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...I()],$=()=>[i,eM,"screen","full","dvw","lvw","svw","min","max","fit",...I()],T=()=>[eM,"screen","full","lh","dvh","lvh","svh","min","max","fit",...I()],B=()=>[e,eY,eF],D=()=>[...k(),e0,eJ,{position:[eY,eF]}],W=()=>["no-repeat",{repeat:["","x","y","space","round"]}],_=()=>["auto","cover","contain",e1,eG,{size:[eY,eF]}],E=()=>[eO,eQ,eH],L=()=>["","none","full",d,eY,eF],G=()=>["",ez,eQ,eH],F=()=>["solid","dashed","dotted","double"],H=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],q=()=>[ez,eO,e0,eJ],U=()=>["","none",f,eY,eF],V=()=>["none",ez,eY,eF],J=()=>["none",ez,eY,eF],K=()=>[ez,eY,eF],X=()=>[eM,"full",...I()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[e$],breakpoint:[e$],color:[eT],container:[e$],"drop-shadow":[e$],ease:["in","out","in-out"],font:[eE],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[e$],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[e$],shadow:[e$],spacing:["px",ez],text:[e$],"text-shadow":[e$],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",eM,eF,eY,b]}],container:["container"],"container-type":[{"@container":["","normal","size",eY,eF]}],"container-named":[eL],columns:[{columns:[ez,"auto",eF,eY,i]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:v()}],overflow:[{overflow:x()}],"overflow-x":[{"overflow-x":x()}],"overflow-y":[{"overflow-y":x()}],overscroll:[{overscroll:A()}],"overscroll-x":[{"overscroll-x":A()}],"overscroll-y":[{"overscroll-y":A()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:j()}],"inset-x":[{"inset-x":j()}],"inset-y":[{"inset-y":j()}],start:[{"inset-s":j(),start:j()}],end:[{"inset-e":j(),end:j()}],"inset-bs":[{"inset-bs":j()}],"inset-be":[{"inset-be":j()}],top:[{top:j()}],right:[{right:j()}],bottom:[{bottom:j()}],left:[{left:j()}],visibility:["visible","invisible","collapse"],z:[{z:[eP,"auto",eY,eF]}],basis:[{basis:[eM,"full","auto",i,...I()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[ez,eM,"auto","initial","none",eF]}],grow:[{grow:["",ez,eY,eF]}],shrink:[{shrink:["",ez,eY,eF]}],order:[{order:[eP,"first","last","none",eY,eF]}],"grid-cols":[{"grid-cols":R()}],"col-start-end":[{col:C()}],"col-start":[{"col-start":S()}],"col-end":[{"col-end":S()}],"grid-rows":[{"grid-rows":R()}],"row-start-end":[{row:C()}],"row-start":[{"row-start":S()}],"row-end":[{"row-end":S()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":N()}],"auto-rows":[{"auto-rows":N()}],gap:[{gap:I()}],"gap-x":[{"gap-x":I()}],"gap-y":[{"gap-y":I()}],"justify-content":[{justify:[...M(),"normal"]}],"justify-items":[{"justify-items":[...z(),"normal"]}],"justify-self":[{"justify-self":["auto",...z()]}],"align-content":[{content:["normal",...M()]}],"align-items":[{items:[...z(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...z(),{baseline:["","last"]}]}],"place-content":[{"place-content":M()}],"place-items":[{"place-items":[...z(),"baseline"]}],"place-self":[{"place-self":["auto",...z()]}],p:[{p:I()}],px:[{px:I()}],py:[{py:I()}],ps:[{ps:I()}],pe:[{pe:I()}],pbs:[{pbs:I()}],pbe:[{pbe:I()}],pt:[{pt:I()}],pr:[{pr:I()}],pb:[{pb:I()}],pl:[{pl:I()}],m:[{m:P()}],mx:[{mx:P()}],my:[{my:P()}],ms:[{ms:P()}],me:[{me:P()}],mbs:[{mbs:P()}],mbe:[{mbe:P()}],mt:[{mt:P()}],mr:[{mr:P()}],mb:[{mb:P()}],ml:[{ml:P()}],"space-x":[{"space-x":I()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":I()}],"space-y-reverse":["space-y-reverse"],size:[{size:O()}],"inline-size":[{inline:["auto",...$()]}],"min-inline-size":[{"min-inline":["auto",...$()]}],"max-inline-size":[{"max-inline":["none",...$()]}],"block-size":[{block:["auto",...T()]}],"min-block-size":[{"min-block":["auto",...T()]}],"max-block-size":[{"max-block":["none",...T()]}],w:[{w:[i,"screen",...O()]}],"min-w":[{"min-w":[i,"screen","none",...O()]}],"max-w":[{"max-w":[i,"screen","none","prose",{screen:[s]},...O()]}],h:[{h:["screen","lh",...O()]}],"min-h":[{"min-h":["screen","lh","none",...O()]}],"max-h":[{"max-h":["screen","lh","none",...O()]}],"font-size":[{text:["base",r,eQ,eH]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,e3,eU]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",eO,eF]}],"font-family":[{font:[eZ,eV,t]}],"font-features":[{"font-features":[eF]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[a,eY,eF]}],"line-clamp":[{"line-clamp":[ez,"none",eY,eq]}],leading:[{leading:["none",n,...I()]}],"list-image":[{"list-image":["none",eY,eF]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",eY,eF]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:B()}],"text-color":[{text:B()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...F(),"wavy"]}],"text-decoration-thickness":[{decoration:[ez,"from-font","auto",eY,eH]}],"text-decoration-color":[{decoration:B()}],"underline-offset":[{"underline-offset":[ez,"auto",eY,eF]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:I()}],"tab-size":[{tab:[eP,eY,eF]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",eY,eF]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",eY,eF]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:D()}],"bg-repeat":[{bg:W()}],"bg-size":[{bg:_()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},eP,eY,eF],radial:["",eY,eF],conic:["",eP,eY,eF]},e2,eK]}],"bg-color":[{bg:B()}],"gradient-from-pos":[{from:E()}],"gradient-via-pos":[{via:E()}],"gradient-to-pos":[{to:E()}],"gradient-from":[{from:B()}],"gradient-via":[{via:B()}],"gradient-to":[{to:B()}],rounded:[{rounded:L()}],"rounded-s":[{"rounded-s":L()}],"rounded-e":[{"rounded-e":L()}],"rounded-t":[{"rounded-t":L()}],"rounded-r":[{"rounded-r":L()}],"rounded-b":[{"rounded-b":L()}],"rounded-l":[{"rounded-l":L()}],"rounded-ss":[{"rounded-ss":L()}],"rounded-se":[{"rounded-se":L()}],"rounded-ee":[{"rounded-ee":L()}],"rounded-es":[{"rounded-es":L()}],"rounded-tl":[{"rounded-tl":L()}],"rounded-tr":[{"rounded-tr":L()}],"rounded-br":[{"rounded-br":L()}],"rounded-bl":[{"rounded-bl":L()}],"border-w":[{border:G()}],"border-w-x":[{"border-x":G()}],"border-w-y":[{"border-y":G()}],"border-w-s":[{"border-s":G()}],"border-w-e":[{"border-e":G()}],"border-w-bs":[{"border-bs":G()}],"border-w-be":[{"border-be":G()}],"border-w-t":[{"border-t":G()}],"border-w-r":[{"border-r":G()}],"border-w-b":[{"border-b":G()}],"border-w-l":[{"border-l":G()}],"divide-x":[{"divide-x":G()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":G()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...F(),"hidden","none"]}],"divide-style":[{divide:[...F(),"hidden","none"]}],"border-color":[{border:B()}],"border-color-x":[{"border-x":B()}],"border-color-y":[{"border-y":B()}],"border-color-s":[{"border-s":B()}],"border-color-e":[{"border-e":B()}],"border-color-bs":[{"border-bs":B()}],"border-color-be":[{"border-be":B()}],"border-color-t":[{"border-t":B()}],"border-color-r":[{"border-r":B()}],"border-color-b":[{"border-b":B()}],"border-color-l":[{"border-l":B()}],"divide-color":[{divide:B()}],"outline-style":[{outline:[...F(),"none","hidden"]}],"outline-offset":[{"outline-offset":[ez,eY,eF]}],"outline-w":[{outline:["",ez,eQ,eH]}],"outline-color":[{outline:B()}],shadow:[{shadow:["","inner","none",c,e9,eX]}],"shadow-color":[{shadow:B()}],"inset-shadow":[{"inset-shadow":["none",p,e9,eX]}],"inset-shadow-color":[{"inset-shadow":B()}],"ring-w":[{ring:G()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:B()}],"ring-offset-w":[{"ring-offset":[ez,eH]}],"ring-offset-color":[{"ring-offset":B()}],"inset-ring-w":[{"inset-ring":G()}],"inset-ring-color":[{"inset-ring":B()}],"text-shadow":[{"text-shadow":["none",u,e9,eX]}],"text-shadow-color":[{"text-shadow":B()}],opacity:[{opacity:[ez,eY,eF]}],"mix-blend":[{"mix-blend":[...H(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":H()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[ez]}],"mask-image-linear-from-pos":[{"mask-linear-from":q()}],"mask-image-linear-to-pos":[{"mask-linear-to":q()}],"mask-image-linear-from-color":[{"mask-linear-from":B()}],"mask-image-linear-to-color":[{"mask-linear-to":B()}],"mask-image-t-from-pos":[{"mask-t-from":q()}],"mask-image-t-to-pos":[{"mask-t-to":q()}],"mask-image-t-from-color":[{"mask-t-from":B()}],"mask-image-t-to-color":[{"mask-t-to":B()}],"mask-image-r-from-pos":[{"mask-r-from":q()}],"mask-image-r-to-pos":[{"mask-r-to":q()}],"mask-image-r-from-color":[{"mask-r-from":B()}],"mask-image-r-to-color":[{"mask-r-to":B()}],"mask-image-b-from-pos":[{"mask-b-from":q()}],"mask-image-b-to-pos":[{"mask-b-to":q()}],"mask-image-b-from-color":[{"mask-b-from":B()}],"mask-image-b-to-color":[{"mask-b-to":B()}],"mask-image-l-from-pos":[{"mask-l-from":q()}],"mask-image-l-to-pos":[{"mask-l-to":q()}],"mask-image-l-from-color":[{"mask-l-from":B()}],"mask-image-l-to-color":[{"mask-l-to":B()}],"mask-image-x-from-pos":[{"mask-x-from":q()}],"mask-image-x-to-pos":[{"mask-x-to":q()}],"mask-image-x-from-color":[{"mask-x-from":B()}],"mask-image-x-to-color":[{"mask-x-to":B()}],"mask-image-y-from-pos":[{"mask-y-from":q()}],"mask-image-y-to-pos":[{"mask-y-to":q()}],"mask-image-y-from-color":[{"mask-y-from":B()}],"mask-image-y-to-color":[{"mask-y-to":B()}],"mask-image-radial":[{"mask-radial":[eY,eF]}],"mask-image-radial-from-pos":[{"mask-radial-from":q()}],"mask-image-radial-to-pos":[{"mask-radial-to":q()}],"mask-image-radial-from-color":[{"mask-radial-from":B()}],"mask-image-radial-to-color":[{"mask-radial-to":B()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":k()}],"mask-image-conic-pos":[{"mask-conic":[ez]}],"mask-image-conic-from-pos":[{"mask-conic-from":q()}],"mask-image-conic-to-pos":[{"mask-conic-to":q()}],"mask-image-conic-from-color":[{"mask-conic-from":B()}],"mask-image-conic-to-color":[{"mask-conic-to":B()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:D()}],"mask-repeat":[{mask:W()}],"mask-size":[{mask:_()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",eY,eF]}],filter:[{filter:["","none",eY,eF]}],blur:[{blur:U()}],brightness:[{brightness:[ez,eY,eF]}],contrast:[{contrast:[ez,eY,eF]}],"drop-shadow":[{"drop-shadow":["","none",m,e9,eX]}],"drop-shadow-color":[{"drop-shadow":B()}],grayscale:[{grayscale:["",ez,eY,eF]}],"hue-rotate":[{"hue-rotate":[ez,eY,eF]}],invert:[{invert:["",ez,eY,eF]}],saturate:[{saturate:[ez,eY,eF]}],sepia:[{sepia:["",ez,eY,eF]}],"backdrop-filter":[{"backdrop-filter":["","none",eY,eF]}],"backdrop-blur":[{"backdrop-blur":U()}],"backdrop-brightness":[{"backdrop-brightness":[ez,eY,eF]}],"backdrop-contrast":[{"backdrop-contrast":[ez,eY,eF]}],"backdrop-grayscale":[{"backdrop-grayscale":["",ez,eY,eF]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[ez,eY,eF]}],"backdrop-invert":[{"backdrop-invert":["",ez,eY,eF]}],"backdrop-opacity":[{"backdrop-opacity":[ez,eY,eF]}],"backdrop-saturate":[{"backdrop-saturate":[ez,eY,eF]}],"backdrop-sepia":[{"backdrop-sepia":["",ez,eY,eF]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":I()}],"border-spacing-x":[{"border-spacing-x":I()}],"border-spacing-y":[{"border-spacing-y":I()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",eY,eF]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[ez,"initial",eY,eF]}],ease:[{ease:["linear","initial",g,eY,eF]}],delay:[{delay:[ez,eY,eF]}],animate:[{animate:["none",w,eY,eF]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[h,eY,eF]}],"perspective-origin":[{"perspective-origin":v()}],rotate:[{rotate:V()}],"rotate-x":[{"rotate-x":V()}],"rotate-y":[{"rotate-y":V()}],"rotate-z":[{"rotate-z":V()}],scale:[{scale:J()}],"scale-x":[{"scale-x":J()}],"scale-y":[{"scale-y":J()}],"scale-z":[{"scale-z":J()}],"scale-3d":["scale-3d"],skew:[{skew:K()}],"skew-x":[{"skew-x":K()}],"skew-y":[{"skew-y":K()}],transform:[{transform:[eY,eF,"","none","gpu","cpu"]}],"transform-origin":[{origin:v()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:X()}],"translate-x":[{"translate-x":X()}],"translate-y":[{"translate-y":X()}],"translate-z":[{"translate-z":X()}],"translate-none":["translate-none"],zoom:[{zoom:[eP,eY,eF]}],accent:[{accent:B()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:B()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",eY,eF]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":B()}],"scrollbar-track-color":[{"scrollbar-track":B()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":I()}],"scroll-mx":[{"scroll-mx":I()}],"scroll-my":[{"scroll-my":I()}],"scroll-ms":[{"scroll-ms":I()}],"scroll-me":[{"scroll-me":I()}],"scroll-mbs":[{"scroll-mbs":I()}],"scroll-mbe":[{"scroll-mbe":I()}],"scroll-mt":[{"scroll-mt":I()}],"scroll-mr":[{"scroll-mr":I()}],"scroll-mb":[{"scroll-mb":I()}],"scroll-ml":[{"scroll-ml":I()}],"scroll-p":[{"scroll-p":I()}],"scroll-px":[{"scroll-px":I()}],"scroll-py":[{"scroll-py":I()}],"scroll-ps":[{"scroll-ps":I()}],"scroll-pe":[{"scroll-pe":I()}],"scroll-pbs":[{"scroll-pbs":I()}],"scroll-pbe":[{"scroll-pbe":I()}],"scroll-pt":[{"scroll-pt":I()}],"scroll-pr":[{"scroll-pr":I()}],"scroll-pb":[{"scroll-pb":I()}],"scroll-pl":[{"scroll-pl":I()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",eY,eF]}],fill:[{fill:["none",...B()]}],"stroke-w":[{stroke:[ez,eQ,eH,eq]}],stroke:[{stroke:["none",...B()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["start","end","right","left"],"inset-y":["inset-bs","inset-be","top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["ps","pe","pr","pl"],py:["pbs","pbe","pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["ms","me","mr","ml"],my:["mbs","mbe","mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-s","border-w-e","border-w-r","border-w-l"],"border-w-y":["border-w-bs","border-w-be","border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-s","border-color-e","border-color-r","border-color-l"],"border-color-y":["border-color-bs","border-color-be","border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-ms","scroll-me","scroll-mr","scroll-ml"],"scroll-my":["scroll-mbs","scroll-mbe","scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-ps","scroll-pe","scroll-pr","scroll-pl"],"scroll-py":["scroll-pbs","scroll-pbe","scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},n=e=>{let a=r(e);if(a)return a;let n=((e,t)=>{let{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:a,sortModifiers:n,postfixLookupClassGroupIds:s}=t,i=[],l=e.trim().split(ew),d="";for(let e=l.length-1;e>=0;e-=1){let t,c=l[e],{isExternal:p,modifiers:u,hasImportantModifier:m,baseClassName:f,maybePostfixModifierPosition:h}=r(c);if(p){d=c+(d.length>0?" "+d:d);continue}let b=!!h;if(b){let e=(t=o(f.substring(0,h)))&&s[t]?o(f):void 0;e&&e!==t&&(t=e,b=!1)}else t=o(f);if(!t){if(!b||!(t=o(f))){d=c+(d.length>0?" "+d:d);continue}b=!1}let g=0===u.length?"":1===u.length?u[0]:n(u).join(":"),w=m?g+"!":g,y=w+t;if(i.indexOf(y)>-1)continue;i.push(y);let k=a(t,b);for(let e=0;e<k.length;++e){let t=k[e];i.push(w+t)}d=c+(d.length>0?" "+d:d)}return d})(e,t);return o(e,n),n},a=e=>{var i;let l;return r=(t={cache:(e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,r=Object.create(null),o=Object.create(null),a=(a,n)=>{r[a]=n,++t>e&&(t=0,o=r,r=Object.create(null))};return{get(e){let t=r[e];return void 0!==t?t:void 0!==(t=o[e])?(a(e,t),t):void 0},set(e,t){e in r?r[e]=t:a(e,t)}}})((i=[].reduce((e,t)=>t(e),s())).cacheSize),parseClassName:(e=>{let{prefix:t,experimentalParseClassName:r}=e,o=e=>{let t,r=[],o=0,a=0,n=0,s=e.length;for(let i=0;i<s;i++){let s=e[i];if(0===o&&0===a){if(":"===s){r.push(e.slice(n,i)),n=i+1;continue}if("/"===s){t=i;continue}}"["===s?o++:"]"===s?o--:"("===s?a++:")"===s&&a--}let i=0===r.length?e:e.slice(n),l=i,d=!1;return i.endsWith("!")?(l=i.slice(0,-1),d=!0):i.startsWith("!")&&(l=i.slice(1),d=!0),eg(r,d,l,t&&t>n?t-n:void 0)};if(t){let e=t+":",r=o;o=t=>t.startsWith(e)?r(t.slice(e.length)):eg(eb,!1,t,void 0,!0)}if(r){let e=o;o=t=>r({className:t,parseClassName:e})}return o})(i),sortModifiers:(l=new Map,i.orderSensitiveModifiers.forEach((e,t)=>{l.set(e,1e6+t)}),e=>{let t=[],r=[];for(let o=0;o<e.length;o++){let a=e[o],n="["===a[0],s=l.has(a);n||s?(r.length>0&&(r.sort(),t.push(...r),r=[]),t.push(a)):r.push(a)}return r.length>0&&(r.sort(),t.push(...r)),t}),postfixLookupClassGroupIds:(e=>{let t=Object.create(null),r=e.postfixLookupClassGroups;if(r)for(let e=0;e<r.length;e++)t[r[e]]=!0;return t})(i),...(e=>{let t=(e=>{let{theme:t,classGroups:r}=e;return el(r,t)})(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:e=>{if(e.startsWith("[")&&e.endsWith("]")){var r;let t,o,a;return -1===(r=e).slice(1,-1).indexOf(":")?void 0:(o=(t=r.slice(1,-1)).indexOf(":"),(a=t.slice(0,o))?"arbitrary.."+a:void 0)}let o=e.split("-"),a=+(""===o[0]&&o.length>1);return ei(o,a,t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=o[e],a=r[e];if(t){if(a){let e=Array(a.length+t.length);for(let t=0;t<a.length;t++)e[t]=a[t];for(let r=0;r<t.length;r++)e[a.length+r]=t[r];return e}return t}return a||es}return r[e]||es}}})(i)}).cache.get,o=t.cache.set,a=n,n(e)},(...e)=>a(((...e)=>{let t,r,o=0,a="";for(;o<e.length;)(t=e[o++])&&(r=ey(t))&&(a&&(a+=" "),a+=r);return a})(...e)));function ts(...e){return tn(function(){for(var e,t,r=0,o="",a=arguments.length;r<a;r++)(e=arguments[r])&&(t=function e(t){var r,o,a="";if("string"==typeof t||"number"==typeof t)a+=t;else if("object"==typeof t)if(Array.isArray(t)){var n=t.length;for(r=0;r<n;r++)t[r]&&(o=e(t[r]))&&(a&&(a+=" "),a+=o)}else for(o in t)t[o]&&(a&&(a+=" "),a+=o);return a}(e))&&(o&&(o+=" "),o+=t);return o}(e))}let ti={brand:"border-l-brand",err:"border-l-err",warn:"border-l-warn-icon"};function tl({icon:e,tone:t="brand",meta:r,action:o,className:a,children:n}){return(0,H.jsxs)("div",{className:ts("flex gap-2.5 rounded-md border border-line border-l-[3px] bg-surface-2 px-3 py-2.5 text-[13px]",ti[t],a),children:[(0,H.jsx)("span",{className:"mt-px shrink-0 text-brand",children:e}),(0,H.jsxs)("div",{className:"min-w-0 flex-1",children:[n,r&&(0,H.jsx)("span",{className:"mt-1 block text-[12px] text-ink-faint",children:r})]}),o&&(0,H.jsx)("div",{className:"shrink-0",children:o})]})}var td=e.i(823449);let tc={crit:"err",warn:"warn",info:"brand"};function tp({note:e,now:t,showApp:r}){let o=["AI note",`from ${e.from}`,e.model,(0,v.$)(e.at,t),r&&e.appName?e.appName:null,"written by an agent, can be wrong"].filter(Boolean).join(" · ");return(0,H.jsxs)(tl,{icon:(0,H.jsx)(Q,{size:18,"aria-hidden":!0}),tone:tc[e.severity]??"brand",meta:o,action:(0,H.jsx)(td.DismissNoteButton,{id:e.id}),children:[(0,H.jsx)("b",{className:"font-medium",children:(0,H.jsx)(Z.MaskedText,{text:e.title})}),(0,H.jsx)(ea,{source:e.body})]})}async function tu({appId:e}){let{ok:t}=await (0,q.B)("owner");if(!t)return null;let r=new Date,o=await J(e,r).catch(()=>[]);return o.length?(0,H.jsx)("div",{className:"mb-3 flex flex-col gap-2.5",children:o.map(t=>(0,H.jsx)(tp,{note:t,now:r,showApp:void 0===e},t.id))}):null}e.s(["f",0,tu],643801);let tm=Y("outline","message-2","Message2",[["path",{d:"M8 9h8",key:"svg-0"}],["path",{d:"M8 13h6",key:"svg-1"}],["path",{d:"M9 18h-3a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-3l-3 3l-3 -3",key:"svg-2"}]]);var tf=e.i(287568),th=e.i(313931),tb=e.i(389382);async function tg({count:e}){let{ok:t}=await (0,q.B)("owner");if(!t)return null;if(!await T.provider().catch(()=>null))return(await J(void 0,new Date).catch(()=>[])).length?null:(0,H.jsxs)("p",{className:"mb-3 flex items-center gap-1.5 text-[13px] text-ink-soft",children:[(0,H.jsx)(Q,{size:16,"aria-hidden":!0,className:"text-ink-faint"}),(0,H.jsx)(tf.default,{href:"/ai/connect",children:th.v.recConnect})]});if(0===e)return null;let r=await L().catch(()=>null);if(!r)return(0,H.jsxs)("p",{className:"mb-3 flex items-center gap-1.5 text-[13px] text-ink-soft",children:[(0,H.jsx)(tm,{size:16,"aria-hidden":!0,className:"text-ink-faint"}),"No AI summary yet. ",(0,H.jsx)(tb.RegenerateButton,{label:"Summarise"})]});let o=new Date;return(0,H.jsxs)(tl,{className:"mb-3",icon:(0,H.jsx)(tm,{size:18,"aria-hidden":!0}),meta:(0,H.jsxs)(H.Fragment,{children:[`AI \xb7 ${r.model} \xb7 ${(0,v.$)(new Date(r.at),o)} \xb7 from ${r.count} items, names aliased \xb7 can be wrong, check the items below \xb7 `,(0,H.jsx)(tb.RegenerateButton,{label:"Regenerate"})]}),children:[(0,H.jsx)("b",{className:"font-medium",children:"Summary"}),(0,H.jsx)(ea,{source:r.text})]})}e.s(["f",0,tg],972857);var tw=e.i(343404),ty=e.i(401065),tk=e.i(583358);async function tv({appId:e}){let{ok:t}=await (0,q.B)("owner");if(!t)return null;let r=new Date,[o,a,n]=await Promise.all([T.provider().catch(()=>null),(0,ty.N)("app",e,r).catch(()=>null),(0,tw.c)(r).catch(()=>null)]),s=a?{...a,createdAt:a.createdAt.toISOString(),answeredAt:a.answeredAt?.toISOString()??null}:null;return(0,H.jsx)(tk.WhyAi,{appId:e,provider:o?{model:o.model}:null,question:s,nowMs:r.getTime(),agConnected:n?.agConnected??!1})}function tx({title:e,meta:t,flush:r,className:o,children:a}){return(0,H.jsxs)("section",{className:ts("min-w-0 rounded-lg border border-line bg-surface",o),children:[e&&(0,H.jsxs)("div",{className:ts("flex flex-wrap items-center gap-2 px-[18px] pt-3.5",r?"pb-2.5":"pb-1.5"),children:[(0,H.jsx)("h2",{className:"text-[15px]",children:e}),t&&(0,H.jsx)("span",{className:"ml-auto flex items-center gap-1.5 text-[12.5px] text-ink-soft",children:t})]}),r?a:(0,H.jsx)("div",{className:"px-[18px] pb-4 pt-2",children:a})]})}e.s(["f",0,tv],316957),Y("outline","alert-circle","AlertCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 8v4",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]]),Y("outline","alert-triangle","AlertTriangle",[["path",{d:"M12 9v4",key:"svg-0"}],["path",{d:"M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]]),Y("outline","circle-check","CircleCheck",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-0"}],["path",{d:"M9 12l2 2l4 -4",key:"svg-1"}]]),Y("outline","circle-dashed","CircleDashed",[["path",{d:"M8.56 3.69a9 9 0 0 0 -2.92 1.95",key:"svg-0"}],["path",{d:"M3.69 8.56a9 9 0 0 0 -.69 3.44",key:"svg-1"}],["path",{d:"M3.69 15.44a9 9 0 0 0 1.95 2.92",key:"svg-2"}],["path",{d:"M8.56 20.31a9 9 0 0 0 3.44 .69",key:"svg-3"}],["path",{d:"M15.44 20.31a9 9 0 0 0 2.92 -1.95",key:"svg-4"}],["path",{d:"M20.31 15.44a9 9 0 0 0 .69 -3.44",key:"svg-5"}],["path",{d:"M20.31 8.56a9 9 0 0 0 -1.95 -2.92",key:"svg-6"}],["path",{d:"M15.44 3.69a9 9 0 0 0 -3.44 -.69",key:"svg-7"}]]),Y("outline","circle-x","CircleX",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-0"}],["path",{d:"M10 10l4 4m0 -4l-4 4",key:"svg-1"}]]),Y("outline","help-circle","HelpCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 16v.01",key:"svg-1"}],["path",{d:"M12 13a2 2 0 0 0 .914 -3.782a1.98 1.98 0 0 0 -2.414 .483",key:"svg-2"}]]),Y("outline","info-circle","InfoCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]]),Y("outline","loader-2","Loader2",[["path",{d:"M12 3a9 9 0 1 0 9 9",key:"svg-0"}]]),Y("outline","moon","Moon",[["path",{d:"M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454l0 .008",key:"svg-0"}]]),Y("outline","player-pause","PlayerPause",[["path",{d:"M6 6a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -12",key:"svg-0"}],["path",{d:"M14 6a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -12",key:"svg-1"}]]),Y("outline","tool","Tool",[["path",{d:"M7 10h3v-3l-3.5 -3.5a6 6 0 0 1 8 8l6 6a2 2 0 0 1 -3 3l-6 -6a6 6 0 0 1 -8 -8l3.5 3.5",key:"svg-0"}]]);var tA=e.i(482272),tI=e.i(909743),tj=e.i(979898),tR=e.i(570191),tC=e.i(365156);let tS={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 tN(){let[e,t,r]=await Promise.all([(0,tR.I)(),(0,tR.K)(),(0,tR.X)()]),o=[10,15,20,30,45,60,90,120].filter(e=>e>=tR.l&&e<=tR.n),a=tR.r.map(e=>({kind:e,label:tC.H[e].label,risky:"risky"===tC.H[e].risk,what:tS[e]}));return(0,H.jsxs)(tx,{title:"Auto-actions",flush:!0,meta:"All off by default",children:[(0,H.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,H.jsx)(tf.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,H.jsx)(tA.AutoRunForm,{saved:e,rows:a}),(0,H.jsxs)("div",{className:"border-t border-line px-[18px] pb-4 pt-3.5",children:[(0,H.jsx)("h3",{className:"mb-1.5 text-[14px]",children:"Auto-rollback after a bad deploy"}),(0,H.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,H.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,H.jsx)(tI.AutoRollbackForm,{saved:t,choices:o})]}),(0,H.jsxs)("div",{className:"border-t border-line px-[18px] pb-4 pt-3.5",children:[(0,H.jsx)("h3",{className:"mb-1.5 text-[14px]",children:"Automatic security fixes"}),(0,H.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,H.jsxs)("ol",{className:"mb-2.5 list-decimal pl-5 text-ink-soft [&_li]:mt-0.5",children:[(0,H.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,H.jsx)("li",{children:"waits for GitHub's checks (all green), then Vercel's preview of the PR (READY);"}),(0,H.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,H.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,H.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,H.jsx)(tj.AutoSecurityForm,{saved:r,rollbackOn:t.enabled})]})]})}e.s(["f",0,tN],130078)},398706,e=>{let t=(0,e.i(997953).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");e.s(["DismissNoteButton",0,t])},823449,e=>{var t=e.i(398706);e.n(t)},95334,e=>{let t=(0,e.i(997953).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");e.s(["RegenerateButton",0,t])},389382,e=>{var t=e.i(95334);e.n(t)},9615,e=>{let t=(0,e.i(997953).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");e.s(["WhyAi",0,t])},583358,e=>{var t=e.i(9615);e.n(t)}],845656,(e,t,r)=>{let{createClientModuleProxy:o}=e.r(997953);e.n(o("[project]/node_modules/next/dist/client/app-dir/link.js"))}];
|
|
9
|
-
|
|
10
|
-
//# sourceMappingURL=_1g_prqb_u33e3._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[[794713,e=>{var r=e.i(875225),s=e.i(349129),o=e.i(924924),t=e.i(618916);async function n(){let[e]=await (0,o.f)().select({at:t.collectorRuns.finishedAt}).from(t.collectorRuns).where((0,r.b)((0,r.E)(t.collectorRuns.finishedAt),(0,r.y)(t.collectorRuns.trigger,["cron_job_org","qstash","manual"]))).orderBy((0,s.A)(t.collectorRuns.finishedAt)).limit(1);return e?.at??null}async function l(){let[e]=await (0,o.f)().select({at:t.collectorRuns.finishedAt}).from(t.collectorRuns).where((0,r.b)((0,r.E)(t.collectorRuns.finishedAt),(0,r.y)(t.collectorRuns.trigger,["cron_job_org","manual"]))).orderBy((0,s.A)(t.collectorRuns.finishedAt)).limit(1);return e?.at??null}e.s(["D",0,n,"d",0,l])},425498,e=>{var r=e.i(77193);let s="Not available in the demo";e.s(["v",0,"This is the Watchbell demo, so no AI model was asked. In your own install, this answer comes from the AI provider you connect under AI Gateway.","Y",0,s,"r",0,"Simulated in the demo: nothing was sent to a provider.","V",0,function(e=process.env){return(0,r.W)(e)?Response.json({error:"Not found"},{status:404}):null},"d",0,function(e=process.env){return(0,r.W)(e)?Response.json({error:s},{status:403,headers:{"Cache-Control":"no-store"}}):null},"M",0,function(e,r=Math.random){return{ok:!0,statusCode:e,latencyMs:90+Math.round(260*r()),error:null}}])},994117,e=>{let r="wp_session";function s(e=process.env.SITE_URL){return{httpOnly:!0,sameSite:"lax",secure:function(e){try{return"https:"===new URL(e??"").protocol}catch{return!1}}(e),path:"/",maxAge:2592e3}}e.s(["J",0,r,"N",0,function(e,o){e.set(r,"",{...s(o),maxAge:0})},"X",0,s])}],627954,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0k7o0hgdraix2._.js","server/chunks/src_db_pglite_ts_08i6xx3l4nr6d._.js","server/chunks/node_modules_drizzle-orm_pglite_driver_1oz4kfte3086g.js","server/chunks/node_modules_@electric-sql_pglite_dist_chunk-DDJLRBDX_0c08q8yl7o-29.js"].map(r=>e.l(r))).then(()=>r(350649)))},34166,e=>{e.v(r=>Promise.all(["server/chunks/src_lib_demo_cookie_ts_10kdeuitc9t_3._.js"].map(r=>e.l(r))).then(()=>r(776660)))},447457,e=>{e.v(r=>Promise.all(["server/chunks/[root-of-the-server]__0kzpzdkpz_nt0._.js","server/chunks/node_modules_drizzle-orm_pglite_driver_1oz4kfte3086g.js","server/chunks/node_modules_@electric-sql_pglite_dist_chunk-DDJLRBDX_0c08q8yl7o-29.js"].map(r=>e.l(r))).then(()=>r(927075)))},329856,e=>{e.v(r=>Promise.all(["server/chunks/src_lib_demo_seed_members_ts_1dkquszad7l73._.js"].map(r=>e.l(r))).then(()=>r(338478)))},70885,e=>{e.v(r=>Promise.all(["server/chunks/src_lib_demo_session_ts_1rzsrrdzibxax._.js","server/chunks/src_lib_demo_0rbejiyw_ry41._.js"].map(r=>e.l(r))).then(()=>r(761137)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=src_12wdz9bdn7a-7._.js.map
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[537622,e=>{var t=e.i(665044),a=e.i(77193);e.s(["f",0,function(e){if((0,a.r)())for(let a of new Set(e))try{let e;e=a,(0,t.revalidateTag)(e,{expire:0})}catch(e){console.warn(`cache: couldn't expire ${a}: ${e instanceof Error?e.message.slice(0,120):"unknown"}`)}}])},140318,977832,e=>{var t=e.i(875225),a=e.i(518899),r=e.i(924924),n=e.i(618916),s=e.i(390775),o=e.i(921991),i=e.i(656083),l=e.i(629955),u=e.i(497867);function d(e){if(!e)return null;if("unknown"!==e.state)return e.state;let t=e.data?.lastGoodState;return"string"==typeof t&&u.f.includes(t)?t:null}let c={turso_database:"Turso database",upstash_redis:"Upstash Redis",d1_database:"D1 database"};function f(e){let{prev:t,next:a}=e;if(null===t||"unknown"===t||"unknown"===a||t===a)return null;let r={resourceId:e.resourceId,type:"database",at:e.at};if("supabase_project"===e.kind)return"paused"===a?{...r,reason:"DatabasePaused",kind:"paused",message:"Supabase project paused",detail:"Status changed to INACTIVE"}:"ok"===a?{...r,reason:"DatabaseRestored",kind:"ok",message:"Supabase project active again",detail:"Status changed to ACTIVE_HEALTHY"}:"warn"===a?{...r,reason:"DatabaseUnhealthy",kind:"warn",message:"Supabase project unhealthy",detail:e.label}:"err"===a?{...r,reason:"DatabaseFailed",kind:"err",message:`Supabase project: ${e.label.toLowerCase()}`,detail:e.label}:null;if("neon_project"===e.kind)return"err"===a?{...r,reason:"NeonSuspended",kind:"err",message:"Neon compute suspended",detail:e.label}:"err"===t&&("ok"===a||"idle"===a)?{...r,reason:"NeonAvailable",kind:"ok",message:"Neon compute available again",detail:e.label}:null;let n=c[e.kind];if(n)return"err"===a?{...r,reason:"DatabaseFailed",kind:"err",message:`${n}: ${e.label.toLowerCase()}`,detail:e.label}:"off"===a?{...r,reason:"DatabaseMissing",kind:"off",message:`${n} missing`,detail:e.label}:"ok"===a&&("err"===t||"off"===t)?{...r,reason:"DatabaseRestored",kind:"ok",message:`${n} available again`,detail:e.label}:null;if("err"===a){let t="Daily quota used up"===e.label;return{...r,reason:t?"FirestoreQuotaUsedUp":"FirestoreUnreachable",kind:"err",message:t?"Firestore daily quota used up":"Firestore not reachable",detail:e.label}}return"off"===a?{...r,reason:"FirestoreMissing",kind:"off",message:"Firestore database missing",detail:e.label}:"ok"===a&&("err"===t||"off"===t)?{...r,reason:"FirestoreReachable",kind:"ok",message:"Firestore reachable again",detail:e.label}:null}function p(e,t){return"auth"===e.kind?"auth":"scope"===e.kind?t?"auth":"column":"missing"===e.kind?t?"unknown":"column":"unknown"}e.s(["t",0,p,"K",0,f,"F",0,d],977832);var w=e.i(960063),m=e.i(800366),h=e.i(326003),g=e.i(843448),y=e.i(547499),b=e.i(795194),k=e.i(780148),v=e.i(443917),I=e.i(342833),A=e.i(442473);let S="skipped the rest, time budget used";function $(e){let t=e.deadline-Date.now()-500;if(t<250)throw Error(S);return{timeoutMs:Math.min(5e3,t)}}async function D(e,t,a){let r=!1;return{out:await (0,A.P)(t,3,async t=>{let n;try{n=$(e)}catch{r=!0;return}return a(t,n)}),skipped:r}}function x(e){if(e)throw Error(S)}async function E(e){let a=await (0,r.f)().select().from(n.accounts).where((0,t.b)((0,t.u)(n.accounts.provider,e),(0,t.u)(n.accounts.status,"ok"))),s=(0,y.f)().OPS_ENCRYPTION_KEY;return a.map(e=>({acc:e,credential:(0,o.V)({ciphertext:e.credentialCiphertext,iv:e.credentialIv},s)}))}function j(e,a){return(0,r.f)().select({r:n.resources,s:n.snapshots}).from(n.resources).leftJoin(n.snapshots,(0,t.u)(n.snapshots.resourceId,n.resources.id)).where((0,t.b)((0,t.u)(n.resources.accountId,e),(0,t.u)(n.resources.kind,a),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt))).limit(100)}let M=e=>a.B`${n.snapshots.data} || ${JSON.stringify(e)}::jsonb`;async function O(e,t,a){let s=d(e.s?{state:e.s.state,data:e.s.data}:null),o="unknown"===t.state,i=o?s?{lastGoodState:s}:{}:{...t.patch,lastGoodState:t.state},l=!o&&s!==t.state;return await (0,r.f)().insert(n.snapshots).values({resourceId:e.r.id,state:t.state,data:i,collectedAt:a,stateSince:a}).onConflictDoUpdate({target:n.snapshots.resourceId,set:{state:t.state,data:M(i),...o?{}:{collectedAt:a},...l?{stateSince:a}:{}}}),o?null:f({kind:e.r.kind,resourceId:e.r.id,prev:s,next:t.state,label:t.label,at:a})}async function R(e,a){await (0,r.f)().update(n.snapshots).set({data:M(a)}).where((0,t.u)(n.snapshots.resourceId,e.r.id))}let N=e=>(0,i.f)(e);async function C(e,a,o,i,l){if("auth"===p(i,!0)){let e=(0,s.E)({ok:!1,kind:"auth",error:i.error});e&&await (0,r.f)().update(n.accounts).set({...e,updatedAt:l.now}).where((0,t.u)(n.accounts.id,a.id))}for(let e of o)await O(e,{state:"unknown",label:"Unknown",patch:{}},l.now);l.errors.push(`${e}/${a.label}: ${i.error}`)}let P=e=>e.toISOString();async function T(e){return e.length?new Set((await (0,r.f)().select({app:n.links.fromResourceId,state:n.snapshots.state,data:n.snapshots.data}).from(n.links).innerJoin(n.resources,(0,t.u)(n.resources.id,n.links.toResourceId)).innerJoin(n.snapshots,(0,t.u)(n.snapshots.resourceId,n.resources.id)).where((0,t.b)((0,t.u)(n.links.kind,"uses_db"),(0,t.y)(n.links.fromResourceId,e),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt)))).filter(e=>"paused"===e.state||"unknown"===e.state&&"paused"===e.data.lastGoodState).map(e=>e.app)):new Set}async function z(e){if(!e.protectOnly||await (0,l.g)())for(let{acc:t,credential:a}of(await E("supabase"))){if($(e),!a){e.errors.push(`supabase/${t.label}: credential can't be read`);continue}let r=await j(t.id,"supabase_project");if(!r.length)continue;let n=await (0,I.W)(a,$(e));if(!n.ok){e.protectOnly?e.errors.push(`supabase/${t.label}: ${n.error}`):await C("supabase",t,r,n,e);continue}let s=new Map(n.data.map(e=>[e.ref,e])),o=[];for(let t of e.protectOnly?[]:r){let a=s.get(t.r.externalId);if(!a){o.push(await O(t,{state:"off",label:"Not found",patch:{status:"REMOVED"}},e.now));continue}let r=(0,g.P)(a.status),n=d(t.s?{state:t.s.state,data:t.s.data}:null),i={status:a.status,region:a.region,pgVersion:a.pgVersion,orgSlug:a.orgSlug};"paused"===r.state&&"paused"!==n&&(i.pausedBeforeSeen=null===n),o.push(await O(t,{state:r.state,label:r.label,patch:i},e.now))}await N(o);let i=new Map(r.map(e=>[e.r.externalId,e.r.id])),u=n.data.map(e=>({resourceId:i.get(e.ref)??null,accountId:t.id,status:e.status,orgSlug:e.orgSlug}));await (0,l.z)(e.now,u,e.deadline).catch(()=>{console.warn("auto-restore failed"),e.errors.push("auto-restore failed")})}}async function B(e){for(let{acc:t,credential:a}of(await E("supabase"))){if($(e),!a)continue;let r=await j(t.id,"supabase_project");if(!r.length)continue;let n=new Map(r.map(e=>[e.r.id,(0,h.k)(h.B,e.s?.data)])),s=new Map;for(let r of new Set([...n.values()].map(e=>e.orgSlug).filter(e=>!!e))){let n=await (0,I.K)(a,r,$(e));s.set(r,n.ok&&null!==n.data?"free"===n.data:null),n.ok||"scope"===n.kind||e.errors.push(`supabase/${t.label} plan: ${n.error}`)}let{skipped:o}=await D(e,r,async(t,r)=>{let o=n.get(t.r.id),i={freeOrg:o.orgSlug?s.get(o.orgSlug)??null:null};if((o.status??"").startsWith("ACTIVE_")){let[n,s]=await Promise.all([(0,I.F)(a,t.r.externalId,r),(0,I.Z)(a,t.r.externalId,r)]);n.ok?Object.assign(i,{health:n.data.map(({name:e,status:t})=>({name:e,status:t})),healthAt:P(e.now),healthError:null}):"column"===p(n,!1)?i.healthError=n.error:e.errors.push(`supabase/${t.r.name} health: ${n.error}`),s.ok?Object.assign(i,{lastTrafficAt:(0,g.H)(s.data)?.toISOString()??null,trafficAt:P(e.now),trafficError:null}):"column"===p(s,!1)?i.trafficError=s.error:e.errors.push(`supabase/${t.r.name} traffic: ${s.error}`)}await R(t,i)});x(o)}}async function _(e){for(let{acc:t,credential:a}of(await E("neon"))){if($(e),!a){e.errors.push(`neon/${t.label}: credential can't be read`);continue}let r=await j(t.id,"neon_project");if(!r.length)continue;let{out:n,skipped:s}=await D(e,r,(e,t)=>Promise.all([(0,v.Z)(a,e.r.externalId,t),(0,v.k)(a,e.r.externalId,t),(0,v.e)(a,e.r.externalId,t)])),o=n.flat().find(e=>void 0!==e&&!e.ok&&"auth"===e.kind);if(o){await C("neon",t,r,o,e);continue}let i=[];for(let[t,a]of r.entries()){let r=n[t];if(!r)continue;let[s,o,l]=r;if(!s.ok||!o.ok||!l.ok){let t=[s,o,l].find(e=>!e.ok);"missing"===t.kind?i.push(await O(a,{state:"off",label:"Not found",patch:{}},e.now)):(await O(a,{state:"unknown",label:"Unknown",patch:{}},e.now),e.errors.push(`neon/${a.r.name}: ${t.error}`));continue}let u=(0,m.p)({endpoints:o.data,computeSeconds:s.data.computeSeconds});i.push(await O(a,{state:u.state,label:u.label,patch:{region:s.data.region,pgVersion:s.data.pgVersion,computeSeconds:s.data.computeSeconds,transferBytes:s.data.transferBytes,activeSeconds:s.data.activeSeconds,periodStart:s.data.periodStart,periodEnd:s.data.periodEnd,endpoints:o.data,branches:l.data}},e.now))}await N(i),x(s)}}let W=e=>e.ok?{latencyMs:e.data.latencyMs,pingError:null,pingReason:null,pingKind:null}:{pingError:e.error,pingReason:e.reason??null,pingKind:e.kind};async function U(e){for(let{acc:t,credential:a}of(await E("firebase"))){$(e);let r=a?(0,k.p)(a):null;if(!r){e.errors.push(`firebase/${t.label}: credential can't be read`);continue}let n=await j(t.id,"firestore");if(!n.length)continue;let s=await (0,k.X)(r,$(e));if(!s.ok){await C("firebase",t,n,s,e);continue}let{out:o,skipped:i}=await D(e,n,(e,t)=>(0,b.G)(s.data,e.r.externalId,t)),l=[];for(let[t,a]of n.entries()){let r=o[t];if(!r)continue;let n=(0,w.g)(r);"unknown"!==n.state||r.ok||e.errors.push(`firebase/${a.r.name}: ${r.error}`),l.push(await O(a,{...n,patch:W(r)},e.now))}await N(l),x(i)}}async function F(e){for(let{acc:t,credential:a}of(await E("firebase"))){$(e);let r=a?(0,k.p)(a):null;if(!r)continue;let n=(await j(t.id,"firestore")).filter(e=>e.s?.state!=="off");if(!n.length)continue;let s=await (0,k.X)(r,$(e));if(!s.ok){e.errors.push(`firebase/${t.label}: ${s.error}`);continue}let o=(0,w.a)(e.now),{skipped:i}=await D(e,n,async(t,a)=>{let r=await (0,b.W)(s.data,t.r.externalId,o,e.now,a);r.ok?await R(t,{...r.data,opsAt:P(e.now),opsError:null}):"column"===p(r,!1)?await R(t,{reads:null,writes:null,deletes:null,opsAt:P(e.now),opsError:/requires billing/i.test(r.message??"")?"Not available on Spark: Firestore usage needs billing (Blaze plan)":"SERVICE_DISABLED"===r.reason?"Not readable: the Cloud Monitoring API is off in this project":"Not readable: the service account needs monitoring.viewer"}):e.errors.push(`firebase/${t.r.name} usage: ${r.error}`)});x(i)}}async function V(e){let t=Date.now()+2*Math.max(0,e.deadline-Date.now())/3,a=await L(()=>J({...e,deadline:t})),r=await L(()=>Y(e));if(a)throw a;if(r)throw r}async function L(e){try{return await e(),null}catch(e){return e instanceof Error?e:Error(String(e))}}async function J(e){for(let{acc:t,credential:a}of(await E("supabase")))if($(e),a)for(let r of(await j(t.id,"supabase_project"))){let t=(0,h.k)(h.B,r.s?.data);if(!(0,g.z)({status:t.status??"",lastTrafficAt:t.lastTrafficAt?new Date(t.lastTrafficAt):null,sizeAt:t.sizeAt?new Date(t.sizeAt):null,now:e.now}))continue;let n=await (0,I.r)(a,r.r.externalId,$(e));n.ok?await R(r,{sizeBytes:n.data,sizeAt:P(e.now),sizeError:null}):"column"===p(n,!1)?await R(r,{sizeError:n.error}):e.errors.push(`supabase/${r.r.name} size: ${n.error}`)}}async function Y(e){for(let{acc:t,credential:a}of(await E("firebase"))){$(e);let r=a?(0,k.p)(a):null;if(!r)continue;let n=(await j(t.id,"firestore")).filter(e=>e.s?.state!=="off");if(!n.length)continue;let s=await (0,k.X)(r,$(e));if(!s.ok){e.errors.push(`firebase/${t.label}: ${s.error}`);continue}let{skipped:o}=await D(e,n,async(t,a)=>{let r=await (0,b.q)(s.data,t.r.externalId,a);r.ok?await R(t,{authUsers:r.data,authAt:P(e.now),authError:null}):"column"===p(r,!1)?await R(t,{authError:"Not readable: the service account needs firebaseauth.viewer"}):e.errors.push(`firebase/${t.r.name} users: ${r.error}`)});x(o)}}e.s(["w",0,C,"O",0,E,"q",0,T,"T",0,D,"W",0,x,"M",0,N,"I",0,L,"f",0,V,"g",0,U,"x",0,F,"h",0,_,"N",0,z,"y",0,B,"e",0,j,"s",0,$,"a",0,O],140318)},956846,e=>{var t=e.i(875225),a=e.i(518899),r=e.i(924924),n=e.i(618916),s=e.i(764766),o=e.i(390775),i=e.i(537622),l=e.i(749124),u=e.i(532148),d=e.i(988294),c=e.i(739886),f=e.i(656083),p=e.i(921991),w=e.i(381725),m=e.i(483100),h=e.i(111970),g=e.i(703352),y=e.i(948736),b=e.i(655060),k=e.i(762504),v=e.i(547499),I=e.i(275426),A=e.i(873354),S=e.i(177706),$=e.i(61926),D=e.i(140318),x=e.i(977832),E=e.i(89491),j=e.i(592951),M=e.i(691734),O=e.i(43790),R=e.i(11552);async function N(e){let t=[await (0,D.I)(()=>P(e)),await (0,D.I)(()=>z(e)),await (0,D.I)(()=>B(e))].find(e=>null!==e);if(t)throw t}let C=e=>e.toISOString();async function P(e){for(let{acc:t,credential:a}of(await (0,D.O)("turso"))){if((0,D.s)(e),!a){e.errors.push(`turso/${t.label}: credential can't be read`);continue}let r=await (0,D.e)(t.id,"turso_database");if(!r.length)continue;let n=await (0,M.u)(a,(0,D.s)(e));if(!n.ok){await (0,D.w)("turso",t,r,n,e);continue}let s=new Set(r.map(e=>String(e.r.meta.org??""))),o=[];for(let i of n.data.filter(e=>s.has(e.slug))){let[n,s]=await Promise.all([(0,M.X)(a,i.slug,(0,D.s)(e)),(0,M.d)(a,i.slug,(0,D.s)(e))]),l=r.filter(e=>e.r.meta.org===i.slug);if(!n.ok){for(let t of l)await (0,D.a)(t,{state:"unknown",label:"Unknown",patch:{}},e.now);e.errors.push(`turso/${t.label}: ${n.error}`);continue}let u=new Map(n.data.map(e=>[e.id,e]));for(let t of l)o.push(await T(t,u.get(t.r.externalId),i,s,e))}let i=new Set(n.data.map(e=>e.slug));for(let t of r.filter(e=>!i.has(String(e.r.meta.org??""))))o.push(await (0,D.a)(t,{state:"off",label:"Organization not visible to this token",patch:{}},e.now));await (0,D.M)(o)}}async function T(e,t,a,r,n){if(!t)return(0,D.a)(e,{state:"off",label:"Not found",patch:{}},n.now);let s=(0,E.h)({blockReads:t.blockReads,blockWrites:t.blockWrites,orgBlockedReads:a.blockedReads,orgBlockedWrites:a.blockedWrites}),o={org:a.slug,group:t.group,primaryRegion:t.primaryRegion,plan:a.plan,blockReads:t.blockReads,blockWrites:t.blockWrites};if(r.ok){let e=r.data.byDb.get(t.id);Object.assign(o,{rowsRead:e?.rowsRead??null,rowsWritten:e?.rowsWritten??null,storageBytes:e?.storageBytes??null,orgRowsRead:r.data.org.rowsRead,orgRowsWritten:r.data.org.rowsWritten,orgStorageBytes:r.data.org.storageBytes,orgDatabases:r.data.org.databases,usageAt:C(n.now),usageError:null})}else"column"===(0,x.t)(r,!1)?o.usageError=r.error:n.errors.push(`turso/${e.r.name} usage: ${r.error}`);return(0,D.a)(e,{...s,patch:o},n.now)}async function z(e){for(let{acc:t,credential:a}of(await (0,D.O)("upstash"))){(0,D.s)(e);let r=a?(0,O.L)(a):null;if(!r){e.errors.push(`upstash/${t.label}: credential can't be read`);continue}let n=await (0,D.e)(t.id,"upstash_redis");if(!n.length)continue;let s=await (0,O.M)(r,(0,D.s)(e));if(!s.ok){await (0,D.w)("upstash",t,n,s,e);continue}let o=new Map(s.data.map(e=>[e.id,e])),{out:i,skipped:l}=await (0,D.T)(e,n,(e,t)=>o.has(e.r.externalId)?(0,O.Z)(r,e.r.externalId,t):Promise.resolve(null)),u=[];for(let[t,a]of n.entries()){let r=o.get(a.r.externalId);if(!r){u.push(await (0,D.a)(a,{state:"off",label:"Not found",patch:{}},e.now));continue}let n=(0,E.t)(r.state),s={region:r.region,status:r.state,type:r.type},l=i[t];l?.ok?Object.assign(s,{...l.data,statsAt:C(e.now),statsError:null}):l&&"column"===(0,x.t)(l,!1)?s.statsError=l.error:l&&e.errors.push(`upstash/${a.r.name} stats: ${l.error}`),u.push(await (0,D.a)(a,{...n,patch:s},e.now))}await (0,D.M)(u),(0,D.W)(l)}}async function B(e){let t={};for(let{acc:a,credential:r}of(await (0,D.O)("cloudflare"))){if((0,D.s)(e),!r)continue;let n=await W(a.id,r,e);if(!n.length){t[a.id]={d1:"error",analytics:null,at:C(e.now),note:"No Cloudflare account found for this token"};continue}let s="ok",o=null;for(let t of n){let n=await (0,j.L)(r,t,(0,D.s)(e));if(!n.ok){"error"==(s="scope"===n.kind||"auth"===n.kind?"missing":"error")&&e.errors.push(`d1/${a.label}: ${n.error}`);continue}await U(a.id,t,n.data,e.now);let i=(await (0,D.e)(a.id,"d1_database")).filter(e=>e.r.meta.accountId===t);if(!i.length)continue;let l=await (0,j.t)(r,t,(0,j.Y)(e.now),(0,D.s)(e));o=l.ok?o??"ok":"scope"===l.kind?"missing":o??"error",l.ok||"scope"===l.kind||e.errors.push(`d1/${a.label} analytics: ${l.error}`);let{out:u,skipped:d}=await (0,D.T)(e,i,(e,a)=>(0,j.m)(r,t,e.r.externalId,a)),c=new Map((l.ok?l.data:[]).map(e=>[e.databaseId,e])),f=u.map(e=>e?.ok?e.data.sizeBytes??0:0),p={accountRowsRead:l.ok?l.data.reduce((e,t)=>e+t.rowsRead,0):null,accountRowsWritten:l.ok?l.data.reduce((e,t)=>e+t.rowsWritten,0):null,accountSizeBytes:u.every(e=>e?.ok)?f.reduce((e,t)=>e+t,0):null,accountDatabases:n.data.length},w=[];for(let[t,a]of i.entries()){let r=u[t];void 0!==r&&w.push(await _(a,r,c.get(a.r.externalId)??null,l.ok,l.ok?null:l.error,p,e))}await (0,D.M)(w),(0,D.W)(d)}t[a.id]={d1:s,analytics:o,at:C(e.now),note:null}}await (0,r.f)().insert(n.settings).values({key:R.f,value:t}).onConflictDoUpdate({target:n.settings.key,set:{value:t,updatedAt:e.now}})}async function _(e,t,a,r,n,s,o){let i={accountId:e.r.meta.accountId??null,createdAt:e.r.meta.createdAt??null,accountDatabases:s.accountDatabases};if(t.ok?Object.assign(i,{sizeBytes:t.data.sizeBytes,numTables:t.data.numTables,readReplication:t.data.readReplication,detailsAt:C(o.now),detailsError:null}):"scope"===t.kind?i.detailsError=t.error:o.errors.push(`d1/${e.r.name}: ${t.error}`),r?Object.assign(i,{rowsRead:a?.rowsRead??0,rowsWritten:a?.rowsWritten??0,readQueries:a?.readQueries??0,writeQueries:a?.writeQueries??0,accountRowsRead:s.accountRowsRead,accountRowsWritten:s.accountRowsWritten,usageDay:(0,j.Y)(o.now),usageAt:C(o.now),usageError:null}):i.usageError=n,null!==s.accountSizeBytes&&(i.accountSizeBytes=s.accountSizeBytes),!t.ok&&"transient"===t.kind)return(0,D.a)(e,{state:"unknown",label:"Unknown",patch:{}},o.now);let l=(0,E.c)(r?s:{accountRowsRead:null,accountRowsWritten:null});return(0,D.a)(e,{...l,patch:i},o.now)}async function W(e,a,s){let o=new Set,i=await (0,j.N)(a,(0,D.s)(s));if(i.ok)for(let e of i.data)o.add(e.id);for(let a of(await (0,r.f)().select({meta:n.resources.meta}).from(n.resources).where((0,t.b)((0,t.u)(n.resources.accountId,e),(0,t.u)(n.resources.kind,"zone"),(0,t.M)(n.resources.goneAt))).limit(200)))"string"==typeof a.meta.accountId&&/^[0-9a-f]{32}$/i.test(a.meta.accountId)&&o.add(a.meta.accountId);return[...o].slice(0,5)}async function U(e,a,s,o){let i=(await (0,r.f)().select({id:n.resources.id,externalId:n.resources.externalId,meta:n.resources.meta,goneAt:n.resources.goneAt}).from(n.resources).where((0,t.b)((0,t.u)(n.resources.accountId,e),(0,t.u)(n.resources.kind,"d1_database")))).filter(e=>e.meta.accountId===a),l=new Map(i.map(e=>[e.externalId,e])),u=new Set(s.map(e=>e.uuid));await (0,r.f)().transaction(async r=>{for(let i of s){let s={accountId:a,createdAt:i.createdAt},u=l.get(i.uuid);u?await r.update(n.resources).set({name:i.name,meta:s,lastSeenAt:o,goneAt:null,updatedAt:o}).where((0,t.u)(n.resources.id,u.id)):await r.insert(n.resources).values({accountId:e,kind:"d1_database",externalId:i.uuid,name:i.name,meta:s,monitored:!0,lastSeenAt:o}).onConflictDoNothing({target:[n.resources.accountId,n.resources.kind,n.resources.externalId]})}let d=i.filter(e=>!u.has(e.externalId)&&!e.goneAt).map(e=>e.id);d.length&&await r.update(n.resources).set({goneAt:o,updatedAt:o}).where((0,t.y)(n.resources.id,d))})}var F=e.i(442473),V=e.i(666680),L=e.i(473283),J=e.i(422067);async function Y(e=new Date){let t=(0,V.randomUUID)(),n=new Date(e.getTime()+J.d).toISOString(),s=await (0,r.f)().execute(a.B`
|
|
2
|
-
insert into ops.settings (key, value) values ('collector.lease', ${JSON.stringify({until:n,owner:t})}::jsonb)
|
|
3
|
-
on conflict (key) do update set value = excluded.value, updated_at = now()
|
|
4
|
-
where (ops.settings.value->>'until')::timestamptz < ${e.toISOString()}::timestamptz
|
|
5
|
-
returning key`);return(0,L.f)(s).length>0?t:null}async function q(e){await (0,r.f)().execute(a.B`
|
|
6
|
-
update ops.settings set value = jsonb_build_object('until', '1970-01-01T00:00:00Z'), updated_at = now()
|
|
7
|
-
where key = 'collector.lease' and value->>'owner' = ${e}`)}var K=e.i(679270);let Z=/^v?(\d{1,9})\.(\d{1,9})\.(\d{1,9})(?:-([0-9A-Za-z.-]{1,64}))?(?:\+[0-9A-Za-z.-]{1,64})?$/,G=/^\d{4}-\d{2}-\d{2}$/;function X(e){let t="string"==typeof e?Z.exec(e.trim()):null;if(!t)return null;let[a,r,n]=[t[1],t[2],t[3]].map(Number);return{major:a,minor:r,patch:n,pre:t[4]??null,text:`${a}.${r}.${n}${t[4]?`-${t[4]}`:""}`}}function H(e,t){return e.major!==t.major?e.major-t.major:e.minor!==t.minor?e.minor-t.minor:e.patch!==t.patch?e.patch-t.patch:e.pre===t.pre?0:null===e.pre?1:null===t.pre||e.pre<t.pre?-1:1}function Q(e){let t=(e&&"object"==typeof e?e:null)?.result?.releases;if(!Array.isArray(t)||0===t.length)return null;let a=[];for(let e of t){if(!e||"object"!=typeof e||"string"!=typeof e.name||"boolean"!=typeof e.isEol||null!=e.eolFrom&&("string"!=typeof e.eolFrom||!G.test(e.eolFrom)))return null;a.push({name:e.name,isEol:e.isEol,eolFrom:e.eolFrom??null})}return a}var ee=e.i(583521);let et="runtime.node";function ea(e=process.env){let t=(0,ee.N)(e,"NO_UPDATE_CHECK"),a=t?.value.trim()??"";return{off:""!==a&&!/^(0|false|no|off)$/i.test(a),name:t?.name??"WATCHBELL_NO_UPDATE_CHECK"}}async function er(e,t,a,r){let n;try{n=await a(e,{method:"GET",headers:{Accept:"application/json","Accept-Encoding":"gzip"},signal:AbortSignal.timeout(r),cache:"no-store"})}catch{return{ok:!1,error:`Couldn't reach ${t}`}}if(!n.ok)return{ok:!1,error:`${t} returned an error (${n.status})`};try{return{ok:!0,body:await n.json()}}catch{return{ok:!1,error:`${t} answered in a format the console doesn't recognise`}}}async function en(e={}){let t=e.fetch??fetch,a=e.timeoutMs??8e3,[r,n]=await Promise.all([er("https://nodejs.org/dist/index.json","nodejs.org",t,a),er("https://endoflife.date/api/v1/products/nodejs/","endoflife.date",t,a)]),s=r.ok?function(e){if(!Array.isArray(e)||0===e.length)return null;let t=[],a=new Map;for(let r of e){if(!r||"object"!=typeof r||"boolean"!=typeof r.security)return null;let e=X(r.version);if(!e||null!==e.pre||!String(r.version).startsWith("v"))return null;r.security&&t.push(e);let n=a.get(e.major);(!n||H(e,n)>0)&&a.set(e.major,e)}return t.sort((e,t)=>H(t,e)),{security:t.map(e=>e.text),latest:Object.fromEntries([...a].sort((e,t)=>t[0]-e[0]).map(([e,t])=>[String(e),t.text]))}}(r.body):null,o=n.ok?Q(n.body):null,i=e=>`${e} answered in a format the console doesn't recognise`;return{index:s,indexError:r.ok?s?null:i("nodejs.org"):r.error,cycles:o,cyclesError:n.ok?o?null:i("endoflife.date"):n.error}}let es=e=>"string"==typeof e&&Number.isFinite(Date.parse(e))?e:null,eo=e=>"string"==typeof e?e:null;async function ei(){var e;let[a]=await (0,r.f)().select({value:n.settings.value}).from(n.settings).where((0,t.u)(n.settings.key,et)).limit(1);return a?(e=a.value)&&"object"==typeof e?{index:function(e){let t=e&&"object"==typeof e?e:null;if(!t||!Array.isArray(t.security)||!t.latest||"object"!=typeof t.latest)return null;let a=t.security.map(X),r=Object.entries(t.latest).map(([e,t])=>[e,X(t)]);return a.some(e=>!e)||r.some(([e,t])=>!t||String(t.major)!==e)?null:{security:a.map(e=>e.text),latest:Object.fromEntries(r.map(([e,t])=>[e,t.text]))}}(e.index),indexCheckedAt:es(e.indexCheckedAt),indexError:eo(e.indexError),cycles:Q({result:{releases:e.cycles}}),cyclesCheckedAt:es(e.cyclesCheckedAt),cyclesError:eo(e.cyclesError)}:null:null}async function el(e,t,a,s=process.env){let o;if(ea(s).off)return;let i=t-Date.now();if(i<1e3)throw Error("skipped, time budget used");let l=await en({timeoutMs:Math.min(8e3,i)}),u=await ei();l.indexError&&a.push(`node: ${l.indexError}`),l.cyclesError&&a.push(`node: ${l.cyclesError}`);let d=(o=e.toISOString(),{index:l.index??u?.index??null,indexCheckedAt:o,indexError:l.indexError,cycles:l.cycles??u?.cycles??null,cyclesCheckedAt:o,cyclesError:l.cyclesError});await (0,r.f)().insert(n.settings).values({key:et,value:d}).onConflictDoUpdate({target:n.settings.key,set:{value:d,updatedAt:e}})}var eu=e.i(77193);let ed=/^\d{1,4}\.\d{1,4}\.\d{1,6}$/,ec=e=>"string"==typeof e&&ed.test(e);async function ef(e={}){let t,a=e.fetch??fetch;try{t=await a("https://registry.npmjs.org/watchbell/latest",{method:"GET",headers:{Accept:"application/json","Accept-Encoding":"gzip"},signal:AbortSignal.timeout(e.timeoutMs??6e3),cache:"no-store"})}catch{return{ok:!1,error:"Couldn't reach registry.npmjs.org"}}if(!t.ok)return{ok:!1,error:`registry.npmjs.org returned an error (${t.status})`};try{let e=await t.json();return ec(e.version)?{ok:!0,version:e.version}:{ok:!1,error:"registry.npmjs.org answered without a version"}}catch{return{ok:!1,error:"registry.npmjs.org answered in a format the console doesn't recognise"}}}async function ep(e,t,a,s=process.env,o){let i=function(e=process.env){let t=e.WATCHBELL_VERSION?.trim();return ec(t)?t:null}(s);if(!i||"selfhost"!==(0,eu.c)(s)||ea(s).off)return;let l=t-Date.now();if(l<1e3)return;let u=await ef({fetch:o,timeoutMs:Math.min(6e3,l)});if(u.ok){let t={version:u.version,checkedAt:e.toISOString()};await (0,r.f)().insert(n.settings).values({key:"watchbell.latest",value:t}).onConflictDoUpdate({target:n.settings.key,set:{value:t,updatedAt:e}})}else a.push(`update check: ${u.error}`);await (0,r.f)().insert(n.settings).values({key:"watchbell.seenVersion",value:{version:i}}).onConflictDoNothing({target:n.settings.key})}var ew=e.i(515743),em=e.i(336030),eh=e.i(905685),eg=e.i(751762);e.i(794713);let ey="collector.lastRun",eb="vercel.backoffUntil",ek="vercel.currentMiss",ev={supabase:D.N,supabaseUsage:D.y,neon:D.h,firebase:D.g,firebaseUsage:D.x,extraDbs:N};async function eI(){let e=await (0,r.f)().select({key:n.settings.key,value:n.settings.value}).from(n.settings).where((0,t.y)(n.settings.key,[ey,A.Z])).limit(2);return{lastRun:e.find(e=>e.key===ey)?.value??{},afterDeploy:e.find(e=>e.key===A.Z)?.value??null}}async function eA(e){await (0,r.f)().insert(n.settings).values({key:ey,value:e}).onConflictDoUpdate({target:n.settings.key,set:{value:e,updatedAt:new Date}})}let eS=e=>(0,f.f)(e);async function e$(e,s,o,i,l=[]){let u=(await (0,r.f)().select({m:n.monitors,app:n.resources}).from(n.monitors).innerJoin(n.resources,(0,t.u)(n.resources.id,n.monitors.resourceId)).where((0,t.b)((0,t.u)(n.monitors.kind,"http"),(0,t.u)(n.monitors.paused,!1),(0,t.u)(n.monitors.ownerPaused,!1),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt))).orderBy(a.B`${n.monitors.lastCheckedAt} asc nulls first`,n.monitors.id)).filter(({m:t})=>(0,J.B)(t.lastCheckedAt,e,i));if(!u.length)return 0;let d=await (0,F.P)(u,6,({m:e})=>{let t=(0,J.P)(e.timeoutMs,s,Date.now());return null===t?Promise.resolve(null):(0,F.b)(e.url,{expectedStatus:e.expectedStatus,timeoutMs:t,body:(0,ew.C)(e)})}),c=u.flatMap((e,t)=>d[t]?[{...e,r:d[t]}]:[]);if(c.length<u.length&&o.push(`checks: ${u.length-c.length} monitors skipped, time budget used`),!c.length)return 0;let f=[];for(let t of c)await (0,em.j)(t.m,t.r,e)&&f.push(t);return f.length?(await (0,r.f)().insert(n.checks).values(f.map(({m:t,app:a,r})=>({monitorId:t.id,at:e,ok:r.ok,statusCode:r.statusCode,latencyMs:r.latencyMs,error:r.error,inMaintenance:null!==(0,I.x)(l,{monitorId:t.id,appId:a.id},e)}))),await eS(f.map(({m:t,app:a,r})=>(0,eh.F)({resourceId:a.id,path:(0,$.K)(t.url),prev:t.state,next:(0,eh.G)(t.failStreak,r).state,code:r.statusCode,error:r.error,at:e}))),f.length):0}let eD=["checks","heartbeats"];async function ex(e,t,a=c.f){if(!eD.some(t=>e.includes(t)))return[];try{return await a()}catch(e){return t.push(`maintenance: ${(0,eg.f)(e)}`),[]}}async function eE(e){let[a]=await (0,r.f)().select().from(n.settings).where((0,t.u)(n.settings.key,eb)).limit(1),s=a?.value?.until;return!!s&&e.getTime()<new Date(s).getTime()}async function ej(e,t){if("transient"!==e.kind||!e.retryAfterS)return!1;let a={until:new Date(t.getTime()+1e3*Math.min(e.retryAfterS,3600)).toISOString()};return await (0,r.f)().insert(n.settings).values({key:eb,value:a}).onConflictDoUpdate({target:n.settings.key,set:{value:a,updatedAt:t}}),!0}let eM=e=>a.B`coalesce(${n.deployments.externalId} = ${e}::text, false)`;async function eO(e,s,o,i,l=b.m){let u=[];try{for(let l of e){let e=s.filter(e=>e.resourceId===l.id),{currentId:d,previousId:c}=(0,$.a)(e.map(e=>({id:e.id,createdAt:e.createdAt??new Date(0)})),(l.externalId?o.get(l.externalId):null)??null),f=await (0,r.f)().update(n.deployments).set({isCurrent:eM(d),isPreviousProduction:eM(c),updatedAt:i.now}).where((0,t.b)((0,t.u)(n.deployments.resourceId,l.id),(0,t.F)(a.B`${n.deployments.isCurrent} is distinct from ${eM(d)}`,a.B`${n.deployments.isPreviousProduction} is distinct from ${eM(c)}`))).returning({id:n.deployments.externalId}),p=(0,A.X)({appId:l.id,currentId:d,changedIds:f.map(e=>e.id),createdAt:e.find(e=>e.id===d)?.createdAt??null,state:i.afterDeploy,now:i.now});p&&u.push({appId:l.id,deploymentId:p})}}finally{if(u.length)try{await l(u,i.now)}catch(e){i.errors.push(`vercel/${i.label}: after-deploy security check not scheduled: ${(0,eg.f)(e)}`)}}}let eR=e=>new Map(e.map(e=>[e.id,{...e.branchFrom?{branchFrom:e.branchFrom}:{},...e.gitDirty?{gitDirty:!0}:{}}]));async function eN(e,t,a,r,n=new Map,s=g.f){try{await s(e,t,n)}catch(e){a.push(`vercel/${r}: production source not saved: ${(0,eg.f)(e)}`)}}async function eC(e,a,s,i){if(await eE(e))return;let l=(0,v.f)().OPS_ENCRYPTION_KEY;for(let u of(await (0,r.f)().select().from(n.accounts).where((0,t.b)((0,t.u)(n.accounts.provider,"vercel"),(0,t.u)(n.accounts.status,"ok"))))){let d=(0,p.V)({ciphertext:u.credentialCiphertext,iv:u.credentialIv},l);if((0,o.A)(d)||!d){s.push(`vercel/${u.label}: credential can't be read`);continue}let c=await (0,r.f)().select().from(n.resources).where((0,t.b)((0,t.u)(n.resources.accountId,u.id),(0,t.u)(n.resources.kind,"app"),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt)));if(!c.length)continue;let f=new Map(c.map(e=>[e.externalId,e])),w=await (0,S.X)(d);if(!w.ok){let a=(0,o.E)({ok:!1,kind:w.kind,error:w.error});if(a&&await (0,r.f)().update(n.accounts).set({...a,updatedAt:e}).where((0,t.u)(n.accounts.id,u.id)),s.push(`vercel/${u.label}: ${w.error}`),await ej(w,e))return;continue}let m=new Set(c.map(e=>String(e.meta.teamId)));for(let o of w.data.filter(e=>m.has(e.id))){if(Date.now()>a)return void s.push("vercel: skipped remaining teams, time budget used");let[l,u]=await Promise.all([(0,S.W)(d,o),(0,S.K)(d,o,{since:e.getTime()-6048e5,limit:100})]);if(!l.ok||!u.ok){let t=l.ok?u:l;if(s.push(`vercel/${o.name}: ${t.error}`),await ej(t,e))return;continue}let p=new Map(l.data.map(e=>[e.id,e.currentDeploymentId])),w=u.data.filter(e=>f.has(e.projectId)),m=eR(w),h=new Map((w.length?await (0,r.f)().select({externalId:n.deployments.externalId,state:n.deployments.state,target:n.deployments.target,branch:n.deployments.branch,commitSha:n.deployments.commitSha,commitMessage:n.deployments.commitMessage,source:n.deployments.source,url:n.deployments.url,buildingAt:n.deployments.buildingAt,readyAt:n.deployments.readyAt}).from(n.deployments).where((0,t.y)(n.deployments.externalId,w.map(e=>e.id))):[]).map(e=>[e.externalId,e])),g=[];for(let t of w){let a=f.get(t.projectId),s=h.get(t.id),o={state:t.state,target:t.target,branch:t.branch,commitSha:t.sha,commitMessage:t.message,source:t.source,url:t.url,buildingAt:t.buildingAt,readyAt:t.readyAt};if((0,$.E)(s,o)){let s={resourceId:a.id,externalId:t.id,...o,createdAtProvider:t.createdAt,updatedAt:e};await (0,r.f)().insert(n.deployments).values(s).onConflictDoUpdate({target:n.deployments.externalId,set:s})}g.push((0,eh.L)(s?.state,t,a.id,e))}await eS(g);let y=c.filter(e=>String(e.meta.teamId)===o.id),b=await (0,r.f)().select({resourceId:n.deployments.resourceId,id:n.deployments.externalId,createdAt:n.deployments.createdAtProvider}).from(n.deployments).where((0,t.b)((0,t.y)(n.deployments.resourceId,y.map(e=>e.id)),(0,t.u)(n.deployments.target,"production"),(0,t.u)(n.deployments.state,"ready"))),[k]=await (0,r.f)().select().from(n.settings).where((0,t.u)(n.settings.key,ek)).limit(1),v=[],I=()=>v.length?(0,r.f)().insert(n.settings).values({key:ek,value:(0,$.Y)(k?.value,v,e)}).onConflictDoUpdate({target:n.settings.key,set:{value:(0,$.Y)(k?.value,v,e),updatedAt:e}}):Promise.resolve();for(let t of(0,$.Q)(y,p,b,(0,$.S)(k?.value,e))){if(Date.now()>a)break;let i=await (0,S.S)(d,o,t.deploymentId);if(!i.ok){if(s.push(`vercel/${o.name}: current deployment: ${i.error}`),await ej(i,e))return void await I();v.push(t.deploymentId);continue}let l=i.data;for(let[e,t]of eR([l]))m.set(e,t);let u={resourceId:t.appId,externalId:l.id,state:l.state,target:l.target,branch:l.branch,commitSha:l.sha,commitMessage:l.message,source:l.source,url:l.url,buildingAt:l.buildingAt,readyAt:l.readyAt,createdAtProvider:l.createdAt,updatedAt:e};await (0,r.f)().insert(n.deployments).values(u).onConflictDoUpdate({target:n.deployments.externalId,set:u}),"ready"===l.state&&"production"===l.target?b.push({resourceId:t.appId,id:l.id,createdAt:l.createdAt}):v.push(t.deploymentId)}await I(),await eO(y,b,p,{now:e,afterDeploy:i,errors:s,label:o.name}),await eN(y,e,s,o.name,m)}}}async function eP(e){let o=await (0,r.f)().select().from(n.resources).where((0,t.b)((0,t.u)(n.resources.kind,"app"),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt)));if(!o.length)return;let i=await (0,r.f)().select().from(n.monitors).where((0,t.b)((0,t.y)(n.monitors.resourceId,o.map(e=>e.id)),(0,t.u)(n.monitors.paused,!1),(0,t.u)(n.monitors.ownerPaused,!1))),l=new Set((await (0,r.f)().select({r:n.deployments.resourceId}).from(n.deployments).where((0,t.b)((0,t.y)(n.deployments.resourceId,o.map(e=>e.id)),(0,t.u)(n.deployments.target,"production"),(0,t.u)(n.deployments.state,"building"),(0,t.B)(n.deployments.createdAtProvider,new Date(e.getTime()-36e5))))).map(e=>e.r)),u=await (0,D.q)(o.map(e=>e.id)),d=new Map((await (0,r.f)().select().from(n.snapshots).where((0,t.y)(n.snapshots.resourceId,o.map(e=>e.id)))).map(e=>[e.resourceId,e])),c=new Map(o.map(e=>[e.id,e])),f=(0,s.P)(i.map(e=>({id:e.id,kind:e.kind,url:e.url,appId:e.resourceId,appName:c.get(e.resourceId)?.name??"",appMeta:c.get(e.resourceId)?.meta,lastError:e.lastError})),o),p=e=>f.has(e.id)&&"err"===e.state?"warn":e.state;for(let[e,l]of(0,s.R)(i.map(e=>({id:e.id,kind:e.kind,url:e.url,appId:e.resourceId,appName:c.get(e.resourceId)?.name??"",appMeta:c.get(e.resourceId)?.meta,lastError:e.lastError})),o))await (0,r.f)().update(n.resources).set({meta:a.B`${n.resources.meta} || ${JSON.stringify({pastDomains:l})}::jsonb`}).where((0,t.u)(n.resources.id,e));for(let t of o){let s=i.filter(e=>e.resourceId===t.id),o=(0,eh.V)({monitors:s.map(p),building:l.has(t.id),dbPaused:u.has(t.id)}),c=s.find(e=>"err"===e.state)??s.find(e=>"warn"===e.state),f={code:c?.lastStatus??null,latencyMs:s.find(e=>"heartbeat"!==e.kind)?.lastLatencyMs??null,dbPaused:u.has(t.id)},w=d.get(t.id);await (0,r.f)().insert(n.snapshots).values({resourceId:t.id,state:o,data:f,collectedAt:e,stateSince:e}).onConflictDoUpdate({target:n.snapshots.resourceId,set:{state:o,data:a.B`${n.snapshots.data} || ${JSON.stringify(f)}::jsonb`,collectedAt:e,...w?.state!==o?{stateSince:e}:{}}})}}async function eT(e,t={}){let a={writeLastRun:eA,refreshApps:eP,refreshNetwork:K.x,invalidate:i.f,...t};try{await a.writeLastRun({...e.lastRun,...Object.fromEntries(e.done.map(t=>[t,e.started.toISOString()]))});try{await a.refreshApps(new Date)}catch(t){e.errors.push(`app-snapshots: ${(0,eg.f)(t)}`)}if(e.done.some(e=>K.p.includes(e)))try{await a.refreshNetwork(new Date)}catch(t){e.errors.push(`network-states: ${(0,eg.f)(t)}`)}}finally{a.invalidate((0,l.o)(e.tried??e.done))}}async function ez(e,t,a,r={evaluate:u.$,deliver:m.q,digest:m.J}){let n=[];if(e.includes("alerts"))if(Date.now()>t)a.push("alerts: skipped, time budget used");else{let e=!0;try{await r.evaluate(new Date),console.info("collector alerts evaluated")}catch(t){e=!1,a.push(`alerts: ${(0,eg.f)(t)}`)}try{await r.deliver(new Date,t),console.info("collector notifications delivered")}catch(t){e=!1,a.push(`notify: ${(0,eg.f)(t)}`)}e&&n.push("alerts")}if(e.includes("digest")&&(0,J.z)("digest",t,Date.now()))try{await r.digest(new Date),console.info("collector digest done"),n.push("digest")}catch(e){a.push(`digest: ${(0,eg.f)(e)}`)}return n}async function eB(e,t,a,r){let n=[],s=[];for(let o of e){if(Date.now()>t){a.push(`${o}: skipped, time budget used`);continue}if((0,J.z)(o,t,Date.now())){s.push(o);try{await r(o),n.push(o)}catch(e){a.push(`${o}: ${(0,eg.f)(e)}`)}}}return{done:n,tried:s}}async function e_(e){let a,s=new Date,o=await Y(s);if(!o)return{skipped:!0,ok:!0,tasks:[],checks:0,durationMs:0,errors:[]};try{[a]=await (0,r.f)().insert(n.collectorRuns).values({startedAt:s,trigger:"builtin"===e?"manual":e}).returning({id:n.collectorRuns.id})}catch(e){throw await q(o).catch(()=>void 0),e}let i=[],l=[],u=0,c=s.getTime()+J.p,f=e=>console.info(`collector ${e} +${Date.now()-s.getTime()}ms`);try{f("start");let{lastRun:t,afterDeploy:a}=await eI(),r="cron_job_org"!==e&&"builtin"!==e,n=await (0,h.I)(),{due:o,early:p}=(0,J._)((0,J.S)(t,s,r,n),(0,b.Y)(a),n),m=!1,g=e=>p||!m?e.filter(e=>"security"!==e):e,v=o.filter(e=>J.u.includes(e)),S=v.includes("alerts")?c-J.X:c,$=await ex(o,i);f(`due ${o.join(",")}`);let{done:D,tried:x}=await eB(o.filter(e=>!J.u.includes(e)),S,i,async e=>{if(f(`task ${e}`),"heartbeats"===e){let e=new Date;u+=await (0,d.r)(e,(t,a)=>null!==(0,I.x)($,{monitorId:t,appId:a},e),r)}"checks"===e&&(u+=await e$(new Date,S,i,r,$)),"vercel"===e&&await eC(new Date,S,i,(0,A.Y)(a));let t=ev[e];t&&await t({now:new Date,deadline:S,errors:i,protectOnly:(0,J.$)(e,n)}),"cloudflare"===e&&await (0,K.h)(new Date,S,i),"domains"===e&&await (0,K.H)(new Date,S,i),"tls"===e&&await (0,K.V)(new Date,S,i),"rdap"===e&&await (0,K.W)(new Date,S,i),"eol"===e&&await (0,K.i)(new Date,S,i),"node"===e&&(await el(new Date,S,i),await ep(new Date,S,i)),"status"===e&&await (0,k.i)(new Date),"logs"===e&&await (0,w._)(new Date,S,i),"pageviews"===e&&await (0,y.f)(new Date,S,i),"security"===e&&(m=(await (0,b.U)({now:s,deadline:S,errors:i,paused:n,early:p})).complete)});l.push(...D),f("main done"),await eT({lastRun:t,done:g(l),tried:x,started:s,errors:i}),f("settled");let E=await ez(v,c,i);f("post done"),E.length&&await eA({...t,...Object.fromEntries(g([...l,...E]).map(e=>[e,s.toISOString()]))}),l.push(...E)}catch(e){i.push(`run: ${(0,eg.f)(e)}`)}finally{let e=Date.now()-s.getTime();await (0,r.f)().update(n.collectorRuns).set({finishedAt:new Date,ok:0===i.length,errorSummary:i.join("\n").slice(0,2e3)||null,durationMs:e,tasks:l,checks:u}).where((0,t.u)(n.collectorRuns.id,a.id)).catch(()=>void 0),await q(o).catch(()=>void 0)}return{skipped:!1,ok:0===i.length,tasks:l,checks:u,durationMs:Date.now()-s.getTime(),errors:i}}e.s(["f",0,e_],956846)},703352,948736,873354,655060,e=>{var t=e.i(875225),a=e.i(518899),r=e.i(924924),n=e.i(618916),s=e.i(502240);async function o(e,i,l=new Map){if(!e.length)return 0;let u=await (0,r.f)().select({app:n.deployments.resourceId,id:n.deployments.externalId,source:n.deployments.source,branch:n.deployments.branch,sha:n.deployments.commitSha}).from(n.deployments).where((0,t.b)((0,t.y)(n.deployments.resourceId,e.map(e=>e.id)),(0,t.u)(n.deployments.isCurrent,!0))),d=0;for(let o of e){let e,c=u.find(e=>e.app===o.id);if(!c)continue;let f=(0,s.O)(o.meta?.productionSource),p=l.get(c.id),w={source:c.source??null,branch:c.branch??null,sha:c.sha??null};if(!(e=p?(0,s.s)({...w,branchFrom:p.branchFrom??null,gitDirty:!0===p.gitDirty}):f?.id===c.id?{kind:f.kind,...f.ref?{ref:f.ref}:{},...f.sha?{sha:f.sha}:{}}:"git"===w.source||"cli"===w.source?(0,s.s)(w):null)){if(f?.at&&f.id!==c.id){let e={...f};delete e.at,await (0,r.f)().update(n.resources).set({meta:a.B`${n.resources.meta} || ${JSON.stringify({productionSource:e})}::jsonb`}).where((0,t.u)(n.resources.id,o.id)),d++}continue}e={...e,id:c.id};let m=!!f?.at&&i.getTime()-Date.parse(f.at)<s.u;if((0,s.v)(f,e)&&m)continue;let h={...e,at:i.toISOString()};await (0,r.f)().update(n.resources).set({meta:a.B`${n.resources.meta} || ${JSON.stringify({productionSource:h})}::jsonb`}).where((0,t.u)(n.resources.id,o.id)),d++}return d}e.s(["f",0,o],703352);var i=e.i(442473),l=e.i(381725),u=e.i(767512),d=e.i(971724),c=e.i(206033),f=e.i(455744),p=e.i(469755),w=e.i(105954),m=e.i(857897);let h=/not enabled/i,g=(e,t,a={})=>({ok:!1,kind:e,error:t,...a}),y="Vercel Web Analytics answered in a format the console doesn't recognise.",b=d.z.object({data:d.z.object({pageviews:c.z.number().finite().nonnegative(),visitors:c.z.number().finite().nonnegative()})}),k=d.z.object({data:f.z.array(p.z.unknown())}),v=d.z.object({timestamp:w.z.string().transform((e,t)=>{let a=Date.parse(e);return Number.isNaN(a)?(t.addIssue({code:"custom",message:"bad timestamp"}),m.z.NEVER):a}),pageviews:c.z.number().finite().nonnegative().nullish().catch(null)});async function I(e,t,a,r){let n=r.since.toISOString(),s=r.until.toISOString(),o=r.fetch??fetch,l=new AbortController,u=setTimeout(()=>l.abort(new DOMException("window","TimeoutError")),r.timeoutMs??8e3),d=r.signal?AbortSignal.any([l.signal,r.signal]):l.signal,c=(0,i.X)(d);async function f(i,u){let f=new URLSearchParams({projectId:a,teamId:t,...u,since:n,until:s});try{let t=await Promise.race([o(`https://api.vercel.com/v1/query/web-analytics/visits/${i}?${f}`,{headers:{Authorization:`Bearer ${e}`,Accept:"application/json"},signal:d,cache:"no-store"}),c]),a=null,r=!1;if(401===t.status||403===t.status)a=g("auth",`Vercel rejected this credential (${t.status}).`,{status:t.status});else if(429===t.status){let e=Number(t.headers.get("Retry-After"));a=g("transient","Vercel says there were too many requests.",{status:429,retryAfterS:Number.isFinite(e)&&e>0?e:60})}else if(400===t.status){let e=await Promise.race([t.text(),c]).catch(()=>"");h.test(e)?r=!0:a=g("transient","Vercel Web Analytics rejected the request (400).",{status:400})}else t.ok||(a=g("transient",`Vercel Web Analytics returned an error (${t.status}).`,{status:t.status}));if(r)return{kind:"off"};if(a)return await t.body?.cancel().catch(()=>void 0),{kind:"fail",fail:a};try{return{kind:"body",body:await Promise.race([t.json(),c])}}catch(e){if(d.aborted)throw e;return{kind:"fail",fail:g("format",y)}}}catch{return{kind:"fail",fail:d.aborted?l.signal.aborted&&!r.signal?.aborted?g("transient","Vercel Web Analytics didn't answer in time."):g("transient","Reading Vercel Web Analytics was cancelled."):g("transient","Couldn't reach Vercel Web Analytics.")}}}try{let[e,t]=await Promise.all([f("count",{}),f("aggregate",{by:"hour"})]);if("off"===e.kind||"off"===t.kind)return{ok:!0,enabled:!1};let a=[e,t].flatMap(e=>"fail"===e.kind?[e.fail]:[]),r=a.find(e=>"auth"===e.kind);if(r)return r;let n="body"===t.kind?k.safeParse(t.body):null,s="fail"===t.kind?t.fail:n?.success?null:g("format",y),o=a.find(e=>"transient"===e.kind);if(o)return o;if(s)return s;if(!n?.success)return g("format",y);let i="body"===e.kind?b.safeParse(e.body):null,l=n.data.data.flatMap(e=>{let t=v.safeParse(e);return t.success?[t.data]:[]});if(l.length>0&&l.every(e=>null==e.pageviews))return g("format",y);let u=new Map;for(let e of l){let t=36e5*Math.floor(e.timestamp/36e5);u.set(t,(u.get(t)??0)+(e.pageviews??0))}let d=[...u].sort((e,t)=>e[0]-t[0]).slice(-24).map(([e,t])=>({at:new Date(e),views:t}));if(i?.success)return{ok:!0,enabled:!0,total:i.data.data.pageviews,visitors:i.data.data.visitors,hourly:d};return{ok:!0,enabled:!0,total:d.reduce((e,t)=>e+t.views,0),visitors:null,hourly:d}}finally{clearTimeout(u),l.abort()}}var A=e.i(943816);async function S(e,t,a){let r=await (0,l.g)(null);if(!r.length)return;let n=new Date(36e5*Math.floor(e.getTime()/36e5)-828e5);await (0,i.P)(r,3,async r=>{if(Date.now()+8500>t)return;let s=await I(r.token,r.teamId,r.projectId,{since:n,until:e});if(!s.ok)return void a.push(`pageviews/${r.appName}: ${s.error}`);try{await (0,u.r)(r.appId,{pageviews:(0,A.Z)(s,e)},e)}catch{a.push(`pageviews/${r.appName}: couldn't save the page views`)}})}e.s(["f",0,S],948736);var $=e.i(422067),D=e.i(433609),x=e.i(800523),E=e.i(479301);let j="security.afterDeploy",M=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),O=e=>"string"==typeof e&&e.length>0&&e.length<=100;function R(e){let t={pending:{},checked:{}};if(!M(e))return t;if(M(e.pending))for(let[a,r]of Object.entries(e.pending)){if(!(0,E.f)(a)||!M(r)||!O(r.id)||"string"!=typeof r.at||Number.isNaN(Date.parse(r.at)))continue;let e="number"==typeof r.attempts&&Number.isInteger(r.attempts)&&r.attempts>=0?Math.min(r.attempts,3):0;t.pending[a]={id:r.id,at:r.at,attempts:e,...!0===r.next?{next:!0}:{},...!0===r.deps?{deps:!0}:{}}}if(M(e.checked))for(let[a,r]of Object.entries(e.checked))(0,E.f)(a)&&O(r)&&(t.checked[a]=r);return t}let N=e=>Object.keys(e.pending).length>0;function C(e,t,a){let r={pending:{...e.pending},checked:{...e.checked}},n=!1;for(let e of t)(0,E.f)(e.appId)&&O(e.deploymentId)&&r.checked[e.appId]!==e.deploymentId&&r.pending[e.appId]?.id!==e.deploymentId&&(r.pending[e.appId]={id:e.deploymentId,at:a.toISOString(),attempts:0},n=!0);return{state:r,changed:n}}function P(e,t){let a,r={...e.pending},n={...e.checked};for(let e of t){let t=r[e];t&&(delete r[e],delete n[e],n[e]=t.id)}return{pending:r,checked:(a=Object.entries(n)).length<=500?n:Object.fromEntries(a.slice(a.length-500))}}function T(e,t){let a=Object.entries(e.pending).filter(([,e])=>t.getTime()-Date.parse(e.at)>216e5).map(([e])=>e);return a.length?P(e,a):e}let z=(e,t)=>Object.entries(e.pending).filter(([,e])=>!e[t]).map(([e])=>e);function B(e,t){let a={},r=[];for(let[n,s]of Object.entries(e.pending)){let e={...s};t.hosting&&!e.next&&(t.nextDone?.has(n)?e.next=!0:t.nextStarted?.has(n)&&(e.attempts=Math.min(e.attempts+1,3))),t.devops&&!e.deps&&t.depsDone?.has(n)&&(e.deps=!0),a[n]=e,((e.next||!t.hosting)&&(e.deps||!t.devops)||e.attempts>=3)&&r.push(n)}return P({pending:a,checked:e.checked},r)}e.s(["Z",0,j,"X",0,function(e){var t,a;let r=e.currentId;return r&&e.state.checked[e.appId]!==r&&e.state.pending[e.appId]?.id!==r&&(t=e.changedIds,((a=r)&&t.includes(a)?a:null)||e.createdAt&&e.now.getTime()-e.createdAt.getTime()<=216e5)?r:null},"a",0,T,"A",0,N,"B",0,C,"p",0,z,"Y",0,R,"E",0,B],873354);var _=e.i(970465);let W="security.slot",U=e=>Array.isArray(e)?e.filter(e=>"string"==typeof e&&e.length>0&&e.length<=100).slice(0,1e3):[],F=(e,t)=>[...new Set([...e,...t])].slice(0,1e3),V=e=>async()=>{let[a]=await (0,r.f)().select({value:n.settings.value}).from(n.settings).where((0,t.u)(n.settings.key,e)).limit(1);return a?.value??null},L=e=>async t=>{await (0,r.f)().insert(n.settings).values({key:e,value:t}).onConflictDoUpdate({target:n.settings.key,set:{value:t,updatedAt:new Date}})},J={read:V(j),write:L(j),readSlot:V(W),writeSlot:L(W),nextCheck:x.h,depsStep:(e,t)=>(0,D.O)(e,t)};async function Y(e,t=J){let a=R(await t.read()),r=T(a,e.now),n=!e.paused.has("hosting"),s=!e.paused.has("devops"),o=n?z(r,"next"):[],i=s?z(r,"deps"):[],l=e.early?null:function(e,t){let a=e&&"object"==typeof e&&!Array.isArray(e)?e:{};if(a.slot!==t)return{slot:t,runs:0,next:[],repos:[],cut:{},nextDone:!1,depsDone:!1};let r="number"==typeof a.runs&&Number.isInteger(a.runs)&&a.runs>=0?a.runs:0,n={};if(a.cut&&"object"==typeof a.cut&&!Array.isArray(a.cut))for(let[e,t]of Object.entries(a.cut).slice(0,1e3))e.length<=100&&"number"==typeof t&&Number.isInteger(t)&&t>0&&(n[e]=Math.min(t,2));return{slot:t,runs:r,next:U(a.next),repos:U(a.repos),cut:n,nextDone:!0===a.nextDone,depsDone:!0===a.depsDone}}(await t.readSlot(),new Date((0,$.G)("security",e.now)).toISOString()),u=!!l&&n&&!l.nextDone,d=!!l&&s&&!l.depsDone,c=n&&(o.length>0||u),f=s&&(i.length>0||d),p={hosting:n,devops:s,nextDone:new Set,nextStarted:new Set,depsDone:new Set},w=async()=>{let a=Math.min(Date.now()+_.y,!l&&f?e.deadline-2*D.d:e.deadline),r=u?[...l.next,...Object.entries(l.cut).filter(([,e])=>e>=2).map(([e])=>e)]:[],n=u?{first:o,skip:[...new Set(r)].filter(e=>!o.includes(e))}:{only:o},s=await t.nextCheck(a,n);for(let t of s.failed)e.errors.push(`security ${t}`);for(let e of s.done)p.nextDone.add(e);for(let e of o)s.listed.includes(e)||p.nextDone.add(e);for(let e of s.started)p.nextStarted.add(e);if(u){let e=new Set(s.done);for(let t of(l.next=F(l.next,s.done),s.started))e.has(t)||(l.cut[t]=Math.min((l.cut[t]??0)+1,2));l.nextDone=s.listed.every(t=>e.has(t)||(l.cut[t]??0)>=2)}},m=async()=>{let a=await t.depsStep(Math.min(Date.now()+D.o,e.deadline),d?{marked:i,onlyMarked:!1,skip:l.repos}:{marked:i,onlyMarked:!0});for(let t of(a.problem&&e.errors.push(`security deps: ${a.problem}`),a.settled))p.depsDone.add(t);d&&(l.repos=F(l.repos,a.done),l.depsDone=a.complete)};try{l&&l.runs++,l?(f&&await m(),c&&await w()):(c&&await w(),f&&await m())}finally{let e=null;if(l)try{await t.writeSlot(l)}catch(t){e=t}try{let e=B(r,p);JSON.stringify(e)!==JSON.stringify(a)&&await t.write(e)}catch(t){e??=t}if(e)throw e}return{complete:!l||(l.nextDone||!n)&&(l.depsDone||!s)||l.runs>=20}}async function q(e,t,a=J){if(!e.length)return!1;let{state:r,changed:n}=C(R(await a.read()),e,t);return n&&await a.write(r),n}e.s(["m",0,q,"Y",0,e=>N(R(e)),"U",0,Y],655060)}]})();
|
|
8
|
-
|
|
9
|
-
//# sourceMappingURL=src_lib_103kimc1xvc_0._.js.map
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[537622,e=>{var t=e.i(665044),a=e.i(77193);e.s(["f",0,function(e){if((0,a.r)())for(let a of new Set(e))try{let e;e=a,(0,t.revalidateTag)(e,{expire:0})}catch(e){console.warn(`cache: couldn't expire ${a}: ${e instanceof Error?e.message.slice(0,120):"unknown"}`)}}])},140318,977832,e=>{var t=e.i(875225),a=e.i(518899),r=e.i(924924),n=e.i(618916),s=e.i(390775),o=e.i(921991),i=e.i(656083),l=e.i(629955),u=e.i(497867);function d(e){if(!e)return null;if("unknown"!==e.state)return e.state;let t=e.data?.lastGoodState;return"string"==typeof t&&u.f.includes(t)?t:null}let c={turso_database:"Turso database",upstash_redis:"Upstash Redis",d1_database:"D1 database"};function f(e){let{prev:t,next:a}=e;if(null===t||"unknown"===t||"unknown"===a||t===a)return null;let r={resourceId:e.resourceId,type:"database",at:e.at};if("supabase_project"===e.kind)return"paused"===a?{...r,reason:"DatabasePaused",kind:"paused",message:"Supabase project paused",detail:"Status changed to INACTIVE"}:"ok"===a?{...r,reason:"DatabaseRestored",kind:"ok",message:"Supabase project active again",detail:"Status changed to ACTIVE_HEALTHY"}:"warn"===a?{...r,reason:"DatabaseUnhealthy",kind:"warn",message:"Supabase project unhealthy",detail:e.label}:"err"===a?{...r,reason:"DatabaseFailed",kind:"err",message:`Supabase project: ${e.label.toLowerCase()}`,detail:e.label}:null;if("neon_project"===e.kind)return"err"===a?{...r,reason:"NeonSuspended",kind:"err",message:"Neon compute suspended",detail:e.label}:"err"===t&&("ok"===a||"idle"===a)?{...r,reason:"NeonAvailable",kind:"ok",message:"Neon compute available again",detail:e.label}:null;let n=c[e.kind];if(n)return"err"===a?{...r,reason:"DatabaseFailed",kind:"err",message:`${n}: ${e.label.toLowerCase()}`,detail:e.label}:"off"===a?{...r,reason:"DatabaseMissing",kind:"off",message:`${n} missing`,detail:e.label}:"ok"===a&&("err"===t||"off"===t)?{...r,reason:"DatabaseRestored",kind:"ok",message:`${n} available again`,detail:e.label}:null;if("err"===a){let t="Daily quota used up"===e.label;return{...r,reason:t?"FirestoreQuotaUsedUp":"FirestoreUnreachable",kind:"err",message:t?"Firestore daily quota used up":"Firestore not reachable",detail:e.label}}return"off"===a?{...r,reason:"FirestoreMissing",kind:"off",message:"Firestore database missing",detail:e.label}:"ok"===a&&("err"===t||"off"===t)?{...r,reason:"FirestoreReachable",kind:"ok",message:"Firestore reachable again",detail:e.label}:null}function p(e,t){return"auth"===e.kind?"auth":"scope"===e.kind?t?"auth":"column":"missing"===e.kind?t?"unknown":"column":"unknown"}e.s(["t",0,p,"K",0,f,"F",0,d],977832);var w=e.i(960063),m=e.i(800366),h=e.i(326003),g=e.i(843448),y=e.i(547499),b=e.i(795194),k=e.i(780148),v=e.i(443917),I=e.i(342833),A=e.i(442473);let S="skipped the rest, time budget used";function $(e){let t=e.deadline-Date.now()-500;if(t<250)throw Error(S);return{timeoutMs:Math.min(5e3,t)}}async function D(e,t,a){let r=!1;return{out:await (0,A.P)(t,3,async t=>{let n;try{n=$(e)}catch{r=!0;return}return a(t,n)}),skipped:r}}function x(e){if(e)throw Error(S)}async function E(e){let a=await (0,r.f)().select().from(n.accounts).where((0,t.b)((0,t.u)(n.accounts.provider,e),(0,t.u)(n.accounts.status,"ok"))),s=(0,y.f)().OPS_ENCRYPTION_KEY;return a.map(e=>({acc:e,credential:(0,o.V)({ciphertext:e.credentialCiphertext,iv:e.credentialIv},s)}))}function j(e,a){return(0,r.f)().select({r:n.resources,s:n.snapshots}).from(n.resources).leftJoin(n.snapshots,(0,t.u)(n.snapshots.resourceId,n.resources.id)).where((0,t.b)((0,t.u)(n.resources.accountId,e),(0,t.u)(n.resources.kind,a),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt))).limit(100)}let M=e=>a.B`${n.snapshots.data} || ${JSON.stringify(e)}::jsonb`;async function O(e,t,a){let s=d(e.s?{state:e.s.state,data:e.s.data}:null),o="unknown"===t.state,i=o?s?{lastGoodState:s}:{}:{...t.patch,lastGoodState:t.state},l=!o&&s!==t.state;return await (0,r.f)().insert(n.snapshots).values({resourceId:e.r.id,state:t.state,data:i,collectedAt:a,stateSince:a}).onConflictDoUpdate({target:n.snapshots.resourceId,set:{state:t.state,data:M(i),...o?{}:{collectedAt:a},...l?{stateSince:a}:{}}}),o?null:f({kind:e.r.kind,resourceId:e.r.id,prev:s,next:t.state,label:t.label,at:a})}async function R(e,a){await (0,r.f)().update(n.snapshots).set({data:M(a)}).where((0,t.u)(n.snapshots.resourceId,e.r.id))}let N=e=>(0,i.f)(e);async function C(e,a,o,i,l){if("auth"===p(i,!0)){let e=(0,s.E)({ok:!1,kind:"auth",error:i.error});e&&await (0,r.f)().update(n.accounts).set({...e,updatedAt:l.now}).where((0,t.u)(n.accounts.id,a.id))}for(let e of o)await O(e,{state:"unknown",label:"Unknown",patch:{}},l.now);l.errors.push(`${e}/${a.label}: ${i.error}`)}let P=e=>e.toISOString();async function T(e){return e.length?new Set((await (0,r.f)().select({app:n.links.fromResourceId,state:n.snapshots.state,data:n.snapshots.data}).from(n.links).innerJoin(n.resources,(0,t.u)(n.resources.id,n.links.toResourceId)).innerJoin(n.snapshots,(0,t.u)(n.snapshots.resourceId,n.resources.id)).where((0,t.b)((0,t.u)(n.links.kind,"uses_db"),(0,t.y)(n.links.fromResourceId,e),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt)))).filter(e=>"paused"===e.state||"unknown"===e.state&&"paused"===e.data.lastGoodState).map(e=>e.app)):new Set}async function z(e){if(!e.protectOnly||await (0,l.g)())for(let{acc:t,credential:a}of(await E("supabase"))){if($(e),!a){e.errors.push(`supabase/${t.label}: credential can't be read`);continue}let r=await j(t.id,"supabase_project");if(!r.length)continue;let n=await (0,I.W)(a,$(e));if(!n.ok){e.protectOnly?e.errors.push(`supabase/${t.label}: ${n.error}`):await C("supabase",t,r,n,e);continue}let s=new Map(n.data.map(e=>[e.ref,e])),o=[];for(let t of e.protectOnly?[]:r){let a=s.get(t.r.externalId);if(!a){o.push(await O(t,{state:"off",label:"Not found",patch:{status:"REMOVED"}},e.now));continue}let r=(0,g.P)(a.status),n=d(t.s?{state:t.s.state,data:t.s.data}:null),i={status:a.status,region:a.region,pgVersion:a.pgVersion,orgSlug:a.orgSlug};"paused"===r.state&&"paused"!==n&&(i.pausedBeforeSeen=null===n),o.push(await O(t,{state:r.state,label:r.label,patch:i},e.now))}await N(o);let i=new Map(r.map(e=>[e.r.externalId,e.r.id])),u=n.data.map(e=>({resourceId:i.get(e.ref)??null,accountId:t.id,status:e.status,orgSlug:e.orgSlug}));await (0,l.z)(e.now,u,e.deadline).catch(()=>{console.warn("auto-restore failed"),e.errors.push("auto-restore failed")})}}async function B(e){for(let{acc:t,credential:a}of(await E("supabase"))){if($(e),!a)continue;let r=await j(t.id,"supabase_project");if(!r.length)continue;let n=new Map(r.map(e=>[e.r.id,(0,h.k)(h.B,e.s?.data)])),s=new Map;for(let r of new Set([...n.values()].map(e=>e.orgSlug).filter(e=>!!e))){let n=await (0,I.K)(a,r,$(e));s.set(r,n.ok&&null!==n.data?"free"===n.data:null),n.ok||"scope"===n.kind||e.errors.push(`supabase/${t.label} plan: ${n.error}`)}let{skipped:o}=await D(e,r,async(t,r)=>{let o=n.get(t.r.id),i={freeOrg:o.orgSlug?s.get(o.orgSlug)??null:null};if((o.status??"").startsWith("ACTIVE_")){let[n,s]=await Promise.all([(0,I.F)(a,t.r.externalId,r),(0,I.Z)(a,t.r.externalId,r)]);n.ok?Object.assign(i,{health:n.data.map(({name:e,status:t})=>({name:e,status:t})),healthAt:P(e.now),healthError:null}):"column"===p(n,!1)?i.healthError=n.error:e.errors.push(`supabase/${t.r.name} health: ${n.error}`),s.ok?Object.assign(i,{lastTrafficAt:(0,g.H)(s.data)?.toISOString()??null,trafficAt:P(e.now),trafficError:null}):"column"===p(s,!1)?i.trafficError=s.error:e.errors.push(`supabase/${t.r.name} traffic: ${s.error}`)}await R(t,i)});x(o)}}async function _(e){for(let{acc:t,credential:a}of(await E("neon"))){if($(e),!a){e.errors.push(`neon/${t.label}: credential can't be read`);continue}let r=await j(t.id,"neon_project");if(!r.length)continue;let{out:n,skipped:s}=await D(e,r,(e,t)=>Promise.all([(0,v.Z)(a,e.r.externalId,t),(0,v.k)(a,e.r.externalId,t),(0,v.e)(a,e.r.externalId,t)])),o=n.flat().find(e=>void 0!==e&&!e.ok&&"auth"===e.kind);if(o){await C("neon",t,r,o,e);continue}let i=[];for(let[t,a]of r.entries()){let r=n[t];if(!r)continue;let[s,o,l]=r;if(!s.ok||!o.ok||!l.ok){let t=[s,o,l].find(e=>!e.ok);"missing"===t.kind?i.push(await O(a,{state:"off",label:"Not found",patch:{}},e.now)):(await O(a,{state:"unknown",label:"Unknown",patch:{}},e.now),e.errors.push(`neon/${a.r.name}: ${t.error}`));continue}let u=(0,m.p)({endpoints:o.data,computeSeconds:s.data.computeSeconds});i.push(await O(a,{state:u.state,label:u.label,patch:{region:s.data.region,pgVersion:s.data.pgVersion,computeSeconds:s.data.computeSeconds,transferBytes:s.data.transferBytes,activeSeconds:s.data.activeSeconds,periodStart:s.data.periodStart,periodEnd:s.data.periodEnd,endpoints:o.data,branches:l.data}},e.now))}await N(i),x(s)}}let W=e=>e.ok?{latencyMs:e.data.latencyMs,pingError:null,pingReason:null,pingKind:null}:{pingError:e.error,pingReason:e.reason??null,pingKind:e.kind};async function U(e){for(let{acc:t,credential:a}of(await E("firebase"))){$(e);let r=a?(0,k.p)(a):null;if(!r){e.errors.push(`firebase/${t.label}: credential can't be read`);continue}let n=await j(t.id,"firestore");if(!n.length)continue;let s=await (0,k.X)(r,$(e));if(!s.ok){await C("firebase",t,n,s,e);continue}let{out:o,skipped:i}=await D(e,n,(e,t)=>(0,b.G)(s.data,e.r.externalId,t)),l=[];for(let[t,a]of n.entries()){let r=o[t];if(!r)continue;let n=(0,w.g)(r);"unknown"!==n.state||r.ok||e.errors.push(`firebase/${a.r.name}: ${r.error}`),l.push(await O(a,{...n,patch:W(r)},e.now))}await N(l),x(i)}}async function F(e){for(let{acc:t,credential:a}of(await E("firebase"))){$(e);let r=a?(0,k.p)(a):null;if(!r)continue;let n=(await j(t.id,"firestore")).filter(e=>e.s?.state!=="off");if(!n.length)continue;let s=await (0,k.X)(r,$(e));if(!s.ok){e.errors.push(`firebase/${t.label}: ${s.error}`);continue}let o=(0,w.a)(e.now),{skipped:i}=await D(e,n,async(t,a)=>{let r=await (0,b.W)(s.data,t.r.externalId,o,e.now,a);r.ok?await R(t,{...r.data,opsAt:P(e.now),opsError:null}):"column"===p(r,!1)?await R(t,{reads:null,writes:null,deletes:null,opsAt:P(e.now),opsError:/requires billing/i.test(r.message??"")?"Not available on Spark: Firestore usage needs billing (Blaze plan)":"SERVICE_DISABLED"===r.reason?"Not readable: the Cloud Monitoring API is off in this project":"Not readable: the service account needs monitoring.viewer"}):e.errors.push(`firebase/${t.r.name} usage: ${r.error}`)});x(i)}}async function V(e){let t=Date.now()+2*Math.max(0,e.deadline-Date.now())/3,a=await L(()=>J({...e,deadline:t})),r=await L(()=>Y(e));if(a)throw a;if(r)throw r}async function L(e){try{return await e(),null}catch(e){return e instanceof Error?e:Error(String(e))}}async function J(e){for(let{acc:t,credential:a}of(await E("supabase")))if($(e),a)for(let r of(await j(t.id,"supabase_project"))){let t=(0,h.k)(h.B,r.s?.data);if(!(0,g.z)({status:t.status??"",lastTrafficAt:t.lastTrafficAt?new Date(t.lastTrafficAt):null,sizeAt:t.sizeAt?new Date(t.sizeAt):null,now:e.now}))continue;let n=await (0,I.r)(a,r.r.externalId,$(e));n.ok?await R(r,{sizeBytes:n.data,sizeAt:P(e.now),sizeError:null}):"column"===p(n,!1)?await R(r,{sizeError:n.error}):e.errors.push(`supabase/${r.r.name} size: ${n.error}`)}}async function Y(e){for(let{acc:t,credential:a}of(await E("firebase"))){$(e);let r=a?(0,k.p)(a):null;if(!r)continue;let n=(await j(t.id,"firestore")).filter(e=>e.s?.state!=="off");if(!n.length)continue;let s=await (0,k.X)(r,$(e));if(!s.ok){e.errors.push(`firebase/${t.label}: ${s.error}`);continue}let{skipped:o}=await D(e,n,async(t,a)=>{let r=await (0,b.q)(s.data,t.r.externalId,a);r.ok?await R(t,{authUsers:r.data,authAt:P(e.now),authError:null}):"column"===p(r,!1)?await R(t,{authError:"Not readable: the service account needs firebaseauth.viewer"}):e.errors.push(`firebase/${t.r.name} users: ${r.error}`)});x(o)}}e.s(["w",0,C,"O",0,E,"q",0,T,"T",0,D,"W",0,x,"M",0,N,"I",0,L,"f",0,V,"g",0,U,"x",0,F,"h",0,_,"N",0,z,"y",0,B,"e",0,j,"s",0,$,"a",0,O],140318)},956846,e=>{var t=e.i(875225),a=e.i(518899),r=e.i(924924),n=e.i(618916),s=e.i(764766),o=e.i(390775),i=e.i(537622),l=e.i(749124),u=e.i(532148),d=e.i(988294),c=e.i(739886),f=e.i(656083),p=e.i(921991),w=e.i(381725),m=e.i(483100),h=e.i(111970),g=e.i(703352),y=e.i(948736),b=e.i(655060),k=e.i(762504),v=e.i(547499),I=e.i(275426),A=e.i(873354),S=e.i(177706),$=e.i(61926),D=e.i(140318),x=e.i(977832),E=e.i(89491),j=e.i(592951),M=e.i(691734),O=e.i(43790),R=e.i(11552);async function N(e){let t=[await (0,D.I)(()=>P(e)),await (0,D.I)(()=>z(e)),await (0,D.I)(()=>B(e))].find(e=>null!==e);if(t)throw t}let C=e=>e.toISOString();async function P(e){for(let{acc:t,credential:a}of(await (0,D.O)("turso"))){if((0,D.s)(e),!a){e.errors.push(`turso/${t.label}: credential can't be read`);continue}let r=await (0,D.e)(t.id,"turso_database");if(!r.length)continue;let n=await (0,M.u)(a,(0,D.s)(e));if(!n.ok){await (0,D.w)("turso",t,r,n,e);continue}let s=new Set(r.map(e=>String(e.r.meta.org??""))),o=[];for(let i of n.data.filter(e=>s.has(e.slug))){let[n,s]=await Promise.all([(0,M.X)(a,i.slug,(0,D.s)(e)),(0,M.d)(a,i.slug,(0,D.s)(e))]),l=r.filter(e=>e.r.meta.org===i.slug);if(!n.ok){for(let t of l)await (0,D.a)(t,{state:"unknown",label:"Unknown",patch:{}},e.now);e.errors.push(`turso/${t.label}: ${n.error}`);continue}let u=new Map(n.data.map(e=>[e.id,e]));for(let t of l)o.push(await T(t,u.get(t.r.externalId),i,s,e))}let i=new Set(n.data.map(e=>e.slug));for(let t of r.filter(e=>!i.has(String(e.r.meta.org??""))))o.push(await (0,D.a)(t,{state:"off",label:"Organization not visible to this token",patch:{}},e.now));await (0,D.M)(o)}}async function T(e,t,a,r,n){if(!t)return(0,D.a)(e,{state:"off",label:"Not found",patch:{}},n.now);let s=(0,E.h)({blockReads:t.blockReads,blockWrites:t.blockWrites,orgBlockedReads:a.blockedReads,orgBlockedWrites:a.blockedWrites}),o={org:a.slug,group:t.group,primaryRegion:t.primaryRegion,plan:a.plan,blockReads:t.blockReads,blockWrites:t.blockWrites};if(r.ok){let e=r.data.byDb.get(t.id);Object.assign(o,{rowsRead:e?.rowsRead??null,rowsWritten:e?.rowsWritten??null,storageBytes:e?.storageBytes??null,orgRowsRead:r.data.org.rowsRead,orgRowsWritten:r.data.org.rowsWritten,orgStorageBytes:r.data.org.storageBytes,orgDatabases:r.data.org.databases,usageAt:C(n.now),usageError:null})}else"column"===(0,x.t)(r,!1)?o.usageError=r.error:n.errors.push(`turso/${e.r.name} usage: ${r.error}`);return(0,D.a)(e,{...s,patch:o},n.now)}async function z(e){for(let{acc:t,credential:a}of(await (0,D.O)("upstash"))){(0,D.s)(e);let r=a?(0,O.L)(a):null;if(!r){e.errors.push(`upstash/${t.label}: credential can't be read`);continue}let n=await (0,D.e)(t.id,"upstash_redis");if(!n.length)continue;let s=await (0,O.M)(r,(0,D.s)(e));if(!s.ok){await (0,D.w)("upstash",t,n,s,e);continue}let o=new Map(s.data.map(e=>[e.id,e])),{out:i,skipped:l}=await (0,D.T)(e,n,(e,t)=>o.has(e.r.externalId)?(0,O.Z)(r,e.r.externalId,t):Promise.resolve(null)),u=[];for(let[t,a]of n.entries()){let r=o.get(a.r.externalId);if(!r){u.push(await (0,D.a)(a,{state:"off",label:"Not found",patch:{}},e.now));continue}let n=(0,E.t)(r.state),s={region:r.region,status:r.state,type:r.type},l=i[t];l?.ok?Object.assign(s,{...l.data,statsAt:C(e.now),statsError:null}):l&&"column"===(0,x.t)(l,!1)?s.statsError=l.error:l&&e.errors.push(`upstash/${a.r.name} stats: ${l.error}`),u.push(await (0,D.a)(a,{...n,patch:s},e.now))}await (0,D.M)(u),(0,D.W)(l)}}async function B(e){let t={};for(let{acc:a,credential:r}of(await (0,D.O)("cloudflare"))){if((0,D.s)(e),!r)continue;let n=await W(a.id,r,e);if(!n.length){t[a.id]={d1:"error",analytics:null,at:C(e.now),note:"No Cloudflare account found for this token"};continue}let s="ok",o=null;for(let t of n){let n=await (0,j.L)(r,t,(0,D.s)(e));if(!n.ok){"error"==(s="scope"===n.kind||"auth"===n.kind?"missing":"error")&&e.errors.push(`d1/${a.label}: ${n.error}`);continue}await U(a.id,t,n.data,e.now);let i=(await (0,D.e)(a.id,"d1_database")).filter(e=>e.r.meta.accountId===t);if(!i.length)continue;let l=await (0,j.t)(r,t,(0,j.Y)(e.now),(0,D.s)(e));o=l.ok?o??"ok":"scope"===l.kind?"missing":o??"error",l.ok||"scope"===l.kind||e.errors.push(`d1/${a.label} analytics: ${l.error}`);let{out:u,skipped:d}=await (0,D.T)(e,i,(e,a)=>(0,j.m)(r,t,e.r.externalId,a)),c=new Map((l.ok?l.data:[]).map(e=>[e.databaseId,e])),f=u.map(e=>e?.ok?e.data.sizeBytes??0:0),p={accountRowsRead:l.ok?l.data.reduce((e,t)=>e+t.rowsRead,0):null,accountRowsWritten:l.ok?l.data.reduce((e,t)=>e+t.rowsWritten,0):null,accountSizeBytes:u.every(e=>e?.ok)?f.reduce((e,t)=>e+t,0):null,accountDatabases:n.data.length},w=[];for(let[t,a]of i.entries()){let r=u[t];void 0!==r&&w.push(await _(a,r,c.get(a.r.externalId)??null,l.ok,l.ok?null:l.error,p,e))}await (0,D.M)(w),(0,D.W)(d)}t[a.id]={d1:s,analytics:o,at:C(e.now),note:null}}await (0,r.f)().insert(n.settings).values({key:R.f,value:t}).onConflictDoUpdate({target:n.settings.key,set:{value:t,updatedAt:e.now}})}async function _(e,t,a,r,n,s,o){let i={accountId:e.r.meta.accountId??null,createdAt:e.r.meta.createdAt??null,accountDatabases:s.accountDatabases};if(t.ok?Object.assign(i,{sizeBytes:t.data.sizeBytes,numTables:t.data.numTables,readReplication:t.data.readReplication,detailsAt:C(o.now),detailsError:null}):"scope"===t.kind?i.detailsError=t.error:o.errors.push(`d1/${e.r.name}: ${t.error}`),r?Object.assign(i,{rowsRead:a?.rowsRead??0,rowsWritten:a?.rowsWritten??0,readQueries:a?.readQueries??0,writeQueries:a?.writeQueries??0,accountRowsRead:s.accountRowsRead,accountRowsWritten:s.accountRowsWritten,usageDay:(0,j.Y)(o.now),usageAt:C(o.now),usageError:null}):i.usageError=n,null!==s.accountSizeBytes&&(i.accountSizeBytes=s.accountSizeBytes),!t.ok&&"transient"===t.kind)return(0,D.a)(e,{state:"unknown",label:"Unknown",patch:{}},o.now);let l=(0,E.c)(r?s:{accountRowsRead:null,accountRowsWritten:null});return(0,D.a)(e,{...l,patch:i},o.now)}async function W(e,a,s){let o=new Set,i=await (0,j.N)(a,(0,D.s)(s));if(i.ok)for(let e of i.data)o.add(e.id);for(let a of(await (0,r.f)().select({meta:n.resources.meta}).from(n.resources).where((0,t.b)((0,t.u)(n.resources.accountId,e),(0,t.u)(n.resources.kind,"zone"),(0,t.M)(n.resources.goneAt))).limit(200)))"string"==typeof a.meta.accountId&&/^[0-9a-f]{32}$/i.test(a.meta.accountId)&&o.add(a.meta.accountId);return[...o].slice(0,5)}async function U(e,a,s,o){let i=(await (0,r.f)().select({id:n.resources.id,externalId:n.resources.externalId,meta:n.resources.meta,goneAt:n.resources.goneAt}).from(n.resources).where((0,t.b)((0,t.u)(n.resources.accountId,e),(0,t.u)(n.resources.kind,"d1_database")))).filter(e=>e.meta.accountId===a),l=new Map(i.map(e=>[e.externalId,e])),u=new Set(s.map(e=>e.uuid));await (0,r.f)().transaction(async r=>{for(let i of s){let s={accountId:a,createdAt:i.createdAt},u=l.get(i.uuid);u?await r.update(n.resources).set({name:i.name,meta:s,lastSeenAt:o,goneAt:null,updatedAt:o}).where((0,t.u)(n.resources.id,u.id)):await r.insert(n.resources).values({accountId:e,kind:"d1_database",externalId:i.uuid,name:i.name,meta:s,monitored:!0,lastSeenAt:o}).onConflictDoNothing({target:[n.resources.accountId,n.resources.kind,n.resources.externalId]})}let d=i.filter(e=>!u.has(e.externalId)&&!e.goneAt).map(e=>e.id);d.length&&await r.update(n.resources).set({goneAt:o,updatedAt:o}).where((0,t.y)(n.resources.id,d))})}var F=e.i(442473),V=e.i(666680),L=e.i(473283),J=e.i(422067);async function Y(e=new Date){let t=(0,V.randomUUID)(),n=new Date(e.getTime()+J.d).toISOString(),s=await (0,r.f)().execute(a.B`
|
|
2
|
-
insert into ops.settings (key, value) values ('collector.lease', ${JSON.stringify({until:n,owner:t})}::jsonb)
|
|
3
|
-
on conflict (key) do update set value = excluded.value, updated_at = now()
|
|
4
|
-
where (ops.settings.value->>'until')::timestamptz < ${e.toISOString()}::timestamptz
|
|
5
|
-
returning key`);return(0,L.f)(s).length>0?t:null}async function q(e){await (0,r.f)().execute(a.B`
|
|
6
|
-
update ops.settings set value = jsonb_build_object('until', '1970-01-01T00:00:00Z'), updated_at = now()
|
|
7
|
-
where key = 'collector.lease' and value->>'owner' = ${e}`)}var K=e.i(679270);let Z=/^v?(\d{1,9})\.(\d{1,9})\.(\d{1,9})(?:-([0-9A-Za-z.-]{1,64}))?(?:\+[0-9A-Za-z.-]{1,64})?$/,G=/^\d{4}-\d{2}-\d{2}$/;function X(e){let t="string"==typeof e?Z.exec(e.trim()):null;if(!t)return null;let[a,r,n]=[t[1],t[2],t[3]].map(Number);return{major:a,minor:r,patch:n,pre:t[4]??null,text:`${a}.${r}.${n}${t[4]?`-${t[4]}`:""}`}}function H(e,t){return e.major!==t.major?e.major-t.major:e.minor!==t.minor?e.minor-t.minor:e.patch!==t.patch?e.patch-t.patch:e.pre===t.pre?0:null===e.pre?1:null===t.pre||e.pre<t.pre?-1:1}function Q(e){let t=(e&&"object"==typeof e?e:null)?.result?.releases;if(!Array.isArray(t)||0===t.length)return null;let a=[];for(let e of t){if(!e||"object"!=typeof e||"string"!=typeof e.name||"boolean"!=typeof e.isEol||null!=e.eolFrom&&("string"!=typeof e.eolFrom||!G.test(e.eolFrom)))return null;a.push({name:e.name,isEol:e.isEol,eolFrom:e.eolFrom??null})}return a}var ee=e.i(583521);let et="runtime.node";function ea(e=process.env){let t=(0,ee.N)(e,"NO_UPDATE_CHECK"),a=t?.value.trim()??"";return{off:""!==a&&!/^(0|false|no|off)$/i.test(a),name:t?.name??"WATCHBELL_NO_UPDATE_CHECK"}}async function er(e,t,a,r){let n;try{n=await a(e,{method:"GET",headers:{Accept:"application/json","Accept-Encoding":"gzip"},signal:AbortSignal.timeout(r),cache:"no-store"})}catch{return{ok:!1,error:`Couldn't reach ${t}`}}if(!n.ok)return{ok:!1,error:`${t} returned an error (${n.status})`};try{return{ok:!0,body:await n.json()}}catch{return{ok:!1,error:`${t} answered in a format the console doesn't recognise`}}}async function en(e={}){let t=e.fetch??fetch,a=e.timeoutMs??8e3,[r,n]=await Promise.all([er("https://nodejs.org/dist/index.json","nodejs.org",t,a),er("https://endoflife.date/api/v1/products/nodejs/","endoflife.date",t,a)]),s=r.ok?function(e){if(!Array.isArray(e)||0===e.length)return null;let t=[],a=new Map;for(let r of e){if(!r||"object"!=typeof r||"boolean"!=typeof r.security)return null;let e=X(r.version);if(!e||null!==e.pre||!String(r.version).startsWith("v"))return null;r.security&&t.push(e);let n=a.get(e.major);(!n||H(e,n)>0)&&a.set(e.major,e)}return t.sort((e,t)=>H(t,e)),{security:t.map(e=>e.text),latest:Object.fromEntries([...a].sort((e,t)=>t[0]-e[0]).map(([e,t])=>[String(e),t.text]))}}(r.body):null,o=n.ok?Q(n.body):null,i=e=>`${e} answered in a format the console doesn't recognise`;return{index:s,indexError:r.ok?s?null:i("nodejs.org"):r.error,cycles:o,cyclesError:n.ok?o?null:i("endoflife.date"):n.error}}let es=e=>"string"==typeof e&&Number.isFinite(Date.parse(e))?e:null,eo=e=>"string"==typeof e?e:null;async function ei(){var e;let[a]=await (0,r.f)().select({value:n.settings.value}).from(n.settings).where((0,t.u)(n.settings.key,et)).limit(1);return a?(e=a.value)&&"object"==typeof e?{index:function(e){let t=e&&"object"==typeof e?e:null;if(!t||!Array.isArray(t.security)||!t.latest||"object"!=typeof t.latest)return null;let a=t.security.map(X),r=Object.entries(t.latest).map(([e,t])=>[e,X(t)]);return a.some(e=>!e)||r.some(([e,t])=>!t||String(t.major)!==e)?null:{security:a.map(e=>e.text),latest:Object.fromEntries(r.map(([e,t])=>[e,t.text]))}}(e.index),indexCheckedAt:es(e.indexCheckedAt),indexError:eo(e.indexError),cycles:Q({result:{releases:e.cycles}}),cyclesCheckedAt:es(e.cyclesCheckedAt),cyclesError:eo(e.cyclesError)}:null:null}async function el(e,t,a,s=process.env){let o;if(ea(s).off)return;let i=t-Date.now();if(i<1e3)throw Error("skipped, time budget used");let l=await en({timeoutMs:Math.min(8e3,i)}),u=await ei();l.indexError&&a.push(`node: ${l.indexError}`),l.cyclesError&&a.push(`node: ${l.cyclesError}`);let d=(o=e.toISOString(),{index:l.index??u?.index??null,indexCheckedAt:o,indexError:l.indexError,cycles:l.cycles??u?.cycles??null,cyclesCheckedAt:o,cyclesError:l.cyclesError});await (0,r.f)().insert(n.settings).values({key:et,value:d}).onConflictDoUpdate({target:n.settings.key,set:{value:d,updatedAt:e}})}var eu=e.i(77193);let ed=/^\d{1,4}\.\d{1,4}\.\d{1,6}$/,ec=e=>"string"==typeof e&&ed.test(e);async function ef(e={}){let t,a=e.fetch??fetch;try{t=await a("https://registry.npmjs.org/watchbell/latest",{method:"GET",headers:{Accept:"application/json","Accept-Encoding":"gzip"},signal:AbortSignal.timeout(e.timeoutMs??6e3),cache:"no-store"})}catch{return{ok:!1,error:"Couldn't reach registry.npmjs.org"}}if(!t.ok)return{ok:!1,error:`registry.npmjs.org returned an error (${t.status})`};try{let e=await t.json();return ec(e.version)?{ok:!0,version:e.version}:{ok:!1,error:"registry.npmjs.org answered without a version"}}catch{return{ok:!1,error:"registry.npmjs.org answered in a format the console doesn't recognise"}}}async function ep(e,t,a,s=process.env,o){let i=function(e=process.env){let t=e.WATCHBELL_VERSION?.trim();return ec(t)?t:null}(s);if(!i||"selfhost"!==(0,eu.c)(s)||ea(s).off)return;let l=t-Date.now();if(l<1e3)return;let u=await ef({fetch:o,timeoutMs:Math.min(6e3,l)});if(u.ok){let t={version:u.version,checkedAt:e.toISOString()};await (0,r.f)().insert(n.settings).values({key:"watchbell.latest",value:t}).onConflictDoUpdate({target:n.settings.key,set:{value:t,updatedAt:e}})}else a.push(`update check: ${u.error}`);await (0,r.f)().insert(n.settings).values({key:"watchbell.seenVersion",value:{version:i}}).onConflictDoNothing({target:n.settings.key})}var ew=e.i(515743),em=e.i(336030),eh=e.i(905685),eg=e.i(751762);e.i(794713);let ey="collector.lastRun",eb="vercel.backoffUntil",ek="vercel.currentMiss",ev={supabase:D.N,supabaseUsage:D.y,neon:D.h,firebase:D.g,firebaseUsage:D.x,extraDbs:N};async function eI(){let e=await (0,r.f)().select({key:n.settings.key,value:n.settings.value}).from(n.settings).where((0,t.y)(n.settings.key,[ey,A.Z])).limit(2);return{lastRun:e.find(e=>e.key===ey)?.value??{},afterDeploy:e.find(e=>e.key===A.Z)?.value??null}}async function eA(e){await (0,r.f)().insert(n.settings).values({key:ey,value:e}).onConflictDoUpdate({target:n.settings.key,set:{value:e,updatedAt:new Date}})}let eS=e=>(0,f.f)(e);async function e$(e,s,o,i,l=[]){let u=(await (0,r.f)().select({m:n.monitors,app:n.resources}).from(n.monitors).innerJoin(n.resources,(0,t.u)(n.resources.id,n.monitors.resourceId)).where((0,t.b)((0,t.u)(n.monitors.kind,"http"),(0,t.u)(n.monitors.paused,!1),(0,t.u)(n.monitors.ownerPaused,!1),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt))).orderBy(a.B`${n.monitors.lastCheckedAt} asc nulls first`,n.monitors.id)).filter(({m:t})=>(0,J.B)(t.lastCheckedAt,e,i));if(!u.length)return 0;let d=await (0,F.P)(u,6,({m:e})=>{let t=(0,J.P)(e.timeoutMs,s,Date.now());return null===t?Promise.resolve(null):(0,F.b)(e.url,{expectedStatus:e.expectedStatus,timeoutMs:t,body:(0,ew.C)(e)})}),c=u.flatMap((e,t)=>d[t]?[{...e,r:d[t]}]:[]);if(c.length<u.length&&o.push(`checks: ${u.length-c.length} monitors skipped, time budget used`),!c.length)return 0;let f=[];for(let t of c)await (0,em.j)(t.m,t.r,e)&&f.push(t);return f.length?(await (0,r.f)().insert(n.checks).values(f.map(({m:t,app:a,r})=>({monitorId:t.id,at:e,ok:r.ok,statusCode:r.statusCode,latencyMs:r.latencyMs,error:r.error,inMaintenance:null!==(0,I.x)(l,{monitorId:t.id,appId:a.id},e)}))),await eS(f.map(({m:t,app:a,r})=>(0,eh.F)({resourceId:a.id,path:(0,$.K)(t.url),prev:t.state,next:(0,eh.G)(t.failStreak,r).state,code:r.statusCode,error:r.error,at:e}))),f.length):0}let eD=["checks","heartbeats"];async function ex(e,t,a=c.f){if(!eD.some(t=>e.includes(t)))return[];try{return await a()}catch(e){return t.push(`maintenance: ${(0,eg.f)(e)}`),[]}}async function eE(e){let[a]=await (0,r.f)().select().from(n.settings).where((0,t.u)(n.settings.key,eb)).limit(1),s=a?.value?.until;return!!s&&e.getTime()<new Date(s).getTime()}async function ej(e,t){if("transient"!==e.kind||!e.retryAfterS)return!1;let a={until:new Date(t.getTime()+1e3*Math.min(e.retryAfterS,3600)).toISOString()};return await (0,r.f)().insert(n.settings).values({key:eb,value:a}).onConflictDoUpdate({target:n.settings.key,set:{value:a,updatedAt:t}}),!0}let eM=e=>a.B`coalesce(${n.deployments.externalId} = ${e}::text, false)`;async function eO(e,s,o,i,l=b.m){let u=[];try{for(let l of e){let e=s.filter(e=>e.resourceId===l.id),{currentId:d,previousId:c}=(0,$.a)(e.map(e=>({id:e.id,createdAt:e.createdAt??new Date(0)})),(l.externalId?o.get(l.externalId):null)??null),f=await (0,r.f)().update(n.deployments).set({isCurrent:eM(d),isPreviousProduction:eM(c),updatedAt:i.now}).where((0,t.b)((0,t.u)(n.deployments.resourceId,l.id),(0,t.F)(a.B`${n.deployments.isCurrent} is distinct from ${eM(d)}`,a.B`${n.deployments.isPreviousProduction} is distinct from ${eM(c)}`))).returning({id:n.deployments.externalId}),p=(0,A.X)({appId:l.id,currentId:d,changedIds:f.map(e=>e.id),createdAt:e.find(e=>e.id===d)?.createdAt??null,state:i.afterDeploy,now:i.now});p&&u.push({appId:l.id,deploymentId:p})}}finally{if(u.length)try{await l(u,i.now)}catch(e){i.errors.push(`vercel/${i.label}: after-deploy security check not scheduled: ${(0,eg.f)(e)}`)}}}let eR=e=>new Map(e.map(e=>[e.id,{...e.branchFrom?{branchFrom:e.branchFrom}:{},...e.gitDirty?{gitDirty:!0}:{}}]));async function eN(e,t,a,r,n=new Map,s=g.f){try{await s(e,t,n)}catch(e){a.push(`vercel/${r}: production source not saved: ${(0,eg.f)(e)}`)}}async function eC(e,a,s,i){if(await eE(e))return;let l=(0,v.f)().OPS_ENCRYPTION_KEY;for(let u of(await (0,r.f)().select().from(n.accounts).where((0,t.b)((0,t.u)(n.accounts.provider,"vercel"),(0,t.u)(n.accounts.status,"ok"))))){let d=(0,p.V)({ciphertext:u.credentialCiphertext,iv:u.credentialIv},l);if((0,o.A)(d)||!d){s.push(`vercel/${u.label}: credential can't be read`);continue}let c=await (0,r.f)().select().from(n.resources).where((0,t.b)((0,t.u)(n.resources.accountId,u.id),(0,t.u)(n.resources.kind,"app"),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt)));if(!c.length)continue;let f=new Map(c.map(e=>[e.externalId,e])),w=await (0,S.X)(d);if(!w.ok){let a=(0,o.E)({ok:!1,kind:w.kind,error:w.error});if(a&&await (0,r.f)().update(n.accounts).set({...a,updatedAt:e}).where((0,t.u)(n.accounts.id,u.id)),s.push(`vercel/${u.label}: ${w.error}`),await ej(w,e))return;continue}let m=new Set(c.map(e=>String(e.meta.teamId)));for(let o of w.data.filter(e=>m.has(e.id))){if(Date.now()>a)return void s.push("vercel: skipped remaining teams, time budget used");let[l,u]=await Promise.all([(0,S.W)(d,o),(0,S.K)(d,o,{since:e.getTime()-6048e5,limit:100})]);if(!l.ok||!u.ok){let t=l.ok?u:l;if(s.push(`vercel/${o.name}: ${t.error}`),await ej(t,e))return;continue}let p=new Map(l.data.map(e=>[e.id,e.currentDeploymentId])),w=u.data.filter(e=>f.has(e.projectId)),m=eR(w),h=new Map((w.length?await (0,r.f)().select({externalId:n.deployments.externalId,state:n.deployments.state,target:n.deployments.target,branch:n.deployments.branch,commitSha:n.deployments.commitSha,commitMessage:n.deployments.commitMessage,source:n.deployments.source,url:n.deployments.url,buildingAt:n.deployments.buildingAt,readyAt:n.deployments.readyAt}).from(n.deployments).where((0,t.y)(n.deployments.externalId,w.map(e=>e.id))):[]).map(e=>[e.externalId,e])),g=[];for(let t of w){let a=f.get(t.projectId),s=h.get(t.id),o={state:t.state,target:t.target,branch:t.branch,commitSha:t.sha,commitMessage:t.message,source:t.source,url:t.url,buildingAt:t.buildingAt,readyAt:t.readyAt};if((0,$.E)(s,o)){let s={resourceId:a.id,externalId:t.id,...o,createdAtProvider:t.createdAt,updatedAt:e};await (0,r.f)().insert(n.deployments).values(s).onConflictDoUpdate({target:n.deployments.externalId,set:s})}g.push((0,eh.L)(s?.state,t,a.id,e))}await eS(g);let y=c.filter(e=>String(e.meta.teamId)===o.id),b=await (0,r.f)().select({resourceId:n.deployments.resourceId,id:n.deployments.externalId,createdAt:n.deployments.createdAtProvider}).from(n.deployments).where((0,t.b)((0,t.y)(n.deployments.resourceId,y.map(e=>e.id)),(0,t.u)(n.deployments.target,"production"),(0,t.u)(n.deployments.state,"ready"))),[k]=await (0,r.f)().select().from(n.settings).where((0,t.u)(n.settings.key,ek)).limit(1),v=[],I=()=>v.length?(0,r.f)().insert(n.settings).values({key:ek,value:(0,$.Y)(k?.value,v,e)}).onConflictDoUpdate({target:n.settings.key,set:{value:(0,$.Y)(k?.value,v,e),updatedAt:e}}):Promise.resolve();for(let t of(0,$.Q)(y,p,b,(0,$.S)(k?.value,e))){if(Date.now()>a)break;let i=await (0,S.S)(d,o,t.deploymentId);if(!i.ok){if(s.push(`vercel/${o.name}: current deployment: ${i.error}`),await ej(i,e))return void await I();v.push(t.deploymentId);continue}let l=i.data;for(let[e,t]of eR([l]))m.set(e,t);let u={resourceId:t.appId,externalId:l.id,state:l.state,target:l.target,branch:l.branch,commitSha:l.sha,commitMessage:l.message,source:l.source,url:l.url,buildingAt:l.buildingAt,readyAt:l.readyAt,createdAtProvider:l.createdAt,updatedAt:e};await (0,r.f)().insert(n.deployments).values(u).onConflictDoUpdate({target:n.deployments.externalId,set:u}),"ready"===l.state&&"production"===l.target?b.push({resourceId:t.appId,id:l.id,createdAt:l.createdAt}):v.push(t.deploymentId)}await I(),await eO(y,b,p,{now:e,afterDeploy:i,errors:s,label:o.name}),await eN(y,e,s,o.name,m)}}}async function eP(e){let o=await (0,r.f)().select().from(n.resources).where((0,t.b)((0,t.u)(n.resources.kind,"app"),(0,t.u)(n.resources.monitored,!0),(0,t.M)(n.resources.goneAt)));if(!o.length)return;let i=await (0,r.f)().select().from(n.monitors).where((0,t.b)((0,t.y)(n.monitors.resourceId,o.map(e=>e.id)),(0,t.u)(n.monitors.paused,!1),(0,t.u)(n.monitors.ownerPaused,!1))),l=new Set((await (0,r.f)().select({r:n.deployments.resourceId}).from(n.deployments).where((0,t.b)((0,t.y)(n.deployments.resourceId,o.map(e=>e.id)),(0,t.u)(n.deployments.target,"production"),(0,t.u)(n.deployments.state,"building"),(0,t.B)(n.deployments.createdAtProvider,new Date(e.getTime()-36e5))))).map(e=>e.r)),u=await (0,D.q)(o.map(e=>e.id)),d=new Map((await (0,r.f)().select().from(n.snapshots).where((0,t.y)(n.snapshots.resourceId,o.map(e=>e.id)))).map(e=>[e.resourceId,e])),c=new Map(o.map(e=>[e.id,e])),f=(0,s.P)(i.map(e=>({id:e.id,kind:e.kind,url:e.url,appId:e.resourceId,appName:c.get(e.resourceId)?.name??"",appMeta:c.get(e.resourceId)?.meta,lastError:e.lastError})),o),p=e=>f.has(e.id)&&"err"===e.state?"warn":e.state;for(let[e,l]of(0,s.R)(i.map(e=>({id:e.id,kind:e.kind,url:e.url,appId:e.resourceId,appName:c.get(e.resourceId)?.name??"",appMeta:c.get(e.resourceId)?.meta,lastError:e.lastError})),o))await (0,r.f)().update(n.resources).set({meta:a.B`${n.resources.meta} || ${JSON.stringify({pastDomains:l})}::jsonb`}).where((0,t.u)(n.resources.id,e));for(let t of o){let s=i.filter(e=>e.resourceId===t.id),o=(0,eh.V)({monitors:s.map(p),building:l.has(t.id),dbPaused:u.has(t.id)}),c=s.find(e=>"err"===e.state)??s.find(e=>"warn"===e.state),f={code:c?.lastStatus??null,latencyMs:s.find(e=>"heartbeat"!==e.kind)?.lastLatencyMs??null,dbPaused:u.has(t.id)},w=d.get(t.id);await (0,r.f)().insert(n.snapshots).values({resourceId:t.id,state:o,data:f,collectedAt:e,stateSince:e}).onConflictDoUpdate({target:n.snapshots.resourceId,set:{state:o,data:a.B`${n.snapshots.data} || ${JSON.stringify(f)}::jsonb`,collectedAt:e,...w?.state!==o?{stateSince:e}:{}}})}}async function eT(e,t={}){let a={writeLastRun:eA,refreshApps:eP,refreshNetwork:K.x,invalidate:i.f,...t};try{await a.writeLastRun({...e.lastRun,...Object.fromEntries(e.done.map(t=>[t,e.started.toISOString()]))});try{await a.refreshApps(new Date)}catch(t){e.errors.push(`app-snapshots: ${(0,eg.f)(t)}`)}if(e.done.some(e=>K.p.includes(e)))try{await a.refreshNetwork(new Date)}catch(t){e.errors.push(`network-states: ${(0,eg.f)(t)}`)}}finally{a.invalidate((0,l.o)(e.tried??e.done))}}async function ez(e,t,a,r={evaluate:u.$,deliver:m.q,digest:m.J}){let n=[];if(e.includes("alerts"))if(Date.now()>t)a.push("alerts: skipped, time budget used");else{let e=!0;try{await r.evaluate(new Date),console.info("collector alerts evaluated")}catch(t){e=!1,a.push(`alerts: ${(0,eg.f)(t)}`)}try{await r.deliver(new Date,t),console.info("collector notifications delivered")}catch(t){e=!1,a.push(`notify: ${(0,eg.f)(t)}`)}e&&n.push("alerts")}if(e.includes("digest")&&(0,J.z)("digest",t,Date.now()))try{await r.digest(new Date),console.info("collector digest done"),n.push("digest")}catch(e){a.push(`digest: ${(0,eg.f)(e)}`)}return n}async function eB(e,t,a,r){let n=[],s=[];for(let o of e){if(Date.now()>t){a.push(`${o}: skipped, time budget used`);continue}if((0,J.z)(o,t,Date.now())){s.push(o);try{await r(o),n.push(o)}catch(e){a.push(`${o}: ${(0,eg.f)(e)}`)}}}return{done:n,tried:s}}async function e_(e){let a,s=new Date,o=await Y(s);if(!o)return{skipped:!0,ok:!0,tasks:[],checks:0,durationMs:0,errors:[]};try{[a]=await (0,r.f)().insert(n.collectorRuns).values({startedAt:s,trigger:"builtin"===e?"manual":e}).returning({id:n.collectorRuns.id})}catch(e){throw await q(o).catch(()=>void 0),e}let i=[],l=[],u=0,c=s.getTime()+J.p,f=e=>console.info(`collector ${e} +${Date.now()-s.getTime()}ms`);try{f("start");let{lastRun:t,afterDeploy:a}=await eI(),r="cron_job_org"!==e&&"builtin"!==e,n=await (0,h.I)(),{due:o,early:p}=(0,J._)((0,J.S)(t,s,r,n),(0,b.Y)(a),n),m=!1,g=e=>p||!m?e.filter(e=>"security"!==e):e,v=o.filter(e=>J.u.includes(e)),S=v.includes("alerts")?c-J.X:c,$=await ex(o,i);f(`due ${o.join(",")}`);let{done:D,tried:x}=await eB(o.filter(e=>!J.u.includes(e)),S,i,async e=>{if(f(`task ${e}`),"heartbeats"===e){let e=new Date;u+=await (0,d.r)(e,(t,a)=>null!==(0,I.x)($,{monitorId:t,appId:a},e),r)}"checks"===e&&(u+=await e$(new Date,S,i,r,$)),"vercel"===e&&await eC(new Date,S,i,(0,A.Y)(a));let t=ev[e];t&&await t({now:new Date,deadline:S,errors:i,protectOnly:(0,J.$)(e,n)}),"cloudflare"===e&&await (0,K.h)(new Date,S,i),"domains"===e&&await (0,K.H)(new Date,S,i),"tls"===e&&await (0,K.V)(new Date,S,i),"rdap"===e&&await (0,K.W)(new Date,S,i),"eol"===e&&await (0,K.i)(new Date,S,i),"node"===e&&(await el(new Date,S,i),await ep(new Date,S,i)),"status"===e&&await (0,k.i)(new Date),"logs"===e&&await (0,w._)(new Date,S,i),"pageviews"===e&&await (0,y.f)(new Date,S,i),"security"===e&&(m=(await (0,b.U)({now:s,deadline:S,errors:i,paused:n,early:p})).complete)});l.push(...D),f("main done"),await eT({lastRun:t,done:g(l),tried:x,started:s,errors:i}),f("settled");let E=await ez(v,c,i);f("post done"),E.length&&await eA({...t,...Object.fromEntries(g([...l,...E]).map(e=>[e,s.toISOString()]))}),l.push(...E)}catch(e){i.push(`run: ${(0,eg.f)(e)}`)}finally{let e=Date.now()-s.getTime();await (0,r.f)().update(n.collectorRuns).set({finishedAt:new Date,ok:0===i.length,errorSummary:i.join("\n").slice(0,2e3)||null,durationMs:e,tasks:l,checks:u}).where((0,t.u)(n.collectorRuns.id,a.id)).catch(()=>void 0),await q(o).catch(()=>void 0)}return{skipped:!1,ok:0===i.length,tasks:l,checks:u,durationMs:Date.now()-s.getTime(),errors:i}}e.s(["f",0,e_],956846)},703352,948736,873354,655060,e=>{var t=e.i(875225),a=e.i(518899),r=e.i(924924),n=e.i(618916),s=e.i(502240);async function o(e,i,l=new Map){if(!e.length)return 0;let u=await (0,r.f)().select({app:n.deployments.resourceId,id:n.deployments.externalId,source:n.deployments.source,branch:n.deployments.branch,sha:n.deployments.commitSha}).from(n.deployments).where((0,t.b)((0,t.y)(n.deployments.resourceId,e.map(e=>e.id)),(0,t.u)(n.deployments.isCurrent,!0))),d=0;for(let o of e){let e,c=u.find(e=>e.app===o.id);if(!c)continue;let f=(0,s.O)(o.meta?.productionSource),p=l.get(c.id),w={source:c.source??null,branch:c.branch??null,sha:c.sha??null};if(!(e=p?(0,s.s)({...w,branchFrom:p.branchFrom??null,gitDirty:!0===p.gitDirty}):f?.id===c.id?{kind:f.kind,...f.ref?{ref:f.ref}:{},...f.sha?{sha:f.sha}:{}}:"git"===w.source||"cli"===w.source?(0,s.s)(w):null)){if(f?.at&&f.id!==c.id){let e={...f};delete e.at,await (0,r.f)().update(n.resources).set({meta:a.B`${n.resources.meta} || ${JSON.stringify({productionSource:e})}::jsonb`}).where((0,t.u)(n.resources.id,o.id)),d++}continue}e={...e,id:c.id};let m=!!f?.at&&i.getTime()-Date.parse(f.at)<s.u;if((0,s.v)(f,e)&&m)continue;let h={...e,at:i.toISOString()};await (0,r.f)().update(n.resources).set({meta:a.B`${n.resources.meta} || ${JSON.stringify({productionSource:h})}::jsonb`}).where((0,t.u)(n.resources.id,o.id)),d++}return d}e.s(["f",0,o],703352);var i=e.i(442473),l=e.i(381725),u=e.i(767512),d=e.i(971724),c=e.i(206033),f=e.i(455744),p=e.i(469755),w=e.i(105954),m=e.i(857897);let h=/not enabled/i,g=(e,t,a={})=>({ok:!1,kind:e,error:t,...a}),y="Vercel Web Analytics answered in a format the console doesn't recognise.",b=d.z.object({data:d.z.object({pageviews:c.z.number().finite().nonnegative(),visitors:c.z.number().finite().nonnegative()})}),k=d.z.object({data:f.z.array(p.z.unknown())}),v=d.z.object({timestamp:w.z.string().transform((e,t)=>{let a=Date.parse(e);return Number.isNaN(a)?(t.addIssue({code:"custom",message:"bad timestamp"}),m.z.NEVER):a}),pageviews:c.z.number().finite().nonnegative().nullish().catch(null)});async function I(e,t,a,r){let n=r.since.toISOString(),s=r.until.toISOString(),o=r.fetch??fetch,l=new AbortController,u=setTimeout(()=>l.abort(new DOMException("window","TimeoutError")),r.timeoutMs??8e3),d=r.signal?AbortSignal.any([l.signal,r.signal]):l.signal,c=(0,i.X)(d);async function f(i,u){let f=new URLSearchParams({projectId:a,teamId:t,...u,since:n,until:s});try{let t=await Promise.race([o(`https://api.vercel.com/v1/query/web-analytics/visits/${i}?${f}`,{headers:{Authorization:`Bearer ${e}`,Accept:"application/json"},signal:d,cache:"no-store"}),c]),a=null,r=!1;if(401===t.status||403===t.status)a=g("auth",`Vercel rejected this credential (${t.status}).`,{status:t.status});else if(429===t.status){let e=Number(t.headers.get("Retry-After"));a=g("transient","Vercel says there were too many requests.",{status:429,retryAfterS:Number.isFinite(e)&&e>0?e:60})}else if(400===t.status){let e=await Promise.race([t.text(),c]).catch(()=>"");h.test(e)?r=!0:a=g("transient","Vercel Web Analytics rejected the request (400).",{status:400})}else t.ok||(a=g("transient",`Vercel Web Analytics returned an error (${t.status}).`,{status:t.status}));if(r)return{kind:"off"};if(a)return await t.body?.cancel().catch(()=>void 0),{kind:"fail",fail:a};try{return{kind:"body",body:await Promise.race([t.json(),c])}}catch(e){if(d.aborted)throw e;return{kind:"fail",fail:g("format",y)}}}catch{return{kind:"fail",fail:d.aborted?l.signal.aborted&&!r.signal?.aborted?g("transient","Vercel Web Analytics didn't answer in time."):g("transient","Reading Vercel Web Analytics was cancelled."):g("transient","Couldn't reach Vercel Web Analytics.")}}}try{let[e,t]=await Promise.all([f("count",{}),f("aggregate",{by:"hour"})]);if("off"===e.kind||"off"===t.kind)return{ok:!0,enabled:!1};let a=[e,t].flatMap(e=>"fail"===e.kind?[e.fail]:[]),r=a.find(e=>"auth"===e.kind);if(r)return r;let n="body"===t.kind?k.safeParse(t.body):null,s="fail"===t.kind?t.fail:n?.success?null:g("format",y),o=a.find(e=>"transient"===e.kind);if(o)return o;if(s)return s;if(!n?.success)return g("format",y);let i="body"===e.kind?b.safeParse(e.body):null,l=n.data.data.flatMap(e=>{let t=v.safeParse(e);return t.success?[t.data]:[]});if(l.length>0&&l.every(e=>null==e.pageviews))return g("format",y);let u=new Map;for(let e of l){let t=36e5*Math.floor(e.timestamp/36e5);u.set(t,(u.get(t)??0)+(e.pageviews??0))}let d=[...u].sort((e,t)=>e[0]-t[0]).slice(-24).map(([e,t])=>({at:new Date(e),views:t}));if(i?.success)return{ok:!0,enabled:!0,total:i.data.data.pageviews,visitors:i.data.data.visitors,hourly:d};return{ok:!0,enabled:!0,total:d.reduce((e,t)=>e+t.views,0),visitors:null,hourly:d}}finally{clearTimeout(u),l.abort()}}var A=e.i(943816);async function S(e,t,a){let r=await (0,l.g)(null);if(!r.length)return;let n=new Date(36e5*Math.floor(e.getTime()/36e5)-828e5);await (0,i.P)(r,3,async r=>{if(Date.now()+8500>t)return;let s=await I(r.token,r.teamId,r.projectId,{since:n,until:e});if(!s.ok)return void a.push(`pageviews/${r.appName}: ${s.error}`);try{await (0,u.r)(r.appId,{pageviews:(0,A.Z)(s,e)},e)}catch{a.push(`pageviews/${r.appName}: couldn't save the page views`)}})}e.s(["f",0,S],948736);var $=e.i(422067),D=e.i(433609),x=e.i(800523),E=e.i(479301);let j="security.afterDeploy",M=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),O=e=>"string"==typeof e&&e.length>0&&e.length<=100;function R(e){let t={pending:{},checked:{}};if(!M(e))return t;if(M(e.pending))for(let[a,r]of Object.entries(e.pending)){if(!(0,E.f)(a)||!M(r)||!O(r.id)||"string"!=typeof r.at||Number.isNaN(Date.parse(r.at)))continue;let e="number"==typeof r.attempts&&Number.isInteger(r.attempts)&&r.attempts>=0?Math.min(r.attempts,3):0;t.pending[a]={id:r.id,at:r.at,attempts:e,...!0===r.next?{next:!0}:{},...!0===r.deps?{deps:!0}:{}}}if(M(e.checked))for(let[a,r]of Object.entries(e.checked))(0,E.f)(a)&&O(r)&&(t.checked[a]=r);return t}let N=e=>Object.keys(e.pending).length>0;function C(e,t,a){let r={pending:{...e.pending},checked:{...e.checked}},n=!1;for(let e of t)(0,E.f)(e.appId)&&O(e.deploymentId)&&r.checked[e.appId]!==e.deploymentId&&r.pending[e.appId]?.id!==e.deploymentId&&(r.pending[e.appId]={id:e.deploymentId,at:a.toISOString(),attempts:0},n=!0);return{state:r,changed:n}}function P(e,t){let a,r={...e.pending},n={...e.checked};for(let e of t){let t=r[e];t&&(delete r[e],delete n[e],n[e]=t.id)}return{pending:r,checked:(a=Object.entries(n)).length<=500?n:Object.fromEntries(a.slice(a.length-500))}}function T(e,t){let a=Object.entries(e.pending).filter(([,e])=>t.getTime()-Date.parse(e.at)>216e5).map(([e])=>e);return a.length?P(e,a):e}let z=(e,t)=>Object.entries(e.pending).filter(([,e])=>!e[t]).map(([e])=>e);function B(e,t){let a={},r=[];for(let[n,s]of Object.entries(e.pending)){let e={...s};t.hosting&&!e.next&&(t.nextDone?.has(n)?e.next=!0:t.nextStarted?.has(n)&&(e.attempts=Math.min(e.attempts+1,3))),t.devops&&!e.deps&&t.depsDone?.has(n)&&(e.deps=!0),a[n]=e,((e.next||!t.hosting)&&(e.deps||!t.devops)||e.attempts>=3)&&r.push(n)}return P({pending:a,checked:e.checked},r)}e.s(["Z",0,j,"X",0,function(e){var t,a;let r=e.currentId;return r&&e.state.checked[e.appId]!==r&&e.state.pending[e.appId]?.id!==r&&(t=e.changedIds,((a=r)&&t.includes(a)?a:null)||e.createdAt&&e.now.getTime()-e.createdAt.getTime()<=216e5)?r:null},"a",0,T,"A",0,N,"B",0,C,"p",0,z,"Y",0,R,"E",0,B],873354);var _=e.i(970465);let W="security.slot",U=e=>Array.isArray(e)?e.filter(e=>"string"==typeof e&&e.length>0&&e.length<=100).slice(0,1e3):[],F=(e,t)=>[...new Set([...e,...t])].slice(0,1e3),V=e=>async()=>{let[a]=await (0,r.f)().select({value:n.settings.value}).from(n.settings).where((0,t.u)(n.settings.key,e)).limit(1);return a?.value??null},L=e=>async t=>{await (0,r.f)().insert(n.settings).values({key:e,value:t}).onConflictDoUpdate({target:n.settings.key,set:{value:t,updatedAt:new Date}})},J={read:V(j),write:L(j),readSlot:V(W),writeSlot:L(W),nextCheck:x.h,depsStep:(e,t)=>(0,D.O)(e,t)};async function Y(e,t=J){let a=R(await t.read()),r=T(a,e.now),n=!e.paused.has("hosting"),s=!e.paused.has("devops"),o=n?z(r,"next"):[],i=s?z(r,"deps"):[],l=e.early?null:function(e,t){let a=e&&"object"==typeof e&&!Array.isArray(e)?e:{};if(a.slot!==t)return{slot:t,runs:0,next:[],repos:[],cut:{},nextDone:!1,depsDone:!1};let r="number"==typeof a.runs&&Number.isInteger(a.runs)&&a.runs>=0?a.runs:0,n={};if(a.cut&&"object"==typeof a.cut&&!Array.isArray(a.cut))for(let[e,t]of Object.entries(a.cut).slice(0,1e3))e.length<=100&&"number"==typeof t&&Number.isInteger(t)&&t>0&&(n[e]=Math.min(t,2));return{slot:t,runs:r,next:U(a.next),repos:U(a.repos),cut:n,nextDone:!0===a.nextDone,depsDone:!0===a.depsDone}}(await t.readSlot(),new Date((0,$.G)("security",e.now)).toISOString()),u=!!l&&n&&!l.nextDone,d=!!l&&s&&!l.depsDone,c=n&&(o.length>0||u),f=s&&(i.length>0||d),p={hosting:n,devops:s,nextDone:new Set,nextStarted:new Set,depsDone:new Set},w=async()=>{let a=Math.min(Date.now()+_.y,!l&&f?e.deadline-2*D.d:e.deadline),r=u?[...l.next,...Object.entries(l.cut).filter(([,e])=>e>=2).map(([e])=>e)]:[],n=u?{first:o,skip:[...new Set(r)].filter(e=>!o.includes(e))}:{only:o},s=await t.nextCheck(a,n);for(let t of s.failed)e.errors.push(`security ${t}`);for(let e of s.done)p.nextDone.add(e);for(let e of o)s.listed.includes(e)||p.nextDone.add(e);for(let e of s.started)p.nextStarted.add(e);if(u){let e=new Set(s.done);for(let t of(l.next=F(l.next,s.done),s.started))e.has(t)||(l.cut[t]=Math.min((l.cut[t]??0)+1,2));l.nextDone=s.listed.every(t=>e.has(t)||(l.cut[t]??0)>=2)}},m=async()=>{let a=await t.depsStep(Math.min(Date.now()+D.o,e.deadline),d?{marked:i,onlyMarked:!1,skip:l.repos}:{marked:i,onlyMarked:!0});for(let t of(a.problem&&e.errors.push(`security deps: ${a.problem}`),a.settled))p.depsDone.add(t);d&&(l.repos=F(l.repos,a.done),l.depsDone=a.complete)};try{l&&l.runs++,l?(f&&await m(),c&&await w()):(c&&await w(),f&&await m())}finally{let e=null;if(l)try{await t.writeSlot(l)}catch(t){e=t}try{let e=B(r,p);JSON.stringify(e)!==JSON.stringify(a)&&await t.write(e)}catch(t){e??=t}if(e)throw e}return{complete:!l||(l.nextDone||!n)&&(l.depsDone||!s)||l.runs>=20}}async function q(e,t,a=J){if(!e.length)return!1;let{state:r,changed:n}=C(R(await a.read()),e,t);return n&&await a.write(r),n}e.s(["m",0,q,"Y",0,e=>N(R(e)),"U",0,Y],655060)}]})();
|
|
8
|
-
|
|
9
|
-
//# sourceMappingURL=src_lib_1sdusf16f07x-._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[[358179,a=>{var b=a.i(666680);let c="aes-256-gcm";function d(a){let b=Buffer.from(a,"base64");if(32!==b.length)throw Error("Encryption key must be 32 bytes, base64-encoded.");return b}function e(a,e){let f=Buffer.from(a.ciphertext,"base64");if(f.length<16)throw Error("Stored credential is damaged.");let g=(0,b.createDecipheriv)(c,d(e),Buffer.from(a.iv,"base64"));return g.setAuthTag(f.subarray(f.length-16)),Buffer.concat([g.update(f.subarray(0,f.length-16)),g.final()]).toString("utf8")}a.s(["K",0,e,"V",0,function(a,b){try{return e(a,b)}catch{return null}},"l",0,function(a,e,f=1){let g=(0,b.randomBytes)(12),h=(0,b.createCipheriv)(c,d(e),g),i=Buffer.concat([h.update(a,"utf8"),h.final()]);return{ciphertext:Buffer.concat([i,h.getAuthTag()]).toString("base64"),iv:g.toString("base64"),keyVersion:f}}])},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"}}])},745614,a=>{let b="The demo is busy right now. Try again in a minute.",c="Too many new demo sessions from your network. Try again in a few minutes.",d=new Map([["watchbell-demo-busy",b],["watchbell-demo-too-many",c]]),e=new Map([...d].map(([a,b])=>[b,a]));a.s(["L",0,b,"_",0,c,"f",0,function(a){return Object.assign(Error(a),{digest:e.get(a)})},"E",0,function(a){for(let c=a,e=0;c&&e<5;c=c.cause,e++){var b;let a="string"==typeof(b=c.digest)?d.get(b)??null:null;if(a&&c instanceof Error&&c.message===a)return a}return null}])},19809,a=>{var b=a.i(371289);let c="Not available in the demo";a.s(["v",0,"This is the Watchbell demo, so no AI model was asked. In your own install, this answer comes from the AI provider you connect under AI Gateway.","Y",0,c,"r",0,"Simulated in the demo: nothing was sent to a provider.","h",0,function(a,d=process.env){return(0,b.W)(d)&&a instanceof Error&&a.message===c},"M",0,function(a,b=Math.random){return{ok:!0,statusCode:a,latencyMs:90+Math.round(260*b()),error:null}}])},753682,a=>{a.s(["f",0,function(a){return"aal2"===a.aal?"ok":a.hasVerifiedFactor?"challenge":"owner"===a.role||"operator"===a.role?"setup":"ok"}])}],300794,(a,b,c)=>{b.exports=a.x("node:dns/promises",()=>require("node:dns/promises"))},761095,(a,b,c)=>{b.exports=a.x("node:net",()=>require("node:net"))},685560,(a,b,c)=>{b.exports=a.x("node:tls",()=>require("node:tls"))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0nxyo70ahj7tk._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[689963,a=>{var b=a.i(954757);a.s(["z",0,b])},83931,a=>{var b=a.i(954757);a.s(["z",0,b])},149310,a=>{var b=a.i(954757);a.s(["z",0,b])},811365,a=>{var b=a.i(954757);a.s(["z",0,b])},133289,a=>{var b=a.i(245710);a.s(["e",0,"Demo · no live collector","m",0,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`}},"i",0,function(a,c,d){if(!a.finishedAt)return c.getTime()-a.startedAt.getTime()<12e4?{state:"build",text:"Running now"}:{state:"err",text:`Last run didn't finish (started ${(0,b.$)(a.startedAt,c)})`};let e=(0,b.$)(a.finishedAt,c);return!1===a.ok?{state:"warn",text:`Last run ${e} \xb7 finished with problems`}:c.getTime()-a.finishedAt.getTime()>=d?{state:"warn",text:`Last run ${e} \xb7 late`}:{state:"ok",text:`Last run ${e}`}}])},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"}}])},745614,a=>{let b="The demo is busy right now. Try again in a minute.",c="Too many new demo sessions from your network. Try again in a few minutes.",d=new Map([["watchbell-demo-busy",b],["watchbell-demo-too-many",c]]),e=new Map([...d].map(([a,b])=>[b,a]));a.s(["L",0,b,"_",0,c,"f",0,function(a){return Object.assign(Error(a),{digest:e.get(a)})},"E",0,function(a){for(let c=a,e=0;c&&e<5;c=c.cause,e++){var b;let a="string"==typeof(b=c.digest)?d.get(b)??null:null;if(a&&c instanceof Error&&c.message===a)return a}return null}])}]})();
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=_0uvkx5n0kf7r2._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[522368,a=>{var b=a.i(954757);a.s(["z",0,b])},264906,a=>{var b=a.i(530385),c=a.i(93321),d=a.i(351674),e=a.i(548734),f=a.i(837137),g=a.i(496843),h=a.i(910697);let i=d.B`coalesce(${f.events.lastAt}, ${f.events.at})`;async function j(a=h.O.events,d={}){return(await (0,e.f)().select({e:f.events,name:f.resources.name}).from(f.events).leftJoin(f.resources,(0,c.u)(f.resources.id,f.events.resourceId)).where(d.excludeActions?(0,c.c)(f.events.type,"action"):void 0).orderBy((0,b.A)(i)).limit(Math.max(1,Math.min(Number.isFinite(a)?Math.floor(a):h.O.events,h.O.events)))).map(({e:a,name:b})=>({id:a.id,at:a.at,lastAt:a.lastAt??null,count:a.count??1,reason:a.reason??null,type:a.type,kind:a.kind,message:a.message,detail:a.detail,resourceId:a.resourceId??null,resource:(0,g.L)({type:a.type,reason:a.reason??null,message:a.message,resource:b})}))}a.s(["f",0,j])},484458,a=>{var b=a.i(708636),c=a.i(434711);let d=async()=>({report:null,prefs:{disabled:[],defaultModel:null},allowed:c._}),e=async()=>null,f=async()=>(0,b.C)(null),g=async()=>({conns:[],summary:{listed:0,added:0,removed:0,returned:0,tested:0,ready:0},pending:!1});a.s(["T",0,"ag/","S",0,{modelSync:!1},"d",0,()=>null,"_",0,()=>[],"U",0,()=>!1,"y",0,d,"b",0,f,"V",0,e,"X",0,g])},434711,a=>{let b=["gemini","antigravity","@cf/google/gemma","claude"];function c(a,d=b){if(!a)return!1;let e=a.toLowerCase();return d.some(a=>a.length>0&&e.startsWith(a.toLowerCase()))}let d=/^[A-Za-z0-9@._:/+ ()[\]-]{1,120}$/,e=/^[a-z0-9@._:/+-]{1,120}$/;function f(a){if("string"!=typeof a)return null;let b=a.trim();if(!d.test(b))return null;let c=b.toLowerCase().replace(/[\s()[\]]+/g,"-").replace(/-{2,}/g,"-").replace(/^-+|-+$/g,"");return e.test(c)?c:null}function g(a){let b=a.trim();if(b.startsWith("@"))return b;let c=b.indexOf("/");return c<0?b:b.slice(c+1)}a.s(["_",0,b,"L",0,"ai.defaultModel","I",0,/^[a-z0-9@/._-]{1,80}$/,"e",0,e,"h",0,function(a,d=b){let e=f(a);return e&&c(g(e),d)?e:null},"S",0,c,"R",0,f,"M",0,g])},86657,a=>{var b=a.i(371289),c=a.i(363652),d=a.i(501634);let e={provider:async()=>{if((0,b.W)())return{name:"Demo",model:"demo"};try{let a=await (0,c.M)();return{name:a.conn.name,model:a.publicId}}catch{return null}},appSnapshot:d.w,advice:d.y,complete:c.X};a.s(["f",0,e])}]})();
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=_0zkmkbrbc96-h._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[689963,a=>{var b=a.i(954757);a.s(["z",0,b])},83931,a=>{var b=a.i(954757);a.s(["z",0,b])},149310,a=>{var b=a.i(954757);a.s(["z",0,b])},811365,a=>{var b=a.i(954757);a.s(["z",0,b])},133289,a=>{var b=a.i(245710);a.s(["e",0,"Demo · no live collector","m",0,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`}},"i",0,function(a,c,d){if(!a.finishedAt)return c.getTime()-a.startedAt.getTime()<12e4?{state:"build",text:"Running now"}:{state:"err",text:`Last run didn't finish (started ${(0,b.$)(a.startedAt,c)})`};let e=(0,b.$)(a.finishedAt,c);return!1===a.ok?{state:"warn",text:`Last run ${e} \xb7 finished with problems`}:c.getTime()-a.finishedAt.getTime()>=d?{state:"warn",text:`Last run ${e} \xb7 late`}:{state:"ok",text:`Last run ${e}`}}])},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"}}])}]})();
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=_1o94cw0ml7xu7._.js.map
|