watchbell 1.3.1 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/server/.next/BUILD_ID +1 -1
- package/server/.next/app-path-routes-manifest.json +3 -0
- package/server/.next/build-manifest.json +36 -3
- package/server/.next/prerender-manifest.json +3 -3
- package/server/.next/routes-manifest.json +18 -0
- package/server/.next/server/app/(console)/(private)/ai/agents/page/server-reference-manifest.json +13 -13
- package/server/.next/server/app/(console)/(private)/ai/agents/page.js +76 -68
- 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 +12 -12
- package/server/.next/server/app/(console)/(private)/ai/ask/page.js +76 -68
- 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 +11 -11
- package/server/.next/server/app/(console)/(private)/ai/connect/page.js +76 -68
- 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 +14 -14
- package/server/.next/server/app/(console)/(private)/ai/keys/page.js +76 -68
- 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 +12 -12
- package/server/.next/server/app/(console)/(private)/ai/logs/page.js +76 -68
- 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 +21 -21
- package/server/.next/server/app/(console)/(private)/ai/models/page.js +76 -68
- 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 +11 -11
- package/server/.next/server/app/(console)/(private)/ai/page.js +76 -68
- 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 +14 -14
- package/server/.next/server/app/(console)/(private)/ai/playground/page.js +76 -68
- 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 +17 -17
- package/server/.next/server/app/(console)/(private)/ai/providers/page.js +76 -68
- 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 +12 -12
- package/server/.next/server/app/(console)/(private)/ai/quota/page.js +76 -68
- 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 +12 -12
- package/server/.next/server/app/(console)/(private)/ai/usage/page.js +76 -68
- 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 +11 -11
- package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js +76 -68
- 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 +12 -12
- package/server/.next/server/app/(console)/(private)/auto-actions/page.js +76 -68
- 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 +27 -27
- package/server/.next/server/app/(console)/alerts/page.js +76 -68
- 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 +92 -62
- package/server/.next/server/app/(console)/apps/[id]/page.js +78 -70
- 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 +14 -14
- package/server/.next/server/app/(console)/apps/page.js +78 -70
- 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 +14 -14
- package/server/.next/server/app/(console)/backups/page.js +76 -68
- 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 +11 -11
- package/server/.next/server/app/(console)/catalog/page.js +76 -68
- 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 +22 -22
- package/server/.next/server/app/(console)/connections/page.js +76 -68
- 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)/containers/page/app-paths-manifest.json +3 -0
- package/server/.next/server/app/(console)/containers/page/build-manifest.json +22 -0
- package/server/.next/server/app/(console)/containers/page/next-font-manifest.json +11 -0
- package/server/.next/server/app/(console)/containers/page/react-loadable-manifest.json +1 -0
- package/server/.next/server/app/(console)/containers/page/server-reference-manifest.json +145 -0
- package/server/.next/server/app/(console)/containers/page.js +121 -0
- package/server/.next/server/app/(console)/containers/page.js.nft.json +1 -0
- package/server/.next/server/app/(console)/containers/page_client-reference-manifest.js +3 -0
- package/server/.next/server/app/(console)/d1/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/d1/page.js +76 -68
- 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)/deploy/page/app-paths-manifest.json +3 -0
- package/server/.next/server/app/(console)/deploy/page/build-manifest.json +22 -0
- package/server/.next/server/app/(console)/deploy/page/next-font-manifest.json +11 -0
- package/server/.next/server/app/(console)/deploy/page/react-loadable-manifest.json +1 -0
- package/server/.next/server/app/(console)/deploy/page/server-reference-manifest.json +115 -0
- package/server/.next/server/app/(console)/deploy/page.js +122 -0
- package/server/.next/server/app/(console)/deploy/page.js.nft.json +1 -0
- package/server/.next/server/app/(console)/deploy/page_client-reference-manifest.js +3 -0
- package/server/.next/server/app/(console)/deployments/page/server-reference-manifest.json +19 -19
- package/server/.next/server/app/(console)/deployments/page.js +76 -68
- 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 +18 -18
- package/server/.next/server/app/(console)/dns/page.js +76 -68
- 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 +13 -13
- package/server/.next/server/app/(console)/domains/page.js +76 -68
- 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 +11 -11
- package/server/.next/server/app/(console)/events/page.js +76 -68
- 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 +18 -18
- package/server/.next/server/app/(console)/firebase/page.js +76 -68
- 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 +12 -12
- package/server/.next/server/app/(console)/logs/page.js +76 -68
- 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 +12 -12
- package/server/.next/server/app/(console)/manage/sections/page.js +76 -68
- 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 +22 -22
- package/server/.next/server/app/(console)/neon/page.js +76 -68
- 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)/os/page/app-paths-manifest.json +3 -0
- package/server/.next/server/app/(console)/os/page/build-manifest.json +22 -0
- package/server/.next/server/app/(console)/os/page/next-font-manifest.json +11 -0
- package/server/.next/server/app/(console)/os/page/react-loadable-manifest.json +1 -0
- package/server/.next/server/app/(console)/os/page/server-reference-manifest.json +125 -0
- package/server/.next/server/app/(console)/os/page.js +120 -0
- package/server/.next/server/app/(console)/os/page.js.nft.json +1 -0
- package/server/.next/server/app/(console)/os/page_client-reference-manifest.js +3 -0
- package/server/.next/server/app/(console)/overview/page/server-reference-manifest.json +19 -19
- package/server/.next/server/app/(console)/overview/page.js +77 -69
- 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 +12 -12
- package/server/.next/server/app/(console)/repos/[id]/page.js +80 -72
- 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 +11 -11
- package/server/.next/server/app/(console)/repos/page.js +81 -72
- 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 +21 -21
- package/server/.next/server/app/(console)/settings/page.js +76 -68
- 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 +18 -18
- package/server/.next/server/app/(console)/sql/page.js +76 -68
- 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 +11 -11
- package/server/.next/server/app/(console)/status/page.js +76 -68
- 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 +30 -30
- package/server/.next/server/app/(console)/supabase/page.js +81 -72
- 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 +11 -11
- package/server/.next/server/app/(console)/topology/page.js +76 -68
- 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 +11 -11
- package/server/.next/server/app/(console)/turso/page.js +76 -68
- 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 +11 -11
- package/server/.next/server/app/(console)/upstash/page.js +76 -68
- 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 +25 -25
- package/server/.next/server/app/(console)/uptime/page.js +76 -68
- 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 +16 -16
- package/server/.next/server/app/(console)/welcome/page.js +76 -68
- 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 +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 +3 -3
- package/server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
- package/server/.next/server/app/_global-error.segments/_full.segment.rsc +3 -3
- package/server/.next/server/app/_global-error.segments/_tree.segment.rsc +2 -2
- 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 +4 -4
- package/server/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
- package/server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
- package/server/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- 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 +8 -8
- package/server/.next/server/app/api/collect/route.js +59 -52
- 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 +8 -8
- package/server/.next/server/app/api/daily/route.js +59 -52
- package/server/.next/server/app/api/daily/route.js.nft.json +1 -1
- package/server/.next/server/app/api/health/route.js.nft.json +1 -1
- package/server/.next/server/app/api/ping/[...parts]/route.js.nft.json +1 -1
- 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 +8 -8
- package/server/.next/server/app/api/telegram/webhook/route.js +59 -52
- package/server/.next/server/app/api/telegram/webhook/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/[[...rest]]/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/advice/route.js +14 -14
- package/server/.next/server/app/api/v1/advice/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/ai/chat/completions/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/ai/models/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/ai/questions/[id]/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/ai/questions/route.js +10 -10
- 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 +25 -24
- package/server/.next/server/app/api/v1/mcp/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/me/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/openapi.json/route.js.nft.json +1 -1
- package/server/.next/server/app/api/v1/status/apps/[app]/route.js +13 -13
- 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 +13 -13
- package/server/.next/server/app/api/v1/status/route.js.nft.json +1 -1
- package/server/.next/server/app/api/watchdog/route.js +11 -12
- package/server/.next/server/app/api/watchdog/route.js.nft.json +1 -1
- package/server/.next/server/app/auth/confirm/route.js.nft.json +1 -1
- package/server/.next/server/app/auth/google/callback/route.js.nft.json +1 -1
- package/server/.next/server/app/auth/google/create/callback/route.js.nft.json +1 -1
- package/server/.next/server/app/auth/not-member/route.js.nft.json +1 -1
- package/server/.next/server/app/auth/session-ended/route.js.nft.json +1 -1
- package/server/.next/server/app/icon.svg/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 +35 -30
- 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 +35 -30
- 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]/badge/[file]/route.js.nft.json +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 +1 -1
- 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 +35 -30
- 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/app-paths-manifest.json +3 -0
- package/server/.next/server/chunks/{[externals]__1-y7b_mfadqi-._.js → [externals]__0n4j2emxdv20_._.js} +1 -1
- package/server/.next/server/chunks/{[externals]__1b3dgyi9diwhy._.js → [externals]__1hwo1oo04do39._.js} +1 -1
- package/server/.next/server/chunks/{[externals]__1dd9hhrnxhegy._.js → [externals]__1k12utcf9tvqg._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__040a3il587nja._.js → [root-of-the-server]__0016p4j5uh74t._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__08i6b8tzxads4._.js → [root-of-the-server]__00oxbw3nfl_kd._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__01dj-ln12bcmb._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__02v25dn1cwxz6._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0qme276hvajvy._.js → [root-of-the-server]__02y9yjf7lp37-._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__03276vwi4jgvk._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1jjusd74y8gd5._.js → [root-of-the-server]__03589rgm1a3ks._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__04u9e45_g1jdi._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0-zrmrb4499ay._.js → [root-of-the-server]__04v42ls1mfjd2._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0sp5xoed3-994._.js → [root-of-the-server]__05b18nw2k-7-4._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__05qcc-0e8z1u8._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__01hgqxx2a0okv._.js → [root-of-the-server]__06kp2_zqpttyd._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__04ogdmf82__0g._.js → [root-of-the-server]__06l038ifglbqy._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1etpd6q60ypcc._.js → [root-of-the-server]__06nrq_1pbp3z-._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0i3h5covkd6_t._.js → [root-of-the-server]__06zmu7jjyw1qw._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__07eo--c90cju2._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0sq7jwlhv9n79._.js → [root-of-the-server]__081hh3_un4awi._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1vvg0ur3_7o0p._.js → [root-of-the-server]__090n04cg_br7j._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0lht1cr4aiudu._.js → [root-of-the-server]__09gla7jgbw2bs._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0cmp5mwchd8sn._.js → [root-of-the-server]__09l9icaspfmoh._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0m_nqt44ioex_._.js → [root-of-the-server]__09msxcjw3tlue._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1smidspfoqz48._.js → [root-of-the-server]__09yvavo991rdd._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0ox91q3i5u6fl._.js → [root-of-the-server]__0_vtp19_2frgj._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0a0st8-rftztn._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__04iumkvxok49x._.js → [root-of-the-server]__0a7moaa91ctod._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__17dr2z1o1hsvk._.js → [root-of-the-server]__0ao4b2jjkcvo1._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__04htuwoulmp21._.js → [root-of-the-server]__0at6fxe9efr-x._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0erdelc9_06nk._.js → [root-of-the-server]__0c_mpay_m5kbm._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__02h-ec_gusm_2._.js → [root-of-the-server]__0di45l_tnq1pm._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__0ebkmgcs7v0c8._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__19k0l-ubyp1j_._.js → [root-of-the-server]__0ej4hdoyogtji._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1etg41llk7f09._.js → [root-of-the-server]__0eqrtvr3uqlqf._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1x7en4waq21dd._.js → [root-of-the-server]__0exruft64u1hg._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0ubalx5w0ds9m._.js → [root-of-the-server]__0fii83nfm0bsk._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1d1u-wejsfl84._.js → [root-of-the-server]__0g0rd65zoitrb._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0fmt9z8-xukob._.js → [root-of-the-server]__0g3v-ty9-xstp._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0g81f_2ecmg8a._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0gb4uz-gv3va0._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0glhrm7zmrvi2._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0gqye-fi-f3zk._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1jsf0jf_ljpsm._.js → [root-of-the-server]__0jma907r441wi._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1j527a18gh10b._.js → [root-of-the-server]__0jpktq0f88rvz._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__0kk-m8_ul4f4k._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0lco43i5w25zg._.js → [root-of-the-server]__0myf9g_uv3bia._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__0o6q27cnw6-77._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1xnqsy7nud--q._.js → [root-of-the-server]__0pi_camvun8ak._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0mrbo2p5fy4ji._.js → [root-of-the-server]__0puji-hw0xtk7._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1kr6f03r82mk6._.js → [root-of-the-server]__0qlf-so9k6401._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0iicsi0n7tfa5._.js → [root-of-the-server]__0r0zrp3s_n614._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0zwr7fll4dm9q._.js → [root-of-the-server]__0s3b61ttgb9if._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__1_df6aphi-pfk._.js → [root-of-the-server]__0t0dd5t5rch1i._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__11a8fxlpahjy2._.js → [root-of-the-server]__0tshehtsx7229._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0ty2qkszfdr5t._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0ugx1i8km15fl._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0c2heh-0pjyob._.js → [root-of-the-server]__0uyc9w7f_r10u._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0uz_r72zdnwdd._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__130_vkgsongq_._.js → [root-of-the-server]__0vb1_m_h5hi0z._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0x929r1phz1oi._.js → [root-of-the-server]__0vclan952l_ty._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__0vp-x4ifpr3p9._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1wjsjh-1i-sn6._.js → [root-of-the-server]__0vsafetdvsfhj._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0db2p-om-b_4s._.js → [root-of-the-server]__0ww7a-9fnx2rv._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0x5vp_8n6xvpw._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0yhki59n8zyjb._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__20sp5m_w5iklm._.js → [root-of-the-server]__10-v22hv1sxrv._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0jswmvddgl3sb._.js → [root-of-the-server]__10d4a34z0js-f._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0zkeao78mms1_._.js → [root-of-the-server]__10ts7p_9fu3ge._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__14jw0y_hj7jmw._.js → [root-of-the-server]__12tmfv427e9cb._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1426to_m4prqh._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1481y3utu_a_o._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__14e0j38785glf._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1-2ckgdamg0-j._.js → [root-of-the-server]__14yq_wf4xemgd._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__177l2p7kcj-16._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0-94urkhm871c._.js → [root-of-the-server]__192br5y94wzhx._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__19jalyhtntk8p._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0fc4c9-xzmkol._.js → [root-of-the-server]__19o-a03uklyrw._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__1rpgddeg42i-q._.js → [root-of-the-server]__1_0vd5-tvmsg8._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0w07p3ypro834._.js → [root-of-the-server]__1_goy0uhapvk9._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1ac-dzt5bffr2._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1bjvjngj7lvqi._.js → [root-of-the-server]__1ajyr5xvo1-x5._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0-ytbad9hn7uc._.js → [root-of-the-server]__1avuwg9wmyh48._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1c78cu7kb9vkl._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1ey2qia7rofoc._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__161v5qfd5qk2p._.js → [root-of-the-server]__1ghx3ayy7tm73._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0xfgfo-ks4_e8._.js → [root-of-the-server]__1hlvqq0azku2x._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0zs-wkvv1cs0i._.js → [root-of-the-server]__1hrcyozojb6ot._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1hrviq7s700td._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__212_l7y-180xi._.js → [root-of-the-server]__1i841w7a3057h._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1ifov-udw6__d._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__10negjjz5k5bz._.js → [root-of-the-server]__1ig0p-frprcbm._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1io5zo7iam532._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0c9y_zg74k4oe._.js → [root-of-the-server]__1iruoalu93dg7._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1ksyvvsf32jfg._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1kzi1du1sliqb._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__15vqo7amys573._.js → [root-of-the-server]__1mbm_bvk1oat7._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1mvibnqor6lx_._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0ct18spdi1leu._.js → [root-of-the-server]__1ons16gam6qb7._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1ozfk4_3lx1o7._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1po33h2u2o4e_._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1qps9ushddgwe._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0so_ihc-5tp14._.js → [root-of-the-server]__1qyz1wi13rxxb._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0nkfi6x2c4c5p._.js → [root-of-the-server]__1r2ei065xk141._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0dltcr407-ow6._.js → [root-of-the-server]__1r8mzvf7_9d2k._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1rxke2_vpd7np._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1sjp750034q4j._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1tefe1f5835t_._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0a5t6bkr3-uqw._.js → [root-of-the-server]__1tlivd99uri0t._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__217jp1b3psyq_._.js → [root-of-the-server]__1vfvw1pmssxww._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1g6xpr_typmce._.js → [root-of-the-server]__1wbnule0tzwdu._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__0zu1odpvrptrt._.js → [root-of-the-server]__1wcnj2xtesyd9._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1cpee8xi1ig3-._.js → [root-of-the-server]__1won_frdj9jms._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1wvp6wau5ueb9._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0bvdnvpw43au9._.js → [root-of-the-server]__1y9gsf61fh1fv._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1yxudc_keazqo._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1pyhos8be90-4._.js → [root-of-the-server]__1yxxfmyk3649a._.js} +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1t87mhqedigsz._.js → [root-of-the-server]__1z1fgf8k8icw8._.js} +2 -2
- package/server/.next/server/chunks/{[root-of-the-server]__1d4wmw2wohveb._.js → [root-of-the-server]__1z_l9mj3s_6tu._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1zvy7u_y3fzbz._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0xd_bgjy5_tr5._.js → [root-of-the-server]__20056vw370xom._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__205cmd-k6g2kc._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__20dehd8e5-v9y._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__1sm4p209f_yie._.js → [root-of-the-server]__20qdu-env7wgt._.js} +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__20qirklw1sgj0._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0inf2zuuqjrq6._.js → [root-of-the-server]__212-4r-w6a9sm._.js} +2 -2
- package/server/.next/server/chunks/_0-5pjvqu672_v._.js +49 -0
- package/server/.next/server/chunks/_02qrz1g8sdvhe._.js +49 -0
- package/server/.next/server/chunks/_03qlijpos6a21._.js +1 -1
- package/server/.next/server/chunks/_05hhw0eql5-dv._.js +2 -2
- package/server/.next/server/chunks/_06gv0srpbf_lk._.js +1 -1
- package/server/.next/server/chunks/_06lf75x-xhl7v._.js +1 -1
- package/server/.next/server/chunks/{_0-ub844lc_z_a._.js → _0ehqx1pkh20px._.js} +3 -3
- package/server/.next/server/chunks/{_08z7lmk32r__5._.js → _0jiq3ns7681pv._.js} +3 -3
- package/server/.next/server/chunks/_0n-wbmmvp4omq._.js +1 -1
- package/server/.next/server/chunks/_0sy878k2ywjbq._.js +1 -1
- package/server/.next/server/chunks/_0vgplianlrk3e._.js +3 -0
- package/server/.next/server/chunks/_1_son1yzo5xvl._.js +1 -1
- package/server/.next/server/chunks/_1ap0upnvy5i_1._.js +49 -0
- package/server/.next/server/chunks/_1b-88djuoexz1._.js +49 -0
- package/server/.next/server/chunks/{_0-jfehdfklu-i._.js → _1k3v1-vgvzm_o._.js} +2 -2
- package/server/.next/server/chunks/_1l-68brbq289m._.js +2 -2
- package/server/.next/server/chunks/{_1-pv4d4qhe7to._.js → _1t46m15axa4b4._.js} +3 -3
- package/server/.next/server/chunks/node_modules_drizzle-orm_entity_1-0q2stnw2ab8.js +3 -3
- package/server/.next/server/chunks/{_0op74d4yyc3ma._.js → node_modules_next_1mwxx95m7177g._.js} +3 -3
- package/server/.next/server/chunks/src_0--qn984h6czu._.js +1 -1
- package/server/.next/server/chunks/{src_2108_me3q06ih._.js → src_05be6wzefzaky._.js} +2 -2
- package/server/.next/server/chunks/src_05jrvcsgaq5ek._.js +1 -1
- package/server/.next/server/chunks/src_063xvouojxyoa._.js +1 -1
- package/server/.next/server/chunks/src_06tyytf_c_hlu._.js +1 -1
- package/server/.next/server/chunks/src_088gmyaew7ds0._.js +1 -1
- package/server/.next/server/chunks/src_08fq45_-8xq5o._.js +1 -1
- package/server/.next/server/chunks/src_0_9n02bmhtk4z._.js +1 -1
- package/server/.next/server/chunks/src_0c-owt8q0lyj3._.js +1 -1
- package/server/.next/server/chunks/{src_0j8daco-75zka._.js → src_0cdn5fuk8f_x2._.js} +2 -2
- package/server/.next/server/chunks/src_0dxbyz8iemj_5._.js +1 -1
- package/server/.next/server/chunks/src_0hx0sol2clocu._.js +1 -1
- package/server/.next/server/chunks/{src_1lvv9wiag2d8-._.js → src_0j84o_hkkaeg-._.js} +2 -2
- package/server/.next/server/chunks/src_0u2zbz77uh__q._.js +1 -1
- package/server/.next/server/chunks/src_0ud2mqnh4emxz._.js +1 -1
- package/server/.next/server/chunks/src_0y_4gogmeu-2k._.js +1 -1
- package/server/.next/server/chunks/src_10vyvp9vy_69h._.js +1 -1
- package/server/.next/server/chunks/src_13n1vi7uew4iu._.js +1 -1
- package/server/.next/server/chunks/src_1_fnzi0em_6er._.js +3 -0
- package/server/.next/server/chunks/src_1a5yibsjcy1ga._.js +1 -1
- package/server/.next/server/chunks/src_1bqzr81r3wkvi._.js +1 -1
- package/server/.next/server/chunks/src_1cvp6ubs-3z6l._.js +1 -1
- package/server/.next/server/chunks/src_1il7wg_qjxny7._.js +1 -1
- package/server/.next/server/chunks/src_1ntwbcb1cl-y9._.js +1 -1
- package/server/.next/server/chunks/src_1tux0n9_5b1kr._.js +5 -5
- package/server/.next/server/chunks/src_1u-olt84z63rx._.js +1 -1
- package/server/.next/server/chunks/src_1wduh0eckiwl1._.js +1 -1
- package/server/.next/server/chunks/src_1wmb2yl3tn-dd._.js +1 -1
- package/server/.next/server/chunks/src_1wzm081p6qyre._.js +5 -5
- package/server/.next/server/chunks/src_lib_00ixpbvymlbo_._.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_0j2ifdk5byg1t._.js +3 -0
- package/server/.next/server/chunks/src_lib_0ma36vqcze7a9._.js +7 -0
- package/server/.next/server/chunks/src_lib_0ps7mu81f-6s1._.js +7 -0
- package/server/.next/server/chunks/src_lib_0ta8sd9jeuw50._.js +10 -10
- package/server/.next/server/chunks/src_lib_14grv5a5_n9o0._.js +7 -0
- package/server/.next/server/chunks/src_lib_1en6omqx66g9d._.js +10 -10
- package/server/.next/server/chunks/src_lib_1iuuekw6uwbbr._.js +3 -0
- package/server/.next/server/chunks/src_lib_1qo6t00wwitz6._.js +10 -10
- package/server/.next/server/chunks/src_lib_1znb-e7g8dkgc._.js +7 -0
- package/server/.next/server/chunks/src_lib_alerts_catalog_ts_1ndg28acul64q._.js +1 -1
- package/server/.next/server/chunks/src_lib_collector_auth_ts_0lqx92__e4zij._.js +3 -3
- package/server/.next/server/chunks/src_lib_collector_runners_ts_12z4gtgikss74._.js +6 -6
- package/server/.next/server/chunks/src_lib_data_cached_ts_017to1fh48jms._.js +3 -0
- package/server/.next/server/chunks/src_lib_data_databases-db_ts_04a4hj5j7h8m0._.js +3 -0
- package/server/.next/server/chunks/src_lib_data_os-scan-db_ts_0g2a3ofkaxf40._.js +4 -0
- package/server/.next/server/chunks/src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js +4 -4
- package/server/.next/server/chunks/src_lib_databases_snapshot-data_ts_1xilv6_re7hcp._.js +3 -0
- package/server/.next/server/chunks/src_lib_demo_pool_ts_0fpn8acsdk64i._.js +5 -5
- package/server/.next/server/chunks/src_lib_demo_pool_ts_14rjvkgozh1d4._.js +10 -10
- package/server/.next/server/chunks/src_lib_demo_pool_ts_17xz9bk-d5uic._.js +12 -12
- package/server/.next/server/chunks/src_lib_demo_pool_ts_210g_on8zx_-n._.js +10 -10
- package/server/.next/server/chunks/src_lib_deps_branch_ts_06dz9-7a66n24._.js +3 -0
- package/server/.next/server/chunks/src_lib_deps_osv_ts_0c-lbj4hsmojx._.js +3 -0
- package/server/.next/server/chunks/src_lib_deps_plan_ts_0bctf8v4qttk5._.js +1 -1
- package/server/.next/server/chunks/src_lib_notify_lang_ts_1r2w02ctaky7e._.js +1 -1
- package/server/.next/server/chunks/src_lib_sections_ts_0r8u4nvlpdkgq._.js +1 -1
- package/server/.next/server/chunks/src_lib_view_security_ts_1_c7vkcsp6y27._.js +3 -0
- package/server/.next/server/chunks/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_agents_page_actions_21atz5tidps07.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_models_page_actions_0rvlzfa8rjyz_.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_playground_page_actions_01ejc1xilpuh4.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_quota_page_actions_0iki29gyi8cwa.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_usage_page_actions_1c99h-kwdnep7.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_auto-actions_page_actions_1kw4ce6-efkr1.js +1 -1
- package/server/.next/server/chunks/ssr/1q96_modules_@tabler_icons-react_dist_esm_icons_IconExternalLink_mjs_19uzq2wmxdb36._.js +3 -0
- package/server/.next/server/chunks/ssr/{[externals]__1rj83sktdlxvt._.js → [externals]__00hge8tjqv73a._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[externals]__1s7xw086rvse0._.js → [externals]__0summv9f9jkob._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[externals]__20leqouf6m6f3._.js → [externals]__1jdljyrzmqoz0._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[externals]__02s9k1gg9qqkm._.js → [externals]__1q1drb4oske-9._.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]__07k_84t5-d55n._.js → [root-of-the-server]__02lkybw6gg3ln._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__02s29zgn7lrps._.js +3 -0
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1e9tlsk1gl8lw._.js → [root-of-the-server]__03xevz8n-mc20._.js} +3 -3
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__077-acap7g4ck._.js → [root-of-the-server]__0423qjo9c2t9-._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0nrc_8-wrhf3y._.js → [root-of-the-server]__04p9ipxxdhqfn._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0ct4apye0sfmc._.js → [root-of-the-server]__05s2n35zn4go-._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0fd39clnjw9fb._.js → [root-of-the-server]__06bgklzuef-ya._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1itgt83qo1e77._.js → [root-of-the-server]__07_efq7yhxfj-._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0q7rssq_3unbc._.js → [root-of-the-server]__07zuxj3veqm14._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1qrk2rfmx21b_._.js → [root-of-the-server]__092gsphy4oz6k._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__09blzlbsxqvy9._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0_-fz8cunfpwp._.js +3 -0
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0de1senl_kfo5._.js +3 -0
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0ee5ew5q3jh8i._.js → [root-of-the-server]__0gyvfp6c-_edw._.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]__0mvauw9r_4qss._.js +4 -0
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__04_prmhm_cts4._.js → [root-of-the-server]__0n4bkq-45z4aa._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0e1s_5gg-u3iu._.js → [root-of-the-server]__0no6c0whevi73._.js} +1 -1
- 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]__0y2s_4828a5u9._.js +3 -0
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0p86d9imejczs._.js → [root-of-the-server]__0z5ucbis8ik32._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0uxychcp_pldy._.js → [root-of-the-server]__10r0u-q18z71i._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__004q78ed0nf0_._.js → [root-of-the-server]__12t9_ndr9z-2d._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0hgf7si8htevx._.js → [root-of-the-server]__139ya3ejh6htx._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0-zqh1gf4dsj3._.js → [root-of-the-server]__13phmsw9wsyrs._.js} +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__14e0j38785glf._.js +3 -0
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__080do5vfu69n5._.js → [root-of-the-server]__157kjredkf1pa._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__09j1po2u91fp3._.js → [root-of-the-server]__16jfs8j29r4b5._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0skfdezx5rxie._.js → [root-of-the-server]__183_36tj3p645._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1sw2q1p1t59y8._.js → [root-of-the-server]__18gw74mr2vto3._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__19twn3g5nv5q1._.js +3 -0
- package/server/.next/server/chunks/ssr/[root-of-the-server]__19wvac83zh5-9._.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]__0h9rpg5-lhp5q._.js → [root-of-the-server]__1a5760tg4iits._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0b3g72j9cu141._.js → [root-of-the-server]__1d1ksu1dlha3r._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1y7nfsglxx7cn._.js → [root-of-the-server]__1iqedr7nfvayk._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__11paa809_igt_._.js → [root-of-the-server]__1knbzqo0nba_q._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__05_98ql5tgeii._.js → [root-of-the-server]__1m38od9tgaroe._.js} +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__0ed6qo3lg9_f9._.js → [root-of-the-server]__1mah0p09qrkpu._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1v3b498_j-68t._.js → [root-of-the-server]__1mxpszbk1aup8._.js} +3 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1u_13nhw3kuz3._.js +1 -1
- package/server/.next/server/chunks/ssr/_008i8a0_8skrp._.js +3 -0
- package/server/.next/server/chunks/ssr/{_0azq3ml4gbn1d._.js → _01n29sxn-py3x._.js} +2 -2
- package/server/.next/server/chunks/ssr/_02eudwc8ieb2r._.js +2 -2
- package/server/.next/server/chunks/ssr/_03d3sxmob-gr7._.js +3 -0
- package/server/.next/server/chunks/ssr/{_1wfjx67s3e6ws._.js → _04mnjz5cekpue._.js} +1 -1
- package/server/.next/server/chunks/ssr/_08rjac8cutbcs._.js +3 -0
- package/server/.next/server/chunks/ssr/_08xqk3eibu5aw._.js +1 -1
- 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/{_1ah_xx0-cty-v._.js → _0aznz0i-8olet._.js} +1 -1
- package/server/.next/server/chunks/ssr/_0bd4cxnpnnq2u._.js +1 -1
- package/server/.next/server/chunks/ssr/_0cbbks0ms7i_u._.js +2 -2
- package/server/.next/server/chunks/ssr/_0cw4kz3d6kmb1._.js +1 -1
- package/server/.next/server/chunks/ssr/_0d2d527wcx-lf._.js +2 -2
- package/server/.next/server/chunks/ssr/_0d702k82llasi._.js +1 -1
- package/server/.next/server/chunks/ssr/_0dvz4dndt6lkf._.js +1 -1
- package/server/.next/server/chunks/ssr/_0eu69r0sm274b._.js +3 -0
- package/server/.next/server/chunks/ssr/_0gl-ewvbhb677._.js +2 -2
- package/server/.next/server/chunks/ssr/_0gmw45sb1llld._.js +1 -1
- package/server/.next/server/chunks/ssr/_0i04zoixa2iup._.js +2 -2
- package/server/.next/server/chunks/ssr/_0iaoiq9xbkdma._.js +3 -0
- package/server/.next/server/chunks/ssr/_0idbg-ok0so2h._.js +2 -2
- package/server/.next/server/chunks/ssr/_0iy27gi4y9-fe._.js +1 -1
- package/server/.next/server/chunks/ssr/_0k2qpgzlqzc_p._.js +1 -1
- package/server/.next/server/chunks/ssr/_0kdn56_ow-x_s._.js +1 -1
- package/server/.next/server/chunks/ssr/_0lb1euzjakqbr._.js +3 -0
- package/server/.next/server/chunks/ssr/{_0_vfnz8i8hac7._.js → _0mhwgy5lvtng0._.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/_0tnd528j0i1i4._.js +2 -2
- package/server/.next/server/chunks/ssr/{_1vjm7-shohnh7._.js → _0u5_d3o0i72tq._.js} +2 -2
- package/server/.next/server/chunks/ssr/_0uwkwcgucqgcf._.js +2 -2
- package/server/.next/server/chunks/ssr/_0uz60lk-7e_cj._.js +4 -0
- package/server/.next/server/chunks/ssr/_0vgplianlrk3e._.js +3 -0
- package/server/.next/server/chunks/ssr/_0wo-lpqf7hr1y._.js +2 -2
- package/server/.next/server/chunks/ssr/_0xmud7u5hdnqu._.js +2 -2
- package/server/.next/server/chunks/ssr/_0zkmkbrbc96-h._.js +3 -0
- package/server/.next/server/chunks/ssr/_1-4401bfn50mf._.js +1 -1
- 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/{_1xokm14jd0teg._.js → _113tc44xki0cp._.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/{_0y5ov4kk2q81r._.js → _13bpjk3g0tp2e._.js} +2 -2
- package/server/.next/server/chunks/ssr/_16vvfyez78u5k._.js +3 -0
- package/server/.next/server/chunks/ssr/{_0tu64jsmbyx4_._.js → _17tabyg0mhxlx._.js} +2 -2
- package/server/.next/server/chunks/ssr/_19-3vzkc6rk97._.js +1 -1
- package/server/.next/server/chunks/ssr/_19-n2kl-knt0j._.js +3 -0
- package/server/.next/server/chunks/ssr/_1_-o2s48aj4i7._.js +1 -1
- package/server/.next/server/chunks/ssr/_1c7jkkvkvzj_u._.js +2 -2
- package/server/.next/server/chunks/ssr/_1cl55h_h3q-b_._.js +1 -1
- package/server/.next/server/chunks/ssr/_1d0anr0hjs5k5._.js +3 -0
- 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/_1i96si4hzn74p._.js +1 -1
- 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/_1lgb0h9z-8z15._.js +3 -0
- 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/_1q3fi6a4gklq6._.js +3 -0
- package/server/.next/server/chunks/ssr/_1qsshadaq_-6p._.js +3 -0
- package/server/.next/server/chunks/ssr/_1ul3og9l7vp32._.js +4 -0
- package/server/.next/server/chunks/ssr/{_1nzncndn-1ggb._.js → _1xbmdurub1ykt._.js} +1 -1
- package/server/.next/server/chunks/ssr/_1yh3k88t_kh4h._.js +2 -2
- package/server/.next/server/chunks/ssr/{_10oqiz6hmf92q._.js → _1ykegy3wzl3mu._.js} +2 -2
- package/server/.next/server/chunks/ssr/_1z6dy1k48mskn._.js +1 -1
- package/server/.next/server/chunks/ssr/{_1_ct-7kmkfab1._.js → _1znzrmlfouh6k._.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_1myo_rodrlg3a.js +4 -0
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_page_actions_0ksau5eicvycc.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_1fgolmmpxrouc.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_containers_page_actions_1ainjsbrnl360.js +3 -0
- 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/{node_modules_@tabler_icons-react_dist_esm_icons_0904ro5eqxhlr._.js → node_modules_@tabler_icons-react_dist_esm_icons_0b7guexr5je6g._.js} +1 -1
- package/server/.next/server/chunks/ssr/{node_modules_@tabler_icons-react_dist_esm_icons_07e6iv4064369._.js → node_modules_@tabler_icons-react_dist_esm_icons_0ej-u2f-ha9q0._.js} +1 -1
- package/server/.next/server/chunks/ssr/{node_modules_@tabler_icons-react_dist_esm_icons_1uzp0vue7-c9z._.js → node_modules_@tabler_icons-react_dist_esm_icons_1nstb42fu_h0p._.js} +1 -1
- package/server/.next/server/chunks/ssr/node_modules_class-variance-authority_dist_index_mjs_0wl3fjdt40o5n._.js +3 -0
- package/server/.next/server/chunks/ssr/{_1b4uqc9fwt4dy._.js → node_modules_next_1mwxx95m7177g._.js} +2 -2
- package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0hrjtaoa__ix8.js +3 -0
- package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0slepiv25mpch.js +3 -0
- package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1oqgmgc8y6yxj.js +3 -0
- package/server/.next/server/chunks/ssr/src_0330uf9pdfco9._.js +1 -1
- package/server/.next/server/chunks/ssr/src_05mcsr-od-9ug._.js +3 -0
- package/server/.next/server/chunks/ssr/src_0632mrev4i__u._.js +3 -0
- package/server/.next/server/chunks/ssr/src_06tjy8wljego8._.js +1 -1
- package/server/.next/server/chunks/ssr/src_084tdkx3c_yqi._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0abts6wp5ucc0._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0c62tj2aysn_e._.js +3 -0
- package/server/.next/server/chunks/ssr/src_0etvjdinp5urq._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0k2rwfjheyrf7._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0ovx2ogvlz2eh._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0ph020gy78gi9._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0uitfl3c1mdqb._.js +2 -2
- package/server/.next/server/chunks/ssr/src_10zavgy86u3us._.js +1 -1
- package/server/.next/server/chunks/ssr/src_13u1vu8hwwr6n._.js +3 -0
- package/server/.next/server/chunks/ssr/src_14bxi75kwc3xt._.js +3 -0
- package/server/.next/server/chunks/ssr/src_15mtytgydjtio._.js +3 -0
- package/server/.next/server/chunks/ssr/{src_14ulgwoxoyfkq._.js → src_1_9q6-wstn038._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_1emolu5lrse98._.js +6 -0
- package/server/.next/server/chunks/ssr/src_1maoe8g5gnv0u._.js +3 -3
- package/server/.next/server/chunks/ssr/src_1ntwbcb1cl-y9._.js +1 -1
- 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)_0_odx13qcz9o1._.js +3 -0
- package/server/.next/server/chunks/ssr/{src_app_(console)_0-vcbt2icvguc._.js → src_app_(console)_0gw9o1og9hq_4._.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]_08in-j3xp5mbn._.js +3 -0
- package/server/.next/server/chunks/ssr/src_app_(console)_backups_actions_ts_1vpytsdh0wc1f._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_backups_drive-buttons_tsx_00cku5r_z3jkg._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fahc65-97qla._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fmp_anbkapur._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_connections_actions_ts_103blv4gzq76z._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_containers_containers-view_tsx_1xkcrw5gx53xo._.js +3 -0
- 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)_deploy_0zeo9k66pzhae._.js +3 -0
- package/server/.next/server/chunks/ssr/src_app_(console)_deploy_deploy-picker_tsx_1qtt_mfhq6hx7._.js +3 -0
- 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)_os_09ake6nf7de4h._.js +3 -0
- package/server/.next/server/chunks/ssr/src_app_(console)_os_os-view_tsx_0xr69f5vtstls._.js +3 -0
- 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_1ofufib3-zzt-._.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_0obhr-33tppu8._.js → src_app_signin_1u2md84o5b6td._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_components_174vbjanfxq81._.js +3 -0
- package/server/.next/server/chunks/ssr/{src_components_0ozvphxxwb7d-._.js → src_components_1pmro72g7f44k._.js} +1 -1
- package/server/.next/server/chunks/ssr/src_components_charts_tsx_0u0c5sxi3-7ug._.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_components_live_tsx_1p2s3b807w0jt._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_00ixpbvymlbo_._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_05ai1oj91p9w2._.js +2 -2
- package/server/.next/server/chunks/ssr/src_lib_0eqv8l-v8d5ze._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_0f_4mvf4-xxst._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_0j2ifdk5byg1t._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_0nbad7vu413-f._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_1-o98ehvb_ozi._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_1eioo4oodq-8h._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_1iuuekw6uwbbr._.js +3 -0
- package/server/.next/server/chunks/ssr/{src_lib_0-nc33gvdtkg5._.js → src_lib_1zgor_vrwl5kt._.js} +1 -1
- package/server/.next/server/chunks/ssr/src_lib_alerts_catalog_ts_1ndg28acul64q._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_data_cached_ts_017to1fh48jms._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_data_databases-db_ts_04a4hj5j7h8m0._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_data_os-scan-db_ts_0g2a3ofkaxf40._.js +4 -0
- package/server/.next/server/chunks/ssr/src_lib_data_provider-action-db_ts_0-bucssqnudtd._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_data_repos-db_ts_06z14rp86ukii._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js +2 -2
- package/server/.next/server/chunks/ssr/src_lib_databases_snapshot-data_ts_1xilv6_re7hcp._.js +3 -0
- package/server/.next/server/chunks/ssr/{src_lib_demo_0sbw5n9n4mpzx._.js → src_lib_demo_15e3gnqzod0tj._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_lib_demo_pool_ts_0fpn8acsdk64i._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_deps_branch_ts_06dz9-7a66n24._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_deps_osv_ts_0c-lbj4hsmojx._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_deps_plan_ts_0bctf8v4qttk5._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_sections_ts_0r8u4nvlpdkgq._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_view_security_ts_1_c7vkcsp6y27._.js +3 -0
- package/server/.next/server/chunks/ssr/src_lib_view_usage_ts_1h1tj0m3n2vul._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_0iy_wyg2p1jkn._.js +1 -1
- 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/chunks/ssr/src_private_ui_0jp9fny_5k1v6._.js +1 -1
- package/server/.next/server/middleware-build-manifest.js +36 -3
- package/server/.next/server/next-font-manifest.js +1 -1
- package/server/.next/server/next-font-manifest.json +12 -0
- 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 +378 -176
- package/server/.next/static/chunks/{0uom2d_-nh45g.js → 00e1aosyzj6rl.js} +1 -1
- package/server/.next/static/chunks/{0tw_we2nleycj.js → 0cc9ahw1xs0ny.js} +1 -1
- package/server/.next/static/chunks/{0p5xwnif2xe2v.js → 0hths0sijlql2.js} +1 -1
- package/server/.next/static/chunks/0hzw1rqyz-ith.js +1 -0
- package/server/.next/static/chunks/0ish66r3_d92v.js +1 -0
- package/server/.next/static/chunks/{20u3tmdb-6drr.js → 0ps76fyk0mlud.js} +1 -1
- package/server/.next/static/chunks/{2i629nz4h3fqg.js → 0rblb2d9s6x__.js} +1 -1
- package/server/.next/static/chunks/{2pjruch-2xss_.js → 0v-0yvs2o_ibn.js} +1 -1
- package/server/.next/static/chunks/{3ki7epe69d8mi.js → 0viea3-xdb4uv.js} +1 -1
- package/server/.next/static/chunks/{3y4vkm_orksj_.js → 11r8k-t1ijjkn.js} +1 -1
- package/server/.next/static/chunks/{3tqlcut9yz40q.js → 14f5pn2krqoyh.js} +1 -1
- package/server/.next/static/chunks/{1d5jx8nbj9hio.js → 17zst1h7smcce.js} +1 -1
- package/server/.next/static/chunks/{1hzn5sr2wq7_6.js → 1a0rdqp6soc92.js} +1 -1
- package/server/.next/static/chunks/{2y5zgpld68mbe.js → 1a7zdd51t9mil.js} +2 -2
- package/server/.next/static/chunks/{32sed3oqb5mgw.js → 1d4i_v63pyozl.js} +1 -1
- package/server/.next/static/chunks/{20xid8njz36og.js → 1d5651gcd0bfq.js} +1 -1
- package/server/.next/static/chunks/{2jyi95ohxfybd.js → 1fh3cq_v5nqtp.js} +1 -1
- package/server/.next/static/chunks/1fk-rtgxvtdso.js +1 -0
- package/server/.next/static/chunks/1kyz-ah3_ho6c.js +1 -0
- package/server/.next/static/chunks/{3tigi9c4vke8u.js → 1qjg48qu3j1w4.js} +1 -1
- package/server/.next/static/chunks/{3e8jbph5vbqrh.js → 1qmrzxeff7esb.js} +1 -1
- package/server/.next/static/chunks/{13t0_-lm77ctu.js → 1rgved8vjyay2.js} +1 -1
- package/server/.next/static/chunks/{12z4gcgh75y3h.js → 1y_o3hc2z85sh.js} +1 -1
- package/server/.next/static/chunks/{12ryyhs-tt27p.js → 1yjrm8ekqlzfy.js} +1 -1
- package/server/.next/static/chunks/{1jfri9y7a54t3.js → 2-ijilf6lbw4f.js} +1 -1
- package/server/.next/static/chunks/{12rf9fj_wat4k.js → 2-vu-7596xgz-.js} +2 -2
- package/server/.next/static/chunks/{0x_wb_w6fgkyt.js → 226fbv9fq4xq_.js} +1 -1
- package/server/.next/static/chunks/{1xaww6l378y_h.js → 26exu0f7ok41j.js} +1 -1
- package/server/.next/static/chunks/{1zid1do5vuxcq.js → 28fzu8z0ofyw0.js} +1 -1
- package/server/.next/static/chunks/2c2oi6ivdnv6f.js +1 -0
- package/server/.next/static/chunks/{1q0dfli6xlok0.js → 2crsj9_2h2nzh.js} +1 -1
- package/server/.next/static/chunks/{2gnckmw5e2mfd.js → 2d7luax7loip3.js} +1 -1
- package/server/.next/static/chunks/{11r3cljnu3lrb.js → 2j24hsy45xi-u.js} +1 -1
- package/server/.next/static/chunks/{0vqfc5ez__g1s.js → 2k4z-oed_6g2l.js} +1 -1
- package/server/.next/static/chunks/{2zudgr23_bvy5.js → 2kmw3ug2__8y3.js} +1 -1
- package/server/.next/static/chunks/2owzn0qjb8n5g.js +1 -0
- package/server/.next/static/chunks/{0p_qyask2har9.js → 2pa65sxfnzj4k.js} +1 -1
- package/server/.next/static/chunks/2zzk4wxiacgja.css +3 -0
- package/server/.next/static/chunks/{223rdnw2yty48.js → 308vk5n0anqam.js} +2 -2
- package/server/.next/static/chunks/{27epf-aa_5m_r.js → 356b00huilj4q.js} +1 -1
- package/server/.next/static/chunks/{0znki_inst5fe.js → 35vilzb1p9yjf.js} +1 -1
- package/server/.next/static/chunks/39a3uxexc-wqm.js +1 -0
- package/server/.next/static/chunks/{1andb44i5y-5c.js → 3_6-4h_qltoii.js} +1 -1
- package/server/.next/static/chunks/3a9toq_3nqe93.js +1 -0
- package/server/.next/static/chunks/{3a55yojb_7drl.js → 3ezef0voy5xju.js} +1 -1
- package/server/.next/static/chunks/{2wmkryogm5g3y.js → 3f1selgoqszyq.js} +2 -2
- package/server/.next/static/chunks/{143_uak5v6uky.js → 3g0ywdith98z2.js} +1 -1
- package/server/.next/static/chunks/{0o53bcdd6gtyu.js → 3lc-hq-bpg71u.js} +1 -1
- package/server/.next/static/chunks/3qudv985iqmz7.js +1 -0
- package/server/.next/static/chunks/{0a77yea00jt0y.js → 3u2qewigse-a4.js} +1 -1
- package/server/.next/static/chunks/{16f-5rrbswao-.js → 3w5rrc-0xud6m.js} +1 -1
- package/server/.next/static/chunks/{2plrf95jah9ew.js → 3wfyge_-2qnyj.js} +1 -1
- package/server/.next/static/chunks/{0s44z2_pzghcu.js → 3xulo5x1hbsw-.js} +1 -1
- package/server/.next/static/chunks/44hkyor0suthy.js +1 -0
- package/server/drizzle-selfhost/0008_ci_failing_rule.sql +2 -0
- package/server/drizzle-selfhost/0009_os_security_rule.sql +2 -0
- package/server/drizzle-selfhost/0010_supabase_metrics_memory.sql +8 -0
- package/server/drizzle-selfhost/meta/_journal.json +82 -61
- package/server/.next/server/chunks/[root-of-the-server]__038br8sr9eepd._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0a5op--7u5_xh._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0r3cq1lecww4e._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0r_6xpjwcdrda._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0rctmpp7p7cp9._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0rpys5i04hzww._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0vax5gpdmh80a._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0vv63vp8y0fs-._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0ycpg444s91lb._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0zjhlf_yodox3._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1-37ctpn8yw_m._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1-ne3clcouvm2._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__14vj8ywy5spa2._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__16jyhasrd2ojp._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__16u9d_hm9lefl._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1_zr2xlmtkn4l._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1a9cd4d9ohf69._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1aagly59gw-xf._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1c0cb3ur16yhh._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1jvy8r4n-62x7._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1k-7jan2fsbys._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1qmdi981syrsn._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1r9v6qgjwlv32._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1uad-kugxmkx8._.js +0 -3
- package/server/.next/server/chunks/_0ffsv993spriq._.js +0 -3
- package/server/.next/server/chunks/_0nt4ifc48vl34._.js +0 -48
- package/server/.next/server/chunks/_0rkn5gstaj2d0._.js +0 -48
- package/server/.next/server/chunks/_1_4jb754aeifp._.js +0 -48
- package/server/.next/server/chunks/_1d_77nvqcnkcg._.js +0 -3
- package/server/.next/server/chunks/_1qsryafbujfwn._.js +0 -48
- package/server/.next/server/chunks/src_05vq-abuilwk4._.js +0 -3
- package/server/.next/server/chunks/src_06lwphwuzgl6e._.js +0 -3
- package/server/.next/server/chunks/src_1p24c-nz35cov._.js +0 -3
- package/server/.next/server/chunks/src_20sym_ohuqw76._.js +0 -3
- package/server/.next/server/chunks/src_lib_001zhbfd1zeuk._.js +0 -3
- package/server/.next/server/chunks/src_lib_0k_aposzvy1c8._.js +0 -6
- package/server/.next/server/chunks/src_lib_0n1xnas42gur9._.js +0 -3
- package/server/.next/server/chunks/src_lib_0vjapfdxkooq5._.js +0 -6
- package/server/.next/server/chunks/src_lib_0yn0bj14ih0id._.js +0 -6
- package/server/.next/server/chunks/src_lib_18wgdeemqm6gg._.js +0 -3
- package/server/.next/server/chunks/src_lib_1qbgm0zu8q1rr._.js +0 -6
- package/server/.next/server/chunks/src_lib_1ywf_wup1kxy_._.js +0 -3
- package/server/.next/server/chunks/src_private_123pnf7iqjhkz._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__03mal5uo1rzg4._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0s2of3mcou177._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0tqqte5jb6jz7._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0ujxsp9l9ad-l._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__113zn8es2wp67._.js +0 -3
- package/server/.next/server/chunks/ssr/_09s2unlb4r6yf._.js +0 -3
- package/server/.next/server/chunks/ssr/_0_8v3-nq-b4ug._.js +0 -3
- package/server/.next/server/chunks/ssr/_0_yyszoyzyccn._.js +0 -3
- package/server/.next/server/chunks/ssr/_0ffsv993spriq._.js +0 -3
- package/server/.next/server/chunks/ssr/_0v6v5w16qxwke._.js +0 -3
- package/server/.next/server/chunks/ssr/_12wjuabpo0ofk._.js +0 -3
- package/server/.next/server/chunks/ssr/_1js_iq-0mb62d._.js +0 -3
- package/server/.next/server/chunks/ssr/_1ktvwngz0lzjr._.js +0 -3
- package/server/.next/server/chunks/ssr/_1st-ksb6wm2og._.js +0 -3
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_1--1mjfnoprr2.js +0 -3
- package/server/.next/server/chunks/ssr/src_04o0-kzfmcnim._.js +0 -3
- package/server/.next/server/chunks/ssr/src_0dceh6hsdybq8._.js +0 -3
- package/server/.next/server/chunks/ssr/src_1-k3gvxaqli74._.js +0 -3
- package/server/.next/server/chunks/ssr/src_1ckoccd8qvnje._.js +0 -3
- package/server/.next/server/chunks/ssr/src_1p24c-nz35cov._.js +0 -3
- package/server/.next/server/chunks/ssr/src_1wnx8vxv7nd04._.js +0 -3
- package/server/.next/server/chunks/ssr/src_app_(console)_05h6-wpd078oj._.js +0 -3
- package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_10xvt--29v-ed._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_001zhbfd1zeuk._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_033ses2c4-ww-._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_0n1xnas42gur9._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_18wgdeemqm6gg._.js +0 -3
- package/server/.next/server/chunks/ssr/src_lib_1ywf_wup1kxy_._.js +0 -3
- package/server/.next/server/chunks/ssr/src_private_1yzfhupl3rlpx._.js +0 -6
- package/server/.next/static/chunks/08fdgz3f6aeh3.js +0 -1
- package/server/.next/static/chunks/11locca8ayu84.js +0 -1
- package/server/.next/static/chunks/1lq20aqwgdq8w.js +0 -1
- package/server/.next/static/chunks/1tg1mstvws8rj.css +0 -3
- package/server/.next/static/chunks/38ao1jq4zw-nd.js +0 -1
- package/server/.next/static/chunks/3c79k7qsyelf1.js +0 -1
- package/server/.next/static/chunks/3zhb71t6q4f9k.js +0 -1
- /package/server/.next/static/{VmJyuS9PCFUrRHa6THIcV → g_rE0bq_ZZa-pl4RulWXV}/_buildManifest.js +0 -0
- /package/server/.next/static/{VmJyuS9PCFUrRHa6THIcV → g_rE0bq_ZZa-pl4RulWXV}/_clientMiddlewareManifest.js +0 -0
- /package/server/.next/static/{VmJyuS9PCFUrRHa6THIcV → g_rE0bq_ZZa-pl4RulWXV}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
module.exports=[351917,865653,e=>{"use strict";var t=e.i(874533),r=e.i(912714),n=e.i(93321),s=e.i(548734),a=e.i(837137),i=e.i(371289);function o(e){let t=e.trim(),r=0,n=t.indexOf(":");n>0&&/^\d+$/.test(t.slice(0,n))&&(r=Number(t.slice(0,n)),t=t.slice(n+1));let s=t.lastIndexOf("-");return s>=0?[r,t.slice(0,s),t.slice(s+1)]:[r,t,""]}function l(e){return void 0===e?0:"~"===e?-1:/[A-Za-z]/.test(e)?e.charCodeAt(0):e.charCodeAt(0)+256}function u(e,t){let r=0,n=0;for(;r<e.length||n<t.length;){for(;r<e.length&&!/\d/.test(e[r])||n<t.length&&!/\d/.test(t[n]);){let s=r<e.length&&!/\d/.test(e[r])?e[r]:void 0,a=n<t.length&&!/\d/.test(t[n])?t[n]:void 0,i=l(s)-l(a);if(0!==i)return i;void 0!==s&&r++,void 0!==a&&n++}let s="",a="";for(;r<e.length&&/\d/.test(e[r]);)s+=e[r++];for(;n<t.length&&/\d/.test(t[n]);)a+=t[n++];if(s=s.replace(/^0+/,""),a=a.replace(/^0+/,""),s.length!==a.length)return s.length-a.length;if(s!==a)return s<a?-1:1}return 0}function c(e,t){let[r,n,s]=o(e),[a,i,l]=o(t);return r!==a?r-a:u(n,i)||u(s,l)}e.s(["f",0,c],865653);let d=e=>e.replace(/^linux-signed(-|$)/,"linux$1"),f=e=>/^linux-meta(-|$)/.test(e),m="OSV.dev sent an answer we couldn't read.";async function p(e,t,r=fetch){let n={};for(let s=0;s<t.length;s+=1e3){let a,i,o=t.slice(s,s+1e3),l=o.map(t=>({package:{name:t.name,ecosystem:e},version:t.version}));try{let e=await r("https://api.osv.dev/v1/querybatch",{method:"POST",body:JSON.stringify({queries:l}),headers:{"content-type":"application/json"},signal:AbortSignal.timeout(3e4)});if(!e.ok)return{ok:!1,error:`OSV.dev answered HTTP ${e.status}.`};a=await e.text()}catch{return{ok:!1,error:"OSV.dev didn't answer in time."}}if(a.length>8388608)return{ok:!1,error:"OSV.dev sent too large an answer."};try{i=JSON.parse(a)}catch{return{ok:!1,error:m}}let u=i?.results;if(!Array.isArray(u)||u.length!==o.length)return{ok:!1,error:m};u.forEach((e,t)=>{let r=e?.vulns,s=Array.isArray(r)?r.length:0;s&&(n[o[t].name]=(n[o[t].name]??0)+s)})}return{ok:!0,counts:n}}let g=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),h=e=>Array.isArray(e)?e:[],y=e=>"string"==typeof e&&e.trim()?e.trim():null,k=e=>{let t=e.replace(/\s+/g," ").trim(),r=t.search(/\.\s/);return(r>20?t.slice(0,r+1):t).slice(0,200)},v="Ubuntu's security API sent an answer we couldn't read.",b=e=>{let t=new Set;return e.filter(e=>!t.has(e.cve)&&(t.add(e.cve),!0))};async function w(e,t,r,n,s=fetch){let a=[];for(let i=0;i<10;i++){let o,l,u,d=`https://ubuntu.com/security/cves.json?package=${encodeURIComponent(e)}&version=${encodeURIComponent(t)}&status=released&limit=20&offset=${20*i}&order=newest`;try{if(!(o=await s(d,{headers:{accept:"application/json","user-agent":"Watchbell (self-hosted)"},signal:AbortSignal.timeout(15e3)})).ok)return{ok:!1,error:`Ubuntu's security API answered HTTP ${o.status}.`};l=await o.text()}catch{return{ok:!1,error:"Ubuntu's security API didn't answer in time."}}if(l.length>2097152)return{ok:!1,error:"Ubuntu's security API sent too large an answer."};try{u=JSON.parse(l)}catch{return{ok:!1,error:v}}let f=function(e,t,r){if(!g(e)||!Array.isArray(e.cves))return null;let n=[];for(let s of e.cves){if(!g(s))continue;let e=y(s.id);if(!e||!/^CVE-\d{4}-\d{4,}$/.test(e))continue;let a=h(s.packages).filter(e=>g(e)&&e.name===t).flatMap(e=>h(e.statuses)).find(e=>g(e)&&e.release_codename===r);n.push({cve:e,priority:y(s.priority),cvss3:"number"==typeof s.cvss3&&Number.isFinite(s.cvss3)?s.cvss3:null,status:a?y(a.status):null,version:a?y(a.description):null,usns:h(s.notices_ids).map(y).filter(e=>!!e&&/^USN-\d+-\d+$/.test(e)),summary:k(y(s.ubuntu_description)??y(s.description)??"")})}return n}(u,e,t);if(null===f)return{ok:!1,error:v};if(a.push(...function(e,t,r){return e.filter(e=>"released"===e.status&&null!==e.version&&c(e.version,t)>0&&0>=c(e.version,r))}(f,r,n)),f.length<20)return{ok:!0,fixes:b(a)}}return{ok:!1,error:"Ubuntu lists more fixed CVEs for this package than Watchbell reads (200); see Ubuntu's page.",fixes:b(a)}}let $={critical:4,high:3,medium:2,low:1,negligible:0},x=e=>Math.max(-1,...e.fixes.map(e=>e.cvss3??-1)),A=e=>Math.max(-1,...e.fixes.map(e=>$[e.priority??""]??-1)),S="Not checked: the scan ran out of time.";async function I(e,t,r){let n=Array(e.length),s=0;return await Promise.all(Array.from({length:Math.min(t,e.length)},async()=>{for(;s<e.length;){let t=s++;n[t]=await r(e[t])}})),n}let O=e=>/^linux(-signed|-meta)?(-|$)/.test(e)&&!/^linux-(base|firmware|libc-dev|tools-common)$/.test(e);async function U(e,t,r,n={}){var s,a;let i=n.deadline??Date.now()+75e3,o={status:"ok",system:null,ecosystem:null,codename:null,packages:0,kernel:null,updates:[],backlog:{counts:{},total:0,error:null},aptListsAgeHours:null,scannedAt:r.toISOString(),error:null};if("linux"!==e.platform)return{...o,status:"unsupported",error:`OS checks run on Ubuntu for now; this machine is ${e.platform}.`};let l=function(e){let t={};for(let r of e.split(/\r?\n/)){let e=/^([A-Z_][A-Z0-9_]*)=(.*)$/.exec(r.trim());e&&(t[e[1]]=e[2].replace(/^(["'])(.*)\1$/,"$2"))}if(!t.ID)return null;let r=t.PRETTY_NAME||[t.NAME,t.VERSION].filter(Boolean).join(" ")||t.ID;return{id:t.ID.toLowerCase(),versionId:t.VERSION_ID||null,codename:t.VERSION_CODENAME||t.UBUNTU_CODENAME||null,pretty:r,lts:/\bLTS\b/.test(`${t.VERSION??""} ${r}`)}}(await e.readFile("/etc/os-release")??"");if(!l)return{...o,status:"unsupported",error:"OS checks run on Ubuntu for now; this system has no /etc/os-release."};if(o.system=l.pretty,"ubuntu"!==l.id)return{...o,status:"unsupported",error:"debian"===l.id?"OS checks run on Ubuntu for now; Debian is next.":`OS checks run on Ubuntu for now; this system is ${l.pretty}.`};let u=l.versionId?"ubuntu"===l.id&&/^\d{2}\.\d{2}$/.test(l.versionId)?`Ubuntu:${l.versionId}${l.lts?":LTS":""}`:"debian"===l.id&&/^\d+/.test(l.versionId)?`Debian:${l.versionId.split(".")[0]}`:null:null;if(!u||!l.codename)return{...o,status:"unsupported",error:`Watchbell can't name this Ubuntu release (${l.pretty}).`};o.ecosystem=u,o.codename=l.codename;let m=await e.exec("dpkg-query",["-W",`-f=$\{Package} $\{Version} $\{source:Package} $\{source:Version} $\{db:Status-Abbrev}
|
|
2
|
+
`]);if(!m.ok)return{...o,status:"error",error:`Couldn't list the installed packages (${m.error}).`};let g=function(e){let t=[];for(let r of e.split(/\r?\n/)){let[e,n,s,a,i]=r.split(" ");e?.trim()&&n?.trim()&&t.push({name:e.trim(),version:n.trim(),source:s?.trim()||e.trim(),sourceVersion:a?.trim()||n.trim(),installed:void 0===i||/^[ih]i/.test(i.trim())})}return t}(m.stdout),h=g.filter(e=>e.installed);o.packages=h.length;let y=new Map(h.map(e=>[e.name,e])),k=(await e.readFile("/proc/sys/kernel/osrelease"))?.trim()||null,v=h.filter(e=>/^linux-image-(unsigned-)?\d/.test(e.name)),b=k?v.find(e=>e.name===`linux-image-${k}`||e.name===`linux-image-unsigned-${k}`):void 0,$=v.map(e=>e.sourceVersion).sort(c).at(-1)??null,V=(s=await e.readFile("/var/run/reboot-required"),a=await e.readFile("/var/run/reboot-required.pkgs"),null===s?{needed:!1,packages:[]}:{needed:!0,packages:[...new Set((a??"").split(/\r?\n/).map(e=>e.trim()).filter(Boolean))]}),N=await e.exec("apt",["list","--upgradable"]);if(!N.ok)return{...o,status:"error",error:`Couldn't read the waiting updates (${N.error}).`};let C=function(e){let t=[];for(let r of e.split(/\r?\n/)){let e=/^([^/\s]+)\/(\S+)\s+(\S+)\s+\S+\s+\[upgradable from: ([^\]]+)\]/.exec(r.trim());if(!e)continue;let n=e[2].split(",").filter(Boolean);t.push({name:e[1],candidate:e[3],installed:e[4].trim(),pockets:n,security:n.some(e=>/-security$/.test(e))})}return t}(N.stdout),E=C.find(e=>/^linux-image-/.test(e.name));o.kernel={running:k,runningVersion:b?.sourceVersion??null,newestInstalled:$,reboot:V,update:E?{package:E.name,candidate:E.candidate}:null};let D=new Map,M=new Set;for(let e of C){let t=y.get(e.name),r=t?.source??e.name;if(O(r))continue;t&&t.version!==t.sourceVersion&&M.add(r);let n=D.get(r)??{source:r,binaries:[],installed:e.installed,candidate:e.candidate,pockets:[],security:!1,fixes:[],error:null};n.binaries.push(e.name),0>c(e.installed,n.installed)&&(n.installed=e.installed),c(e.candidate,n.candidate)>0&&(n.candidate=e.candidate),n.pockets=[...new Set([...n.pockets,...e.pockets])],n.security||=e.security,D.set(r,n)}let P=RegExp(`^${l.codename.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(-(updates|security|backports|proposed))?$`);o.updates=(await I([...D.values()],4,async e=>{if(e.binaries.sort(),!e.pockets.some(e=>P.test(e)))return e;if(M.has(e.source))return{...e,error:`Its package and source versions differ, so Watchbell can't match Ubuntu's fixes; see Ubuntu's page for ${e.source}.`};if(Date.now()>i)return{...e,error:S};try{let r=await w(e.source,l.codename,e.installed,e.candidate,t);return r.ok?{...e,fixes:r.fixes}:{...e,fixes:r.fixes??[],error:r.error}}catch{return{...e,error:"Ubuntu's security API sent an answer we couldn't read."}}})).sort((e,t)=>x(t)-x(e)||A(t)-A(e)||Number(t.security)-Number(e.security)||e.source.localeCompare(t.source));let T=(function(e,t){let r=e.filter(e=>e.installed),n=t?r.find(e=>e.name===`linux-image-${t}`||e.name===`linux-image-unsigned-${t}`):void 0,s=n?{name:d(n.source),version:n.sourceVersion}:null,a=new Map;for(let e of r){if(f(e.source))continue;let t=d(e.source);if(s&&t===s.name&&e.sourceVersion!==s.version)continue;let r=`${t} ${e.sourceVersion}`,n=a.get(r)??{name:t,version:e.sourceVersion,binaries:[],kernel:s?t===s.name:"linux"===t};n.binaries.push(e.name),a.set(r,n)}return[...a.values()].map(e=>({...e,binaries:[...new Set(e.binaries)].sort()})).sort((e,t)=>e.name.localeCompare(t.name)||e.version.localeCompare(t.version))})(g,k).filter(e=>!e.kernel&&!O(e.name)&&!D.has(e.name)),_=Date.now()>i?{ok:!1,error:S}:T.length?await p(u,T.map(e=>({name:e.name,version:e.version})),t):{ok:!0,counts:{}};o.backlog=_.ok?{counts:_.counts,total:Object.values(_.counts).reduce((e,t)=>e+t,0),error:null}:{counts:{},total:0,error:_.error};let j=await e.mtime("/var/lib/apt/periodic/update-success-stamp");return o.aptListsAgeHours=j?Math.max(0,Math.round((r.getTime()-j.getTime())/36e5)):null,o}let V="OS checks are part of the self-hosted edition.",N="os_scan";function C(e=process.env){let t=(0,i.c)(e);return"cloud"===t?"off-cloud":"demo"===t?"demo":"on"}function E(e){return"object"!=typeof e||null===e?null:["ok","error","unsupported"].includes(e.status??"")&&"string"==typeof e.scannedAt&&Array.isArray(e.updates)&&"object"==typeof e.backlog?e:null}let D={platform:process.platform,readFile:e=>(0,r.readFile)(e,"utf8").catch(()=>null),mtime:e=>(0,r.stat)(e).then(e=>e.mtime).catch(()=>null),exec:(e,r)=>new Promise(n=>{(0,t.execFile)(e,r,{timeout:3e4,maxBuffer:0x1000000,env:{...process.env,LC_ALL:"C"}},(t,r)=>{n(t?{ok:!1,error:"ENOENT"===t.code?`${e} isn't installed`:t.message.split("\n")[0].slice(0,160)}:{ok:!0,stdout:r})})})},M={state:()=>C(),scan:()=>U(D,fetch,new Date),read:async()=>(await (0,s.f)().select({value:a.settings.value}).from(a.settings).where((0,n.u)(a.settings.key,N)).limit(1))[0]?.value??null,write:async e=>{await (0,s.f)().insert(a.settings).values({key:N,value:e}).onConflictDoUpdate({target:a.settings.key,set:{value:e,updatedAt:new Date}})}};async function P(e=M){return E(await e.read())}async function T(e=M){let t=e.state();if("off-cloud"===t)return{ok:!1,error:V};if("demo"===t)return{ok:!1,error:"Scanning is off in the demo."};let r=await e.scan(),n=E(await e.read()),s="error"===r.status&&n&&"ok"===n.status?{...n,error:r.error,failedAt:r.scannedAt}:r;return await e.write(s),{ok:!0,data:s}}e.s(["r",0,V,"y",0,P,"C",0,C,"W",0,T],351917)}];
|
|
3
|
+
|
|
4
|
+
//# sourceMappingURL=src_lib_data_os-scan-db_ts_0g2a3ofkaxf40._.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
module.exports=[396667,711251,532971,186133,e=>{"use strict";var t=e.i(93321),n=e.i(351674),r=e.i(800717),s=e.i(548734),
|
|
2
|
-
(select coalesce(jsonb_agg(distinct ${
|
|
3
|
-
exists(select 1 from ${
|
|
4
|
-
${
|
|
1
|
+
module.exports=[396667,711251,532971,186133,e=>{"use strict";var t=e.i(93321),n=e.i(351674),r=e.i(800717),s=e.i(548734),o=e.i(263251),a=e.i(837137),i=e.i(686921),l=e.i(371289),c=e.i(160147);let u="budget.limits",f={qstashPerDay:1e3,webAnalyticsEvents:5e4,vercelInvocations:1e6,vercelCpuHours:4,vercelMemoryGbH:360,warnPct:70,errPct:90},m=[{key:"qstashPerDay",label:"Upstash QStash messages",unit:"a day",min:1,max:1e7},{key:"webAnalyticsEvents",label:"Vercel Web Analytics events",unit:"a month",min:1,max:1e8},{key:"vercelInvocations",label:"Vercel function invocations",unit:"a month",min:1,max:1e9},{key:"vercelCpuHours",label:"Vercel active CPU",unit:"hours a month",min:1,max:1e4},{key:"vercelMemoryGbH",label:"Vercel provisioned memory",unit:"GB-hours a month",min:1,max:1e5},{key:"warnPct",label:"Warn from",unit:"% used",min:10,max:99},{key:"errPct",label:"Alarm from",unit:"% used",min:11,max:100}],y=(e,t)=>"number"==typeof t&&Number.isInteger(t)&&t>=e.min&&t<=e.max;function d(e){let t={...f};if(!e||"object"!=typeof e)return t;for(let n of m){let r=e[n.key];y(n,r)&&(t[n.key]=r)}return t.warnPct<t.errPct?t:{...t,warnPct:f.warnPct,errPct:f.errPct}}e.s(["o",0,f,"h",0,u,"S",0,function(e,t){let n=m.filter(n=>e[n.key]!==t[n.key]).map(n=>`${n.label} ${e[n.key].toLocaleString("en-US")} → ${t[n.key].toLocaleString("en-US")}`);return n.length?n.join(", "):null},"X",0,d,"R",0,function(e){let t=e&&"object"==typeof e?e:{},n={...f},r={};for(let e of m){let s=t[e.key],o="string"==typeof s?Number(s.replace(/[,_\s]/g,"")):s;y(e,o)?n[e.key]=o:r[e.key]=`Enter a whole number from ${e.min.toLocaleString("en-US")} to ${e.max.toLocaleString("en-US")}.`}return r.warnPct||r.errPct||!(n.warnPct>=n.errPct)||(r.errPct="Alarm must be above Warn."),Object.keys(r).length?{ok:!1,error:"Check the highlighted fields.",fieldErrors:r}:{ok:!0,value:n}}],711251);var h=e.i(655206);let p="retention.days",b={checks:[3,7,14],rollupsHourly:[60,90,180],storedLogs:[3,7,14],deployments:[30,45,60,90],events:[60,90,180],alerts:[60,90,180],collectorRuns:[7,14,30],recommendationDismissals:[30,90,180]},g=Object.keys(b),k={checks:"Raw checks",rollupsHourly:"Hourly rollups",storedLogs:"Stored logs",deployments:"Deployments",events:"Events",alerts:"Alerts",collectorRuns:"Collector runs",recommendationDismissals:"Advisor dismissals"},v=(e,t)=>"number"==typeof t&&b[e].includes(t);function w(e){let t={...h.f};if(!e||"object"!=typeof e)return t;for(let n of g){let r=e[n];v(n,r)&&(t[n]=r)}return t}async function $(e){let[n]=await (0,s.f)().select({value:a.settings.value}).from(a.settings).where((0,t.u)(a.settings.key,e)).limit(1);return n?.value??null}async function P(e,t){await (0,s.f)().insert(a.settings).values({key:e,value:t}).onConflictDoUpdate({target:a.settings.key,set:{value:t,updatedAt:new Date}})}e.s(["L",0,g,"I",0,k,"H",0,p,"E",0,w,"b",0,function(e,t){let n=g.filter(n=>e[n]!==t[n]).map(n=>`${k[n]} ${e[n]} → ${t[n]} days`);return n.length?n.join(", "):null},"K",0,function(e){let t={},n={...h.f},r=e&&"object"==typeof e?e:{};for(let e of g){let s="string"==typeof r[e]?Number(r[e]):r[e];v(e,s)?n[e]=s:t[e]=`Pick ${b[e].join(", ")} days.`}return Object.keys(t).length?{ok:!1,error:"Check the highlighted fields.",fieldErrors:t}:{ok:!0,value:n}}],532971);let j=async()=>w(await $(p)),x=async()=>d(await $(u)),B="notify.language",S="sections.off",A=async()=>(0,c.N)(await $(S)),C=()=>n.B`(select ${a.settings.value} from ${a.settings} where ${a.settings.key} = ${S})`;e.s(["j",0,x,"l",0,()=>$(B),"J",0,j,"W",0,A,"x",0,e=>P(u,e),"U",0,e=>P(B,e),"A",0,e=>P(p,e),"Y",0,e=>P(S,(0,c.N)(e)),"X",0,C],186133);let H=["supabase_project","neon_project","firestore","turso_database","upstash_redis","d1_database"],L=e=>{if("string"!=typeof e)return e;try{return JSON.parse(e)}catch{return null}},N=(0,r.cache)(async()=>{let e=n.B.join(H.map(e=>n.B`${e}`),n.B`, `),t=await (0,s.f)().execute(n.B`select
|
|
2
|
+
(select coalesce(jsonb_agg(distinct ${a.accounts.provider}::text), '[]'::jsonb) from ${a.accounts}) as providers,
|
|
3
|
+
exists(select 1 from ${a.resources} where ${a.resources.kind}::text in (${e}) and ${a.resources.goneAt} is null) as databases,
|
|
4
|
+
${C()} as off`),[r]=(0,o.f)(t),l=L(r?.providers);return{providers:(Array.isArray(l)?l:[]).filter(e=>i.L.includes(e)),databases:r?.databases===!0||r?.databases==="t",off:(0,c.N)(L(r?.off))}});async function U(){let{providers:e,databases:t,off:n}=await N(),r={databases:t},s=[...(0,c.R)(e,{...r,selfhost:"cloud"!==(0,l.c)()})];return{on:s.filter(e=>!n.includes(e)),available:s,off:n,providers:e,has:r}}async function D(){try{return(0,c.J)((await N()).off)}catch{return new Set}}function E(e){if(!e.size)return;let{ruleKeys:r,providers:s}=(0,c.s)(e),o=[];if(r.length&&o.push(n.B`${a.alerts.ruleKey} in (${n.B.join(r.map(e=>n.B`${e}`),n.B`, `)})`),s.length){let e=n.B.join(s.map(e=>n.B`${e}`),n.B`, `);o.push(n.B`(${a.alerts.ruleKey} = 'CredentialExpiring' and ${a.alerts.accountId} in (select ${a.accounts.id} from ${a.accounts} where ${a.accounts.provider}::text in (${e})))`)}return o.length?(0,t.F)(...o):void 0}async function _(e,n){let r=E(new Set([e]));r&&await (0,s.f)().update(a.alerts).set({pendingSince:n}).where((0,t.b)((0,t.E)(a.alerts.pending),r))}async function I(){let e=await (0,s.f)().select({kind:a.monitors.kind,n:n.B`count(*)::int`}).from(a.monitors).where((0,t.b)((0,t.u)(a.monitors.paused,!1),(0,t.u)(a.monitors.ownerPaused,!1))).groupBy(a.monitors.kind),r=t=>Number(e.find(e=>e.kind===t)?.n??0);return{http:r("http"),heartbeat:r("heartbeat")}}e.s(["s",0,function(e){let n=E(e);return n?(0,t.R)(n):void 0},"F",0,I,"I",0,D,"e",0,_,"Q",0,U],396667)}];
|
|
5
5
|
|
|
6
6
|
//# sourceMappingURL=src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[893893,t=>{"use strict";var e=t.i(427221),o=t.i(811365),a=t.i(26972),r=t.i(83931),s=t.i(689963);let n=e.z.string().nullable().optional(),i=o.z.number().nullable().optional(),l=e.z.string().nullable().optional(),u=a.z.object({status:e.z.string().optional(),region:l,pgVersion:l,orgSlug:l,freeOrg:r.z.boolean().nullable().optional(),pausedBeforeSeen:r.z.boolean().optional(),lastGoodState:e.z.string().optional(),lastTrafficAt:n,trafficAt:n,trafficError:l,health:s.z.array(a.z.object({name:e.z.string(),status:e.z.string()})).nullable().optional(),healthAt:n,healthError:l,sizeBytes:i,sizeAt:n,sizeError:l}),g=a.z.object({id:e.z.string(),branchId:e.z.string(),state:e.z.string(),pendingState:e.z.string().nullable(),disabled:r.z.boolean(),minCu:o.z.number(),maxCu:o.z.number(),lastActive:e.z.string().nullable()}),z=a.z.object({id:e.z.string(),name:e.z.string(),isDefault:r.z.boolean(),logicalSize:o.z.number().nullable()}),c=a.z.object({region:l,pgVersion:o.z.number().nullable().optional(),orgId:l,computeSeconds:i,transferBytes:i,periodStart:n,periodEnd:n,activeSeconds:i,endpoints:s.z.array(g).optional(),branches:s.z.array(z).optional(),lastGoodState:e.z.string().optional()}),d=a.z.object({displayName:l,latencyMs:i,pingError:l,pingReason:l,pingKind:l,reads:i,writes:i,deletes:i,opsAt:n,opsError:l,authUsers:i,authAt:n,authError:l,lastGoodState:e.z.string().optional()}),p=a.z.object({org:l,group:l,primaryRegion:l,plan:l,blockReads:r.z.boolean().optional(),blockWrites:r.z.boolean().optional(),rowsRead:i,rowsWritten:i,storageBytes:i,orgRowsRead:i,orgRowsWritten:i,orgStorageBytes:i,orgDatabases:i,usageAt:n,usageError:l,lastGoodState:e.z.string().optional()}),b=a.z.object({region:l,status:l,type:l,dailyCommands:i,monthlyRequests:i,storageBytes:i,monthlyBandwidthBytes:i,statsAt:n,statsError:l,lastGoodState:e.z.string().optional()}),y=a.z.object({accountId:l,createdAt:n,sizeBytes:i,numTables:i,readReplication:l,detailsAt:n,detailsError:l,rowsRead:i,rowsWritten:i,readQueries:i,writeQueries:i,accountRowsRead:i,accountRowsWritten:i,accountSizeBytes:i,accountDatabases:i,usageDay:l,usageAt:n,usageError:l,lastGoodState:e.z.string().optional()});t.s(["x",0,y,"w",0,d,"s",0,c,"k",0,function(t,e){if(!e||"object"!=typeof e)return{};let o={};for(let[a,r]of Object.entries(t.shape)){let t=e[a];if(void 0===t)continue;let s=r.safeParse(t);s.success&&(o[a]=s.data)}return o},"B",0,u,"N",0,p,"e",0,b])}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=src_lib_databases_snapshot-data_ts_1xilv6_re7hcp._.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
module.exports=[601533,e=>{"use strict";var t=e.i(7584),a=e.i(837137),n=e.i(159203),i=e.i(745614),r=e.i(351674),s=e.i(263251),o=e.i(927262),d=e.i(233711),l=e.i(469762),c=e.i(988866),u=e.i(109505);let p=(e,t)=>`${e} ${t}${1===e?"":"s"}`;async function m(e,t,n,i,m){let h,g,f,w,A,k,y,{db:I,seed:v,now:_}=e,$=(0,u.k)(v,"alerts"),b=(...e)=>(0,u.T)(v,"alert",...e),S=e=>t.apps.find(t=>t.id===e)?.name??"app",T=(0,s.f)(await I.execute(r.B`select resource_id, external_id, state, target, commit_sha, created_at_provider, is_current, is_previous_production from ops.deployments`)),x=T.find(e=>"error"===e.state&&"production"===e.target),D={appId:x.resource_id,appName:S(x.resource_id),sha:x.commit_sha.slice(0,7),createdAt:new Date(x.created_at_provider),currentExternalId:T.find(e=>e.resource_id===x.resource_id&&e.is_current)?.external_id??null},E=(e,t,a)=>{let n=a.resolvedAt??null;return{ruleKey:e,subject:t,severity:o._[e].severity,resourceId:null,accountId:null,okStreak:2*!!n,lastSeenAt:n??(0,c.$)(_,1e3*$.int(5,55)),lastSampleAt:null,notifiedOpen:"info"!==o._[e].severity,lastNotifiedAt:n??new Date(a.startedAt.getTime()+c.E),pending:null,pendingSince:null,...a}},M=m.certSoon,O=(0,d.g)(M.notAfter,_)??0,C=m.zoneSoon,P=(0,d.g)(C.expiresAt,_)??0,z=[E("DeploymentFailed",D.appId,{id:b("firing","deploy"),resourceId:D.appId,title:D.appName,message:`Production deployment ${D.sha} failed.`,startedAt:new Date(D.createdAt.getTime()+1e3*$.int(60,150))}),E("CertExpiringSoon",M.id,{id:b("firing","cert"),resourceId:M.id,title:M.name,message:`The TLS certificate of ${M.name} expires in ${p(O,"day")}.`,startedAt:new Date(M.notAfter.getTime()-14*c.h+$.int(5,55)*c.E)}),E("DomainExpiringSoon",C.id,{id:b("firing","zone"),resourceId:C.id,title:C.name,message:`${C.name} expires in ${p(P,"day")}.`,startedAt:new Date(C.expiresAt.getTime()-30*c.h+$.int(5,55)*c.E)})],R=n.outage,j=n.monitors.find(e=>e.id===R.monitorId),B=t.apps.find(e=>e.id!==D.appId)??t.apps[0],N=e=>i.dbs.find(t=>t.kind===e),U=(e,t)=>(0,c.$)(_,e*c.h+t*c.w+$.int(0,50)*c.E),F=(e,t)=>new Date(e.getTime()+t*c.E),L=(e,t)=>{let a=n.monitors.find(e=>e.id===t.monitorId);return E("HighLatency",a.id,{id:b("resolved",e),resourceId:a.appId,title:`${S(a.appId)} ${a.path}`,message:`p95 ${t.p95.toLocaleString("en-US")} ms over the last 10 minutes (limit 1,500 ms).`,startedAt:t.firedAt,resolvedAt:t.resolvedAt})},H={start:U(4,$.int(1,9)),sha:(0,u.p)(7,v,"old-failed",B.name)},K=N("upstash_redis"),V=N("firestore"),W=N("supabase_project"),G=i.cloudflare.label,q={outage:E("MonitorDown",j.id,{id:b("resolved","outage"),resourceId:j.appId,title:`${S(j.appId)} ${j.path}`,message:`${(0,l.F)(j.url)} returned HTTP 503 on 3 consecutive checks.`,startedAt:new Date(R.startedAt.getTime()+10*c.E),resolvedAt:R.recoveredAt}),latencyA:L("latency-a",n.slow[0]),latencyB:L("latency-b",n.slow[1]),oldDeploy:E("DeploymentFailed",B.id,{id:b("resolved","old-deploy"),resourceId:B.id,title:B.name,message:`Production deployment ${H.sha} failed.`,startedAt:H.start,resolvedAt:F(H.start,$.int(35,70))}),collector:(h=U(6,$.int(1,10)),E("CollectorStale","collector",{id:b("resolved","collector"),title:"collector",message:"The last minute run finished 6 min ago.",startedAt:h,resolvedAt:F(h,$.int(4,9))})),autoPause:(g=U(6,$.int(12,20)),E("AutoPauseRisk",W.id,{id:b("resolved","auto-pause"),resourceId:W.id,title:W.name,message:"No API traffic for 4 days. Supabase pauses free projects after about 7 days.",startedAt:g,resolvedAt:F(g,60*$.int(20,30))})),quota:(f=U(6,$.int(1,8)),E("DbQuotaHigh",K.id,{id:b("resolved","db-quota"),resourceId:K.id,title:K.name,message:`${K.name}: Commands at ${$.int(81,88)}% of the free plan.`,startedAt:f,resolvedAt:F(f,60*$.int(3,6))})),firestore:(w=U(3,$.int(1,6)),E("FirestoreQuotaHigh",V.id,{id:b("resolved","firestore"),resourceId:V.id,title:V.name,message:`${V.name} read ${$.int(40500,46e3).toLocaleString("en-US")} of 50,000 documents today (${$.int(81,92)}%).`,startedAt:w,resolvedAt:F(w,60*$.int(2,5))})),proxied:(A=U(5,$.int(12,20)),E("DnsProxiedToVercel",(k=m.vercelRecord).id,{id:b("resolved","proxied"),resourceId:k.zoneId,title:k.name,message:`${k.name} points to Vercel through the Cloudflare proxy. Vercel recommends DNS only.`,startedAt:A,resolvedAt:F(A,24*$.int(2,4)*60)})),credential:(y=U(6,$.int(14,22)),E("CredentialExpiring",i.cloudflare.accountId,{id:b("resolved","credential"),accountId:i.cloudflare.accountId,title:`cloudflare \xb7 ${G}`,message:`The cloudflare credential ${G} expires in 9 days.`,startedAt:y,resolvedAt:F(y,24*$.int(1,2)*60+$.int(10,300))}))};return await I.insert(a.alerts).values([...z,...Object.values(q)]),{firing:{deploy:z[0].id,cert:z[1].id,zone:z[2].id},resolved:{outage:q.outage.id,oldDeploy:{id:q.oldDeploy.id,appId:B.id,appName:B.name,previousExternalId:T.find(e=>e.resource_id===B.id&&e.is_previous_production)?.external_id??null,startedAt:q.oldDeploy.startedAt,resolvedAt:q.oldDeploy.resolvedAt},credential:{title:q.credential.title,resolvedAt:q.credential.resolvedAt}},failedDeploy:D}}var h=e.i(646324),g=e.i(306556);let f=e=>`${e}.example`,w=["acme-shop","orbit-blog","nimbus-docs","pixel-forge","harbor-api","lumen-portal","quartz-admin","tidal-landing","ember-status","cobalt-store","willow-wiki","atlas-dash","sprout-crm","comet-links","fable-notes","maple-events"],A=[{name:"Juniper Labs",slug:"juniper-labs"},{name:"Kestrel Works",slug:"kestrel-works"},{name:"Brightfield Studio",slug:"brightfield-studio"},{name:"Saltmarsh Digital",slug:"saltmarsh-digital"}],k=["nextjs","nextjs","nextjs","vite","astro","sveltekit","remix"],y=["sin1","iad1","fra1","hnd1","sfo1"],I=["feat/checkout-v2","feat/dark-mode","fix/login-redirect","feat/search","chore/deps","fix/image-sizes","feat/newsletter","fix/cache-headers"],v=["Fix cart total rounding","Add dark mode toggle","Update dependencies","Speed up the product grid","Fix login redirect loop","Add sitemap","Tidy the footer links","Cache the pricing page","Add newsletter signup","Fix image sizes on mobile","Bump Next.js","Add search to the docs","Handle empty states","Retry failed webhooks","Move env checks to startup","Shorten the onboarding copy","Add health endpoint","Fix timezone in the event list","Split the dashboard bundle","Add RSS feed"],_={supabase_project:["shop-prod","portal-main","crm-core","store-db"],neon_project:["analytics","reporting","billing-ledger","metrics-pg"],firestore:["notes-app","mobile-sync","feedback-inbox","event-chat"],turso_database:["edge-cache","geo-lookup","docs-search","flags"],upstash_redis:["sessions","rate-limits","queue-cache","page-cache"],d1_database:["events-log","link-clicks","form-entries","audit-trail"]},$=["acme-studio","orbit-labs","nimbus-works","pixel-harbor","tidal-digital","ember-co"],b=[{level:"error",method:"POST",path:"/api/checkout",status:500,message:"TypeError: Cannot read properties of undefined (reading 'price')"},{level:"warning",method:"GET",path:"/products",status:200,message:"Slow query: products list took 1840 ms"},{level:"error",method:"GET",path:"/api/search",status:504,message:"Task timed out after 10.02 seconds"},{level:"warning",method:"GET",path:"/",status:200,message:"Image optimization fell back to the original file (unsupported format)"},{level:"error",method:"POST",path:"/api/webhooks/payments",status:401,message:"Webhook signature didn't match"},{level:"fatal",method:"GET",path:"/api/report",status:500,message:"Error: connect ECONNREFUSED (database connection pool exhausted)"},{level:"warning",method:"GET",path:"/blog/[slug]",status:404,message:'Post not found for slug "spring-sale-2025"'},{level:"error",method:"PUT",path:"/api/profile",status:422,message:"ZodError: email must be a valid email"}];async function S(e){let{db:t,seed:n,now:i}=e,r=(0,u.k)(n,"apps"),s=r.pick(A),o={id:`team_${(0,u.g)(24,n,"team")}`,name:s.name,slug:s.slug},d=(0,u.T)(n,"account","vercel"),l=(0,c.$)(i,r.int(120,300)*c.h),p=(0,c.$)(i,r.int(3,50)*c.E);await t.insert(a.accounts).values({id:d,provider:"vercel",label:o.name,credentialCiphertext:"demo",credentialIv:"demo",credentialKind:"Access token",status:"ok",lastTestAt:p,lastSyncAt:p,createdAt:l,updatedAt:p});let m=r.shuffle(w).slice(0,r.int(5,8)).sort().map((e,t)=>({id:(0,u.T)(n,"app",e),index:t,name:e,externalId:`prj_${(0,u.g)(28,n,"project",e)}`,host:f(e),createdAt:(0,c.$)(i,r.int(95,400)*c.h-r.int(0,23)*c.w)}));return await t.insert(a.resources).values(m.map(e=>({id:e.id,accountId:d,kind:"app",externalId:e.externalId,name:e.name,monitored:!0,firstSeenAt:e.createdAt,lastSeenAt:p,createdAt:e.createdAt,updatedAt:p,meta:{teamId:o.id,teamSlug:o.slug,teamName:o.name,framework:r.pick(k),productionBranch:"main",createdAt:e.createdAt.toISOString(),repo:`example-org/${e.name}`,repoType:"github",functionRegions:[r.pick(y)]}}))),await t.insert(a.deployments).values(function(e,t){let{seed:a,now:n}=e,i=(0,u.k)(a,"deployments"),r=i.pick(t).id,s=i.pick(t).id,o=[];for(let e of t){let t=(t,r,s,d,l)=>{let p=(0,c.$)(n,s),m=new Date(p.getTime()+1e3*i.int(3,12)),h="ready"===d?new Date(m.getTime()+1e3*i.int(25,160)):null,g="production"===r?"main":i.pick(I);o.push({id:(0,u.T)(a,"deployment",e.name,t),resourceId:e.id,externalId:`dpl_${(0,u.g)(24,a,"deployment",e.name,t)}`,state:d,target:r,branch:g,commitSha:(0,u.p)(40,a,"commit",e.name,t),commitMessage:l??i.pick(v),source:"git",url:f(`${e.name}-git-${g.replace(/[^a-z0-9]+/g,"-")}-${(0,u.g)(9,a,"deployment-url",e.name,t).toLowerCase()}`),buildingAt:m,readyAt:h,createdAtProvider:p,isCurrent:!1,isPreviousProduction:!1,createdAt:p,updatedAt:h??m})},d=e.id===r,l=i.int(2,5);for(let e=0;e<l;e++){let a=0===e?Math.max(d?5*c.w:0,i.int(1,96)*c.w-i.int(0,40)*c.E):i.int(4+4*e,6+6*e)*c.h+i.int(0,23)*c.w;t(e,"production",a,"ready")}let p=i.int(0,3);for(let e=0;e<p;e++)t(10+e,"preview",i.int(2,240)*c.w+i.int(0,59)*c.E,"ready");d&&t(20,"production",i.int(30,240)*c.E,"error","Refactor the checkout form"),e.id===s&&t(21,"preview",i.int(1,6)*c.E,"building")}for(let e of t){let t=o.filter(t=>t.resourceId===e.id&&"production"===t.target&&"ready"===t.state).map(e=>({id:e.externalId,createdAt:e.createdAtProvider})),{currentId:a,previousId:n}=(0,h.a)(t,null);for(let t of o)t.resourceId===e.id&&(t.isCurrent=t.externalId===a,t.isPreviousProduction=t.externalId===n)}return o}(e,m)),{accountId:d,team:o,apps:m}}async function T(e,t,n){let{db:i,seed:r,now:s}=e,o=(0,u.k)(r,"snapshots"),d=(0,c.$)(s,1e3*o.int(5,40));await i.insert(a.snapshots).values(t.apps.map(e=>{var t,a;let i,r,l,u,p,m=n.filter(t=>t.appId===e.id),h=(0,g.V)({monitors:m.map(e=>e.state),building:!1,dbPaused:!1}),f=m.find(e=>"err"===e.state)??m.find(e=>"warn"===e.state),w=f?.stateSince??new Date(Math.max(...m.map(e=>e.stateSince.getTime())));return{resourceId:e.id,state:h,stateSince:w,collectedAt:d,data:{code:f?.lastStatus??null,latencyMs:m[0]?.lastLatencyMs??null,dbPaused:!1,pageviews:(t=o,a=s,r=Math.floor((i=(0,c.$)(a,t.int(2,25)*c.E)).getTime()/c.w)*c.w,l=t.int(20,400),{enabled:!0,total24h:p=(u=Array.from({length:24},(e,a)=>{let n=r-(23-a)*c.w,i=.15+.85*Math.max(0,Math.sin(((new Date(n).getUTCHours()+7)%24-6)/24*2*Math.PI));return[new Date(n).toISOString(),Math.round(l*i*(.7+.6*t.next()))]})).reduce((e,[,t])=>e+t,0),visitors24h:Math.round(p*(.3+.2*t.next())),hourly:u,readAt:i.toISOString()})}}}))}var x=e.i(169286),D=e.i(273133),E=e.i(688275),M=e.i(697365);let O="demo",C={supabase:"Access token",neon:"API key",firebase:"Service account",turso:"Platform API token",upstash:"Developer API key",cloudflare:"API token"};async function P(e,t){let{db:n,seed:i,now:r}=e,s=(0,u.k)(i,"databases"),o=t.team,d=e=>(0,u.T)(i,"account",e),l=(0,c.$)(r,s.int(4,40)*c.E);await n.insert(a.accounts).values(["supabase","neon","firebase","turso","upstash","cloudflare"].map(e=>{let t=(0,c.$)(r,s.int(60,280)*c.h);return{id:d(e),provider:e,label:"firebase"===e?`${o.slug}-firebase`:o.name,credentialCiphertext:O,credentialIv:O,credentialKind:C[e],status:"ok",lastTestAt:l,lastSyncAt:l,createdAt:t,updatedAt:l}}));let p=(0,u.p)(32,i,"cloudflare-account"),m=[{kind:"supabase_project",provider:"supabase",externalId:(0,u.g)(20,i,"supabase-ref").toLowerCase().replace(/[0-9]/g,"x")},{kind:"neon_project",provider:"neon",externalId:`${s.pick(["silent","quiet","misty","bold","calm"])}-${s.pick(["river","meadow","forest","harbor","dune"])}-${(0,u.p)(8,i,"neon-id")}`},{kind:"firestore",provider:"firebase",externalId:`${o.slug.split("-")[0]}-notes-${(0,u.p)(5,i,"firebase-id")}`},{kind:"turso_database",provider:"turso",externalId:(0,u.T)(i,"turso-db")},{kind:"upstash_redis",provider:"upstash",externalId:(0,u.T)(i,"upstash-db")},{kind:"d1_database",provider:"cloudflare",externalId:(0,u.T)(i,"d1-db")}].map(({kind:e,provider:t,externalId:a})=>{let n=s.pick(_[e]),l=(0,c.$)(r,s.int(40,300)*c.h),m="supabase_project"===e?{orgSlug:o.slug,region:"ap-southeast-1",pgVersion:"17.4.1.054",createdAt:l.toISOString(),status:"ACTIVE_HEALTHY"}:"neon_project"===e?{orgId:`org-${(0,u.p)(8,i,"neon-org")}`,region:"aws-ap-southeast-1",pgVersion:17,createdAt:l.toISOString()}:"firestore"===e?{projectId:a}:"turso_database"===e?{org:o.slug,group:"default",region:"sin"}:"upstash_redis"===e?{region:"ap-southeast-1",type:"free"}:{accountId:p,createdAt:l.toISOString()};return{id:(0,u.T)(i,"db",e),kind:e,name:n,externalId:a,accountId:d(t),meta:m,createdAt:l}});await n.insert(a.resources).values(m.map(e=>({id:e.id,accountId:e.accountId,kind:e.kind,externalId:e.externalId,name:e.name,monitored:!0,meta:e.meta,firstSeenAt:e.createdAt,lastSeenAt:l,createdAt:e.createdAt,updatedAt:l})));let h=e=>m.find(t=>t.kind===e),g=e=>(0,c.$)(r,e*c.E+1e3*s.int(0,50)),f=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),1)),w=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth()+1,1)),A=(r.getTime()-f.getTime())/(w.getTime()-f.getTime()),k=[{id:`ep-${(0,u.g)(12,i,"neon-ep").toLowerCase()}`,branchId:`br-${(0,u.g)(12,i,"neon-br-main").toLowerCase()}`,state:"idle",pendingState:null,disabled:!1,minCu:.25,maxCu:2,lastActive:(0,c.$)(r,s.int(20,300)*c.E).toISOString()}],y=Math.round((8+50*A+s.int(0,10))*3600),I=(0,E.p)({endpoints:k,computeSeconds:y}),v=[{id:h("supabase_project").id,state:"ok",since:(0,c.$)(r,s.int(20,90)*c.h),at:g(1),data:{status:"ACTIVE_HEALTHY",region:"ap-southeast-1",pgVersion:"17.4.1.054",orgSlug:o.slug,freeOrg:!0,lastTrafficAt:(0,c.$)(r,s.int(3,50)*c.E).toISOString(),trafficAt:(0,c.$)(r,s.int(1,4)*c.E).toISOString(),health:[{name:"db",status:"ACTIVE_HEALTHY"},{name:"auth",status:"ACTIVE_HEALTHY"},{name:"rest",status:"ACTIVE_HEALTHY"},{name:"storage",status:"ACTIVE_HEALTHY"}],healthAt:(0,c.$)(r,s.int(1,4)*c.E).toISOString(),sizeBytes:1048576*s.int(38,140)+s.int(0,1048576),sizeAt:(0,c.$)(r,s.int(4,20)*c.w).toISOString(),lastGoodState:"ok"}},{id:h("neon_project").id,state:"ok"===I.state?"ok":"idle",since:(0,c.$)(r,s.int(20,300)*c.E),at:g(s.int(2,9)),data:{region:"aws-ap-southeast-1",pgVersion:17,orgId:h("neon_project").meta.orgId,computeSeconds:y,transferBytes:Math.round((.2+1.6*A)*0x40000000),periodStart:f.toISOString(),periodEnd:w.toISOString(),activeSeconds:Math.round(y/1.4),endpoints:k,branches:[{id:k[0].branchId,name:"main",isDefault:!0,logicalSize:1048576*s.int(120,380)},{id:`br-${(0,u.g)(12,i,"neon-br-preview").toLowerCase()}`,name:"preview/reporting",isDefault:!1,logicalSize:1048576*s.int(60,160)}],lastGoodState:"ok"===I.state?"ok":"idle"}},{id:h("firestore").id,state:"ok",since:(0,c.$)(r,s.int(10,60)*c.h),at:g(1),data:{displayName:h("firestore").name,latencyMs:s.int(70,190),reads:s.int(4e3,22e3),writes:s.int(800,6e3),deletes:s.int(20,400),opsAt:(0,c.$)(r,s.int(10,50)*c.E).toISOString(),authUsers:s.int(80,2400),authAt:(0,c.$)(r,s.int(2,20)*c.w).toISOString(),lastGoodState:"ok"}},{id:h("turso_database").id,state:"ok",since:(0,c.$)(r,s.int(10,60)*c.h),at:g(s.int(5,50)),data:{org:o.slug,group:"default",primaryRegion:"sin",plan:"free",blockReads:!1,blockWrites:!1,rowsRead:Math.round((20+140*A)*1e6),rowsWritten:Math.round((.2+2.2*A)*1e6),storageBytes:1048576*s.int(40,600),orgRowsRead:Math.round((25+160*A)*1e6),orgRowsWritten:Math.round((.3+2.6*A)*1e6),orgStorageBytes:1048576*s.int(700,1400),orgDatabases:3,usageAt:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),lastGoodState:"ok"}},{id:h("upstash_redis").id,state:"ok",since:(0,c.$)(r,s.int(10,60)*c.h),at:g(s.int(5,50)),data:{region:"ap-southeast-1",status:"active",type:"free",dailyCommands:s.int(2e3,9e3),monthlyRequests:Math.round((20+180*A)*1e3)+s.int(0,999),storageBytes:1048576*s.int(6,90),monthlyBandwidthBytes:Math.round((.1+2.4*A)*0x40000000),statsAt:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),lastGoodState:"ok"}},{id:h("d1_database").id,state:"ok",since:(0,c.$)(r,s.int(10,60)*c.h),at:g(s.int(5,50)),data:{accountId:p,createdAt:h("d1_database").createdAt.toISOString(),sizeBytes:1048576*s.int(4,120),numTables:s.int(4,12),readReplication:"disabled",detailsAt:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),rowsRead:s.int(4e4,9e5),rowsWritten:s.int(1e3,3e4),readQueries:s.int(4e3,6e4),writeQueries:s.int(300,6e3),accountRowsRead:s.int(9e5,18e5),accountRowsWritten:s.int(3e4,55e3),accountSizeBytes:1048576*s.int(200,900),accountDatabases:2,usageDay:r.toISOString().slice(0,10),usageAt:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),lastGoodState:"ok"}}];await n.insert(a.snapshots).values(v.map(e=>({resourceId:e.id,state:e.state,stateSince:e.since,collectedAt:e.at,data:e.data}))),await n.insert(a.settings).values({key:M.F,value:{[d("cloudflare")]:{d1:"ok",analytics:"ok",at:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),note:null}},createdAt:(0,c.$)(r,30*c.h),updatedAt:r});let $=["supabase_project","neon_project","turso_database","upstash_redis","firestore","d1_database","supabase_project","neon_project"],b=t.apps.slice(0,Math.max(4,t.apps.length-1));return await n.insert(a.links).values(b.map((e,t)=>({id:(0,u.T)(i,"link",e.name),fromResourceId:e.id,toResourceId:h($[t]).id,kind:"uses_db",source:"manual",createdAt:(0,c.$)(r,s.int(20,90)*c.h),updatedAt:(0,c.$)(r,s.int(1,19)*c.h)}))),await z(e,h("supabase_project").id),await n.insert(a.keepActive).values({resourceId:h("supabase_project").id,keep:!0,autoRestore:!1,lastKeepAliveAt:(0,c.$)(r,s.int(2,20)*c.w),updatedAt:(0,c.$)(r,12*c.h)}),{dbs:m.map(({id:e,kind:t,name:a,externalId:n,accountId:i})=>({id:e,kind:t,name:a,externalId:n,accountId:i})),cloudflare:{accountId:d("cloudflare"),cfAccountId:p,label:o.name}}}async function z(e,t){let{db:a,seed:n,now:i}=e,r=(0,u.k)(n,"compute"),s=(0,c.$)(i,r.int(1,4)*c.E),o=Array.from({length:24},(e,a)=>{let n=new Date((0,D.b)(i).getTime()-a*c.w),s=Math.round((6+18*r.next())*10)/10,o=Math.round((34+14*r.next())*10)/10;return{resourceId:t,hour:n,samples:0===a?Math.max(1,Math.floor((i.getTime()-n.getTime())/(5*c.E))):12,cpuSamples:0===a?1:11,cpuAvg:s,cpuMax:Math.round(10*Math.min(70,s*(1.4+r.next())))/10,memAvg:o,memMax:Math.round(10*Math.min(85,o+6*r.next()))/10,diskPct:9.8,connUsed:r.int(8,22),connMax:60}}),d={cpuPct:o[0].cpuAvg,memPct:o[0].memAvg,diskPct:9.8,connUsed:o[0].connUsed,connMax:60,at:s.toISOString(),prev:null,recent:Array.from({length:6},(e,t)=>({at:(0,c.$)(s,(5-t)*5*c.E).toISOString(),cpu:Math.round((6+18*r.next())*10)/10}))};await a.insert(x.A).values({resourceId:t,keyCiphertext:O,keyIv:O,latest:d,lastTryAt:s,lastOkAt:s,createdAt:(0,c.$)(i,21*c.h),updatedAt:s}),await a.insert(x.l).values(o.filter(e=>e.hour.getTime()<=i.getTime()))}var R=e.i(245710),j=e.i(615089);let B=7*c.h;async function N(e,t,n,i,o,d){let{db:p,seed:m,now:h}=e,g=(0,u.k)(m,"events"),f=[],w=(e,t)=>f.push({id:(0,u.T)(m,"event",e),count:1,...t});for(let e of(0,s.f)(await p.execute(r.B`select external_id, resource_id, state, branch, commit_sha, building_at, ready_at, created_at_provider from ops.deployments
|
|
2
|
-
where created_at_provider > ${new Date(h.getTime()-
|
|
1
|
+
module.exports=[601533,e=>{"use strict";var t=e.i(7584),a=e.i(837137),n=e.i(159203),i=e.i(745614),r=e.i(351674),s=e.i(263251),o=e.i(927262),d=e.i(233711),l=e.i(469762),c=e.i(988866),u=e.i(109505);let p=(e,t)=>`${e} ${t}${1===e?"":"s"}`;async function m(e,t,n,i,m){let h,g,f,w,A,k,y,{db:I,seed:v,now:_}=e,$=(0,u.k)(v,"alerts"),b=(...e)=>(0,u.T)(v,"alert",...e),S=e=>t.apps.find(t=>t.id===e)?.name??"app",T=(0,s.f)(await I.execute(r.B`select resource_id, external_id, state, target, commit_sha, created_at_provider, is_current, is_previous_production from ops.deployments`)),x=T.find(e=>"error"===e.state&&"production"===e.target),D={appId:x.resource_id,appName:S(x.resource_id),sha:x.commit_sha.slice(0,7),createdAt:new Date(x.created_at_provider),currentExternalId:T.find(e=>e.resource_id===x.resource_id&&e.is_current)?.external_id??null},M=(e,t,a)=>{let n=a.resolvedAt??null;return{ruleKey:e,subject:t,severity:o._[e].severity,resourceId:null,accountId:null,okStreak:2*!!n,lastSeenAt:n??(0,c.$)(_,1e3*$.int(5,55)),lastSampleAt:null,notifiedOpen:"info"!==o._[e].severity,lastNotifiedAt:n??new Date(a.startedAt.getTime()+c.E),pending:null,pendingSince:null,...a}},E=m.certSoon,C=(0,d.g)(E.notAfter,_)??0,O=m.zoneSoon,P=(0,d.g)(O.expiresAt,_)??0,B=[M("DeploymentFailed",D.appId,{id:b("firing","deploy"),resourceId:D.appId,title:D.appName,message:`Production deployment ${D.sha} failed.`,startedAt:new Date(D.createdAt.getTime()+1e3*$.int(60,150))}),M("CertExpiringSoon",E.id,{id:b("firing","cert"),resourceId:E.id,title:E.name,message:`The TLS certificate of ${E.name} expires in ${p(C,"day")}.`,startedAt:new Date(E.notAfter.getTime()-14*c.h+$.int(5,55)*c.E)}),M("DomainExpiringSoon",O.id,{id:b("firing","zone"),resourceId:O.id,title:O.name,message:`${O.name} expires in ${p(P,"day")}.`,startedAt:new Date(O.expiresAt.getTime()-30*c.h+$.int(5,55)*c.E)})],z=n.outage,R=n.monitors.find(e=>e.id===z.monitorId),j=t.apps.find(e=>e.id!==D.appId)??t.apps[0],U=e=>i.dbs.find(t=>t.kind===e),N=(e,t)=>(0,c.$)(_,e*c.h+t*c.w+$.int(0,50)*c.E),F=(e,t)=>new Date(e.getTime()+t*c.E),L=(e,t)=>{let a=n.monitors.find(e=>e.id===t.monitorId);return M("HighLatency",a.id,{id:b("resolved",e),resourceId:a.appId,title:`${S(a.appId)} ${a.path}`,message:`p95 ${t.p95.toLocaleString("en-US")} ms over the last 10 minutes (limit 1,500 ms).`,startedAt:t.firedAt,resolvedAt:t.resolvedAt})},H={start:N(4,$.int(1,9)),sha:(0,u.p)(7,v,"old-failed",j.name)},K=U("upstash_redis"),V=U("firestore"),W=U("supabase_project"),G=i.cloudflare.label,q={outage:M("MonitorDown",R.id,{id:b("resolved","outage"),resourceId:R.appId,title:`${S(R.appId)} ${R.path}`,message:`${(0,l.F)(R.url)} returned HTTP 503 on 3 consecutive checks.`,startedAt:new Date(z.startedAt.getTime()+10*c.E),resolvedAt:z.recoveredAt}),latencyA:L("latency-a",n.slow[0]),latencyB:L("latency-b",n.slow[1]),oldDeploy:M("DeploymentFailed",j.id,{id:b("resolved","old-deploy"),resourceId:j.id,title:j.name,message:`Production deployment ${H.sha} failed.`,startedAt:H.start,resolvedAt:F(H.start,$.int(35,70))}),collector:(h=N(6,$.int(1,10)),M("CollectorStale","collector",{id:b("resolved","collector"),title:"collector",message:"The last minute run finished 6 min ago.",startedAt:h,resolvedAt:F(h,$.int(4,9))})),autoPause:(g=N(6,$.int(12,20)),M("AutoPauseRisk",W.id,{id:b("resolved","auto-pause"),resourceId:W.id,title:W.name,message:"No API traffic for 4 days. Supabase pauses free projects after about 7 days.",startedAt:g,resolvedAt:F(g,60*$.int(20,30))})),quota:(f=N(6,$.int(1,8)),M("DbQuotaHigh",K.id,{id:b("resolved","db-quota"),resourceId:K.id,title:K.name,message:`${K.name}: Commands at ${$.int(81,88)}% of the free plan.`,startedAt:f,resolvedAt:F(f,60*$.int(3,6))})),firestore:(w=N(3,$.int(1,6)),M("FirestoreQuotaHigh",V.id,{id:b("resolved","firestore"),resourceId:V.id,title:V.name,message:`${V.name} read ${$.int(40500,46e3).toLocaleString("en-US")} of 50,000 documents today (${$.int(81,92)}%).`,startedAt:w,resolvedAt:F(w,60*$.int(2,5))})),proxied:(A=N(5,$.int(12,20)),M("DnsProxiedToVercel",(k=m.vercelRecord).id,{id:b("resolved","proxied"),resourceId:k.zoneId,title:k.name,message:`${k.name} points to Vercel through the Cloudflare proxy. Vercel recommends DNS only.`,startedAt:A,resolvedAt:F(A,24*$.int(2,4)*60)})),credential:(y=N(6,$.int(14,22)),M("CredentialExpiring",i.cloudflare.accountId,{id:b("resolved","credential"),accountId:i.cloudflare.accountId,title:`cloudflare \xb7 ${G}`,message:`The cloudflare credential ${G} expires in 9 days.`,startedAt:y,resolvedAt:F(y,24*$.int(1,2)*60+$.int(10,300))}))};return await I.insert(a.alerts).values([...B,...Object.values(q)]),{firing:{deploy:B[0].id,cert:B[1].id,zone:B[2].id},resolved:{outage:q.outage.id,oldDeploy:{id:q.oldDeploy.id,appId:j.id,appName:j.name,previousExternalId:T.find(e=>e.resource_id===j.id&&e.is_previous_production)?.external_id??null,startedAt:q.oldDeploy.startedAt,resolvedAt:q.oldDeploy.resolvedAt},credential:{title:q.credential.title,resolvedAt:q.credential.resolvedAt}},failedDeploy:D}}var h=e.i(646324),g=e.i(306556);let f=e=>`${e}.example`,w=["acme-shop","orbit-blog","nimbus-docs","pixel-forge","harbor-api","lumen-portal","quartz-admin","tidal-landing","ember-status","cobalt-store","willow-wiki","atlas-dash","sprout-crm","comet-links","fable-notes","maple-events"],A=[{name:"Juniper Labs",slug:"juniper-labs"},{name:"Kestrel Works",slug:"kestrel-works"},{name:"Brightfield Studio",slug:"brightfield-studio"},{name:"Saltmarsh Digital",slug:"saltmarsh-digital"}],k=["nextjs","nextjs","nextjs","vite","astro","sveltekit","remix"],y=["sin1","iad1","fra1","hnd1","sfo1"],I=["feat/checkout-v2","feat/dark-mode","fix/login-redirect","feat/search","chore/deps","fix/image-sizes","feat/newsletter","fix/cache-headers"],v=["Fix cart total rounding","Add dark mode toggle","Update dependencies","Speed up the product grid","Fix login redirect loop","Add sitemap","Tidy the footer links","Cache the pricing page","Add newsletter signup","Fix image sizes on mobile","Bump Next.js","Add search to the docs","Handle empty states","Retry failed webhooks","Move env checks to startup","Shorten the onboarding copy","Add health endpoint","Fix timezone in the event list","Split the dashboard bundle","Add RSS feed"],_={supabase_project:["shop-prod","portal-main","crm-core","store-db"],neon_project:["analytics","reporting","billing-ledger","metrics-pg"],firestore:["notes-app","mobile-sync","feedback-inbox","event-chat"],turso_database:["edge-cache","geo-lookup","docs-search","flags"],upstash_redis:["sessions","rate-limits","queue-cache","page-cache"],d1_database:["events-log","link-clicks","form-entries","audit-trail"]},$=["acme-studio","orbit-labs","nimbus-works","pixel-harbor","tidal-digital","ember-co"],b=[{level:"error",method:"POST",path:"/api/checkout",status:500,message:"TypeError: Cannot read properties of undefined (reading 'price')"},{level:"warning",method:"GET",path:"/products",status:200,message:"Slow query: products list took 1840 ms"},{level:"error",method:"GET",path:"/api/search",status:504,message:"Task timed out after 10.02 seconds"},{level:"warning",method:"GET",path:"/",status:200,message:"Image optimization fell back to the original file (unsupported format)"},{level:"error",method:"POST",path:"/api/webhooks/payments",status:401,message:"Webhook signature didn't match"},{level:"fatal",method:"GET",path:"/api/report",status:500,message:"Error: connect ECONNREFUSED (database connection pool exhausted)"},{level:"warning",method:"GET",path:"/blog/[slug]",status:404,message:'Post not found for slug "spring-sale-2025"'},{level:"error",method:"PUT",path:"/api/profile",status:422,message:"ZodError: email must be a valid email"}];async function S(e){let{db:t,seed:n,now:i}=e,r=(0,u.k)(n,"apps"),s=r.pick(A),o={id:`team_${(0,u.g)(24,n,"team")}`,name:s.name,slug:s.slug},d=(0,u.T)(n,"account","vercel"),l=(0,c.$)(i,r.int(120,300)*c.h),p=(0,c.$)(i,r.int(3,50)*c.E);await t.insert(a.accounts).values({id:d,provider:"vercel",label:o.name,credentialCiphertext:"demo",credentialIv:"demo",credentialKind:"Access token",status:"ok",lastTestAt:p,lastSyncAt:p,createdAt:l,updatedAt:p});let m=r.shuffle(w).slice(0,r.int(5,8)).sort().map((e,t)=>({id:(0,u.T)(n,"app",e),index:t,name:e,externalId:`prj_${(0,u.g)(28,n,"project",e)}`,host:f(e),createdAt:(0,c.$)(i,r.int(95,400)*c.h-r.int(0,23)*c.w)}));return await t.insert(a.resources).values(m.map(e=>({id:e.id,accountId:d,kind:"app",externalId:e.externalId,name:e.name,monitored:!0,firstSeenAt:e.createdAt,lastSeenAt:p,createdAt:e.createdAt,updatedAt:p,meta:{teamId:o.id,teamSlug:o.slug,teamName:o.name,framework:r.pick(k),productionBranch:"main",createdAt:e.createdAt.toISOString(),repo:`example-org/${e.name}`,repoType:"github",functionRegions:[r.pick(y)]}}))),await t.insert(a.deployments).values(function(e,t){let{seed:a,now:n}=e,i=(0,u.k)(a,"deployments"),r=i.pick(t).id,s=i.pick(t).id,o=[];for(let e of t){let t=(t,r,s,d,l)=>{let p=(0,c.$)(n,s),m=new Date(p.getTime()+1e3*i.int(3,12)),h="ready"===d?new Date(m.getTime()+1e3*i.int(25,160)):null,g="production"===r?"main":i.pick(I);o.push({id:(0,u.T)(a,"deployment",e.name,t),resourceId:e.id,externalId:`dpl_${(0,u.g)(24,a,"deployment",e.name,t)}`,state:d,target:r,branch:g,commitSha:(0,u.p)(40,a,"commit",e.name,t),commitMessage:l??i.pick(v),source:"git",url:f(`${e.name}-git-${g.replace(/[^a-z0-9]+/g,"-")}-${(0,u.g)(9,a,"deployment-url",e.name,t).toLowerCase()}`),buildingAt:m,readyAt:h,createdAtProvider:p,isCurrent:!1,isPreviousProduction:!1,createdAt:p,updatedAt:h??m})},d=e.id===r,l=i.int(2,5);for(let e=0;e<l;e++){let a=0===e?Math.max(d?5*c.w:0,i.int(1,96)*c.w-i.int(0,40)*c.E):i.int(4+4*e,6+6*e)*c.h+i.int(0,23)*c.w;t(e,"production",a,"ready")}let p=i.int(0,3);for(let e=0;e<p;e++)t(10+e,"preview",i.int(2,240)*c.w+i.int(0,59)*c.E,"ready");d&&t(20,"production",i.int(30,240)*c.E,"error","Refactor the checkout form"),e.id===s&&t(21,"preview",i.int(1,6)*c.E,"building")}for(let e of t){let t=o.filter(t=>t.resourceId===e.id&&"production"===t.target&&"ready"===t.state).map(e=>({id:e.externalId,createdAt:e.createdAtProvider})),{currentId:a,previousId:n}=(0,h.a)(t,null);for(let t of o)t.resourceId===e.id&&(t.isCurrent=t.externalId===a,t.isPreviousProduction=t.externalId===n)}return o}(e,m)),{accountId:d,team:o,apps:m}}async function T(e,t,n){let{db:i,seed:r,now:s}=e,o=(0,u.k)(r,"snapshots"),d=(0,c.$)(s,1e3*o.int(5,40));await i.insert(a.snapshots).values(t.apps.map(e=>{var t,a;let i,r,l,u,p,m=n.filter(t=>t.appId===e.id),h=(0,g.V)({monitors:m.map(e=>e.state),building:!1,dbPaused:!1}),f=m.find(e=>"err"===e.state)??m.find(e=>"warn"===e.state),w=f?.stateSince??new Date(Math.max(...m.map(e=>e.stateSince.getTime())));return{resourceId:e.id,state:h,stateSince:w,collectedAt:d,data:{code:f?.lastStatus??null,latencyMs:m[0]?.lastLatencyMs??null,dbPaused:!1,pageviews:(t=o,a=s,r=Math.floor((i=(0,c.$)(a,t.int(2,25)*c.E)).getTime()/c.w)*c.w,l=t.int(20,400),{enabled:!0,total24h:p=(u=Array.from({length:24},(e,a)=>{let n=r-(23-a)*c.w,i=.15+.85*Math.max(0,Math.sin(((new Date(n).getUTCHours()+7)%24-6)/24*2*Math.PI));return[new Date(n).toISOString(),Math.round(l*i*(.7+.6*t.next()))]})).reduce((e,[,t])=>e+t,0),visitors24h:Math.round(p*(.3+.2*t.next())),hourly:u,readAt:i.toISOString()})}}}))}var x=e.i(169286),D=e.i(273133),M=e.i(688275),E=e.i(697365);let C="demo",O={supabase:"Access token",neon:"API key",firebase:"Service account",turso:"Platform API token",upstash:"Developer API key",cloudflare:"API token"};async function P(e,t){let{db:n,seed:i,now:r}=e,s=(0,u.k)(i,"databases"),o=t.team,d=e=>(0,u.T)(i,"account",e),l=(0,c.$)(r,s.int(4,40)*c.E);await n.insert(a.accounts).values(["supabase","neon","firebase","turso","upstash","cloudflare"].map(e=>{let t=(0,c.$)(r,s.int(60,280)*c.h);return{id:d(e),provider:e,label:"firebase"===e?`${o.slug}-firebase`:o.name,credentialCiphertext:C,credentialIv:C,credentialKind:O[e],status:"ok",lastTestAt:l,lastSyncAt:l,createdAt:t,updatedAt:l}}));let p=(0,u.p)(32,i,"cloudflare-account"),m=[{kind:"supabase_project",provider:"supabase",externalId:(0,u.g)(20,i,"supabase-ref").toLowerCase().replace(/[0-9]/g,"x")},{kind:"neon_project",provider:"neon",externalId:`${s.pick(["silent","quiet","misty","bold","calm"])}-${s.pick(["river","meadow","forest","harbor","dune"])}-${(0,u.p)(8,i,"neon-id")}`},{kind:"firestore",provider:"firebase",externalId:`${o.slug.split("-")[0]}-notes-${(0,u.p)(5,i,"firebase-id")}`},{kind:"turso_database",provider:"turso",externalId:(0,u.T)(i,"turso-db")},{kind:"upstash_redis",provider:"upstash",externalId:(0,u.T)(i,"upstash-db")},{kind:"d1_database",provider:"cloudflare",externalId:(0,u.T)(i,"d1-db")}].map(({kind:e,provider:t,externalId:a})=>{let n=s.pick(_[e]),l=(0,c.$)(r,s.int(40,300)*c.h),m="supabase_project"===e?{orgSlug:o.slug,region:"ap-southeast-1",pgVersion:"17.4.1.054",createdAt:l.toISOString(),status:"ACTIVE_HEALTHY"}:"neon_project"===e?{orgId:`org-${(0,u.p)(8,i,"neon-org")}`,region:"aws-ap-southeast-1",pgVersion:17,createdAt:l.toISOString()}:"firestore"===e?{projectId:a}:"turso_database"===e?{org:o.slug,group:"default",region:"sin"}:"upstash_redis"===e?{region:"ap-southeast-1",type:"free"}:{accountId:p,createdAt:l.toISOString()};return{id:(0,u.T)(i,"db",e),kind:e,name:n,externalId:a,accountId:d(t),meta:m,createdAt:l}});await n.insert(a.resources).values(m.map(e=>({id:e.id,accountId:e.accountId,kind:e.kind,externalId:e.externalId,name:e.name,monitored:!0,meta:e.meta,firstSeenAt:e.createdAt,lastSeenAt:l,createdAt:e.createdAt,updatedAt:l})));let h=e=>m.find(t=>t.kind===e),g=e=>(0,c.$)(r,e*c.E+1e3*s.int(0,50)),f=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),1)),w=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth()+1,1)),A=(r.getTime()-f.getTime())/(w.getTime()-f.getTime()),k=[{id:`ep-${(0,u.g)(12,i,"neon-ep").toLowerCase()}`,branchId:`br-${(0,u.g)(12,i,"neon-br-main").toLowerCase()}`,state:"idle",pendingState:null,disabled:!1,minCu:.25,maxCu:2,lastActive:(0,c.$)(r,s.int(20,300)*c.E).toISOString()}],y=Math.round((8+50*A+s.int(0,10))*3600),I=(0,M.p)({endpoints:k,computeSeconds:y}),v=[{id:h("supabase_project").id,state:"ok",since:(0,c.$)(r,s.int(20,90)*c.h),at:g(1),data:{status:"ACTIVE_HEALTHY",region:"ap-southeast-1",pgVersion:"17.4.1.054",orgSlug:o.slug,freeOrg:!0,lastTrafficAt:(0,c.$)(r,s.int(3,50)*c.E).toISOString(),trafficAt:(0,c.$)(r,s.int(1,4)*c.E).toISOString(),health:[{name:"db",status:"ACTIVE_HEALTHY"},{name:"auth",status:"ACTIVE_HEALTHY"},{name:"rest",status:"ACTIVE_HEALTHY"},{name:"storage",status:"ACTIVE_HEALTHY"}],healthAt:(0,c.$)(r,s.int(1,4)*c.E).toISOString(),sizeBytes:1048576*s.int(38,140)+s.int(0,1048576),sizeAt:(0,c.$)(r,s.int(4,20)*c.w).toISOString(),lastGoodState:"ok"}},{id:h("neon_project").id,state:"ok"===I.state?"ok":"idle",since:(0,c.$)(r,s.int(20,300)*c.E),at:g(s.int(2,9)),data:{region:"aws-ap-southeast-1",pgVersion:17,orgId:h("neon_project").meta.orgId,computeSeconds:y,transferBytes:Math.round((.2+1.6*A)*0x40000000),periodStart:f.toISOString(),periodEnd:w.toISOString(),activeSeconds:Math.round(y/1.4),endpoints:k,branches:[{id:k[0].branchId,name:"main",isDefault:!0,logicalSize:1048576*s.int(120,380)},{id:`br-${(0,u.g)(12,i,"neon-br-preview").toLowerCase()}`,name:"preview/reporting",isDefault:!1,logicalSize:1048576*s.int(60,160)}],lastGoodState:"ok"===I.state?"ok":"idle"}},{id:h("firestore").id,state:"ok",since:(0,c.$)(r,s.int(10,60)*c.h),at:g(1),data:{displayName:h("firestore").name,latencyMs:s.int(70,190),reads:s.int(4e3,22e3),writes:s.int(800,6e3),deletes:s.int(20,400),opsAt:(0,c.$)(r,s.int(10,50)*c.E).toISOString(),authUsers:s.int(80,2400),authAt:(0,c.$)(r,s.int(2,20)*c.w).toISOString(),lastGoodState:"ok"}},{id:h("turso_database").id,state:"ok",since:(0,c.$)(r,s.int(10,60)*c.h),at:g(s.int(5,50)),data:{org:o.slug,group:"default",primaryRegion:"sin",plan:"free",blockReads:!1,blockWrites:!1,rowsRead:Math.round((20+140*A)*1e6),rowsWritten:Math.round((.2+2.2*A)*1e6),storageBytes:1048576*s.int(40,600),orgRowsRead:Math.round((25+160*A)*1e6),orgRowsWritten:Math.round((.3+2.6*A)*1e6),orgStorageBytes:1048576*s.int(700,1400),orgDatabases:3,usageAt:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),lastGoodState:"ok"}},{id:h("upstash_redis").id,state:"ok",since:(0,c.$)(r,s.int(10,60)*c.h),at:g(s.int(5,50)),data:{region:"ap-southeast-1",status:"active",type:"free",dailyCommands:s.int(2e3,9e3),monthlyRequests:Math.round((20+180*A)*1e3)+s.int(0,999),storageBytes:1048576*s.int(6,90),monthlyBandwidthBytes:Math.round((.1+2.4*A)*0x40000000),statsAt:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),lastGoodState:"ok"}},{id:h("d1_database").id,state:"ok",since:(0,c.$)(r,s.int(10,60)*c.h),at:g(s.int(5,50)),data:{accountId:p,createdAt:h("d1_database").createdAt.toISOString(),sizeBytes:1048576*s.int(4,120),numTables:s.int(4,12),readReplication:"disabled",detailsAt:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),rowsRead:s.int(4e4,9e5),rowsWritten:s.int(1e3,3e4),readQueries:s.int(4e3,6e4),writeQueries:s.int(300,6e3),accountRowsRead:s.int(9e5,18e5),accountRowsWritten:s.int(3e4,55e3),accountSizeBytes:1048576*s.int(200,900),accountDatabases:2,usageDay:r.toISOString().slice(0,10),usageAt:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),lastGoodState:"ok"}}];await n.insert(a.snapshots).values(v.map(e=>({resourceId:e.id,state:e.state,stateSince:e.since,collectedAt:e.at,data:e.data}))),await n.insert(a.settings).values({key:E.F,value:{[d("cloudflare")]:{d1:"ok",analytics:"ok",at:(0,c.$)(r,s.int(5,50)*c.E).toISOString(),note:null}},createdAt:(0,c.$)(r,30*c.h),updatedAt:r});let $=["supabase_project","neon_project","turso_database","upstash_redis","firestore","d1_database","supabase_project","neon_project"],b=t.apps.slice(0,Math.max(4,t.apps.length-1));return await n.insert(a.links).values(b.map((e,t)=>({id:(0,u.T)(i,"link",e.name),fromResourceId:e.id,toResourceId:h($[t]).id,kind:"uses_db",source:"manual",createdAt:(0,c.$)(r,s.int(20,90)*c.h),updatedAt:(0,c.$)(r,s.int(1,19)*c.h)}))),await B(e,h("supabase_project").id),await n.insert(a.keepActive).values({resourceId:h("supabase_project").id,keep:!0,autoRestore:!1,lastKeepAliveAt:(0,c.$)(r,s.int(2,20)*c.w),updatedAt:(0,c.$)(r,12*c.h)}),{dbs:m.map(({id:e,kind:t,name:a,externalId:n,accountId:i})=>({id:e,kind:t,name:a,externalId:n,accountId:i})),cloudflare:{accountId:d("cloudflare"),cfAccountId:p,label:o.name}}}async function B(e,t){let{db:a,seed:n,now:i}=e,r=(0,u.k)(n,"compute"),s=(0,c.$)(i,r.int(1,4)*c.E),o=Array.from({length:24},(e,a)=>{let n=new Date((0,D.b)(i).getTime()-a*c.w),s=Math.round((6+18*r.next())*10)/10,o=Math.round((34+14*r.next())*10)/10,d=Math.round((58+14*r.next())*10)/10;return{resourceId:t,hour:n,samples:0===a?Math.max(1,Math.floor((i.getTime()-n.getTime())/(5*c.E))):12,cpuSamples:0===a?1:11,cpuAvg:s,cpuMax:Math.round(10*Math.min(70,s*(1.4+r.next())))/10,memAvg:o,memMax:Math.round(10*Math.min(85,o+6*r.next()))/10,diskPct:9.8,connUsed:r.int(8,22),connMax:60,memTotalB:0x40000000,memUsedB:Math.round(0x40000000*o/100),memCacheB:Math.round(0x40000000*(.28+.06*r.next())),swapB:Math.round((60+50*r.next())*1048576),commitPct:d,commitMax:Math.round(10*Math.min(84,d+5*r.next()))/10}}),d={cpuPct:o[0].cpuAvg,memPct:o[0].memAvg,diskPct:9.8,connUsed:o[0].connUsed,connMax:60,at:s.toISOString(),prev:null,mem:{totalB:0x40000000,usedB:o[0].memUsedB,cacheB:o[0].memCacheB,swapB:o[0].swapB},commit:{usedB:Math.round(1503238553.6*o[0].commitPct/100),limitB:0x5999999a,pct:o[0].commitPct},recent:Array.from({length:6},(e,t)=>({at:(0,c.$)(s,(5-t)*5*c.E).toISOString(),cpu:Math.round((6+18*r.next())*10)/10}))};await a.insert(x.A).values({resourceId:t,keyCiphertext:C,keyIv:C,latest:d,lastTryAt:s,lastOkAt:s,createdAt:(0,c.$)(i,21*c.h),updatedAt:s}),await a.insert(x.l).values(o.filter(e=>e.hour.getTime()<=i.getTime()))}var z=e.i(245710),R=e.i(615089);let j=7*c.h;async function U(e,t,n,i,o,d){let{db:p,seed:m,now:h}=e,g=(0,u.k)(m,"events"),f=[],w=(e,t)=>f.push({id:(0,u.T)(m,"event",e),count:1,...t});for(let e of(0,s.f)(await p.execute(r.B`select external_id, resource_id, state, branch, commit_sha, building_at, ready_at, created_at_provider from ops.deployments
|
|
2
|
+
where created_at_provider > ${new Date(h.getTime()-j).toISOString()}::timestamptz`))){let t=`${e.branch??"unknown branch"} \xb7 ${e.commit_sha?e.commit_sha.slice(0,7):"no commit"}`,a=new Date(e.created_at_provider),n=e.building_at?new Date(e.building_at):a;w(`${e.external_id}:start`,{at:n,resourceId:e.resource_id,type:"deployment",kind:"build",message:"Deployment started",detail:t,reason:"DeployStarted"}),"ready"===e.state&&e.ready_at&&w(`${e.external_id}:ready`,{at:new Date(e.ready_at),resourceId:e.resource_id,type:"deployment",kind:"ok",message:"Deployment ready",detail:t,reason:"DeployReady"}),"error"===e.state&&w(`${e.external_id}:failed`,{at:new Date(n.getTime()+1e3*g.int(40,110)),resourceId:e.resource_id,type:"deployment",kind:"fail",message:"Deployment failed",detail:t,reason:"DeployFailed"})}let A=n.outage,k=n.monitors.find(e=>e.id===A.monitorId),y=(e,t,a,n,i,r,s)=>w(e,{at:t,resourceId:a,type:"monitor",kind:n,message:i,detail:r,reason:s});y("outage:warn",A.startedAt,A.appId,"warn","Monitor degraded","HTTP 503","MonitorDegraded"),y("outage:err",new Date(A.startedAt.getTime()+10*c.E),A.appId,"err","Monitor down","HTTP 503 on 3 checks in a row","MonitorDown"),y("outage:ok",A.recoveredAt,A.appId,"ok","Monitor recovered",`${k.path} answers again`,"MonitorRecovered"),n.degraded&&y("degraded:warn",n.degraded.since,n.degraded.appId,"warn","Monitor degraded","No answer within 5 s","MonitorDegraded");let I=o.certSoon,v=o.zoneSoon,_=new Date(I.notAfter.getTime()-14*c.h+g.int(5,50)*c.E),$=new Date(v.expiresAt.getTime()-30*c.h+g.int(5,50)*c.E);w("net:cert",{at:_,resourceId:I.id,type:"system",kind:"warn",message:`${I.name} needs attention`,detail:"Certificate expires in 13 days",reason:"NetworkAttention"}),w("net:zone",{at:$,resourceId:v.id,type:"system",kind:"warn",message:`${v.name} needs attention`,detail:"Domain expires in 29 days",reason:"NetworkAttention"});let b=new Date(h);b.setUTCHours(20,0,0,0),b.getTime()>h.getTime()-5*c.E&&b.setTime(b.getTime()-c.h);for(let e=0;e<7;e++){let t=new Date(b.getTime()-e*c.h+1e3*g.int(20,90));w(`daily:${e}`,{at:t,resourceId:null,type:"system",kind:"ok",message:"Daily jobs finished",detail:"Rollups, retention, certificates and domain expiry",reason:"DailyFinished"})}let S=(0,R.demoUserId)(m),T=(e,t,a,n,i=null)=>w(`action:${e}`,{at:(0,c.$)(h,t*c.h+g.int(1,10)*c.w+g.int(0,59)*c.E),resourceId:n,type:"action",kind:"ok",message:a,detail:i,actorUserId:S,reason:"Action"}),x=n.monitors.find(e=>"/api/health"===e.path)??n.monitors[0],D=t.apps[0],M=i.dbs.find(e=>"supabase_project"===e.kind);T("monitor-added",6,`Monitor added: ${(0,l.F)(x.url)}`,x.appId),T("db-link",5,`Database link: ${D.name} → ${M.name}`,D.id),T("keep-active",5,`Keep active on: ${M.name}`,M.id),T("rule",4,"Alert rule edited: HighLatency",null,"threshold 1,500 ms"),T("maintenance",3,"Maintenance window added",null,`Sundays 02:00 ${(0,z.D)()}, 30 min`),T("check-now",1,`Check now: ${(0,l.F)(k.url)}`,k.appId);let E=d.resolved.credential;w("action:credential",{at:new Date(E.resolvedAt.getTime()-g.int(2,9)*c.E),resourceId:null,type:"action",kind:"ok",message:`Credential replaced: ${E.title}`,detail:"Tested and stored; it no longer expires soon",actorUserId:S,reason:"Action"}),w("action:auto-recheck",{at:new Date(A.startedAt.getTime()+11*c.E+3e3),resourceId:k.appId,type:"action",kind:"err",message:`Auto-actions: Check now: ${(0,l.F)(k.url)}`,detail:null,actorUserId:null,reason:"Action"}),await p.insert(a.events).values(f.sort((e,t)=>e.at.getTime()-t.at.getTime()))}let N="76.76.21.21";async function F(e,t,n){let{db:i,seed:r,now:s}=e,o=(0,u.k)(r,"network"),l=e=>(0,c.$)(s,o.int(10,60*e)*c.E).toISOString(),p=n.cloudflare,m=o.shuffle($).slice(0,2).map((e,t)=>({id:(0,u.T)(r,"zone",e),name:f(e),expiresAt:new Date(1===t?s.getTime()+o.int(12,24)*c.h+o.int(1,20)*c.w:s.getTime()+o.int(200,600)*c.h)})),h=e=>e.split("-").slice(1).join("-")||e,g=t.apps,w=[{name:m[0].name,app:g[0]},...[0,1,2].map(e=>({name:`${h(g[e].name)}.${m[0].name}`,app:g[e]})),...[3,4].map(e=>({name:`${h(g[e%g.length].name)}.${m[1].name}`,app:g[e%g.length]}))],A=o.int(1,3),k=w.map((e,t)=>({id:(0,u.T)(r,"domain",e.name),name:e.name,appId:e.app.id,notAfter:new Date(t===A?s.getTime()+o.int(4,9)*c.h+o.int(1,20)*c.w:s.getTime()+o.int(30,85)*c.h)})),y=(e,t,a,n,i,s=null)=>({id:(0,u.p)(32,r,"dns",e,t,a),type:t,name:a,content:n,proxied:i,ttl:i?1:300,comment:s}),I=m.map(e=>{let t=[...k.filter(t=>t.name===e.name||t.name.endsWith(`.${e.name}`)).map(t=>y(e.name,"A",t.name,N,!1,"Vercel")),y(e.name,"MX",e.name,f("mx1.mail"),!1),y(e.name,"TXT",e.name,`v=spf1 include:_spf.${f("mail")} ~all`,!1),y(e.name,"A",`legacy.${e.name}`,`192.0.2.${o.int(10,200)}`,!0,"Old server, kept for redirects")],a={expiresAt:e.expiresAt.toISOString(),registrar:"Example Registrar, Inc.",error:null,checkedAt:l(20)},n={status:"active",paused:!1,nameServers:[f("ada.ns"),f("bob.ns")],accountId:p.cfAccountId,checkedAt:l(1)},i=(0,d.G)({status:n.status,paused:n.paused,rdap:a},s),r={zone:n,ssl:{mode:"strict",error:null},records:t,recordsTruncated:!1,cfErrors:[],certs:[{type:"universal",status:"active",hosts:[e.name,`*.${e.name}`],expiresOn:new Date(s.getTime()+o.int(40,80)*c.h).toISOString()}],rdap:a,reasons:i.reasons};return{z:e,records:t,rdap:a,state:i.state,data:r}}),v=(0,c.$)(s,o.int(150,380)*c.h),_=(0,c.$)(s,o.int(5,50)*c.E);await i.insert(a.resources).values(m.map(e=>({id:e.id,accountId:p.accountId,kind:"zone",externalId:(0,u.p)(32,r,"zone-id",e.name),name:e.name,monitored:!0,meta:{status:"active",accountId:p.cfAccountId,accountName:p.label},firstSeenAt:v,lastSeenAt:_,createdAt:v,updatedAt:_}))),await i.insert(a.resources).values(k.map(e=>{let a=g.find(t=>t.id===e.appId);return{id:e.id,accountId:t.accountId,kind:"domain",externalId:e.name,name:e.name,parentId:e.appId,monitored:!0,meta:{redirect:null,verified:!0,projectId:a.externalId},firstSeenAt:v,lastSeenAt:_,createdAt:v,updatedAt:_}}));let b=["Let's Encrypt","Google Trust Services"];await i.insert(a.snapshots).values([...I.map(e=>({resourceId:e.z.id,state:e.state,stateSince:"ok"===e.state?v:new Date(e.z.expiresAt.getTime()-30*c.h),data:e.data,collectedAt:_})),...k.map(e=>{let t=I.find(t=>e.name===t.z.name||e.name.endsWith(`.${t.z.name}`)),a={notAfter:e.notAfter.toISOString(),issuer:o.pick(b),authorized:!0,error:null,checkedAt:l(19)},n={misconfigured:!1,configuredBy:"A",recommendedIps:[N],checkedAt:l(6)},i=(0,d.k)({host:e.name,tls:a,vercel:n,records:(0,d.Q)(e.name,t.records),zoneRdap:t.rdap},s),r="ok"===i.state?v:new Date(Math.min(e.notAfter.getTime()-14*c.h,t.z.expiresAt.getTime()-30*c.h));return{resourceId:e.id,state:i.state,stateSince:r,data:{tls:a,vercel:n,reasons:i.reasons},collectedAt:_}})]);let S=I[0].records.find(e=>"A"===e.type&&e.name===m[0].name&&e.content===N);return{zones:m,domains:k,certSoon:k[A],zoneSoon:m[1],vercelRecord:{id:S.id,name:S.name,zoneId:m[0].id}}}let L=["vercel","supabase","neon","cloudflare","firebase","gcp"];async function H(e,t){let{db:n,seed:i,now:o}=e,d=(0,u.k)(i,"logs"),l=(0,s.f)(await n.execute(r.B`select resource_id, external_id from ops.deployments where is_current`)),p=d.shuffle(t.apps).slice(0,3).flatMap((e,t)=>Array.from({length:d.int(4,8)},(a,n)=>{let r=d.pick(b);return{id:(0,u.T)(i,"log",e.name,n),resourceId:e.id,deploymentId:l.find(t=>t.resource_id===e.id)?.external_id??`dpl_${(0,u.g)(24,i,"log-dpl",t)}`,rowId:`${(0,u.g)(10,i,"log-row",e.name,n).toLowerCase()}-${n}`,at:(0,c.$)(o,d.int(3,2760)*c.E+1e3*d.int(0,59)),level:r.level,message:r.message,requestMethod:r.method,requestPath:r.path,statusCode:r.status,source:"serverless"}}));await n.insert(a.storedLogs).values(p)}async function K(e){let{db:t,seed:n,now:i}=e,r=(0,u.k)(n,"provider-status"),s=(0,c.$)(i,r.int(1,4)*c.E);await t.insert(a.providerStatus).values(L.map(e=>"cloudflare"===e?{provider:e,state:"info",indicator:"maintenance",description:"Scheduled maintenance",checkedAt:s,lastOkAt:s,error:null,incidents:[{name:"Scheduled maintenance in one Asia-Pacific data center",impact:"maintenance",startedAt:(0,c.$)(i,r.int(1,3)*c.w).toISOString(),url:null}]}:{provider:e,state:"ok",indicator:"none",description:"All Systems Operational",incidents:[],checkedAt:s,lastOkAt:s,error:null}))}async function V(e){let{db:t,seed:a,now:n}=e,i=(0,u.k)(a,"ai-usage"),s=(0,u.T)(a,"ai-agent","console"),o=i.int(70,140),d=[],l=[],p=[],m=[],h=[],g=[];for(let e=0;e<o;e++){d.push(n.getTime()-i.int(2,10080)*c.E);let e=i.chance(.04);h.push(e?429:200),l.push(e?0:i.int(600,4200)),p.push(e?0:i.int(80,700)),m.push(e?i.int(80,300):i.int(700,4800)),g.push(i.int(1,2))}let f=e=>e.reduce((e,t)=>e+t,0),w=new Date(Math.max(...d));await t.execute(r.B`
|
|
3
3
|
insert into ops.ai_agents (id, key_id, client_name, client_version, via, user_agent, first_seen_at, last_seen_at, requests, tokens_in, tokens_out, recent)
|
|
4
4
|
values (${s}::uuid, null, 'Watchbell console', '', 'console', 'Watchbell console (ask-ai)', ${(0,c.$)(n,720*c.w).toISOString()}::timestamptz,
|
|
5
5
|
${w.toISOString()}::timestamptz, ${o}, ${f(l)}, ${f(p)}, ${W(["gemini/gemini-2.5-flash","workers-ai/gemma-3-12b-it"])}::text[])`),await t.execute(r.B`
|
|
@@ -9,12 +9,12 @@ module.exports=[601533,e=>{"use strict";var t=e.i(7584),a=e.i(837137),n=e.i(1592
|
|
|
9
9
|
case when t.s = 429 then 'rate_limited · upstream_429' else null end, false
|
|
10
10
|
from unnest(${(0,c._)(d)}::bigint[], ${(0,c._)(g)}::int[], ${(0,c._)(l)}::int[], ${(0,c._)(p)}::int[], ${(0,c._)(m)}::int[],
|
|
11
11
|
${(0,c._)(h)}::int[]) as t(at, m, ti, tout, l, s)
|
|
12
|
-
order by t.at`)}let W=e=>`{${e.join(",")}}`,G=2*c.w;async function q(e,t,a,n){let{db:i,seed:s,now:o}=e,d=(0,u.k)(s,"proposals"),p=e=>(0,u.T)(s,"proposal",e),m=a.certSoon,h=t.failedDeploy,g=n.monitors.find(e=>e.id===n.outage.monitorId),f=new Date(n.outage.startedAt.getTime()+11*c.E),w=t.resolved.oldDeploy,A=new Date(w.startedAt.getTime()+d.int(2,6)*c.E),k=new Date(A.getTime()+d.int(3,15)*c.E),y=(0,c.$)(o,d.int(20,55)*c.E),I=(0,c.$)(o,d.int(8,19)*c.E);for(let e of[{id:p("pending-safe"),alertId:t.firing.cert,ruleKey:"CertExpiringSoon",room:"network",action:"domain_recheck",risk:"safe",title:`Re-check the certificate of ${m.name}`,reason:"The TLS certificate expires within 14 days; a fresh read shows whether it was already renewed.",resourceKind:"domain",resourceId:m.id,resourceName:m.name,targetRef:m.id,proposedBy:"Network",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:y,decidedAt:null,expiresAt:new Date(y.getTime()+G),claimedAt:null,finishedAt:null},{id:p("pending-risky"),alertId:t.firing.deploy,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_redeploy",risk:"risky",title:`Redeploy production ${h.appName}`,reason:`Production deployment ${h.sha} failed; the previous build is still live.`,resourceKind:"app",resourceId:h.appId,resourceName:h.appName,targetRef:h.currentExternalId,proposedBy:"Workloads",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:I,decidedAt:null,expiresAt:new Date(I.getTime()+G),claimedAt:null,finishedAt:null},{id:p("done-auto"),alertId:t.resolved.outage,ruleKey:"MonitorDown",room:"workloads",action:"recheck",risk:"safe",title:`Check ${(0,l.F)(g.url)} again now`,reason:"It returned HTTP 503 on 3 consecutive checks.",resourceKind:"app",resourceId:g.appId,resourceName:(0,l.F)(g.url),targetRef:g.id,proposedBy:"Workloads",status:"done",auto:!0,result:"Failed: HTTP 503.",decidedBy:null,createdAt:f,decidedAt:f,expiresAt:new Date(f.getTime()+G),claimedAt:new Date(f.getTime()+2e3),finishedAt:new Date(f.getTime()+2e3+d.int(300,1500))},{id:p("rejected"),alertId:w.id,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_rollback",risk:"risky",title:`Roll back ${w.appName} to the previous deployment`,reason:"The newest production build failed.",resourceKind:"app",resourceId:w.appId,resourceName:w.appName,targetRef:w.previousExternalId,proposedBy:"Workloads",status:"rejected",auto:!1,result:null,decidedBy:(0,
|
|
12
|
+
order by t.at`)}let W=e=>`{${e.join(",")}}`,G=2*c.w;async function q(e,t,a,n){let{db:i,seed:s,now:o}=e,d=(0,u.k)(s,"proposals"),p=e=>(0,u.T)(s,"proposal",e),m=a.certSoon,h=t.failedDeploy,g=n.monitors.find(e=>e.id===n.outage.monitorId),f=new Date(n.outage.startedAt.getTime()+11*c.E),w=t.resolved.oldDeploy,A=new Date(w.startedAt.getTime()+d.int(2,6)*c.E),k=new Date(A.getTime()+d.int(3,15)*c.E),y=(0,c.$)(o,d.int(20,55)*c.E),I=(0,c.$)(o,d.int(8,19)*c.E);for(let e of[{id:p("pending-safe"),alertId:t.firing.cert,ruleKey:"CertExpiringSoon",room:"network",action:"domain_recheck",risk:"safe",title:`Re-check the certificate of ${m.name}`,reason:"The TLS certificate expires within 14 days; a fresh read shows whether it was already renewed.",resourceKind:"domain",resourceId:m.id,resourceName:m.name,targetRef:m.id,proposedBy:"Network",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:y,decidedAt:null,expiresAt:new Date(y.getTime()+G),claimedAt:null,finishedAt:null},{id:p("pending-risky"),alertId:t.firing.deploy,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_redeploy",risk:"risky",title:`Redeploy production ${h.appName}`,reason:`Production deployment ${h.sha} failed; the previous build is still live.`,resourceKind:"app",resourceId:h.appId,resourceName:h.appName,targetRef:h.currentExternalId,proposedBy:"Workloads",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:I,decidedAt:null,expiresAt:new Date(I.getTime()+G),claimedAt:null,finishedAt:null},{id:p("done-auto"),alertId:t.resolved.outage,ruleKey:"MonitorDown",room:"workloads",action:"recheck",risk:"safe",title:`Check ${(0,l.F)(g.url)} again now`,reason:"It returned HTTP 503 on 3 consecutive checks.",resourceKind:"app",resourceId:g.appId,resourceName:(0,l.F)(g.url),targetRef:g.id,proposedBy:"Workloads",status:"done",auto:!0,result:"Failed: HTTP 503.",decidedBy:null,createdAt:f,decidedAt:f,expiresAt:new Date(f.getTime()+G),claimedAt:new Date(f.getTime()+2e3),finishedAt:new Date(f.getTime()+2e3+d.int(300,1500))},{id:p("rejected"),alertId:w.id,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_rollback",risk:"risky",title:`Roll back ${w.appName} to the previous deployment`,reason:"The newest production build failed.",resourceKind:"app",resourceId:w.appId,resourceName:w.appName,targetRef:w.previousExternalId,proposedBy:"Workloads",status:"rejected",auto:!1,result:null,decidedBy:(0,R.memberRowId)(s),createdAt:A,decidedAt:k,expiresAt:new Date(A.getTime()+G),claimedAt:null,finishedAt:null}]){let t=e=>e?e.toISOString():null;await i.execute(r.B`
|
|
13
13
|
insert into ops.action_proposals (id, alert_id, rule_key, room, action, risk, title, reason, resource_kind, resource_id, resource_name, target_ref,
|
|
14
14
|
proposed_by, status, auto, result, decided_by, created_at, decided_at, expires_at, claimed_at, finished_at)
|
|
15
15
|
values (${e.id}::uuid, ${e.alertId}::uuid, ${e.ruleKey}, ${e.room}, ${e.action}, ${e.risk}, ${e.title}, ${e.reason}, ${e.resourceKind},
|
|
16
16
|
${e.resourceId}::uuid, ${e.resourceName}, ${e.targetRef}, ${e.proposedBy}, ${e.status}, ${e.auto}, ${e.result}, ${e.decidedBy}::uuid,
|
|
17
|
-
${t(e.createdAt)}::timestamptz, ${t(e.decidedAt)}::timestamptz, ${t(e.expiresAt)}::timestamptz, ${t(e.claimedAt)}::timestamptz, ${t(e.finishedAt)}::timestamptz)`)}}function Y(e,t){return e.length?e[Math.min(e.length-1,Math.max(0,Math.ceil(t*e.length)-1))]:null}function Q(e){let t=e.filter(e=>!e.inMaintenance),a=t.map(e=>e.latencyMs).filter(e=>null!==e).sort((e,t)=>e-t);return{checks:t.length,failures:t.filter(e=>!e.ok).length,p50Ms:Y(a,.5),p95Ms:Y(a,.95),maxMs:a.length?a[a.length-1]:null,status5xx:t.filter(e=>null!==e.statusCode&&e.statusCode>=500).length,maintenance:e.length-t.length}}var X=e.i(655206);let J=5*c.E,Z=c.h/J,ee=X.f.checks*Z,et=X.f.rollupsHourly*Z,ea="No answer within 5 s";async function en(e,t){var n;let i,{db:r,seed:s,now:o}=e,d=(0,u.k)(s,"monitors"),l=[];for(let e of t.apps)for(let[t,a]of(d.chance(.6)?["/","/api/health"]:["/"]).entries())l.push({id:(0,u.T)(s,"monitor",e.name,a),appId:e.id,index:l.length,url:`https://${e.host}${a}`,path:a,createdAt:new Date(e.createdAt.getTime()+t*d.int(1,3)*c.h+d.int(2,50)*c.E)});let p=Math.floor((o.getTime()-1e4)/J)*J,m=(e,t)=>p-t*J+2e3+300*e.index,h=l.map(e=>(function(e,t){let a=(0,u.k)(e,"checks",t.id),n={ok:new Uint8Array(et),status:new Int16Array(et),latency:new Int32Array(et)},i=a.int(70,380)*("/"===t.path?1:.55);for(let e=0;e<et;e++){let t=Math.round(i*(.75+.5*a.next())*(a.chance(.02)?1.8+2*a.next():1));if(e>=3&&a.chance(3e-4)){let t=a.int(0,3);ei(n,e,3===t?{ok:!1,status:0,latency:-1}:{ok:!1,status:[500,502,503][t],latency:a.int(30,300)})}else ei(n,e,{ok:!0,status:200,latency:t})}return n})(s,e)),f=(0,u.k)(s,"outage"),w=l.filter(e=>"/"===e.path),A=f.pick(w),k=f.int(96,240),y=f.int(4,7),I=h[A.index];for(let e=k-3;e<k+y+3;e++)ei(I,e,{ok:!0,status:200,latency:I.latency[e]>0?I.latency[e]:180});for(let e=k;e<k+y;e++)ei(I,e,{ok:!1,status:e===k+y-1?502:503,latency:f.int(30,140)});let v={monitorId:A.id,appId:A.appId,startedAt:new Date(m(A,k+y-1)),endedAt:new Date(m(A,k)),recoveredAt:new Date(m(A,k-1)),failedChecks:y},_=l.filter(e=>e.appId!==A.appId),$=_.length?f.pick(_):null;$&&ei(h[$.index],0,{ok:!1,status:0,latency:-1});let b=(0,u.k)(s,"slow-windows"),S=l.filter(e=>e.id!==A.id),T=(e,t,a,n)=>{let i=h[e.index],r=t*Z+b.int(12,144),s=b.int(a,n),o=[];for(let e=r;e>r-s;e--){let t=b.int(1600,2900);ei(i,e,{ok:!0,status:200,latency:t}),o.length<2&&o.push({ok:!0,statusCode:200,latencyMs:t})}let d=r-s;return(!i.ok[d]||i.latency[d]>=1500)&&ei(i,d,{ok:!0,status:200,latency:180}),{monitorId:e.id,appId:e.appId,firedAt:new Date(m(e,r-1)),resolvedAt:new Date(m(e,d)),p95:Q(o).p95Ms}},x=S[0]??A,D=S[S.length-1]??A,
|
|
17
|
+
${t(e.createdAt)}::timestamptz, ${t(e.decidedAt)}::timestamptz, ${t(e.expiresAt)}::timestamptz, ${t(e.claimedAt)}::timestamptz, ${t(e.finishedAt)}::timestamptz)`)}}function Y(e,t){return e.length?e[Math.min(e.length-1,Math.max(0,Math.ceil(t*e.length)-1))]:null}function Q(e){let t=e.filter(e=>!e.inMaintenance),a=t.map(e=>e.latencyMs).filter(e=>null!==e).sort((e,t)=>e-t);return{checks:t.length,failures:t.filter(e=>!e.ok).length,p50Ms:Y(a,.5),p95Ms:Y(a,.95),maxMs:a.length?a[a.length-1]:null,status5xx:t.filter(e=>null!==e.statusCode&&e.statusCode>=500).length,maintenance:e.length-t.length}}var X=e.i(655206);let J=5*c.E,Z=c.h/J,ee=X.f.checks*Z,et=X.f.rollupsHourly*Z,ea="No answer within 5 s";async function en(e,t){var n;let i,{db:r,seed:s,now:o}=e,d=(0,u.k)(s,"monitors"),l=[];for(let e of t.apps)for(let[t,a]of(d.chance(.6)?["/","/api/health"]:["/"]).entries())l.push({id:(0,u.T)(s,"monitor",e.name,a),appId:e.id,index:l.length,url:`https://${e.host}${a}`,path:a,createdAt:new Date(e.createdAt.getTime()+t*d.int(1,3)*c.h+d.int(2,50)*c.E)});let p=Math.floor((o.getTime()-1e4)/J)*J,m=(e,t)=>p-t*J+2e3+300*e.index,h=l.map(e=>(function(e,t){let a=(0,u.k)(e,"checks",t.id),n={ok:new Uint8Array(et),status:new Int16Array(et),latency:new Int32Array(et)},i=a.int(70,380)*("/"===t.path?1:.55);for(let e=0;e<et;e++){let t=Math.round(i*(.75+.5*a.next())*(a.chance(.02)?1.8+2*a.next():1));if(e>=3&&a.chance(3e-4)){let t=a.int(0,3);ei(n,e,3===t?{ok:!1,status:0,latency:-1}:{ok:!1,status:[500,502,503][t],latency:a.int(30,300)})}else ei(n,e,{ok:!0,status:200,latency:t})}return n})(s,e)),f=(0,u.k)(s,"outage"),w=l.filter(e=>"/"===e.path),A=f.pick(w),k=f.int(96,240),y=f.int(4,7),I=h[A.index];for(let e=k-3;e<k+y+3;e++)ei(I,e,{ok:!0,status:200,latency:I.latency[e]>0?I.latency[e]:180});for(let e=k;e<k+y;e++)ei(I,e,{ok:!1,status:e===k+y-1?502:503,latency:f.int(30,140)});let v={monitorId:A.id,appId:A.appId,startedAt:new Date(m(A,k+y-1)),endedAt:new Date(m(A,k)),recoveredAt:new Date(m(A,k-1)),failedChecks:y},_=l.filter(e=>e.appId!==A.appId),$=_.length?f.pick(_):null;$&&ei(h[$.index],0,{ok:!1,status:0,latency:-1});let b=(0,u.k)(s,"slow-windows"),S=l.filter(e=>e.id!==A.id),T=(e,t,a,n)=>{let i=h[e.index],r=t*Z+b.int(12,144),s=b.int(a,n),o=[];for(let e=r;e>r-s;e--){let t=b.int(1600,2900);ei(i,e,{ok:!0,status:200,latency:t}),o.length<2&&o.push({ok:!0,statusCode:200,latencyMs:t})}let d=r-s;return(!i.ok[d]||i.latency[d]>=1500)&&ei(i,d,{ok:!0,status:200,latency:180}),{monitorId:e.id,appId:e.appId,firedAt:new Date(m(e,r-1)),resolvedAt:new Date(m(e,d)),p95:Q(o).p95Ms}},x=S[0]??A,D=S[S.length-1]??A,M=[T(x,2,4,8),T(D,5,3,6)],E=l.map(e=>(function(e,t,a){let n="unknown",i=0,r=e.createdAt;for(let e=t.ok.length-1;e>=0;e--){let s=(0,g.G)(i,{ok:1===t.ok[e],statusCode:er(t,e),latencyMs:es(t,e),error:eo(t,e)});s.state!==n&&(r=a(e)),n=s.state,i=s.failStreak}return{id:e.id,appId:e.appId,url:e.url,path:e.path,state:n,stateSince:r,failStreak:i,lastCheckedAt:a(0),lastStatus:er(t,0),lastLatencyMs:es(t,0),createdAt:e.createdAt}})(e,h[e.index],t=>new Date(m(e,t))));await r.insert(a.monitors).values(E.map((e,t)=>({id:e.id,resourceId:e.appId,url:e.url,kind:"http",expectedStatus:200,timeoutMs:5e3,intervalS:J/1e3,state:e.state,stateSince:e.stateSince,failStreak:e.failStreak,lastCheckedAt:e.lastCheckedAt,lastStatus:e.lastStatus,lastLatencyMs:e.lastLatencyMs,lastError:eo(h[t],0),createdAt:e.createdAt,updatedAt:e.lastCheckedAt})));let C=((i=new Date(n=o)).setUTCHours(20,0,0,0),i.getTime()>n.getTime()-5*c.E&&i.setTime(i.getTime()-c.h),i.getTime());for(let t of l)await ed(e,t,h[t.index],new Date(m(t,0))),await el(e,t,h[t.index],e=>m(t,e),C);return await ec(e,l.length),{monitors:E,outage:v,degraded:$?{monitorId:$.id,appId:$.appId,since:new Date(m($,0))}:null,slow:M}}function ei(e,t,a){t<0||t>=e.ok.length||(e.ok[t]=+!!a.ok,e.status[t]=a.status,e.latency[t]=a.latency)}let er=(e,t)=>0===e.status[t]?null:e.status[t],es=(e,t)=>e.latency[t]<0?null:e.latency[t],eo=(e,t)=>e.ok[t]?null:e.status[t]?`HTTP ${e.status[t]}`:ea;async function ed(e,t,a,n){let i=Array.from({length:ee},(e,t)=>t);await e.db.execute(r.B`
|
|
18
18
|
insert into ops.checks (id, monitor_id, at, ok, status_code, latency_ms, error, in_maintenance)
|
|
19
19
|
select md5(${`${e.seed}:${t.id}:`} || t.k)::uuid, ${t.id}::uuid, ${n.toISOString()}::timestamptz - t.k * interval '5 minutes',
|
|
20
20
|
t.ok, t.s, t.l, case when t.ok then null when t.s is null then ${ea} else 'HTTP ' || t.s end, false
|
|
@@ -23,6 +23,6 @@ module.exports=[601533,e=>{"use strict";var t=e.i(7584),a=e.i(837137),n=e.i(1592
|
|
|
23
23
|
insert into ops.rollups_hourly (monitor_id, hour, checks, failures, p50_ms, p95_ms, max_ms, status_5xx, maintenance)
|
|
24
24
|
select ${t.id}::uuid, to_timestamp(t.h), t.c, t.f, t.p50, t.p95, t.mx, t.s5, 0
|
|
25
25
|
from unnest(${(0,c._)(o)}::bigint[], ${(0,c._)(d)}::int[], ${(0,c._)(l)}::int[], ${(0,c._)(u)}::int[],
|
|
26
|
-
${(0,c._)(p)}::int[], ${(0,c._)(m)}::int[], ${(0,c._)(h)}::int[]) as t(h, c, f, p50, p95, mx, s5)`)}async function ec(e,t){let{seed:n,now:i}=e,r=(0,u.k)(n,"collector-runs"),s=Math.floor((i.getTime()-1e4)/c.E)*c.E;await e.db.insert(a.collectorRuns).values(Array.from({length:60},(e,a)=>{let i=s-a*c.E,o=i%J==0,d=(o?2e3+300*t:600)+r.int(200,1400);return{id:(0,u.T)(n,"collector-run",a),startedAt:new Date(i+1e3),finishedAt:new Date(i+1e3+d),trigger:"manual",tasks:o?["heartbeats","checks","vercel","alerts"]:["heartbeats","vercel","alerts"],ok:!0,durationMs:d,checks:o?t:0}}))}async function eu(e,t,a,n,{foreignKeyChecks:i=!1}={}){await e.transaction(async e=>{i||await e.execute(r.B`set local session_replication_role = replica`);let s={db:e,seed:t,now:a,email:n};await (0,
|
|
26
|
+
${(0,c._)(p)}::int[], ${(0,c._)(m)}::int[], ${(0,c._)(h)}::int[]) as t(h, c, f, p50, p95, mx, s5)`)}async function ec(e,t){let{seed:n,now:i}=e,r=(0,u.k)(n,"collector-runs"),s=Math.floor((i.getTime()-1e4)/c.E)*c.E;await e.db.insert(a.collectorRuns).values(Array.from({length:60},(e,a)=>{let i=s-a*c.E,o=i%J==0,d=(o?2e3+300*t:600)+r.int(200,1400);return{id:(0,u.T)(n,"collector-run",a),startedAt:new Date(i+1e3),finishedAt:new Date(i+1e3+d),trigger:"manual",tasks:o?["heartbeats","checks","vercel","alerts"]:["heartbeats","vercel","alerts"],ok:!0,durationMs:d,checks:o?t:0}}))}async function eu(e,t,a,n,{foreignKeyChecks:i=!1}={}){await e.transaction(async e=>{i||await e.execute(r.B`set local session_replication_role = replica`);let s={db:e,seed:t,now:a,email:n};await (0,R.seedMember)(s);let o=await S(s),d=await en(s,o);await T(s,o,d.monitors);let l=await P(s,o),c=await F(s,o,l),u=await m(s,o,d,l,c);await q(s,u,c,d),await U(s,o,d,l,c,u),await H(s,o),await K(s),await V(s)})}var ep=e.i(330787),em=e.i(666680),eh=e.i(902157),eg=e.i(750227),ef=e.i(727028),ew=e.i(632019),eA=e.i(488077),ek=e.i(614755);let ey=globalThis;async function eI(e){let a=await ew.f.create();try{return await (0,eA.f)((0,t.f)({client:a}),{migrationsFolder:e}),{blob:await a.dumpDataDir("none"),from:"process"}}finally{await a.close()}}function ev(e){return ey.__watchbellDemoTemplate=e,e.catch(()=>{ey.__watchbellDemoTemplate===e&&delete ey.__watchbellDemoTemplate}),e}function e_(){if(ey.__watchbellDemoTemplate)return ey.__watchbellDemoTemplate;let e=performance.now(),t=(0,ek.selfhostMigrationsFolder)(),a=function(e){let t=function(e=process.env){return(0,eg.resolve)((0,n.d)(e,"DEMO_SNAPSHOT_DIR")||"demo-snapshot")}();try{if(JSON.parse((0,eh.readFileSync)((0,eg.join)(t,"migrated.json"),"utf8")).migrations!==function(e){let t=(0,em.createHash)("sha256");for(let a of["meta/_journal.json",...(0,eh.readdirSync)(e).filter(e=>e.endsWith(".sql")).sort()])t.update(`${a}\0`).update((0,eh.readFileSync)((0,eg.join)(e,a))).update("\0");return t.digest("hex")}(e))return null;return{blob:new Blob([(0,ef.gunzipSync)((0,eh.readFileSync)((0,eg.join)(t,"migrated.tar.gz")))],{type:"application/x-tar"}),from:"build"}}catch{return null}}(t),i=ev(a?Promise.resolve(a):eI(t));return i.then(t=>console.info(`demo: schema template ${"build"===t.from?"read from the build's snapshot":"migrated in this process"} in ${Math.round(performance.now()-e)} ms`),()=>void 0),i}async function e$(){let e=e_(),t=await e;try{return await ew.f.create({loadDataDir:t.blob})}catch(a){if("build"!==t.from)throw a;return ey.__watchbellDemoTemplate===e&&(console.warn(`demo: the build's migrated snapshot didn't load (${a instanceof Error?a.message:String(a)}); migrating instead`),ev(eI((0,ek.selfhostMigrationsFolder)()))),ew.f.create({loadDataDir:(await e_()).blob})}}var eb=e.i(904370);let eS=0,eT=()=>Date.now()+eS;function ex(e=process.env){let t=Number(((0,n.d)(e,"DEMO_POOL_MAX")??"").trim());return Number.isInteger(t)&&t>=1?t:3}let eD=globalThis.__watchpostDemoPool??={entries:new Map,live:new Set,waiters:new Set,creating:0,creationQueue:[]};function eM(){let e=[...eD.waiters];for(let t of(eD.waiters.clear(),e))t()}function eE(e){!e.evicted||e.leases>0||e.closing||(e.closing=e.pglite.then(e=>e.close()).catch(()=>void 0).finally(()=>{eD.live.delete(e),eM()}))}function eC(e){eD.entries.get(e.seed)===e&&eD.entries.delete(e.seed),e.evicted=!0,0===eD.entries.size&&eD.sweeper&&(clearInterval(eD.sweeper),eD.sweeper=void 0),eE(e),eM()}let eO=e=>e.created&&0===e.leases&&!e.evicted,eP=(e,t)=>eO(e)&&t-e.lastUsed>=6e4;function eB(e=eT()){for(let t of[...eD.entries.values()])eO(t)&&e-t.lastUsed>12e5&&eC(t)}async function ez(e){let t=eT()+5e3;for(;;){if(e.evicted)throw Error("The demo database was closed. Reload the page.");if(eD.live.size<ex())return void eD.live.add(e);let a=eT(),n=[...eD.entries.values()].find(e=>eP(e,a));if(n){eC(n),await n.closing;continue}let r=t-a;if(r<=0)throw(0,i.f)(i.L);await function(e){return new Promise(t=>{let a=setTimeout(n,e);function n(){clearTimeout(a),eD.waiters.delete(n),t()}eD.waiters.add(n)})}(Math.min(r,function(e){let t=1/0;for(let a of eD.entries.values())eO(a)&&(t=Math.min(t,a.lastUsed+6e4-e));return Math.max(0,t)}(a)+1))}}async function eR(){eD.creating<2?eD.creating++:await new Promise(e=>eD.creationQueue.push(e))}async function ej(e,n){let r=performance.now();if(!eb.demoCreations.take(await (0,ep.R)(),e.seed))throw(0,i.f)(i._);await ez(e);try{let i=n??await (0,ep._)();await eR();try{let n=performance.now(),s=await e$(),o=performance.now();try{let n=(0,t.f)({client:s,schema:a});await eu(n,e.seed,new Date,i)}catch(e){throw await s.close().catch(()=>void 0),e}e.created=!0;let d=(e,t)=>Math.round(t-e),l=performance.now();return console.info(`demo: visitor database ready in ${d(r,l)} ms (waited ${d(r,n)}, schema ${d(n,o)}, seed ${d(o,l)})`),s}finally{let e;(e=eD.creationQueue.shift())?e():eD.creating--}}catch(t){throw eD.live.delete(e),t}finally{eM()}}function eU(e,t){if(!e)throw Error("Demo seed missing");eB();let a=eD.entries.get(e);if(a)eD.entries.delete(e);else{let n={seed:e,created:!1,lastUsed:0,leases:0,evicted:!1};n.pglite=ej(n,t),n.pglite.catch(()=>{eD.entries.get(e)===n&&eD.entries.delete(e)}),a=n}return a.lastUsed=eT(),eD.entries.set(e,a),eD.sweeper||(eD.sweeper=setInterval(()=>eB(),6e4),eD.sweeper.unref?.()),a}async function eN(e,t,a){let n=eU(e,a);n.leases++;try{return await t(await n.pglite)}finally{n.leases--,n.lastUsed=eT(),eE(n),eM()}}async function eF(){for(let e of[...eD.entries.values()])eC(e);await Promise.all([...eD.live].map(e=>e.closing))}e.s(["BUSY_WAIT_MS",0,5e3,"DEFAULT_POOL_MAX",0,3,"DEMO_BUSY",()=>i.L,"DEMO_TOO_MANY",()=>i._,"IDLE_MS",0,12e5,"MAX_CREATING",0,2,"RECENT_MS",0,6e4,"closeDemoPool",0,eF,"demoDbFor",0,function(e,t){return eU(e,t).pglite},"demoPoolMax",0,ex,"setDemoPoolClockOffsetForTests",0,function(e){if(!process.env.VITEST)throw Error("setDemoPoolClockOffsetForTests is for tests only");eS=e,eM()},"sweepIdleDemoDbs",0,eB,"withDemoDb",0,eN],601533)}];
|
|
27
27
|
|
|
28
28
|
//# sourceMappingURL=src_lib_demo_pool_ts_0fpn8acsdk64i._.js.map
|