watchbell 1.2.4 → 1.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/server/.next/BUILD_ID +1 -1
- package/server/.next/build-manifest.json +3 -3
- package/server/.next/prerender-manifest.json +3 -3
- package/server/.next/required-server-files.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/agents/page/server-reference-manifest.json +12 -12
- 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 +11 -11
- 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 +10 -10
- 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 +13 -13
- 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 +11 -11
- 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 +20 -20
- 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 +10 -10
- 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 +13 -13
- 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 +16 -16
- 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 +11 -11
- 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 +11 -11
- 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 +10 -10
- 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 +11 -11
- 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 +26 -26
- 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 +27 -27
- 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 +13 -13
- 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 +13 -13
- 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 +10 -10
- 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 +21 -21
- package/server/.next/server/app/(console)/connections/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/connections/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/d1/page/server-reference-manifest.json +10 -10
- package/server/.next/server/app/(console)/d1/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/d1/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/deployments/page/server-reference-manifest.json +16 -16
- 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 +17 -17
- 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 +12 -12
- 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 +10 -10
- 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 +17 -17
- 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 +11 -11
- 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 +11 -11
- 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 +21 -21
- package/server/.next/server/app/(console)/neon/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/neon/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/overview/page/server-reference-manifest.json +20 -20
- 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 +11 -11
- 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 +10 -10
- 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 +20 -20
- 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 +17 -17
- 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 +10 -10
- 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 +31 -31
- 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 +10 -10
- 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 +10 -10
- 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 +10 -10
- 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 +24 -24
- 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 +15 -15
- package/server/.next/server/app/(console)/welcome/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/welcome/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
- package/server/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/server/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/_global-error.html +1 -1
- package/server/.next/server/app/_global-error.rsc +2 -2
- package/server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
- package/server/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
- package/server/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/server/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/server/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/_not-found.html +1 -1
- package/server/.next/server/app/_not-found.rsc +3 -3
- package/server/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/server/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/server/.next/server/app/account/password/page/server-reference-manifest.json +2 -2
- package/server/.next/server/app/account/password/page.js.nft.json +1 -1
- package/server/.next/server/app/account/password/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/api/collect/route/server-reference-manifest.json +7 -7
- 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 +7 -7
- 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 +7 -7
- 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.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.nft.json +1 -1
- 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.nft.json +1 -1
- package/server/.next/server/app/api/v1/status/route.js.nft.json +1 -1
- 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.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.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.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.nft.json +1 -1
- package/server/.next/server/app/signin/page_client-reference-manifest.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0-st5xltl53h9._.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]__03276vwi4jgvk._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__04htuwoulmp21._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__05jzua9637vlo._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__05pabbazg42oy._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__05qcc-0e8z1u8._.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]__08-puk3_gawjd._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__05zj7uswzr0f9._.js → [root-of-the-server]__08i6b8tzxads4._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__09uh8gefrxmkg._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0cz3da2wx3_wd._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0dfx2psnngcys._.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]__0gqye-fi-f3zk._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0kk-m8_ul4f4k._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0kzpzdkpz_nt0._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0lht1cr4aiudu._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0mrbo2p5fy4ji._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0o6q27cnw6-77._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0oqltt9cni6m0._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0ruici82tzf0w._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__0twr9duara46x._.js → [root-of-the-server]__0sq7jwlhv9n79._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__0tykhzqhwdx_k._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0ux1hi2fgqxu7._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0vp-x4ifpr3p9._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0xqgsjnebebv8._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0y_xyc1cyvtej._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__0znmcklxfccvk._.js +1 -1
- package/server/.next/server/chunks/{[root-of-the-server]__0kt0hjvyklnk8._.js → [root-of-the-server]__0zu1odpvrptrt._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__10negjjz5k5bz._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__195ax9c1nsi5b._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__19k0l-ubyp1j_._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1a7_3nq1jjab-._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1bce11artflky._.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]__1cc__h9taeylv._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1d4wmw2wohveb._.js +3 -0
- package/server/.next/server/chunks/{[root-of-the-server]__1spds17tpnsgr._.js → [root-of-the-server]__1etg41llk7f09._.js} +2 -2
- package/server/.next/server/chunks/[root-of-the-server]__1gt_-h9n48pwi._.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]__1ny8nr52qvr4i._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1ol4c4uzqqqfw._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__1ozfk4_3lx1o7._.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__1sm4p209f_yie._.js +3 -0
- package/server/.next/server/chunks/[root-of-the-server]__20dehd8e5-v9y._.js +1 -1
- package/server/.next/server/chunks/_12g2m3a5e94_5._.js +3 -0
- package/server/.next/server/chunks/_1cq1vvbp6pglr._.js +2 -2
- package/server/.next/server/chunks/_1myv9csc_in08._.js +2 -2
- package/server/.next/server/chunks/_1n-fm2bdo9t2m._.js +2 -2
- package/server/.next/server/chunks/src_lib_demo_pool_ts_0fpn8acsdk64i._.js +15 -15
- package/server/.next/server/chunks/src_lib_demo_pool_ts_14rjvkgozh1d4._.js +13 -13
- package/server/.next/server/chunks/src_lib_demo_pool_ts_17xz9bk-d5uic._.js +13 -13
- package/server/.next/server/chunks/src_lib_demo_pool_ts_210g_on8zx_-n._.js +13 -13
- 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/[root-of-the-server]__0-i_tj8wp9oto._.js +3 -0
- package/server/.next/server/chunks/ssr/[root-of-the-server]__001mglelq4wpc._.js +1 -1
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__1wr4__6rvsb3b._.js → [root-of-the-server]__077-acap7g4ck._.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]__0hzlz_t5eect2._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0i07g85h2g72h._.js +3 -0
- 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]__133_j0bmsjnzt._.js → [root-of-the-server]__0q7rssq_3unbc._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0rdf04ziqasfz._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0rrdzb9wowemv._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1-d88ogkwql_b._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__110158s15r7mi._.js +1 -1
- 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]__1_z273zso5at1._.js +3 -0
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1a0b_dbx4uans._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1ctkj-25wt37o._.js +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1kfivch_kfesn._.js +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1sw2q1p1t59y8._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1u_13nhw3kuz3._.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__1zmuaump_n9c1._.js +3 -0
- package/server/.next/server/chunks/ssr/_0-wc6f6p0c8lv._.js +1 -1
- package/server/.next/server/chunks/ssr/_02eudwc8ieb2r._.js +2 -2
- package/server/.next/server/chunks/ssr/_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/_0azq3ml4gbn1d._.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/_0gl-ewvbhb677._.js +2 -2
- package/server/.next/server/chunks/ssr/_0i04zoixa2iup._.js +2 -2
- package/server/.next/server/chunks/ssr/_0idbg-ok0so2h._.js +2 -2
- package/server/.next/server/chunks/ssr/_0kdn56_ow-x_s._.js +1 -1
- package/server/.next/server/chunks/ssr/_0oovfx_t_-u0k._.js +1 -1
- package/server/.next/server/chunks/ssr/_0oub-njkja8gu._.js +2 -2
- package/server/.next/server/chunks/ssr/_0pqkexxo7rts_._.js +2 -2
- package/server/.next/server/chunks/ssr/_0qhvl_fw4qetx._.js +1 -1
- package/server/.next/server/chunks/ssr/{_1rinsar6bp6ul._.js → _0s8qoh8v5kqcm._.js} +2 -2
- package/server/.next/server/chunks/ssr/_0tnd528j0i1i4._.js +2 -2
- package/server/.next/server/chunks/ssr/_0uwkwcgucqgcf._.js +2 -2
- package/server/.next/server/chunks/ssr/_0v6v5w16qxwke._.js +1 -1
- package/server/.next/server/chunks/ssr/_0wo-lpqf7hr1y._.js +2 -2
- package/server/.next/server/chunks/ssr/_0zixhhc1lheoi._.js +2 -2
- package/server/.next/server/chunks/ssr/_1-6d1tm3r_qwg._.js +1 -1
- package/server/.next/server/chunks/ssr/_10bven6gb1vj0._.js +1 -1
- package/server/.next/server/chunks/ssr/{_1jclq5d7tposb._.js → _10q5jocsvw-i8._.js} +2 -2
- 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/{_1e5kqt081d8yt._.js → _166ljgwi6shw7._.js} +2 -2
- package/server/.next/server/chunks/ssr/{_0e4xfzm8oecc-._.js → _18z44n8yl5tzj._.js} +2 -2
- package/server/.next/server/chunks/ssr/_19-3vzkc6rk97._.js +1 -1
- package/server/.next/server/chunks/ssr/_1_-o2s48aj4i7._.js +1 -1
- package/server/.next/server/chunks/ssr/_1c7jkkvkvzj_u._.js +2 -2
- package/server/.next/server/chunks/ssr/_1cl55h_h3q-b_._.js +1 -1
- package/server/.next/server/chunks/ssr/_1dlo17ba9g-f9._.js +2 -2
- package/server/.next/server/chunks/ssr/_1fc8k_0p8l00c._.js +2 -2
- package/server/.next/server/chunks/ssr/_1fuywfexex2s8._.js +2 -2
- package/server/.next/server/chunks/ssr/_1g2zbl_-4z_hg._.js +1 -1
- package/server/.next/server/chunks/ssr/_1he21-bt45k8z._.js +2 -2
- package/server/.next/server/chunks/ssr/_1j9cka-44jd65._.js +1 -1
- package/server/.next/server/chunks/ssr/_1jh_o2i8hj2g5._.js +1 -1
- package/server/.next/server/chunks/ssr/_1ln6o3a9quwxo._.js +2 -2
- package/server/.next/server/chunks/ssr/_1m4km_w39x5e9._.js +1 -1
- package/server/.next/server/chunks/ssr/_1pp1o361lgpwu._.js +2 -2
- package/server/.next/server/chunks/ssr/{_08d4hz_ddxc02._.js → _1qiv079hbwt43._.js} +2 -2
- package/server/.next/server/chunks/ssr/_1r7o1vx4875hu._.js +1 -1
- package/server/.next/server/chunks/ssr/_1yh3k88t_kh4h._.js +2 -2
- package/server/.next/server/chunks/ssr/_1z6dy1k48mskn._.js +1 -1
- package/server/.next/server/chunks/ssr/_218164gkxgum_._.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_keys_page_actions_181-3r4e_0yb5.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_logs_page_actions_1ryb93n6khky3.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_alerts_page_actions_06_3gmyq3jtvi.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_0y5m8cul6d7kk.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_page_actions_0ksau5eicvycc.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_1fgolmmpxrouc.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_dns_page_actions_17d_lvhl-u_4w.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_domains_page_actions_1yv3fj_fh-n-5.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_firebase_page_actions_00wuues_v_j3r.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_logs_page_actions_0oqh51t2rx6q0.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_manage_sections_page_actions_1sb2ldu57uj32.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_settings_page_actions_12wgjpd0lbh12.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_supabase_page_actions_1f3a_tpkwjo8z.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_uptime_page_actions_1ylbdz0-ykfh6.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_account_password_page_actions_1v4e71_oifbx9.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_signin_page_actions_11wzk446p6_zi.js +1 -1
- package/server/.next/server/chunks/ssr/src_0330uf9pdfco9._.js +1 -1
- package/server/.next/server/chunks/ssr/src_06tjy8wljego8._.js +1 -1
- package/server/.next/server/chunks/ssr/src_084tdkx3c_yqi._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0abts6wp5ucc0._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0ph020gy78gi9._.js +1 -1
- package/server/.next/server/chunks/ssr/src_10zavgy86u3us._.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)_0f-d8u7sm169e._.js +3 -0
- package/server/.next/server/chunks/ssr/{src_app_(console)_1co5pna1vfflj._.js → src_app_(console)_1vpkg9rd7v3pk._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_app_(console)_alerts_0j5xlt68kwg8x._.js +2 -2
- package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_1sfvku9ui1le-._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_backups_actions_ts_1vpytsdh0wc1f._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_backups_drive-buttons_tsx_00cku5r_z3jkg._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fahc65-97qla._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fmp_anbkapur._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_connections_actions_ts_103blv4gzq76z._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_create_actions_ts_05-86qr6kfjey._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_dns_actions_ts_1jzn58xzwbukz._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_dns_record-actions_tsx_0cqmz51zcuebv._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_firebase_row-menu_tsx_0hssoq3pqjl-n._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_logs_log-viewer_tsx_0v3e4cflfk14w._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_manage_sections_section-switch_tsx_1mfs-o_357i22._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_monitor-actions_ts_10w3h7myk2ppi._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_palette-action_ts_0zyw9a9imev6p._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_sql_1icfsti04djqe._.js +2 -2
- package/server/.next/server/chunks/ssr/src_app_(console)_sql_actions_ts_1oqco02hw-3vp._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_supabase_0ib3m2ch9gu-4._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_supabase_pool-actions_ts_0nzd4vwy_9zzx._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_uptime_1mnnkfi-2zv-k._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_vercel-actions_ts_0wpk1yo9v632d._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_mfa_setup_setup-flow_tsx_1fpwygr2vdgnh._.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_setup_setup-form_tsx_0izoagdur96e1._.js +1 -1
- package/server/.next/server/chunks/ssr/{src_app_signin_0ko968fxahf6u._.js → src_app_signin_0ndz9-tbuaohn._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_components_08d78uqnnmrrh._.js +1 -1
- package/server/.next/server/chunks/ssr/src_components_create_create-dialog_tsx_1s_9clly_m1ru._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_demo_0ftmf3wmtezvl._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_demo_1b1yd_ne2dpeh._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_demo_pool_ts_0fpn8acsdk64i._.js +14 -14
- 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/middleware-build-manifest.js +3 -3
- package/server/.next/server/pages/404.html +1 -1
- package/server/.next/server/pages/500.html +1 -1
- package/server/.next/server/preview-props.json +3 -3
- package/server/.next/server/server-reference-manifest.js +1 -1
- package/server/.next/server/server-reference-manifest.json +143 -143
- package/server/.next/static/chunks/0-0tkevn8vwix.js +1 -0
- package/server/.next/static/chunks/{0md0jy9rztofl.js → 026a6w6rbx-fh.js} +1 -1
- package/server/.next/static/chunks/{31v3igne_z-0k.js → 05rysjdxtzhu1.js} +1 -1
- package/server/.next/static/chunks/{3a5a2iizetq9b.js → 0jbau1a66ts45.js} +11 -11
- package/server/.next/static/chunks/{0krhehmzgigx5.js → 0lhj_nuhfszt5.js} +1 -1
- package/server/.next/static/chunks/{2-m982u6v7z8m.js → 0m3kg-eiti9zu.js} +1 -1
- package/server/.next/static/chunks/{2a3tky__z9q4j.js → 0o-c28x8k05p4.js} +1 -1
- package/server/.next/static/chunks/{1y_6crandf_3f.js → 0o08yqz8_53p6.js} +1 -1
- package/server/.next/static/chunks/{38g-5wiggu6__.js → 0p14kwfj_2w_l.js} +1 -1
- package/server/.next/static/chunks/0qd8lafp_2ta5.js +1 -0
- package/server/.next/static/chunks/{00oeu_tbjky7m.js → 0wz_jmdt88plr.js} +1 -1
- package/server/.next/static/chunks/14teejsfv-awi.js +1 -0
- package/server/.next/static/chunks/{0v_-lu_cx7f91.js → 15x1am33zx_7r.js} +1 -1
- package/server/.next/static/chunks/{0xcpi35p5fa83.js → 16en34z8w8ezr.js} +1 -1
- package/server/.next/static/chunks/{0-6om8-d7itz8.js → 19bfo1_ejzqmp.js} +1 -1
- package/server/.next/static/chunks/{3jhh47vezwohc.js → 1aiapinh40brx.js} +1 -1
- package/server/.next/static/chunks/{1ys80h6x541kn.js → 1b4nkf_ka3hwr.js} +2 -2
- package/server/.next/static/chunks/{1ukyjy13dwy_z.js → 1bsk5ub4zhehk.js} +1 -1
- package/server/.next/static/chunks/{40n6mtthd3_sh.js → 1j7e6cd8t5jar.js} +1 -1
- package/server/.next/static/chunks/{0hj1-5zruyih6.js → 1khar1yl-th2r.js} +1 -1
- package/server/.next/static/chunks/{2xio-kspedw69.js → 1kwbsrtnz8o1l.js} +1 -1
- package/server/.next/static/chunks/{1rkrtrvwbbnjf.js → 1rgejqx65romt.js} +1 -1
- package/server/.next/static/chunks/{3wi930ujb_5_z.js → 1ruv-a_ft592k.js} +1 -1
- package/server/.next/static/chunks/{1sc1vz_ygak9u.js → 1y8hxiy48l5hq.js} +1 -1
- package/server/.next/static/chunks/{340qccog2_uge.js → 20pwnun2aiajo.js} +2 -2
- package/server/.next/static/chunks/{2cipdjdkoq312.js → 231dmdy7r03nd.js} +1 -1
- package/server/.next/static/chunks/{01u9q07wu6-x1.js → 234h8_ywb6t9s.js} +1 -1
- package/server/.next/static/chunks/{3qedt96akbcad.js → 24p8ti6ronsdf.js} +1 -1
- package/server/.next/static/chunks/{0_5_9w6m-xwd0.js → 25ba60sl_edr3.js} +1 -1
- package/server/.next/static/chunks/{2ue_c6tww95_c.js → 25je6-38ula0p.js} +1 -1
- package/server/.next/static/chunks/{1gt3cagsbgx4w.js → 2_vwhuzct036v.js} +1 -1
- package/server/.next/static/chunks/{2ect0ww0gtoad.js → 2baqn9ru2pmf4.js} +2 -2
- package/server/.next/static/chunks/{16yvy9zkjac5c.js → 2ehpfaelmkee6.js} +1 -1
- package/server/.next/static/chunks/{2s-_9p0-395sm.js → 2uk9mjknuxmxx.js} +1 -1
- package/server/.next/static/chunks/{3f1td0b-oy-sr.js → 2w3otuq4cx1pd.js} +1 -1
- package/server/.next/static/chunks/{0181phyuecg9b.js → 317o5vyehd1xx.js} +1 -1
- package/server/.next/static/chunks/{0t66sf4vvalei.js → 34jajbsx3uisy.js} +1 -1
- package/server/.next/static/chunks/{18mkhwl0zlvnp.js → 35j75g5h_qytc.js} +1 -1
- package/server/.next/static/chunks/38rdy3k5li9gb.js +1 -0
- package/server/.next/static/chunks/{3imk3dh9_4wd5.js → 3m825h0uvc8b6.js} +1 -1
- package/server/.next/static/chunks/{0mp6prf1hx5mx.js → 3ngtjj5afybe9.js} +1 -1
- package/server/.next/static/chunks/{1xm6ay06cjchs.js → 3odrzjmblvoxt.js} +1 -1
- package/server/.next/static/chunks/{33ddsp07_9o1d.js → 3u-qfdthw123i.js} +2 -2
- package/server/.next/static/chunks/{0z0may9twpt-j.js → 3xhrztkjpas1b.js} +1 -1
- package/server/.next/static/chunks/{2z6gojfx3lqvt.js → 4126vjheqklsp.js} +1 -1
- package/server/server.js +1 -1
- package/server/.next/server/chunks/[root-of-the-server]__0-u9oeob2sa7f._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__04oipax0jupxr._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__07byme21uj5ln._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0ab040lxtt8_d._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__0v1t0gkrsn99q._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__10cqzo_4dhr4m._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__16md_196q9s8a._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1_zjje9edw0bz._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1kqq90-sj8-op._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1lam0c5a3f224._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1o9v_499yd5k8._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1onjxlntn-u8g._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1pscg7y0et34j._.js +0 -3
- package/server/.next/server/chunks/[root-of-the-server]__1qdbn4gdg7ndr._.js +0 -3
- package/server/.next/server/chunks/_0pf2g5n_ko5dq._.js +0 -3
- package/server/.next/server/chunks/_15g-opioju_ju._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__056nm27ib-x1m._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0eaqsql69fhf8._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0l_cl2qk_xmmr._.js +0 -3
- package/server/.next/server/chunks/ssr/src_0txyv7r1zns16._.js +0 -3
- package/server/.next/server/chunks/ssr/src_app_(console)_1shtcv6hidi4-._.js +0 -3
- package/server/.next/static/chunks/18johpgap0xmw.js +0 -1
- package/server/.next/static/chunks/1_8g4usrgjnnu.js +0 -1
- package/server/.next/static/chunks/1q-m7qgrvvzwb.js +0 -1
- package/server/.next/static/chunks/3letbzhf_1srv.js +0 -1
- /package/server/.next/static/{2_t4xVgbum1rtVSQxAYYV → 00kxZsHPpI3WSDxVn1e4b}/_buildManifest.js +0 -0
- /package/server/.next/static/{2_t4xVgbum1rtVSQxAYYV → 00kxZsHPpI3WSDxVn1e4b}/_clientMiddlewareManifest.js +0 -0
- /package/server/.next/static/{2_t4xVgbum1rtVSQxAYYV → 00kxZsHPpI3WSDxVn1e4b}/_ssgManifest.js +0 -0
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
module.exports=[601533,a=>{"use strict";var b=a.i(632019),c=a.i(7584),d=a.i(488077),e=a.i(614755),f=a.i(837137),g=a.i(159203),h=a.i(745614),i=a.i(351674),j=a.i(263251),k=a.i(927262),l=a.i(233711),m=a.i(469762),n=a.i(988866),o=a.i(109505);let p=(a,b)=>`${a} ${b}${1===a?"":"s"}`;async function q(a,b,c,d,e){let g,h,q,r,s,t,u,{db:v,seed:w,now:x}=a,y=(0,o.k)(w,"alerts"),z=(...a)=>(0,o.T)(w,"alert",...a),A=a=>b.apps.find(b=>b.id===a)?.name??"app",B=(0,j.f)(await v.execute(i.B`select resource_id, external_id, state, target, commit_sha, created_at_provider, is_current, is_previous_production from ops.deployments`)),C=B.find(a=>"error"===a.state&&"production"===a.target),D={appId:C.resource_id,appName:A(C.resource_id),sha:C.commit_sha.slice(0,7),createdAt:new Date(C.created_at_provider),currentExternalId:B.find(a=>a.resource_id===C.resource_id&&a.is_current)?.external_id??null},E=(a,b,c)=>{let d=c.resolvedAt??null;return{ruleKey:a,subject:b,severity:k._[a].severity,resourceId:null,accountId:null,okStreak:2*!!d,lastSeenAt:d??(0,n.$)(x,1e3*y.int(5,55)),lastSampleAt:null,notifiedOpen:"info"!==k._[a].severity,lastNotifiedAt:d??new Date(c.startedAt.getTime()+n.E),pending:null,pendingSince:null,...c}},F=e.certSoon,G=(0,l.g)(F.notAfter,x)??0,H=e.zoneSoon,I=(0,l.g)(H.expiresAt,x)??0,J=[E("DeploymentFailed",D.appId,{id:z("firing","deploy"),resourceId:D.appId,title:D.appName,message:`Production deployment ${D.sha} failed.`,startedAt:new Date(D.createdAt.getTime()+1e3*y.int(60,150))}),E("CertExpiringSoon",F.id,{id:z("firing","cert"),resourceId:F.id,title:F.name,message:`The TLS certificate of ${F.name} expires in ${p(G,"day")}.`,startedAt:new Date(F.notAfter.getTime()-14*n.h+y.int(5,55)*n.E)}),E("DomainExpiringSoon",H.id,{id:z("firing","zone"),resourceId:H.id,title:H.name,message:`${H.name} expires in ${p(I,"day")}.`,startedAt:new Date(H.expiresAt.getTime()-30*n.h+y.int(5,55)*n.E)})],K=c.outage,L=c.monitors.find(a=>a.id===K.monitorId),M=b.apps.find(a=>a.id!==D.appId)??b.apps[0],N=a=>d.dbs.find(b=>b.kind===a),O=(a,b)=>(0,n.$)(x,a*n.h+b*n.w+y.int(0,50)*n.E),P=(a,b)=>new Date(a.getTime()+b*n.E),Q=(a,b)=>{let d=c.monitors.find(a=>a.id===b.monitorId);return E("HighLatency",d.id,{id:z("resolved",a),resourceId:d.appId,title:`${A(d.appId)} ${d.path}`,message:`p95 ${b.p95.toLocaleString("en-US")} ms over the last 10 minutes (limit 1,500 ms).`,startedAt:b.firedAt,resolvedAt:b.resolvedAt})},R={start:O(4,y.int(1,9)),sha:(0,o.p)(7,w,"old-failed",M.name)},S=N("upstash_redis"),T=N("firestore"),U=N("supabase_project"),V=d.cloudflare.label,W={outage:E("MonitorDown",L.id,{id:z("resolved","outage"),resourceId:L.appId,title:`${A(L.appId)} ${L.path}`,message:`${(0,m.F)(L.url)} returned HTTP 503 on 3 consecutive checks.`,startedAt:new Date(K.startedAt.getTime()+10*n.E),resolvedAt:K.recoveredAt}),latencyA:Q("latency-a",c.slow[0]),latencyB:Q("latency-b",c.slow[1]),oldDeploy:E("DeploymentFailed",M.id,{id:z("resolved","old-deploy"),resourceId:M.id,title:M.name,message:`Production deployment ${R.sha} failed.`,startedAt:R.start,resolvedAt:P(R.start,y.int(35,70))}),collector:(g=O(6,y.int(1,10)),E("CollectorStale","collector",{id:z("resolved","collector"),title:"collector",message:"The last minute run finished 6 min ago.",startedAt:g,resolvedAt:P(g,y.int(4,9))})),autoPause:(h=O(6,y.int(12,20)),E("AutoPauseRisk",U.id,{id:z("resolved","auto-pause"),resourceId:U.id,title:U.name,message:"No API traffic for 4 days. Supabase pauses free projects after about 7 days.",startedAt:h,resolvedAt:P(h,60*y.int(20,30))})),quota:(q=O(6,y.int(1,8)),E("DbQuotaHigh",S.id,{id:z("resolved","db-quota"),resourceId:S.id,title:S.name,message:`${S.name}: Commands at ${y.int(81,88)}% of the free plan.`,startedAt:q,resolvedAt:P(q,60*y.int(3,6))})),firestore:(r=O(3,y.int(1,6)),E("FirestoreQuotaHigh",T.id,{id:z("resolved","firestore"),resourceId:T.id,title:T.name,message:`${T.name} read ${y.int(40500,46e3).toLocaleString("en-US")} of 50,000 documents today (${y.int(81,92)}%).`,startedAt:r,resolvedAt:P(r,60*y.int(2,5))})),proxied:(s=O(5,y.int(12,20)),E("DnsProxiedToVercel",(t=e.vercelRecord).id,{id:z("resolved","proxied"),resourceId:t.zoneId,title:t.name,message:`${t.name} points to Vercel through the Cloudflare proxy. Vercel recommends DNS only.`,startedAt:s,resolvedAt:P(s,24*y.int(2,4)*60)})),credential:(u=O(6,y.int(14,22)),E("CredentialExpiring",d.cloudflare.accountId,{id:z("resolved","credential"),accountId:d.cloudflare.accountId,title:`cloudflare \xb7 ${V}`,message:`The cloudflare credential ${V} expires in 9 days.`,startedAt:u,resolvedAt:P(u,24*y.int(1,2)*60+y.int(10,300))}))};return await v.insert(f.alerts).values([...J,...Object.values(W)]),{firing:{deploy:J[0].id,cert:J[1].id,zone:J[2].id},resolved:{outage:W.outage.id,oldDeploy:{id:W.oldDeploy.id,appId:M.id,appName:M.name,previousExternalId:B.find(a=>a.resource_id===M.id&&a.is_previous_production)?.external_id??null,startedAt:W.oldDeploy.startedAt,resolvedAt:W.oldDeploy.resolvedAt},credential:{title:W.credential.title,resolvedAt:W.credential.resolvedAt}},failedDeploy:D}}var r=a.i(646324),s=a.i(306556);let t=a=>`${a}.example`,u=["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"],v=[{name:"Juniper Labs",slug:"juniper-labs"},{name:"Kestrel Works",slug:"kestrel-works"},{name:"Brightfield Studio",slug:"brightfield-studio"},{name:"Saltmarsh Digital",slug:"saltmarsh-digital"}],w=["nextjs","nextjs","nextjs","vite","astro","sveltekit","remix"],x=["sin1","iad1","fra1","hnd1","sfo1"],y=["feat/checkout-v2","feat/dark-mode","fix/login-redirect","feat/search","chore/deps","fix/image-sizes","feat/newsletter","fix/cache-headers"],z=["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"],A={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"]},B=["acme-studio","orbit-labs","nimbus-works","pixel-harbor","tidal-digital","ember-co"],C=[{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 D(a){let{db:b,seed:c,now:d}=a,e=(0,o.k)(c,"apps"),g=e.pick(v),h={id:`team_${(0,o.g)(24,c,"team")}`,name:g.name,slug:g.slug},i=(0,o.T)(c,"account","vercel"),j=(0,n.$)(d,e.int(120,300)*n.h),k=(0,n.$)(d,e.int(3,50)*n.E);await b.insert(f.accounts).values({id:i,provider:"vercel",label:h.name,credentialCiphertext:"demo",credentialIv:"demo",credentialKind:"Access token",status:"ok",lastTestAt:k,lastSyncAt:k,createdAt:j,updatedAt:k});let l=e.shuffle(u).slice(0,e.int(5,8)).sort().map((a,b)=>({id:(0,o.T)(c,"app",a),index:b,name:a,externalId:`prj_${(0,o.g)(28,c,"project",a)}`,host:t(a),createdAt:(0,n.$)(d,e.int(95,400)*n.h-e.int(0,23)*n.w)}));return await b.insert(f.resources).values(l.map(a=>({id:a.id,accountId:i,kind:"app",externalId:a.externalId,name:a.name,monitored:!0,firstSeenAt:a.createdAt,lastSeenAt:k,createdAt:a.createdAt,updatedAt:k,meta:{teamId:h.id,teamSlug:h.slug,teamName:h.name,framework:e.pick(w),productionBranch:"main",createdAt:a.createdAt.toISOString(),repo:`example-org/${a.name}`,repoType:"github",functionRegions:[e.pick(x)]}}))),await b.insert(f.deployments).values(function(a,b){let{seed:c,now:d}=a,e=(0,o.k)(c,"deployments"),f=e.pick(b).id,g=e.pick(b).id,h=[];for(let a of b){let b=(b,f,g,i,j)=>{let k=(0,n.$)(d,g),l=new Date(k.getTime()+1e3*e.int(3,12)),m="ready"===i?new Date(l.getTime()+1e3*e.int(25,160)):null,p="production"===f?"main":e.pick(y);h.push({id:(0,o.T)(c,"deployment",a.name,b),resourceId:a.id,externalId:`dpl_${(0,o.g)(24,c,"deployment",a.name,b)}`,state:i,target:f,branch:p,commitSha:(0,o.p)(40,c,"commit",a.name,b),commitMessage:j??e.pick(z),source:"git",url:t(`${a.name}-git-${p.replace(/[^a-z0-9]+/g,"-")}-${(0,o.g)(9,c,"deployment-url",a.name,b).toLowerCase()}`),buildingAt:l,readyAt:m,createdAtProvider:k,isCurrent:!1,isPreviousProduction:!1,createdAt:k,updatedAt:m??l})},i=a.id===f,j=e.int(2,5);for(let a=0;a<j;a++){let c=0===a?Math.max(i?5*n.w:0,e.int(1,96)*n.w-e.int(0,40)*n.E):e.int(4+4*a,6+6*a)*n.h+e.int(0,23)*n.w;b(a,"production",c,"ready")}let k=e.int(0,3);for(let a=0;a<k;a++)b(10+a,"preview",e.int(2,240)*n.w+e.int(0,59)*n.E,"ready");i&&b(20,"production",e.int(30,240)*n.E,"error","Refactor the checkout form"),a.id===g&&b(21,"preview",e.int(1,6)*n.E,"building")}for(let a of b){let b=h.filter(b=>b.resourceId===a.id&&"production"===b.target&&"ready"===b.state).map(a=>({id:a.externalId,createdAt:a.createdAtProvider})),{currentId:c,previousId:d}=(0,r.a)(b,null);for(let b of h)b.resourceId===a.id&&(b.isCurrent=b.externalId===c,b.isPreviousProduction=b.externalId===d)}return h}(a,l)),{accountId:i,team:h,apps:l}}async function E(a,b,c){let{db:d,seed:e,now:g}=a,h=(0,o.k)(e,"snapshots"),i=(0,n.$)(g,1e3*h.int(5,40));await d.insert(f.snapshots).values(b.apps.map(a=>{var b,d;let e,f,j,k,l,m=c.filter(b=>b.appId===a.id),o=(0,s.V)({monitors:m.map(a=>a.state),building:!1,dbPaused:!1}),p=m.find(a=>"err"===a.state)??m.find(a=>"warn"===a.state),q=p?.stateSince??new Date(Math.max(...m.map(a=>a.stateSince.getTime())));return{resourceId:a.id,state:o,stateSince:q,collectedAt:i,data:{code:p?.lastStatus??null,latencyMs:m[0]?.lastLatencyMs??null,dbPaused:!1,pageviews:(b=h,d=g,f=Math.floor((e=(0,n.$)(d,b.int(2,25)*n.E)).getTime()/n.w)*n.w,j=b.int(20,400),{enabled:!0,total24h:l=(k=Array.from({length:24},(a,c)=>{let d=f-(23-c)*n.w,e=.15+.85*Math.max(0,Math.sin(((new Date(d).getUTCHours()+7)%24-6)/24*2*Math.PI));return[new Date(d).toISOString(),Math.round(j*e*(.7+.6*b.next()))]})).reduce((a,[,b])=>a+b,0),visitors24h:Math.round(l*(.3+.2*b.next())),hourly:k,readAt:e.toISOString()})}}}))}var F=a.i(169286),G=a.i(273133),H=a.i(688275),I=a.i(697365);let J="demo",K={supabase:"Access token",neon:"API key",firebase:"Service account",turso:"Platform API token",upstash:"Developer API key",cloudflare:"API token"};async function L(a,b){let{db:c,seed:d,now:e}=a,g=(0,o.k)(d,"databases"),h=b.team,i=a=>(0,o.T)(d,"account",a),j=(0,n.$)(e,g.int(4,40)*n.E);await c.insert(f.accounts).values(["supabase","neon","firebase","turso","upstash","cloudflare"].map(a=>{let b=(0,n.$)(e,g.int(60,280)*n.h);return{id:i(a),provider:a,label:"firebase"===a?`${h.slug}-firebase`:h.name,credentialCiphertext:J,credentialIv:J,credentialKind:K[a],status:"ok",lastTestAt:j,lastSyncAt:j,createdAt:b,updatedAt:j}}));let k=(0,o.p)(32,d,"cloudflare-account"),l=[{kind:"supabase_project",provider:"supabase",externalId:(0,o.g)(20,d,"supabase-ref").toLowerCase().replace(/[0-9]/g,"x")},{kind:"neon_project",provider:"neon",externalId:`${g.pick(["silent","quiet","misty","bold","calm"])}-${g.pick(["river","meadow","forest","harbor","dune"])}-${(0,o.p)(8,d,"neon-id")}`},{kind:"firestore",provider:"firebase",externalId:`${h.slug.split("-")[0]}-notes-${(0,o.p)(5,d,"firebase-id")}`},{kind:"turso_database",provider:"turso",externalId:(0,o.T)(d,"turso-db")},{kind:"upstash_redis",provider:"upstash",externalId:(0,o.T)(d,"upstash-db")},{kind:"d1_database",provider:"cloudflare",externalId:(0,o.T)(d,"d1-db")}].map(({kind:a,provider:b,externalId:c})=>{let f=g.pick(A[a]),j=(0,n.$)(e,g.int(40,300)*n.h),l="supabase_project"===a?{orgSlug:h.slug,region:"ap-southeast-1",pgVersion:"17.4.1.054",createdAt:j.toISOString(),status:"ACTIVE_HEALTHY"}:"neon_project"===a?{orgId:`org-${(0,o.p)(8,d,"neon-org")}`,region:"aws-ap-southeast-1",pgVersion:17,createdAt:j.toISOString()}:"firestore"===a?{projectId:c}:"turso_database"===a?{org:h.slug,group:"default",region:"sin"}:"upstash_redis"===a?{region:"ap-southeast-1",type:"free"}:{accountId:k,createdAt:j.toISOString()};return{id:(0,o.T)(d,"db",a),kind:a,name:f,externalId:c,accountId:i(b),meta:l,createdAt:j}});await c.insert(f.resources).values(l.map(a=>({id:a.id,accountId:a.accountId,kind:a.kind,externalId:a.externalId,name:a.name,monitored:!0,meta:a.meta,firstSeenAt:a.createdAt,lastSeenAt:j,createdAt:a.createdAt,updatedAt:j})));let m=a=>l.find(b=>b.kind===a),p=a=>(0,n.$)(e,a*n.E+1e3*g.int(0,50)),q=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),1)),r=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth()+1,1)),s=(e.getTime()-q.getTime())/(r.getTime()-q.getTime()),t=[{id:`ep-${(0,o.g)(12,d,"neon-ep").toLowerCase()}`,branchId:`br-${(0,o.g)(12,d,"neon-br-main").toLowerCase()}`,state:"idle",pendingState:null,disabled:!1,minCu:.25,maxCu:2,lastActive:(0,n.$)(e,g.int(20,300)*n.E).toISOString()}],u=Math.round((8+50*s+g.int(0,10))*3600),v=(0,H.p)({endpoints:t,computeSeconds:u}),w=[{id:m("supabase_project").id,state:"ok",since:(0,n.$)(e,g.int(20,90)*n.h),at:p(1),data:{status:"ACTIVE_HEALTHY",region:"ap-southeast-1",pgVersion:"17.4.1.054",orgSlug:h.slug,freeOrg:!0,lastTrafficAt:(0,n.$)(e,g.int(3,50)*n.E).toISOString(),trafficAt:(0,n.$)(e,g.int(1,4)*n.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,n.$)(e,g.int(1,4)*n.E).toISOString(),sizeBytes:1048576*g.int(38,140)+g.int(0,1048576),sizeAt:(0,n.$)(e,g.int(4,20)*n.w).toISOString(),lastGoodState:"ok"}},{id:m("neon_project").id,state:"ok"===v.state?"ok":"idle",since:(0,n.$)(e,g.int(20,300)*n.E),at:p(g.int(2,9)),data:{region:"aws-ap-southeast-1",pgVersion:17,orgId:m("neon_project").meta.orgId,computeSeconds:u,transferBytes:Math.round((.2+1.6*s)*0x40000000),periodStart:q.toISOString(),periodEnd:r.toISOString(),activeSeconds:Math.round(u/1.4),endpoints:t,branches:[{id:t[0].branchId,name:"main",isDefault:!0,logicalSize:1048576*g.int(120,380)},{id:`br-${(0,o.g)(12,d,"neon-br-preview").toLowerCase()}`,name:"preview/reporting",isDefault:!1,logicalSize:1048576*g.int(60,160)}],lastGoodState:"ok"===v.state?"ok":"idle"}},{id:m("firestore").id,state:"ok",since:(0,n.$)(e,g.int(10,60)*n.h),at:p(1),data:{displayName:m("firestore").name,latencyMs:g.int(70,190),reads:g.int(4e3,22e3),writes:g.int(800,6e3),deletes:g.int(20,400),opsAt:(0,n.$)(e,g.int(10,50)*n.E).toISOString(),authUsers:g.int(80,2400),authAt:(0,n.$)(e,g.int(2,20)*n.w).toISOString(),lastGoodState:"ok"}},{id:m("turso_database").id,state:"ok",since:(0,n.$)(e,g.int(10,60)*n.h),at:p(g.int(5,50)),data:{org:h.slug,group:"default",primaryRegion:"sin",plan:"free",blockReads:!1,blockWrites:!1,rowsRead:Math.round((20+140*s)*1e6),rowsWritten:Math.round((.2+2.2*s)*1e6),storageBytes:1048576*g.int(40,600),orgRowsRead:Math.round((25+160*s)*1e6),orgRowsWritten:Math.round((.3+2.6*s)*1e6),orgStorageBytes:1048576*g.int(700,1400),orgDatabases:3,usageAt:(0,n.$)(e,g.int(5,50)*n.E).toISOString(),lastGoodState:"ok"}},{id:m("upstash_redis").id,state:"ok",since:(0,n.$)(e,g.int(10,60)*n.h),at:p(g.int(5,50)),data:{region:"ap-southeast-1",status:"active",type:"free",dailyCommands:g.int(2e3,9e3),monthlyRequests:Math.round((20+180*s)*1e3)+g.int(0,999),storageBytes:1048576*g.int(6,90),monthlyBandwidthBytes:Math.round((.1+2.4*s)*0x40000000),statsAt:(0,n.$)(e,g.int(5,50)*n.E).toISOString(),lastGoodState:"ok"}},{id:m("d1_database").id,state:"ok",since:(0,n.$)(e,g.int(10,60)*n.h),at:p(g.int(5,50)),data:{accountId:k,createdAt:m("d1_database").createdAt.toISOString(),sizeBytes:1048576*g.int(4,120),numTables:g.int(4,12),readReplication:"disabled",detailsAt:(0,n.$)(e,g.int(5,50)*n.E).toISOString(),rowsRead:g.int(4e4,9e5),rowsWritten:g.int(1e3,3e4),readQueries:g.int(4e3,6e4),writeQueries:g.int(300,6e3),accountRowsRead:g.int(9e5,18e5),accountRowsWritten:g.int(3e4,55e3),accountSizeBytes:1048576*g.int(200,900),accountDatabases:2,usageDay:e.toISOString().slice(0,10),usageAt:(0,n.$)(e,g.int(5,50)*n.E).toISOString(),lastGoodState:"ok"}}];await c.insert(f.snapshots).values(w.map(a=>({resourceId:a.id,state:a.state,stateSince:a.since,collectedAt:a.at,data:a.data}))),await c.insert(f.settings).values({key:I.F,value:{[i("cloudflare")]:{d1:"ok",analytics:"ok",at:(0,n.$)(e,g.int(5,50)*n.E).toISOString(),note:null}},createdAt:(0,n.$)(e,30*n.h),updatedAt:e});let x=["supabase_project","neon_project","turso_database","upstash_redis","firestore","d1_database","supabase_project","neon_project"],y=b.apps.slice(0,Math.max(4,b.apps.length-1));return await c.insert(f.links).values(y.map((a,b)=>({id:(0,o.T)(d,"link",a.name),fromResourceId:a.id,toResourceId:m(x[b]).id,kind:"uses_db",source:"manual",createdAt:(0,n.$)(e,g.int(20,90)*n.h),updatedAt:(0,n.$)(e,g.int(1,19)*n.h)}))),await M(a,m("supabase_project").id),await c.insert(f.keepActive).values({resourceId:m("supabase_project").id,keep:!0,autoRestore:!1,lastKeepAliveAt:(0,n.$)(e,g.int(2,20)*n.w),updatedAt:(0,n.$)(e,12*n.h)}),{dbs:l.map(({id:a,kind:b,name:c,externalId:d,accountId:e})=>({id:a,kind:b,name:c,externalId:d,accountId:e})),cloudflare:{accountId:i("cloudflare"),cfAccountId:k,label:h.name}}}async function M(a,b){let{db:c,seed:d,now:e}=a,f=(0,o.k)(d,"compute"),g=(0,n.$)(e,f.int(1,4)*n.E),h=Array.from({length:24},(a,c)=>{let d=new Date((0,G.b)(e).getTime()-c*n.w),g=Math.round((6+18*f.next())*10)/10,h=Math.round((34+14*f.next())*10)/10;return{resourceId:b,hour:d,samples:0===c?Math.max(1,Math.floor((e.getTime()-d.getTime())/(5*n.E))):12,cpuSamples:0===c?1:11,cpuAvg:g,cpuMax:Math.round(10*Math.min(70,g*(1.4+f.next())))/10,memAvg:h,memMax:Math.round(10*Math.min(85,h+6*f.next()))/10,diskPct:9.8,connUsed:f.int(8,22),connMax:60}}),i={cpuPct:h[0].cpuAvg,memPct:h[0].memAvg,diskPct:9.8,connUsed:h[0].connUsed,connMax:60,at:g.toISOString(),prev:null,recent:Array.from({length:6},(a,b)=>({at:(0,n.$)(g,(5-b)*5*n.E).toISOString(),cpu:Math.round((6+18*f.next())*10)/10}))};await c.insert(F.A).values({resourceId:b,keyCiphertext:J,keyIv:J,latest:i,lastTryAt:g,lastOkAt:g,createdAt:(0,n.$)(e,21*n.h),updatedAt:g}),await c.insert(F.l).values(h.filter(a=>a.hour.getTime()<=e.getTime()))}var N=a.i(245710),O=a.i(615089);let P=7*n.h;async function Q(a,b,c,d,e,g){let{db:h,seed:k,now:l}=a,p=(0,o.k)(k,"events"),q=[],r=(a,b)=>q.push({id:(0,o.T)(k,"event",a),count:1,...b});for(let a of(0,j.f)(await h.execute(i.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(
|
|
1
|
+
module.exports=[601533,a=>{"use strict";var b=a.i(7584),c=a.i(837137),d=a.i(159203),e=a.i(745614),f=a.i(351674),g=a.i(263251),h=a.i(927262),i=a.i(233711),j=a.i(469762),k=a.i(988866),l=a.i(109505);let m=(a,b)=>`${a} ${b}${1===a?"":"s"}`;async function n(a,b,d,e,n){let o,p,q,r,s,t,u,{db:v,seed:w,now:x}=a,y=(0,l.k)(w,"alerts"),z=(...a)=>(0,l.T)(w,"alert",...a),A=a=>b.apps.find(b=>b.id===a)?.name??"app",B=(0,g.f)(await v.execute(f.B`select resource_id, external_id, state, target, commit_sha, created_at_provider, is_current, is_previous_production from ops.deployments`)),C=B.find(a=>"error"===a.state&&"production"===a.target),D={appId:C.resource_id,appName:A(C.resource_id),sha:C.commit_sha.slice(0,7),createdAt:new Date(C.created_at_provider),currentExternalId:B.find(a=>a.resource_id===C.resource_id&&a.is_current)?.external_id??null},E=(a,b,c)=>{let d=c.resolvedAt??null;return{ruleKey:a,subject:b,severity:h._[a].severity,resourceId:null,accountId:null,okStreak:2*!!d,lastSeenAt:d??(0,k.$)(x,1e3*y.int(5,55)),lastSampleAt:null,notifiedOpen:"info"!==h._[a].severity,lastNotifiedAt:d??new Date(c.startedAt.getTime()+k.E),pending:null,pendingSince:null,...c}},F=n.certSoon,G=(0,i.g)(F.notAfter,x)??0,H=n.zoneSoon,I=(0,i.g)(H.expiresAt,x)??0,J=[E("DeploymentFailed",D.appId,{id:z("firing","deploy"),resourceId:D.appId,title:D.appName,message:`Production deployment ${D.sha} failed.`,startedAt:new Date(D.createdAt.getTime()+1e3*y.int(60,150))}),E("CertExpiringSoon",F.id,{id:z("firing","cert"),resourceId:F.id,title:F.name,message:`The TLS certificate of ${F.name} expires in ${m(G,"day")}.`,startedAt:new Date(F.notAfter.getTime()-14*k.h+y.int(5,55)*k.E)}),E("DomainExpiringSoon",H.id,{id:z("firing","zone"),resourceId:H.id,title:H.name,message:`${H.name} expires in ${m(I,"day")}.`,startedAt:new Date(H.expiresAt.getTime()-30*k.h+y.int(5,55)*k.E)})],K=d.outage,L=d.monitors.find(a=>a.id===K.monitorId),M=b.apps.find(a=>a.id!==D.appId)??b.apps[0],N=a=>e.dbs.find(b=>b.kind===a),O=(a,b)=>(0,k.$)(x,a*k.h+b*k.w+y.int(0,50)*k.E),P=(a,b)=>new Date(a.getTime()+b*k.E),Q=(a,b)=>{let c=d.monitors.find(a=>a.id===b.monitorId);return E("HighLatency",c.id,{id:z("resolved",a),resourceId:c.appId,title:`${A(c.appId)} ${c.path}`,message:`p95 ${b.p95.toLocaleString("en-US")} ms over the last 10 minutes (limit 1,500 ms).`,startedAt:b.firedAt,resolvedAt:b.resolvedAt})},R={start:O(4,y.int(1,9)),sha:(0,l.p)(7,w,"old-failed",M.name)},S=N("upstash_redis"),T=N("firestore"),U=N("supabase_project"),V=e.cloudflare.label,W={outage:E("MonitorDown",L.id,{id:z("resolved","outage"),resourceId:L.appId,title:`${A(L.appId)} ${L.path}`,message:`${(0,j.F)(L.url)} returned HTTP 503 on 3 consecutive checks.`,startedAt:new Date(K.startedAt.getTime()+10*k.E),resolvedAt:K.recoveredAt}),latencyA:Q("latency-a",d.slow[0]),latencyB:Q("latency-b",d.slow[1]),oldDeploy:E("DeploymentFailed",M.id,{id:z("resolved","old-deploy"),resourceId:M.id,title:M.name,message:`Production deployment ${R.sha} failed.`,startedAt:R.start,resolvedAt:P(R.start,y.int(35,70))}),collector:(o=O(6,y.int(1,10)),E("CollectorStale","collector",{id:z("resolved","collector"),title:"collector",message:"The last minute run finished 6 min ago.",startedAt:o,resolvedAt:P(o,y.int(4,9))})),autoPause:(p=O(6,y.int(12,20)),E("AutoPauseRisk",U.id,{id:z("resolved","auto-pause"),resourceId:U.id,title:U.name,message:"No API traffic for 4 days. Supabase pauses free projects after about 7 days.",startedAt:p,resolvedAt:P(p,60*y.int(20,30))})),quota:(q=O(6,y.int(1,8)),E("DbQuotaHigh",S.id,{id:z("resolved","db-quota"),resourceId:S.id,title:S.name,message:`${S.name}: Commands at ${y.int(81,88)}% of the free plan.`,startedAt:q,resolvedAt:P(q,60*y.int(3,6))})),firestore:(r=O(3,y.int(1,6)),E("FirestoreQuotaHigh",T.id,{id:z("resolved","firestore"),resourceId:T.id,title:T.name,message:`${T.name} read ${y.int(40500,46e3).toLocaleString("en-US")} of 50,000 documents today (${y.int(81,92)}%).`,startedAt:r,resolvedAt:P(r,60*y.int(2,5))})),proxied:(s=O(5,y.int(12,20)),E("DnsProxiedToVercel",(t=n.vercelRecord).id,{id:z("resolved","proxied"),resourceId:t.zoneId,title:t.name,message:`${t.name} points to Vercel through the Cloudflare proxy. Vercel recommends DNS only.`,startedAt:s,resolvedAt:P(s,24*y.int(2,4)*60)})),credential:(u=O(6,y.int(14,22)),E("CredentialExpiring",e.cloudflare.accountId,{id:z("resolved","credential"),accountId:e.cloudflare.accountId,title:`cloudflare \xb7 ${V}`,message:`The cloudflare credential ${V} expires in 9 days.`,startedAt:u,resolvedAt:P(u,24*y.int(1,2)*60+y.int(10,300))}))};return await v.insert(c.alerts).values([...J,...Object.values(W)]),{firing:{deploy:J[0].id,cert:J[1].id,zone:J[2].id},resolved:{outage:W.outage.id,oldDeploy:{id:W.oldDeploy.id,appId:M.id,appName:M.name,previousExternalId:B.find(a=>a.resource_id===M.id&&a.is_previous_production)?.external_id??null,startedAt:W.oldDeploy.startedAt,resolvedAt:W.oldDeploy.resolvedAt},credential:{title:W.credential.title,resolvedAt:W.credential.resolvedAt}},failedDeploy:D}}var o=a.i(646324),p=a.i(306556);let q=a=>`${a}.example`,r=["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"],s=[{name:"Juniper Labs",slug:"juniper-labs"},{name:"Kestrel Works",slug:"kestrel-works"},{name:"Brightfield Studio",slug:"brightfield-studio"},{name:"Saltmarsh Digital",slug:"saltmarsh-digital"}],t=["nextjs","nextjs","nextjs","vite","astro","sveltekit","remix"],u=["sin1","iad1","fra1","hnd1","sfo1"],v=["feat/checkout-v2","feat/dark-mode","fix/login-redirect","feat/search","chore/deps","fix/image-sizes","feat/newsletter","fix/cache-headers"],w=["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"],x={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"]},y=["acme-studio","orbit-labs","nimbus-works","pixel-harbor","tidal-digital","ember-co"],z=[{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 A(a){let{db:b,seed:d,now:e}=a,f=(0,l.k)(d,"apps"),g=f.pick(s),h={id:`team_${(0,l.g)(24,d,"team")}`,name:g.name,slug:g.slug},i=(0,l.T)(d,"account","vercel"),j=(0,k.$)(e,f.int(120,300)*k.h),m=(0,k.$)(e,f.int(3,50)*k.E);await b.insert(c.accounts).values({id:i,provider:"vercel",label:h.name,credentialCiphertext:"demo",credentialIv:"demo",credentialKind:"Access token",status:"ok",lastTestAt:m,lastSyncAt:m,createdAt:j,updatedAt:m});let n=f.shuffle(r).slice(0,f.int(5,8)).sort().map((a,b)=>({id:(0,l.T)(d,"app",a),index:b,name:a,externalId:`prj_${(0,l.g)(28,d,"project",a)}`,host:q(a),createdAt:(0,k.$)(e,f.int(95,400)*k.h-f.int(0,23)*k.w)}));return await b.insert(c.resources).values(n.map(a=>({id:a.id,accountId:i,kind:"app",externalId:a.externalId,name:a.name,monitored:!0,firstSeenAt:a.createdAt,lastSeenAt:m,createdAt:a.createdAt,updatedAt:m,meta:{teamId:h.id,teamSlug:h.slug,teamName:h.name,framework:f.pick(t),productionBranch:"main",createdAt:a.createdAt.toISOString(),repo:`example-org/${a.name}`,repoType:"github",functionRegions:[f.pick(u)]}}))),await b.insert(c.deployments).values(function(a,b){let{seed:c,now:d}=a,e=(0,l.k)(c,"deployments"),f=e.pick(b).id,g=e.pick(b).id,h=[];for(let a of b){let b=(b,f,g,i,j)=>{let m=(0,k.$)(d,g),n=new Date(m.getTime()+1e3*e.int(3,12)),o="ready"===i?new Date(n.getTime()+1e3*e.int(25,160)):null,p="production"===f?"main":e.pick(v);h.push({id:(0,l.T)(c,"deployment",a.name,b),resourceId:a.id,externalId:`dpl_${(0,l.g)(24,c,"deployment",a.name,b)}`,state:i,target:f,branch:p,commitSha:(0,l.p)(40,c,"commit",a.name,b),commitMessage:j??e.pick(w),source:"git",url:q(`${a.name}-git-${p.replace(/[^a-z0-9]+/g,"-")}-${(0,l.g)(9,c,"deployment-url",a.name,b).toLowerCase()}`),buildingAt:n,readyAt:o,createdAtProvider:m,isCurrent:!1,isPreviousProduction:!1,createdAt:m,updatedAt:o??n})},i=a.id===f,j=e.int(2,5);for(let a=0;a<j;a++){let c=0===a?Math.max(i?5*k.w:0,e.int(1,96)*k.w-e.int(0,40)*k.E):e.int(4+4*a,6+6*a)*k.h+e.int(0,23)*k.w;b(a,"production",c,"ready")}let m=e.int(0,3);for(let a=0;a<m;a++)b(10+a,"preview",e.int(2,240)*k.w+e.int(0,59)*k.E,"ready");i&&b(20,"production",e.int(30,240)*k.E,"error","Refactor the checkout form"),a.id===g&&b(21,"preview",e.int(1,6)*k.E,"building")}for(let a of b){let b=h.filter(b=>b.resourceId===a.id&&"production"===b.target&&"ready"===b.state).map(a=>({id:a.externalId,createdAt:a.createdAtProvider})),{currentId:c,previousId:d}=(0,o.a)(b,null);for(let b of h)b.resourceId===a.id&&(b.isCurrent=b.externalId===c,b.isPreviousProduction=b.externalId===d)}return h}(a,n)),{accountId:i,team:h,apps:n}}async function B(a,b,d){let{db:e,seed:f,now:g}=a,h=(0,l.k)(f,"snapshots"),i=(0,k.$)(g,1e3*h.int(5,40));await e.insert(c.snapshots).values(b.apps.map(a=>{var b,c;let e,f,j,l,m,n=d.filter(b=>b.appId===a.id),o=(0,p.V)({monitors:n.map(a=>a.state),building:!1,dbPaused:!1}),q=n.find(a=>"err"===a.state)??n.find(a=>"warn"===a.state),r=q?.stateSince??new Date(Math.max(...n.map(a=>a.stateSince.getTime())));return{resourceId:a.id,state:o,stateSince:r,collectedAt:i,data:{code:q?.lastStatus??null,latencyMs:n[0]?.lastLatencyMs??null,dbPaused:!1,pageviews:(b=h,c=g,f=Math.floor((e=(0,k.$)(c,b.int(2,25)*k.E)).getTime()/k.w)*k.w,j=b.int(20,400),{enabled:!0,total24h:m=(l=Array.from({length:24},(a,c)=>{let d=f-(23-c)*k.w,e=.15+.85*Math.max(0,Math.sin(((new Date(d).getUTCHours()+7)%24-6)/24*2*Math.PI));return[new Date(d).toISOString(),Math.round(j*e*(.7+.6*b.next()))]})).reduce((a,[,b])=>a+b,0),visitors24h:Math.round(m*(.3+.2*b.next())),hourly:l,readAt:e.toISOString()})}}}))}var C=a.i(169286),D=a.i(273133),E=a.i(688275),F=a.i(697365);let G="demo",H={supabase:"Access token",neon:"API key",firebase:"Service account",turso:"Platform API token",upstash:"Developer API key",cloudflare:"API token"};async function I(a,b){let{db:d,seed:e,now:f}=a,g=(0,l.k)(e,"databases"),h=b.team,i=a=>(0,l.T)(e,"account",a),j=(0,k.$)(f,g.int(4,40)*k.E);await d.insert(c.accounts).values(["supabase","neon","firebase","turso","upstash","cloudflare"].map(a=>{let b=(0,k.$)(f,g.int(60,280)*k.h);return{id:i(a),provider:a,label:"firebase"===a?`${h.slug}-firebase`:h.name,credentialCiphertext:G,credentialIv:G,credentialKind:H[a],status:"ok",lastTestAt:j,lastSyncAt:j,createdAt:b,updatedAt:j}}));let m=(0,l.p)(32,e,"cloudflare-account"),n=[{kind:"supabase_project",provider:"supabase",externalId:(0,l.g)(20,e,"supabase-ref").toLowerCase().replace(/[0-9]/g,"x")},{kind:"neon_project",provider:"neon",externalId:`${g.pick(["silent","quiet","misty","bold","calm"])}-${g.pick(["river","meadow","forest","harbor","dune"])}-${(0,l.p)(8,e,"neon-id")}`},{kind:"firestore",provider:"firebase",externalId:`${h.slug.split("-")[0]}-notes-${(0,l.p)(5,e,"firebase-id")}`},{kind:"turso_database",provider:"turso",externalId:(0,l.T)(e,"turso-db")},{kind:"upstash_redis",provider:"upstash",externalId:(0,l.T)(e,"upstash-db")},{kind:"d1_database",provider:"cloudflare",externalId:(0,l.T)(e,"d1-db")}].map(({kind:a,provider:b,externalId:c})=>{let d=g.pick(x[a]),j=(0,k.$)(f,g.int(40,300)*k.h),n="supabase_project"===a?{orgSlug:h.slug,region:"ap-southeast-1",pgVersion:"17.4.1.054",createdAt:j.toISOString(),status:"ACTIVE_HEALTHY"}:"neon_project"===a?{orgId:`org-${(0,l.p)(8,e,"neon-org")}`,region:"aws-ap-southeast-1",pgVersion:17,createdAt:j.toISOString()}:"firestore"===a?{projectId:c}:"turso_database"===a?{org:h.slug,group:"default",region:"sin"}:"upstash_redis"===a?{region:"ap-southeast-1",type:"free"}:{accountId:m,createdAt:j.toISOString()};return{id:(0,l.T)(e,"db",a),kind:a,name:d,externalId:c,accountId:i(b),meta:n,createdAt:j}});await d.insert(c.resources).values(n.map(a=>({id:a.id,accountId:a.accountId,kind:a.kind,externalId:a.externalId,name:a.name,monitored:!0,meta:a.meta,firstSeenAt:a.createdAt,lastSeenAt:j,createdAt:a.createdAt,updatedAt:j})));let o=a=>n.find(b=>b.kind===a),p=a=>(0,k.$)(f,a*k.E+1e3*g.int(0,50)),q=new Date(Date.UTC(f.getUTCFullYear(),f.getUTCMonth(),1)),r=new Date(Date.UTC(f.getUTCFullYear(),f.getUTCMonth()+1,1)),s=(f.getTime()-q.getTime())/(r.getTime()-q.getTime()),t=[{id:`ep-${(0,l.g)(12,e,"neon-ep").toLowerCase()}`,branchId:`br-${(0,l.g)(12,e,"neon-br-main").toLowerCase()}`,state:"idle",pendingState:null,disabled:!1,minCu:.25,maxCu:2,lastActive:(0,k.$)(f,g.int(20,300)*k.E).toISOString()}],u=Math.round((8+50*s+g.int(0,10))*3600),v=(0,E.p)({endpoints:t,computeSeconds:u}),w=[{id:o("supabase_project").id,state:"ok",since:(0,k.$)(f,g.int(20,90)*k.h),at:p(1),data:{status:"ACTIVE_HEALTHY",region:"ap-southeast-1",pgVersion:"17.4.1.054",orgSlug:h.slug,freeOrg:!0,lastTrafficAt:(0,k.$)(f,g.int(3,50)*k.E).toISOString(),trafficAt:(0,k.$)(f,g.int(1,4)*k.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,k.$)(f,g.int(1,4)*k.E).toISOString(),sizeBytes:1048576*g.int(38,140)+g.int(0,1048576),sizeAt:(0,k.$)(f,g.int(4,20)*k.w).toISOString(),lastGoodState:"ok"}},{id:o("neon_project").id,state:"ok"===v.state?"ok":"idle",since:(0,k.$)(f,g.int(20,300)*k.E),at:p(g.int(2,9)),data:{region:"aws-ap-southeast-1",pgVersion:17,orgId:o("neon_project").meta.orgId,computeSeconds:u,transferBytes:Math.round((.2+1.6*s)*0x40000000),periodStart:q.toISOString(),periodEnd:r.toISOString(),activeSeconds:Math.round(u/1.4),endpoints:t,branches:[{id:t[0].branchId,name:"main",isDefault:!0,logicalSize:1048576*g.int(120,380)},{id:`br-${(0,l.g)(12,e,"neon-br-preview").toLowerCase()}`,name:"preview/reporting",isDefault:!1,logicalSize:1048576*g.int(60,160)}],lastGoodState:"ok"===v.state?"ok":"idle"}},{id:o("firestore").id,state:"ok",since:(0,k.$)(f,g.int(10,60)*k.h),at:p(1),data:{displayName:o("firestore").name,latencyMs:g.int(70,190),reads:g.int(4e3,22e3),writes:g.int(800,6e3),deletes:g.int(20,400),opsAt:(0,k.$)(f,g.int(10,50)*k.E).toISOString(),authUsers:g.int(80,2400),authAt:(0,k.$)(f,g.int(2,20)*k.w).toISOString(),lastGoodState:"ok"}},{id:o("turso_database").id,state:"ok",since:(0,k.$)(f,g.int(10,60)*k.h),at:p(g.int(5,50)),data:{org:h.slug,group:"default",primaryRegion:"sin",plan:"free",blockReads:!1,blockWrites:!1,rowsRead:Math.round((20+140*s)*1e6),rowsWritten:Math.round((.2+2.2*s)*1e6),storageBytes:1048576*g.int(40,600),orgRowsRead:Math.round((25+160*s)*1e6),orgRowsWritten:Math.round((.3+2.6*s)*1e6),orgStorageBytes:1048576*g.int(700,1400),orgDatabases:3,usageAt:(0,k.$)(f,g.int(5,50)*k.E).toISOString(),lastGoodState:"ok"}},{id:o("upstash_redis").id,state:"ok",since:(0,k.$)(f,g.int(10,60)*k.h),at:p(g.int(5,50)),data:{region:"ap-southeast-1",status:"active",type:"free",dailyCommands:g.int(2e3,9e3),monthlyRequests:Math.round((20+180*s)*1e3)+g.int(0,999),storageBytes:1048576*g.int(6,90),monthlyBandwidthBytes:Math.round((.1+2.4*s)*0x40000000),statsAt:(0,k.$)(f,g.int(5,50)*k.E).toISOString(),lastGoodState:"ok"}},{id:o("d1_database").id,state:"ok",since:(0,k.$)(f,g.int(10,60)*k.h),at:p(g.int(5,50)),data:{accountId:m,createdAt:o("d1_database").createdAt.toISOString(),sizeBytes:1048576*g.int(4,120),numTables:g.int(4,12),readReplication:"disabled",detailsAt:(0,k.$)(f,g.int(5,50)*k.E).toISOString(),rowsRead:g.int(4e4,9e5),rowsWritten:g.int(1e3,3e4),readQueries:g.int(4e3,6e4),writeQueries:g.int(300,6e3),accountRowsRead:g.int(9e5,18e5),accountRowsWritten:g.int(3e4,55e3),accountSizeBytes:1048576*g.int(200,900),accountDatabases:2,usageDay:f.toISOString().slice(0,10),usageAt:(0,k.$)(f,g.int(5,50)*k.E).toISOString(),lastGoodState:"ok"}}];await d.insert(c.snapshots).values(w.map(a=>({resourceId:a.id,state:a.state,stateSince:a.since,collectedAt:a.at,data:a.data}))),await d.insert(c.settings).values({key:F.F,value:{[i("cloudflare")]:{d1:"ok",analytics:"ok",at:(0,k.$)(f,g.int(5,50)*k.E).toISOString(),note:null}},createdAt:(0,k.$)(f,30*k.h),updatedAt:f});let y=["supabase_project","neon_project","turso_database","upstash_redis","firestore","d1_database","supabase_project","neon_project"],z=b.apps.slice(0,Math.max(4,b.apps.length-1));return await d.insert(c.links).values(z.map((a,b)=>({id:(0,l.T)(e,"link",a.name),fromResourceId:a.id,toResourceId:o(y[b]).id,kind:"uses_db",source:"manual",createdAt:(0,k.$)(f,g.int(20,90)*k.h),updatedAt:(0,k.$)(f,g.int(1,19)*k.h)}))),await J(a,o("supabase_project").id),await d.insert(c.keepActive).values({resourceId:o("supabase_project").id,keep:!0,autoRestore:!1,lastKeepAliveAt:(0,k.$)(f,g.int(2,20)*k.w),updatedAt:(0,k.$)(f,12*k.h)}),{dbs:n.map(({id:a,kind:b,name:c,externalId:d,accountId:e})=>({id:a,kind:b,name:c,externalId:d,accountId:e})),cloudflare:{accountId:i("cloudflare"),cfAccountId:m,label:h.name}}}async function J(a,b){let{db:c,seed:d,now:e}=a,f=(0,l.k)(d,"compute"),g=(0,k.$)(e,f.int(1,4)*k.E),h=Array.from({length:24},(a,c)=>{let d=new Date((0,D.b)(e).getTime()-c*k.w),g=Math.round((6+18*f.next())*10)/10,h=Math.round((34+14*f.next())*10)/10;return{resourceId:b,hour:d,samples:0===c?Math.max(1,Math.floor((e.getTime()-d.getTime())/(5*k.E))):12,cpuSamples:0===c?1:11,cpuAvg:g,cpuMax:Math.round(10*Math.min(70,g*(1.4+f.next())))/10,memAvg:h,memMax:Math.round(10*Math.min(85,h+6*f.next()))/10,diskPct:9.8,connUsed:f.int(8,22),connMax:60}}),i={cpuPct:h[0].cpuAvg,memPct:h[0].memAvg,diskPct:9.8,connUsed:h[0].connUsed,connMax:60,at:g.toISOString(),prev:null,recent:Array.from({length:6},(a,b)=>({at:(0,k.$)(g,(5-b)*5*k.E).toISOString(),cpu:Math.round((6+18*f.next())*10)/10}))};await c.insert(C.A).values({resourceId:b,keyCiphertext:G,keyIv:G,latest:i,lastTryAt:g,lastOkAt:g,createdAt:(0,k.$)(e,21*k.h),updatedAt:g}),await c.insert(C.l).values(h.filter(a=>a.hour.getTime()<=e.getTime()))}var K=a.i(245710),L=a.i(615089);let M=7*k.h;async function N(a,b,d,e,h,i){let{db:m,seed:n,now:o}=a,p=(0,l.k)(n,"events"),q=[],r=(a,b)=>q.push({id:(0,l.T)(n,"event",a),count:1,...b});for(let a of(0,g.f)(await m.execute(f.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(o.getTime()-M).toISOString()}::timestamptz`))){let b=`${a.branch??"unknown branch"} \xb7 ${a.commit_sha?a.commit_sha.slice(0,7):"no commit"}`,c=new Date(a.created_at_provider),d=a.building_at?new Date(a.building_at):c;r(`${a.external_id}:start`,{at:d,resourceId:a.resource_id,type:"deployment",kind:"build",message:"Deployment started",detail:b,reason:"DeployStarted"}),"ready"===a.state&&a.ready_at&&r(`${a.external_id}:ready`,{at:new Date(a.ready_at),resourceId:a.resource_id,type:"deployment",kind:"ok",message:"Deployment ready",detail:b,reason:"DeployReady"}),"error"===a.state&&r(`${a.external_id}:failed`,{at:new Date(d.getTime()+1e3*p.int(40,110)),resourceId:a.resource_id,type:"deployment",kind:"fail",message:"Deployment failed",detail:b,reason:"DeployFailed"})}let s=d.outage,t=d.monitors.find(a=>a.id===s.monitorId),u=(a,b,c,d,e,f,g)=>r(a,{at:b,resourceId:c,type:"monitor",kind:d,message:e,detail:f,reason:g});u("outage:warn",s.startedAt,s.appId,"warn","Monitor degraded","HTTP 503","MonitorDegraded"),u("outage:err",new Date(s.startedAt.getTime()+10*k.E),s.appId,"err","Monitor down","HTTP 503 on 3 checks in a row","MonitorDown"),u("outage:ok",s.recoveredAt,s.appId,"ok","Monitor recovered",`${t.path} answers again`,"MonitorRecovered"),d.degraded&&u("degraded:warn",d.degraded.since,d.degraded.appId,"warn","Monitor degraded","No answer within 5 s","MonitorDegraded");let v=h.certSoon,w=h.zoneSoon,x=new Date(v.notAfter.getTime()-14*k.h+p.int(5,50)*k.E),y=new Date(w.expiresAt.getTime()-30*k.h+p.int(5,50)*k.E);r("net:cert",{at:x,resourceId:v.id,type:"system",kind:"warn",message:`${v.name} needs attention`,detail:"Certificate expires in 13 days",reason:"NetworkAttention"}),r("net:zone",{at:y,resourceId:w.id,type:"system",kind:"warn",message:`${w.name} needs attention`,detail:"Domain expires in 29 days",reason:"NetworkAttention"});let z=new Date(o);z.setUTCHours(20,0,0,0),z.getTime()>o.getTime()-5*k.E&&z.setTime(z.getTime()-k.h);for(let a=0;a<7;a++){let b=new Date(z.getTime()-a*k.h+1e3*p.int(20,90));r(`daily:${a}`,{at:b,resourceId:null,type:"system",kind:"ok",message:"Daily jobs finished",detail:"Rollups, retention, certificates and domain expiry",reason:"DailyFinished"})}let A=(0,L.demoUserId)(n),B=(a,b,c,d,e=null)=>r(`action:${a}`,{at:(0,k.$)(o,b*k.h+p.int(1,10)*k.w+p.int(0,59)*k.E),resourceId:d,type:"action",kind:"ok",message:c,detail:e,actorUserId:A,reason:"Action"}),C=d.monitors.find(a=>"/api/health"===a.path)??d.monitors[0],D=b.apps[0],E=e.dbs.find(a=>"supabase_project"===a.kind);B("monitor-added",6,`Monitor added: ${(0,j.F)(C.url)}`,C.appId),B("db-link",5,`Database link: ${D.name} → ${E.name}`,D.id),B("keep-active",5,`Keep active on: ${E.name}`,E.id),B("rule",4,"Alert rule edited: HighLatency",null,"threshold 1,500 ms"),B("maintenance",3,"Maintenance window added",null,`Sundays 02:00 ${(0,K.D)()}, 30 min`),B("check-now",1,`Check now: ${(0,j.F)(t.url)}`,t.appId);let F=i.resolved.credential;r("action:credential",{at:new Date(F.resolvedAt.getTime()-p.int(2,9)*k.E),resourceId:null,type:"action",kind:"ok",message:`Credential replaced: ${F.title}`,detail:"Tested and stored; it no longer expires soon",actorUserId:A,reason:"Action"}),r("action:auto-recheck",{at:new Date(s.startedAt.getTime()+11*k.E+3e3),resourceId:t.appId,type:"action",kind:"err",message:`Auto-actions: Check now: ${(0,j.F)(t.url)}`,detail:null,actorUserId:null,reason:"Action"}),await m.insert(c.events).values(q.sort((a,b)=>a.at.getTime()-b.at.getTime()))}let O="76.76.21.21";async function P(a,b,d){let{db:e,seed:f,now:g}=a,h=(0,l.k)(f,"network"),j=a=>(0,k.$)(g,h.int(10,60*a)*k.E).toISOString(),m=d.cloudflare,n=h.shuffle(y).slice(0,2).map((a,b)=>({id:(0,l.T)(f,"zone",a),name:q(a),expiresAt:new Date(1===b?g.getTime()+h.int(12,24)*k.h+h.int(1,20)*k.w:g.getTime()+h.int(200,600)*k.h)})),o=a=>a.split("-").slice(1).join("-")||a,p=b.apps,r=[{name:n[0].name,app:p[0]},...[0,1,2].map(a=>({name:`${o(p[a].name)}.${n[0].name}`,app:p[a]})),...[3,4].map(a=>({name:`${o(p[a%p.length].name)}.${n[1].name}`,app:p[a%p.length]}))],s=h.int(1,3),t=r.map((a,b)=>({id:(0,l.T)(f,"domain",a.name),name:a.name,appId:a.app.id,notAfter:new Date(b===s?g.getTime()+h.int(4,9)*k.h+h.int(1,20)*k.w:g.getTime()+h.int(30,85)*k.h)})),u=(a,b,c,d,e,g=null)=>({id:(0,l.p)(32,f,"dns",a,b,c),type:b,name:c,content:d,proxied:e,ttl:e?1:300,comment:g}),v=n.map(a=>{let b=[...t.filter(b=>b.name===a.name||b.name.endsWith(`.${a.name}`)).map(b=>u(a.name,"A",b.name,O,!1,"Vercel")),u(a.name,"MX",a.name,q("mx1.mail"),!1),u(a.name,"TXT",a.name,`v=spf1 include:_spf.${q("mail")} ~all`,!1),u(a.name,"A",`legacy.${a.name}`,`192.0.2.${h.int(10,200)}`,!0,"Old server, kept for redirects")],c={expiresAt:a.expiresAt.toISOString(),registrar:"Example Registrar, Inc.",error:null,checkedAt:j(20)},d={status:"active",paused:!1,nameServers:[q("ada.ns"),q("bob.ns")],accountId:m.cfAccountId,checkedAt:j(1)},e=(0,i.G)({status:d.status,paused:d.paused,rdap:c},g),f={zone:d,ssl:{mode:"strict",error:null},records:b,recordsTruncated:!1,cfErrors:[],certs:[{type:"universal",status:"active",hosts:[a.name,`*.${a.name}`],expiresOn:new Date(g.getTime()+h.int(40,80)*k.h).toISOString()}],rdap:c,reasons:e.reasons};return{z:a,records:b,rdap:c,state:e.state,data:f}}),w=(0,k.$)(g,h.int(150,380)*k.h),x=(0,k.$)(g,h.int(5,50)*k.E);await e.insert(c.resources).values(n.map(a=>({id:a.id,accountId:m.accountId,kind:"zone",externalId:(0,l.p)(32,f,"zone-id",a.name),name:a.name,monitored:!0,meta:{status:"active",accountId:m.cfAccountId,accountName:m.label},firstSeenAt:w,lastSeenAt:x,createdAt:w,updatedAt:x}))),await e.insert(c.resources).values(t.map(a=>{let c=p.find(b=>b.id===a.appId);return{id:a.id,accountId:b.accountId,kind:"domain",externalId:a.name,name:a.name,parentId:a.appId,monitored:!0,meta:{redirect:null,verified:!0,projectId:c.externalId},firstSeenAt:w,lastSeenAt:x,createdAt:w,updatedAt:x}}));let z=["Let's Encrypt","Google Trust Services"];await e.insert(c.snapshots).values([...v.map(a=>({resourceId:a.z.id,state:a.state,stateSince:"ok"===a.state?w:new Date(a.z.expiresAt.getTime()-30*k.h),data:a.data,collectedAt:x})),...t.map(a=>{let b=v.find(b=>a.name===b.z.name||a.name.endsWith(`.${b.z.name}`)),c={notAfter:a.notAfter.toISOString(),issuer:h.pick(z),authorized:!0,error:null,checkedAt:j(19)},d={misconfigured:!1,configuredBy:"A",recommendedIps:[O],checkedAt:j(6)},e=(0,i.k)({host:a.name,tls:c,vercel:d,records:(0,i.Q)(a.name,b.records),zoneRdap:b.rdap},g),f="ok"===e.state?w:new Date(Math.min(a.notAfter.getTime()-14*k.h,b.z.expiresAt.getTime()-30*k.h));return{resourceId:a.id,state:e.state,stateSince:f,data:{tls:c,vercel:d,reasons:e.reasons},collectedAt:x}})]);let A=v[0].records.find(a=>"A"===a.type&&a.name===n[0].name&&a.content===O);return{zones:n,domains:t,certSoon:t[s],zoneSoon:n[1],vercelRecord:{id:A.id,name:A.name,zoneId:n[0].id}}}let Q=["vercel","supabase","neon","cloudflare","firebase","gcp"];async function R(a,b){let{db:d,seed:e,now:h}=a,i=(0,l.k)(e,"logs"),j=(0,g.f)(await d.execute(f.B`select resource_id, external_id from ops.deployments where is_current`)),m=i.shuffle(b.apps).slice(0,3).flatMap((a,b)=>Array.from({length:i.int(4,8)},(c,d)=>{let f=i.pick(z);return{id:(0,l.T)(e,"log",a.name,d),resourceId:a.id,deploymentId:j.find(b=>b.resource_id===a.id)?.external_id??`dpl_${(0,l.g)(24,e,"log-dpl",b)}`,rowId:`${(0,l.g)(10,e,"log-row",a.name,d).toLowerCase()}-${d}`,at:(0,k.$)(h,i.int(3,2760)*k.E+1e3*i.int(0,59)),level:f.level,message:f.message,requestMethod:f.method,requestPath:f.path,statusCode:f.status,source:"serverless"}}));await d.insert(c.storedLogs).values(m)}async function S(a){let{db:b,seed:d,now:e}=a,f=(0,l.k)(d,"provider-status"),g=(0,k.$)(e,f.int(1,4)*k.E);await b.insert(c.providerStatus).values(Q.map(a=>"cloudflare"===a?{provider:a,state:"info",indicator:"maintenance",description:"Scheduled maintenance",checkedAt:g,lastOkAt:g,error:null,incidents:[{name:"Scheduled maintenance in one Asia-Pacific data center",impact:"maintenance",startedAt:(0,k.$)(e,f.int(1,3)*k.w).toISOString(),url:null}]}:{provider:a,state:"ok",indicator:"none",description:"All Systems Operational",incidents:[],checkedAt:g,lastOkAt:g,error:null}))}async function T(a){let{db:b,seed:c,now:d}=a,e=(0,l.k)(c,"ai-usage"),g=(0,l.T)(c,"ai-agent","console"),h=e.int(70,140),i=[],j=[],m=[],n=[],o=[],p=[];for(let a=0;a<h;a++){i.push(d.getTime()-e.int(2,10080)*k.E);let a=e.chance(.04);o.push(a?429:200),j.push(a?0:e.int(600,4200)),m.push(a?0:e.int(80,700)),n.push(a?e.int(80,300):e.int(700,4800)),p.push(e.int(1,2))}let q=a=>a.reduce((a,b)=>a+b,0),r=new Date(Math.max(...i));await b.execute(f.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
|
-
values (${
|
|
5
|
-
${r.toISOString()}::timestamptz, ${
|
|
4
|
+
values (${g}::uuid, null, 'Watchbell console', '', 'console', 'Watchbell console (ask-ai)', ${(0,k.$)(d,720*k.w).toISOString()}::timestamptz,
|
|
5
|
+
${r.toISOString()}::timestamptz, ${h}, ${q(j)}, ${q(m)}, ${U(["gemini/gemini-2.5-flash","workers-ai/gemma-3-12b-it"])}::text[])`),await b.execute(f.B`
|
|
6
6
|
insert into ops.ai_usage (at, key_id, agent_id, provider_id, model, kind, tool, tokens_in, tokens_out, latency_ms, status, error_class, stream)
|
|
7
|
-
select to_timestamp(t.at / 1000.0), null, ${
|
|
7
|
+
select to_timestamp(t.at / 1000.0), null, ${g}::uuid, null, (array['gemini/gemini-2.5-flash', 'workers-ai/gemma-3-12b-it'])[t.m], 'console', null,
|
|
8
8
|
case when t.s = 429 then null else t.ti end, case when t.s = 429 then null else t.tout end, t.l, t.s,
|
|
9
9
|
case when t.s = 429 then 'rate_limited · upstream_429' else null end, false
|
|
10
|
-
from unnest(${(0,
|
|
11
|
-
${(0,
|
|
12
|
-
order by t.at`)}let
|
|
10
|
+
from unnest(${(0,k._)(i)}::bigint[], ${(0,k._)(p)}::int[], ${(0,k._)(j)}::int[], ${(0,k._)(m)}::int[], ${(0,k._)(n)}::int[],
|
|
11
|
+
${(0,k._)(o)}::int[]) as t(at, m, ti, tout, l, s)
|
|
12
|
+
order by t.at`)}let U=a=>`{${a.join(",")}}`,V=2*k.w;async function W(a,b,c,d){let{db:e,seed:g,now:h}=a,i=(0,l.k)(g,"proposals"),m=a=>(0,l.T)(g,"proposal",a),n=c.certSoon,o=b.failedDeploy,p=d.monitors.find(a=>a.id===d.outage.monitorId),q=new Date(d.outage.startedAt.getTime()+11*k.E),r=b.resolved.oldDeploy,s=new Date(r.startedAt.getTime()+i.int(2,6)*k.E),t=new Date(s.getTime()+i.int(3,15)*k.E),u=(0,k.$)(h,i.int(20,55)*k.E),v=(0,k.$)(h,i.int(8,19)*k.E);for(let a of[{id:m("pending-safe"),alertId:b.firing.cert,ruleKey:"CertExpiringSoon",room:"network",action:"domain_recheck",risk:"safe",title:`Re-check the certificate of ${n.name}`,reason:"The TLS certificate expires within 14 days; a fresh read shows whether it was already renewed.",resourceKind:"domain",resourceId:n.id,resourceName:n.name,targetRef:n.id,proposedBy:"Network",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:u,decidedAt:null,expiresAt:new Date(u.getTime()+V),claimedAt:null,finishedAt:null},{id:m("pending-risky"),alertId:b.firing.deploy,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_redeploy",risk:"risky",title:`Redeploy production ${o.appName}`,reason:`Production deployment ${o.sha} failed; the previous build is still live.`,resourceKind:"app",resourceId:o.appId,resourceName:o.appName,targetRef:o.currentExternalId,proposedBy:"Workloads",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:v,decidedAt:null,expiresAt:new Date(v.getTime()+V),claimedAt:null,finishedAt:null},{id:m("done-auto"),alertId:b.resolved.outage,ruleKey:"MonitorDown",room:"workloads",action:"recheck",risk:"safe",title:`Check ${(0,j.F)(p.url)} again now`,reason:"It returned HTTP 503 on 3 consecutive checks.",resourceKind:"app",resourceId:p.appId,resourceName:(0,j.F)(p.url),targetRef:p.id,proposedBy:"Workloads",status:"done",auto:!0,result:"Failed: HTTP 503.",decidedBy:null,createdAt:q,decidedAt:q,expiresAt:new Date(q.getTime()+V),claimedAt:new Date(q.getTime()+2e3),finishedAt:new Date(q.getTime()+2e3+i.int(300,1500))},{id:m("rejected"),alertId:r.id,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_rollback",risk:"risky",title:`Roll back ${r.appName} to the previous deployment`,reason:"The newest production build failed.",resourceKind:"app",resourceId:r.appId,resourceName:r.appName,targetRef:r.previousExternalId,proposedBy:"Workloads",status:"rejected",auto:!1,result:null,decidedBy:(0,L.memberRowId)(g),createdAt:s,decidedAt:t,expiresAt:new Date(s.getTime()+V),claimedAt:null,finishedAt:null}]){let b=a=>a?a.toISOString():null;await e.execute(f.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 (${a.id}::uuid, ${a.alertId}::uuid, ${a.ruleKey}, ${a.room}, ${a.action}, ${a.risk}, ${a.title}, ${a.reason}, ${a.resourceKind},
|
|
16
16
|
${a.resourceId}::uuid, ${a.resourceName}, ${a.targetRef}, ${a.proposedBy}, ${a.status}, ${a.auto}, ${a.result}, ${a.decidedBy}::uuid,
|
|
17
|
-
${b(a.createdAt)}::timestamptz, ${b(a.decidedAt)}::timestamptz, ${b(a.expiresAt)}::timestamptz, ${b(a.claimedAt)}::timestamptz, ${b(a.finishedAt)}::timestamptz)`)}}function
|
|
17
|
+
${b(a.createdAt)}::timestamptz, ${b(a.decidedAt)}::timestamptz, ${b(a.expiresAt)}::timestamptz, ${b(a.claimedAt)}::timestamptz, ${b(a.finishedAt)}::timestamptz)`)}}function X(a,b){return a.length?a[Math.min(a.length-1,Math.max(0,Math.ceil(b*a.length)-1))]:null}function Y(a){let b=a.filter(a=>!a.inMaintenance),c=b.map(a=>a.latencyMs).filter(a=>null!==a).sort((a,b)=>a-b);return{checks:b.length,failures:b.filter(a=>!a.ok).length,p50Ms:X(c,.5),p95Ms:X(c,.95),maxMs:c.length?c[c.length-1]:null,status5xx:b.filter(a=>null!==a.statusCode&&a.statusCode>=500).length,maintenance:a.length-b.length}}var Z=a.i(655206);let $=5*k.E,_=k.h/$,aa=Z.f.checks*_,ab=Z.f.rollupsHourly*_,ac="No answer within 5 s";async function ad(a,b){var d;let e,{db:f,seed:g,now:h}=a,i=(0,l.k)(g,"monitors"),j=[];for(let a of b.apps)for(let[b,c]of(i.chance(.6)?["/","/api/health"]:["/"]).entries())j.push({id:(0,l.T)(g,"monitor",a.name,c),appId:a.id,index:j.length,url:`https://${a.host}${c}`,path:c,createdAt:new Date(a.createdAt.getTime()+b*i.int(1,3)*k.h+i.int(2,50)*k.E)});let m=Math.floor((h.getTime()-1e4)/$)*$,n=(a,b)=>m-b*$+2e3+300*a.index,o=j.map(a=>(function(a,b){let c=(0,l.k)(a,"checks",b.id),d={ok:new Uint8Array(ab),status:new Int16Array(ab),latency:new Int32Array(ab)},e=c.int(70,380)*("/"===b.path?1:.55);for(let a=0;a<ab;a++){let b=Math.round(e*(.75+.5*c.next())*(c.chance(.02)?1.8+2*c.next():1));if(a>=3&&c.chance(3e-4)){let b=c.int(0,3);ae(d,a,3===b?{ok:!1,status:0,latency:-1}:{ok:!1,status:[500,502,503][b],latency:c.int(30,300)})}else ae(d,a,{ok:!0,status:200,latency:b})}return d})(g,a)),q=(0,l.k)(g,"outage"),r=j.filter(a=>"/"===a.path),s=q.pick(r),t=q.int(96,240),u=q.int(4,7),v=o[s.index];for(let a=t-3;a<t+u+3;a++)ae(v,a,{ok:!0,status:200,latency:v.latency[a]>0?v.latency[a]:180});for(let a=t;a<t+u;a++)ae(v,a,{ok:!1,status:a===t+u-1?502:503,latency:q.int(30,140)});let w={monitorId:s.id,appId:s.appId,startedAt:new Date(n(s,t+u-1)),endedAt:new Date(n(s,t)),recoveredAt:new Date(n(s,t-1)),failedChecks:u},x=j.filter(a=>a.appId!==s.appId),y=x.length?q.pick(x):null;y&&ae(o[y.index],0,{ok:!1,status:0,latency:-1});let z=(0,l.k)(g,"slow-windows"),A=j.filter(a=>a.id!==s.id),B=(a,b,c,d)=>{let e=o[a.index],f=b*_+z.int(12,144),g=z.int(c,d),h=[];for(let a=f;a>f-g;a--){let b=z.int(1600,2900);ae(e,a,{ok:!0,status:200,latency:b}),h.length<2&&h.push({ok:!0,statusCode:200,latencyMs:b})}let i=f-g;return(!e.ok[i]||e.latency[i]>=1500)&&ae(e,i,{ok:!0,status:200,latency:180}),{monitorId:a.id,appId:a.appId,firedAt:new Date(n(a,f-1)),resolvedAt:new Date(n(a,i)),p95:Y(h).p95Ms}},C=A[0]??s,D=A[A.length-1]??s,E=[B(C,2,4,8),B(D,5,3,6)],F=j.map(a=>(function(a,b,c){let d="unknown",e=0,f=a.createdAt;for(let a=b.ok.length-1;a>=0;a--){let g=(0,p.G)(e,{ok:1===b.ok[a],statusCode:af(b,a),latencyMs:ag(b,a),error:ah(b,a)});g.state!==d&&(f=c(a)),d=g.state,e=g.failStreak}return{id:a.id,appId:a.appId,url:a.url,path:a.path,state:d,stateSince:f,failStreak:e,lastCheckedAt:c(0),lastStatus:af(b,0),lastLatencyMs:ag(b,0),createdAt:a.createdAt}})(a,o[a.index],b=>new Date(n(a,b))));await f.insert(c.monitors).values(F.map((a,b)=>({id:a.id,resourceId:a.appId,url:a.url,kind:"http",expectedStatus:200,timeoutMs:5e3,intervalS:$/1e3,state:a.state,stateSince:a.stateSince,failStreak:a.failStreak,lastCheckedAt:a.lastCheckedAt,lastStatus:a.lastStatus,lastLatencyMs:a.lastLatencyMs,lastError:ah(o[b],0),createdAt:a.createdAt,updatedAt:a.lastCheckedAt})));let G=((e=new Date(d=h)).setUTCHours(20,0,0,0),e.getTime()>d.getTime()-5*k.E&&e.setTime(e.getTime()-k.h),e.getTime());for(let b of j)await ai(a,b,o[b.index],new Date(n(b,0))),await aj(a,b,o[b.index],a=>n(b,a),G);return await ak(a,j.length),{monitors:F,outage:w,degraded:y?{monitorId:y.id,appId:y.appId,since:new Date(n(y,0))}:null,slow:E}}function ae(a,b,c){b<0||b>=a.ok.length||(a.ok[b]=+!!c.ok,a.status[b]=c.status,a.latency[b]=c.latency)}let af=(a,b)=>0===a.status[b]?null:a.status[b],ag=(a,b)=>a.latency[b]<0?null:a.latency[b],ah=(a,b)=>a.ok[b]?null:a.status[b]?`HTTP ${a.status[b]}`:ac;async function ai(a,b,c,d){let e=Array.from({length:aa},(a,b)=>b);await a.db.execute(f.B`
|
|
18
18
|
insert into ops.checks (id, monitor_id, at, ok, status_code, latency_ms, error, in_maintenance)
|
|
19
19
|
select md5(${`${a.seed}:${b.id}:`} || t.k)::uuid, ${b.id}::uuid, ${d.toISOString()}::timestamptz - t.k * interval '5 minutes',
|
|
20
|
-
t.ok, t.s, t.l, case when t.ok then null when t.s is null then ${
|
|
21
|
-
from unnest(${(0,
|
|
22
|
-
${(0,
|
|
20
|
+
t.ok, t.s, t.l, case when t.ok then null when t.s is null then ${ac} else 'HTTP ' || t.s end, false
|
|
21
|
+
from unnest(${(0,k._)(e)}::int[], ${(0,k._)(e.map(a=>1===c.ok[a]))}::bool[], ${(0,k._)(e.map(a=>af(c,a)))}::int[],
|
|
22
|
+
${(0,k._)(e.map(a=>ag(c,a)))}::int[]) as t(k, ok, s, l)`)}async function aj(a,b,c,d,e){let g=Math.ceil(d(c.ok.length-1)/k.w)*k.w,h=[],i=[],j=[],l=[],m=[],n=[],o=[],p=-1,q=[],r=()=>{if(p<0||!q.length)return;let a=Y(q);h.push(p/1e3),i.push(a.checks),j.push(a.failures),l.push(a.p50Ms),m.push(a.p95Ms),n.push(a.maxMs),o.push(a.status5xx)};for(let a=0;a<c.ok.length;a++){let b=Math.floor(d(a)/k.w)*k.w;if(!(b>=e)){if(b<g)break;b!==p&&(r(),p=b,q=[]),q.push({ok:1===c.ok[a],statusCode:af(c,a),latencyMs:ag(c,a)})}}r(),h.length&&await a.db.execute(f.B`
|
|
23
23
|
insert into ops.rollups_hourly (monitor_id, hour, checks, failures, p50_ms, p95_ms, max_ms, status_5xx, maintenance)
|
|
24
24
|
select ${b.id}::uuid, to_timestamp(t.h), t.c, t.f, t.p50, t.p95, t.mx, t.s5, 0
|
|
25
|
-
from unnest(${(0,
|
|
26
|
-
${(0,
|
|
25
|
+
from unnest(${(0,k._)(h)}::bigint[], ${(0,k._)(i)}::int[], ${(0,k._)(j)}::int[], ${(0,k._)(l)}::int[],
|
|
26
|
+
${(0,k._)(m)}::int[], ${(0,k._)(n)}::int[], ${(0,k._)(o)}::int[]) as t(h, c, f, p50, p95, mx, s5)`)}async function ak(a,b){let{seed:d,now:e}=a,f=(0,l.k)(d,"collector-runs"),g=Math.floor((e.getTime()-1e4)/k.E)*k.E;await a.db.insert(c.collectorRuns).values(Array.from({length:60},(a,c)=>{let e=g-c*k.E,h=e%$==0,i=(h?2e3+300*b:600)+f.int(200,1400);return{id:(0,l.T)(d,"collector-run",c),startedAt:new Date(e+1e3),finishedAt:new Date(e+1e3+i),trigger:"manual",tasks:h?["heartbeats","checks","vercel","alerts"]:["heartbeats","vercel","alerts"],ok:!0,durationMs:i,checks:h?b:0}}))}async function al(a,b,c,d,{foreignKeyChecks:e=!1}={}){await a.transaction(async a=>{e||await a.execute(f.B`set local session_replication_role = replica`);let g={db:a,seed:b,now:c,email:d};await (0,L.seedMember)(g);let h=await A(g),i=await ad(g,h);await B(g,h,i.monitors);let j=await I(g,h),k=await P(g,h,j),l=await n(g,h,i,j,k);await W(g,l,k,i),await N(g,h,i,j,k,l),await R(g,h),await S(g),await T(g)})}var am=a.i(330787),an=a.i(666680),ao=a.i(902157),ap=a.i(750227),aq=a.i(727028),ar=a.i(632019),as=a.i(488077),at=a.i(614755);let au=globalThis;async function av(a){let c=await ar.f.create();try{return await (0,as.f)((0,b.f)({client:c}),{migrationsFolder:a}),{blob:await c.dumpDataDir("none"),from:"process"}}finally{await c.close()}}function aw(a){return au.__watchbellDemoTemplate=a,a.catch(()=>{au.__watchbellDemoTemplate===a&&delete au.__watchbellDemoTemplate}),a}function ax(){if(au.__watchbellDemoTemplate)return au.__watchbellDemoTemplate;let a=performance.now(),b=(0,at.selfhostMigrationsFolder)(),c=function(a){let b=function(a=process.env){return(0,ap.resolve)((0,d.d)(a,"DEMO_SNAPSHOT_DIR")||"demo-snapshot")}();try{if(JSON.parse((0,ao.readFileSync)((0,ap.join)(b,"migrated.json"),"utf8")).migrations!==function(a){let b=(0,an.createHash)("sha256");for(let c of["meta/_journal.json",...(0,ao.readdirSync)(a).filter(a=>a.endsWith(".sql")).sort()])b.update(`${c}\0`).update((0,ao.readFileSync)((0,ap.join)(a,c))).update("\0");return b.digest("hex")}(a))return null;return{blob:new Blob([(0,aq.gunzipSync)((0,ao.readFileSync)((0,ap.join)(b,"migrated.tar.gz")))],{type:"application/x-tar"}),from:"build"}}catch{return null}}(b),e=aw(c?Promise.resolve(c):av(b));return e.then(b=>console.info(`demo: schema template ${"build"===b.from?"read from the build's snapshot":"migrated in this process"} in ${Math.round(performance.now()-a)} ms`),()=>void 0),e}async function ay(){let a=ax(),b=await a;try{return await ar.f.create({loadDataDir:b.blob})}catch(c){if("build"!==b.from)throw c;return au.__watchbellDemoTemplate===a&&(console.warn(`demo: the build's migrated snapshot didn't load (${c instanceof Error?c.message:String(c)}); migrating instead`),aw(av((0,at.selfhostMigrationsFolder)()))),ar.f.create({loadDataDir:(await ax()).blob})}}var az=a.i(904370);let aA=0,aB=()=>Date.now()+aA;function aC(a=process.env){let b=Number(((0,d.d)(a,"DEMO_POOL_MAX")??"").trim());return Number.isInteger(b)&&b>=1?b:3}let aD=globalThis.__watchpostDemoPool??={entries:new Map,live:new Set,waiters:new Set,creating:0,creationQueue:[]};function aE(){let a=[...aD.waiters];for(let b of(aD.waiters.clear(),a))b()}function aF(a){!a.evicted||a.leases>0||a.closing||(a.closing=a.pglite.then(a=>a.close()).catch(()=>void 0).finally(()=>{aD.live.delete(a),aE()}))}function aG(a){aD.entries.get(a.seed)===a&&aD.entries.delete(a.seed),a.evicted=!0,0===aD.entries.size&&aD.sweeper&&(clearInterval(aD.sweeper),aD.sweeper=void 0),aF(a),aE()}let aH=a=>a.created&&0===a.leases&&!a.evicted,aI=(a,b)=>aH(a)&&b-a.lastUsed>=6e4;function aJ(a=aB()){for(let b of[...aD.entries.values()])aH(b)&&a-b.lastUsed>12e5&&aG(b)}async function aK(a){let b=aB()+5e3;for(;;){if(a.evicted)throw Error("The demo database was closed. Reload the page.");if(aD.live.size<aC())return void aD.live.add(a);let c=aB(),d=[...aD.entries.values()].find(a=>aI(a,c));if(d){aG(d),await d.closing;continue}let f=b-c;if(f<=0)throw(0,e.f)(e.L);await function(a){return new Promise(b=>{let c=setTimeout(d,a);function d(){clearTimeout(c),aD.waiters.delete(d),b()}aD.waiters.add(d)})}(Math.min(f,function(a){let b=1/0;for(let c of aD.entries.values())aH(c)&&(b=Math.min(b,c.lastUsed+6e4-a));return Math.max(0,b)}(c)+1))}}async function aL(){aD.creating<2?aD.creating++:await new Promise(a=>aD.creationQueue.push(a))}async function aM(a,d){let f=performance.now();if(!az.demoCreations.take(await (0,am.R)(),a.seed))throw(0,e.f)(e._);await aK(a);try{let e=d??await (0,am._)();await aL();try{let d=performance.now(),g=await ay(),h=performance.now();try{let d=(0,b.f)({client:g,schema:c});await al(d,a.seed,new Date,e)}catch(a){throw await g.close().catch(()=>void 0),a}a.created=!0;let i=(a,b)=>Math.round(b-a),j=performance.now();return console.info(`demo: visitor database ready in ${i(f,j)} ms (waited ${i(f,d)}, schema ${i(d,h)}, seed ${i(h,j)})`),g}finally{let a;(a=aD.creationQueue.shift())?a():aD.creating--}}catch(b){throw aD.live.delete(a),b}finally{aE()}}function aN(a,b){if(!a)throw Error("Demo seed missing");aJ();let c=aD.entries.get(a);if(c)aD.entries.delete(a);else{let d={seed:a,created:!1,lastUsed:0,leases:0,evicted:!1};d.pglite=aM(d,b),d.pglite.catch(()=>{aD.entries.get(a)===d&&aD.entries.delete(a)}),c=d}return c.lastUsed=aB(),aD.entries.set(a,c),aD.sweeper||(aD.sweeper=setInterval(()=>aJ(),6e4),aD.sweeper.unref?.()),c}async function aO(a,b,c){let d=aN(a,c);d.leases++;try{return await b(await d.pglite)}finally{d.leases--,d.lastUsed=aB(),aF(d),aE()}}async function aP(){for(let a of[...aD.entries.values()])aG(a);await Promise.all([...aD.live].map(a=>a.closing))}a.s(["BUSY_WAIT_MS",0,5e3,"DEFAULT_POOL_MAX",0,3,"DEMO_BUSY",()=>e.L,"DEMO_TOO_MANY",()=>e._,"IDLE_MS",0,12e5,"MAX_CREATING",0,2,"RECENT_MS",0,6e4,"closeDemoPool",0,aP,"demoDbFor",0,function(a,b){return aN(a,b).pglite},"demoPoolMax",0,aC,"setDemoPoolClockOffsetForTests",0,function(a){if(!process.env.VITEST)throw Error("setDemoPoolClockOffsetForTests is for tests only");aA=a,aE()},"sweepIdleDemoDbs",0,aJ,"withDemoDb",0,aO],601533)}];
|
|
27
27
|
|
|
28
28
|
//# sourceMappingURL=src_lib_demo_pool_ts_0fpn8acsdk64i._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{"use strict";module.exports=[338424,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(368114),g=a.i(271288),h=a.i(405050);let i=(0,h.createServerReference)("40ce37707f006236f22784facf4e9cbcf3f49eb298",h.callServer,void 0,h.findSourceMapURL,"saveOfficeAutoRollback");a.s(["AutoRollbackForm",0,function({saved:a,choices:h}){let[j,k]=(0,c.useState)(a),[l,m]=(0,c.useTransition)(),n=a=>{k(b=>({...b,...a})),m(async()=>{try{let b=await i(a);b.ok?(b.data&&k(b.data),d.c.success(b.message??"Saved.")):(k(j),d.c.error(b.error))}catch{k(j),d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})};return(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-2",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(g.f,{checked:j.enabled,disabled:l,label:"Auto-rollback when a new deploy errors",onChange:a=>n({enabled:a})}),(0,b.jsxs)("span",{className:"text-[13px]",children:["Auto-rollback when a new deploy errors (first ",(0,b.jsx)("span",{className:"font-mono",children:j.windowMin})," minutes)"]})]}),(0,b.jsxs)("label",{className:"inline-flex items-center gap-2 text-[13px] text-ink-soft",children:["Window",(0,b.jsx)("select",{className:(0,f.f)(e.S,"w-auto py-1"),value:j.windowMin,disabled:l,"aria-label":"Auto-rollback window in minutes",onChange:a=>n({windowMin:Number(a.target.value)}),children:h.map(a=>(0,b.jsxs)("option",{value:a,children:[a," min"]},a))})]})]})}],338424)},719354,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(462007),f=a.i(271288),g=a.i(405050);let h=(0,g.createServerReference)("408066122cde17446d6ee7237d1c03274909bf9da0",g.callServer,void 0,g.findSourceMapURL,"saveOfficeAutoRun");a.s(["AutoRunForm",0,function({saved:a,rows:g}){let[i,j]=(0,c.useState)(a),[k,l]=(0,c.useTransition)();return(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:e.o,children:[(0,b.jsx)(e.U,{head:["Action","Auto-run","What it does"]}),(0,b.jsx)("tbody",{children:g.map(a=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("td",{className:e.z,children:a.label}),(0,b.jsx)("td",{className:e.z,children:a.risky?(0,b.jsx)("span",{className:"text-[12.5px] text-ink-soft",children:"selalu minta persetujuan"}):(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(f.f,{checked:i[a.kind],disabled:k,label:`Auto-run: ${a.label}`,onChange:b=>{var c;return c=a.kind,void(j(a=>({...a,[c]:b})),l(async()=>{try{let a=await h({[c]:b});a.ok?(a.data&&j(a.data),d.c.success(a.message??"Saved.")):(j(a=>({...a,[c]:!b})),d.c.error(a.error))}catch{j(a=>({...a,[c]:!b})),d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}}))}}),(0,b.jsx)("span",{className:"text-[13px]",children:i[a.kind]?"On":"Off"})]})}),(0,b.jsx)("td",{className:`${e.z} whitespace-normal text-ink-soft`,children:a.what})]},a.kind))})]})})}],719354)},265758,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(271288),f=a.i(405050);let g=(0,f.createServerReference)("4019187cf916c41f39aff494b9132f6bc5a032f602",f.callServer,void 0,f.findSourceMapURL,"saveOfficeAutoSecurity"),h=[{level:"critical",label:"Critical"},{level:"high",label:"High"},{level:"moderate",label:"Moderate"}];a.s(["AutoSecurityForm",0,function({saved:a,rollbackOn:f}){let[i,j]=(0,c.useState)(a),[k,l]=(0,c.useTransition)(),m=a=>{j(b=>({...b,...a})),l(async()=>{try{let b=await g(a);b.ok?(b.data&&j(b.data),d.c.success(b.message??"Saved.")):(j(i),d.c.error(b.error))}catch{j(i),d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})};return(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(e.f,{checked:i.enabled,disabled:k,label:"Automatic security fixes",onChange:a=>m({enabled:a})}),(0,b.jsxs)("span",{className:"text-[13px]",children:["Automatic security fixes ",i.enabled?"on":"off"]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-1.5 text-[13px] text-ink-soft",children:[(0,b.jsx)("span",{children:"For advisories:"}),h.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(e.f,{checked:i.severities.includes(a.level),disabled:k||!i.enabled,label:`Severity ${a.label}`,onChange:b=>{let c;return c=a.level,m({severities:h.map(a=>a.level).filter(a=>a===c?b:i.severities.includes(a))})}}),a.label]},a.level)),(0,b.jsx)("span",{children:"· major updates always wait for you"})]}),i.enabled&&!f&&(0,b.jsx)("p",{className:"rounded-md border border-line bg-surface-2 px-3 py-2 text-[13px] text-warn",role:"status",children:"Without auto-rollback, the PR is opened automatically but the merge waits for you."})]})}],265758)},527955,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(405050);let g=(0,f.createServerReference)("4088b8b4affb42eeb5013ceabb577511f660910e7b",f.callServer,void 0,f.findSourceMapURL,"dismissNote");a.s(["DismissNoteButton",0,function({id:a}){let[f,h]=(0,c.useTransition)();return(0,b.jsx)(e.K,{variant:"ghost",size:"sm",disabled:f,onClick:()=>h(async()=>{try{let b=await g(a);b.ok?d.c.success(b.message??"Dismissed."):d.c.error(b.error)}catch{d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}}),children:f?"Dismissing…":"Dismiss"})}],527955)},61024,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(405050);let g=(0,f.createServerReference)("000f847f6a6b252e00392c21321fb0d52bd1716f27",f.callServer,void 0,f.findSourceMapURL,"regenerateSummary");a.s(["RegenerateButton",0,function({label:a}){let[f,h]=(0,c.useTransition)();return(0,b.jsx)(e.K,{variant:"ghost",size:"sm",disabled:f,className:"-my-0.5 px-1 py-0",onClick:()=>h(async()=>{try{let a=await g();a.ok?d.c.success(a.message??"Done."):d.c.error(a.error)}catch{d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}}),children:f?"Working…":a})}],61024)},473944,a=>{var b=a.i(187924),c=a.i(402699);let d=(0,a.i(449862).f)("outline","message-2","Message2",[["path",{d:"M8 9h8",key:"svg-0"}],["path",{d:"M8 13h6",key:"svg-1"}],["path",{d:"M9 18h-3a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-3l-3 3l-3 -3",key:"svg-2"}]]);var e=a.i(572131),f=a.i(823292),g=a.i(619089),h=a.i(901615),i=a.i(405050);let j=(0,i.createServerReference)("40739a14cd07286c30897e25478344aa18d290adbf",i.callServer,void 0,i.findSourceMapURL,"askAntigravity"),k=(0,i.createServerReference)("4050b97d7fed49555fd972b897eec97d91cc22943b",i.callServer,void 0,i.findSourceMapURL,"askWhy");var l=a.i(295914),m=a.i(147474),n=a.i(368114);let o={brand:"border-l-brand",err:"border-l-err",warn:"border-l-warn-icon"};function p({icon:a,tone:c="brand",meta:d,action:e,className:f,children:g}){return(0,b.jsxs)("div",{className:(0,n.f)("flex gap-2.5 rounded-md border border-line border-l-[3px] bg-surface-2 px-3 py-2.5 text-[13px]",o[c],f),children:[(0,b.jsx)("span",{className:"mt-px shrink-0 text-brand",children:a}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[g,d&&(0,b.jsx)("span",{className:"mt-1 block text-[12px] text-ink-faint",children:d})]}),e&&(0,b.jsx)("div",{className:"shrink-0",children:e})]})}var q=a.i(700629);a.s(["WhyAi",0,function({appId:a,provider:i,question:n,nowMs:o,agConnected:r=!1}){let[s,t]=(0,e.useTransition)(),[u,v]=(0,e.useState)(null),[w,x]=(0,e.useState)(null),[y,z]=(0,e.useState)(null),A=new Date(o),B=n?.status==="pending",C=b=>{z(null),v(b),t(async()=>{try{if("now"===b){let b=await k(a);b.ok&&b.data?x(b.data):b.ok||z(b.error)}else{let b=await j(a);b.ok?b.data?.status==="answered"&&b.data.text?x({text:b.data.text,model:b.data.model??"",ms:b.data.ms??0}):f.c.success(b.message??"Sent."):z(b.error)}}catch{z("Watchbell didn't answer. Check that it's still running, then try again.")}})};return(0,b.jsxs)("div",{className:"border-t border-line pt-3",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[r?(0,b.jsxs)(b.Fragment,{children:[i&&(0,b.jsxs)(g.K,{size:"sm",disabled:s,onClick:()=>C("now"),children:[(0,b.jsx)(d,{size:15,"aria-hidden":!0}),s&&"now"===u?"Asking…":`Answer now with ${i.model}`]}),(0,b.jsxs)(g.K,{size:"sm",disabled:s||B,onClick:()=>C("ag"),children:[(0,b.jsx)(d,{size:15,"aria-hidden":!0}),s&&"ag"===u?"Sending…":n&&"pending"!==n.status?h.v.askAgain:h.v.ask]})]}):i?(0,b.jsxs)(g.K,{size:"sm",disabled:s,onClick:()=>C("ag"),children:[(0,b.jsx)(d,{size:15,"aria-hidden":!0}),s?"Asking…":`Ask ${i.model}`]}):(0,b.jsx)("span",{className:"text-[13px] text-ink-soft",children:"No AI provider is connected. Connect one under AI Gateway › Bring your own key."}),s&&(0,b.jsx)(q.f,{})]}),(0,b.jsxs)("p",{className:"mt-1.5 text-[12px] text-ink-faint",children:["Sends the problems above with names aliased. ",r?`${i?"Answer now stores nothing; ":""}${h.v.keptNote}`:"The question and its answer are kept for 7 days on AI › Ask."]}),y&&(0,b.jsx)("p",{role:"alert",className:"mt-2 text-[13px] text-err",children:y}),w&&(0,b.jsxs)(p,{className:"mt-2.5",icon:(0,b.jsx)(d,{size:18,"aria-hidden":!0}),meta:`AI \xb7 ${w.model} \xb7 ${(w.ms/1e3).toFixed(1)} s \xb7 sent: the problems above, names aliased \xb7 can be wrong`,children:[(0,b.jsx)("b",{className:"font-medium",children:"What’s likely going on"}),(0,b.jsx)(l.f,{source:w.text})]}),n?.status==="pending"&&(0,b.jsx)(p,{className:"mt-2.5",icon:(0,b.jsx)(c.f,{size:18,className:"animate-spin","aria-hidden":!0}),meta:`Asked ${(0,m.$)(new Date(n.createdAt),A)} \xb7 it answers when it next checks in; this page refreshes by itself`,children:(0,b.jsx)("p",{role:"status",children:h.I.waiting})}),n?.status==="answered"&&n.answer&&(0,b.jsxs)(p,{className:"mt-2.5",icon:(0,b.jsx)(d,{size:18,"aria-hidden":!0}),meta:`AI \xb7 ${[n.client,n.model].filter(Boolean).join(" · ")||h.v.answeredFallback} \xb7 ${n.answeredAt?(0,m.$)(new Date(n.answeredAt),A):""} \xb7 sent: the problems above, names aliased \xb7 written by an agent, can be wrong`,children:[(0,b.jsx)("b",{className:"font-medium",children:"watchpost"===n.client?"The answer":h.v.answerTitle}),(0,b.jsx)(l.f,{source:n.answer})]}),n?.status==="expired"&&(0,b.jsxs)("p",{className:"mt-2.5 text-[12.5px] text-ink-soft",children:[h.v.expired((0,m.$)(new Date(n.createdAt),A))," Check that an agent is connected under AI Gateway › Connect an agent."]})]})}],473944)}]})();
|
|
1
|
+
(()=>{"use strict";module.exports=[338424,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(368114),g=a.i(271288),h=a.i(405050);let i=(0,h.createServerReference)("403088bf67ebad30dbea857c3e962c2e284ffac9ca",h.callServer,void 0,h.findSourceMapURL,"saveOfficeAutoRollback");a.s(["AutoRollbackForm",0,function({saved:a,choices:h}){let[j,k]=(0,c.useState)(a),[l,m]=(0,c.useTransition)(),n=a=>{k(b=>({...b,...a})),m(async()=>{try{let b=await i(a);b.ok?(b.data&&k(b.data),d.c.success(b.message??"Saved.")):(k(j),d.c.error(b.error))}catch{k(j),d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})};return(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-2",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(g.f,{checked:j.enabled,disabled:l,label:"Auto-rollback when a new deploy errors",onChange:a=>n({enabled:a})}),(0,b.jsxs)("span",{className:"text-[13px]",children:["Auto-rollback when a new deploy errors (first ",(0,b.jsx)("span",{className:"font-mono",children:j.windowMin})," minutes)"]})]}),(0,b.jsxs)("label",{className:"inline-flex items-center gap-2 text-[13px] text-ink-soft",children:["Window",(0,b.jsx)("select",{className:(0,f.f)(e.S,"w-auto py-1"),value:j.windowMin,disabled:l,"aria-label":"Auto-rollback window in minutes",onChange:a=>n({windowMin:Number(a.target.value)}),children:h.map(a=>(0,b.jsxs)("option",{value:a,children:[a," min"]},a))})]})]})}],338424)},719354,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(462007),f=a.i(271288),g=a.i(405050);let h=(0,g.createServerReference)("40c545571afb463110a2846227eb11c343d1cf13e1",g.callServer,void 0,g.findSourceMapURL,"saveOfficeAutoRun");a.s(["AutoRunForm",0,function({saved:a,rows:g}){let[i,j]=(0,c.useState)(a),[k,l]=(0,c.useTransition)();return(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:e.o,children:[(0,b.jsx)(e.U,{head:["Action","Auto-run","What it does"]}),(0,b.jsx)("tbody",{children:g.map(a=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("td",{className:e.z,children:a.label}),(0,b.jsx)("td",{className:e.z,children:a.risky?(0,b.jsx)("span",{className:"text-[12.5px] text-ink-soft",children:"selalu minta persetujuan"}):(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(f.f,{checked:i[a.kind],disabled:k,label:`Auto-run: ${a.label}`,onChange:b=>{var c;return c=a.kind,void(j(a=>({...a,[c]:b})),l(async()=>{try{let a=await h({[c]:b});a.ok?(a.data&&j(a.data),d.c.success(a.message??"Saved.")):(j(a=>({...a,[c]:!b})),d.c.error(a.error))}catch{j(a=>({...a,[c]:!b})),d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}}))}}),(0,b.jsx)("span",{className:"text-[13px]",children:i[a.kind]?"On":"Off"})]})}),(0,b.jsx)("td",{className:`${e.z} whitespace-normal text-ink-soft`,children:a.what})]},a.kind))})]})})}],719354)},265758,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(271288),f=a.i(405050);let g=(0,f.createServerReference)("40b29d80ab43b135db8aaf2541a0595eb6b7bf06c1",f.callServer,void 0,f.findSourceMapURL,"saveOfficeAutoSecurity"),h=[{level:"critical",label:"Critical"},{level:"high",label:"High"},{level:"moderate",label:"Moderate"}];a.s(["AutoSecurityForm",0,function({saved:a,rollbackOn:f}){let[i,j]=(0,c.useState)(a),[k,l]=(0,c.useTransition)(),m=a=>{j(b=>({...b,...a})),l(async()=>{try{let b=await g(a);b.ok?(b.data&&j(b.data),d.c.success(b.message??"Saved.")):(j(i),d.c.error(b.error))}catch{j(i),d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})};return(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(e.f,{checked:i.enabled,disabled:k,label:"Automatic security fixes",onChange:a=>m({enabled:a})}),(0,b.jsxs)("span",{className:"text-[13px]",children:["Automatic security fixes ",i.enabled?"on":"off"]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-1.5 text-[13px] text-ink-soft",children:[(0,b.jsx)("span",{children:"For advisories:"}),h.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(e.f,{checked:i.severities.includes(a.level),disabled:k||!i.enabled,label:`Severity ${a.label}`,onChange:b=>{let c;return c=a.level,m({severities:h.map(a=>a.level).filter(a=>a===c?b:i.severities.includes(a))})}}),a.label]},a.level)),(0,b.jsx)("span",{children:"· major updates always wait for you"})]}),i.enabled&&!f&&(0,b.jsx)("p",{className:"rounded-md border border-line bg-surface-2 px-3 py-2 text-[13px] text-warn",role:"status",children:"Without auto-rollback, the PR is opened automatically but the merge waits for you."})]})}],265758)},527955,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(405050);let g=(0,f.createServerReference)("4041d3ef96e5432dad0f877e9c7c28744c8aced495",f.callServer,void 0,f.findSourceMapURL,"dismissNote");a.s(["DismissNoteButton",0,function({id:a}){let[f,h]=(0,c.useTransition)();return(0,b.jsx)(e.K,{variant:"ghost",size:"sm",disabled:f,onClick:()=>h(async()=>{try{let b=await g(a);b.ok?d.c.success(b.message??"Dismissed."):d.c.error(b.error)}catch{d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}}),children:f?"Dismissing…":"Dismiss"})}],527955)},61024,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(619089),f=a.i(405050);let g=(0,f.createServerReference)("000c9d348ecbe2376452962941643afc4b4e227c55",f.callServer,void 0,f.findSourceMapURL,"regenerateSummary");a.s(["RegenerateButton",0,function({label:a}){let[f,h]=(0,c.useTransition)();return(0,b.jsx)(e.K,{variant:"ghost",size:"sm",disabled:f,className:"-my-0.5 px-1 py-0",onClick:()=>h(async()=>{try{let a=await g();a.ok?d.c.success(a.message??"Done."):d.c.error(a.error)}catch{d.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}}),children:f?"Working…":a})}],61024)},473944,a=>{var b=a.i(187924),c=a.i(402699);let d=(0,a.i(449862).f)("outline","message-2","Message2",[["path",{d:"M8 9h8",key:"svg-0"}],["path",{d:"M8 13h6",key:"svg-1"}],["path",{d:"M9 18h-3a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-3l-3 3l-3 -3",key:"svg-2"}]]);var e=a.i(572131),f=a.i(823292),g=a.i(619089),h=a.i(901615),i=a.i(405050);let j=(0,i.createServerReference)("40e125fc472c4b04dab848111ea1f124b3f2a2ba3a",i.callServer,void 0,i.findSourceMapURL,"askAntigravity"),k=(0,i.createServerReference)("40f1d424d76b652e17ae52c03ec063ced51b58a6f4",i.callServer,void 0,i.findSourceMapURL,"askWhy");var l=a.i(295914),m=a.i(147474),n=a.i(368114);let o={brand:"border-l-brand",err:"border-l-err",warn:"border-l-warn-icon"};function p({icon:a,tone:c="brand",meta:d,action:e,className:f,children:g}){return(0,b.jsxs)("div",{className:(0,n.f)("flex gap-2.5 rounded-md border border-line border-l-[3px] bg-surface-2 px-3 py-2.5 text-[13px]",o[c],f),children:[(0,b.jsx)("span",{className:"mt-px shrink-0 text-brand",children:a}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[g,d&&(0,b.jsx)("span",{className:"mt-1 block text-[12px] text-ink-faint",children:d})]}),e&&(0,b.jsx)("div",{className:"shrink-0",children:e})]})}var q=a.i(700629);a.s(["WhyAi",0,function({appId:a,provider:i,question:n,nowMs:o,agConnected:r=!1}){let[s,t]=(0,e.useTransition)(),[u,v]=(0,e.useState)(null),[w,x]=(0,e.useState)(null),[y,z]=(0,e.useState)(null),A=new Date(o),B=n?.status==="pending",C=b=>{z(null),v(b),t(async()=>{try{if("now"===b){let b=await k(a);b.ok&&b.data?x(b.data):b.ok||z(b.error)}else{let b=await j(a);b.ok?b.data?.status==="answered"&&b.data.text?x({text:b.data.text,model:b.data.model??"",ms:b.data.ms??0}):f.c.success(b.message??"Sent."):z(b.error)}}catch{z("Watchbell didn't answer. Check that it's still running, then try again.")}})};return(0,b.jsxs)("div",{className:"border-t border-line pt-3",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[r?(0,b.jsxs)(b.Fragment,{children:[i&&(0,b.jsxs)(g.K,{size:"sm",disabled:s,onClick:()=>C("now"),children:[(0,b.jsx)(d,{size:15,"aria-hidden":!0}),s&&"now"===u?"Asking…":`Answer now with ${i.model}`]}),(0,b.jsxs)(g.K,{size:"sm",disabled:s||B,onClick:()=>C("ag"),children:[(0,b.jsx)(d,{size:15,"aria-hidden":!0}),s&&"ag"===u?"Sending…":n&&"pending"!==n.status?h.v.askAgain:h.v.ask]})]}):i?(0,b.jsxs)(g.K,{size:"sm",disabled:s,onClick:()=>C("ag"),children:[(0,b.jsx)(d,{size:15,"aria-hidden":!0}),s?"Asking…":`Ask ${i.model}`]}):(0,b.jsx)("span",{className:"text-[13px] text-ink-soft",children:"No AI provider is connected. Connect one under AI Gateway › Bring your own key."}),s&&(0,b.jsx)(q.f,{})]}),(0,b.jsxs)("p",{className:"mt-1.5 text-[12px] text-ink-faint",children:["Sends the problems above with names aliased. ",r?`${i?"Answer now stores nothing; ":""}${h.v.keptNote}`:"The question and its answer are kept for 7 days on AI › Ask."]}),y&&(0,b.jsx)("p",{role:"alert",className:"mt-2 text-[13px] text-err",children:y}),w&&(0,b.jsxs)(p,{className:"mt-2.5",icon:(0,b.jsx)(d,{size:18,"aria-hidden":!0}),meta:`AI \xb7 ${w.model} \xb7 ${(w.ms/1e3).toFixed(1)} s \xb7 sent: the problems above, names aliased \xb7 can be wrong`,children:[(0,b.jsx)("b",{className:"font-medium",children:"What’s likely going on"}),(0,b.jsx)(l.f,{source:w.text})]}),n?.status==="pending"&&(0,b.jsx)(p,{className:"mt-2.5",icon:(0,b.jsx)(c.f,{size:18,className:"animate-spin","aria-hidden":!0}),meta:`Asked ${(0,m.$)(new Date(n.createdAt),A)} \xb7 it answers when it next checks in; this page refreshes by itself`,children:(0,b.jsx)("p",{role:"status",children:h.I.waiting})}),n?.status==="answered"&&n.answer&&(0,b.jsxs)(p,{className:"mt-2.5",icon:(0,b.jsx)(d,{size:18,"aria-hidden":!0}),meta:`AI \xb7 ${[n.client,n.model].filter(Boolean).join(" · ")||h.v.answeredFallback} \xb7 ${n.answeredAt?(0,m.$)(new Date(n.answeredAt),A):""} \xb7 sent: the problems above, names aliased \xb7 written by an agent, can be wrong`,children:[(0,b.jsx)("b",{className:"font-medium",children:"watchpost"===n.client?"The answer":h.v.answerTitle}),(0,b.jsx)(l.f,{source:n.answer})]}),n?.status==="expired"&&(0,b.jsxs)("p",{className:"mt-2.5 text-[12.5px] text-ink-soft",children:[h.v.expired((0,m.$)(new Date(n.createdAt),A))," Check that an agent is connected under AI Gateway › Connect an agent."]})]})}],473944)}]})();
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_private_0iy_wyg2p1jkn._.js.map
|
package/server/.next/server/chunks/ssr/src_private_actions_decide-form_tsx_1hngtxpyle3v8._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[5862,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(619089),e=a.i(368114),f=a.i(405050);let g=(0,f.createServerReference)("
|
|
1
|
+
module.exports=[5862,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(619089),e=a.i(368114),f=a.i(405050);let g=(0,f.createServerReference)("6053025491d98baab6027ded0cc089b84bffa00fb1",f.callServer,void 0,f.findSourceMapURL,"decideProposalForm");a.s(["DecideForm",0,function({id:a}){let[f,h,i]=(0,c.useActionState)(g,null);return(0,b.jsxs)("form",{action:h,className:"flex flex-wrap items-center gap-2",children:[(0,b.jsx)("input",{type:"hidden",name:"id",value:a}),(0,b.jsx)("button",{type:"submit",name:"decision",value:"approve",disabled:i,className:(0,d.R)({variant:"primary",size:"sm"}),children:"Approve"}),(0,b.jsx)("button",{type:"submit",name:"decision",value:"reject",disabled:i,className:(0,d.R)({size:"sm"}),children:"Reject"}),i&&(0,b.jsx)("span",{className:"text-[12.5px] text-ink-soft",role:"status",children:"Working…"}),!i&&f&&(0,b.jsx)("span",{className:(0,e.f)("text-[12.5px]",f.ok?"text-ink-soft":"text-err"),role:f.ok?"status":"alert",children:f.ok?f.message:f.error})]})}],5862)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_private_actions_decide-form_tsx_1hngtxpyle3v8._.js.map
|
package/server/.next/server/chunks/ssr/src_private_ai_providers_actions_ts_0wxa36ai6s5nn._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[804224,a=>{"use strict";var b=a.i(137936),c=a.i(118558),d=a.i(379416),e=a.i(26972),f=a.i(427221),g=a.i(83931),h=a.i(600079),i=a.i(109307),j=a.i(312573),k=a.i(323878),l=a.i(601219),m=a.i(931256),n=a.i(711672),o=a.i(208683),p=a.i(713095);let q={requireActionMember:i.g},r=d.z.uuid(),s=e.z.object({apiKey:f.z.string().max(500).optional(),accountId:f.z.string().max(64).optional(),baseUrl:f.z.string().max(300).optional(),name:f.z.string().max(60).optional(),makeDefault:g.z.boolean().optional()});function t(){for(let a of["/ai","/ai/providers","/ai/models","/ai/quota","/ai/playground"])(0,c.revalidatePath)(a)}async function u(a,b,c,d){try{await (0,l.f)([{type:"action",kind:"ok",message:b.slice(0,200),detail:`provider ${c}`,resourceId:null,actorUserId:d,reason:a}])}catch{console.warn("provider audit failed")}}let v=a=>a.ok?{ok:!0,message:a.message}:{ok:!1,error:a.error,fieldErrors:a.fieldErrors},w={ok:!1,error:"That connection no longer exists."};async function x(a){let b=await (0,k.C)(j.t.credential,a);return b.allowed?null:{ok:!1,error:`Too many connection tests. Try again in ${(0,j.H)(b.retryAfter)}.`}}async function y(a,b){return(0,h.F)("owner",async c=>{let d=s.safeParse(b);if(!d.success)return{ok:!1,error:"Check the fields."};let e=await x(c.id);if(e)return e;let f=await n.u(a,d.data);if(f.ok){t();let b="custom"===a?d.data.name?.trim()||"Custom":(0,m.W)(a)?m.M[a].name:a;await u("AiProviderConnected",`AI provider connected: ${b}`,a,c.userId)}return f},q)}async function z(a,b){return(0,h.F)("owner",async c=>{let d=s.safeParse(b);if(!r.safeParse(a).success||!d.success)return w;let e=await x(c.id);if(e)return e;let f=await n.Q(a,d.data);return f.ok?(t(),f.data&&await u("AiProviderKeyReplaced",`AI provider key replaced: ${f.data.name}`,f.data.kind,c.userId),{ok:!0,message:f.message,data:{models:f.data?.models??[]}}):v(f)},q)}async function A(a){return(0,h.F)("owner",async b=>{if(!r.safeParse(a).success)return w;let c=await x(b.id);if(c)return c;let d=await n.q(a);return t(),d},q)}async function B(a,b){return(0,h.F)("owner",async()=>{if(!r.safeParse(a).success)return w;let c=await n.k(a,!0===b);return t(),c},q)}async function C(a){return(0,h.F)("owner",async()=>{if(!r.safeParse(a).success)return w;let b=await n.E(a);return t(),b},q)}async function D(a){return(0,h.F)("owner",async b=>{if(!r.safeParse(a).success)return w;let c=await n.s(a);return t(),c.ok&&c.data&&await u("AiProviderRemoved",`AI provider removed: ${c.data.name}`,c.data.kind,b.userId),v(c)},q)}async function E(a,b,c){return(0,h.F)("owner",async()=>{if(!r.safeParse(a).success||"string"!=typeof b||b.length>200)return w;let d=await n.V(a,b,!0===c);return t(),d},q)}async function F(a,b){return(0,h.F)("owner",async()=>{if(!r.safeParse(a).success)return w;let c=await n.F(a,b);return t(),c},q)}let G={ok:!1,error:"Use 1–120 letters, digits or . _ : / @ - for the model id."};async function H(a){let b=await (0,k.C)(j.t.monitorWrite,a);return b.allowed?null:{ok:!1,error:`Too many changes. Try again in ${(0,j.H)(b.retryAfter)}.`}}function I(a){let b="string"==typeof a?a.trim():"";return o.a.test(b)?b:null}async function J(a,b){return(0,h.F)("owner",async c=>{let d=I(b);if(!d)return G;if(!r.safeParse(a).success)return w;let e=await H(c.id);if(e)return e;let f=await n.z(a,d);return f.ok&&(t(),f.data&&await u("AiModelAdded",`AI model added on ${f.data.name}: ${d}`,"custom",c.userId)),v(f)},q)}async function K(a,b){return(0,h.F)("owner",async c=>{let d=I(b);if(!d)return G;if(!r.safeParse(a).success)return w;let e=await H(c.id);if(e)return e;let f=await n.O(a,d);return f.ok&&(t(),f.data&&await u("AiModelRemoved",`AI model removed from ${f.data.name}: ${d}`,"custom",c.userId)),v(f)},q)}(0,p.ensureServerEntryExports)([y,z,A,B,C,D,E,F,J,K]),(0,b.registerServerReference)(y,"
|
|
1
|
+
module.exports=[804224,a=>{"use strict";var b=a.i(137936),c=a.i(118558),d=a.i(379416),e=a.i(26972),f=a.i(427221),g=a.i(83931),h=a.i(600079),i=a.i(109307),j=a.i(312573),k=a.i(323878),l=a.i(601219),m=a.i(931256),n=a.i(711672),o=a.i(208683),p=a.i(713095);let q={requireActionMember:i.g},r=d.z.uuid(),s=e.z.object({apiKey:f.z.string().max(500).optional(),accountId:f.z.string().max(64).optional(),baseUrl:f.z.string().max(300).optional(),name:f.z.string().max(60).optional(),makeDefault:g.z.boolean().optional()});function t(){for(let a of["/ai","/ai/providers","/ai/models","/ai/quota","/ai/playground"])(0,c.revalidatePath)(a)}async function u(a,b,c,d){try{await (0,l.f)([{type:"action",kind:"ok",message:b.slice(0,200),detail:`provider ${c}`,resourceId:null,actorUserId:d,reason:a}])}catch{console.warn("provider audit failed")}}let v=a=>a.ok?{ok:!0,message:a.message}:{ok:!1,error:a.error,fieldErrors:a.fieldErrors},w={ok:!1,error:"That connection no longer exists."};async function x(a){let b=await (0,k.C)(j.t.credential,a);return b.allowed?null:{ok:!1,error:`Too many connection tests. Try again in ${(0,j.H)(b.retryAfter)}.`}}async function y(a,b){return(0,h.F)("owner",async c=>{let d=s.safeParse(b);if(!d.success)return{ok:!1,error:"Check the fields."};let e=await x(c.id);if(e)return e;let f=await n.u(a,d.data);if(f.ok){t();let b="custom"===a?d.data.name?.trim()||"Custom":(0,m.W)(a)?m.M[a].name:a;await u("AiProviderConnected",`AI provider connected: ${b}`,a,c.userId)}return f},q)}async function z(a,b){return(0,h.F)("owner",async c=>{let d=s.safeParse(b);if(!r.safeParse(a).success||!d.success)return w;let e=await x(c.id);if(e)return e;let f=await n.Q(a,d.data);return f.ok?(t(),f.data&&await u("AiProviderKeyReplaced",`AI provider key replaced: ${f.data.name}`,f.data.kind,c.userId),{ok:!0,message:f.message,data:{models:f.data?.models??[]}}):v(f)},q)}async function A(a){return(0,h.F)("owner",async b=>{if(!r.safeParse(a).success)return w;let c=await x(b.id);if(c)return c;let d=await n.q(a);return t(),d},q)}async function B(a,b){return(0,h.F)("owner",async()=>{if(!r.safeParse(a).success)return w;let c=await n.k(a,!0===b);return t(),c},q)}async function C(a){return(0,h.F)("owner",async()=>{if(!r.safeParse(a).success)return w;let b=await n.E(a);return t(),b},q)}async function D(a){return(0,h.F)("owner",async b=>{if(!r.safeParse(a).success)return w;let c=await n.s(a);return t(),c.ok&&c.data&&await u("AiProviderRemoved",`AI provider removed: ${c.data.name}`,c.data.kind,b.userId),v(c)},q)}async function E(a,b,c){return(0,h.F)("owner",async()=>{if(!r.safeParse(a).success||"string"!=typeof b||b.length>200)return w;let d=await n.V(a,b,!0===c);return t(),d},q)}async function F(a,b){return(0,h.F)("owner",async()=>{if(!r.safeParse(a).success)return w;let c=await n.F(a,b);return t(),c},q)}let G={ok:!1,error:"Use 1–120 letters, digits or . _ : / @ - for the model id."};async function H(a){let b=await (0,k.C)(j.t.monitorWrite,a);return b.allowed?null:{ok:!1,error:`Too many changes. Try again in ${(0,j.H)(b.retryAfter)}.`}}function I(a){let b="string"==typeof a?a.trim():"";return o.a.test(b)?b:null}async function J(a,b){return(0,h.F)("owner",async c=>{let d=I(b);if(!d)return G;if(!r.safeParse(a).success)return w;let e=await H(c.id);if(e)return e;let f=await n.z(a,d);return f.ok&&(t(),f.data&&await u("AiModelAdded",`AI model added on ${f.data.name}: ${d}`,"custom",c.userId)),v(f)},q)}async function K(a,b){return(0,h.F)("owner",async c=>{let d=I(b);if(!d)return G;if(!r.safeParse(a).success)return w;let e=await H(c.id);if(e)return e;let f=await n.O(a,d);return f.ok&&(t(),f.data&&await u("AiModelRemoved",`AI model removed from ${f.data.name}: ${d}`,"custom",c.userId)),v(f)},q)}(0,p.ensureServerEntryExports)([y,z,A,B,C,D,E,F,J,K]),(0,b.registerServerReference)(y,"60fe0f89cd4d0c8498faf0c81ce69da20b8d6c9ac0",null),(0,b.registerServerReference)(z,"60a44bc6bf022940a7e5e84a7454e58870ce1b2d17",null),(0,b.registerServerReference)(A,"40801e6978dba3a6b5fc710afcd823bfe7a8e4965a",null),(0,b.registerServerReference)(B,"604afb59a110e1dad1ab048382c788ae6f4e119282",null),(0,b.registerServerReference)(C,"404095c00162f635aba9a175585f9a199642e91fb6",null),(0,b.registerServerReference)(D,"4062ac90df61fb5fc971fad9c124c2585849aa2bae",null),(0,b.registerServerReference)(E,"707fe44fe96ff32be3f2d4e46cff688e3761377d4c",null),(0,b.registerServerReference)(F,"60d2febbd755bffb8c76447e309fa3e965e41bbf3a",null),(0,b.registerServerReference)(J,"60050f7d39c1cd4d89e8827f98342b9dde7b20214d",null),(0,b.registerServerReference)(K,"603f9e20a20006587f333b145fefb8c4856bcfb06d",null),a.s(["z",0,J,"E",0,y,"d",0,C,"O",0,K,"a",0,D,"g",0,z,"e",0,B,"N",0,A])}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_private_ai_providers_actions_ts_0wxa36ai6s5nn._.js.map
|
package/server/.next/server/chunks/ssr/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[861600,294965,598513,a=>{"use strict";var b=a.i(137936),c=a.i(118558),d=a.i(600079),e=a.i(109307),f=a.i(221084),g=a.i(312573),h=a.i(323878),i=a.i(920274),j=a.i(713095);async function k(a){return(0,d.F)("owner",async b=>{if("string"!=typeof a||!(0,i.b)(a))return{ok:!1,error:"Something in that request wasn't valid."};let d=await (0,h.C)(g.t.monitorWrite,b.id);if(!d.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,g.H)(d.retryAfter)}.`};let e=await (0,i.$)(a,b.userId,new Date);if(!e)return{ok:!1,error:"That note was already dismissed."};try{await (0,f.f)({kind:"ok",message:`AI note dismissed: ${e.title.slice(0,120)}`,detail:`AiNoteDismissed \xb7 from ${e.from.slice(0,60)}`,resourceId:e.appId&&(0,i.b)(e.appId)?e.appId:null,actorUserId:b.userId})}catch{console.warn("audit event failed")}return(0,c.refresh)(),{ok:!0,message:"Note dismissed."}},{requireActionMember:e.g},"local")}(0,j.ensureServerEntryExports)([k]),(0,b.registerServerReference)(k,"
|
|
1
|
+
module.exports=[861600,294965,598513,a=>{"use strict";var b=a.i(137936),c=a.i(118558),d=a.i(600079),e=a.i(109307),f=a.i(221084),g=a.i(312573),h=a.i(323878),i=a.i(920274),j=a.i(713095);async function k(a){return(0,d.F)("owner",async b=>{if("string"!=typeof a||!(0,i.b)(a))return{ok:!1,error:"Something in that request wasn't valid."};let d=await (0,h.C)(g.t.monitorWrite,b.id);if(!d.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,g.H)(d.retryAfter)}.`};let e=await (0,i.$)(a,b.userId,new Date);if(!e)return{ok:!1,error:"That note was already dismissed."};try{await (0,f.f)({kind:"ok",message:`AI note dismissed: ${e.title.slice(0,120)}`,detail:`AiNoteDismissed \xb7 from ${e.from.slice(0,60)}`,resourceId:e.appId&&(0,i.b)(e.appId)?e.appId:null,actorUserId:b.userId})}catch{console.warn("audit event failed")}return(0,c.refresh)(),{ok:!0,message:"Note dismissed."}},{requireActionMember:e.g},"local")}(0,j.ensureServerEntryExports)([k]),(0,b.registerServerReference)(k,"4041d3ef96e5432dad0f877e9c7c28744c8aced495",null),a.s(["f",0,k],861600);var l=a.i(462820);let m={name:"ai-assist",max:20,windowSeconds:600};var n=a.i(86657),o=a.i(502330),p=a.i(425238);let q="That model isn't available. Pick another one or Default.";var r=a.i(918962),s=a.i(962230),t=a.i(779704);let u={ok:!1,error:"Something in that request wasn't valid."},v=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;async function w(a){let b=await (0,h.C)(m,a);return b.allowed?null:`Too many AI requests. Try again in ${(0,g.H)(b.retryAfter)}.`}function x(a){return a instanceof Error&&"GatewayError"===a.name?a.message.slice(0,300):"The AI provider couldn't answer. Try again."}async function y(a){return(0,d.F)("owner",async b=>{if("string"!=typeof a||!v.test(a))return u;let c=await w(b.id);if(c)return{ok:!1,error:c};if(!await n.f.provider())return{ok:!1,error:l.B.noProvider};let d=await n.f.appSnapshot(a,new Date);if(!d)return{ok:!1,error:"That application wasn't found."};try{let a=await n.f.complete((0,o.r)(d),{purpose:"ask-ai",maxTokens:500}),b=a.text.trim();if(!b)return{ok:!1,error:"The model returned no text. Try again."};return{ok:!0,data:{text:b,model:a.model,ms:a.ms}}}catch(a){return{ok:!1,error:x(a)}}},{requireActionMember:e.g},"local")}async function z(a){return(0,d.F)("owner",async b=>{if("string"!=typeof a||!v.test(a))return u;let d=await w(b.id);if(d)return{ok:!1,error:d};let e=new Date,g=await n.f.appSnapshot(a,e);if(!g)return{ok:!1,error:"That application wasn't found."};let h=(0,o.R)(g),i=await (0,r.c)(e);if(!i.agConnected)return i.providerReady?A({kind:"app",contextId:a,question:h,by:b.userId,askedAt:e}):{ok:!1,error:"No AI provider is connected. Connect one under AI Gateway › Bring your own key."};let j=await (0,s._)({kind:"app",contextId:a,question:h,by:b.userId,now:e});if(!j.ok)return{ok:!1,error:j.error};if(!j.reused)try{await (0,f.f)({kind:"ok",message:l.B.queuedAudit(g.id.slice(0,80)),resourceId:a,actorUserId:b.userId})}catch{console.warn("audit event failed")}return(0,c.refresh)(),{ok:!0,message:j.reused?l.B.alreadyWaiting:l.B.sentApp,data:{id:j.id,status:"pending"}}},{requireActionMember:e.g})}async function A(a){let b;try{b=await (0,r.L)(a.question,{model:a.model,now:a.askedAt})}catch(a){return console.warn("ask: provider failed:",a instanceof Error?a.name:"unknown"),{ok:!1,error:x(a)}}let d=await (0,s.Y)({kind:a.kind,contextId:a.contextId,question:a.question,by:a.by,askedAt:a.askedAt,answeredAt:new Date,answer:b.text,client:r.q,model:b.model});return(0,c.refresh)(),{ok:!0,message:`Answered by ${b.model} in ${(b.ms/1e3).toFixed(1)} s.`,data:{id:d.id,status:"answered",text:b.text,model:b.model,ms:b.ms}}}async function B(a,b){return(0,d.F)("owner",async d=>{let e,g=(e="string"==typeof a?a.trim():"")?e.length>2e3?{ok:!1,error:"A question can be up to 2000 characters."}:(0,p.G)(e)?{ok:!1,error:"That looks like a key or token. Remove it before sending."}:{ok:!0,question:e}:{ok:!1,error:"Type a question first."};if(!g.ok)return{ok:!1,error:g.error};let h=new Date,i=function(a,b){let c="string"==typeof a?a.trim():"";if(!c)return b.providerReady?{via:"provider"}:b.agConnected?{via:"antigravity",model:null}:{via:"none",error:"No AI provider is connected. Connect one under AI Gateway › Bring your own key."};if(c.length>200)return{via:"none",error:q};if(c.startsWith("ag/")){let a=c.slice(3);return b.agConnected&&b.agEnabled.includes(a)?{via:"antigravity",model:a}:{via:"none",error:q}}return b.agConnected&&b.agEnabled.includes(c)?{via:"antigravity",model:c}:{via:"provider",model:c}}(b,await (0,r.c)(h));if("none"===i.via)return{ok:!1,error:i.error};let j=await w(d.id);if(j)return{ok:!1,error:j};if("provider"===i.via)return A({kind:"general",contextId:null,question:g.question,by:d.userId,askedAt:h,model:i.model});let k=i.model,m=await (0,s._)({kind:"general",contextId:null,question:g.question,by:d.userId,now:h,model:k});if(!m.ok)return{ok:!1,error:m.error};if(!m.reused)try{await (0,f.f)({kind:"ok",message:l.B.queuedAudit("general"),resourceId:null,actorUserId:d.userId})}catch{console.warn("audit event failed")}return(0,c.refresh)(),{ok:!0,message:m.reused?l.B.alreadyWaiting:l.B.sentGeneral,data:{id:m.id,status:"pending"}}},{requireActionMember:e.g})}async function C(a){return(0,d.F)("owner",async b=>{if("string"!=typeof a||!v.test(a))return u;let c=await (0,s.F)(a,b.userId,new Date);return c?{ok:!0,data:{status:c.status,answer:c.answer,model:c.model??c.requestedModel,answeredAt:c.answeredAt?c.answeredAt.toISOString():null}}:{ok:!1,error:"That question wasn't found. It may have been cleaned up."}},{requireActionMember:e.g})}async function D(){return(0,d.F)("owner",async a=>{let b=await w(a.id);if(b)return{ok:!1,error:b};try{let a=await (0,t.E)(new Date,{force:!0});if("no-provider"===a.status)return{ok:!1,error:"No AI provider is connected."};if("empty"===a.status)return{ok:!1,error:"There are no recommendations to summarise."}}catch(a){return{ok:!1,error:x(a)}}return(0,c.refresh)(),{ok:!0,message:"Summary updated."}},{requireActionMember:e.g})}(0,j.ensureServerEntryExports)([y,z,B,C,D]),(0,b.registerServerReference)(y,"40f1d424d76b652e17ae52c03ec063ced51b58a6f4",null),(0,b.registerServerReference)(z,"40e125fc472c4b04dab848111ea1f124b3f2a2ba3a",null),(0,b.registerServerReference)(B,"601b98cf9f43e5ceee452716a736561f1d25bdbbeb",null),(0,b.registerServerReference)(C,"409e7a258188b6cded6c7c6a9dd25a13da03238f13",null),(0,b.registerServerReference)(D,"000c9d348ecbe2376452962941643afc4b4e227c55",null),a.s(["G",0,z,"B",0,B,"T",0,y,"P",0,C,"E",0,D],294965);var E=a.i(94473),F=a.i(188282);let G={requireActionMember:a=>(0,e.g)(a)};async function H(a){return(0,d.F)("owner",async b=>{let d=await (0,h.C)(g.t.alertWrite,b.id);if(!d.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,g.H)(d.retryAfter)}.`};try{let d=await (0,E.m)(a,b);(0,c.revalidatePath)("/settings");let e=Object.keys(a??{}),f=1===e.length&&F.H[e[0]]?.risk==="safe"?`${F.H[e[0]].label}: auto-run ${d[e[0]]?"on":"off"}.`:l.X.autoRunSaved;return{ok:!0,message:f,data:d}}catch(a){if(a instanceof E.s)return{ok:!1,error:"Something in that request wasn't valid."};throw a}},G,"local")}async function I(a){return(0,d.F)("owner",async b=>{let d=await (0,h.C)(g.t.alertWrite,b.id);if(!d.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,g.H)(d.retryAfter)}.`};try{let d=await (0,E.C)(a,b);return(0,c.revalidatePath)("/settings"),{ok:!0,message:`Auto-rollback ${d.enabled?"on":"off"} \xb7 first ${d.windowMin} minutes.`,data:d}}catch(a){if(a instanceof E.s)return{ok:!1,error:"Something in that request wasn't valid."};throw a}},G,"local")}async function J(a){return(0,d.F)("owner",async b=>{let d=await (0,h.C)(g.t.alertWrite,b.id);if(!d.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,g.H)(d.retryAfter)}.`};try{let d=await (0,E.o)(a,b);return(0,c.revalidatePath)("/settings"),{ok:!0,message:`Automatic security fixes ${d.enabled?"on":"off"}.`,data:d}}catch(a){if(a instanceof E.s)return{ok:!1,error:"Something in that request wasn't valid."};throw a}},G,"local")}(0,j.ensureServerEntryExports)([H,I,J]),(0,b.registerServerReference)(H,"40c545571afb463110a2846227eb11c343d1cf13e1",null),(0,b.registerServerReference)(I,"403088bf67ebad30dbea857c3e962c2e284ffac9ca",null),(0,b.registerServerReference)(J,"40b29d80ab43b135db8aaf2541a0595eb6b7bf06c1",null),a.s(["G",0,I,"m",0,H,"F",0,J],598513)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_private_notes_notes-actions_ts_1g63g8u965fhc._.js.map
|
|
@@ -7,9 +7,9 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
7
7
|
"static/chunks/0cz1d0mv5g_q7.js"
|
|
8
8
|
],
|
|
9
9
|
"lowPriorityFiles": [
|
|
10
|
-
"static/
|
|
11
|
-
"static/
|
|
12
|
-
"static/
|
|
10
|
+
"static/00kxZsHPpI3WSDxVn1e4b/_buildManifest.js",
|
|
11
|
+
"static/00kxZsHPpI3WSDxVn1e4b/_ssgManifest.js",
|
|
12
|
+
"static/00kxZsHPpI3WSDxVn1e4b/_clientMiddlewareManifest.js"
|
|
13
13
|
],
|
|
14
14
|
"rootMainFiles": [
|
|
15
15
|
"static/chunks/149lk0boxihnl.js",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en" class="XrSICW_variable XIXyIG_variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/1tg1mstvws8rj.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/149lk0boxihnl.js"/><script src="/_next/static/chunks/242x7dx0zu3hf.js" async=""></script><script src="/_next/static/chunks/37zqf9hef7g0k.js" async=""></script><script src="/_next/static/chunks/3mb_v650fie_i.js" async=""></script><script src="/_next/static/chunks/turbopack-3-ry682tkyiqk.js" async=""></script><script src="/_next/static/chunks/0a-rekt06v0sv.js" async=""></script><script src="/_next/static/chunks/2cbfp1_wsn0oh.js" async=""></script><script src="/_next/static/chunks/40n6mtthd3_sh.js" async=""></script><script src="/_next/static/chunks/0iyozrryj1w49.js" async=""></script><script src="/_next/static/chunks/1xm6ay06cjchs.js" async=""></script><meta name="robots" content="noindex"/><title>Watchbell</title><meta name="description" content="Status of your apps, databases, and domains."/><meta name="robots" content="noindex, nofollow"/><link rel="icon" href="/icon.svg?icon.17zy5uxei5-yo.svg" sizes="any" type="image/svg+xml"/><meta name="next-size-adjust" content=""/><script>(function(){try{var s=localStorage.getItem("oc-theme");var d=window.matchMedia("(prefers-color-scheme: dark)").matches;document.documentElement.dataset.theme=(s==="light"||s==="dark")?s:(d?"dark":"light");}catch(e){document.documentElement.dataset.theme="light";}})();</script><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body class="bg-bg font-sans text-ink antialiased"><div hidden=""><!--$--><!--/$--></div><main class="mx-auto flex min-h-[70vh] max-w-[480px] flex-col items-center justify-center gap-3 px-4 text-center"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="36" height="36" class="shrink-0" aria-hidden="true" focusable="false"><rect x="0.5" y="0.5" width="31" height="31" rx="7" fill="#14213d" stroke-width="1" class="stroke-transparent dark:stroke-[#2f4372]"></rect><g transform="rotate(-14 15 16)" fill="#fcc419"><rect x="13.7" y="5.4" width="2.6" height="2.4" rx="1.1"></rect><path d="M15 7.2c-4.3 0-6.8 3.1-6.8 7.3v4.1l-2.4 3.3h18.4l-2.4-3.3v-4.1c0-4.2-2.5-7.3-6.8-7.3z"></path><circle cx="15" cy="24.3" r="2.3"></circle></g><g fill="none" stroke="#fcc419" stroke-width="2.2" stroke-linecap="round"><path d="M24.4 9.2c1.4 1.4 2.2 3.2 2.2 5.2"></path><path d="M22.8 11.1c.8.8 1.2 1.8 1.2 2.9"></path></g></svg><h1 class="m-0 text-[22px]">Nothing rings here</h1><p class="m-0 text-ink-soft">There's no page at this address. It may have moved, or the link has a typo.</p><a class="inline-flex items-center gap-1.5 whitespace-nowrap rounded-md border transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:no-underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40 px-[9px] py-[3px] text-[13px] border-brand bg-brand text-on-brand hover:bg-brand-hover" href="/">Back to Watchbell</a></main><!--$--><!--/$--><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false" data-react-aria-top-layer="true"></section><!--$!--><template data-dgst=""></template><!--/$--><script id="_R_">(globalThis["TURBOPACK"] || (globalThis["TURBOPACK"] = [])).push({"otherChunks":["static/chunks/149lk0boxihnl.js","static/chunks/242x7dx0zu3hf.js","static/chunks/37zqf9hef7g0k.js","static/chunks/3mb_v650fie_i.js"],"runtimeModuleIds":[494553]});</script><script src="/_next/static/chunks/149lk0boxihnl.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:\"/_next/static/chunks/0a-rekt06v0sv.js\"\n3:\"/_next/static/chunks/2cbfp1_wsn0oh.js\"\n4:I[339756,[\"$2\",\"$3\"],\"default\"]\n5:\"/_next/static/chunks/40n6mtthd3_sh.js\"\n6:\"/_next/static/chunks/0iyozrryj1w49.js\"\n7:I[758298,[\"$2\",\"$3\",\"$5\",\"$6\"],\"default\"]\n8:I[837457,[\"$2\",\"$3\"],\"default\"]\n9:I[522016,[\"$2\",\"$3\",\"$6\"],\"\"]\na:I[171209,[\"$2\",\"$3\"],\"ThemeKeeper\"]\nb:I[713354,[\"$2\",\"$3\"],\"Toaster\"]\nc:I[302355,[\"$2\",\"$3\"],\"Analytics\"]\n14:\"ViewportBoundary\"\n15:I[897367,[\"$2\",\"$3\"],\"$14\"]\n17:\"MetadataBoundary\"\n18:I[897367,[\"$2\",\"$3\"],\"$17\"]\n19:\"$Sreact.suspense\"\n1b:\"/_next/static/chunks/1xm6ay06cjchs.js\"\n1c:I[563491,[\"$2\",\"$3\",\"$1b\",\"$6\"],\"default\"]\n:HL[\"/_next/static/chunks/1tg1mstvws8rj.css\",\"style\"]\ne:X\nf:[[\"children\",{\"s\":\"__PAGE__\",\"h\":512,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"main\",null,{\"className\":\"mx-auto flex min-h-[70vh] max-w-[480px] flex-col items-center justify-center gap-3 px-4 text-center\",\"children\":[[\"$\",\"svg\",null,{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 32 32\",\"width\":36,\"height\":36,\"className\":\"shrink-0\",\"role\":\"$undefined\",\"aria-hidden\":true,\"focusable\":\"false\",\"children\":[null,[\"$\",\"rect\",null,{\"x\":\"0.5\",\"y\":\"0.5\",\"width\":\"31\",\"height\":\"31\",\"rx\":\"7\",\"fill\":\"#14213d\",\"strokeWidth\":\"1\",\"className\":\"stroke-transparent dark:stroke-[#2f4372]\"}],[\"$\",\"g\",null,{\"transform\":\"rotate(-14 15 16)\",\"fill\":\"#fcc419\",\"children\":[[\"$\",\"rect\",null,{\"x\":\"13.7\",\"y\":\"5.4\",\"width\":\"2.6\",\"height\":\"2.4\",\"rx\":\"1.1\"}],[\"$\",\"path\",null,{\"d\":\"M15 7.2c-4.3 0-6.8 3.1-6.8 7.3v4.1l-2.4 3.3h18.4l-2.4-3.3v-4.1c0-4.2-2.5-7.3-6.8-7.3z\"}],[\"$\",\"circle\",null,{\"cx\":\"15\",\"cy\":\"24.3\",\"r\":\"2.3\"}]]}],[\"$\",\"g\",null,{\"fill\":\"none\",\"stroke\":\"#fcc419\",\"strokeWidth\":\"2.2\",\"strokeLinecap\":\"round\",\"children\":[[\"$\",\"path\",null,{\"d\":\"M24.4 9.2c1.4 1.4 2.2 3.2 2.2 5.2\"}],[\"$\",\"path\",null,{\"d\":\"M22.8 11.1c.8.8 1.2 1.8 1.2 2.9\"}]]}]]}],[\"$\",\"h1\",null,{\"className\":\"m-0 text-[22px]\",\"children\":\"Nothing rings here\"}],\"$L10\",\"$L11\"]}],[\"$L12\"],\"$L13\"]}],\"p\":false,\"v\":null}}]]\nd:[[\"children\",{\"s\":\"/_not-found\",\"h\":512,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],\"p\":false,\"v\":\"$e\"},\"c\":\"$Qf\"}]]\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"t\":{\"t\":{\"s\":\"\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1tg1mstvws8rj.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0a-rekt06v0sv.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/2cbfp1_wsn0oh.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"className\":\"XrSICW_variable XIXyIG_variable\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){try{var s=localStorage.getItem(\\\"oc-theme\\\");var d=window.matchMedia(\\\"(prefers-color-scheme: dark)\\\").matches;document.documentElement.dataset.theme=(s===\\\"light\\\"||s===\\\"dark\\\")?s:(d?\\\"dark\\\":\\\"light\\\");}catch(e){document.documentElement.dataset.theme=\\\"light\\\";}})();\"}}]}],[\"$\",\"body\",null,{\"className\":\"bg-bg font-sans text-ink antialiased\",\"children\":[[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$7\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/40n6mtthd3_sh.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0iyozrryj1w49.js\",\"async\":true,\"nonce\":\"$undefined\"}]],\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"main\",null,{\"className\":\"mx-auto flex min-h-[70vh] max-w-[480px] flex-col items-center justify-center gap-3 px-4 text-center\",\"children\":[[\"$\",\"svg\",null,{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 32 32\",\"width\":36,\"height\":36,\"className\":\"shrink-0\",\"role\":\"$undefined\",\"aria-hidden\":true,\"focusable\":\"false\",\"children\":[null,[\"$\",\"rect\",null,{\"x\":\"0.5\",\"y\":\"0.5\",\"width\":\"31\",\"height\":\"31\",\"rx\":\"7\",\"fill\":\"#14213d\",\"strokeWidth\":\"1\",\"className\":\"stroke-transparent dark:stroke-[#2f4372]\"}],[\"$\",\"g\",null,{\"transform\":\"rotate(-14 15 16)\",\"fill\":\"#fcc419\",\"children\":[[\"$\",\"rect\",null,{\"x\":\"13.7\",\"y\":\"5.4\",\"width\":\"2.6\",\"height\":\"2.4\",\"rx\":\"1.1\"}],[\"$\",\"path\",null,{\"d\":\"M15 7.2c-4.3 0-6.8 3.1-6.8 7.3v4.1l-2.4 3.3h18.4l-2.4-3.3v-4.1c0-4.2-2.5-7.3-6.8-7.3z\"}],[\"$\",\"circle\",null,{\"cx\":\"15\",\"cy\":\"24.3\",\"r\":\"2.3\"}]]}],[\"$\",\"g\",null,{\"fill\":\"none\",\"stroke\":\"#fcc419\",\"strokeWidth\":\"2.2\",\"strokeLinecap\":\"round\",\"children\":[[\"$\",\"path\",null,{\"d\":\"M24.4 9.2c1.4 1.4 2.2 3.2 2.2 5.2\"}],[\"$\",\"path\",null,{\"d\":\"M22.8 11.1c.8.8 1.2 1.8 1.2 2.9\"}]]}]]}],[\"$\",\"h1\",null,{\"className\":\"m-0 text-[22px]\",\"children\":\"Nothing rings here\"}],[\"$\",\"p\",null,{\"className\":\"m-0 text-ink-soft\",\"children\":\"There's no page at this address. It may have moved, or the link has a typo.\"}],[\"$\",\"$L9\",null,{\"href\":\"/\",\"className\":\"inline-flex items-center gap-1.5 whitespace-nowrap rounded-md border transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:no-underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40 px-[9px] py-[3px] text-[13px] border-brand bg-brand text-on-brand hover:bg-brand-hover\",\"children\":\"Back to Watchbell\"}]]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$La\",null,{}],[\"$\",\"$Lb\",null,{}],[\"$\",\"$Lc\",null,{}]]}]]}]]}],\"p\":false,\"v\":null},\"c\":\"$Qd\"},\"h\":{\"r\":[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L15\",null,{\"children\":\"$L16\"}],[\"$\",\"$L18\",null,{\"children\":[[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$19\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L1a\"}]}],null]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],\"p\":false,\"v\":null}},\"m\":\"$undefined\",\"G\":[\"$1c\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1tg1mstvws8rj.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"2_t4xVgbum1rtVSQxAYYV\"}\n1d:I[897367,[\"$2\",\"$3\"],\"OutletBoundary\"]\ne:C\n10:[\"$\",\"p\",null,{\"className\":\"m-0 text-ink-soft\",\"children\":\"There's no page at this address. It may have moved, or the link has a typo.\"}]\n11:[\"$\",\"$L9\",null,{\"href\":\"/\",\"className\":\"inline-flex items-center gap-1.5 whitespace-nowrap rounded-md border transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:no-underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40 px-[9px] py-[3px] text-[13px] border-brand bg-brand text-on-brand hover:bg-brand-hover\",\"children\":\"Back to Watchbell\"}]\n12:[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0iyozrryj1w49.js\",\"async\":true,\"nonce\":\"$undefined\"}]\n13:[\"$\",\"$L1d\",null,{\"children\":[\"$\",\"$19\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@1e\"}]}]\n16:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n1f:I[27201,[\"$2\",\"$3\"],\"IconMark\"]\n1a:[[\"$\",\"title\",\"0\",{\"children\":\"Watchbell\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Status of your apps, databases, and domains.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"robots\",\"content\":\"noindex, nofollow\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/icon.svg?icon.17zy5uxei5-yo.svg\",\"sizes\":\"any\",\"type\":\"image/svg+xml\"}],[\"$\",\"$L1f\",\"4\",{}]]\n1e:null\n"])</script></body></html>
|
|
1
|
+
<!DOCTYPE html><html lang="en" class="XrSICW_variable XIXyIG_variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/1tg1mstvws8rj.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/149lk0boxihnl.js"/><script src="/_next/static/chunks/242x7dx0zu3hf.js" async=""></script><script src="/_next/static/chunks/37zqf9hef7g0k.js" async=""></script><script src="/_next/static/chunks/3mb_v650fie_i.js" async=""></script><script src="/_next/static/chunks/turbopack-3-ry682tkyiqk.js" async=""></script><script src="/_next/static/chunks/0a-rekt06v0sv.js" async=""></script><script src="/_next/static/chunks/2cbfp1_wsn0oh.js" async=""></script><script src="/_next/static/chunks/1j7e6cd8t5jar.js" async=""></script><script src="/_next/static/chunks/0iyozrryj1w49.js" async=""></script><script src="/_next/static/chunks/3odrzjmblvoxt.js" async=""></script><meta name="robots" content="noindex"/><title>Watchbell</title><meta name="description" content="Status of your apps, databases, and domains."/><meta name="robots" content="noindex, nofollow"/><link rel="icon" href="/icon.svg?icon.17zy5uxei5-yo.svg" sizes="any" type="image/svg+xml"/><meta name="next-size-adjust" content=""/><script>(function(){try{var s=localStorage.getItem("oc-theme");var d=window.matchMedia("(prefers-color-scheme: dark)").matches;document.documentElement.dataset.theme=(s==="light"||s==="dark")?s:(d?"dark":"light");}catch(e){document.documentElement.dataset.theme="light";}})();</script><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body class="bg-bg font-sans text-ink antialiased"><div hidden=""><!--$--><!--/$--></div><main class="mx-auto flex min-h-[70vh] max-w-[480px] flex-col items-center justify-center gap-3 px-4 text-center"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="36" height="36" class="shrink-0" aria-hidden="true" focusable="false"><rect x="0.5" y="0.5" width="31" height="31" rx="7" fill="#14213d" stroke-width="1" class="stroke-transparent dark:stroke-[#2f4372]"></rect><g transform="rotate(-14 15 16)" fill="#fcc419"><rect x="13.7" y="5.4" width="2.6" height="2.4" rx="1.1"></rect><path d="M15 7.2c-4.3 0-6.8 3.1-6.8 7.3v4.1l-2.4 3.3h18.4l-2.4-3.3v-4.1c0-4.2-2.5-7.3-6.8-7.3z"></path><circle cx="15" cy="24.3" r="2.3"></circle></g><g fill="none" stroke="#fcc419" stroke-width="2.2" stroke-linecap="round"><path d="M24.4 9.2c1.4 1.4 2.2 3.2 2.2 5.2"></path><path d="M22.8 11.1c.8.8 1.2 1.8 1.2 2.9"></path></g></svg><h1 class="m-0 text-[22px]">Nothing rings here</h1><p class="m-0 text-ink-soft">There's no page at this address. It may have moved, or the link has a typo.</p><a class="inline-flex items-center gap-1.5 whitespace-nowrap rounded-md border transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:no-underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40 px-[9px] py-[3px] text-[13px] border-brand bg-brand text-on-brand hover:bg-brand-hover" href="/">Back to Watchbell</a></main><!--$--><!--/$--><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false" data-react-aria-top-layer="true"></section><!--$!--><template data-dgst=""></template><!--/$--><script id="_R_">(globalThis["TURBOPACK"] || (globalThis["TURBOPACK"] = [])).push({"otherChunks":["static/chunks/149lk0boxihnl.js","static/chunks/242x7dx0zu3hf.js","static/chunks/37zqf9hef7g0k.js","static/chunks/3mb_v650fie_i.js"],"runtimeModuleIds":[494553]});</script><script src="/_next/static/chunks/149lk0boxihnl.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:\"/_next/static/chunks/0a-rekt06v0sv.js\"\n3:\"/_next/static/chunks/2cbfp1_wsn0oh.js\"\n4:I[339756,[\"$2\",\"$3\"],\"default\"]\n5:\"/_next/static/chunks/1j7e6cd8t5jar.js\"\n6:\"/_next/static/chunks/0iyozrryj1w49.js\"\n7:I[758298,[\"$2\",\"$3\",\"$5\",\"$6\"],\"default\"]\n8:I[837457,[\"$2\",\"$3\"],\"default\"]\n9:I[522016,[\"$2\",\"$3\",\"$6\"],\"\"]\na:I[171209,[\"$2\",\"$3\"],\"ThemeKeeper\"]\nb:I[713354,[\"$2\",\"$3\"],\"Toaster\"]\nc:I[302355,[\"$2\",\"$3\"],\"Analytics\"]\n14:\"ViewportBoundary\"\n15:I[897367,[\"$2\",\"$3\"],\"$14\"]\n17:\"MetadataBoundary\"\n18:I[897367,[\"$2\",\"$3\"],\"$17\"]\n19:\"$Sreact.suspense\"\n1b:\"/_next/static/chunks/3odrzjmblvoxt.js\"\n1c:I[563491,[\"$2\",\"$3\",\"$1b\",\"$6\"],\"default\"]\n:HL[\"/_next/static/chunks/1tg1mstvws8rj.css\",\"style\"]\ne:X\nf:[[\"children\",{\"s\":\"__PAGE__\",\"h\":512,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"main\",null,{\"className\":\"mx-auto flex min-h-[70vh] max-w-[480px] flex-col items-center justify-center gap-3 px-4 text-center\",\"children\":[[\"$\",\"svg\",null,{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 32 32\",\"width\":36,\"height\":36,\"className\":\"shrink-0\",\"role\":\"$undefined\",\"aria-hidden\":true,\"focusable\":\"false\",\"children\":[null,[\"$\",\"rect\",null,{\"x\":\"0.5\",\"y\":\"0.5\",\"width\":\"31\",\"height\":\"31\",\"rx\":\"7\",\"fill\":\"#14213d\",\"strokeWidth\":\"1\",\"className\":\"stroke-transparent dark:stroke-[#2f4372]\"}],[\"$\",\"g\",null,{\"transform\":\"rotate(-14 15 16)\",\"fill\":\"#fcc419\",\"children\":[[\"$\",\"rect\",null,{\"x\":\"13.7\",\"y\":\"5.4\",\"width\":\"2.6\",\"height\":\"2.4\",\"rx\":\"1.1\"}],[\"$\",\"path\",null,{\"d\":\"M15 7.2c-4.3 0-6.8 3.1-6.8 7.3v4.1l-2.4 3.3h18.4l-2.4-3.3v-4.1c0-4.2-2.5-7.3-6.8-7.3z\"}],[\"$\",\"circle\",null,{\"cx\":\"15\",\"cy\":\"24.3\",\"r\":\"2.3\"}]]}],[\"$\",\"g\",null,{\"fill\":\"none\",\"stroke\":\"#fcc419\",\"strokeWidth\":\"2.2\",\"strokeLinecap\":\"round\",\"children\":[[\"$\",\"path\",null,{\"d\":\"M24.4 9.2c1.4 1.4 2.2 3.2 2.2 5.2\"}],[\"$\",\"path\",null,{\"d\":\"M22.8 11.1c.8.8 1.2 1.8 1.2 2.9\"}]]}]]}],[\"$\",\"h1\",null,{\"className\":\"m-0 text-[22px]\",\"children\":\"Nothing rings here\"}],\"$L10\",\"$L11\"]}],[\"$L12\"],\"$L13\"]}],\"p\":false,\"v\":null}}]]\nd:[[\"children\",{\"s\":\"/_not-found\",\"h\":512,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],\"p\":false,\"v\":\"$e\"},\"c\":\"$Qf\"}]]\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"t\":{\"t\":{\"s\":\"\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1tg1mstvws8rj.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0a-rekt06v0sv.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/2cbfp1_wsn0oh.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"className\":\"XrSICW_variable XIXyIG_variable\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){try{var s=localStorage.getItem(\\\"oc-theme\\\");var d=window.matchMedia(\\\"(prefers-color-scheme: dark)\\\").matches;document.documentElement.dataset.theme=(s===\\\"light\\\"||s===\\\"dark\\\")?s:(d?\\\"dark\\\":\\\"light\\\");}catch(e){document.documentElement.dataset.theme=\\\"light\\\";}})();\"}}]}],[\"$\",\"body\",null,{\"className\":\"bg-bg font-sans text-ink antialiased\",\"children\":[[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$7\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/1j7e6cd8t5jar.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0iyozrryj1w49.js\",\"async\":true,\"nonce\":\"$undefined\"}]],\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"main\",null,{\"className\":\"mx-auto flex min-h-[70vh] max-w-[480px] flex-col items-center justify-center gap-3 px-4 text-center\",\"children\":[[\"$\",\"svg\",null,{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 32 32\",\"width\":36,\"height\":36,\"className\":\"shrink-0\",\"role\":\"$undefined\",\"aria-hidden\":true,\"focusable\":\"false\",\"children\":[null,[\"$\",\"rect\",null,{\"x\":\"0.5\",\"y\":\"0.5\",\"width\":\"31\",\"height\":\"31\",\"rx\":\"7\",\"fill\":\"#14213d\",\"strokeWidth\":\"1\",\"className\":\"stroke-transparent dark:stroke-[#2f4372]\"}],[\"$\",\"g\",null,{\"transform\":\"rotate(-14 15 16)\",\"fill\":\"#fcc419\",\"children\":[[\"$\",\"rect\",null,{\"x\":\"13.7\",\"y\":\"5.4\",\"width\":\"2.6\",\"height\":\"2.4\",\"rx\":\"1.1\"}],[\"$\",\"path\",null,{\"d\":\"M15 7.2c-4.3 0-6.8 3.1-6.8 7.3v4.1l-2.4 3.3h18.4l-2.4-3.3v-4.1c0-4.2-2.5-7.3-6.8-7.3z\"}],[\"$\",\"circle\",null,{\"cx\":\"15\",\"cy\":\"24.3\",\"r\":\"2.3\"}]]}],[\"$\",\"g\",null,{\"fill\":\"none\",\"stroke\":\"#fcc419\",\"strokeWidth\":\"2.2\",\"strokeLinecap\":\"round\",\"children\":[[\"$\",\"path\",null,{\"d\":\"M24.4 9.2c1.4 1.4 2.2 3.2 2.2 5.2\"}],[\"$\",\"path\",null,{\"d\":\"M22.8 11.1c.8.8 1.2 1.8 1.2 2.9\"}]]}]]}],[\"$\",\"h1\",null,{\"className\":\"m-0 text-[22px]\",\"children\":\"Nothing rings here\"}],[\"$\",\"p\",null,{\"className\":\"m-0 text-ink-soft\",\"children\":\"There's no page at this address. It may have moved, or the link has a typo.\"}],[\"$\",\"$L9\",null,{\"href\":\"/\",\"className\":\"inline-flex items-center gap-1.5 whitespace-nowrap rounded-md border transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:no-underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40 px-[9px] py-[3px] text-[13px] border-brand bg-brand text-on-brand hover:bg-brand-hover\",\"children\":\"Back to Watchbell\"}]]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$La\",null,{}],[\"$\",\"$Lb\",null,{}],[\"$\",\"$Lc\",null,{}]]}]]}]]}],\"p\":false,\"v\":null},\"c\":\"$Qd\"},\"h\":{\"r\":[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L15\",null,{\"children\":\"$L16\"}],[\"$\",\"$L18\",null,{\"children\":[[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$19\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L1a\"}]}],null]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],\"p\":false,\"v\":null}},\"m\":\"$undefined\",\"G\":[\"$1c\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1tg1mstvws8rj.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"00kxZsHPpI3WSDxVn1e4b\"}\n1d:I[897367,[\"$2\",\"$3\"],\"OutletBoundary\"]\ne:C\n10:[\"$\",\"p\",null,{\"className\":\"m-0 text-ink-soft\",\"children\":\"There's no page at this address. It may have moved, or the link has a typo.\"}]\n11:[\"$\",\"$L9\",null,{\"href\":\"/\",\"className\":\"inline-flex items-center gap-1.5 whitespace-nowrap rounded-md border transition-colors disabled:cursor-not-allowed disabled:opacity-60 hover:no-underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40 px-[9px] py-[3px] text-[13px] border-brand bg-brand text-on-brand hover:bg-brand-hover\",\"children\":\"Back to Watchbell\"}]\n12:[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0iyozrryj1w49.js\",\"async\":true,\"nonce\":\"$undefined\"}]\n13:[\"$\",\"$L1d\",null,{\"children\":[\"$\",\"$19\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@1e\"}]}]\n16:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n1f:I[27201,[\"$2\",\"$3\"],\"IconMark\"]\n1a:[[\"$\",\"title\",\"0\",{\"children\":\"Watchbell\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Status of your apps, databases, and domains.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"robots\",\"content\":\"noindex, nofollow\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/icon.svg?icon.17zy5uxei5-yo.svg\",\"sizes\":\"any\",\"type\":\"image/svg+xml\"}],[\"$\",\"$L1f\",\"4\",{}]]\n1e:null\n"])</script></body></html>
|