watchbell 1.6.0 → 1.6.1
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 +13 -13
- package/server/.next/server/app/(console)/(private)/ai/agents/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/agents/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/ask/page/server-reference-manifest.json +12 -12
- package/server/.next/server/app/(console)/(private)/ai/ask/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/ask/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/connect/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/(private)/ai/connect/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/connect/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/keys/page/server-reference-manifest.json +14 -14
- package/server/.next/server/app/(console)/(private)/ai/keys/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/keys/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/logs/page/server-reference-manifest.json +12 -12
- package/server/.next/server/app/(console)/(private)/ai/logs/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/logs/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/models/page/server-reference-manifest.json +21 -21
- package/server/.next/server/app/(console)/(private)/ai/models/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/models/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/(private)/ai/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/playground/page/server-reference-manifest.json +14 -14
- package/server/.next/server/app/(console)/(private)/ai/playground/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/playground/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/providers/page/server-reference-manifest.json +17 -17
- package/server/.next/server/app/(console)/(private)/ai/providers/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/providers/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/quota/page/server-reference-manifest.json +12 -12
- package/server/.next/server/app/(console)/(private)/ai/quota/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/quota/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/ai/usage/page/server-reference-manifest.json +12 -12
- package/server/.next/server/app/(console)/(private)/ai/usage/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/ai/usage/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/(private)/auto-actions/page/server-reference-manifest.json +12 -12
- package/server/.next/server/app/(console)/(private)/auto-actions/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/(private)/auto-actions/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/alerts/page/server-reference-manifest.json +27 -27
- package/server/.next/server/app/(console)/alerts/page.js.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 +34 -34
- package/server/.next/server/app/(console)/apps/[id]/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/apps/[id]/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/apps/page/server-reference-manifest.json +14 -14
- package/server/.next/server/app/(console)/apps/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/apps/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/backups/page/server-reference-manifest.json +14 -14
- package/server/.next/server/app/(console)/backups/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/backups/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/catalog/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/catalog/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/catalog/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/connections/page/server-reference-manifest.json +22 -22
- package/server/.next/server/app/(console)/connections/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/connections/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/containers/page/server-reference-manifest.json +14 -14
- package/server/.next/server/app/(console)/containers/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/containers/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/d1/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/d1/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/d1/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/deploy/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/deploy/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/deploy/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/deployments/page/server-reference-manifest.json +19 -19
- package/server/.next/server/app/(console)/deployments/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/deployments/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/dns/page/server-reference-manifest.json +18 -18
- package/server/.next/server/app/(console)/dns/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/dns/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/domains/page/server-reference-manifest.json +13 -13
- package/server/.next/server/app/(console)/domains/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/domains/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/events/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/events/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/events/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/firebase/page/server-reference-manifest.json +18 -18
- package/server/.next/server/app/(console)/firebase/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/firebase/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/logs/page/server-reference-manifest.json +12 -12
- package/server/.next/server/app/(console)/logs/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/logs/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/manage/sections/page/server-reference-manifest.json +12 -12
- package/server/.next/server/app/(console)/manage/sections/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/manage/sections/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/neon/page/server-reference-manifest.json +22 -22
- package/server/.next/server/app/(console)/neon/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/neon/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/os/page/server-reference-manifest.json +12 -12
- package/server/.next/server/app/(console)/os/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/os/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/overview/page/server-reference-manifest.json +19 -19
- package/server/.next/server/app/(console)/overview/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/overview/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/repos/[id]/page/server-reference-manifest.json +12 -12
- package/server/.next/server/app/(console)/repos/[id]/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/repos/[id]/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/repos/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/repos/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/repos/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/settings/page/server-reference-manifest.json +21 -21
- package/server/.next/server/app/(console)/settings/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/settings/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/sql/page/server-reference-manifest.json +18 -18
- package/server/.next/server/app/(console)/sql/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/sql/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/status/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/status/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/status/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/supabase/page/server-reference-manifest.json +30 -30
- package/server/.next/server/app/(console)/supabase/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/supabase/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/topology/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/topology/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/topology/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/turso/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/turso/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/turso/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/upstash/page/server-reference-manifest.json +11 -11
- package/server/.next/server/app/(console)/upstash/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/upstash/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/uptime/page/server-reference-manifest.json +25 -25
- package/server/.next/server/app/(console)/uptime/page.js.nft.json +1 -1
- package/server/.next/server/app/(console)/uptime/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/(console)/welcome/page/server-reference-manifest.json +16 -16
- package/server/.next/server/app/(console)/welcome/page.js.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 +8 -8
- package/server/.next/server/app/api/collect/route.js.nft.json +1 -1
- package/server/.next/server/app/api/daily/route/server-reference-manifest.json +8 -8
- package/server/.next/server/app/api/daily/route.js.nft.json +1 -1
- package/server/.next/server/app/api/telegram/webhook/route/server-reference-manifest.json +8 -8
- package/server/.next/server/app/api/telegram/webhook/route.js.nft.json +1 -1
- package/server/.next/server/app/api/watchdog/route.js.nft.json +1 -1
- package/server/.next/server/app/invite/page/server-reference-manifest.json +2 -2
- package/server/.next/server/app/invite/page.js.nft.json +1 -1
- package/server/.next/server/app/invite/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/mfa/page/server-reference-manifest.json +2 -2
- package/server/.next/server/app/mfa/page.js.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]/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/_0-5pjvqu672_v._.js +2 -2
- package/server/.next/server/chunks/_02qrz1g8sdvhe._.js +2 -2
- package/server/.next/server/chunks/_0ehqx1pkh20px._.js +1 -1
- package/server/.next/server/chunks/_0jiq3ns7681pv._.js +1 -1
- package/server/.next/server/chunks/_1ap0upnvy5i_1._.js +2 -2
- package/server/.next/server/chunks/_1b-88djuoexz1._.js +2 -2
- package/server/.next/server/chunks/_1t46m15axa4b4._.js +1 -1
- package/server/.next/server/chunks/src_lib_0pyyxm3m1rttg._.js +1 -1
- package/server/.next/server/chunks/src_lib_13irheo9qqhgx._.js +1 -1
- package/server/.next/server/chunks/src_lib_collector_runners_ts_12z4gtgikss74._.js +2 -2
- package/server/.next/server/chunks/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_agents_page_actions_21atz5tidps07.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_models_page_actions_0rvlzfa8rjyz_.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_playground_page_actions_01ejc1xilpuh4.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_quota_page_actions_0iki29gyi8cwa.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_usage_page_actions_1c99h-kwdnep7.js +1 -1
- package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_auto-actions_page_actions_1kw4ce6-efkr1.js +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__03xevz8n-mc20._.js +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__0mvauw9r_4qss._.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]__18gw74mr2vto3._.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]__1mxpszbk1aup8._.js +2 -2
- package/server/.next/server/chunks/ssr/_008i8a0_8skrp._.js +1 -1
- package/server/.next/server/chunks/ssr/_01n29sxn-py3x._.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/_0bd4cxnpnnq2u._.js +1 -1
- package/server/.next/server/chunks/ssr/{_1ykegy3wzl3mu._.js → _0c9_fa5ejth12._.js} +2 -2
- 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/{_0u5_d3o0i72tq._.js → _0fl2-fao_ye7t._.js} +2 -2
- package/server/.next/server/chunks/ssr/_0gl-ewvbhb677._.js +2 -2
- package/server/.next/server/chunks/ssr/_0gmw45sb1llld._.js +1 -1
- package/server/.next/server/chunks/ssr/_0i04zoixa2iup._.js +2 -2
- package/server/.next/server/chunks/ssr/_0idbg-ok0so2h._.js +2 -2
- package/server/.next/server/chunks/ssr/_0iy27gi4y9-fe._.js +1 -1
- 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/_0tnd528j0i1i4._.js +2 -2
- package/server/.next/server/chunks/ssr/_0uwkwcgucqgcf._.js +2 -2
- package/server/.next/server/chunks/ssr/_0uz60lk-7e_cj._.js +2 -2
- package/server/.next/server/chunks/ssr/_0wo-lpqf7hr1y._.js +2 -2
- package/server/.next/server/chunks/ssr/_0xmud7u5hdnqu._.js +2 -2
- package/server/.next/server/chunks/ssr/_1-4401bfn50mf._.js +1 -1
- package/server/.next/server/chunks/ssr/_1-6d1tm3r_qwg._.js +1 -1
- package/server/.next/server/chunks/ssr/_10bven6gb1vj0._.js +1 -1
- package/server/.next/server/chunks/ssr/_118h21qua_4o3._.js +1 -1
- package/server/.next/server/chunks/ssr/_12makqwatfke-._.js +2 -2
- package/server/.next/server/chunks/ssr/{_17tabyg0mhxlx._.js → _18sg0ilz439y6._.js} +2 -2
- package/server/.next/server/chunks/ssr/_19-3vzkc6rk97._.js +1 -1
- package/server/.next/server/chunks/ssr/{_13bpjk3g0tp2e._.js → _19q2vj_ppgsu4._.js} +2 -2
- 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/_1q3fi6a4gklq6._.js +1 -1
- package/server/.next/server/chunks/ssr/_1ul3og9l7vp32._.js +2 -2
- package/server/.next/server/chunks/ssr/{_08rjac8cutbcs._.js → _1vlm9990gr64r._.js} +2 -2
- package/server/.next/server/chunks/ssr/_1yh3k88t_kh4h._.js +2 -2
- package/server/.next/server/chunks/ssr/_1z6dy1k48mskn._.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_keys_page_actions_181-3r4e_0yb5.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_logs_page_actions_1ryb93n6khky3.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_alerts_page_actions_06_3gmyq3jtvi.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_1myo_rodrlg3a.js +2 -2
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_page_actions_0ksau5eicvycc.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_1fgolmmpxrouc.js +1 -1
- package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_containers_page_actions_1ainjsbrnl360.js +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_0etvjdinp5urq._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0ovx2ogvlz2eh._.js +1 -1
- package/server/.next/server/chunks/ssr/src_0ph020gy78gi9._.js +1 -1
- package/server/.next/server/chunks/ssr/src_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)_0gw9o1og9hq_4._.js → src_app_(console)_0krr6t05xs2tn._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_app_(console)_0ohoun7l5f2tb._.js +3 -0
- package/server/.next/server/chunks/ssr/src_app_(console)_alerts_0j5xlt68kwg8x._.js +2 -2
- package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_08in-j3xp5mbn._.js +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)_containers_containers-view_tsx_1xkcrw5gx53xo._.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)_os_os-view_tsx_0xr69f5vtstls._.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_148phfjye0539._.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_1u2md84o5b6td._.js → src_app_signin_12a3ifphkkcs7._.js} +2 -2
- package/server/.next/server/chunks/ssr/src_components_create_create-dialog_tsx_1s_9clly_m1ru._.js +1 -1
- package/server/.next/server/chunks/ssr/src_lib_collector_self-update_ts_18m5vmptpjhtg._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_0iy_wyg2p1jkn._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_actions_decide-form_tsx_1hngtxpyle3v8._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_ai_providers_actions_ts_0wxa36ai6s5nn._.js +1 -1
- package/server/.next/server/chunks/ssr/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
- package/server/.next/server/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 +152 -152
- package/server/.next/static/chunks/{1kyz-ah3_ho6c.js → 0-o-4ilzkrd38.js} +1 -1
- package/server/.next/static/chunks/{356b00huilj4q.js → 01euc4zjlprz5.js} +1 -1
- package/server/.next/static/chunks/028g933xfv8jn.js +1 -0
- package/server/.next/static/chunks/{2k4z-oed_6g2l.js → 02kly5fiyvt77.js} +1 -1
- package/server/.next/static/chunks/{2kmw3ug2__8y3.js → 0dq-2wtk0h5u7.js} +1 -1
- package/server/.next/static/chunks/{26exu0f7ok41j.js → 0ey7akdab5tu8.js} +1 -1
- package/server/.next/static/chunks/0ge2nkna7o16p.js +1 -0
- package/server/.next/static/chunks/{3w5rrc-0xud6m.js → 0l61-etojd65n.js} +1 -1
- package/server/.next/static/chunks/{3lc-hq-bpg71u.js → 0matuoy08desx.js} +1 -1
- package/server/.next/static/chunks/{2-ijilf6lbw4f.js → 0mbt6eam4qr2f.js} +1 -1
- package/server/.next/static/chunks/0utjdzwgd7zw2.js +1 -0
- package/server/.next/static/chunks/{1a0rdqp6soc92.js → 0v97o46v-74gw.js} +1 -1
- package/server/.next/static/chunks/{14f5pn2krqoyh.js → 0xlfzxnboj4f1.js} +1 -1
- package/server/.next/static/chunks/{3wfyge_-2qnyj.js → 0xz55932e19r8.js} +1 -1
- package/server/.next/static/chunks/{0rblb2d9s6x__.js → 0y99dm8mesqe9.js} +1 -1
- package/server/.next/static/chunks/{3xulo5x1hbsw-.js → 1935vuszybg7i.js} +1 -1
- package/server/.next/static/chunks/{3_6-4h_qltoii.js → 1c9eb592ho0-l.js} +1 -1
- package/server/.next/static/chunks/{3ezef0voy5xju.js → 1pogexbz36ij8.js} +1 -1
- package/server/.next/static/chunks/{17zst1h7smcce.js → 1r99dm6-o5qw2.js} +1 -1
- package/server/.next/static/chunks/{35vilzb1p9yjf.js → 1sa-1lde5_ikt.js} +1 -1
- package/server/.next/static/chunks/{0viea3-xdb4uv.js → 1truzt17f0fce.js} +1 -1
- package/server/.next/static/chunks/{3g0ywdith98z2.js → 1u8mo8jflotrt.js} +1 -1
- package/server/.next/static/chunks/{0ps76fyk0mlud.js → 1uk98c6r9i2bn.js} +1 -1
- package/server/.next/static/chunks/{3u2qewigse-a4.js → 2-uaya1_uxlg8.js} +1 -1
- package/server/.next/static/chunks/{11r8k-t1ijjkn.js → 2-xolk9x48-v1.js} +1 -1
- package/server/.next/static/chunks/{1a7zdd51t9mil.js → 22ygzud_kp29f.js} +1 -1
- package/server/.next/static/chunks/{3f1selgoqszyq.js → 2am77mhkx46hz.js} +2 -2
- package/server/.next/static/chunks/{2crsj9_2h2nzh.js → 2fvh4wg2kp4c2.js} +1 -1
- package/server/.next/static/chunks/2m8-ctreu-y-r.js +1 -0
- package/server/.next/static/chunks/{44hkyor0suthy.js → 2p8bv7d7t08z1.js} +1 -1
- package/server/.next/static/chunks/{1fh3cq_v5nqtp.js → 2szchf79vnxgd.js} +1 -1
- package/server/.next/static/chunks/{0v-0yvs2o_ibn.js → 2yc4qzglai5fq.js} +1 -1
- package/server/.next/static/chunks/{28fzu8z0ofyw0.js → 2ze-y3he5_bb0.js} +1 -1
- package/server/.next/static/chunks/{1d4i_v63pyozl.js → 33_2mbxu9wufm.js} +1 -1
- package/server/.next/static/chunks/33avmrae70_xs.js +1 -0
- package/server/.next/static/chunks/{1qmrzxeff7esb.js → 363mcu9nd9znh.js} +1 -1
- package/server/.next/static/chunks/{0hths0sijlql2.js → 3aou6xwhz8z6a.js} +1 -1
- package/server/.next/static/chunks/{2j24hsy45xi-u.js → 3bwwwv3sp7uyn.js} +1 -1
- package/server/.next/static/chunks/{2pa65sxfnzj4k.js → 3dk6a5gl9glxo.js} +1 -1
- package/server/.next/static/chunks/{1d5651gcd0bfq.js → 3e-0ejqqa7jwn.js} +1 -1
- package/server/.next/static/chunks/{1qjg48qu3j1w4.js → 3gkm-ynu4fq5u.js} +1 -1
- package/server/.next/static/chunks/{0cc9ahw1xs0ny.js → 3gmm9g54vx4w0.js} +1 -1
- package/server/.next/static/chunks/{1fk-rtgxvtdso.js → 3jqmm62dbykt1.js} +1 -1
- package/server/.next/static/chunks/{1yjrm8ekqlzfy.js → 3lvz18snt6489.js} +1 -1
- package/server/.next/static/chunks/{308vk5n0anqam.js → 3m3vl3n5xs039.js} +2 -2
- package/server/.next/static/chunks/{2d7luax7loip3.js → 3qv9klayap1tz.js} +1 -1
- package/server/.next/static/chunks/{2-vu-7596xgz-.js → 3ursfc8kxp2ak.js} +2 -2
- package/server/.next/static/chunks/{3a9toq_3nqe93.js → 3xkvsl4vbpm41.js} +1 -1
- package/server/.next/static/chunks/3yu0azvye6wr_.js +1 -0
- package/server/server.js +1 -1
- package/server/.next/server/chunks/ssr/src_app_(console)_0_odx13qcz9o1._.js +0 -3
- package/server/.next/static/chunks/00e1aosyzj6rl.js +0 -1
- package/server/.next/static/chunks/0hzw1rqyz-ith.js +0 -1
- package/server/.next/static/chunks/1rgved8vjyay2.js +0 -1
- package/server/.next/static/chunks/1y_o3hc2z85sh.js +0 -1
- package/server/.next/static/chunks/39a3uxexc-wqm.js +0 -1
- package/server/.next/static/chunks/3qudv985iqmz7.js +0 -1
- /package/server/.next/static/{g_rE0bq_ZZa-pl4RulWXV → fogXXBSOhoHV3eIf8_j28}/_buildManifest.js +0 -0
- /package/server/.next/static/{g_rE0bq_ZZa-pl4RulWXV → fogXXBSOhoHV3eIf8_j28}/_clientMiddlewareManifest.js +0 -0
- /package/server/.next/static/{g_rE0bq_ZZa-pl4RulWXV → fogXXBSOhoHV3eIf8_j28}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,33550,e=>{var t=e.i(271645),r={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};e.s(["f",0,(e,a,n,i)=>{let s=(0,t.forwardRef)(({color:n="currentColor",size:s=24,stroke:l=2,title:o,className:d,children:c,...f},h)=>(0,t.createElement)("svg",{ref:h,...r[e],width:s,height:s,className:["tabler-icon",`tabler-icon-${a}`,d].filter(Boolean).join(" "),..."filled"===e?{fill:n}:{strokeWidth:l,stroke:n},...f},[o&&(0,t.createElement)("title",{key:"svg-title"},o),...i.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(c)?c:[c]]));return s.displayName=`${n}`,s}],33550)},344423,e=>{let t=(0,e.i(33550).f)("outline","alert-circle","AlertCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 8v4",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]]);e.s(["f",0,t],344423)},146874,e=>{let t=(0,e.i(33550).f)("outline","alert-triangle","AlertTriangle",[["path",{d:"M12 9v4",key:"svg-0"}],["path",{d:"M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]]);e.s(["f",0,t],146874)},785642,396455,802480,802874,e=>{var t=e.i(33550);let r=(0,t.f)("outline","circle-check","CircleCheck",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-0"}],["path",{d:"M9 12l2 2l4 -4",key:"svg-1"}]]);e.s(["f",0,r],785642);let a=(0,t.f)("outline","circle-dashed","CircleDashed",[["path",{d:"M8.56 3.69a9 9 0 0 0 -2.92 1.95",key:"svg-0"}],["path",{d:"M3.69 8.56a9 9 0 0 0 -.69 3.44",key:"svg-1"}],["path",{d:"M3.69 15.44a9 9 0 0 0 1.95 2.92",key:"svg-2"}],["path",{d:"M8.56 20.31a9 9 0 0 0 3.44 .69",key:"svg-3"}],["path",{d:"M15.44 20.31a9 9 0 0 0 2.92 -1.95",key:"svg-4"}],["path",{d:"M20.31 15.44a9 9 0 0 0 .69 -3.44",key:"svg-5"}],["path",{d:"M20.31 8.56a9 9 0 0 0 -1.95 -2.92",key:"svg-6"}],["path",{d:"M15.44 3.69a9 9 0 0 0 -3.44 -.69",key:"svg-7"}]]);e.s(["f",0,a],396455);let n=(0,t.f)("outline","circle-x","CircleX",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-0"}],["path",{d:"M10 10l4 4m0 -4l-4 4",key:"svg-1"}]]);e.s(["f",0,n],802480);let i=(0,t.f)("outline","hammer","Hammer",[["path",{d:"M11.414 10l-7.383 7.418a2.091 2.091 0 0 0 0 2.967a2.11 2.11 0 0 0 2.976 0l7.407 -7.385",key:"svg-0"}],["path",{d:"M18.121 15.293l2.586 -2.586a1 1 0 0 0 0 -1.414l-7.586 -7.586a1 1 0 0 0 -1.414 0l-2.586 2.586a1 1 0 0 0 0 1.414l7.586 7.586a1 1 0 0 0 1.414 0",key:"svg-1"}]]);e.s(["f",0,i],802874)},239692,e=>{let t=(0,e.i(33550).f)("outline","help-circle","HelpCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 16v.01",key:"svg-1"}],["path",{d:"M12 13a2 2 0 0 0 .914 -3.782a1.98 1.98 0 0 0 -2.414 .483",key:"svg-2"}]]);e.s(["f",0,t],239692)},39622,e=>{let t=(0,e.i(33550).f)("outline","info-circle","InfoCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]]);e.s(["f",0,t],39622)},513932,e=>{let t=(0,e.i(33550).f)("outline","loader-2","Loader2",[["path",{d:"M12 3a9 9 0 1 0 9 9",key:"svg-0"}]]);e.s(["f",0,t],513932)},95187,(e,t,r)=>{Object.defineProperty(r,"__esModule",{value:!0});var a={callServer:function(){return i.callServer},createServerReference:function(){return l.createServerReference},findSourceMapURL:function(){return s.findSourceMapURL}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let i=e.r(132120),s=e.r(92245),l=e.r(235326)},128829,e=>{var t=e.i(95187);let r=(0,t.createServerReference)("008b6dbed199d0deb40e431c4e4f3d7746a8c4835f",t.callServer,void 0,t.findSourceMapURL,"signOut");e.s(["f",0,r])},563491,e=>{var t=e.i(843476),r=e.i(16340),a=e.i(171209),n=e.i(301844);e.s(["default",0,function({error:e,retry:i}){return(0,t.jsxs)("html",{lang:"en",suppressHydrationWarning:!0,children:[(0,t.jsxs)("head",{children:[(0,t.jsx)("title",{children:"Something went wrong"}),(0,t.jsx)("script",{dangerouslySetInnerHTML:{__html:n.W}})]}),(0,t.jsxs)("body",{className:"bg-bg font-sans text-ink antialiased",children:[(0,t.jsx)("main",{className:"grid min-h-screen place-items-center px-4 py-6",children:(0,t.jsx)("div",{className:"w-[460px] max-w-full",children:(0,t.jsx)(r.f,{digest:e.digest,retry:i,withSignOut:!0})})}),(0,t.jsx)(a.ThemeKeeper,{})]})]})}])},16340,e=>{var t=e.i(843476),r=e.i(146874),a=e.i(128829),n=e.i(428325);e.s(["f",0,function({digest:e,retry:i,withSignOut:s=!1,note:l,notice:o}){return(0,t.jsx)(n.N,{children:(0,t.jsxs)(n.k,{icon:r.f,title:o?"Try again soon":"This page didn't load",action:(0,t.jsxs)("div",{className:"flex flex-wrap justify-center gap-2",children:[(0,t.jsx)(n.K,{variant:"primary",onClick:()=>i(),children:"Try again"}),s&&(0,t.jsx)("form",{action:a.f,children:(0,t.jsx)(n.K,{type:"submit",children:"Sign out"})})]}),children:[o??"Watchbell couldn't read its database, or a setting is missing. It keeps retrying on its own; the server log has the details (reference below).",l&&(0,t.jsx)("p",{className:"mt-2 text-xs text-ink-soft",role:"status",children:l}),e&&!o&&(0,t.jsxs)("p",{className:"mt-2 font-mono text-xs text-ink-faint",children:["Reference ",e]})]})})}])},428325,e=>{var t=e.i(843476);let r=(0,e.i(33550).f)("outline","inbox","Inbox",[["path",{d:"M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -12",key:"svg-0"}],["path",{d:"M4 13h3l3 3h4l3 -3h3",key:"svg-1"}]]);e.i(522016);var a=e.i(54131),n=e.i(220806),i=e.i(975157);function s({variant:e="secondary",size:t="md"}={}){return(0,i.f)("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","sm"===t?"px-[9px] py-[3px] text-[13px]":"px-3 py-1.5","primary"===e&&"border-brand bg-brand text-on-brand hover:bg-brand-hover","secondary"===e&&"border-line-strong bg-surface text-ink hover:bg-hover","ghost"===e&&"border-transparent bg-transparent text-brand hover:bg-brand-soft","danger"===e&&"border-err bg-err text-on-brand hover:brightness-95")}let l={danger:{box:"bg-err-soft border-err/30",state:"err"},warning:{box:"bg-warn-soft border-warn-icon/35",state:"warn"},info:{box:"bg-brand-soft border-brand/25",state:"info"}},o=(e,r)=>"string"==typeof e?(0,t.jsx)(a.MaskedText,{text:e,inLink:r}):e;e.s(["M",0,function({tone:e,title:r,children:a,action:s}){let d=l[e];return(0,t.jsxs)("div",{className:(0,i.f)("flex items-start gap-2.5 rounded-lg border px-3.5 py-2.5",d.box),role:"danger"===e?"alert":"status",children:[(0,t.jsx)("span",{className:"mt-px",children:(0,t.jsx)(n.Z,{state:d.state,size:18})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("b",{className:"block font-medium",children:o(r)}),a&&(0,t.jsx)("p",{className:"mt-0.5 text-[13px] text-ink-soft",children:o(a)})]}),s&&(0,t.jsx)("div",{className:"ml-auto",children:s})]})},"K",0,function({variant:e,size:r,className:a,type:n="button",...l}){return(0,t.jsx)("button",{type:n,className:(0,i.f)(s({variant:e,size:r}),a),...l})},"N",0,function({title:e,meta:r,flush:a,className:n,children:s}){return(0,t.jsxs)("section",{className:(0,i.f)("min-w-0 rounded-lg border border-line bg-surface",n),children:[e&&(0,t.jsxs)("div",{className:(0,i.f)("flex flex-wrap items-center gap-2 px-[18px] pt-3.5",a?"pb-2.5":"pb-1.5"),children:[(0,t.jsx)("h2",{className:"text-[15px]",children:e}),r&&(0,t.jsx)("span",{className:"ml-auto flex items-center gap-1.5 text-[12.5px] text-ink-soft",children:r})]}),a?s:(0,t.jsx)("div",{className:"px-[18px] pb-4 pt-2",children:s})]})},"k",0,function({icon:e=r,title:a,children:n,action:i}){return(0,t.jsxs)("div",{className:"px-4 py-7 text-center text-ink-soft",children:[(0,t.jsx)(e,{size:28,"aria-hidden":!0,className:"mx-auto text-ink-faint"}),(0,t.jsx)("b",{className:"mb-0.5 mt-1.5 block font-medium text-ink",children:a}),n,i&&(0,t.jsx)("div",{className:"mt-3",children:i})]})},"O",0,function({id:e,label:r,help:a,error:n,children:i}){return(0,t.jsxs)("div",{className:"mb-3.5 flex flex-col gap-[5px]",children:[(0,t.jsx)("label",{htmlFor:e,className:"text-[13px] font-medium",children:r}),i,a&&(0,t.jsx)("span",{className:"text-[12.5px] text-ink-soft",children:a}),n&&(0,t.jsx)("span",{className:"text-[12.5px] text-err",role:"alert",children:n})]})},"_",0,function({label:e,pressed:r,children:a,...n}){return(0,t.jsx)("button",{type:"button","aria-label":e,title:e,"aria-pressed":r,className:(0,i.f)("relative inline-grid size-[34px] shrink-0 place-items-center rounded-md text-ink-soft hover:bg-hover hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",r&&"bg-brand-soft text-brand"),...n,children:a})},"E",0,function({children:e}){return(0,t.jsx)("span",{className:"mr-1 inline-block rounded-[5px] border border-line bg-surface-2 px-1.5 text-xs text-ink-soft",children:e})},"R",0,s,"S",0,"w-full rounded-md border border-line-strong bg-surface px-2.5 py-1.5 text-ink outline-none focus:border-brand focus:ring-2 focus:ring-brand/40"],428325)},220806,914552,615884,e=>{var t=e.i(843476),r=e.i(344423),a=e.i(146874),n=e.i(785642),i=e.i(396455),s=e.i(802480),l=e.i(802874),o=e.i(239692),d=e.i(39622),c=e.i(513932),f=e.i(33550);let h=(0,f.f)("outline","moon","Moon",[["path",{d:"M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454l0 .008",key:"svg-0"}]]);e.s(["f",0,h],914552);let x=(0,f.f)("outline","player-pause","PlayerPause",[["path",{d:"M6 6a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -12",key:"svg-0"}],["path",{d:"M14 6a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -12",key:"svg-1"}]]),p=(0,f.f)("outline","tool","Tool",[["path",{d:"M7 10h3v-3l-3.5 -3.5a6 6 0 0 1 8 8l6 6a2 2 0 0 1 -3 3l-6 -6a6 6 0 0 1 -8 -8l3.5 3.5",key:"svg-0"}]]);e.s(["f",0,p],615884);let u={ok:"text-ok",warn:"text-warn-icon",paused:"text-warn-icon",err:"text-err",fail:"text-err",idle:"text-idle",off:"text-idle",unknown:"text-idle",build:"text-brand",info:"text-brand",maint:"text-brand"};var g=e.i(975157);let b={ok:n.f,warn:a.f,err:r.f,idle:h,build:c.f,paused:x,info:d.f,fail:s.f,off:i.f,unknown:o.f,maint:p};function v({state:e,size:r=17,still:a=!1}){let n=a&&"build"===e?l.f:b[e];return(0,t.jsx)(n,{size:r,"aria-hidden":!0,className:(0,g.f)("shrink-0",u[e],"build"===e&&!a&&"animate-spin")})}e.s(["Z",0,v,"F",0,function({state:e,children:r}){return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 whitespace-nowrap",children:[(0,t.jsx)(v,{state:e}),(0,t.jsx)("span",{children:r})]})}],220806)}])})();
|
|
1
|
+
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,33550,e=>{var t=e.i(271645),r={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};e.s(["f",0,(e,a,n,i)=>{let s=(0,t.forwardRef)(({color:n="currentColor",size:s=24,stroke:l=2,title:o,className:d,children:c,...f},h)=>(0,t.createElement)("svg",{ref:h,...r[e],width:s,height:s,className:["tabler-icon",`tabler-icon-${a}`,d].filter(Boolean).join(" "),..."filled"===e?{fill:n}:{strokeWidth:l,stroke:n},...f},[o&&(0,t.createElement)("title",{key:"svg-title"},o),...i.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(c)?c:[c]]));return s.displayName=`${n}`,s}],33550)},344423,e=>{let t=(0,e.i(33550).f)("outline","alert-circle","AlertCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 8v4",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]]);e.s(["f",0,t],344423)},146874,e=>{let t=(0,e.i(33550).f)("outline","alert-triangle","AlertTriangle",[["path",{d:"M12 9v4",key:"svg-0"}],["path",{d:"M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]]);e.s(["f",0,t],146874)},785642,396455,802480,802874,e=>{var t=e.i(33550);let r=(0,t.f)("outline","circle-check","CircleCheck",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-0"}],["path",{d:"M9 12l2 2l4 -4",key:"svg-1"}]]);e.s(["f",0,r],785642);let a=(0,t.f)("outline","circle-dashed","CircleDashed",[["path",{d:"M8.56 3.69a9 9 0 0 0 -2.92 1.95",key:"svg-0"}],["path",{d:"M3.69 8.56a9 9 0 0 0 -.69 3.44",key:"svg-1"}],["path",{d:"M3.69 15.44a9 9 0 0 0 1.95 2.92",key:"svg-2"}],["path",{d:"M8.56 20.31a9 9 0 0 0 3.44 .69",key:"svg-3"}],["path",{d:"M15.44 20.31a9 9 0 0 0 2.92 -1.95",key:"svg-4"}],["path",{d:"M20.31 15.44a9 9 0 0 0 .69 -3.44",key:"svg-5"}],["path",{d:"M20.31 8.56a9 9 0 0 0 -1.95 -2.92",key:"svg-6"}],["path",{d:"M15.44 3.69a9 9 0 0 0 -3.44 -.69",key:"svg-7"}]]);e.s(["f",0,a],396455);let n=(0,t.f)("outline","circle-x","CircleX",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-0"}],["path",{d:"M10 10l4 4m0 -4l-4 4",key:"svg-1"}]]);e.s(["f",0,n],802480);let i=(0,t.f)("outline","hammer","Hammer",[["path",{d:"M11.414 10l-7.383 7.418a2.091 2.091 0 0 0 0 2.967a2.11 2.11 0 0 0 2.976 0l7.407 -7.385",key:"svg-0"}],["path",{d:"M18.121 15.293l2.586 -2.586a1 1 0 0 0 0 -1.414l-7.586 -7.586a1 1 0 0 0 -1.414 0l-2.586 2.586a1 1 0 0 0 0 1.414l7.586 7.586a1 1 0 0 0 1.414 0",key:"svg-1"}]]);e.s(["f",0,i],802874)},239692,e=>{let t=(0,e.i(33550).f)("outline","help-circle","HelpCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 16v.01",key:"svg-1"}],["path",{d:"M12 13a2 2 0 0 0 .914 -3.782a1.98 1.98 0 0 0 -2.414 .483",key:"svg-2"}]]);e.s(["f",0,t],239692)},39622,e=>{let t=(0,e.i(33550).f)("outline","info-circle","InfoCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]]);e.s(["f",0,t],39622)},513932,e=>{let t=(0,e.i(33550).f)("outline","loader-2","Loader2",[["path",{d:"M12 3a9 9 0 1 0 9 9",key:"svg-0"}]]);e.s(["f",0,t],513932)},95187,(e,t,r)=>{Object.defineProperty(r,"__esModule",{value:!0});var a={callServer:function(){return i.callServer},createServerReference:function(){return l.createServerReference},findSourceMapURL:function(){return s.findSourceMapURL}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let i=e.r(132120),s=e.r(92245),l=e.r(235326)},982680,e=>{var t=e.i(95187);let r=(0,t.createServerReference)("00908e4a017a3eb1fa932c81866de507828f461d50",t.callServer,void 0,t.findSourceMapURL,"signOut");e.s(["f",0,r])},563491,e=>{var t=e.i(843476),r=e.i(16340),a=e.i(171209),n=e.i(301844);e.s(["default",0,function({error:e,retry:i}){return(0,t.jsxs)("html",{lang:"en",suppressHydrationWarning:!0,children:[(0,t.jsxs)("head",{children:[(0,t.jsx)("title",{children:"Something went wrong"}),(0,t.jsx)("script",{dangerouslySetInnerHTML:{__html:n.W}})]}),(0,t.jsxs)("body",{className:"bg-bg font-sans text-ink antialiased",children:[(0,t.jsx)("main",{className:"grid min-h-screen place-items-center px-4 py-6",children:(0,t.jsx)("div",{className:"w-[460px] max-w-full",children:(0,t.jsx)(r.f,{digest:e.digest,retry:i,withSignOut:!0})})}),(0,t.jsx)(a.ThemeKeeper,{})]})]})}])},16340,e=>{var t=e.i(843476),r=e.i(146874),a=e.i(982680),n=e.i(428325);e.s(["f",0,function({digest:e,retry:i,withSignOut:s=!1,note:l,notice:o}){return(0,t.jsx)(n.N,{children:(0,t.jsxs)(n.k,{icon:r.f,title:o?"Try again soon":"This page didn't load",action:(0,t.jsxs)("div",{className:"flex flex-wrap justify-center gap-2",children:[(0,t.jsx)(n.K,{variant:"primary",onClick:()=>i(),children:"Try again"}),s&&(0,t.jsx)("form",{action:a.f,children:(0,t.jsx)(n.K,{type:"submit",children:"Sign out"})})]}),children:[o??"Watchbell couldn't read its database, or a setting is missing. It keeps retrying on its own; the server log has the details (reference below).",l&&(0,t.jsx)("p",{className:"mt-2 text-xs text-ink-soft",role:"status",children:l}),e&&!o&&(0,t.jsxs)("p",{className:"mt-2 font-mono text-xs text-ink-faint",children:["Reference ",e]})]})})}])},428325,e=>{var t=e.i(843476);let r=(0,e.i(33550).f)("outline","inbox","Inbox",[["path",{d:"M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -12",key:"svg-0"}],["path",{d:"M4 13h3l3 3h4l3 -3h3",key:"svg-1"}]]);e.i(522016);var a=e.i(54131),n=e.i(220806),i=e.i(975157);function s({variant:e="secondary",size:t="md"}={}){return(0,i.f)("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","sm"===t?"px-[9px] py-[3px] text-[13px]":"px-3 py-1.5","primary"===e&&"border-brand bg-brand text-on-brand hover:bg-brand-hover","secondary"===e&&"border-line-strong bg-surface text-ink hover:bg-hover","ghost"===e&&"border-transparent bg-transparent text-brand hover:bg-brand-soft","danger"===e&&"border-err bg-err text-on-brand hover:brightness-95")}let l={danger:{box:"bg-err-soft border-err/30",state:"err"},warning:{box:"bg-warn-soft border-warn-icon/35",state:"warn"},info:{box:"bg-brand-soft border-brand/25",state:"info"}},o=(e,r)=>"string"==typeof e?(0,t.jsx)(a.MaskedText,{text:e,inLink:r}):e;e.s(["M",0,function({tone:e,title:r,children:a,action:s}){let d=l[e];return(0,t.jsxs)("div",{className:(0,i.f)("flex items-start gap-2.5 rounded-lg border px-3.5 py-2.5",d.box),role:"danger"===e?"alert":"status",children:[(0,t.jsx)("span",{className:"mt-px",children:(0,t.jsx)(n.Z,{state:d.state,size:18})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("b",{className:"block font-medium",children:o(r)}),a&&(0,t.jsx)("p",{className:"mt-0.5 text-[13px] text-ink-soft",children:o(a)})]}),s&&(0,t.jsx)("div",{className:"ml-auto",children:s})]})},"K",0,function({variant:e,size:r,className:a,type:n="button",...l}){return(0,t.jsx)("button",{type:n,className:(0,i.f)(s({variant:e,size:r}),a),...l})},"N",0,function({title:e,meta:r,flush:a,className:n,children:s}){return(0,t.jsxs)("section",{className:(0,i.f)("min-w-0 rounded-lg border border-line bg-surface",n),children:[e&&(0,t.jsxs)("div",{className:(0,i.f)("flex flex-wrap items-center gap-2 px-[18px] pt-3.5",a?"pb-2.5":"pb-1.5"),children:[(0,t.jsx)("h2",{className:"text-[15px]",children:e}),r&&(0,t.jsx)("span",{className:"ml-auto flex items-center gap-1.5 text-[12.5px] text-ink-soft",children:r})]}),a?s:(0,t.jsx)("div",{className:"px-[18px] pb-4 pt-2",children:s})]})},"k",0,function({icon:e=r,title:a,children:n,action:i}){return(0,t.jsxs)("div",{className:"px-4 py-7 text-center text-ink-soft",children:[(0,t.jsx)(e,{size:28,"aria-hidden":!0,className:"mx-auto text-ink-faint"}),(0,t.jsx)("b",{className:"mb-0.5 mt-1.5 block font-medium text-ink",children:a}),n,i&&(0,t.jsx)("div",{className:"mt-3",children:i})]})},"O",0,function({id:e,label:r,help:a,error:n,children:i}){return(0,t.jsxs)("div",{className:"mb-3.5 flex flex-col gap-[5px]",children:[(0,t.jsx)("label",{htmlFor:e,className:"text-[13px] font-medium",children:r}),i,a&&(0,t.jsx)("span",{className:"text-[12.5px] text-ink-soft",children:a}),n&&(0,t.jsx)("span",{className:"text-[12.5px] text-err",role:"alert",children:n})]})},"_",0,function({label:e,pressed:r,children:a,...n}){return(0,t.jsx)("button",{type:"button","aria-label":e,title:e,"aria-pressed":r,className:(0,i.f)("relative inline-grid size-[34px] shrink-0 place-items-center rounded-md text-ink-soft hover:bg-hover hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",r&&"bg-brand-soft text-brand"),...n,children:a})},"E",0,function({children:e}){return(0,t.jsx)("span",{className:"mr-1 inline-block rounded-[5px] border border-line bg-surface-2 px-1.5 text-xs text-ink-soft",children:e})},"R",0,s,"S",0,"w-full rounded-md border border-line-strong bg-surface px-2.5 py-1.5 text-ink outline-none focus:border-brand focus:ring-2 focus:ring-brand/40"],428325)},220806,914552,615884,e=>{var t=e.i(843476),r=e.i(344423),a=e.i(146874),n=e.i(785642),i=e.i(396455),s=e.i(802480),l=e.i(802874),o=e.i(239692),d=e.i(39622),c=e.i(513932),f=e.i(33550);let h=(0,f.f)("outline","moon","Moon",[["path",{d:"M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454l0 .008",key:"svg-0"}]]);e.s(["f",0,h],914552);let x=(0,f.f)("outline","player-pause","PlayerPause",[["path",{d:"M6 6a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -12",key:"svg-0"}],["path",{d:"M14 6a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1l0 -12",key:"svg-1"}]]),p=(0,f.f)("outline","tool","Tool",[["path",{d:"M7 10h3v-3l-3.5 -3.5a6 6 0 0 1 8 8l6 6a2 2 0 0 1 -3 3l-6 -6a6 6 0 0 1 -8 -8l3.5 3.5",key:"svg-0"}]]);e.s(["f",0,p],615884);let u={ok:"text-ok",warn:"text-warn-icon",paused:"text-warn-icon",err:"text-err",fail:"text-err",idle:"text-idle",off:"text-idle",unknown:"text-idle",build:"text-brand",info:"text-brand",maint:"text-brand"};var g=e.i(975157);let b={ok:n.f,warn:a.f,err:r.f,idle:h,build:c.f,paused:x,info:d.f,fail:s.f,off:i.f,unknown:o.f,maint:p};function v({state:e,size:r=17,still:a=!1}){let n=a&&"build"===e?l.f:b[e];return(0,t.jsx)(n,{size:r,"aria-hidden":!0,className:(0,g.f)("shrink-0",u[e],"build"===e&&!a&&"animate-spin")})}e.s(["Z",0,v,"F",0,function({state:e,children:r}){return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 whitespace-nowrap",children:[(0,t.jsx)(v,{state:e}),(0,t.jsx)("span",{children:r})]})}],220806)}])})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,531219,e=>{let t=(0,e.i(33550).f)("outline","filter-off","FilterOff",[["path",{d:"M8 4h12v2.172a2 2 0 0 1 -.586 1.414l-3.914 3.914m-.5 3.5v4l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227",key:"svg-0"}],["path",{d:"M3 3l18 18",key:"svg-1"}]]);e.s(["f",0,t],531219)},518716,e=>{let t=(0,e.i(33550).f)("outline","refresh","Refresh",[["path",{d:"M20 11a8.1 8.1 0 0 0 -15.5 -2m-.5 -4v4h4",key:"svg-0"}],["path",{d:"M4 13a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4",key:"svg-1"}]]);e.s(["f",0,t],518716)},225913,e=>{var t=e.i(207670);let n=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,a=t.f;e.s(["f",0,(e,t)=>r=>{var s;if((null==t?void 0:t.variants)==null)return a(e,null==r?void 0:r.class,null==r?void 0:r.className);let{variants:i,defaultVariants:l}=t,o=Object.keys(i).map(e=>{let t=null==r?void 0:r[e],a=null==l?void 0:l[e];if(null===t)return null;let s=n(t)||n(a);return i[e][s]}),d=r&&Object.entries(r).reduce((e,t)=>{let[n,a]=t;return void 0===a||(e[n]=a),e},{});return a(e,o,null==t||null==(s=t.compoundVariants)?void 0:s.reduce((e,t)=>{let{class:n,className:a,...r}=t;return Object.entries(r).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...l,...d}[t]):({...l,...d})[t]===n})?[...e,n,a]:e},[]),null==r?void 0:r.class,null==r?void 0:r.className)}])},46200,e=>{var t=e.i(843476),n=e.i(146874),a=e.i(239692),r=e.i(271645),s=e.i(846696),i=e.i(428325),l=e.i(500443),o=e.i(776639);e.s(["f",0,function({trigger:e,open:d,onOpenChange:u,title:c,body:p,cta:f,danger:x=!1,onConfirm:h}){let[g,m]=(0,r.useState)(!1),v=d??g,[b,j]=(0,r.useTransition)();function k(e){void 0===d&&m(e),u?.(e)}return(0,l.useHoldRefresh)(v),(0,t.jsxs)(o.N,{open:v,onOpenChange:e=>{b||k(e)},children:[void 0!==e&&((0,r.isValidElement)(e)?(0,t.jsx)(o.a,{render:e}):(0,t.jsx)(o.a,{children:e})),(0,t.jsxs)(o.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:[(0,t.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,t.jsx)("span",{className:`grid size-9 shrink-0 place-items-center rounded-lg bg-sunken ${x?"text-err":"text-ink-soft"}`,children:x?(0,t.jsx)(n.f,{size:19}):(0,t.jsx)(a.f,{size:19})}),(0,t.jsxs)("div",{children:[(0,t.jsx)(o.F,{className:"text-base",children:c}),(0,t.jsx)(o.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:p})]})]}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsx)(i.K,{onClick:()=>k(!1),disabled:b,children:"Keep as is"}),(0,t.jsx)(i.K,{variant:x?"danger":"primary",onClick:function(){j(async()=>{try{let e=await h();e.ok?(s.c.success(e.message),k(!1)):s.c.error(e.message)}catch{s.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})},disabled:b,children:b?"Working…":f})]})]})]})}])},374931,e=>{var t=e.i(843476),n=e.i(531219),a=e.i(357772),r=e.i(271645),s=e.i(54131),i=e.i(428325),l=e.i(541299),o=e.i(691106),d=e.i(975157),u=e.i(322534),c=e.i(495784);e.s(["ListFilter",0,function({placeholder:e,states:p,groups:f,head:x,rows:h,chips:g}){var m,v;let b,[j,k]=(0,r.useState)(""),[y,N]=(0,r.useState)(""),[w,S]=(0,r.useState)(""),[$,C]=(0,r.useState)(""),[z,M]=(0,r.useState)(1),_=(0,s.useMask)(),O=(m=h.map(e=>({...e,text:`${e.text} ${_("text",e.text)}`})),b=(v={text:j,state:y,group:$,tag:w}).text.trim().toLowerCase(),m.filter(e=>(!v.state||e.state===v.state)&&(!v.group||e.group===v.group)&&(!v.tag||(e.tags??[]).includes(v.tag))&&(!b||e.text.toLowerCase().includes(b)))),A=(0,c.$)(O,z),R=A.rows;A.page!==z&&M(A.page);let P=p?.find(([e])=>e===y)?.[1];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 px-[18px] pb-3 pt-3.5 max-[720px]:px-3.5",children:[(0,t.jsx)("input",{className:(0,d.f)(i.S,"w-[240px] max-[720px]:w-full"),placeholder:e,"aria-label":e,value:j,onChange:e=>{k(e.target.value),M(1)}}),p&&(0,t.jsxs)("select",{className:(0,d.f)(i.S,"w-auto"),"aria-label":"State",value:y,onChange:e=>{N(e.target.value),M(1)},children:[(0,t.jsx)("option",{value:"",children:"All states"}),p.map(([e,n])=>(0,t.jsx)("option",{value:e,children:n},e))]}),f&&f.length>1&&(0,t.jsxs)("select",{className:(0,d.f)(i.S,"w-auto"),"aria-label":"Account",value:$,onChange:e=>{C(e.target.value),M(1)},children:[(0,t.jsx)("option",{value:"",children:"All accounts"}),f.map(e=>(0,t.jsx)("option",{value:e,children:_("account",e)},e))]}),g?.map(([e,n])=>(0,t.jsx)("button",{type:"button","aria-pressed":w===e,onClick:()=>{S(w===e?"":e),M(1)},className:(0,d.f)("rounded-[5px] border px-2 py-0.5 text-[12.5px]",w===e?"border-brand bg-brand-soft text-brand":"border-line text-ink-soft hover:bg-hover"),children:n},e)),P&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-[5px] bg-brand-soft py-px pl-2 pr-1 text-[12.5px] text-brand",children:["State: ",P,(0,t.jsx)("button",{type:"button","aria-label":"Remove filter",className:"px-0.5",onClick:()=>{N(""),M(1)},children:(0,t.jsx)(a.f,{size:13})})]}),$&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-[5px] bg-brand-soft py-px pl-2 pr-1 text-[12.5px] text-brand",children:["Account: ",(0,t.jsx)(s.Masked,{kind:"account",real:$}),(0,t.jsx)("button",{type:"button","aria-label":"Remove account filter",className:"px-0.5",onClick:()=>{C(""),M(1)},children:(0,t.jsx)(a.f,{size:13})})]}),(0,t.jsx)("span",{role:"status",className:"ml-auto text-[12.5px] text-ink-soft",children:(0,u.O)(O.length)})]}),(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:o.o,children:[(0,t.jsx)(o.U,{head:x}),(0,t.jsx)("tbody",{children:R.map(e=>(0,t.jsx)(r.Fragment,{children:e.row},e.key))})]})}),0===O.length&&h.length>0&&(0,t.jsxs)(i.k,{icon:n.f,title:"No results",children:["Nothing matches these filters."," ",(0,t.jsx)("button",{type:"button",className:"text-brand hover:underline",onClick:()=>{k(""),N(""),C(""),S(""),M(1)},children:"Clear filters"})]}),(0,t.jsx)(l.f,{page:A.page,pages:A.pages,text:(0,c.z)(A),onPage:M})]})}],374931)},541299,495784,e=>{var t=e.i(843476),n=e.i(271645),a=e.i(428325),r=e.i(975157);function s(e,t,n=25){let a=e.length,r=Math.max(1,Math.ceil(a/n)),i=Math.min(Math.max(Number.isFinite(t)?Math.floor(t):1,1),r),l=(i-1)*n,o=e.slice(l,l+n);return{rows:o,page:i,pages:r,from:0===a?0:l+1,to:l+o.length,total:a}}e.s(["f",0,function({page:e,pages:s,text:i,onPage:l,bleed:o=!1}){let d=(0,n.useRef)(null),u=(0,n.useRef)(null);if((0,n.useEffect)(()=>{null!==u.current&&(d.current?.querySelectorAll("button")[u.current]?.focus(),u.current=null)},[e]),s<=1)return null;let c=(e,t)=>{(e<=1||e>=s)&&(u.current=t),l(e)};return(0,t.jsxs)("div",{className:(0,r.f)("flex items-center gap-2 border-t border-line px-[18px] py-2.5 text-[12.5px] text-ink-soft",o?"-mx-[18px] -mb-4 mt-2":"max-[720px]:px-3.5"),children:[(0,t.jsx)("span",{role:"status",children:i}),(0,t.jsxs)("span",{ref:d,className:"ml-auto flex gap-1.5",children:[(0,t.jsx)(a.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Previous page",disabled:e<=1,onClick:()=>c(e-1,1),children:"‹ Previous"}),(0,t.jsx)(a.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Next page",disabled:e>=s,onClick:()=>c(e+1,0),children:"Next ›"})]})]})}],541299),e.s(["k",0,function(e,t,n,a){return a<=1?null:t>0&&null!==n?n:e[0]?.id??null},"$",0,s,"f",0,function(e,t,n,a=25){let r=null===n?0:Math.max(0,e.findIndex(e=>e.id===n)),i=s(e.slice(r),t,a);return 0===r||i.page>1?{...i,shift:r}:{...s(e,1,a),shift:0}},"z",0,function(e,t=0,n=e.total){return`${e.from+t}–${e.to+t} of ${n}`}],495784)},149039,e=>{var t=e.i(843476),n=e.i(518716),a=e.i(271645),r=e.i(846696),s=e.i(95187);let i=(0,s.createServerReference)("004bc05f421c2c754e3870e7348c3868be89f604e2",s.callServer,void 0,s.findSourceMapURL,"refreshNow");var l=e.i(428325);e.s(["RefreshButton",0,function(){let[e,s]=(0,a.useTransition)();return(0,t.jsxs)(l.K,{disabled:e,onClick:()=>s(async()=>{let e=await i();e.ok?r.c.success("Action sent",{description:e.message}):r.c.error(e.error)}),children:[(0,t.jsx)(n.f,{size:16,"aria-hidden":!0}),e?"Refreshing…":"Refresh now"]})}],149039)},177106,e=>{var t=e.i(843476),n=e.i(33550);let a=(0,n.f)("outline","chevron-down","ChevronDown",[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]]),r=(0,n.f)("outline","dots-vertical","DotsVertical",[["path",{d:"M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-1"}],["path",{d:"M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}]]);var s=e.i(271645),i=e.i(428325),l=e.i(500443),o=e.i(755146);e.s(["RowMenu",0,function({items:e,button:n=!1,label:d="Actions"}){let[u,c]=(0,s.useState)(!1);return(0,l.useHoldRefresh)(u),(0,t.jsxs)(o.G,{open:u,onOpenChange:c,children:[n?(0,t.jsxs)(o.X,{className:(0,i.R)(),children:[d," ",(0,t.jsx)(a,{size:16,"aria-hidden":!0})]}):(0,t.jsx)(o.X,{"aria-label":d,className:"rounded-[5px] px-1.5 py-1 text-ink-faint hover:bg-sunken hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:(0,t.jsx)(r,{size:17})}),(0,t.jsx)(o.L,{align:"end",className:"min-w-[200px] rounded-[8px] border border-line-strong bg-surface p-1 shadow-[0_8px_24px_rgba(0,0,0,.14)] ring-0",children:e.map((e,n)=>"---"===e?(0,t.jsx)(o.U,{},`sep-${n}`):(0,t.jsxs)(o.r,{disabled:void 0!==e.disabled,variant:e.danger?"destructive":"default",className:"rounded-[5px] px-2.5 py-[7px]",onClick:()=>{e.href?window.open(e.href,"_blank","noopener,noreferrer"):e.onSelect?.()},children:[e.label,void 0!==e.disabled&&(0,t.jsx)("span",{className:"ml-auto pl-3 text-[11px] text-ink-faint",children:e.disabled})]},e.label))})]})}],177106)},776639,998218,152744,e=>{var t=e.i(843476),n=e.i(526323),a=e.i(828376);e.s(["f",0,a],998218);var a=a,r=e.i(209977),s=e.i(921637),i=e.i(141708),l=e.i(593480),o=e.i(309169),d=a;e.s(["f",0,d],152744);var d=a,u=e.i(975157),c=e.i(271645),p=e.i(540886),f=e.i(552245);let x=c.forwardRef(function(e,t){let{render:n,className:a,disabled:r=!1,focusableWhenDisabled:s=!1,nativeButton:i=!0,style:l,...o}=e,{getButtonProps:d,buttonRef:u}=(0,p.f)({disabled:r,focusableWhenDisabled:s,native:i});return(0,f.a)("button",e,{state:{disabled:r},ref:[t,u],props:[o,d]})}),h=(0,e.i(225913).f)("group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}});function g({className:e,variant:n="default",size:a="default",...r}){return(0,t.jsx)(x,{"data-slot":"button",className:(0,u.f)(h({variant:n,size:a,className:e})),...r})}var m=e.i(456420);let v={name:"x",size:24,node:[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]};v.node;let b=(0,m.f)(v);function j({...e}){return(0,t.jsx)(r.f.Portal,{"data-slot":"dialog-portal",...e})}function k({className:e,...n}){return(0,t.jsx)(i.f.Backdrop,{"data-slot":"dialog-overlay",className:(0,u.f)("fixed inset-0 isolate z-50 bg-black/40 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...n})}e.s(["N",0,function({...e}){return(0,t.jsx)(n.f.Root,{"data-slot":"dialog",...e})},"d",0,function({className:e,children:n,showCloseButton:a=!0,...r}){return(0,t.jsxs)(j,{children:[(0,t.jsx)(k,{}),(0,t.jsxs)(l.f.Popup,{"data-slot":"dialog-content",className:(0,u.f)("fixed top-1/2 left-1/2 z-50 grid w-full grid-cols-[minmax(0,1fr)] max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...r,children:[n,a&&(0,t.jsxs)(s.f.Close,{"data-slot":"dialog-close",render:(0,t.jsx)(g,{variant:"ghost",className:"absolute top-2 right-2",size:"icon-sm"}),children:[(0,t.jsx)(b,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"C",0,function({className:e,...n}){return(0,t.jsx)(d.Description,{"data-slot":"dialog-description",className:(0,u.f)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...n})},"F",0,function({className:e,...n}){return(0,t.jsx)(o.f.Title,{"data-slot":"dialog-title",className:(0,u.f)("font-heading text-base leading-none font-medium",e),...n})},"a",0,function({...e}){return(0,t.jsx)(a.Trigger,{"data-slot":"dialog-trigger",...e})}],776639)},70528,876195,e=>{let t=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\[\d{1,6}\])*$/,n=new Set(["__proto__","prototype","constructor"]),a=[300,3600,86400,604800],r=[300,3600,21600];e.s(["q",0,r,"Q",0,a,"v",0,function(e){return e%604800==0?604800===e?"1 week":`${e/604800} weeks`:e%86400==0?86400===e?"1 day":`${e/86400} days`:e%3600==0?`${e/3600} h`:`${Math.max(1,Math.round(e/60))} min`}],876195);let s=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/;function i(e){let t=s.exec(e);if(!t)return null;let n=t.slice(1).map(Number);return n.every(e=>e<=255)?n:null}function l([e,t,n]){return 0===e||10===e||127===e||e>=224||100===e&&t>=64&&t<=127||169===e&&254===t||172===e&&t>=16&&t<=31||192===e&&0===t&&0===n||192===e&&168===t||198===e&&(18===t||19===t)}function o(e){return"https:"!==e.protocol||e.username||e.password?"scheme":""!==e.port&&"443"!==e.port?"blocked":!function(e){let t=e.trim().toLowerCase();if(t.startsWith("[")&&t.endsWith("]")){let e=function(e){let t=e.split("%")[0].toLowerCase();if(!t.includes(":"))return null;if(-1!==t.lastIndexOf(".")){let e=t.lastIndexOf(":"),n=i(t.slice(e+1));if(!n)return null;t=`${t.slice(0,e+1)}${(n[0]<<8|n[1]).toString(16)}:${(n[2]<<8|n[3]).toString(16)}`}let n=t.split("::");if(n.length>2)return null;let a=e=>""===e?[]:e.split(":"),r=a(n[0]),s=2===n.length?a(n[1]):[],l=8-r.length-s.length;if(1===n.length?0!==l:l<1)return null;let o=[...r,...Array(2===n.length?l:0).fill("0"),...s];return 8===o.length&&o.every(e=>/^[0-9a-f]{1,4}$/.test(e))?o.map(e=>parseInt(e,16)):null}(t.slice(1,-1));return!e||function(e){if(e.slice(0,6).every(e=>0===e)||e.slice(0,5).every(e=>0===e)&&65535===e[5]||e.slice(0,4).every(e=>0===e)&&65535===e[4]&&0===e[5]||100===e[0]&&65435===e[1]&&e.slice(2,6).every(e=>0===e)||100===e[0]&&65435===e[1]&&1===e[2])return!0;if(8194===e[0]){let t,n;return l([(t=e[1])>>8,255&t,(n=e[2])>>8,255&n])}return(65024&e[0])==64512||(65472&e[0])==65152||(65472&e[0])==65216||(65280&e[0])==65280}(e)}if(t.endsWith(".")&&(t=t.slice(0,-1)),!t)return!0;let n=i(t);if(n)return l(n);let a=t.slice(t.lastIndexOf(".")+1);return!(!/^(\d+|0x[0-9a-f]*)$/.test(a)&&t.includes("."))||"localhost"===t||/\.(localhost|local|internal)$/.test(t)||t.endsWith(".home.arpa")}(e.hostname)?null:"blocked"}e.i(684496);let d=[3,5,10],u=/[\u0000-\u001f\u007f-\u009f]/,c=/[----]/;e.s(["L",0,d,"G",0,function(e){return null!==e.lastStatus&&e.lastError&&!/^HTTP \d{3}( · DEPLOYMENT_NOT_FOUND)?$/.test(e.lastError)?e.lastError:null},"a",0,function(e){let t={},n=String(e?.name??""),s=n.trim().replace(/\s+/g," ");!/[\p{L}\p{N}]/u.test(s)||u.test(s)||c.test(n)?t.name="Name the job, like backup job.":s.length>60&&(t.name="Keep the name to 60 characters.");let i=Number(e?.periodS);a.includes(i)||(t.periodS="Pick how often the job runs.");let l=Number(e?.graceS);return(r.includes(l)||(t.graceS="Pick a grace time."),Object.keys(t).length)?{ok:!1,fieldErrors:t}:{ok:!0,value:{name:s,periodS:i,graceS:l}}},"X",0,function(e){let a={},r=String(e?.url??"").trim(),s=null;try{s=new URL(r)}catch{s=null}s&&s.hostname&&!(r.length>2048)&&"scheme"!==o(s)?"blocked"===o(s)&&(a.url="Use a public https address."):a.url="Enter a full https:// address.";let i=String(e?.expectedStatus??"").trim();/^[1-5]\d\d$/.test(i)||(a.expectedStatus="Enter an HTTP status between 100 and 599.");let l=Number(e?.timeoutS);d.includes(l)||(a.timeoutS="Pick a timeout.");let u=String(e?.bodyContains??"").trim(),c=String(e?.jsonPath??"").trim(),p=String(e?.jsonEquals??"").trim();return(u.length>200&&(a.bodyContains="Keep the keyword under 200 characters."),!c&&p&&(a.jsonPath="Add a JSON path for the value."),c&&(c.length>100||!function(e){if(!t.test(e))return null;let a=[];for(let t of e.matchAll(/([A-Za-z_$][\w$]*)|\[(\d+)\]/g))a.push(void 0!==t[1]?t[1]:Number(t[2]));return a.some(e=>"string"==typeof e&&n.has(e))?null:a}(c)?a.jsonPath="Use dots and [0] only, like checks.db or items[0].state.":p?p.length>200&&(a.jsonEquals="Keep the value under 200 characters."):a.jsonEquals="Enter the value it must equal.",u&&!a.bodyContains&&(a.bodyContains="Use either a keyword or a JSON field.")),Object.keys(a).length||!s)?{ok:!1,fieldErrors:a}:(s.hash="",{ok:!0,value:{url:s.toString(),expectedStatus:Number(i),timeoutMs:1e3*l,bodyContains:u||null,jsonPath:c||null,jsonEquals:c?p:null}})}],70528)},322534,e=>{e.i(684496),e.s(["O",0,e=>`${e} item${1===e?"":"s"}`,"J",0,function(e,t){let n=Math.max(0,t.getTime()-e.getTime());return n<6e4?"now":n<36e5?`${Math.floor(n/6e4)} min ago`:n<864e5?`${Math.floor(n/36e5)} h ago`:`${Math.floor(n/864e5)} d ago`}])},452842,e=>{e.i(203709),e.i(70528),e.i(684496),e.i(322534),e.s(["p",0,[["deployment","Deployment"],["monitor","Monitor"],["database","Database"],["system","System"],["action","Action"]],"X",0,{ok:"healthy",warn:"degraded",err:"down",idle:"idle",build:"building",paused:"paused",info:"info",fail:"failed",off:"off",unknown:"unknown",maint:"maintenance"},"J",0,(...e)=>`Actions for ${e.filter(Boolean).join(" ")}`],452842)}])})();
|
|
1
|
+
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,531219,e=>{let t=(0,e.i(33550).f)("outline","filter-off","FilterOff",[["path",{d:"M8 4h12v2.172a2 2 0 0 1 -.586 1.414l-3.914 3.914m-.5 3.5v4l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227",key:"svg-0"}],["path",{d:"M3 3l18 18",key:"svg-1"}]]);e.s(["f",0,t],531219)},518716,e=>{let t=(0,e.i(33550).f)("outline","refresh","Refresh",[["path",{d:"M20 11a8.1 8.1 0 0 0 -15.5 -2m-.5 -4v4h4",key:"svg-0"}],["path",{d:"M4 13a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4",key:"svg-1"}]]);e.s(["f",0,t],518716)},225913,e=>{var t=e.i(207670);let n=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,a=t.f;e.s(["f",0,(e,t)=>r=>{var s;if((null==t?void 0:t.variants)==null)return a(e,null==r?void 0:r.class,null==r?void 0:r.className);let{variants:i,defaultVariants:l}=t,o=Object.keys(i).map(e=>{let t=null==r?void 0:r[e],a=null==l?void 0:l[e];if(null===t)return null;let s=n(t)||n(a);return i[e][s]}),d=r&&Object.entries(r).reduce((e,t)=>{let[n,a]=t;return void 0===a||(e[n]=a),e},{});return a(e,o,null==t||null==(s=t.compoundVariants)?void 0:s.reduce((e,t)=>{let{class:n,className:a,...r}=t;return Object.entries(r).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...l,...d}[t]):({...l,...d})[t]===n})?[...e,n,a]:e},[]),null==r?void 0:r.class,null==r?void 0:r.className)}])},46200,e=>{var t=e.i(843476),n=e.i(146874),a=e.i(239692),r=e.i(271645),s=e.i(846696),i=e.i(428325),l=e.i(500443),o=e.i(776639);e.s(["f",0,function({trigger:e,open:d,onOpenChange:u,title:c,body:p,cta:f,danger:x=!1,onConfirm:h}){let[g,m]=(0,r.useState)(!1),v=d??g,[b,j]=(0,r.useTransition)();function k(e){void 0===d&&m(e),u?.(e)}return(0,l.useHoldRefresh)(v),(0,t.jsxs)(o.N,{open:v,onOpenChange:e=>{b||k(e)},children:[void 0!==e&&((0,r.isValidElement)(e)?(0,t.jsx)(o.a,{render:e}):(0,t.jsx)(o.a,{children:e})),(0,t.jsxs)(o.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:[(0,t.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,t.jsx)("span",{className:`grid size-9 shrink-0 place-items-center rounded-lg bg-sunken ${x?"text-err":"text-ink-soft"}`,children:x?(0,t.jsx)(n.f,{size:19}):(0,t.jsx)(a.f,{size:19})}),(0,t.jsxs)("div",{children:[(0,t.jsx)(o.F,{className:"text-base",children:c}),(0,t.jsx)(o.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:p})]})]}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsx)(i.K,{onClick:()=>k(!1),disabled:b,children:"Keep as is"}),(0,t.jsx)(i.K,{variant:x?"danger":"primary",onClick:function(){j(async()=>{try{let e=await h();e.ok?(s.c.success(e.message),k(!1)):s.c.error(e.message)}catch{s.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})},disabled:b,children:b?"Working…":f})]})]})]})}])},374931,e=>{var t=e.i(843476),n=e.i(531219),a=e.i(357772),r=e.i(271645),s=e.i(54131),i=e.i(428325),l=e.i(541299),o=e.i(691106),d=e.i(975157),u=e.i(322534),c=e.i(495784);e.s(["ListFilter",0,function({placeholder:e,states:p,groups:f,head:x,rows:h,chips:g}){var m,v;let b,[j,k]=(0,r.useState)(""),[y,N]=(0,r.useState)(""),[w,S]=(0,r.useState)(""),[$,C]=(0,r.useState)(""),[z,M]=(0,r.useState)(1),_=(0,s.useMask)(),O=(m=h.map(e=>({...e,text:`${e.text} ${_("text",e.text)}`})),b=(v={text:j,state:y,group:$,tag:w}).text.trim().toLowerCase(),m.filter(e=>(!v.state||e.state===v.state)&&(!v.group||e.group===v.group)&&(!v.tag||(e.tags??[]).includes(v.tag))&&(!b||e.text.toLowerCase().includes(b)))),A=(0,c.$)(O,z),R=A.rows;A.page!==z&&M(A.page);let P=p?.find(([e])=>e===y)?.[1];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 px-[18px] pb-3 pt-3.5 max-[720px]:px-3.5",children:[(0,t.jsx)("input",{className:(0,d.f)(i.S,"w-[240px] max-[720px]:w-full"),placeholder:e,"aria-label":e,value:j,onChange:e=>{k(e.target.value),M(1)}}),p&&(0,t.jsxs)("select",{className:(0,d.f)(i.S,"w-auto"),"aria-label":"State",value:y,onChange:e=>{N(e.target.value),M(1)},children:[(0,t.jsx)("option",{value:"",children:"All states"}),p.map(([e,n])=>(0,t.jsx)("option",{value:e,children:n},e))]}),f&&f.length>1&&(0,t.jsxs)("select",{className:(0,d.f)(i.S,"w-auto"),"aria-label":"Account",value:$,onChange:e=>{C(e.target.value),M(1)},children:[(0,t.jsx)("option",{value:"",children:"All accounts"}),f.map(e=>(0,t.jsx)("option",{value:e,children:_("account",e)},e))]}),g?.map(([e,n])=>(0,t.jsx)("button",{type:"button","aria-pressed":w===e,onClick:()=>{S(w===e?"":e),M(1)},className:(0,d.f)("rounded-[5px] border px-2 py-0.5 text-[12.5px]",w===e?"border-brand bg-brand-soft text-brand":"border-line text-ink-soft hover:bg-hover"),children:n},e)),P&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-[5px] bg-brand-soft py-px pl-2 pr-1 text-[12.5px] text-brand",children:["State: ",P,(0,t.jsx)("button",{type:"button","aria-label":"Remove filter",className:"px-0.5",onClick:()=>{N(""),M(1)},children:(0,t.jsx)(a.f,{size:13})})]}),$&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-[5px] bg-brand-soft py-px pl-2 pr-1 text-[12.5px] text-brand",children:["Account: ",(0,t.jsx)(s.Masked,{kind:"account",real:$}),(0,t.jsx)("button",{type:"button","aria-label":"Remove account filter",className:"px-0.5",onClick:()=>{C(""),M(1)},children:(0,t.jsx)(a.f,{size:13})})]}),(0,t.jsx)("span",{role:"status",className:"ml-auto text-[12.5px] text-ink-soft",children:(0,u.O)(O.length)})]}),(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:o.o,children:[(0,t.jsx)(o.U,{head:x}),(0,t.jsx)("tbody",{children:R.map(e=>(0,t.jsx)(r.Fragment,{children:e.row},e.key))})]})}),0===O.length&&h.length>0&&(0,t.jsxs)(i.k,{icon:n.f,title:"No results",children:["Nothing matches these filters."," ",(0,t.jsx)("button",{type:"button",className:"text-brand hover:underline",onClick:()=>{k(""),N(""),C(""),S(""),M(1)},children:"Clear filters"})]}),(0,t.jsx)(l.f,{page:A.page,pages:A.pages,text:(0,c.z)(A),onPage:M})]})}],374931)},541299,495784,e=>{var t=e.i(843476),n=e.i(271645),a=e.i(428325),r=e.i(975157);function s(e,t,n=25){let a=e.length,r=Math.max(1,Math.ceil(a/n)),i=Math.min(Math.max(Number.isFinite(t)?Math.floor(t):1,1),r),l=(i-1)*n,o=e.slice(l,l+n);return{rows:o,page:i,pages:r,from:0===a?0:l+1,to:l+o.length,total:a}}e.s(["f",0,function({page:e,pages:s,text:i,onPage:l,bleed:o=!1}){let d=(0,n.useRef)(null),u=(0,n.useRef)(null);if((0,n.useEffect)(()=>{null!==u.current&&(d.current?.querySelectorAll("button")[u.current]?.focus(),u.current=null)},[e]),s<=1)return null;let c=(e,t)=>{(e<=1||e>=s)&&(u.current=t),l(e)};return(0,t.jsxs)("div",{className:(0,r.f)("flex items-center gap-2 border-t border-line px-[18px] py-2.5 text-[12.5px] text-ink-soft",o?"-mx-[18px] -mb-4 mt-2":"max-[720px]:px-3.5"),children:[(0,t.jsx)("span",{role:"status",children:i}),(0,t.jsxs)("span",{ref:d,className:"ml-auto flex gap-1.5",children:[(0,t.jsx)(a.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Previous page",disabled:e<=1,onClick:()=>c(e-1,1),children:"‹ Previous"}),(0,t.jsx)(a.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Next page",disabled:e>=s,onClick:()=>c(e+1,0),children:"Next ›"})]})]})}],541299),e.s(["k",0,function(e,t,n,a){return a<=1?null:t>0&&null!==n?n:e[0]?.id??null},"$",0,s,"f",0,function(e,t,n,a=25){let r=null===n?0:Math.max(0,e.findIndex(e=>e.id===n)),i=s(e.slice(r),t,a);return 0===r||i.page>1?{...i,shift:r}:{...s(e,1,a),shift:0}},"z",0,function(e,t=0,n=e.total){return`${e.from+t}–${e.to+t} of ${n}`}],495784)},149039,e=>{var t=e.i(843476),n=e.i(518716),a=e.i(271645),r=e.i(846696),s=e.i(95187);let i=(0,s.createServerReference)("0050a28052a20295116dac611f11f587a8fcd042df",s.callServer,void 0,s.findSourceMapURL,"refreshNow");var l=e.i(428325);e.s(["RefreshButton",0,function(){let[e,s]=(0,a.useTransition)();return(0,t.jsxs)(l.K,{disabled:e,onClick:()=>s(async()=>{let e=await i();e.ok?r.c.success("Action sent",{description:e.message}):r.c.error(e.error)}),children:[(0,t.jsx)(n.f,{size:16,"aria-hidden":!0}),e?"Refreshing…":"Refresh now"]})}],149039)},177106,e=>{var t=e.i(843476),n=e.i(33550);let a=(0,n.f)("outline","chevron-down","ChevronDown",[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]]),r=(0,n.f)("outline","dots-vertical","DotsVertical",[["path",{d:"M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-1"}],["path",{d:"M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}]]);var s=e.i(271645),i=e.i(428325),l=e.i(500443),o=e.i(755146);e.s(["RowMenu",0,function({items:e,button:n=!1,label:d="Actions"}){let[u,c]=(0,s.useState)(!1);return(0,l.useHoldRefresh)(u),(0,t.jsxs)(o.G,{open:u,onOpenChange:c,children:[n?(0,t.jsxs)(o.X,{className:(0,i.R)(),children:[d," ",(0,t.jsx)(a,{size:16,"aria-hidden":!0})]}):(0,t.jsx)(o.X,{"aria-label":d,className:"rounded-[5px] px-1.5 py-1 text-ink-faint hover:bg-sunken hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:(0,t.jsx)(r,{size:17})}),(0,t.jsx)(o.L,{align:"end",className:"min-w-[200px] rounded-[8px] border border-line-strong bg-surface p-1 shadow-[0_8px_24px_rgba(0,0,0,.14)] ring-0",children:e.map((e,n)=>"---"===e?(0,t.jsx)(o.U,{},`sep-${n}`):(0,t.jsxs)(o.r,{disabled:void 0!==e.disabled,variant:e.danger?"destructive":"default",className:"rounded-[5px] px-2.5 py-[7px]",onClick:()=>{e.href?window.open(e.href,"_blank","noopener,noreferrer"):e.onSelect?.()},children:[e.label,void 0!==e.disabled&&(0,t.jsx)("span",{className:"ml-auto pl-3 text-[11px] text-ink-faint",children:e.disabled})]},e.label))})]})}],177106)},776639,998218,152744,e=>{var t=e.i(843476),n=e.i(526323),a=e.i(828376);e.s(["f",0,a],998218);var a=a,r=e.i(209977),s=e.i(921637),i=e.i(141708),l=e.i(593480),o=e.i(309169),d=a;e.s(["f",0,d],152744);var d=a,u=e.i(975157),c=e.i(271645),p=e.i(540886),f=e.i(552245);let x=c.forwardRef(function(e,t){let{render:n,className:a,disabled:r=!1,focusableWhenDisabled:s=!1,nativeButton:i=!0,style:l,...o}=e,{getButtonProps:d,buttonRef:u}=(0,p.f)({disabled:r,focusableWhenDisabled:s,native:i});return(0,f.a)("button",e,{state:{disabled:r},ref:[t,u],props:[o,d]})}),h=(0,e.i(225913).f)("group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}});function g({className:e,variant:n="default",size:a="default",...r}){return(0,t.jsx)(x,{"data-slot":"button",className:(0,u.f)(h({variant:n,size:a,className:e})),...r})}var m=e.i(456420);let v={name:"x",size:24,node:[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]};v.node;let b=(0,m.f)(v);function j({...e}){return(0,t.jsx)(r.f.Portal,{"data-slot":"dialog-portal",...e})}function k({className:e,...n}){return(0,t.jsx)(i.f.Backdrop,{"data-slot":"dialog-overlay",className:(0,u.f)("fixed inset-0 isolate z-50 bg-black/40 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...n})}e.s(["N",0,function({...e}){return(0,t.jsx)(n.f.Root,{"data-slot":"dialog",...e})},"d",0,function({className:e,children:n,showCloseButton:a=!0,...r}){return(0,t.jsxs)(j,{children:[(0,t.jsx)(k,{}),(0,t.jsxs)(l.f.Popup,{"data-slot":"dialog-content",className:(0,u.f)("fixed top-1/2 left-1/2 z-50 grid w-full grid-cols-[minmax(0,1fr)] max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...r,children:[n,a&&(0,t.jsxs)(s.f.Close,{"data-slot":"dialog-close",render:(0,t.jsx)(g,{variant:"ghost",className:"absolute top-2 right-2",size:"icon-sm"}),children:[(0,t.jsx)(b,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"C",0,function({className:e,...n}){return(0,t.jsx)(d.Description,{"data-slot":"dialog-description",className:(0,u.f)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...n})},"F",0,function({className:e,...n}){return(0,t.jsx)(o.f.Title,{"data-slot":"dialog-title",className:(0,u.f)("font-heading text-base leading-none font-medium",e),...n})},"a",0,function({...e}){return(0,t.jsx)(a.Trigger,{"data-slot":"dialog-trigger",...e})}],776639)},70528,876195,e=>{let t=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\[\d{1,6}\])*$/,n=new Set(["__proto__","prototype","constructor"]),a=[300,3600,86400,604800],r=[300,3600,21600];e.s(["q",0,r,"Q",0,a,"v",0,function(e){return e%604800==0?604800===e?"1 week":`${e/604800} weeks`:e%86400==0?86400===e?"1 day":`${e/86400} days`:e%3600==0?`${e/3600} h`:`${Math.max(1,Math.round(e/60))} min`}],876195);let s=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/;function i(e){let t=s.exec(e);if(!t)return null;let n=t.slice(1).map(Number);return n.every(e=>e<=255)?n:null}function l([e,t,n]){return 0===e||10===e||127===e||e>=224||100===e&&t>=64&&t<=127||169===e&&254===t||172===e&&t>=16&&t<=31||192===e&&0===t&&0===n||192===e&&168===t||198===e&&(18===t||19===t)}function o(e){return"https:"!==e.protocol||e.username||e.password?"scheme":""!==e.port&&"443"!==e.port?"blocked":!function(e){let t=e.trim().toLowerCase();if(t.startsWith("[")&&t.endsWith("]")){let e=function(e){let t=e.split("%")[0].toLowerCase();if(!t.includes(":"))return null;if(-1!==t.lastIndexOf(".")){let e=t.lastIndexOf(":"),n=i(t.slice(e+1));if(!n)return null;t=`${t.slice(0,e+1)}${(n[0]<<8|n[1]).toString(16)}:${(n[2]<<8|n[3]).toString(16)}`}let n=t.split("::");if(n.length>2)return null;let a=e=>""===e?[]:e.split(":"),r=a(n[0]),s=2===n.length?a(n[1]):[],l=8-r.length-s.length;if(1===n.length?0!==l:l<1)return null;let o=[...r,...Array(2===n.length?l:0).fill("0"),...s];return 8===o.length&&o.every(e=>/^[0-9a-f]{1,4}$/.test(e))?o.map(e=>parseInt(e,16)):null}(t.slice(1,-1));return!e||function(e){if(e.slice(0,6).every(e=>0===e)||e.slice(0,5).every(e=>0===e)&&65535===e[5]||e.slice(0,4).every(e=>0===e)&&65535===e[4]&&0===e[5]||100===e[0]&&65435===e[1]&&e.slice(2,6).every(e=>0===e)||100===e[0]&&65435===e[1]&&1===e[2])return!0;if(8194===e[0]){let t,n;return l([(t=e[1])>>8,255&t,(n=e[2])>>8,255&n])}return(65024&e[0])==64512||(65472&e[0])==65152||(65472&e[0])==65216||(65280&e[0])==65280}(e)}if(t.endsWith(".")&&(t=t.slice(0,-1)),!t)return!0;let n=i(t);if(n)return l(n);let a=t.slice(t.lastIndexOf(".")+1);return!(!/^(\d+|0x[0-9a-f]*)$/.test(a)&&t.includes("."))||"localhost"===t||/\.(localhost|local|internal)$/.test(t)||t.endsWith(".home.arpa")}(e.hostname)?null:"blocked"}e.i(684496);let d=[3,5,10],u=/[\u0000-\u001f\u007f-\u009f]/,c=/[----]/;e.s(["L",0,d,"G",0,function(e){return null!==e.lastStatus&&e.lastError&&!/^HTTP \d{3}( · DEPLOYMENT_NOT_FOUND)?$/.test(e.lastError)?e.lastError:null},"a",0,function(e){let t={},n=String(e?.name??""),s=n.trim().replace(/\s+/g," ");!/[\p{L}\p{N}]/u.test(s)||u.test(s)||c.test(n)?t.name="Name the job, like backup job.":s.length>60&&(t.name="Keep the name to 60 characters.");let i=Number(e?.periodS);a.includes(i)||(t.periodS="Pick how often the job runs.");let l=Number(e?.graceS);return(r.includes(l)||(t.graceS="Pick a grace time."),Object.keys(t).length)?{ok:!1,fieldErrors:t}:{ok:!0,value:{name:s,periodS:i,graceS:l}}},"X",0,function(e){let a={},r=String(e?.url??"").trim(),s=null;try{s=new URL(r)}catch{s=null}s&&s.hostname&&!(r.length>2048)&&"scheme"!==o(s)?"blocked"===o(s)&&(a.url="Use a public https address."):a.url="Enter a full https:// address.";let i=String(e?.expectedStatus??"").trim();/^[1-5]\d\d$/.test(i)||(a.expectedStatus="Enter an HTTP status between 100 and 599.");let l=Number(e?.timeoutS);d.includes(l)||(a.timeoutS="Pick a timeout.");let u=String(e?.bodyContains??"").trim(),c=String(e?.jsonPath??"").trim(),p=String(e?.jsonEquals??"").trim();return(u.length>200&&(a.bodyContains="Keep the keyword under 200 characters."),!c&&p&&(a.jsonPath="Add a JSON path for the value."),c&&(c.length>100||!function(e){if(!t.test(e))return null;let a=[];for(let t of e.matchAll(/([A-Za-z_$][\w$]*)|\[(\d+)\]/g))a.push(void 0!==t[1]?t[1]:Number(t[2]));return a.some(e=>"string"==typeof e&&n.has(e))?null:a}(c)?a.jsonPath="Use dots and [0] only, like checks.db or items[0].state.":p?p.length>200&&(a.jsonEquals="Keep the value under 200 characters."):a.jsonEquals="Enter the value it must equal.",u&&!a.bodyContains&&(a.bodyContains="Use either a keyword or a JSON field.")),Object.keys(a).length||!s)?{ok:!1,fieldErrors:a}:(s.hash="",{ok:!0,value:{url:s.toString(),expectedStatus:Number(i),timeoutMs:1e3*l,bodyContains:u||null,jsonPath:c||null,jsonEquals:c?p:null}})}],70528)},322534,e=>{e.i(684496),e.s(["O",0,e=>`${e} item${1===e?"":"s"}`,"J",0,function(e,t){let n=Math.max(0,t.getTime()-e.getTime());return n<6e4?"now":n<36e5?`${Math.floor(n/6e4)} min ago`:n<864e5?`${Math.floor(n/36e5)} h ago`:`${Math.floor(n/864e5)} d ago`}])},452842,e=>{e.i(203709),e.i(70528),e.i(684496),e.i(322534),e.s(["p",0,[["deployment","Deployment"],["monitor","Monitor"],["database","Database"],["system","System"],["action","Action"]],"X",0,{ok:"healthy",warn:"degraded",err:"down",idle:"idle",build:"building",paused:"paused",info:"info",fail:"failed",off:"off",unknown:"unknown",maint:"maintenance"},"J",0,(...e)=>`Actions for ${e.filter(Boolean).join(" ")}`],452842)}])})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,399582,e=>{let t=(0,e.i(33550).f)("outline","copy","Copy",[["path",{d:"M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]]);e.s(["f",0,t],399582)},531219,e=>{let t=(0,e.i(33550).f)("outline","filter-off","FilterOff",[["path",{d:"M8 4h12v2.172a2 2 0 0 1 -.586 1.414l-3.914 3.914m-.5 3.5v4l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227",key:"svg-0"}],["path",{d:"M3 3l18 18",key:"svg-1"}]]);e.s(["f",0,t],531219)},617708,e=>{let t=(0,e.i(33550).f)("outline","plus","Plus",[["path",{d:"M12 5l0 14",key:"svg-0"}],["path",{d:"M5 12l14 0",key:"svg-1"}]]);e.s(["f",0,t],617708)},225913,e=>{var t=e.i(207670);let a=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,n=t.f;e.s(["f",0,(e,t)=>s=>{var i;if((null==t?void 0:t.variants)==null)return n(e,null==s?void 0:s.class,null==s?void 0:s.className);let{variants:r,defaultVariants:l}=t,o=Object.keys(r).map(e=>{let t=null==s?void 0:s[e],n=null==l?void 0:l[e];if(null===t)return null;let i=a(t)||a(n);return r[e][i]}),d=s&&Object.entries(s).reduce((e,t)=>{let[a,n]=t;return void 0===n||(e[a]=n),e},{});return n(e,o,null==t||null==(i=t.compoundVariants)?void 0:i.reduce((e,t)=>{let{class:a,className:n,...s}=t;return Object.entries(s).every(e=>{let[t,a]=e;return Array.isArray(a)?a.includes({...l,...d}[t]):({...l,...d})[t]===a})?[...e,a,n]:e},[]),null==s?void 0:s.class,null==s?void 0:s.className)}])},477691,e=>{var t=e.i(843476),a=e.i(785642),n=e.i(399582),s=e.i(23990),i=e.i(617708),r=e.i(944971),l=e.i(522016),o=e.i(271645),d=e.i(846696),c=e.i(428325),u=e.i(500443),p=e.i(776639),x=e.i(95187);let h=(0,x.createServerReference)("40257f5670e8f8675577c0d01f2bd482a27d6eb7cf",x.callServer,void 0,x.findSourceMapURL,"createKeyAction");function m({scopes:e}){return(0,t.jsx)(t.Fragment,{children:e.map(e=>(0,t.jsx)("span",{className:"mr-1 inline-block whitespace-nowrap rounded-[4px] border border-line bg-surface-2 px-[5px] font-mono text-xs text-ink-soft",children:e},e))})}var f=e.i(898121);function g({icon:e,title:a,sub:n}){return(0,t.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,t.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:e}),(0,t.jsxs)("div",{children:[(0,t.jsx)(p.F,{className:"text-base",children:a}),(0,t.jsx)(p.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:n})]})]})}function v({onCreated:e,onCancel:a}){let[n,i]=(0,o.useState)(""),[l,u]=(0,o.useState)(f.J),[p,x]=(0,o.useState)(f.j),[b,j]=(0,o.useState)(String(f.D)),[y,k]=(0,o.useState)({}),[N,C]=(0,o.useState)(""),[w,S]=(0,o.useTransition)();return(0,t.jsxs)("form",{onSubmit:function(t){t.preventDefault(),S(async()=>{k({}),C("");try{let t=await h({name:n.trim(),scopes:f.B.filter(e=>l.includes(e)),expiry:p,ratePerMin:b.trim()});t.ok&&t.data?(d.c.success(t.message??"Key created."),e(t.data)):t.ok||(t.fieldErrors?k(t.fieldErrors):C(t.error))}catch{C("Watchbell didn't answer. Check that it's still running, then try again.")}})},noValidate:!0,children:[(0,t.jsx)(g,{icon:(0,t.jsx)(s.f,{size:19}),title:"Create API key",sub:"For one app or agent. Shown once."}),(0,t.jsxs)("div",{className:"px-[18px] pt-1.5",children:[(0,t.jsx)(c.O,{id:"key-name",label:"Name",help:"Lowercase letters, digits and dashes. Agents and Logs show it.",error:y.name,children:(0,t.jsx)("input",{id:"key-name",value:n,onChange:e=>i(e.target.value),placeholder:r.C.namePlaceholder,autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:c.S})}),(0,t.jsxs)("fieldset",{className:"mb-3.5",children:[(0,t.jsx)("legend",{className:"mb-[5px] text-[13px] font-medium",children:"Scopes"}),(0,t.jsx)("div",{className:"flex flex-col gap-1.5",children:f.B.map(e=>(0,t.jsxs)("label",{className:"flex cursor-pointer items-start gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:l.includes(e),onChange:()=>u(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e]),className:"mt-[3px] accent-brand"}),(0,t.jsxs)("span",{children:[(0,t.jsx)(m,{scopes:[e]})," ",(0,t.jsx)("span",{className:"text-[13px] text-ink-soft",children:f.h[e].short})]})]},e))}),y.scopes&&(0,t.jsx)("span",{className:"text-[12.5px] text-err",role:"alert",children:y.scopes})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3 max-[560px]:grid-cols-1",children:[(0,t.jsx)(c.O,{id:"key-expiry",label:"Expires",error:y.expiry,children:(0,t.jsx)("select",{id:"key-expiry",value:p,onChange:e=>x(e.target.value),className:c.S,children:f.W.map(e=>(0,t.jsx)("option",{value:e,children:f.o[e]},e))})}),(0,t.jsx)(c.O,{id:"key-rate",label:"Rate limit",help:"Requests per minute, 1–600. Applies before the provider's own limits.",error:y.ratePerMin,children:(0,t.jsx)("input",{id:"key-rate",inputMode:"numeric",value:b,onChange:e=>j(e.target.value),className:`${c.S} font-mono`})})]}),N&&(0,t.jsx)("p",{className:"mb-3 text-[13px] text-err",role:"alert",children:N})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsx)(c.K,{onClick:a,disabled:w,children:"Cancel"}),(0,t.jsx)(c.K,{type:"submit",variant:"primary",disabled:w,children:w?"Creating…":"Create key"})]})]})}function b({created:e,onDone:s}){async function i(){try{await navigator.clipboard.writeText(e.key),d.c.success("Copied.")}catch{d.c.error("Couldn't copy. Select the key and copy it by hand.")}}return(0,t.jsxs)("div",{children:[(0,t.jsx)(g,{icon:(0,t.jsx)(a.f,{size:19}),title:`Key ${e.name} created`,sub:"Copy it now."}),(0,t.jsxs)("div",{className:"px-[18px] pb-3 pt-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("code",{className:"min-w-0 flex-1 overflow-x-auto whitespace-nowrap rounded-md border border-line bg-sunken px-2 py-1.5 font-mono text-[12.5px]","data-testid":"new-key",children:e.key}),(0,t.jsxs)(c.K,{size:"sm",onClick:i,children:[(0,t.jsx)(n.f,{size:15,"aria-hidden":!0}),"Copy"]})]}),(0,t.jsx)("p",{className:"mt-2.5 rounded-md border border-warn-icon bg-warn-soft px-2.5 py-2 text-[13px] text-warn",children:"Watchbell keeps only a SHA-256 hash of this key, so it can't show it again. Lost it? Revoke it and create a new one."}),(0,t.jsxs)("p",{className:"mb-0 mt-3 text-[13px] text-ink-soft",children:["Next: put it in the app's environment as ",(0,t.jsx)("span",{className:"font-mono",children:"WATCHBELL_API_KEY"}),", then follow ",(0,t.jsx)(l.default,{href:"/ai",className:"text-brand",children:"Quick start"})," or ",(0,t.jsx)(l.default,{href:"/ai/connect",className:"text-brand",children:"Connect an agent"}),"."]})]}),(0,t.jsx)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:(0,t.jsx)(c.K,{variant:"primary",onClick:s,children:"Done"})})]})}e.s(["CreateKeyDialog",0,function(){let[e,a]=(0,o.useState)(!1),[n,s]=(0,o.useState)(null);function r(e){a(e),e||s(null)}return(0,u.useHoldRefresh)(e),(0,t.jsxs)(p.N,{open:e,onOpenChange:r,children:[(0,t.jsxs)(p.a,{render:(0,t.jsx)(c.K,{variant:"primary"}),children:[(0,t.jsx)(i.f,{size:16,"aria-hidden":!0}),"Create key"]}),(0,t.jsx)(p.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:n?(0,t.jsx)(b,{created:n,onDone:()=>r(!1)}):(0,t.jsx)(v,{onCreated:s,onCancel:()=>r(!1)})})]})}],477691)},211541,e=>{var t=e.i(843476),a=e.i(271645),n=e.i(846696),s=e.i(46200),i=e.i(428325),r=e.i(500443),l=e.i(177106),o=e.i(776639),d=e.i(95187);let c=(0,d.createServerReference)("605cf855ee05d453830d32a0f4cffc2ce7b509f1ed",d.callServer,void 0,d.findSourceMapURL,"changeKeyAction"),u=(0,d.createServerReference)("40ea93df6ab17e023e5642ad596b0526ae04a60118",d.callServer,void 0,d.findSourceMapURL,"revokeKeyAction");var p=e.i(898121);let x={rename:{title:e=>`Rename ${e}`,sub:"Agents and Logs show the name. Lowercase letters, digits and dashes.",cta:"Save name"},rate:{title:()=>"Change rate limit",sub:"Requests per minute, 1–600. Applies before the provider's own limits, within a minute.",cta:"Save limit"},expiry:{title:()=>"Change expiry",sub:"Counted from today. The key stops working at that date.",cta:"Save expiry"},routing:{title:()=>"Change routing",sub:"Pin this key to one provider and, if you like, one model. Without a pin it uses the default provider.",cta:"Save routing"}};function h({mode:e,k:s,providers:r,onDone:l}){let[d,u]=(0,a.useState)(s.name),[m,f]=(0,a.useState)(String(s.ratePerMin)),[g,v]=(0,a.useState)(s.expiresAt?"90d":"never"),[b,j]=(0,a.useState)(s.providerId??""),[y,k]=(0,a.useState)(s.model??""),[N,C]=(0,a.useState)({}),[w,S]=(0,a.useState)(""),[z,M]=(0,a.useTransition)(),R=x[e];return(0,t.jsxs)("form",{onSubmit:function(t){t.preventDefault(),M(async()=>{C({}),S("");try{let t=await c(s.id,"rename"===e?{kind:"rename",name:d.trim()}:"rate"===e?{kind:"rate",ratePerMin:m.trim()}:"expiry"===e?{kind:"expiry",expiry:g}:{kind:"routing",providerId:b||null,model:b?y.trim():null});t.ok?(n.c.success(t.message??"Key updated."),l()):t.fieldErrors?C(t.fieldErrors):S(t.error)}catch{S("Watchbell didn't answer. Check that it's still running, then try again.")}})},noValidate:!0,children:[(0,t.jsxs)("div",{className:"px-[18px] pb-2 pt-4",children:[(0,t.jsx)(o.F,{className:"text-base",children:R.title(s.name)}),(0,t.jsx)(o.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:R.sub})]}),(0,t.jsxs)("div",{className:"px-[18px] pt-1.5",children:["rename"===e&&(0,t.jsx)(i.O,{id:"edit-name",label:"Name",error:N.name,children:(0,t.jsx)("input",{id:"edit-name",value:d,onChange:e=>u(e.target.value),autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:i.S})}),"rate"===e&&(0,t.jsx)(i.O,{id:"edit-rate",label:"Rate limit",help:"Requests per minute.",error:N.ratePerMin,children:(0,t.jsx)("input",{id:"edit-rate",inputMode:"numeric",value:m,onChange:e=>f(e.target.value),className:`${i.S} font-mono`})}),"expiry"===e&&(0,t.jsx)(i.O,{id:"edit-expiry",label:"Expires",error:N.expiry,children:(0,t.jsx)("select",{id:"edit-expiry",value:g,onChange:e=>v(e.target.value),className:i.S,children:p.W.map(e=>(0,t.jsx)("option",{value:e,children:p.o[e]},e))})}),"routing"===e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(i.O,{id:"edit-provider",label:"Provider",help:r.length?void 0:"No provider is connected yet. Until one is, this key has nothing to pin to.",error:N.providerId,children:(0,t.jsxs)("select",{id:"edit-provider",value:b,onChange:e=>j(e.target.value),className:i.S,children:[(0,t.jsx)("option",{value:"",children:"No pin (default provider)"}),r.map(e=>(0,t.jsxs)("option",{value:e.id,children:[e.name,e.enabled?"":" (off)"]},e.id))]})}),(0,t.jsx)(i.O,{id:"edit-model",label:"Model",help:"Optional. A Gemini model id, for example gemini-3.8-flash. Empty uses the provider's default.",error:N.model,children:(0,t.jsx)("input",{id:"edit-model",value:y,onChange:e=>k(e.target.value),disabled:!b,placeholder:"gemini-3.8-flash",autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:`${i.S} font-mono`})})]}),w&&(0,t.jsx)("p",{className:"mb-3 text-[13px] text-err",role:"alert",children:w})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsx)(i.K,{onClick:l,disabled:z,children:"Cancel"}),(0,t.jsx)(i.K,{type:"submit",variant:"primary",disabled:z,children:z?"Saving…":R.cta})]})]})}e.s(["KeyActions",0,function({k:e,providers:n}){let[d,c]=(0,a.useState)(null);return(0,r.useHoldRefresh)(null!==d),(0,t.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,t.jsx)(s.f,{trigger:(0,t.jsx)(i.K,{size:"sm",children:"Revoke"}),title:`Revoke ${e.name}?`,body:`Calls with ${e.prefix}… answer 401 within a minute. Agents using it show "Key revoked". This can't be undone; create a new key instead.`,cta:"Revoke key",danger:!0,onConfirm:async()=>{let t=await u(e.id);return{ok:t.ok,message:(t.ok?t.message:t.error)??""}}}),(0,t.jsx)(l.RowMenu,{label:`Actions for ${e.name}`,items:[{label:"Rename",onSelect:()=>c("rename")},{label:"Change rate limit",onSelect:()=>c("rate")},{label:"Change expiry",onSelect:()=>c("expiry")},{label:"Change routing",onSelect:()=>c("routing")}]}),(0,t.jsx)(o.N,{open:null!==d,onOpenChange:e=>{e||c(null)},children:(0,t.jsx)(o.d,{className:"gap-0 p-0 sm:max-w-[520px]",showCloseButton:!1,children:d&&(0,t.jsx)(h,{mode:d,k:e,providers:n,onDone:()=>c(null)})})})]})}],211541)},46200,e=>{var t=e.i(843476),a=e.i(146874),n=e.i(239692),s=e.i(271645),i=e.i(846696),r=e.i(428325),l=e.i(500443),o=e.i(776639);e.s(["f",0,function({trigger:e,open:d,onOpenChange:c,title:u,body:p,cta:x,danger:h=!1,onConfirm:m}){let[f,g]=(0,s.useState)(!1),v=d??f,[b,j]=(0,s.useTransition)();function y(e){void 0===d&&g(e),c?.(e)}return(0,l.useHoldRefresh)(v),(0,t.jsxs)(o.N,{open:v,onOpenChange:e=>{b||y(e)},children:[void 0!==e&&((0,s.isValidElement)(e)?(0,t.jsx)(o.a,{render:e}):(0,t.jsx)(o.a,{children:e})),(0,t.jsxs)(o.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:[(0,t.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,t.jsx)("span",{className:`grid size-9 shrink-0 place-items-center rounded-lg bg-sunken ${h?"text-err":"text-ink-soft"}`,children:h?(0,t.jsx)(a.f,{size:19}):(0,t.jsx)(n.f,{size:19})}),(0,t.jsxs)("div",{children:[(0,t.jsx)(o.F,{className:"text-base",children:u}),(0,t.jsx)(o.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:p})]})]}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsx)(r.K,{onClick:()=>y(!1),disabled:b,children:"Keep as is"}),(0,t.jsx)(r.K,{variant:h?"danger":"primary",onClick:function(){j(async()=>{try{let e=await m();e.ok?(i.c.success(e.message),y(!1)):i.c.error(e.message)}catch{i.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})},disabled:b,children:b?"Working…":x})]})]})]})}])},374931,e=>{var t=e.i(843476),a=e.i(531219),n=e.i(357772),s=e.i(271645),i=e.i(54131),r=e.i(428325),l=e.i(541299),o=e.i(691106),d=e.i(975157),c=e.i(322534),u=e.i(495784);e.s(["ListFilter",0,function({placeholder:e,states:p,groups:x,head:h,rows:m,chips:f}){var g,v;let b,[j,y]=(0,s.useState)(""),[k,N]=(0,s.useState)(""),[C,w]=(0,s.useState)(""),[S,z]=(0,s.useState)(""),[M,R]=(0,s.useState)(1),A=(0,i.useMask)(),K=(g=m.map(e=>({...e,text:`${e.text} ${A("text",e.text)}`})),b=(v={text:j,state:k,group:S,tag:C}).text.trim().toLowerCase(),g.filter(e=>(!v.state||e.state===v.state)&&(!v.group||e.group===v.group)&&(!v.tag||(e.tags??[]).includes(v.tag))&&(!b||e.text.toLowerCase().includes(b)))),$=(0,u.$)(K,M),O=$.rows;$.page!==M&&R($.page);let P=p?.find(([e])=>e===k)?.[1];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 px-[18px] pb-3 pt-3.5 max-[720px]:px-3.5",children:[(0,t.jsx)("input",{className:(0,d.f)(r.S,"w-[240px] max-[720px]:w-full"),placeholder:e,"aria-label":e,value:j,onChange:e=>{y(e.target.value),R(1)}}),p&&(0,t.jsxs)("select",{className:(0,d.f)(r.S,"w-auto"),"aria-label":"State",value:k,onChange:e=>{N(e.target.value),R(1)},children:[(0,t.jsx)("option",{value:"",children:"All states"}),p.map(([e,a])=>(0,t.jsx)("option",{value:e,children:a},e))]}),x&&x.length>1&&(0,t.jsxs)("select",{className:(0,d.f)(r.S,"w-auto"),"aria-label":"Account",value:S,onChange:e=>{z(e.target.value),R(1)},children:[(0,t.jsx)("option",{value:"",children:"All accounts"}),x.map(e=>(0,t.jsx)("option",{value:e,children:A("account",e)},e))]}),f?.map(([e,a])=>(0,t.jsx)("button",{type:"button","aria-pressed":C===e,onClick:()=>{w(C===e?"":e),R(1)},className:(0,d.f)("rounded-[5px] border px-2 py-0.5 text-[12.5px]",C===e?"border-brand bg-brand-soft text-brand":"border-line text-ink-soft hover:bg-hover"),children:a},e)),P&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-[5px] bg-brand-soft py-px pl-2 pr-1 text-[12.5px] text-brand",children:["State: ",P,(0,t.jsx)("button",{type:"button","aria-label":"Remove filter",className:"px-0.5",onClick:()=>{N(""),R(1)},children:(0,t.jsx)(n.f,{size:13})})]}),S&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-[5px] bg-brand-soft py-px pl-2 pr-1 text-[12.5px] text-brand",children:["Account: ",(0,t.jsx)(i.Masked,{kind:"account",real:S}),(0,t.jsx)("button",{type:"button","aria-label":"Remove account filter",className:"px-0.5",onClick:()=>{z(""),R(1)},children:(0,t.jsx)(n.f,{size:13})})]}),(0,t.jsx)("span",{role:"status",className:"ml-auto text-[12.5px] text-ink-soft",children:(0,c.O)(K.length)})]}),(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:o.o,children:[(0,t.jsx)(o.U,{head:h}),(0,t.jsx)("tbody",{children:O.map(e=>(0,t.jsx)(s.Fragment,{children:e.row},e.key))})]})}),0===K.length&&m.length>0&&(0,t.jsxs)(r.k,{icon:a.f,title:"No results",children:["Nothing matches these filters."," ",(0,t.jsx)("button",{type:"button",className:"text-brand hover:underline",onClick:()=>{y(""),N(""),z(""),w(""),R(1)},children:"Clear filters"})]}),(0,t.jsx)(l.f,{page:$.page,pages:$.pages,text:(0,u.z)($),onPage:R})]})}],374931)},541299,495784,e=>{var t=e.i(843476),a=e.i(271645),n=e.i(428325),s=e.i(975157);function i(e,t,a=25){let n=e.length,s=Math.max(1,Math.ceil(n/a)),r=Math.min(Math.max(Number.isFinite(t)?Math.floor(t):1,1),s),l=(r-1)*a,o=e.slice(l,l+a);return{rows:o,page:r,pages:s,from:0===n?0:l+1,to:l+o.length,total:n}}e.s(["f",0,function({page:e,pages:i,text:r,onPage:l,bleed:o=!1}){let d=(0,a.useRef)(null),c=(0,a.useRef)(null);if((0,a.useEffect)(()=>{null!==c.current&&(d.current?.querySelectorAll("button")[c.current]?.focus(),c.current=null)},[e]),i<=1)return null;let u=(e,t)=>{(e<=1||e>=i)&&(c.current=t),l(e)};return(0,t.jsxs)("div",{className:(0,s.f)("flex items-center gap-2 border-t border-line px-[18px] py-2.5 text-[12.5px] text-ink-soft",o?"-mx-[18px] -mb-4 mt-2":"max-[720px]:px-3.5"),children:[(0,t.jsx)("span",{role:"status",children:r}),(0,t.jsxs)("span",{ref:d,className:"ml-auto flex gap-1.5",children:[(0,t.jsx)(n.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Previous page",disabled:e<=1,onClick:()=>u(e-1,1),children:"‹ Previous"}),(0,t.jsx)(n.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Next page",disabled:e>=i,onClick:()=>u(e+1,0),children:"Next ›"})]})]})}],541299),e.s(["k",0,function(e,t,a,n){return n<=1?null:t>0&&null!==a?a:e[0]?.id??null},"$",0,i,"f",0,function(e,t,a,n=25){let s=null===a?0:Math.max(0,e.findIndex(e=>e.id===a)),r=i(e.slice(s),t,n);return 0===s||r.page>1?{...r,shift:s}:{...i(e,1,n),shift:0}},"z",0,function(e,t=0,a=e.total){return`${e.from+t}–${e.to+t} of ${a}`}],495784)},177106,e=>{var t=e.i(843476),a=e.i(33550);let n=(0,a.f)("outline","chevron-down","ChevronDown",[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]]),s=(0,a.f)("outline","dots-vertical","DotsVertical",[["path",{d:"M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-1"}],["path",{d:"M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}]]);var i=e.i(271645),r=e.i(428325),l=e.i(500443),o=e.i(755146);e.s(["RowMenu",0,function({items:e,button:a=!1,label:d="Actions"}){let[c,u]=(0,i.useState)(!1);return(0,l.useHoldRefresh)(c),(0,t.jsxs)(o.G,{open:c,onOpenChange:u,children:[a?(0,t.jsxs)(o.X,{className:(0,r.R)(),children:[d," ",(0,t.jsx)(n,{size:16,"aria-hidden":!0})]}):(0,t.jsx)(o.X,{"aria-label":d,className:"rounded-[5px] px-1.5 py-1 text-ink-faint hover:bg-sunken hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:(0,t.jsx)(s,{size:17})}),(0,t.jsx)(o.L,{align:"end",className:"min-w-[200px] rounded-[8px] border border-line-strong bg-surface p-1 shadow-[0_8px_24px_rgba(0,0,0,.14)] ring-0",children:e.map((e,a)=>"---"===e?(0,t.jsx)(o.U,{},`sep-${a}`):(0,t.jsxs)(o.r,{disabled:void 0!==e.disabled,variant:e.danger?"destructive":"default",className:"rounded-[5px] px-2.5 py-[7px]",onClick:()=>{e.href?window.open(e.href,"_blank","noopener,noreferrer"):e.onSelect?.()},children:[e.label,void 0!==e.disabled&&(0,t.jsx)("span",{className:"ml-auto pl-3 text-[11px] text-ink-faint",children:e.disabled})]},e.label))})]})}],177106)},776639,998218,152744,e=>{var t=e.i(843476),a=e.i(526323),n=e.i(828376);e.s(["f",0,n],998218);var n=n,s=e.i(209977),i=e.i(921637),r=e.i(141708),l=e.i(593480),o=e.i(309169),d=n;e.s(["f",0,d],152744);var d=n,c=e.i(975157),u=e.i(271645),p=e.i(540886),x=e.i(552245);let h=u.forwardRef(function(e,t){let{render:a,className:n,disabled:s=!1,focusableWhenDisabled:i=!1,nativeButton:r=!0,style:l,...o}=e,{getButtonProps:d,buttonRef:c}=(0,p.f)({disabled:s,focusableWhenDisabled:i,native:r});return(0,x.a)("button",e,{state:{disabled:s},ref:[t,c],props:[o,d]})}),m=(0,e.i(225913).f)("group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}});function f({className:e,variant:a="default",size:n="default",...s}){return(0,t.jsx)(h,{"data-slot":"button",className:(0,c.f)(m({variant:a,size:n,className:e})),...s})}var g=e.i(456420);let v={name:"x",size:24,node:[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]};v.node;let b=(0,g.f)(v);function j({...e}){return(0,t.jsx)(s.f.Portal,{"data-slot":"dialog-portal",...e})}function y({className:e,...a}){return(0,t.jsx)(r.f.Backdrop,{"data-slot":"dialog-overlay",className:(0,c.f)("fixed inset-0 isolate z-50 bg-black/40 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...a})}e.s(["N",0,function({...e}){return(0,t.jsx)(a.f.Root,{"data-slot":"dialog",...e})},"d",0,function({className:e,children:a,showCloseButton:n=!0,...s}){return(0,t.jsxs)(j,{children:[(0,t.jsx)(y,{}),(0,t.jsxs)(l.f.Popup,{"data-slot":"dialog-content",className:(0,c.f)("fixed top-1/2 left-1/2 z-50 grid w-full grid-cols-[minmax(0,1fr)] max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...s,children:[a,n&&(0,t.jsxs)(i.f.Close,{"data-slot":"dialog-close",render:(0,t.jsx)(f,{variant:"ghost",className:"absolute top-2 right-2",size:"icon-sm"}),children:[(0,t.jsx)(b,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"C",0,function({className:e,...a}){return(0,t.jsx)(d.Description,{"data-slot":"dialog-description",className:(0,c.f)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...a})},"F",0,function({className:e,...a}){return(0,t.jsx)(o.f.Title,{"data-slot":"dialog-title",className:(0,c.f)("font-heading text-base leading-none font-medium",e),...a})},"a",0,function({...e}){return(0,t.jsx)(n.Trigger,{"data-slot":"dialog-trigger",...e})}],776639)},322534,e=>{e.i(684496),e.s(["O",0,e=>`${e} item${1===e?"":"s"}`,"J",0,function(e,t){let a=Math.max(0,t.getTime()-e.getTime());return a<6e4?"now":a<36e5?`${Math.floor(a/6e4)} min ago`:a<864e5?`${Math.floor(a/36e5)} h ago`:`${Math.floor(a/864e5)} d ago`}])},898121,e=>{let t={"ai:invoke":{short:"models",long:"Chat completions and the model list through your provider connections."},"read:status":{short:"console data, MCP",long:"Read-only console data: GET /api/v1/status and the MCP server. Database names are aliases; no URLs, emails or secrets."},"write:notes":{short:"post AI notes",long:e.i(944971).C.writeNotesLong}};e.s(["j",0,"90d","D",0,20,"J",0,["ai:invoke"],"W",0,["7d","30d","90d","1y","never"],"o",0,{"7d":"In 7 days","30d":"In 30 days","90d":"In 90 days","1y":"In 1 year",never:"Never"},"B",0,["ai:invoke","read:status","write:notes"],"h",0,t])}])})();
|
|
1
|
+
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,399582,e=>{let t=(0,e.i(33550).f)("outline","copy","Copy",[["path",{d:"M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]]);e.s(["f",0,t],399582)},531219,e=>{let t=(0,e.i(33550).f)("outline","filter-off","FilterOff",[["path",{d:"M8 4h12v2.172a2 2 0 0 1 -.586 1.414l-3.914 3.914m-.5 3.5v4l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227",key:"svg-0"}],["path",{d:"M3 3l18 18",key:"svg-1"}]]);e.s(["f",0,t],531219)},617708,e=>{let t=(0,e.i(33550).f)("outline","plus","Plus",[["path",{d:"M12 5l0 14",key:"svg-0"}],["path",{d:"M5 12l14 0",key:"svg-1"}]]);e.s(["f",0,t],617708)},225913,e=>{var t=e.i(207670);let a=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,n=t.f;e.s(["f",0,(e,t)=>s=>{var i;if((null==t?void 0:t.variants)==null)return n(e,null==s?void 0:s.class,null==s?void 0:s.className);let{variants:r,defaultVariants:l}=t,o=Object.keys(r).map(e=>{let t=null==s?void 0:s[e],n=null==l?void 0:l[e];if(null===t)return null;let i=a(t)||a(n);return r[e][i]}),d=s&&Object.entries(s).reduce((e,t)=>{let[a,n]=t;return void 0===n||(e[a]=n),e},{});return n(e,o,null==t||null==(i=t.compoundVariants)?void 0:i.reduce((e,t)=>{let{class:a,className:n,...s}=t;return Object.entries(s).every(e=>{let[t,a]=e;return Array.isArray(a)?a.includes({...l,...d}[t]):({...l,...d})[t]===a})?[...e,a,n]:e},[]),null==s?void 0:s.class,null==s?void 0:s.className)}])},477691,e=>{var t=e.i(843476),a=e.i(785642),n=e.i(399582),s=e.i(23990),i=e.i(617708),r=e.i(944971),l=e.i(522016),o=e.i(271645),d=e.i(846696),c=e.i(428325),u=e.i(500443),p=e.i(776639),x=e.i(95187);let h=(0,x.createServerReference)("400ed1a3e37ecebcb7ca0e01f05a6367c46923f467",x.callServer,void 0,x.findSourceMapURL,"createKeyAction");function m({scopes:e}){return(0,t.jsx)(t.Fragment,{children:e.map(e=>(0,t.jsx)("span",{className:"mr-1 inline-block whitespace-nowrap rounded-[4px] border border-line bg-surface-2 px-[5px] font-mono text-xs text-ink-soft",children:e},e))})}var f=e.i(898121);function g({icon:e,title:a,sub:n}){return(0,t.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,t.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:e}),(0,t.jsxs)("div",{children:[(0,t.jsx)(p.F,{className:"text-base",children:a}),(0,t.jsx)(p.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:n})]})]})}function v({onCreated:e,onCancel:a}){let[n,i]=(0,o.useState)(""),[l,u]=(0,o.useState)(f.J),[p,x]=(0,o.useState)(f.j),[b,j]=(0,o.useState)(String(f.D)),[y,k]=(0,o.useState)({}),[N,C]=(0,o.useState)(""),[w,S]=(0,o.useTransition)();return(0,t.jsxs)("form",{onSubmit:function(t){t.preventDefault(),S(async()=>{k({}),C("");try{let t=await h({name:n.trim(),scopes:f.B.filter(e=>l.includes(e)),expiry:p,ratePerMin:b.trim()});t.ok&&t.data?(d.c.success(t.message??"Key created."),e(t.data)):t.ok||(t.fieldErrors?k(t.fieldErrors):C(t.error))}catch{C("Watchbell didn't answer. Check that it's still running, then try again.")}})},noValidate:!0,children:[(0,t.jsx)(g,{icon:(0,t.jsx)(s.f,{size:19}),title:"Create API key",sub:"For one app or agent. Shown once."}),(0,t.jsxs)("div",{className:"px-[18px] pt-1.5",children:[(0,t.jsx)(c.O,{id:"key-name",label:"Name",help:"Lowercase letters, digits and dashes. Agents and Logs show it.",error:y.name,children:(0,t.jsx)("input",{id:"key-name",value:n,onChange:e=>i(e.target.value),placeholder:r.C.namePlaceholder,autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:c.S})}),(0,t.jsxs)("fieldset",{className:"mb-3.5",children:[(0,t.jsx)("legend",{className:"mb-[5px] text-[13px] font-medium",children:"Scopes"}),(0,t.jsx)("div",{className:"flex flex-col gap-1.5",children:f.B.map(e=>(0,t.jsxs)("label",{className:"flex cursor-pointer items-start gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:l.includes(e),onChange:()=>u(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e]),className:"mt-[3px] accent-brand"}),(0,t.jsxs)("span",{children:[(0,t.jsx)(m,{scopes:[e]})," ",(0,t.jsx)("span",{className:"text-[13px] text-ink-soft",children:f.h[e].short})]})]},e))}),y.scopes&&(0,t.jsx)("span",{className:"text-[12.5px] text-err",role:"alert",children:y.scopes})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3 max-[560px]:grid-cols-1",children:[(0,t.jsx)(c.O,{id:"key-expiry",label:"Expires",error:y.expiry,children:(0,t.jsx)("select",{id:"key-expiry",value:p,onChange:e=>x(e.target.value),className:c.S,children:f.W.map(e=>(0,t.jsx)("option",{value:e,children:f.o[e]},e))})}),(0,t.jsx)(c.O,{id:"key-rate",label:"Rate limit",help:"Requests per minute, 1–600. Applies before the provider's own limits.",error:y.ratePerMin,children:(0,t.jsx)("input",{id:"key-rate",inputMode:"numeric",value:b,onChange:e=>j(e.target.value),className:`${c.S} font-mono`})})]}),N&&(0,t.jsx)("p",{className:"mb-3 text-[13px] text-err",role:"alert",children:N})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsx)(c.K,{onClick:a,disabled:w,children:"Cancel"}),(0,t.jsx)(c.K,{type:"submit",variant:"primary",disabled:w,children:w?"Creating…":"Create key"})]})]})}function b({created:e,onDone:s}){async function i(){try{await navigator.clipboard.writeText(e.key),d.c.success("Copied.")}catch{d.c.error("Couldn't copy. Select the key and copy it by hand.")}}return(0,t.jsxs)("div",{children:[(0,t.jsx)(g,{icon:(0,t.jsx)(a.f,{size:19}),title:`Key ${e.name} created`,sub:"Copy it now."}),(0,t.jsxs)("div",{className:"px-[18px] pb-3 pt-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("code",{className:"min-w-0 flex-1 overflow-x-auto whitespace-nowrap rounded-md border border-line bg-sunken px-2 py-1.5 font-mono text-[12.5px]","data-testid":"new-key",children:e.key}),(0,t.jsxs)(c.K,{size:"sm",onClick:i,children:[(0,t.jsx)(n.f,{size:15,"aria-hidden":!0}),"Copy"]})]}),(0,t.jsx)("p",{className:"mt-2.5 rounded-md border border-warn-icon bg-warn-soft px-2.5 py-2 text-[13px] text-warn",children:"Watchbell keeps only a SHA-256 hash of this key, so it can't show it again. Lost it? Revoke it and create a new one."}),(0,t.jsxs)("p",{className:"mb-0 mt-3 text-[13px] text-ink-soft",children:["Next: put it in the app's environment as ",(0,t.jsx)("span",{className:"font-mono",children:"WATCHBELL_API_KEY"}),", then follow ",(0,t.jsx)(l.default,{href:"/ai",className:"text-brand",children:"Quick start"})," or ",(0,t.jsx)(l.default,{href:"/ai/connect",className:"text-brand",children:"Connect an agent"}),"."]})]}),(0,t.jsx)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:(0,t.jsx)(c.K,{variant:"primary",onClick:s,children:"Done"})})]})}e.s(["CreateKeyDialog",0,function(){let[e,a]=(0,o.useState)(!1),[n,s]=(0,o.useState)(null);function r(e){a(e),e||s(null)}return(0,u.useHoldRefresh)(e),(0,t.jsxs)(p.N,{open:e,onOpenChange:r,children:[(0,t.jsxs)(p.a,{render:(0,t.jsx)(c.K,{variant:"primary"}),children:[(0,t.jsx)(i.f,{size:16,"aria-hidden":!0}),"Create key"]}),(0,t.jsx)(p.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:n?(0,t.jsx)(b,{created:n,onDone:()=>r(!1)}):(0,t.jsx)(v,{onCreated:s,onCancel:()=>r(!1)})})]})}],477691)},211541,e=>{var t=e.i(843476),a=e.i(271645),n=e.i(846696),s=e.i(46200),i=e.i(428325),r=e.i(500443),l=e.i(177106),o=e.i(776639),d=e.i(95187);let c=(0,d.createServerReference)("60e434ebf173979c4c461854676e44f121757a7f52",d.callServer,void 0,d.findSourceMapURL,"changeKeyAction"),u=(0,d.createServerReference)("40cc28378322c5996e8f9bf27c3a93607aa44ba5ea",d.callServer,void 0,d.findSourceMapURL,"revokeKeyAction");var p=e.i(898121);let x={rename:{title:e=>`Rename ${e}`,sub:"Agents and Logs show the name. Lowercase letters, digits and dashes.",cta:"Save name"},rate:{title:()=>"Change rate limit",sub:"Requests per minute, 1–600. Applies before the provider's own limits, within a minute.",cta:"Save limit"},expiry:{title:()=>"Change expiry",sub:"Counted from today. The key stops working at that date.",cta:"Save expiry"},routing:{title:()=>"Change routing",sub:"Pin this key to one provider and, if you like, one model. Without a pin it uses the default provider.",cta:"Save routing"}};function h({mode:e,k:s,providers:r,onDone:l}){let[d,u]=(0,a.useState)(s.name),[m,f]=(0,a.useState)(String(s.ratePerMin)),[g,v]=(0,a.useState)(s.expiresAt?"90d":"never"),[b,j]=(0,a.useState)(s.providerId??""),[y,k]=(0,a.useState)(s.model??""),[N,C]=(0,a.useState)({}),[w,S]=(0,a.useState)(""),[z,M]=(0,a.useTransition)(),R=x[e];return(0,t.jsxs)("form",{onSubmit:function(t){t.preventDefault(),M(async()=>{C({}),S("");try{let t=await c(s.id,"rename"===e?{kind:"rename",name:d.trim()}:"rate"===e?{kind:"rate",ratePerMin:m.trim()}:"expiry"===e?{kind:"expiry",expiry:g}:{kind:"routing",providerId:b||null,model:b?y.trim():null});t.ok?(n.c.success(t.message??"Key updated."),l()):t.fieldErrors?C(t.fieldErrors):S(t.error)}catch{S("Watchbell didn't answer. Check that it's still running, then try again.")}})},noValidate:!0,children:[(0,t.jsxs)("div",{className:"px-[18px] pb-2 pt-4",children:[(0,t.jsx)(o.F,{className:"text-base",children:R.title(s.name)}),(0,t.jsx)(o.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:R.sub})]}),(0,t.jsxs)("div",{className:"px-[18px] pt-1.5",children:["rename"===e&&(0,t.jsx)(i.O,{id:"edit-name",label:"Name",error:N.name,children:(0,t.jsx)("input",{id:"edit-name",value:d,onChange:e=>u(e.target.value),autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:i.S})}),"rate"===e&&(0,t.jsx)(i.O,{id:"edit-rate",label:"Rate limit",help:"Requests per minute.",error:N.ratePerMin,children:(0,t.jsx)("input",{id:"edit-rate",inputMode:"numeric",value:m,onChange:e=>f(e.target.value),className:`${i.S} font-mono`})}),"expiry"===e&&(0,t.jsx)(i.O,{id:"edit-expiry",label:"Expires",error:N.expiry,children:(0,t.jsx)("select",{id:"edit-expiry",value:g,onChange:e=>v(e.target.value),className:i.S,children:p.W.map(e=>(0,t.jsx)("option",{value:e,children:p.o[e]},e))})}),"routing"===e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(i.O,{id:"edit-provider",label:"Provider",help:r.length?void 0:"No provider is connected yet. Until one is, this key has nothing to pin to.",error:N.providerId,children:(0,t.jsxs)("select",{id:"edit-provider",value:b,onChange:e=>j(e.target.value),className:i.S,children:[(0,t.jsx)("option",{value:"",children:"No pin (default provider)"}),r.map(e=>(0,t.jsxs)("option",{value:e.id,children:[e.name,e.enabled?"":" (off)"]},e.id))]})}),(0,t.jsx)(i.O,{id:"edit-model",label:"Model",help:"Optional. A Gemini model id, for example gemini-3.8-flash. Empty uses the provider's default.",error:N.model,children:(0,t.jsx)("input",{id:"edit-model",value:y,onChange:e=>k(e.target.value),disabled:!b,placeholder:"gemini-3.8-flash",autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:`${i.S} font-mono`})})]}),w&&(0,t.jsx)("p",{className:"mb-3 text-[13px] text-err",role:"alert",children:w})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsx)(i.K,{onClick:l,disabled:z,children:"Cancel"}),(0,t.jsx)(i.K,{type:"submit",variant:"primary",disabled:z,children:z?"Saving…":R.cta})]})]})}e.s(["KeyActions",0,function({k:e,providers:n}){let[d,c]=(0,a.useState)(null);return(0,r.useHoldRefresh)(null!==d),(0,t.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,t.jsx)(s.f,{trigger:(0,t.jsx)(i.K,{size:"sm",children:"Revoke"}),title:`Revoke ${e.name}?`,body:`Calls with ${e.prefix}… answer 401 within a minute. Agents using it show "Key revoked". This can't be undone; create a new key instead.`,cta:"Revoke key",danger:!0,onConfirm:async()=>{let t=await u(e.id);return{ok:t.ok,message:(t.ok?t.message:t.error)??""}}}),(0,t.jsx)(l.RowMenu,{label:`Actions for ${e.name}`,items:[{label:"Rename",onSelect:()=>c("rename")},{label:"Change rate limit",onSelect:()=>c("rate")},{label:"Change expiry",onSelect:()=>c("expiry")},{label:"Change routing",onSelect:()=>c("routing")}]}),(0,t.jsx)(o.N,{open:null!==d,onOpenChange:e=>{e||c(null)},children:(0,t.jsx)(o.d,{className:"gap-0 p-0 sm:max-w-[520px]",showCloseButton:!1,children:d&&(0,t.jsx)(h,{mode:d,k:e,providers:n,onDone:()=>c(null)})})})]})}],211541)},46200,e=>{var t=e.i(843476),a=e.i(146874),n=e.i(239692),s=e.i(271645),i=e.i(846696),r=e.i(428325),l=e.i(500443),o=e.i(776639);e.s(["f",0,function({trigger:e,open:d,onOpenChange:c,title:u,body:p,cta:x,danger:h=!1,onConfirm:m}){let[f,g]=(0,s.useState)(!1),v=d??f,[b,j]=(0,s.useTransition)();function y(e){void 0===d&&g(e),c?.(e)}return(0,l.useHoldRefresh)(v),(0,t.jsxs)(o.N,{open:v,onOpenChange:e=>{b||y(e)},children:[void 0!==e&&((0,s.isValidElement)(e)?(0,t.jsx)(o.a,{render:e}):(0,t.jsx)(o.a,{children:e})),(0,t.jsxs)(o.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:[(0,t.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,t.jsx)("span",{className:`grid size-9 shrink-0 place-items-center rounded-lg bg-sunken ${h?"text-err":"text-ink-soft"}`,children:h?(0,t.jsx)(a.f,{size:19}):(0,t.jsx)(n.f,{size:19})}),(0,t.jsxs)("div",{children:[(0,t.jsx)(o.F,{className:"text-base",children:u}),(0,t.jsx)(o.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:p})]})]}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsx)(r.K,{onClick:()=>y(!1),disabled:b,children:"Keep as is"}),(0,t.jsx)(r.K,{variant:h?"danger":"primary",onClick:function(){j(async()=>{try{let e=await m();e.ok?(i.c.success(e.message),y(!1)):i.c.error(e.message)}catch{i.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})},disabled:b,children:b?"Working…":x})]})]})]})}])},374931,e=>{var t=e.i(843476),a=e.i(531219),n=e.i(357772),s=e.i(271645),i=e.i(54131),r=e.i(428325),l=e.i(541299),o=e.i(691106),d=e.i(975157),c=e.i(322534),u=e.i(495784);e.s(["ListFilter",0,function({placeholder:e,states:p,groups:x,head:h,rows:m,chips:f}){var g,v;let b,[j,y]=(0,s.useState)(""),[k,N]=(0,s.useState)(""),[C,w]=(0,s.useState)(""),[S,z]=(0,s.useState)(""),[M,R]=(0,s.useState)(1),A=(0,i.useMask)(),K=(g=m.map(e=>({...e,text:`${e.text} ${A("text",e.text)}`})),b=(v={text:j,state:k,group:S,tag:C}).text.trim().toLowerCase(),g.filter(e=>(!v.state||e.state===v.state)&&(!v.group||e.group===v.group)&&(!v.tag||(e.tags??[]).includes(v.tag))&&(!b||e.text.toLowerCase().includes(b)))),$=(0,u.$)(K,M),O=$.rows;$.page!==M&&R($.page);let P=p?.find(([e])=>e===k)?.[1];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 px-[18px] pb-3 pt-3.5 max-[720px]:px-3.5",children:[(0,t.jsx)("input",{className:(0,d.f)(r.S,"w-[240px] max-[720px]:w-full"),placeholder:e,"aria-label":e,value:j,onChange:e=>{y(e.target.value),R(1)}}),p&&(0,t.jsxs)("select",{className:(0,d.f)(r.S,"w-auto"),"aria-label":"State",value:k,onChange:e=>{N(e.target.value),R(1)},children:[(0,t.jsx)("option",{value:"",children:"All states"}),p.map(([e,a])=>(0,t.jsx)("option",{value:e,children:a},e))]}),x&&x.length>1&&(0,t.jsxs)("select",{className:(0,d.f)(r.S,"w-auto"),"aria-label":"Account",value:S,onChange:e=>{z(e.target.value),R(1)},children:[(0,t.jsx)("option",{value:"",children:"All accounts"}),x.map(e=>(0,t.jsx)("option",{value:e,children:A("account",e)},e))]}),f?.map(([e,a])=>(0,t.jsx)("button",{type:"button","aria-pressed":C===e,onClick:()=>{w(C===e?"":e),R(1)},className:(0,d.f)("rounded-[5px] border px-2 py-0.5 text-[12.5px]",C===e?"border-brand bg-brand-soft text-brand":"border-line text-ink-soft hover:bg-hover"),children:a},e)),P&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-[5px] bg-brand-soft py-px pl-2 pr-1 text-[12.5px] text-brand",children:["State: ",P,(0,t.jsx)("button",{type:"button","aria-label":"Remove filter",className:"px-0.5",onClick:()=>{N(""),R(1)},children:(0,t.jsx)(n.f,{size:13})})]}),S&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-[5px] bg-brand-soft py-px pl-2 pr-1 text-[12.5px] text-brand",children:["Account: ",(0,t.jsx)(i.Masked,{kind:"account",real:S}),(0,t.jsx)("button",{type:"button","aria-label":"Remove account filter",className:"px-0.5",onClick:()=>{z(""),R(1)},children:(0,t.jsx)(n.f,{size:13})})]}),(0,t.jsx)("span",{role:"status",className:"ml-auto text-[12.5px] text-ink-soft",children:(0,c.O)(K.length)})]}),(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:o.o,children:[(0,t.jsx)(o.U,{head:h}),(0,t.jsx)("tbody",{children:O.map(e=>(0,t.jsx)(s.Fragment,{children:e.row},e.key))})]})}),0===K.length&&m.length>0&&(0,t.jsxs)(r.k,{icon:a.f,title:"No results",children:["Nothing matches these filters."," ",(0,t.jsx)("button",{type:"button",className:"text-brand hover:underline",onClick:()=>{y(""),N(""),z(""),w(""),R(1)},children:"Clear filters"})]}),(0,t.jsx)(l.f,{page:$.page,pages:$.pages,text:(0,u.z)($),onPage:R})]})}],374931)},541299,495784,e=>{var t=e.i(843476),a=e.i(271645),n=e.i(428325),s=e.i(975157);function i(e,t,a=25){let n=e.length,s=Math.max(1,Math.ceil(n/a)),r=Math.min(Math.max(Number.isFinite(t)?Math.floor(t):1,1),s),l=(r-1)*a,o=e.slice(l,l+a);return{rows:o,page:r,pages:s,from:0===n?0:l+1,to:l+o.length,total:n}}e.s(["f",0,function({page:e,pages:i,text:r,onPage:l,bleed:o=!1}){let d=(0,a.useRef)(null),c=(0,a.useRef)(null);if((0,a.useEffect)(()=>{null!==c.current&&(d.current?.querySelectorAll("button")[c.current]?.focus(),c.current=null)},[e]),i<=1)return null;let u=(e,t)=>{(e<=1||e>=i)&&(c.current=t),l(e)};return(0,t.jsxs)("div",{className:(0,s.f)("flex items-center gap-2 border-t border-line px-[18px] py-2.5 text-[12.5px] text-ink-soft",o?"-mx-[18px] -mb-4 mt-2":"max-[720px]:px-3.5"),children:[(0,t.jsx)("span",{role:"status",children:r}),(0,t.jsxs)("span",{ref:d,className:"ml-auto flex gap-1.5",children:[(0,t.jsx)(n.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Previous page",disabled:e<=1,onClick:()=>u(e-1,1),children:"‹ Previous"}),(0,t.jsx)(n.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Next page",disabled:e>=i,onClick:()=>u(e+1,0),children:"Next ›"})]})]})}],541299),e.s(["k",0,function(e,t,a,n){return n<=1?null:t>0&&null!==a?a:e[0]?.id??null},"$",0,i,"f",0,function(e,t,a,n=25){let s=null===a?0:Math.max(0,e.findIndex(e=>e.id===a)),r=i(e.slice(s),t,n);return 0===s||r.page>1?{...r,shift:s}:{...i(e,1,n),shift:0}},"z",0,function(e,t=0,a=e.total){return`${e.from+t}–${e.to+t} of ${a}`}],495784)},177106,e=>{var t=e.i(843476),a=e.i(33550);let n=(0,a.f)("outline","chevron-down","ChevronDown",[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]]),s=(0,a.f)("outline","dots-vertical","DotsVertical",[["path",{d:"M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-0"}],["path",{d:"M11 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-1"}],["path",{d:"M11 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0",key:"svg-2"}]]);var i=e.i(271645),r=e.i(428325),l=e.i(500443),o=e.i(755146);e.s(["RowMenu",0,function({items:e,button:a=!1,label:d="Actions"}){let[c,u]=(0,i.useState)(!1);return(0,l.useHoldRefresh)(c),(0,t.jsxs)(o.G,{open:c,onOpenChange:u,children:[a?(0,t.jsxs)(o.X,{className:(0,r.R)(),children:[d," ",(0,t.jsx)(n,{size:16,"aria-hidden":!0})]}):(0,t.jsx)(o.X,{"aria-label":d,className:"rounded-[5px] px-1.5 py-1 text-ink-faint hover:bg-sunken hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand/40",children:(0,t.jsx)(s,{size:17})}),(0,t.jsx)(o.L,{align:"end",className:"min-w-[200px] rounded-[8px] border border-line-strong bg-surface p-1 shadow-[0_8px_24px_rgba(0,0,0,.14)] ring-0",children:e.map((e,a)=>"---"===e?(0,t.jsx)(o.U,{},`sep-${a}`):(0,t.jsxs)(o.r,{disabled:void 0!==e.disabled,variant:e.danger?"destructive":"default",className:"rounded-[5px] px-2.5 py-[7px]",onClick:()=>{e.href?window.open(e.href,"_blank","noopener,noreferrer"):e.onSelect?.()},children:[e.label,void 0!==e.disabled&&(0,t.jsx)("span",{className:"ml-auto pl-3 text-[11px] text-ink-faint",children:e.disabled})]},e.label))})]})}],177106)},776639,998218,152744,e=>{var t=e.i(843476),a=e.i(526323),n=e.i(828376);e.s(["f",0,n],998218);var n=n,s=e.i(209977),i=e.i(921637),r=e.i(141708),l=e.i(593480),o=e.i(309169),d=n;e.s(["f",0,d],152744);var d=n,c=e.i(975157),u=e.i(271645),p=e.i(540886),x=e.i(552245);let h=u.forwardRef(function(e,t){let{render:a,className:n,disabled:s=!1,focusableWhenDisabled:i=!1,nativeButton:r=!0,style:l,...o}=e,{getButtonProps:d,buttonRef:c}=(0,p.f)({disabled:s,focusableWhenDisabled:i,native:r});return(0,x.a)("button",e,{state:{disabled:s},ref:[t,c],props:[o,d]})}),m=(0,e.i(225913).f)("group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}});function f({className:e,variant:a="default",size:n="default",...s}){return(0,t.jsx)(h,{"data-slot":"button",className:(0,c.f)(m({variant:a,size:n,className:e})),...s})}var g=e.i(456420);let v={name:"x",size:24,node:[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]};v.node;let b=(0,g.f)(v);function j({...e}){return(0,t.jsx)(s.f.Portal,{"data-slot":"dialog-portal",...e})}function y({className:e,...a}){return(0,t.jsx)(r.f.Backdrop,{"data-slot":"dialog-overlay",className:(0,c.f)("fixed inset-0 isolate z-50 bg-black/40 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...a})}e.s(["N",0,function({...e}){return(0,t.jsx)(a.f.Root,{"data-slot":"dialog",...e})},"d",0,function({className:e,children:a,showCloseButton:n=!0,...s}){return(0,t.jsxs)(j,{children:[(0,t.jsx)(y,{}),(0,t.jsxs)(l.f.Popup,{"data-slot":"dialog-content",className:(0,c.f)("fixed top-1/2 left-1/2 z-50 grid w-full grid-cols-[minmax(0,1fr)] max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...s,children:[a,n&&(0,t.jsxs)(i.f.Close,{"data-slot":"dialog-close",render:(0,t.jsx)(f,{variant:"ghost",className:"absolute top-2 right-2",size:"icon-sm"}),children:[(0,t.jsx)(b,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"C",0,function({className:e,...a}){return(0,t.jsx)(d.Description,{"data-slot":"dialog-description",className:(0,c.f)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...a})},"F",0,function({className:e,...a}){return(0,t.jsx)(o.f.Title,{"data-slot":"dialog-title",className:(0,c.f)("font-heading text-base leading-none font-medium",e),...a})},"a",0,function({...e}){return(0,t.jsx)(n.Trigger,{"data-slot":"dialog-trigger",...e})}],776639)},322534,e=>{e.i(684496),e.s(["O",0,e=>`${e} item${1===e?"":"s"}`,"J",0,function(e,t){let a=Math.max(0,t.getTime()-e.getTime());return a<6e4?"now":a<36e5?`${Math.floor(a/6e4)} min ago`:a<864e5?`${Math.floor(a/36e5)} h ago`:`${Math.floor(a/864e5)} d ago`}])},898121,e=>{let t={"ai:invoke":{short:"models",long:"Chat completions and the model list through your provider connections."},"read:status":{short:"console data, MCP",long:"Read-only console data: GET /api/v1/status and the MCP server. Database names are aliases; no URLs, emails or secrets."},"write:notes":{short:"post AI notes",long:e.i(944971).C.writeNotesLong}};e.s(["j",0,"90d","D",0,20,"J",0,["ai:invoke"],"W",0,["7d","30d","90d","1y","never"],"o",0,{"7d":"In 7 days","30d":"In 30 days","90d":"In 90 days","1y":"In 1 year",never:"Never"},"B",0,["ai:invoke","read:status","write:notes"],"h",0,t])}])})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,531219,e=>{let a=(0,e.i(33550).f)("outline","filter-off","FilterOff",[["path",{d:"M8 4h12v2.172a2 2 0 0 1 -.586 1.414l-3.914 3.914m-.5 3.5v4l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227",key:"svg-0"}],["path",{d:"M3 3l18 18",key:"svg-1"}]]);e.s(["f",0,a],531219)},83229,e=>{var a=e.i(843476),t=e.i(271645),s=e.i(846696),i=e.i(54131),n=e.i(428325),l=e.i(95187);let r=(0,l.createServerReference)("
|
|
1
|
+
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,531219,e=>{let a=(0,e.i(33550).f)("outline","filter-off","FilterOff",[["path",{d:"M8 4h12v2.172a2 2 0 0 1 -.586 1.414l-3.914 3.914m-.5 3.5v4l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227",key:"svg-0"}],["path",{d:"M3 3l18 18",key:"svg-1"}]]);e.s(["f",0,a],531219)},83229,e=>{var a=e.i(843476),t=e.i(271645),s=e.i(846696),i=e.i(54131),n=e.i(428325),l=e.i(95187);let r=(0,l.createServerReference)("40b26ec7429eb4e9a827998988c8a5218cab976fa2",l.callServer,void 0,l.findSourceMapURL,"scanDependencies");e.s(["DepsScanButton",0,function({appId:e,appName:l}){let[o,c]=(0,t.useTransition)(),d=(0,t.useRef)(!1),p=(0,i.useMask)();return(0,a.jsx)(n.K,{size:"sm",onClick:()=>{if(d.current)return;d.current=!0;let a=s.c.loading(`Scanning the dependencies of ${p("app",l)}. This can take up to half a minute.`);c(async()=>{try{let t=await r(e);t.ok?t.data?.vulns?s.c.warning(t.message??"",{id:a}):s.c.success(t.message??"",{id:a}):s.c.error(t.error,{id:a})}catch{s.c.error("Watchbell didn't answer. Check that it's still running, then try again.",{id:a})}finally{d.current=!1}})},disabled:o,children:o?"Scanning…":"Scan now"})}],83229)},943458,e=>{var a=e.i(843476),t=e.i(531219),s=e.i(522016),i=e.i(618566),n=e.i(271645),l=e.i(54131),r=e.i(428325),o=e.i(541299),c=e.i(364440),d=e.i(220806),p=e.i(691106);let x={q:"",linked:"",visibility:""},u=e=>e.pushedAt&&Date.parse(e.pushedAt)||0;var f=e.i(684496),h=e.i(322534),m=e.i(495784),g=e.i(975157);let b=["Repository","Apps","Branch","Last push","Language","Advisories","Actions"],v="font-mono text-[12.5px]";function j({isPrivate:e,archived:t}){return(0,a.jsxs)("span",{className:"inline-flex gap-1",children:[(0,a.jsx)("span",{className:(0,g.f)("rounded-[5px] border px-1.5 text-xs",e?"border-line bg-sunken text-ink-soft":"border-brand/30 bg-brand-soft text-brand"),children:e?"private":"public"}),t&&(0,a.jsx)("span",{className:"rounded-[5px] border border-line bg-surface-2 px-1.5 text-xs text-ink-faint",children:"archived"})]})}e.s(["RepoList",0,function({items:e,nowMs:k}){let N,y=(0,i.useRouter)(),[w,C]=(0,n.useState)(x),[M,S]=(0,n.useState)(1),P=new Date(k),$=(N=w.q.trim().toLowerCase(),e.filter(e=>!w.linked||"linked"===w.linked==e.apps.length>0).filter(e=>!w.visibility||"private"===w.visibility===e.private).filter(e=>!N||e.fullName.toLowerCase().includes(N)||e.apps.some(e=>e.name.toLowerCase().includes(N))||(e.language??"").toLowerCase()===N).sort((e,a)=>u(a)-u(e)||e.fullName.localeCompare(a.fullName))),L=(0,m.$)($,M);L.page!==M&&S(L.page);let z=e=>{C({...w,...e}),S(1)};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-2 px-[18px] pb-3 pt-3.5 max-[720px]:px-3.5",children:[(0,a.jsx)("input",{className:(0,g.f)(r.S,"w-[240px] max-[720px]:w-full"),placeholder:"Filter by name","aria-label":"Filter by name",value:w.q,onChange:e=>z({q:e.target.value})}),(0,a.jsxs)("select",{className:(0,g.f)(r.S,"w-auto"),"aria-label":"Linked to an app",value:w.linked,onChange:e=>z({linked:e.target.value}),children:[(0,a.jsx)("option",{value:"",children:"Linked and unlinked"}),(0,a.jsx)("option",{value:"linked",children:"Linked to an app"}),(0,a.jsx)("option",{value:"unlinked",children:"Not linked"})]}),(0,a.jsxs)("select",{className:(0,g.f)(r.S,"w-auto"),"aria-label":"Visibility",value:w.visibility,onChange:e=>z({visibility:e.target.value}),children:[(0,a.jsx)("option",{value:"",children:"Private and public"}),(0,a.jsx)("option",{value:"private",children:"Private"}),(0,a.jsx)("option",{value:"public",children:"Public"})]}),(0,a.jsxs)("span",{role:"status",className:"ml-auto text-[12.5px] text-ink-soft",children:[(0,h.O)($.length)," · newest push first"]})]}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:p.o,children:[(0,a.jsx)(p.U,{head:b}),(0,a.jsx)("tbody",{children:L.rows.map(e=>(0,a.jsxs)("tr",{className:(0,g.f)(p.C,"cursor-pointer"),onClick:()=>{let a;return a=e.id,y.push(`/repos/${a}`)},children:[(0,a.jsx)("td",{className:p.z,children:(0,a.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,a.jsx)(s.default,{href:`/repos/${e.id}`,className:v,onClick:e=>e.stopPropagation(),children:(0,a.jsx)(l.Masked,{kind:"repo",real:e.fullName,inLink:!0})}),(0,a.jsx)(j,{isPrivate:e.private,archived:e.archived})]})}),(0,a.jsx)("td",{className:p.z,children:e.apps.length?(0,a.jsx)("span",{className:"flex flex-wrap gap-1",children:e.apps.map(e=>(0,a.jsxs)(s.default,{href:`/apps/${e.id}`,onClick:e=>e.stopPropagation(),className:"inline-flex items-center gap-1 rounded-[5px] border border-line px-1.5 py-px text-xs hover:bg-hover",children:[(0,a.jsx)(c.f,{kind:"app"}),(0,a.jsx)(l.Masked,{kind:"app",real:e.name,inLink:!0})]},e.id))}):(0,a.jsx)("span",{className:"text-ink-faint",children:"—"})}),(0,a.jsx)("td",{className:(0,g.f)(p.z,v),children:e.defaultBranch??"—"}),(0,a.jsx)("td",{className:p.z,children:e.pushedAt?(0,f.$)(new Date(e.pushedAt),P):(0,a.jsx)("span",{className:"text-ink-faint",children:"never"})}),(0,a.jsx)("td",{className:(0,g.f)(p.z,!e.language&&"text-ink-faint"),children:e.language??"—"}),(0,a.jsx)("td",{className:p.z,children:null===e.advisories?(0,a.jsx)("span",{className:"text-ink-faint",title:"Not scanned",children:"—"}):0===e.advisories?(0,a.jsx)(d.F,{state:"ok",children:"None"}):(0,a.jsxs)(d.F,{state:"warn",children:[(0,a.jsx)("span",{className:v,children:e.advisories})," open"]})}),(0,a.jsx)("td",{className:p.z,children:e.actions?(0,a.jsx)(d.F,{state:e.actions.state,children:e.actions.label}):(0,a.jsx)("span",{className:"text-ink-faint",children:"—"})})]},e.id))})]})}),0===$.length&&e.length>0&&(0,a.jsxs)(r.k,{icon:t.f,title:"No results",children:["Nothing matches these filters."," ",(0,a.jsx)("button",{type:"button",className:"text-brand hover:underline",onClick:()=>{C(x),S(1)},children:"Clear filters"})]}),(0,a.jsx)(o.f,{page:L.page,pages:L.pages,text:(0,m.z)(L),onPage:S})]})},"VisibilityTag",0,j],943458)},541299,495784,e=>{var a=e.i(843476),t=e.i(271645),s=e.i(428325),i=e.i(975157);function n(e,a,t=25){let s=e.length,i=Math.max(1,Math.ceil(s/t)),l=Math.min(Math.max(Number.isFinite(a)?Math.floor(a):1,1),i),r=(l-1)*t,o=e.slice(r,r+t);return{rows:o,page:l,pages:i,from:0===s?0:r+1,to:r+o.length,total:s}}e.s(["f",0,function({page:e,pages:n,text:l,onPage:r,bleed:o=!1}){let c=(0,t.useRef)(null),d=(0,t.useRef)(null);if((0,t.useEffect)(()=>{null!==d.current&&(c.current?.querySelectorAll("button")[d.current]?.focus(),d.current=null)},[e]),n<=1)return null;let p=(e,a)=>{(e<=1||e>=n)&&(d.current=a),r(e)};return(0,a.jsxs)("div",{className:(0,i.f)("flex items-center gap-2 border-t border-line px-[18px] py-2.5 text-[12.5px] text-ink-soft",o?"-mx-[18px] -mb-4 mt-2":"max-[720px]:px-3.5"),children:[(0,a.jsx)("span",{role:"status",children:l}),(0,a.jsxs)("span",{ref:c,className:"ml-auto flex gap-1.5",children:[(0,a.jsx)(s.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Previous page",disabled:e<=1,onClick:()=>p(e-1,1),children:"‹ Previous"}),(0,a.jsx)(s.K,{size:"sm",className:"disabled:hover:bg-surface","aria-label":"Next page",disabled:e>=n,onClick:()=>p(e+1,0),children:"Next ›"})]})]})}],541299),e.s(["k",0,function(e,a,t,s){return s<=1?null:a>0&&null!==t?t:e[0]?.id??null},"$",0,n,"f",0,function(e,a,t,s=25){let i=null===t?0:Math.max(0,e.findIndex(e=>e.id===t)),l=n(e.slice(i),a,s);return 0===i||l.page>1?{...l,shift:i}:{...n(e,1,s),shift:0}},"z",0,function(e,a=0,t=e.total){return`${e.from+a}–${e.to+a} of ${t}`}],495784)},346072,e=>{var a=e.i(843476),t=e.i(271645),s=e.i(541299),i=e.i(691106),n=e.i(495784);e.s(["PlainTable",0,function({head:e,rows:l}){let[r,o]=(0,t.useState)(1),c=(0,n.$)(l,r);return c.page!==r&&o(c.page),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:i.o,children:[(0,a.jsx)(i.U,{head:e}),(0,a.jsx)("tbody",{children:c.rows.map(e=>(0,a.jsx)(t.Fragment,{children:e.row},e.key))})]})}),(0,a.jsx)(s.f,{page:c.page,pages:c.pages,text:(0,n.z)(c),onPage:o})]})}])},364440,e=>{var a=e.i(843476);e.i(522016),e.i(54131);var t=e.i(975157);let s={app:["APP","bg-brand-soft text-brand"],db:["DB","bg-teal-soft text-teal"],br:["BR","bg-teal-soft text-teal"],fs:["FS","bg-teal-soft text-teal"],mon:["MON","bg-amber-soft text-amber"],dpl:["DPL","bg-gray-soft text-ink-soft"],dom:["DOM","bg-gray-soft text-ink-soft"],dns:["DNS","bg-gray-soft text-ink-soft"],usr:["USR","bg-gray-soft text-ink-soft"]};e.s(["f",0,function({kind:e}){let[i,n]=s[e];return(0,a.jsx)("span",{className:(0,t.f)("rounded px-[5px] py-px font-mono text-[10.5px] font-medium tracking-[0.02em]",n),children:i})}])},322534,e=>{e.i(684496),e.s(["O",0,e=>`${e} item${1===e?"":"s"}`,"J",0,function(e,a){let t=Math.max(0,a.getTime()-e.getTime());return t<6e4?"now":t<36e5?`${Math.floor(t/6e4)} min ago`:t<864e5?`${Math.floor(t/36e5)} h ago`:`${Math.floor(t/864e5)} d ago`}])}])})();
|
|
@@ -64,7 +64,7 @@ begin
|
|
|
64
64
|
execute format('create policy ${c}_read on public.%I for select to ${c} using (true)', t.relname);
|
|
65
65
|
end loop;
|
|
66
66
|
end
|
|
67
|
-
$$;`;var p=e.i(758575),f=e.i(95187);let h=(0,f.createServerReference)("
|
|
67
|
+
$$;`;var p=e.i(758575),f=e.i(95187);let h=(0,f.createServerReference)("40e9cf6395ddead9b2d36f52c71e4019712b2aebd0",f.callServer,void 0,f.findSourceMapURL,"createSqlAccessAutoAction"),m=(0,f.createServerReference)("406d5c382f7e6dc39cb9d897bae624ad2d0570e3d5",f.callServer,void 0,f.findSourceMapURL,"deleteSqlAccess"),g=(0,f.createServerReference)("708b3acc8bbda8781bb3dbc8236b0d3afe318e56a7",f.callServer,void 0,f.findSourceMapURL,"setSqlAccess"),y=(0,f.createServerReference)("407d7e2cfab73dae9f7c397e7d83a489f221ced5fd",f.callServer,void 0,f.findSourceMapURL,"sqlAutoStatusAction");function v({text:e}){return(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("pre",{className:"max-h-56 overflow-auto whitespace-pre-wrap break-words rounded-md border border-line bg-sunken py-2 pl-3 pr-20 font-mono text-[12px] leading-relaxed text-ink",children:e}),(0,t.jsxs)(a.K,{size:"sm",variant:"ghost",className:"absolute right-1.5 top-1.5","aria-label":"Copy SQL",onClick:()=>navigator.clipboard.writeText(e).then(()=>o.c.success("Copied"),()=>o.c.error("Couldn't copy")),children:[(0,t.jsx)(n.f,{size:14})," Copy"]})]})}function _({id:e,alias:n,provider:s,connected:f}){let m,b,[z,w]=(0,i.useState)(!1),[k,$]=(0,i.useState)(""),[x,S]=(0,i.useState)(),[O,A]=(0,i.useState)(!1),[j,P]=(0,i.useTransition)(),[E,T]=(0,i.useState)({phase:"idle"}),[Z,N]=(0,i.useState)();(0,l.useHoldRefresh)(z);let R=(0,i.useRef)(0);function I(t){if(!j){let n;$(""),S(void 0),A(!1),N(void 0),R.current++,T({phase:"idle"}),w(t),t&&"supabase"===s&&(n=++R.current,T({phase:"checking"}),y(e).then(e=>{R.current===n&&T(e.ok&&e.data?{phase:"done",access:e.data}:{phase:"error",error:e.ok?"No answer.":e.error})},()=>{R.current===n&&T({phase:"error",error:"Couldn't check this project's token."})}))}}function D(t){P(async()=>{try{let r=await g(e,k,t);if(!r.ok){if(r.data?.needsWake){A(!0),S(void 0);return}S(r.fieldErrors?.dsn??r.error);return}o.c.success(`SQL access saved for ${n}`,{description:"Open Databases → SQL console to run a query."}),$(""),w(!1)}catch{o.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})}return(0,t.jsxs)(u.N,{open:z,onOpenChange:I,children:[(0,t.jsx)(u.a,{render:(0,t.jsx)(a.K,{size:"sm",children:f?"Replace SQL access":"Add SQL access"})}),(0,t.jsxs)(u.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:[(0,t.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,t.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,t.jsx)(r,{size:19})}),(0,t.jsxs)("div",{children:[(0,t.jsxs)(u.F,{className:"text-base",children:[f?"Replace":"Add"," SQL access for ",n]}),(0,t.jsx)(u.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:"The SQL console connects with a read-only Postgres role you create. Watchbell never reads your app's own secrets."})]})]}),(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault(),D(!1)},children:[(0,t.jsxs)("div",{className:"max-h-[65vh] overflow-y-auto px-[18px] pt-2 text-[13px] text-ink-soft",children:["supabase"===s&&(0,t.jsx)("div",{className:"mb-3 rounded-md border border-line px-3 py-2.5",children:"done"===E.phase&&E.access.can?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("p",{className:"text-ink",children:["Watchbell can set this up for you: it creates (or resets) the role ",(0,t.jsx)("span",{className:"font-mono",children:c})," with SELECT only, checks that it can't write, and saves the pooler string encrypted. The password is generated on the server and never shown."]}),(0,t.jsxs)("div",{className:"mt-2 flex items-center gap-2",children:[(0,t.jsx)(a.K,{type:"button",variant:"primary",size:"sm",disabled:j,onClick:function(){N(void 0),P(async()=>{try{let t=await h(e);if(!t.ok)return void N(t.error);o.c.success(`SQL access created for ${n}`,{description:`Read-only role ${c}, checked and saved. Open Databases → SQL console to run a query.`}),w(!1)}catch{o.c.error("Watchbell didn't answer. Check that it's still running, then try again.")}})},children:j?"Setting up…":"Set up automatically (read-only)"}),(0,t.jsx)("span",{className:"text-[12px] text-ink-faint",children:"Or do it by hand below."})]}),Z&&(0,t.jsx)("p",{className:"mt-2 text-[12.5px] text-err",role:"alert",children:Z})]}):"done"!==E.phase||E.access.can?"error"===E.phase?(0,t.jsxs)("p",{children:["Automatic setup couldn't be checked: ",E.error," Follow the steps below."]}):(0,t.jsx)("p",{className:"text-ink-faint",children:"Checking whether this project's token can set the role up…"}):(0,t.jsx)("p",{children:"scope"===(m=E.access).reason?`This project's token can't create the role (missing ${m.missing.join(", ")}). Automatic setup needs a token with Database: Read-write and Connection pooling: Read; replace it on Connections, or follow the steps below.`:`Automatic setup isn't available right now: ${m.error} Follow the steps below.`})}),"neon"===s&&(0,t.jsx)("p",{className:"mb-2 text-[12.5px]",children:"Neon: API can't grant SELECT; run the SQL once."}),(0,t.jsxs)("ol",{className:"mb-3 list-decimal space-y-2 pl-5",children:[(0,t.jsxs)("li",{children:["Create the role. Replace the password first.",(0,t.jsx)("div",{className:"mt-1.5",children:(0,t.jsx)(v,{text:(b="supabase"===s?"postgres":"neondb_owner",`-- Run as ${b} in the ${"supabase"===s?"Supabase SQL Editor":"Neon SQL Editor"}. Use a long random password.
|
|
68
68
|
create role ${c} login password 'REPLACE-with-a-long-random-password';
|
|
69
69
|
alter role ${c} set default_transaction_read_only = on;
|
|
70
70
|
alter role ${c} set statement_timeout = '5s';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,399582,e=>{let t=(0,e.i(33550).f)("outline","copy","Copy",[["path",{d:"M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]]);e.s(["f",0,t],399582)},590246,e=>{let t=(0,e.i(33550).f)("outline","external-link","ExternalLink",[["path",{d:"M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6",key:"svg-0"}],["path",{d:"M11 13l9 -9",key:"svg-1"}],["path",{d:"M15 4h5v5",key:"svg-2"}]]);e.s(["f",0,t],590246)},745653,e=>{var t=e.i(843476),s=e.i(590246),n=e.i(105674),a=e.i(271645),r=e.i(778085),i=e.i(428325),l=e.i(975157),d=e.i(684496);let c={CRITICAL:"Critical",HIGH:"High",MODERATE:"Moderate",LOW:"Low",UNKNOWN:"Unknown"},o={CRITICAL:"bg-err-soft text-err",HIGH:"bg-err-soft text-err",MODERATE:"bg-warn-soft text-warn",LOW:"bg-brand-soft text-brand",UNKNOWN:"bg-brand-soft text-brand"};function x({severity:e}){return(0,t.jsx)("span",{className:(0,l.f)("inline-block whitespace-nowrap rounded-[5px] px-2 py-px text-xs font-medium",o[e]),children:c[e]})}o.CRITICAL,o.MODERATE,o.LOW;var u=e.i(220806),h=e.i(691106);let p=e=>/^USN-\d+-\d+$/.test(e)?`https://ubuntu.com/security/notices/${e}`:null;function m(e){let t=e.trim(),s=0,n=t.indexOf(":");n>0&&/^\d+$/.test(t.slice(0,n))&&(s=Number(t.slice(0,n)),t=t.slice(n+1));let a=t.lastIndexOf("-");return a>=0?[s,t.slice(0,a),t.slice(a+1)]:[s,t,""]}function f(e){return void 0===e?0:"~"===e?-1:/[A-Za-z]/.test(e)?e.charCodeAt(0):e.charCodeAt(0)+256}function g(e,t){let s=0,n=0;for(;s<e.length||n<t.length;){for(;s<e.length&&!/\d/.test(e[s])||n<t.length&&!/\d/.test(t[n]);){let a=s<e.length&&!/\d/.test(e[s])?e[s]:void 0,r=n<t.length&&!/\d/.test(t[n])?t[n]:void 0,i=f(a)-f(r);if(0!==i)return i;void 0!==a&&s++,void 0!==r&&n++}let a="",r="";for(;s<e.length&&/\d/.test(e[s]);)a+=e[s++];for(;n<t.length&&/\d/.test(t[n]);)r+=t[n++];if(a=a.replace(/^0+/,""),r=r.replace(/^0+/,""),a.length!==r.length)return a.length-r.length;if(a!==r)return a<r?-1:1}return 0}function j(e){let t=[...new Set(e.flatMap(e=>e.binaries))].sort();return t.length?`sudo apt update && sudo apt install --only-upgrade ${t.join(" ")}`:null}let b=e=>/^CVE-\d{4}-\d{4,}$/.test(e)?`https://nvd.nist.gov/vuln/detail/${e}`:null,N=e=>"number"==typeof e&&Number.isFinite(e)?e.toFixed(1):null;var k=e.i(95187);let y=(0,k.createServerReference)("005fdb78e3ecc8e19374e751aafc535ee0843fc49b",k.callServer,void 0,k.findSourceMapURL,"scanNowAction"),w="grid grid-cols-[170px_minmax(0,1fr)] gap-x-4 gap-y-2 max-[720px]:grid-cols-1 max-[720px]:gap-y-1 [&_dt]:text-ink-soft",v="font-mono text-[12.5px]",C={target:"_blank",rel:"noopener noreferrer"};function $({text:e}){return(0,t.jsxs)("div",{className:"flex min-w-0 items-start gap-2 rounded-md bg-code-bg px-3 py-2",children:[(0,t.jsx)("code",{className:"min-w-0 flex-1 font-mono text-[12px] text-code-text [overflow-wrap:anywhere]",children:e}),(0,t.jsx)(r.CopyButton,{text:e})]})}function A({u:e}){return(0,t.jsxs)("li",{className:"grid gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-baseline gap-x-3 gap-y-0.5",children:[(0,t.jsx)("b",{className:"font-medium",children:e.source}),(0,t.jsxs)("span",{className:(0,l.f)(v,"text-ink-faint [overflow-wrap:anywhere]"),children:[e.installed," → ",e.candidate]}),e.security&&(0,t.jsx)("span",{className:"text-[12px] text-ink-soft",children:"Ubuntu security update"})]}),e.error?(0,t.jsxs)("p",{className:"flex items-start gap-1.5 text-[13px] text-ink-soft",children:[(0,t.jsx)(u.Z,{state:"warn"}),(0,t.jsxs)("span",{children:["Fixed CVEs couldn't be read: ",e.error]})]}):0===e.fixes.length?(0,t.jsx)("p",{className:"text-[13px] text-ink-soft",children:"No CVE listed for this update."}):(0,t.jsx)("ul",{className:"grid gap-2",children:e.fixes.map(e=>{let s,n;return(0,t.jsxs)("li",{className:"min-w-0 rounded-md border border-line px-3 py-2",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,t.jsx)(x,{severity:null===(s=e.cvss3)?"UNKNOWN":s>=9?"CRITICAL":s>=7?"HIGH":s>=4?"MODERATE":s>0?"LOW":"UNKNOWN"}),N(e.cvss3)&&(0,t.jsx)("span",{className:(0,l.f)(v,"font-medium"),title:"CVSS v3 base score",children:N(e.cvss3)}),(0,t.jsx)("a",{href:(n=e.cve,`https://ubuntu.com/security/${n}`),...C,className:(0,l.f)(v,"text-brand hover:underline"),children:e.cve}),e.priority&&(0,t.jsxs)("span",{className:"text-[12px] text-ink-faint",children:["Ubuntu priority: ",e.priority]})]}),e.summary&&(0,t.jsx)("p",{className:"mt-1 text-[13px] text-ink-soft",children:e.summary}),(0,t.jsxs)("div",{className:"mt-1 flex flex-wrap gap-x-3 text-[12.5px]",children:[e.usns.map(e=>p(e)&&(0,t.jsx)("a",{href:p(e),...C,className:"text-brand hover:underline",children:e},e)),b(e.cve)&&(0,t.jsx)("a",{href:b(e.cve),...C,className:"text-brand hover:underline",children:"NVD"})]})]},e.cve)})}),(0,t.jsx)($,{text:`sudo apt update && sudo apt install --only-upgrade ${[...e.binaries].sort().join(" ")}`})]})}e.s(["OsView",0,function({initial:e,owner:r,demo:c,now:o}){var x,p;let f,b,[N,k]=(0,a.useState)(e),[U,S]=(0,a.useState)(null),[T,I]=(0,a.useTransition)(),O=o??new Date,L=r&&!c?(0,t.jsx)(i.K,{size:"sm",variant:N?"secondary":"primary",onClick:()=>I(async()=>{try{let e=await y();e.ok&&e.data?(k(e.data),S(null)):S(e.ok?"No answer.":e.error)}catch{S("Watchbell didn't answer. Check that it's still running, then try again.")}}),disabled:T,children:T?"Scanning… (up to a minute)":"Scan now"}):null;if(!N)return(0,t.jsx)(i.N,{flush:!0,children:(0,t.jsxs)(i.k,{icon:n.f,title:"Not scanned yet",action:L,children:[r?"The daily job scans this machine; Scan now does it right away.":"The daily job scans this machine; the owner can scan now.",U&&(0,t.jsx)("p",{className:"mt-2 text-err",children:U})]})});let{security:M,other:R}=(x=N.updates,f=e=>e.security||e.fixes.length>0||null!==e.error,{security:x.filter(f),other:x.filter(e=>!f(e))}),V=j(M),E=N.kernel?!(p=N.kernel).running||p.runningVersion||p.newestInstalled?p.newestInstalled&&p.runningVersion&&function(e,t){let[s,n,a]=m(e),[r,i,l]=m(t);return s!==r?s-r:g(n,i)||g(a,l)}(p.newestInstalled,p.runningVersion)>0?{state:"warn",text:`Kernel ${p.newestInstalled} is installed, but ${p.runningVersion} is still running. Reboot to run it.`,command:"sudo reboot"}:p.update?{state:"warn",text:`A kernel update is waiting (${p.update.package} ${p.update.candidate}). Install it, then reboot.`,command:"sudo apt update && sudo apt full-upgrade"}:p.reboot.needed?{state:"warn",text:`An update waits for a reboot${p.reboot.packages.length?` (${p.reboot.packages.join(", ")})`:""}.`,command:"sudo reboot"}:{state:"ok",text:"The newest installed kernel is running.",command:null}:{state:"ok",text:`The running kernel (${p.running}) isn't from an Ubuntu package: the host it runs on updates it.`,command:null}:null,H=Object.entries(N.backlog.counts).sort((e,t)=>t[1]-e[1]),W=new Set(M.flatMap(e=>e.fixes.map(e=>e.cve))).size;return(0,t.jsxs)(t.Fragment,{children:[c&&(0,t.jsx)(i.M,{tone:"info",title:"Made-up data: the demo doesn't scan."}),U&&(0,t.jsx)(i.M,{tone:"danger",title:"Scan now failed",children:U}),N.failedAt&&N.error&&(0,t.jsx)(i.M,{tone:"warning",title:`The last scan failed ${(0,d.$)(new Date(N.failedAt),O)}`,children:`${N.error} These are the results from ${(0,d.$)(new Date(N.scannedAt),O)}.`}),"unsupported"===N.status&&(0,t.jsx)(i.M,{tone:"info",title:"This machine isn't checked",children:N.error??""}),"error"===N.status&&(0,t.jsx)(i.M,{tone:"danger",title:"The scan failed",children:N.error??"Unknown error."}),(0,t.jsx)(i.N,{title:"This machine",meta:L,children:(0,t.jsxs)("dl",{className:w,children:[(0,t.jsx)("dt",{children:"System"}),(0,t.jsx)("dd",{children:N.system??"Unknown"}),(0,t.jsx)("dt",{children:"Packages"}),(0,t.jsxs)("dd",{children:[N.packages.toLocaleString("en-US")," installed"]}),(0,t.jsx)("dt",{children:"Last scan"}),(0,t.jsx)("dd",{children:(0,d.$)(new Date(N.scannedAt),O)}),null!==N.aptListsAgeHours&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{children:"apt package lists"}),(0,t.jsxs)("dd",{className:N.aptListsAgeHours>48?"text-warn-icon":void 0,children:["updated ",N.aptListsAgeHours<1?"within the hour":`${N.aptListsAgeHours} h ago`,N.aptListsAgeHours>48?": run sudo apt update, or updates may be missing here":""]})]}),!N.failedAt&&"ok"===N.status&&N.error&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{children:"Note"}),(0,t.jsx)("dd",{className:"text-ink-soft",children:N.error})]})]})}),"ok"===N.status&&(0,t.jsxs)(t.Fragment,{children:[N.kernel&&E&&(0,t.jsxs)(i.N,{title:"Kernel",meta:(0,t.jsxs)("a",{href:(b=N.codename??"jammy",`https://ubuntu.com/security/notices?release=${encodeURIComponent(b)}&details=linux`),...C,className:"inline-flex items-center gap-1 text-brand hover:underline",children:["What Ubuntu's kernel updates fix ",(0,t.jsx)(s.f,{size:13,"aria-hidden":!0})]}),children:[(0,t.jsxs)("p",{className:"flex items-start gap-1.5",children:[(0,t.jsx)(u.Z,{state:E.state}),(0,t.jsx)("span",{children:E.text})]}),(0,t.jsxs)("dl",{className:(0,l.f)(w,"mt-2"),children:[(0,t.jsx)("dt",{children:"Running"}),(0,t.jsxs)("dd",{className:v,children:[N.kernel.running??"Unknown",N.kernel.runningVersion?` (${N.kernel.runningVersion})`:""]}),(0,t.jsx)("dt",{children:"Newest installed"}),(0,t.jsx)("dd",{className:v,children:N.kernel.newestInstalled??"Unknown"})]}),E.command&&(0,t.jsx)("div",{className:"mt-2.5",children:(0,t.jsx)($,{text:E.command})}),(0,t.jsx)("p",{className:"mt-2 text-[12.5px] text-ink-faint",children:"Ubuntu tracks thousands of kernel CVEs; running the newest kernel it ships is how they get fixed, so Watchbell doesn't list them one by one."})]}),(0,t.jsx)(i.N,{title:M.length?`Security updates waiting (${M.length})`:"Security updates",meta:M.length?`${W} CVE${1===W?"":"s"} fixed by them`:void 0,flush:!0,children:M.length?(0,t.jsxs)(t.Fragment,{children:[V&&(0,t.jsxs)("div",{className:"px-[18px] pb-3",children:[(0,t.jsx)("p",{className:"mb-1.5 text-[13px] text-ink-soft",children:"Install them all at once:"}),(0,t.jsx)($,{text:V})]}),(0,t.jsx)("ul",{"aria-label":"Security updates waiting",children:M.map(e=>(0,t.jsx)(A,{u:e},e.source))})]}):(0,t.jsxs)("p",{className:"flex items-start gap-1.5 px-[18px] pb-4",children:[(0,t.jsx)(u.Z,{state:"ok"}),(0,t.jsx)("span",{children:"No security update is waiting."})]})}),R.length>0&&(0,t.jsx)(i.N,{flush:!0,children:(0,t.jsxs)("details",{className:"px-[18px] py-3",children:[(0,t.jsxs)("summary",{className:"cursor-pointer select-none font-medium",children:["Other updates (",R.length,")"]}),(0,t.jsx)("p",{className:"mt-1 text-[13px] text-ink-soft",children:"Bug fixes and updates from other repositories; not listed as security fixes."}),(0,t.jsx)("ul",{className:"mt-2 grid gap-1 text-[13px]",children:R.map(e=>(0,t.jsxs)("li",{children:[(0,t.jsx)("b",{className:"font-medium",children:e.source})," ",(0,t.jsxs)("span",{className:(0,l.f)(v,"text-ink-faint"),children:[e.installed," → ",e.candidate]})]},e.source))}),(0,t.jsx)("div",{className:"mt-2.5",children:(0,t.jsx)($,{text:j(R)??""})})]})}),(0,t.jsx)(i.N,{flush:!0,children:(0,t.jsxs)("details",{className:"px-[18px] py-3",children:[(0,t.jsxs)("summary",{className:"cursor-pointer select-none font-medium",children:["No fix yet (",N.backlog.error?"couldn't be read":`${N.backlog.total.toLocaleString("en-US")} advisories in ${H.length} packages`,")"]}),(0,t.jsx)("p",{className:"mt-1 text-[13px] text-ink-soft",children:"Advisories OSV.dev lists for the installed packages without a fix it knows of: often low priority, deferred, or in universe packages Ubuntu doesn't support. Packages with an update waiting are left out (see above). OSV can lag Ubuntu, so open a package to see Ubuntu's current status."}),N.backlog.error?(0,t.jsx)("p",{className:"mt-2 text-ink-soft",children:N.backlog.error}):(0,t.jsxs)("div",{className:"mt-2 overflow-x-auto",children:[(0,t.jsxs)("table",{className:h.o,children:[(0,t.jsx)(h.U,{head:["Package","Advisories",""]}),(0,t.jsx)("tbody",{children:H.slice(0,25).map(([e,n])=>{let a;return(0,t.jsxs)("tr",{className:h.C,children:[(0,t.jsx)("td",{className:(0,l.f)(h.z,v),children:e}),(0,t.jsx)("td",{className:h.z,children:n.toLocaleString("en-US")}),(0,t.jsx)("td",{className:h.z,children:(0,t.jsxs)("a",{href:(a=N.codename??"jammy",`https://ubuntu.com/security/cves?package=${encodeURIComponent(e)}&version=${encodeURIComponent(a)}`),...C,className:"inline-flex items-center gap-1 text-brand hover:underline",children:["Ubuntu's tracker ",(0,t.jsx)(s.f,{size:13,"aria-hidden":!0})]})})]},e)})})]}),H.length>25&&(0,t.jsxs)("p",{className:"mt-1.5 text-[12.5px] text-ink-faint",children:["And ",H.length-25," more packages."]})]})]})})]})]})}],745653)},778085,e=>{var t=e.i(843476),s=e.i(399582),n=e.i(846696),a=e.i(428325);e.s(["CopyButton",0,function({text:e,label:r="Copy"}){async function i(){try{await navigator.clipboard.writeText(e),n.c.success("Copied.")}catch{n.c.error("Couldn't copy. Select the text and copy it by hand.")}}return(0,t.jsxs)(a.K,{size:"sm",onClick:i,children:[(0,t.jsx)(s.f,{size:14,"aria-hidden":!0})," ",r]})}])}])})();
|
|
1
|
+
(()=>{"use strict";(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,399582,e=>{let t=(0,e.i(33550).f)("outline","copy","Copy",[["path",{d:"M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]]);e.s(["f",0,t],399582)},590246,e=>{let t=(0,e.i(33550).f)("outline","external-link","ExternalLink",[["path",{d:"M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6",key:"svg-0"}],["path",{d:"M11 13l9 -9",key:"svg-1"}],["path",{d:"M15 4h5v5",key:"svg-2"}]]);e.s(["f",0,t],590246)},745653,e=>{var t=e.i(843476),s=e.i(590246),n=e.i(105674),a=e.i(271645),r=e.i(778085),i=e.i(428325),l=e.i(975157),d=e.i(684496);let c={CRITICAL:"Critical",HIGH:"High",MODERATE:"Moderate",LOW:"Low",UNKNOWN:"Unknown"},o={CRITICAL:"bg-err-soft text-err",HIGH:"bg-err-soft text-err",MODERATE:"bg-warn-soft text-warn",LOW:"bg-brand-soft text-brand",UNKNOWN:"bg-brand-soft text-brand"};function x({severity:e}){return(0,t.jsx)("span",{className:(0,l.f)("inline-block whitespace-nowrap rounded-[5px] px-2 py-px text-xs font-medium",o[e]),children:c[e]})}o.CRITICAL,o.MODERATE,o.LOW;var u=e.i(220806),h=e.i(691106);let p=e=>/^USN-\d+-\d+$/.test(e)?`https://ubuntu.com/security/notices/${e}`:null;function m(e){let t=e.trim(),s=0,n=t.indexOf(":");n>0&&/^\d+$/.test(t.slice(0,n))&&(s=Number(t.slice(0,n)),t=t.slice(n+1));let a=t.lastIndexOf("-");return a>=0?[s,t.slice(0,a),t.slice(a+1)]:[s,t,""]}function f(e){return void 0===e?0:"~"===e?-1:/[A-Za-z]/.test(e)?e.charCodeAt(0):e.charCodeAt(0)+256}function g(e,t){let s=0,n=0;for(;s<e.length||n<t.length;){for(;s<e.length&&!/\d/.test(e[s])||n<t.length&&!/\d/.test(t[n]);){let a=s<e.length&&!/\d/.test(e[s])?e[s]:void 0,r=n<t.length&&!/\d/.test(t[n])?t[n]:void 0,i=f(a)-f(r);if(0!==i)return i;void 0!==a&&s++,void 0!==r&&n++}let a="",r="";for(;s<e.length&&/\d/.test(e[s]);)a+=e[s++];for(;n<t.length&&/\d/.test(t[n]);)r+=t[n++];if(a=a.replace(/^0+/,""),r=r.replace(/^0+/,""),a.length!==r.length)return a.length-r.length;if(a!==r)return a<r?-1:1}return 0}function j(e){let t=[...new Set(e.flatMap(e=>e.binaries))].sort();return t.length?`sudo apt update && sudo apt install --only-upgrade ${t.join(" ")}`:null}let b=e=>/^CVE-\d{4}-\d{4,}$/.test(e)?`https://nvd.nist.gov/vuln/detail/${e}`:null,N=e=>"number"==typeof e&&Number.isFinite(e)?e.toFixed(1):null;var k=e.i(95187);let y=(0,k.createServerReference)("00f78fe6ac4a0d51efdb651160ecbee92ad739237a",k.callServer,void 0,k.findSourceMapURL,"scanNowAction"),w="grid grid-cols-[170px_minmax(0,1fr)] gap-x-4 gap-y-2 max-[720px]:grid-cols-1 max-[720px]:gap-y-1 [&_dt]:text-ink-soft",v="font-mono text-[12.5px]",C={target:"_blank",rel:"noopener noreferrer"};function $({text:e}){return(0,t.jsxs)("div",{className:"flex min-w-0 items-start gap-2 rounded-md bg-code-bg px-3 py-2",children:[(0,t.jsx)("code",{className:"min-w-0 flex-1 font-mono text-[12px] text-code-text [overflow-wrap:anywhere]",children:e}),(0,t.jsx)(r.CopyButton,{text:e})]})}function A({u:e}){return(0,t.jsxs)("li",{className:"grid gap-2 border-t border-line px-[18px] py-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-baseline gap-x-3 gap-y-0.5",children:[(0,t.jsx)("b",{className:"font-medium",children:e.source}),(0,t.jsxs)("span",{className:(0,l.f)(v,"text-ink-faint [overflow-wrap:anywhere]"),children:[e.installed," → ",e.candidate]}),e.security&&(0,t.jsx)("span",{className:"text-[12px] text-ink-soft",children:"Ubuntu security update"})]}),e.error?(0,t.jsxs)("p",{className:"flex items-start gap-1.5 text-[13px] text-ink-soft",children:[(0,t.jsx)(u.Z,{state:"warn"}),(0,t.jsxs)("span",{children:["Fixed CVEs couldn't be read: ",e.error]})]}):0===e.fixes.length?(0,t.jsx)("p",{className:"text-[13px] text-ink-soft",children:"No CVE listed for this update."}):(0,t.jsx)("ul",{className:"grid gap-2",children:e.fixes.map(e=>{let s,n;return(0,t.jsxs)("li",{className:"min-w-0 rounded-md border border-line px-3 py-2",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,t.jsx)(x,{severity:null===(s=e.cvss3)?"UNKNOWN":s>=9?"CRITICAL":s>=7?"HIGH":s>=4?"MODERATE":s>0?"LOW":"UNKNOWN"}),N(e.cvss3)&&(0,t.jsx)("span",{className:(0,l.f)(v,"font-medium"),title:"CVSS v3 base score",children:N(e.cvss3)}),(0,t.jsx)("a",{href:(n=e.cve,`https://ubuntu.com/security/${n}`),...C,className:(0,l.f)(v,"text-brand hover:underline"),children:e.cve}),e.priority&&(0,t.jsxs)("span",{className:"text-[12px] text-ink-faint",children:["Ubuntu priority: ",e.priority]})]}),e.summary&&(0,t.jsx)("p",{className:"mt-1 text-[13px] text-ink-soft",children:e.summary}),(0,t.jsxs)("div",{className:"mt-1 flex flex-wrap gap-x-3 text-[12.5px]",children:[e.usns.map(e=>p(e)&&(0,t.jsx)("a",{href:p(e),...C,className:"text-brand hover:underline",children:e},e)),b(e.cve)&&(0,t.jsx)("a",{href:b(e.cve),...C,className:"text-brand hover:underline",children:"NVD"})]})]},e.cve)})}),(0,t.jsx)($,{text:`sudo apt update && sudo apt install --only-upgrade ${[...e.binaries].sort().join(" ")}`})]})}e.s(["OsView",0,function({initial:e,owner:r,demo:c,now:o}){var x,p;let f,b,[N,k]=(0,a.useState)(e),[U,S]=(0,a.useState)(null),[T,I]=(0,a.useTransition)(),O=o??new Date,L=r&&!c?(0,t.jsx)(i.K,{size:"sm",variant:N?"secondary":"primary",onClick:()=>I(async()=>{try{let e=await y();e.ok&&e.data?(k(e.data),S(null)):S(e.ok?"No answer.":e.error)}catch{S("Watchbell didn't answer. Check that it's still running, then try again.")}}),disabled:T,children:T?"Scanning… (up to a minute)":"Scan now"}):null;if(!N)return(0,t.jsx)(i.N,{flush:!0,children:(0,t.jsxs)(i.k,{icon:n.f,title:"Not scanned yet",action:L,children:[r?"The daily job scans this machine; Scan now does it right away.":"The daily job scans this machine; the owner can scan now.",U&&(0,t.jsx)("p",{className:"mt-2 text-err",children:U})]})});let{security:M,other:R}=(x=N.updates,f=e=>e.security||e.fixes.length>0||null!==e.error,{security:x.filter(f),other:x.filter(e=>!f(e))}),V=j(M),E=N.kernel?!(p=N.kernel).running||p.runningVersion||p.newestInstalled?p.newestInstalled&&p.runningVersion&&function(e,t){let[s,n,a]=m(e),[r,i,l]=m(t);return s!==r?s-r:g(n,i)||g(a,l)}(p.newestInstalled,p.runningVersion)>0?{state:"warn",text:`Kernel ${p.newestInstalled} is installed, but ${p.runningVersion} is still running. Reboot to run it.`,command:"sudo reboot"}:p.update?{state:"warn",text:`A kernel update is waiting (${p.update.package} ${p.update.candidate}). Install it, then reboot.`,command:"sudo apt update && sudo apt full-upgrade"}:p.reboot.needed?{state:"warn",text:`An update waits for a reboot${p.reboot.packages.length?` (${p.reboot.packages.join(", ")})`:""}.`,command:"sudo reboot"}:{state:"ok",text:"The newest installed kernel is running.",command:null}:{state:"ok",text:`The running kernel (${p.running}) isn't from an Ubuntu package: the host it runs on updates it.`,command:null}:null,H=Object.entries(N.backlog.counts).sort((e,t)=>t[1]-e[1]),W=new Set(M.flatMap(e=>e.fixes.map(e=>e.cve))).size;return(0,t.jsxs)(t.Fragment,{children:[c&&(0,t.jsx)(i.M,{tone:"info",title:"Made-up data: the demo doesn't scan."}),U&&(0,t.jsx)(i.M,{tone:"danger",title:"Scan now failed",children:U}),N.failedAt&&N.error&&(0,t.jsx)(i.M,{tone:"warning",title:`The last scan failed ${(0,d.$)(new Date(N.failedAt),O)}`,children:`${N.error} These are the results from ${(0,d.$)(new Date(N.scannedAt),O)}.`}),"unsupported"===N.status&&(0,t.jsx)(i.M,{tone:"info",title:"This machine isn't checked",children:N.error??""}),"error"===N.status&&(0,t.jsx)(i.M,{tone:"danger",title:"The scan failed",children:N.error??"Unknown error."}),(0,t.jsx)(i.N,{title:"This machine",meta:L,children:(0,t.jsxs)("dl",{className:w,children:[(0,t.jsx)("dt",{children:"System"}),(0,t.jsx)("dd",{children:N.system??"Unknown"}),(0,t.jsx)("dt",{children:"Packages"}),(0,t.jsxs)("dd",{children:[N.packages.toLocaleString("en-US")," installed"]}),(0,t.jsx)("dt",{children:"Last scan"}),(0,t.jsx)("dd",{children:(0,d.$)(new Date(N.scannedAt),O)}),null!==N.aptListsAgeHours&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{children:"apt package lists"}),(0,t.jsxs)("dd",{className:N.aptListsAgeHours>48?"text-warn-icon":void 0,children:["updated ",N.aptListsAgeHours<1?"within the hour":`${N.aptListsAgeHours} h ago`,N.aptListsAgeHours>48?": run sudo apt update, or updates may be missing here":""]})]}),!N.failedAt&&"ok"===N.status&&N.error&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("dt",{children:"Note"}),(0,t.jsx)("dd",{className:"text-ink-soft",children:N.error})]})]})}),"ok"===N.status&&(0,t.jsxs)(t.Fragment,{children:[N.kernel&&E&&(0,t.jsxs)(i.N,{title:"Kernel",meta:(0,t.jsxs)("a",{href:(b=N.codename??"jammy",`https://ubuntu.com/security/notices?release=${encodeURIComponent(b)}&details=linux`),...C,className:"inline-flex items-center gap-1 text-brand hover:underline",children:["What Ubuntu's kernel updates fix ",(0,t.jsx)(s.f,{size:13,"aria-hidden":!0})]}),children:[(0,t.jsxs)("p",{className:"flex items-start gap-1.5",children:[(0,t.jsx)(u.Z,{state:E.state}),(0,t.jsx)("span",{children:E.text})]}),(0,t.jsxs)("dl",{className:(0,l.f)(w,"mt-2"),children:[(0,t.jsx)("dt",{children:"Running"}),(0,t.jsxs)("dd",{className:v,children:[N.kernel.running??"Unknown",N.kernel.runningVersion?` (${N.kernel.runningVersion})`:""]}),(0,t.jsx)("dt",{children:"Newest installed"}),(0,t.jsx)("dd",{className:v,children:N.kernel.newestInstalled??"Unknown"})]}),E.command&&(0,t.jsx)("div",{className:"mt-2.5",children:(0,t.jsx)($,{text:E.command})}),(0,t.jsx)("p",{className:"mt-2 text-[12.5px] text-ink-faint",children:"Ubuntu tracks thousands of kernel CVEs; running the newest kernel it ships is how they get fixed, so Watchbell doesn't list them one by one."})]}),(0,t.jsx)(i.N,{title:M.length?`Security updates waiting (${M.length})`:"Security updates",meta:M.length?`${W} CVE${1===W?"":"s"} fixed by them`:void 0,flush:!0,children:M.length?(0,t.jsxs)(t.Fragment,{children:[V&&(0,t.jsxs)("div",{className:"px-[18px] pb-3",children:[(0,t.jsx)("p",{className:"mb-1.5 text-[13px] text-ink-soft",children:"Install them all at once:"}),(0,t.jsx)($,{text:V})]}),(0,t.jsx)("ul",{"aria-label":"Security updates waiting",children:M.map(e=>(0,t.jsx)(A,{u:e},e.source))})]}):(0,t.jsxs)("p",{className:"flex items-start gap-1.5 px-[18px] pb-4",children:[(0,t.jsx)(u.Z,{state:"ok"}),(0,t.jsx)("span",{children:"No security update is waiting."})]})}),R.length>0&&(0,t.jsx)(i.N,{flush:!0,children:(0,t.jsxs)("details",{className:"px-[18px] py-3",children:[(0,t.jsxs)("summary",{className:"cursor-pointer select-none font-medium",children:["Other updates (",R.length,")"]}),(0,t.jsx)("p",{className:"mt-1 text-[13px] text-ink-soft",children:"Bug fixes and updates from other repositories; not listed as security fixes."}),(0,t.jsx)("ul",{className:"mt-2 grid gap-1 text-[13px]",children:R.map(e=>(0,t.jsxs)("li",{children:[(0,t.jsx)("b",{className:"font-medium",children:e.source})," ",(0,t.jsxs)("span",{className:(0,l.f)(v,"text-ink-faint"),children:[e.installed," → ",e.candidate]})]},e.source))}),(0,t.jsx)("div",{className:"mt-2.5",children:(0,t.jsx)($,{text:j(R)??""})})]})}),(0,t.jsx)(i.N,{flush:!0,children:(0,t.jsxs)("details",{className:"px-[18px] py-3",children:[(0,t.jsxs)("summary",{className:"cursor-pointer select-none font-medium",children:["No fix yet (",N.backlog.error?"couldn't be read":`${N.backlog.total.toLocaleString("en-US")} advisories in ${H.length} packages`,")"]}),(0,t.jsx)("p",{className:"mt-1 text-[13px] text-ink-soft",children:"Advisories OSV.dev lists for the installed packages without a fix it knows of: often low priority, deferred, or in universe packages Ubuntu doesn't support. Packages with an update waiting are left out (see above). OSV can lag Ubuntu, so open a package to see Ubuntu's current status."}),N.backlog.error?(0,t.jsx)("p",{className:"mt-2 text-ink-soft",children:N.backlog.error}):(0,t.jsxs)("div",{className:"mt-2 overflow-x-auto",children:[(0,t.jsxs)("table",{className:h.o,children:[(0,t.jsx)(h.U,{head:["Package","Advisories",""]}),(0,t.jsx)("tbody",{children:H.slice(0,25).map(([e,n])=>{let a;return(0,t.jsxs)("tr",{className:h.C,children:[(0,t.jsx)("td",{className:(0,l.f)(h.z,v),children:e}),(0,t.jsx)("td",{className:h.z,children:n.toLocaleString("en-US")}),(0,t.jsx)("td",{className:h.z,children:(0,t.jsxs)("a",{href:(a=N.codename??"jammy",`https://ubuntu.com/security/cves?package=${encodeURIComponent(e)}&version=${encodeURIComponent(a)}`),...C,className:"inline-flex items-center gap-1 text-brand hover:underline",children:["Ubuntu's tracker ",(0,t.jsx)(s.f,{size:13,"aria-hidden":!0})]})})]},e)})})]}),H.length>25&&(0,t.jsxs)("p",{className:"mt-1.5 text-[12.5px] text-ink-faint",children:["And ",H.length-25," more packages."]})]})]})})]})]})}],745653)},778085,e=>{var t=e.i(843476),s=e.i(399582),n=e.i(846696),a=e.i(428325);e.s(["CopyButton",0,function({text:e,label:r="Copy"}){async function i(){try{await navigator.clipboard.writeText(e),n.c.success("Copied.")}catch{n.c.error("Couldn't copy. Select the text and copy it by hand.")}}return(0,t.jsxs)(a.K,{size:"sm",onClick:i,children:[(0,t.jsx)(s.f,{size:14,"aria-hidden":!0})," ",r]})}])}])})();
|