watchbell 1.2.0 → 1.2.2

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.
Files changed (1509) hide show
  1. package/README.md +36 -13
  2. package/bin/watchbell.mjs +731 -44
  3. package/package.json +1 -1
  4. package/scripts/node-runtime.mjs +166 -0
  5. package/scripts/selfhost-log.mjs +116 -0
  6. package/server/.next/BUILD_ID +1 -1
  7. package/server/.next/app-path-routes-manifest.json +1 -2
  8. package/server/.next/build-manifest.json +3 -14
  9. package/server/.next/prerender-manifest.json +9 -9
  10. package/server/.next/required-server-files.json +1 -1
  11. package/server/.next/routes-manifest.json +14 -18
  12. package/server/.next/server/app/(console)/(private)/ai/agents/page/server-reference-manifest.json +11 -11
  13. package/server/.next/server/app/(console)/(private)/ai/agents/page.js +77 -66
  14. package/server/.next/server/app/(console)/(private)/ai/agents/page.js.nft.json +1 -1
  15. package/server/.next/server/app/(console)/(private)/ai/agents/page_client-reference-manifest.js +1 -1
  16. package/server/.next/server/app/(console)/(private)/ai/ask/page/server-reference-manifest.json +10 -10
  17. package/server/.next/server/app/(console)/(private)/ai/ask/page.js +77 -66
  18. package/server/.next/server/app/(console)/(private)/ai/ask/page.js.nft.json +1 -1
  19. package/server/.next/server/app/(console)/(private)/ai/ask/page_client-reference-manifest.js +1 -1
  20. package/server/.next/server/app/(console)/(private)/ai/connect/page/server-reference-manifest.json +9 -9
  21. package/server/.next/server/app/(console)/(private)/ai/connect/page.js +77 -66
  22. package/server/.next/server/app/(console)/(private)/ai/connect/page.js.nft.json +1 -1
  23. package/server/.next/server/app/(console)/(private)/ai/connect/page_client-reference-manifest.js +1 -1
  24. package/server/.next/server/app/(console)/(private)/ai/keys/page/server-reference-manifest.json +12 -12
  25. package/server/.next/server/app/(console)/(private)/ai/keys/page.js +77 -66
  26. package/server/.next/server/app/(console)/(private)/ai/keys/page.js.nft.json +1 -1
  27. package/server/.next/server/app/(console)/(private)/ai/keys/page_client-reference-manifest.js +1 -1
  28. package/server/.next/server/app/(console)/(private)/ai/logs/page/server-reference-manifest.json +10 -10
  29. package/server/.next/server/app/(console)/(private)/ai/logs/page.js +77 -66
  30. package/server/.next/server/app/(console)/(private)/ai/logs/page.js.nft.json +1 -1
  31. package/server/.next/server/app/(console)/(private)/ai/logs/page_client-reference-manifest.js +1 -1
  32. package/server/.next/server/app/(console)/(private)/ai/models/page/server-reference-manifest.json +19 -19
  33. package/server/.next/server/app/(console)/(private)/ai/models/page.js +77 -66
  34. package/server/.next/server/app/(console)/(private)/ai/models/page.js.nft.json +1 -1
  35. package/server/.next/server/app/(console)/(private)/ai/models/page_client-reference-manifest.js +1 -1
  36. package/server/.next/server/app/(console)/(private)/ai/page/server-reference-manifest.json +9 -9
  37. package/server/.next/server/app/(console)/(private)/ai/page.js +77 -66
  38. package/server/.next/server/app/(console)/(private)/ai/page.js.nft.json +1 -1
  39. package/server/.next/server/app/(console)/(private)/ai/page_client-reference-manifest.js +1 -1
  40. package/server/.next/server/app/(console)/(private)/ai/playground/page/server-reference-manifest.json +12 -12
  41. package/server/.next/server/app/(console)/(private)/ai/playground/page.js +77 -66
  42. package/server/.next/server/app/(console)/(private)/ai/playground/page.js.nft.json +1 -1
  43. package/server/.next/server/app/(console)/(private)/ai/playground/page_client-reference-manifest.js +1 -1
  44. package/server/.next/server/app/(console)/(private)/ai/providers/page/server-reference-manifest.json +15 -15
  45. package/server/.next/server/app/(console)/(private)/ai/providers/page.js +77 -66
  46. package/server/.next/server/app/(console)/(private)/ai/providers/page.js.nft.json +1 -1
  47. package/server/.next/server/app/(console)/(private)/ai/providers/page_client-reference-manifest.js +1 -1
  48. package/server/.next/server/app/(console)/(private)/ai/quota/page/server-reference-manifest.json +10 -10
  49. package/server/.next/server/app/(console)/(private)/ai/quota/page.js +77 -66
  50. package/server/.next/server/app/(console)/(private)/ai/quota/page.js.nft.json +1 -1
  51. package/server/.next/server/app/(console)/(private)/ai/quota/page_client-reference-manifest.js +1 -1
  52. package/server/.next/server/app/(console)/(private)/ai/usage/page/server-reference-manifest.json +10 -10
  53. package/server/.next/server/app/(console)/(private)/ai/usage/page.js +77 -66
  54. package/server/.next/server/app/(console)/(private)/ai/usage/page.js.nft.json +1 -1
  55. package/server/.next/server/app/(console)/(private)/ai/usage/page_client-reference-manifest.js +1 -1
  56. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page/server-reference-manifest.json +9 -9
  57. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js +77 -66
  58. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js.nft.json +1 -1
  59. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page_client-reference-manifest.js +1 -1
  60. package/server/.next/server/app/(console)/(private)/auto-actions/page/server-reference-manifest.json +10 -10
  61. package/server/.next/server/app/(console)/(private)/auto-actions/page.js +77 -66
  62. package/server/.next/server/app/(console)/(private)/auto-actions/page.js.nft.json +1 -1
  63. package/server/.next/server/app/(console)/(private)/auto-actions/page_client-reference-manifest.js +1 -1
  64. package/server/.next/server/app/(console)/alerts/page/server-reference-manifest.json +22 -22
  65. package/server/.next/server/app/(console)/alerts/page.js +77 -66
  66. package/server/.next/server/app/(console)/alerts/page.js.nft.json +1 -1
  67. package/server/.next/server/app/(console)/alerts/page_client-reference-manifest.js +1 -1
  68. package/server/.next/server/app/(console)/apps/[id]/page/server-reference-manifest.json +53 -23
  69. package/server/.next/server/app/(console)/apps/[id]/page.js +84 -73
  70. package/server/.next/server/app/(console)/apps/[id]/page.js.nft.json +1 -1
  71. package/server/.next/server/app/(console)/apps/[id]/page_client-reference-manifest.js +1 -1
  72. package/server/.next/server/app/(console)/apps/page/server-reference-manifest.json +32 -22
  73. package/server/.next/server/app/(console)/apps/page.js +83 -71
  74. package/server/.next/server/app/(console)/apps/page.js.nft.json +1 -1
  75. package/server/.next/server/app/(console)/apps/page_client-reference-manifest.js +1 -1
  76. package/server/.next/server/app/(console)/backups/page/server-reference-manifest.json +12 -12
  77. package/server/.next/server/app/(console)/backups/page.js +77 -66
  78. package/server/.next/server/app/(console)/backups/page.js.nft.json +1 -1
  79. package/server/.next/server/app/(console)/backups/page_client-reference-manifest.js +1 -1
  80. package/server/.next/server/app/(console)/catalog/page/server-reference-manifest.json +9 -9
  81. package/server/.next/server/app/(console)/catalog/page.js +77 -66
  82. package/server/.next/server/app/(console)/catalog/page.js.nft.json +1 -1
  83. package/server/.next/server/app/(console)/catalog/page_client-reference-manifest.js +1 -1
  84. package/server/.next/server/app/(console)/connections/page/server-reference-manifest.json +20 -20
  85. package/server/.next/server/app/(console)/connections/page.js +77 -66
  86. package/server/.next/server/app/(console)/connections/page.js.nft.json +1 -1
  87. package/server/.next/server/app/(console)/connections/page_client-reference-manifest.js +1 -1
  88. package/server/.next/server/app/(console)/d1/page/server-reference-manifest.json +9 -9
  89. package/server/.next/server/app/(console)/d1/page.js +78 -67
  90. package/server/.next/server/app/(console)/d1/page.js.nft.json +1 -1
  91. package/server/.next/server/app/(console)/d1/page_client-reference-manifest.js +1 -1
  92. package/server/.next/server/app/(console)/deployments/page/server-reference-manifest.json +24 -14
  93. package/server/.next/server/app/(console)/deployments/page.js +77 -66
  94. package/server/.next/server/app/(console)/deployments/page.js.nft.json +1 -1
  95. package/server/.next/server/app/(console)/deployments/page_client-reference-manifest.js +1 -1
  96. package/server/.next/server/app/(console)/dns/page/server-reference-manifest.json +16 -16
  97. package/server/.next/server/app/(console)/dns/page.js +77 -66
  98. package/server/.next/server/app/(console)/dns/page.js.nft.json +1 -1
  99. package/server/.next/server/app/(console)/dns/page_client-reference-manifest.js +1 -1
  100. package/server/.next/server/app/(console)/domains/page/server-reference-manifest.json +11 -11
  101. package/server/.next/server/app/(console)/domains/page.js +77 -66
  102. package/server/.next/server/app/(console)/domains/page.js.nft.json +1 -1
  103. package/server/.next/server/app/(console)/domains/page_client-reference-manifest.js +1 -1
  104. package/server/.next/server/app/(console)/events/page/server-reference-manifest.json +9 -9
  105. package/server/.next/server/app/(console)/events/page.js +77 -66
  106. package/server/.next/server/app/(console)/events/page.js.nft.json +1 -1
  107. package/server/.next/server/app/(console)/events/page_client-reference-manifest.js +1 -1
  108. package/server/.next/server/app/(console)/firebase/page/server-reference-manifest.json +40 -30
  109. package/server/.next/server/app/(console)/firebase/page.js +82 -71
  110. package/server/.next/server/app/(console)/firebase/page.js.nft.json +1 -1
  111. package/server/.next/server/app/(console)/firebase/page_client-reference-manifest.js +1 -1
  112. package/server/.next/server/app/(console)/logs/page/server-reference-manifest.json +10 -10
  113. package/server/.next/server/app/(console)/logs/page.js +78 -67
  114. package/server/.next/server/app/(console)/logs/page.js.nft.json +1 -1
  115. package/server/.next/server/app/(console)/logs/page_client-reference-manifest.js +1 -1
  116. package/server/.next/server/app/(console)/manage/sections/page/server-reference-manifest.json +10 -10
  117. package/server/.next/server/app/(console)/manage/sections/page.js +77 -66
  118. package/server/.next/server/app/(console)/manage/sections/page.js.nft.json +1 -1
  119. package/server/.next/server/app/(console)/manage/sections/page_client-reference-manifest.js +1 -1
  120. package/server/.next/server/app/(console)/neon/page/server-reference-manifest.json +20 -20
  121. package/server/.next/server/app/(console)/neon/page.js +77 -66
  122. package/server/.next/server/app/(console)/neon/page.js.nft.json +1 -1
  123. package/server/.next/server/app/(console)/neon/page_client-reference-manifest.js +1 -1
  124. package/server/.next/server/app/(console)/overview/page/server-reference-manifest.json +44 -34
  125. package/server/.next/server/app/(console)/overview/page.js +84 -72
  126. package/server/.next/server/app/(console)/overview/page.js.nft.json +1 -1
  127. package/server/.next/server/app/(console)/overview/page_client-reference-manifest.js +1 -1
  128. package/server/.next/server/app/(console)/repos/[id]/page/server-reference-manifest.json +10 -10
  129. package/server/.next/server/app/(console)/repos/[id]/page.js +77 -66
  130. package/server/.next/server/app/(console)/repos/[id]/page.js.nft.json +1 -1
  131. package/server/.next/server/app/(console)/repos/[id]/page_client-reference-manifest.js +1 -1
  132. package/server/.next/server/app/(console)/repos/page/server-reference-manifest.json +9 -9
  133. package/server/.next/server/app/(console)/repos/page.js +77 -66
  134. package/server/.next/server/app/(console)/repos/page.js.nft.json +1 -1
  135. package/server/.next/server/app/(console)/repos/page_client-reference-manifest.js +1 -1
  136. package/server/.next/server/app/(console)/settings/page/server-reference-manifest.json +19 -19
  137. package/server/.next/server/app/(console)/settings/page.js +77 -66
  138. package/server/.next/server/app/(console)/settings/page.js.nft.json +1 -1
  139. package/server/.next/server/app/(console)/settings/page_client-reference-manifest.js +1 -1
  140. package/server/.next/server/app/(console)/sql/page/server-reference-manifest.json +16 -16
  141. package/server/.next/server/app/(console)/sql/page.js +77 -66
  142. package/server/.next/server/app/(console)/sql/page.js.nft.json +1 -1
  143. package/server/.next/server/app/(console)/sql/page_client-reference-manifest.js +1 -1
  144. package/server/.next/server/app/(console)/status/page/server-reference-manifest.json +9 -9
  145. package/server/.next/server/app/(console)/status/page.js +77 -66
  146. package/server/.next/server/app/(console)/status/page.js.nft.json +1 -1
  147. package/server/.next/server/app/(console)/status/page_client-reference-manifest.js +1 -1
  148. package/server/.next/server/app/(console)/supabase/page/server-reference-manifest.json +39 -29
  149. package/server/.next/server/app/(console)/supabase/page.js +77 -66
  150. package/server/.next/server/app/(console)/supabase/page.js.nft.json +1 -1
  151. package/server/.next/server/app/(console)/supabase/page_client-reference-manifest.js +1 -1
  152. package/server/.next/server/app/(console)/topology/page/server-reference-manifest.json +9 -9
  153. package/server/.next/server/app/(console)/topology/page.js +77 -66
  154. package/server/.next/server/app/(console)/topology/page.js.nft.json +1 -1
  155. package/server/.next/server/app/(console)/topology/page_client-reference-manifest.js +1 -1
  156. package/server/.next/server/app/(console)/turso/page/server-reference-manifest.json +9 -9
  157. package/server/.next/server/app/(console)/turso/page.js +77 -66
  158. package/server/.next/server/app/(console)/turso/page.js.nft.json +1 -1
  159. package/server/.next/server/app/(console)/turso/page_client-reference-manifest.js +1 -1
  160. package/server/.next/server/app/(console)/upstash/page/server-reference-manifest.json +9 -9
  161. package/server/.next/server/app/(console)/upstash/page.js +77 -66
  162. package/server/.next/server/app/(console)/upstash/page.js.nft.json +1 -1
  163. package/server/.next/server/app/(console)/upstash/page_client-reference-manifest.js +1 -1
  164. package/server/.next/server/app/(console)/uptime/page/server-reference-manifest.json +32 -22
  165. package/server/.next/server/app/(console)/uptime/page.js +81 -70
  166. package/server/.next/server/app/(console)/uptime/page.js.nft.json +1 -1
  167. package/server/.next/server/app/(console)/uptime/page_client-reference-manifest.js +1 -1
  168. package/server/.next/server/app/(console)/welcome/page/server-reference-manifest.json +14 -14
  169. package/server/.next/server/app/(console)/welcome/page.js +77 -66
  170. package/server/.next/server/app/(console)/welcome/page.js.nft.json +1 -1
  171. package/server/.next/server/app/(console)/welcome/page_client-reference-manifest.js +1 -1
  172. package/server/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  173. package/server/.next/server/app/_global-error/page.js +5 -5
  174. package/server/.next/server/app/_global-error/page.js.nft.json +1 -1
  175. package/server/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  176. package/server/.next/server/app/_global-error.html +1 -1
  177. package/server/.next/server/app/_global-error.rsc +5 -6
  178. package/server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +6 -7
  179. package/server/.next/server/app/_global-error.segments/_full.segment.rsc +5 -6
  180. package/server/.next/server/app/_global-error.segments/_tree.segment.rsc +2 -2
  181. package/server/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  182. package/server/.next/server/app/_not-found/page.js +5 -5
  183. package/server/.next/server/app/_not-found/page.js.nft.json +1 -1
  184. package/server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  185. package/server/.next/server/app/_not-found.html +1 -1
  186. package/server/.next/server/app/_not-found.rsc +6 -6
  187. package/server/.next/server/app/_not-found.segments/_full.segment.rsc +6 -6
  188. package/server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +4 -4
  189. package/server/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  190. package/server/.next/server/app/account/password/page/server-reference-manifest.json +2 -2
  191. package/server/.next/server/app/account/password/page.js +12 -10
  192. package/server/.next/server/app/account/password/page.js.nft.json +1 -1
  193. package/server/.next/server/app/account/password/page_client-reference-manifest.js +1 -1
  194. package/server/.next/server/app/api/collect/route/server-reference-manifest.json +7 -7
  195. package/server/.next/server/app/api/collect/route.js +87 -80
  196. package/server/.next/server/app/api/collect/route.js.nft.json +1 -1
  197. package/server/.next/server/app/api/daily/route/server-reference-manifest.json +7 -7
  198. package/server/.next/server/app/api/daily/route.js +90 -83
  199. package/server/.next/server/app/api/daily/route.js.nft.json +1 -1
  200. package/server/.next/server/app/api/ping/[...parts]/route.js +7 -6
  201. package/server/.next/server/app/api/ping/[...parts]/route.js.nft.json +1 -1
  202. package/server/.next/server/app/api/status/route.js +1 -1
  203. package/server/.next/server/app/api/status/route.js.nft.json +1 -1
  204. package/server/.next/server/app/api/telegram/webhook/route/server-reference-manifest.json +7 -7
  205. package/server/.next/server/app/api/telegram/webhook/route.js +84 -77
  206. package/server/.next/server/app/api/telegram/webhook/route.js.nft.json +1 -1
  207. package/server/.next/server/app/api/v1/advice/route.js +23 -22
  208. package/server/.next/server/app/api/v1/advice/route.js.nft.json +1 -1
  209. package/server/.next/server/app/api/v1/ai/chat/completions/route.js +11 -10
  210. package/server/.next/server/app/api/v1/ai/chat/completions/route.js.nft.json +1 -1
  211. package/server/.next/server/app/api/v1/ai/models/route.js +11 -10
  212. package/server/.next/server/app/api/v1/ai/models/route.js.nft.json +1 -1
  213. package/server/.next/server/app/api/v1/ai/questions/[id]/route.js +13 -12
  214. package/server/.next/server/app/api/v1/ai/questions/[id]/route.js.nft.json +1 -1
  215. package/server/.next/server/app/api/v1/ai/questions/route.js +27 -26
  216. package/server/.next/server/app/api/v1/ai/questions/route.js.nft.json +1 -1
  217. package/server/.next/server/app/api/v1/mcp/route.js +26 -25
  218. package/server/.next/server/app/api/v1/mcp/route.js.nft.json +1 -1
  219. package/server/.next/server/app/api/v1/me/route.js +10 -9
  220. package/server/.next/server/app/api/v1/me/route.js.nft.json +1 -1
  221. package/server/.next/server/app/api/v1/openapi.json/route.js +7 -6
  222. package/server/.next/server/app/api/v1/openapi.json/route.js.nft.json +1 -1
  223. package/server/.next/server/app/api/v1/status/apps/[app]/route.js +22 -21
  224. package/server/.next/server/app/api/v1/status/apps/[app]/route.js.nft.json +1 -1
  225. package/server/.next/server/app/api/v1/status/route.js +22 -21
  226. package/server/.next/server/app/api/v1/status/route.js.nft.json +1 -1
  227. package/server/.next/server/app/api/watchdog/route.js +20 -20
  228. package/server/.next/server/app/api/watchdog/route.js.nft.json +1 -1
  229. package/server/.next/server/app/auth/confirm/route.js +1 -1
  230. package/server/.next/server/app/auth/confirm/route.js.nft.json +1 -1
  231. package/server/.next/server/app/auth/google/callback/route.js +3 -3
  232. package/server/.next/server/app/auth/google/callback/route.js.nft.json +1 -1
  233. package/server/.next/server/app/auth/google/create/callback/route.js +1 -1
  234. package/server/.next/server/app/auth/google/create/callback/route.js.nft.json +1 -1
  235. package/server/.next/server/app/auth/not-member/route.js +1 -1
  236. package/server/.next/server/app/auth/not-member/route.js.nft.json +1 -1
  237. package/server/.next/server/app/auth/session-ended/route.js +1 -1
  238. package/server/.next/server/app/auth/session-ended/route.js.nft.json +1 -1
  239. package/server/.next/server/app/icon.svg/route/app-paths-manifest.json +3 -0
  240. package/server/.next/server/app/icon.svg/route.js +12 -0
  241. package/server/.next/server/app/icon.svg/route.js.nft.json +1 -0
  242. package/server/.next/server/app/icon.svg.body +17 -0
  243. package/server/.next/server/app/icon.svg.meta +1 -0
  244. package/server/.next/server/app/invite/page/server-reference-manifest.json +2 -2
  245. package/server/.next/server/app/invite/page.js +12 -11
  246. package/server/.next/server/app/invite/page.js.nft.json +1 -1
  247. package/server/.next/server/app/invite/page_client-reference-manifest.js +1 -1
  248. package/server/.next/server/app/mfa/page/server-reference-manifest.json +2 -2
  249. package/server/.next/server/app/mfa/page.js +33 -18
  250. package/server/.next/server/app/mfa/page.js.nft.json +1 -1
  251. package/server/.next/server/app/mfa/page_client-reference-manifest.js +1 -1
  252. package/server/.next/server/app/mfa/setup/page/server-reference-manifest.json +3 -3
  253. package/server/.next/server/app/mfa/setup/page.js +33 -18
  254. package/server/.next/server/app/mfa/setup/page.js.nft.json +1 -1
  255. package/server/.next/server/app/mfa/setup/page_client-reference-manifest.js +1 -1
  256. package/server/.next/server/app/page/server-reference-manifest.json +1 -1
  257. package/server/.next/server/app/page.js +6 -6
  258. package/server/.next/server/app/page.js.nft.json +1 -1
  259. package/server/.next/server/app/page_client-reference-manifest.js +1 -1
  260. package/server/.next/server/app/s/[slug]/badge/[file]/route.js.nft.json +1 -1
  261. package/server/.next/server/app/s/[slug]/page/server-reference-manifest.json +1 -1
  262. package/server/.next/server/app/s/[slug]/page.js +15 -12
  263. package/server/.next/server/app/s/[slug]/page.js.nft.json +1 -1
  264. package/server/.next/server/app/s/[slug]/page_client-reference-manifest.js +1 -1
  265. package/server/.next/server/app/setup/page/server-reference-manifest.json +2 -2
  266. package/server/.next/server/app/setup/page.js +7 -6
  267. package/server/.next/server/app/setup/page.js.nft.json +1 -1
  268. package/server/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  269. package/server/.next/server/app/signin/page/server-reference-manifest.json +3 -3
  270. package/server/.next/server/app/signin/page.js +33 -19
  271. package/server/.next/server/app/signin/page.js.nft.json +1 -1
  272. package/server/.next/server/app/signin/page_client-reference-manifest.js +1 -1
  273. package/server/.next/server/app-paths-manifest.json +1 -2
  274. package/server/.next/server/chunks/[externals]__0y_x27mdj85p4._.js +3 -0
  275. package/server/.next/server/chunks/[externals]__1fzfzd0ia0sk6._.js +3 -0
  276. package/server/.next/server/chunks/[externals]__1qqyrxnupegg3._.js +3 -0
  277. package/server/.next/server/chunks/[root-of-the-server]__0-ytbad9hn7uc._.js +3 -0
  278. package/server/.next/server/chunks/[root-of-the-server]__0032rbj2s87zo._.js +3 -0
  279. package/server/.next/server/chunks/[root-of-the-server]__01dj-ln12bcmb._.js +3 -0
  280. package/server/.next/server/chunks/[root-of-the-server]__01vos42kjq9nn._.js +3 -0
  281. package/server/.next/server/chunks/[root-of-the-server]__01yzy5zxsekxi._.js +3 -0
  282. package/server/.next/server/chunks/[root-of-the-server]__02ldm_7l9zld8._.js +1 -1
  283. package/server/.next/server/chunks/[root-of-the-server]__02v25dn1cwxz6._.js +3 -0
  284. package/server/.next/server/chunks/[root-of-the-server]__03276vwi4jgvk._.js +1 -1
  285. package/server/.next/server/chunks/[root-of-the-server]__03i6yscmtbhhg._.js +3 -0
  286. package/server/.next/server/chunks/[root-of-the-server]__042oh4vbosg_5._.js +3 -0
  287. package/server/.next/server/chunks/[root-of-the-server]__04ogdmf82__0g._.js +3 -0
  288. package/server/.next/server/chunks/[root-of-the-server]__04oipax0jupxr._.js +3 -0
  289. package/server/.next/server/chunks/[root-of-the-server]__05qcc-0e8z1u8._.js +3 -0
  290. package/server/.next/server/chunks/[root-of-the-server]__05zj7uswzr0f9._.js +3 -0
  291. package/server/.next/server/chunks/[root-of-the-server]__06jihgo98ek4u._.js +3 -0
  292. package/server/.next/server/chunks/[root-of-the-server]__07bw6o0jc31yr._.js +3 -0
  293. package/server/.next/server/chunks/[root-of-the-server]__07eo--c90cju2._.js +3 -0
  294. package/server/.next/server/chunks/[root-of-the-server]__07mzeijv31avl._.js +3 -0
  295. package/server/.next/server/chunks/[root-of-the-server]__08vrztky3u2ri._.js +3 -0
  296. package/server/.next/server/chunks/[root-of-the-server]__090in165mp6av._.js +3 -0
  297. package/server/.next/server/chunks/[root-of-the-server]__0_nljmqhjcept._.js +3 -0
  298. package/server/.next/server/chunks/[root-of-the-server]__0ab040lxtt8_d._.js +3 -0
  299. package/server/.next/server/chunks/[root-of-the-server]__0awtaloe4_8am._.js +3 -0
  300. package/server/.next/server/chunks/[root-of-the-server]__0bvdnvpw43au9._.js +3 -0
  301. package/server/.next/server/chunks/[root-of-the-server]__0dltcr407-ow6._.js +3 -0
  302. package/server/.next/server/chunks/[root-of-the-server]__0dsy-9ts8s-pn._.js +3 -0
  303. package/server/.next/server/chunks/[root-of-the-server]__0f5bt0o1k41ft._.js +3 -0
  304. package/server/.next/server/chunks/[root-of-the-server]__0fyucqcukadyv._.js +3 -0
  305. package/server/.next/server/chunks/[root-of-the-server]__0g1cifa7hd790._.js +3 -0
  306. package/server/.next/server/chunks/[root-of-the-server]__0gb4uz-gv3va0._.js +3 -0
  307. package/server/.next/server/chunks/[root-of-the-server]__0gm_zyr-kdgc_._.js +3 -0
  308. package/server/.next/server/chunks/[root-of-the-server]__0gqye-fi-f3zk._.js +3 -0
  309. package/server/.next/server/chunks/[root-of-the-server]__0hblpf7wqke-j._.js +3 -0
  310. package/server/.next/server/chunks/[root-of-the-server]__0hedtycoyydoc._.js +3 -0
  311. package/server/.next/server/chunks/[root-of-the-server]__0hlyn_aj72sn5._.js +3 -0
  312. package/server/.next/server/chunks/[root-of-the-server]__0hnljrh9qi9t-._.js +3 -0
  313. package/server/.next/server/chunks/[root-of-the-server]__0hrtz5c_46jkw._.js +3 -0
  314. package/server/.next/server/chunks/[root-of-the-server]__0ihedjvt-l2-u._.js +3 -0
  315. package/server/.next/server/chunks/[root-of-the-server]__0iicsi0n7tfa5._.js +3 -0
  316. package/server/.next/server/chunks/[root-of-the-server]__0iwp0lu-5xco7._.js +3 -0
  317. package/server/.next/server/chunks/[root-of-the-server]__0k7o0hgdraix2._.js +3 -0
  318. package/server/.next/server/chunks/[root-of-the-server]__0kk-m8_ul4f4k._.js +3 -0
  319. package/server/.next/server/chunks/[root-of-the-server]__0kp0yx909wtab._.js +3 -0
  320. package/server/.next/server/chunks/[root-of-the-server]__0kt0hjvyklnk8._.js +3 -0
  321. package/server/.next/server/chunks/[root-of-the-server]__0kzpzdkpz_nt0._.js +3 -0
  322. package/server/.next/server/chunks/[root-of-the-server]__0l601p_x_1hm7._.js +3 -0
  323. package/server/.next/server/chunks/[root-of-the-server]__0l6_iao04u72h._.js +3 -0
  324. package/server/.next/server/chunks/[root-of-the-server]__0l9ja3579qrju._.js +3 -0
  325. package/server/.next/server/chunks/[root-of-the-server]__0lu91s5izfu0p._.js +3 -0
  326. package/server/.next/server/chunks/[root-of-the-server]__0noc6l63d3l9w._.js +3 -0
  327. package/server/.next/server/chunks/[root-of-the-server]__0nrg8zzqizk69._.js +3 -0
  328. package/server/.next/server/chunks/[root-of-the-server]__0nssu45m4c8t1._.js +3 -0
  329. package/server/.next/server/chunks/[root-of-the-server]__0o1-xb-h4iivi._.js +3 -0
  330. package/server/.next/server/chunks/[root-of-the-server]__0o6q27cnw6-77._.js +3 -0
  331. package/server/.next/server/chunks/[root-of-the-server]__0oy0hcm48kl-q._.js +3 -0
  332. package/server/.next/server/chunks/[root-of-the-server]__0po8f1pcqi-db._.js +3 -0
  333. package/server/.next/server/chunks/[root-of-the-server]__0q-x05ekhpohj._.js +3 -0
  334. package/server/.next/server/chunks/[root-of-the-server]__0r1men25anfgb._.js +3 -0
  335. package/server/.next/server/chunks/[root-of-the-server]__0rpnd7cjqloa-._.js +3 -0
  336. package/server/.next/server/chunks/[root-of-the-server]__0s8vjz6urzn76._.js +3 -0
  337. package/server/.next/server/chunks/[root-of-the-server]__0so_ihc-5tp14._.js +3 -0
  338. package/server/.next/server/chunks/[root-of-the-server]__0t6dea8voaamp._.js +3 -0
  339. package/server/.next/server/chunks/[root-of-the-server]__0twr9duara46x._.js +3 -0
  340. package/server/.next/server/chunks/[root-of-the-server]__0u1wg-wnnhofm._.js +3 -0
  341. package/server/.next/server/chunks/[root-of-the-server]__0u3un538__ca5._.js +3 -0
  342. package/server/.next/server/chunks/[root-of-the-server]__0uz_r72zdnwdd._.js +3 -0
  343. package/server/.next/server/chunks/[root-of-the-server]__0v-gc-c_e8pwl._.js +3 -0
  344. package/server/.next/server/chunks/[root-of-the-server]__0v1t0gkrsn99q._.js +3 -0
  345. package/server/.next/server/chunks/[root-of-the-server]__0vp-x4ifpr3p9._.js +1 -1
  346. package/server/.next/server/chunks/[root-of-the-server]__0w6pa9lnl93zu._.js +3 -0
  347. package/server/.next/server/chunks/[root-of-the-server]__0x487cn6dsn12._.js +3 -0
  348. package/server/.next/server/chunks/[root-of-the-server]__0xd_bgjy5_tr5._.js +3 -0
  349. package/server/.next/server/chunks/[root-of-the-server]__0xwv-ydetqjc7._.js +3 -0
  350. package/server/.next/server/chunks/[root-of-the-server]__0yuyew8m9dc6-._.js +3 -0
  351. package/server/.next/server/chunks/[root-of-the-server]__0zmvf4j8e2gno._.js +3 -0
  352. package/server/.next/server/chunks/[root-of-the-server]__0zni_2pv2fdgb._.js +3 -0
  353. package/server/.next/server/chunks/[root-of-the-server]__0zs-wkvv1cs0i._.js +3 -0
  354. package/server/.next/server/chunks/[root-of-the-server]__1-37ctpn8yw_m._.js +3 -0
  355. package/server/.next/server/chunks/[root-of-the-server]__1-9hjrgvj0fpb._.js +3 -0
  356. package/server/.next/server/chunks/[root-of-the-server]__104ssf9-9v_5n._.js +3 -0
  357. package/server/.next/server/chunks/[root-of-the-server]__10cqzo_4dhr4m._.js +3 -0
  358. package/server/.next/server/chunks/[root-of-the-server]__10wbld2tja51-._.js +3 -0
  359. package/server/.next/server/chunks/[root-of-the-server]__11a8fxlpahjy2._.js +3 -0
  360. package/server/.next/server/chunks/[root-of-the-server]__125fkw52kl2ty._.js +3 -0
  361. package/server/.next/server/chunks/[root-of-the-server]__137wzuow-_36q._.js +3 -0
  362. package/server/.next/server/chunks/[root-of-the-server]__13hrm9c61i7uk._.js +3 -0
  363. package/server/.next/server/chunks/[root-of-the-server]__143pob4pwxffi._.js +3 -0
  364. package/server/.next/server/chunks/[root-of-the-server]__14eyo4i2tm93k._.js +3 -0
  365. package/server/.next/server/chunks/[root-of-the-server]__14ou3bydfm0ms._.js +3 -0
  366. package/server/.next/server/chunks/[root-of-the-server]__15dhjj384tuw_._.js +3 -0
  367. package/server/.next/server/chunks/[root-of-the-server]__16waq6rapvngp._.js +3 -0
  368. package/server/.next/server/chunks/[root-of-the-server]__18eg-mk5loj_8._.js +3 -0
  369. package/server/.next/server/chunks/[root-of-the-server]__19o8cf83zllm5._.js +3 -0
  370. package/server/.next/server/chunks/[root-of-the-server]__19ylbgd65iej4._.js +3 -0
  371. package/server/.next/server/chunks/[root-of-the-server]__1_or7dycvkseg._.js +3 -0
  372. package/server/.next/server/chunks/[root-of-the-server]__1_zjje9edw0bz._.js +3 -0
  373. package/server/.next/server/chunks/[root-of-the-server]__1a9cd4d9ohf69._.js +3 -0
  374. package/server/.next/server/chunks/[root-of-the-server]__1adw_bv2u89kc._.js +3 -0
  375. package/server/.next/server/chunks/[root-of-the-server]__1akvpmbiap6nf._.js +6 -6
  376. package/server/.next/server/chunks/[root-of-the-server]__1brl5otpkvgd3._.js +3 -0
  377. package/server/.next/server/chunks/[root-of-the-server]__1c78cu7kb9vkl._.js +3 -0
  378. package/server/.next/server/chunks/[root-of-the-server]__1cdt67d022uf1._.js +3 -0
  379. package/server/.next/server/chunks/[root-of-the-server]__1cpee8xi1ig3-._.js +3 -0
  380. package/server/.next/server/chunks/[root-of-the-server]__1d5y0cc5mg_07._.js +3 -0
  381. package/server/.next/server/chunks/[root-of-the-server]__1dbz126yujh44._.js +3 -0
  382. package/server/.next/server/chunks/[root-of-the-server]__1dh4di29mjq9y._.js +3 -0
  383. package/server/.next/server/chunks/[root-of-the-server]__1dyith2r4bacm._.js +3 -0
  384. package/server/.next/server/chunks/[root-of-the-server]__1e1l75cf48ph2._.js +3 -0
  385. package/server/.next/server/chunks/[root-of-the-server]__1eu2_f44as742._.js +3 -0
  386. package/server/.next/server/chunks/[root-of-the-server]__1io5zo7iam532._.js +3 -0
  387. package/server/.next/server/chunks/[root-of-the-server]__1jsf0jf_ljpsm._.js +3 -0
  388. package/server/.next/server/chunks/[root-of-the-server]__1k4cub-5zwl6v._.js +3 -0
  389. package/server/.next/server/chunks/[root-of-the-server]__1kqq90-sj8-op._.js +3 -0
  390. package/server/.next/server/chunks/[root-of-the-server]__1lam0c5a3f224._.js +3 -0
  391. package/server/.next/server/chunks/[root-of-the-server]__1lerees-l5-6c._.js +3 -0
  392. package/server/.next/server/chunks/[root-of-the-server]__1lj1f2w2-w8nw._.js +3 -0
  393. package/server/.next/server/chunks/[root-of-the-server]__1mim39ea6-dm1._.js +3 -0
  394. package/server/.next/server/chunks/[root-of-the-server]__1ooxluowhatjt._.js +3 -0
  395. package/server/.next/server/chunks/[root-of-the-server]__1ozfk4_3lx1o7._.js +3 -0
  396. package/server/.next/server/chunks/[root-of-the-server]__1p0zd1rtbkj9r._.js +3 -0
  397. package/server/.next/server/chunks/[root-of-the-server]__1pvx0izh1m_0_._.js +3 -0
  398. package/server/.next/server/chunks/[root-of-the-server]__1pyhos8be90-4._.js +3 -0
  399. package/server/.next/server/chunks/[root-of-the-server]__1qrj37m-5y-56._.js +3 -0
  400. package/server/.next/server/chunks/[root-of-the-server]__1rpgddeg42i-q._.js +3 -0
  401. package/server/.next/server/chunks/[root-of-the-server]__1spds17tpnsgr._.js +3 -0
  402. package/server/.next/server/chunks/[root-of-the-server]__1tzt79v15zvgk._.js +3 -0
  403. package/server/.next/server/chunks/[root-of-the-server]__1uq8blxfaq_23._.js +3 -0
  404. package/server/.next/server/chunks/[root-of-the-server]__1v4i7ytwadml8._.js +3 -0
  405. package/server/.next/server/chunks/[root-of-the-server]__1vvg0ur3_7o0p._.js +3 -0
  406. package/server/.next/server/chunks/[root-of-the-server]__1vwz2r58cojht._.js +3 -0
  407. package/server/.next/server/chunks/[root-of-the-server]__1w7dv8zm-k_oa._.js +3 -0
  408. package/server/.next/server/chunks/[root-of-the-server]__1wjsjh-1i-sn6._.js +3 -0
  409. package/server/.next/server/chunks/[root-of-the-server]__1wu1dviacf85o._.js +3 -0
  410. package/server/.next/server/chunks/[root-of-the-server]__1x7en4waq21dd._.js +3 -0
  411. package/server/.next/server/chunks/[root-of-the-server]__1x813cg-b9rls._.js +3 -0
  412. package/server/.next/server/chunks/[root-of-the-server]__1xl6_spngp6k3._.js +3 -0
  413. package/server/.next/server/chunks/[root-of-the-server]__1xxmlb3soqzom._.js +3 -0
  414. package/server/.next/server/chunks/[root-of-the-server]__1zg653esm3__p._.js +3 -0
  415. package/server/.next/server/chunks/[root-of-the-server]__1zrqz88a2lkx5._.js +3 -0
  416. package/server/.next/server/chunks/[root-of-the-server]__1zvoez8iapsem._.js +3 -0
  417. package/server/.next/server/chunks/[root-of-the-server]__1zwi7po5_xe8-._.js +3 -0
  418. package/server/.next/server/chunks/[root-of-the-server]__209b5bw0k6-t3._.js +3 -0
  419. package/server/.next/server/chunks/[root-of-the-server]__209g3_0l-y67u._.js +3 -0
  420. package/server/.next/server/chunks/[root-of-the-server]__20dehd8e5-v9y._.js +3 -0
  421. package/server/.next/server/chunks/[root-of-the-server]__20pu-tixzpeev._.js +3 -0
  422. package/server/.next/server/chunks/[root-of-the-server]__212_l7y-180xi._.js +3 -0
  423. package/server/.next/server/chunks/[root-of-the-server]__213bsllf-9ztc._.js +3 -0
  424. package/server/.next/server/chunks/[root-of-the-server]__217jp1b3psyq_._.js +3 -0
  425. package/server/.next/server/chunks/_0-ow35nqudk5j._.js +1 -1
  426. package/server/.next/server/chunks/_004c7-39glldb._.js +4 -4
  427. package/server/.next/server/chunks/_023gjp96a_pq5._.js +3 -0
  428. package/server/.next/server/chunks/_03qlijpos6a21._.js +1 -1
  429. package/server/.next/server/chunks/_06lf75x-xhl7v._.js +3 -0
  430. package/server/.next/server/chunks/_09l75j3ey14tc._.js +1 -1
  431. package/server/.next/server/chunks/_09s2unlb4r6yf._.js +3 -0
  432. package/server/.next/server/chunks/_0cbxgnkxr1uj8._.js +3 -0
  433. package/server/.next/server/chunks/_0dn7480wo_c3b._.js +3 -0
  434. package/server/.next/server/chunks/_0duxuj4kmjibl._.js +41 -0
  435. package/server/.next/server/chunks/_0gz8ldqeokdtn._.js +1 -1
  436. package/server/.next/server/chunks/_0if5sw58tii_3._.js +3 -0
  437. package/server/.next/server/chunks/_0kay0bklv5khp._.js +3 -0
  438. package/server/.next/server/chunks/_0kmhvts35imzs._.js +4 -4
  439. package/server/.next/server/chunks/_0l_hz-8cj94r7._.js +3 -0
  440. package/server/.next/server/chunks/_0mqce8klmy8-0._.js +3 -0
  441. package/server/.next/server/chunks/_0n-wbmmvp4omq._.js +1 -1
  442. package/server/.next/server/chunks/_0nmfe_o9yhlh2._.js +3 -0
  443. package/server/.next/server/chunks/_0ofzzim090ezo._.js +1 -1
  444. package/server/.next/server/chunks/_0q3ygdztfvqq6._.js +3 -0
  445. package/server/.next/server/chunks/_0qmi54vmnlwdv._.js +7 -7
  446. package/server/.next/server/chunks/_0qyupoc7u5hr7._.js +3 -0
  447. package/server/.next/server/chunks/_0rwuppwyvemfj._.js +4 -4
  448. package/server/.next/server/chunks/_0ry4553j-m5fp._.js +4 -0
  449. package/server/.next/server/chunks/_0sy878k2ywjbq._.js +1 -1
  450. package/server/.next/server/chunks/_0tz4o-qufnu3l._.js +4 -4
  451. package/server/.next/server/chunks/_0vjggb8yo5b9f._.js +3 -0
  452. package/server/.next/server/chunks/_0voowig3y32v1._.js +4 -4
  453. package/server/.next/server/chunks/_0wtlf0x_depae._.js +3 -0
  454. package/server/.next/server/chunks/_0zj10_al6r59j._.js +120 -0
  455. package/server/.next/server/chunks/_1-ior_ot6mgxg._.js +3 -0
  456. package/server/.next/server/chunks/_1-pcsy2hkg0il._.js +3 -0
  457. package/server/.next/server/chunks/_1-pw7jw52sbti._.js +1 -1
  458. package/server/.next/server/chunks/_1-yn_of8b2vax._.js +3 -0
  459. package/server/.next/server/chunks/_10vh_l3hht4_3._.js +4 -4
  460. package/server/.next/server/chunks/_113ebzq_9i756._.js +41 -0
  461. package/server/.next/server/chunks/_12die1sn6gq3d._.js +5 -5
  462. package/server/.next/server/chunks/_14dtti1qofqqv._.js +1 -1
  463. package/server/.next/server/chunks/_16urxazbgm48y._.js +4 -0
  464. package/server/.next/server/chunks/_17wpfa9osjqcw._.js +3 -0
  465. package/server/.next/server/chunks/_1_son1yzo5xvl._.js +1 -1
  466. package/server/.next/server/chunks/_1a5vma58w9ytn._.js +4 -4
  467. package/server/.next/server/chunks/_1ctwjh8q__6_g._.js +3 -0
  468. package/server/.next/server/chunks/_1daeuesc2d2tg._.js +3 -0
  469. package/server/.next/server/chunks/_1e_rbkrukj0x9._.js +120 -0
  470. package/server/.next/server/chunks/_1fi6cz4f-ri6d._.js +3 -0
  471. package/server/.next/server/chunks/_1g8r-7wcf8sy3._.js +4 -0
  472. package/server/.next/server/chunks/_1g_prqb_u33e3._.js +7 -7
  473. package/server/.next/server/chunks/_1ihndlef8r00f._.js +41 -0
  474. package/server/.next/server/chunks/_1mwb214-ablfo._.js +41 -0
  475. package/server/.next/server/chunks/_1ngkjn56qmi2x._.js +3 -0
  476. package/server/.next/server/chunks/_1p_978boite-8._.js +1 -1
  477. package/server/.next/server/chunks/_1r719c9unpq-5._.js +1 -1
  478. package/server/.next/server/chunks/_1v7q0xdxbqawm._.js +4 -4
  479. package/server/.next/server/chunks/_1xs2ya_n7kb04._.js +57 -0
  480. package/server/.next/server/chunks/_1xyr5p_pqp086._.js +3 -0
  481. package/server/.next/server/chunks/_1zn-ifmqqw-al._.js +3 -0
  482. package/server/.next/server/chunks/_21658fy9dy8ei._.js +3 -0
  483. package/server/.next/server/chunks/_next-internal_server_app_icon_svg_route_actions_1r2h_ubdhjtcp.js +3 -0
  484. package/server/.next/server/chunks/node_modules_zod_v4_classic_external_01k1rek7hgd0j.js +4 -4
  485. package/server/.next/server/chunks/src_0--qn984h6czu._.js +3 -0
  486. package/server/.next/server/chunks/src_05jrvcsgaq5ek._.js +3 -0
  487. package/server/.next/server/chunks/src_063xvouojxyoa._.js +1 -1
  488. package/server/.next/server/chunks/src_06tyytf_c_hlu._.js +3 -0
  489. package/server/.next/server/chunks/src_088gmyaew7ds0._.js +1 -1
  490. package/server/.next/server/chunks/src_08fq45_-8xq5o._.js +3 -0
  491. package/server/.next/server/chunks/src_09cgjvch02173._.js +3 -0
  492. package/server/.next/server/chunks/src_0c7qu5adpm3gv._.js +3 -0
  493. package/server/.next/server/chunks/src_0i-1ohush6mui._.js +3 -0
  494. package/server/.next/server/chunks/src_0u2zbz77uh__q._.js +3 -0
  495. package/server/.next/server/chunks/src_0ud2mqnh4emxz._.js +3 -0
  496. package/server/.next/server/chunks/src_0y_4gogmeu-2k._.js +1 -1
  497. package/server/.next/server/chunks/src_1-6a00bmwlymu._.js +3 -0
  498. package/server/.next/server/chunks/src_1-xw4hea2lvb3._.js +1 -1
  499. package/server/.next/server/chunks/src_10vyvp9vy_69h._.js +3 -0
  500. package/server/.next/server/chunks/src_12wdz9bdn7a-7._.js +3 -0
  501. package/server/.next/server/chunks/src_13n1vi7uew4iu._.js +3 -0
  502. package/server/.next/server/chunks/src_1a5yibsjcy1ga._.js +1 -1
  503. package/server/.next/server/chunks/src_1bqzr81r3wkvi._.js +1 -1
  504. package/server/.next/server/chunks/src_1cvp6ubs-3z6l._.js +3 -0
  505. package/server/.next/server/chunks/src_1il7wg_qjxny7._.js +3 -0
  506. package/server/.next/server/chunks/src_1tux0n9_5b1kr._.js +7 -4
  507. package/server/.next/server/chunks/src_1u-olt84z63rx._.js +3 -0
  508. package/server/.next/server/chunks/src_1wduh0eckiwl1._.js +1 -1
  509. package/server/.next/server/chunks/src_1wmb2yl3tn-dd._.js +3 -0
  510. package/server/.next/server/chunks/src_1wzm081p6qyre._.js +7 -4
  511. package/server/.next/server/chunks/src_20ilndq84j3b3._.js +3 -0
  512. package/server/.next/server/chunks/src_lib_0-xd6p5793qdu._.js +3 -0
  513. package/server/.next/server/chunks/src_lib_0ayxuk4ftzf2f._.js +6 -0
  514. package/server/.next/server/chunks/src_lib_0ds7lhpop_adf._.js +1 -1
  515. package/server/.next/server/chunks/src_lib_0glcfed-uogyd._.js +1 -1
  516. package/server/.next/server/chunks/src_lib_0krdzz8eu9xh3._.js +6 -0
  517. package/server/.next/server/chunks/src_lib_0lpdyif-edl7i._.js +3 -0
  518. package/server/.next/server/chunks/src_lib_0n1xnas42gur9._.js +1 -1
  519. package/server/.next/server/chunks/src_lib_0qbcg988i_-ee._.js +3 -0
  520. package/server/.next/server/chunks/src_lib_0ta8sd9jeuw50._.js +10 -9
  521. package/server/.next/server/chunks/src_lib_1-u7dbsavbtb0._.js +6 -0
  522. package/server/.next/server/chunks/src_lib_103kimc1xvc_0._.js +9 -0
  523. package/server/.next/server/chunks/src_lib_1550ey8j96v9n._.js +4 -0
  524. package/server/.next/server/chunks/src_lib_16oqslmhfgod1._.js +3 -0
  525. package/server/.next/server/chunks/src_lib_18wgdeemqm6gg._.js +3 -0
  526. package/server/.next/server/chunks/src_lib_1en6omqx66g9d._.js +10 -9
  527. package/server/.next/server/chunks/src_lib_1onr7b4_kglpt._.js +4 -0
  528. package/server/.next/server/chunks/src_lib_1qo6t00wwitz6._.js +10 -9
  529. package/server/.next/server/chunks/src_lib_1sdusf16f07x-._.js +9 -0
  530. package/server/.next/server/chunks/src_lib_1sz77jjn7xl7o._.js +1 -1
  531. package/server/.next/server/chunks/src_lib_1xwavi_m_li7p._.js +3 -0
  532. package/server/.next/server/chunks/src_lib_1ywf_wup1kxy_._.js +1 -1
  533. package/server/.next/server/chunks/src_lib_1zd1btsqvk1e2._.js +3 -0
  534. package/server/.next/server/chunks/src_lib_206j7lyff31-g._.js +6 -0
  535. package/server/.next/server/chunks/src_lib_alerts_catalog_ts_1ndg28acul64q._.js +1 -1
  536. package/server/.next/server/chunks/src_lib_collector_http-check_ts_0bh0rtjky3u1-._.js +3 -0
  537. package/server/.next/server/chunks/src_lib_collector_runners_ts_12z4gtgikss74._.js +5 -5
  538. package/server/.next/server/chunks/src_lib_data_advisor-db_ts_0rl1ug3iana24._.js +3 -0
  539. package/server/.next/server/chunks/src_lib_data_apps-db_ts_02ovqtci8e7o6._.js +3 -0
  540. package/server/.next/server/chunks/src_lib_data_deployments-db_ts_1shbv_55rwa2-._.js +3 -0
  541. package/server/.next/server/chunks/src_lib_data_provider-status-db_ts_09oo6p4m7x7te._.js +3 -0
  542. package/server/.next/server/chunks/src_lib_demo_0a5wqvhuj5hjh._.js +3 -0
  543. package/server/.next/server/chunks/src_lib_demo_0alh_mll9yp9d._.js +3 -0
  544. package/server/.next/server/chunks/src_lib_demo_0rbejiyw_ry41._.js +3 -0
  545. package/server/.next/server/chunks/src_lib_demo_11p30f_ci6ie2._.js +3 -0
  546. package/server/.next/server/chunks/src_lib_demo_21179a6aev-i3._.js +3 -0
  547. package/server/.next/server/chunks/src_lib_demo_pool_ts_17xz9bk-d5uic._.js +6 -6
  548. package/server/.next/server/chunks/src_lib_demo_session_ts_01_g7aejuhoq0._.js +3 -0
  549. package/server/.next/server/chunks/src_lib_deps_plan_ts_0bctf8v4qttk5._.js +1 -1
  550. package/server/.next/server/chunks/src_lib_domain-move_ts_04stiet1-xpe2._.js +3 -0
  551. package/server/.next/server/chunks/src_lib_local-auth_proxy_ts_1g9krhdh2rnt2._.js +4 -4
  552. package/server/.next/server/chunks/src_lib_notify_lang_ts_1r2w02ctaky7e._.js +1 -1
  553. package/server/.next/server/chunks/src_lib_notify_telegram-bot_ts_18y40dkchmcqd._.js +1 -1
  554. package/server/.next/server/chunks/src_lib_rate-limit_ts_09dzyftcadggh._.js +1 -1
  555. package/server/.next/server/chunks/src_lib_rate-limit_ts_0r-eu6to05vyx._.js +1 -1
  556. package/server/.next/server/chunks/src_lib_rate-limit_ts_1ahtm4quu2rri._.js +1 -1
  557. package/server/.next/server/chunks/src_lib_sections_ts_0r8u4nvlpdkgq._.js +3 -0
  558. package/server/.next/server/chunks/src_lib_view_databases_ts_1ovdbo8spjhf9._.js +1 -1
  559. package/server/.next/server/chunks/src_lib_view_display-name_ts_0xoimm6j7bwnf._.js +1 -1
  560. package/server/.next/server/chunks/src_lib_view_labels_ts_1uxs84z7vclz5._.js +1 -1
  561. package/server/.next/server/chunks/src_private_1_nggk_wre7qf._.js +2 -2
  562. package/server/.next/server/chunks/src_private_1yzfhupl3rlpx._.js +6 -0
  563. package/server/.next/server/chunks/src_private_actions_proposals-settings_ts_16v2x9a4amejq._.js +1 -1
  564. package/server/.next/server/chunks/src_private_ai_gateway_ts_04_5ao9914d0p._.js +1 -1
  565. package/server/.next/server/chunks/src_private_ai_gateway_ts_1qtr4nyb8kgnd._.js +2 -2
  566. package/server/.next/server/chunks/src_private_assist_provider-answer_ts_10qv42t-5046y._.js +1 -1
  567. package/server/.next/server/chunks/src_private_auth_api-key_ts_1y0tfcmbozpwf._.js +4 -4
  568. package/server/.next/server/chunks/src_private_console_snapshot_ts_17etygjp9dy1t._.js +1 -1
  569. package/server/.next/server/chunks/src_private_mcp_data_ts_0qdp7n8rzp7k7._.js +1 -1
  570. package/server/.next/server/chunks/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
  571. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_agents_page_actions_1q6nc5chwn5k4.js +1 -1
  572. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_models_page_actions_0n_anax2l1jpu.js +1 -1
  573. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_playground_page_actions_1kyng_xuojdtb.js +1 -1
  574. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_quota_page_actions_04r4ro6x7-p7p.js +1 -1
  575. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_usage_page_actions_1fq9uugdpqa_l.js +1 -1
  576. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_auto-actions_page_actions_0mhtiq_5szpe0.js +1 -1
  577. package/server/.next/server/chunks/ssr/[externals]__0et8619os7o06._.js +3 -0
  578. package/server/.next/server/chunks/ssr/[externals]__0jv_q8g96gubg._.js +3 -0
  579. package/server/.next/server/chunks/ssr/[externals]__0uri0lxk2rh6k._.js +3 -0
  580. package/server/.next/server/chunks/ssr/[externals]__0x50_fipcza3k._.js +3 -0
  581. package/server/.next/server/chunks/ssr/[externals]__0yzs5m5hot2o2._.js +3 -0
  582. package/server/.next/server/chunks/ssr/[externals]__1d_fn156y1kzg._.js +3 -0
  583. package/server/.next/server/chunks/ssr/[externals]__1hqh7fi0-rtlc._.js +3 -0
  584. package/server/.next/server/chunks/ssr/[externals]__1mmmc4yhx5fm6._.js +3 -0
  585. package/server/.next/server/chunks/ssr/[externals]__1neu6qld_ilyx._.js +3 -0
  586. package/server/.next/server/chunks/ssr/[externals]__1nv-uycpa6_lh._.js +3 -0
  587. package/server/.next/server/chunks/ssr/[externals]__1p5zuqwmfkoo1._.js +3 -0
  588. package/server/.next/server/chunks/ssr/[root-of-the-server]__0-jx3t8dg8n5t._.js +3 -0
  589. package/server/.next/server/chunks/ssr/[root-of-the-server]__0-o5i-5pqjk5v._.js +3 -0
  590. package/server/.next/server/chunks/ssr/[root-of-the-server]__001mglelq4wpc._.js +3 -0
  591. package/server/.next/server/chunks/ssr/[root-of-the-server]__00wwav5k7xmy0._.js +3 -0
  592. package/server/.next/server/chunks/ssr/[root-of-the-server]__01mgajn73iwc7._.js +5 -0
  593. package/server/.next/server/chunks/ssr/[root-of-the-server]__04klr3-4qi7-t._.js +3 -0
  594. package/server/.next/server/chunks/ssr/[root-of-the-server]__04zgt2t-w6-75._.js +3 -0
  595. package/server/.next/server/chunks/ssr/[root-of-the-server]__050d99bknjdvq._.js +3 -0
  596. package/server/.next/server/chunks/ssr/[root-of-the-server]__05hw89gap74cw._.js +3 -0
  597. package/server/.next/server/chunks/ssr/[root-of-the-server]__05q-laapy00sk._.js +3 -0
  598. package/server/.next/server/chunks/ssr/[root-of-the-server]__06uaa_2zbg57p._.js +3 -0
  599. package/server/.next/server/chunks/ssr/[root-of-the-server]__081l8lhgoffuc._.js +3 -0
  600. package/server/.next/server/chunks/ssr/[root-of-the-server]__0828947qad6xx._.js +3 -0
  601. package/server/.next/server/chunks/ssr/[root-of-the-server]__08w3ad-xux1g4._.js +3 -0
  602. package/server/.next/server/chunks/ssr/[root-of-the-server]__0_1130gx52k-9._.js +3 -0
  603. package/server/.next/server/chunks/ssr/[root-of-the-server]__0_677ii9bahoy._.js +3 -0
  604. package/server/.next/server/chunks/ssr/[root-of-the-server]__0bn_thc_vtf_i._.js +3 -0
  605. package/server/.next/server/chunks/ssr/[root-of-the-server]__0dd9rci1isdjf._.js +3 -0
  606. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ejxk0jlgi4eb._.js +3 -0
  607. package/server/.next/server/chunks/ssr/[root-of-the-server]__0exp042uqhyqs._.js +3 -0
  608. package/server/.next/server/chunks/ssr/[root-of-the-server]__0fkxv6yyok76e._.js +3 -0
  609. package/server/.next/server/chunks/ssr/[root-of-the-server]__0h2hxe0vl-2x0._.js +3 -0
  610. package/server/.next/server/chunks/ssr/[root-of-the-server]__0hgf7si8htevx._.js +3 -0
  611. package/server/.next/server/chunks/ssr/[root-of-the-server]__0k8k-fbyzfbog._.js +3 -0
  612. package/server/.next/server/chunks/ssr/[root-of-the-server]__0khp_gsot3jh_._.js +3 -0
  613. package/server/.next/server/chunks/ssr/[root-of-the-server]__0khvq0xdah931._.js +3 -0
  614. package/server/.next/server/chunks/ssr/[root-of-the-server]__0kr_tvfgqtb-o._.js +3 -0
  615. package/server/.next/server/chunks/ssr/[root-of-the-server]__0lehuiyzxp78t._.js +3 -0
  616. package/server/.next/server/chunks/ssr/[root-of-the-server]__0llh-w4ta1qbp._.js +3 -0
  617. package/server/.next/server/chunks/ssr/[root-of-the-server]__0nlfip3wc3l2z._.js +4 -0
  618. package/server/.next/server/chunks/ssr/[root-of-the-server]__0nrc_8-wrhf3y._.js +3 -0
  619. package/server/.next/server/chunks/ssr/[root-of-the-server]__0p5znbfo0wgsu._.js +3 -0
  620. package/server/.next/server/chunks/ssr/[root-of-the-server]__0p7d9dfmuhnvv._.js +3 -0
  621. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ptdec0sozaqm._.js +3 -0
  622. package/server/.next/server/chunks/ssr/[root-of-the-server]__0tjab3yn0asf7._.js +3 -0
  623. package/server/.next/server/chunks/ssr/[root-of-the-server]__0tp9vtckbkk9o._.js +3 -0
  624. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ua-p_wz8epv9._.js +3 -0
  625. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ujxsp9l9ad-l._.js +3 -0
  626. package/server/.next/server/chunks/ssr/[root-of-the-server]__0vdb51zrgcnkp._.js +3 -0
  627. package/server/.next/server/chunks/ssr/[root-of-the-server]__0wcnxr_g-bd3r._.js +1 -1
  628. package/server/.next/server/chunks/ssr/[root-of-the-server]__0y84mqfn13ss4._.js +3 -0
  629. package/server/.next/server/chunks/ssr/[root-of-the-server]__0yzkcvsekwypa._.js +3 -0
  630. package/server/.next/server/chunks/ssr/[root-of-the-server]__1096-q3_trmm9._.js +3 -0
  631. package/server/.next/server/chunks/ssr/[root-of-the-server]__10rhqv5xq9jaj._.js +3 -0
  632. package/server/.next/server/chunks/ssr/[root-of-the-server]__10y2ig7dg3f-k._.js +3 -0
  633. package/server/.next/server/chunks/ssr/[root-of-the-server]__11ham42w_feik._.js +3 -0
  634. package/server/.next/server/chunks/ssr/[root-of-the-server]__12-a3tcnfdcyq._.js +3 -0
  635. package/server/.next/server/chunks/ssr/[root-of-the-server]__133_j0bmsjnzt._.js +3 -0
  636. package/server/.next/server/chunks/ssr/[root-of-the-server]__14ept-_l8j32m._.js +3 -0
  637. package/server/.next/server/chunks/ssr/[root-of-the-server]__15keslh0ov5mv._.js +3 -0
  638. package/server/.next/server/chunks/ssr/[root-of-the-server]__15wwi1pda8ims._.js +3 -0
  639. package/server/.next/server/chunks/ssr/[root-of-the-server]__16ehn8dupt4y_._.js +3 -0
  640. package/server/.next/server/chunks/ssr/[root-of-the-server]__16jkttbe1yoai._.js +3 -0
  641. package/server/.next/server/chunks/ssr/[root-of-the-server]__17bfr3mlfy4ur._.js +3 -0
  642. package/server/.next/server/chunks/ssr/[root-of-the-server]__18xb7pbdmiyiz._.js +3 -0
  643. package/server/.next/server/chunks/ssr/[root-of-the-server]__194546bqpq02e._.js +3 -0
  644. package/server/.next/server/chunks/ssr/[root-of-the-server]__1_f7nip9age3d._.js +1 -1
  645. package/server/.next/server/chunks/ssr/[root-of-the-server]__1a3fyho18xlil._.js +3 -0
  646. package/server/.next/server/chunks/ssr/[root-of-the-server]__1acw8ohqfhez7._.js +3 -0
  647. package/server/.next/server/chunks/ssr/[root-of-the-server]__1bvp2ia3h9qbs._.js +3 -0
  648. package/server/.next/server/chunks/ssr/[root-of-the-server]__1cmcwg6afneet._.js +3 -0
  649. package/server/.next/server/chunks/ssr/[root-of-the-server]__1dyjzbqwy6o12._.js +3 -0
  650. package/server/.next/server/chunks/ssr/[root-of-the-server]__1f9yq2f20_bof._.js +3 -0
  651. package/server/.next/server/chunks/ssr/[root-of-the-server]__1fj33_xkainxk._.js +4 -0
  652. package/server/.next/server/chunks/ssr/[root-of-the-server]__1hmh1-e3z3_dw._.js +3 -0
  653. package/server/.next/server/chunks/ssr/[root-of-the-server]__1jgp7__2zpblj._.js +3 -0
  654. package/server/.next/server/chunks/ssr/[root-of-the-server]__1k_hi9mbd4_by._.js +3 -0
  655. package/server/.next/server/chunks/ssr/[root-of-the-server]__1kieqcc6kdywx._.js +3 -0
  656. package/server/.next/server/chunks/ssr/[root-of-the-server]__1l695djsioelp._.js +3 -0
  657. package/server/.next/server/chunks/ssr/[root-of-the-server]__1nat8lbog5imr._.js +3 -0
  658. package/server/.next/server/chunks/ssr/[root-of-the-server]__1pfk0fqey3ipf._.js +3 -0
  659. package/server/.next/server/chunks/ssr/[root-of-the-server]__1pgpryg9lkmoz._.js +3 -0
  660. package/server/.next/server/chunks/ssr/[root-of-the-server]__1qac3db7p9a38._.js +3 -0
  661. package/server/.next/server/chunks/ssr/[root-of-the-server]__1rvdnoxnu0ddf._.js +3 -0
  662. package/server/.next/server/chunks/ssr/[root-of-the-server]__1t4thrxlv4zre._.js +3 -0
  663. package/server/.next/server/chunks/ssr/[root-of-the-server]__1tco2ec6ha1k6._.js +3 -0
  664. package/server/.next/server/chunks/ssr/[root-of-the-server]__1tcu4-eowz9vt._.js +3 -0
  665. package/server/.next/server/chunks/ssr/[root-of-the-server]__1tuftf7fags7x._.js +5 -0
  666. package/server/.next/server/chunks/ssr/[root-of-the-server]__1vyste6xyyu37._.js +3 -0
  667. package/server/.next/server/chunks/ssr/[root-of-the-server]__1xt8hv0dzjv2i._.js +3 -0
  668. package/server/.next/server/chunks/ssr/[root-of-the-server]__1xwqrik2sugmi._.js +3 -0
  669. package/server/.next/server/chunks/ssr/[root-of-the-server]__1yf4_oyl-3xp7._.js +3 -0
  670. package/server/.next/server/chunks/ssr/[root-of-the-server]__20of6xa16fwqa._.js +3 -0
  671. package/server/.next/server/chunks/ssr/[root-of-the-server]__2195hg4329yfp._.js +3 -0
  672. package/server/.next/server/chunks/ssr/_0-uwh2rwm_dic._.js +2 -2
  673. package/server/.next/server/chunks/ssr/_026w_ig6vy9bt._.js +1 -1
  674. package/server/.next/server/chunks/ssr/_04ltmruop4rt3._.js +4 -0
  675. package/server/.next/server/chunks/ssr/_06kn13xh_13da._.js +3 -0
  676. package/server/.next/server/chunks/ssr/_06kwu83_fmex9._.js +2 -2
  677. package/server/.next/server/chunks/ssr/_090fib2x989oc._.js +3 -0
  678. package/server/.next/server/chunks/ssr/_09s2unlb4r6yf._.js +3 -0
  679. package/server/.next/server/chunks/ssr/_0_oc9q0vqkynd._.js +1 -1
  680. package/server/.next/server/chunks/ssr/_0_rtyc4t9xcdo._.js +1 -1
  681. package/server/.next/server/chunks/ssr/_0a22b7zsckifp._.js +1 -1
  682. package/server/.next/server/chunks/ssr/_0ad3y3l77xkxe._.js +3 -0
  683. package/server/.next/server/chunks/ssr/_0azq3ml4gbn1d._.js +1 -1
  684. package/server/.next/server/chunks/ssr/_0bd4cxnpnnq2u._.js +3 -0
  685. package/server/.next/server/chunks/ssr/_0cw4kz3d6kmb1._.js +1 -1
  686. package/server/.next/server/chunks/ssr/_0d702k82llasi._.js +1 -1
  687. package/server/.next/server/chunks/ssr/_0fyag9o6gdcmb._.js +3 -0
  688. package/server/.next/server/chunks/ssr/_0hmxyfx7su4uk._.js +4 -0
  689. package/server/.next/server/chunks/ssr/_0i-e824vtomvg._.js +2 -2
  690. package/server/.next/server/chunks/ssr/_0jjoot3rhbde3._.js +2 -2
  691. package/server/.next/server/chunks/ssr/_0k2qpgzlqzc_p._.js +1 -1
  692. package/server/.next/server/chunks/ssr/_0kn710rrv_o2t._.js +2 -2
  693. package/server/.next/server/chunks/ssr/_0lmcrl8r9dg49._.js +1 -1
  694. package/server/.next/server/chunks/ssr/_0mgclon6_oh87._.js +2 -2
  695. package/server/.next/server/chunks/ssr/_0ns_087lx5abm._.js +1 -1
  696. package/server/.next/server/chunks/ssr/_0oovfx_t_-u0k._.js +1 -1
  697. package/server/.next/server/chunks/ssr/_0qcvpnwa1u3vr._.js +3 -0
  698. package/server/.next/server/chunks/ssr/_0qhvl_fw4qetx._.js +4 -0
  699. package/server/.next/server/chunks/ssr/_0qyupoc7u5hr7._.js +3 -0
  700. package/server/.next/server/chunks/ssr/_0sotiqakj-6ci._.js +1 -1
  701. package/server/.next/server/chunks/ssr/_0ufjz7kfd4jbd._.js +3 -0
  702. package/server/.next/server/chunks/ssr/_0uogspz6zrvwk._.js +2 -2
  703. package/server/.next/server/chunks/ssr/_0v6v5w16qxwke._.js +3 -0
  704. package/server/.next/server/chunks/ssr/_0wo-lpqf7hr1y._.js +4 -0
  705. package/server/.next/server/chunks/ssr/_0wzg8e30al7bu._.js +3 -0
  706. package/server/.next/server/chunks/ssr/_0ymtfa6vo-yz5._.js +3 -0
  707. package/server/.next/server/chunks/ssr/_0yn1xeumiigj0._.js +3 -0
  708. package/server/.next/server/chunks/ssr/_1-6d1tm3r_qwg._.js +1 -1
  709. package/server/.next/server/chunks/ssr/_1-ior_ot6mgxg._.js +3 -0
  710. package/server/.next/server/chunks/ssr/_10bven6gb1vj0._.js +5 -5
  711. package/server/.next/server/chunks/ssr/_10pz3ggun9s5i._.js +2 -2
  712. package/server/.next/server/chunks/ssr/_118h21qua_4o3._.js +4 -0
  713. package/server/.next/server/chunks/ssr/_12ddramfkd6o1._.js +2 -2
  714. package/server/.next/server/chunks/ssr/_14dtti1qofqqv._.js +1 -1
  715. package/server/.next/server/chunks/ssr/_15ft896zgt02e._.js +2 -2
  716. package/server/.next/server/chunks/ssr/_18lgd6o04ugow._.js +2 -2
  717. package/server/.next/server/chunks/ssr/_19-3vzkc6rk97._.js +1 -1
  718. package/server/.next/server/chunks/ssr/_19dldpcnzhkuw._.js +3 -0
  719. package/server/.next/server/chunks/ssr/_1_-o2s48aj4i7._.js +1 -1
  720. package/server/.next/server/chunks/ssr/_1_gydx19bikgo._.js +3 -0
  721. package/server/.next/server/chunks/ssr/_1ag8axv14phju._.js +4 -0
  722. package/server/.next/server/chunks/ssr/_1b1ano88ar-gi._.js +2 -2
  723. package/server/.next/server/chunks/ssr/_1boia2p3_0nsz._.js +2 -2
  724. package/server/.next/server/chunks/ssr/_1cl55h_h3q-b_._.js +1 -1
  725. package/server/.next/server/chunks/ssr/_1dqf3jmb24s37._.js +1 -1
  726. package/server/.next/server/chunks/ssr/_1e24cpw3g7njr._.js +2 -2
  727. package/server/.next/server/chunks/ssr/_1e5zfwgdf0mm5._.js +3 -0
  728. package/server/.next/server/chunks/ssr/_1g27pa6rivh_s._.js +1 -1
  729. package/server/.next/server/chunks/ssr/_1g2zbl_-4z_hg._.js +1 -1
  730. package/server/.next/server/chunks/ssr/_1gk334l49puy-._.js +3 -0
  731. package/server/.next/server/chunks/ssr/_1gvbcfoah__sl._.js +3 -0
  732. package/server/.next/server/chunks/ssr/_1h93joqd_-1og._.js +3 -0
  733. package/server/.next/server/chunks/ssr/_1i77n2n-wb98v._.js +2 -2
  734. package/server/.next/server/chunks/ssr/_1i96si4hzn74p._.js +1 -1
  735. package/server/.next/server/chunks/ssr/_1j9cka-44jd65._.js +1 -1
  736. package/server/.next/server/chunks/ssr/_1jh_o2i8hj2g5._.js +1 -1
  737. package/server/.next/server/chunks/ssr/_1nzncndn-1ggb._.js +1 -1
  738. package/server/.next/server/chunks/ssr/_1r7o1vx4875hu._.js +3 -0
  739. package/server/.next/server/chunks/ssr/_1rf_mwfkk_9oa._.js +3 -0
  740. package/server/.next/server/chunks/ssr/_1uae0vl2c6fz7._.js +3 -0
  741. package/server/.next/server/chunks/ssr/_1w3eagae2f-2-._.js +1 -1
  742. package/server/.next/server/chunks/ssr/_1w_rq6clcs0ft._.js +4 -0
  743. package/server/.next/server/chunks/ssr/_1y8wer5tpgiqw._.js +3 -0
  744. package/server/.next/server/chunks/ssr/_1ybhu25y38395._.js +2 -2
  745. package/server/.next/server/chunks/ssr/_1z6dy1k48mskn._.js +1 -1
  746. package/server/.next/server/chunks/ssr/_210edglbxmcb3._.js +2 -2
  747. package/server/.next/server/chunks/ssr/_217qa04yo70zg._.js +3 -0
  748. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_keys_page_actions_1910ocjt__nlh.js +1 -1
  749. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_logs_page_actions_136-s4sxl6nra.js +1 -1
  750. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_alerts_page_actions_0f7cxitw-svnl.js +1 -1
  751. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_14l8--w36mywn.js +1 -1
  752. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_page_actions_1zw_mdh2ep6vs.js +3 -0
  753. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_06a1fnrawxlh1.js +1 -1
  754. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_dns_page_actions_1p2deebbgom7b.js +1 -1
  755. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_domains_page_actions_0-wg58qcvu_rv.js +1 -1
  756. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_firebase_page_actions_217-u-dmlzx6a.js +3 -0
  757. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_logs_page_actions_11-8xinblaop_.js +1 -1
  758. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_manage_sections_page_actions_0ven9q46d3d7s.js +1 -1
  759. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_settings_page_actions_1z3l1p4keed3m.js +1 -1
  760. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_supabase_page_actions_1evatil08dntl.js +1 -1
  761. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_uptime_page_actions_0k1237d-q3oc4.js +1 -1
  762. package/server/.next/server/chunks/ssr/_next-internal_server_app_account_password_page_actions_1v4e71_oifbx9.js +1 -1
  763. package/server/.next/server/chunks/ssr/_next-internal_server_app_signin_page_actions_11wzk446p6_zi.js +1 -1
  764. package/server/.next/server/chunks/ssr/node_modules_1_u5afwqp6brs._.js +3 -0
  765. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0-kg_ige9ehqj.js +3 -0
  766. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_00k37tbaia8dh.js +3 -0
  767. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_00z_p6szkga15.js +3 -0
  768. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_01-utr59mtfg1.js +3 -0
  769. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_055hw7kwif935.js +3 -0
  770. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_06fg_efdkc3kx.js +3 -0
  771. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_08f3d08smwt6_.js +3 -0
  772. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_08lcfro9qovjn.js +3 -0
  773. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0c8wd69fns_0d.js +3 -0
  774. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0cha-3kg99u4h.js +3 -0
  775. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0d_0he72lzkh9.js +3 -0
  776. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0f6chw8z5cuyg.js +3 -0
  777. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0i3p3qfjihm3f.js +3 -0
  778. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ivgh76j_tu2x.js +3 -0
  779. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0j9-_xhs21abp.js +3 -0
  780. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0kwpdjujljna-.js +3 -0
  781. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ns6neau7m6mt.js +3 -0
  782. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0rer2akuum5r-.js +3 -0
  783. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0umt_achusjjb.js +3 -0
  784. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0un7wq602mt3n.js +3 -0
  785. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0vrdl9n7guitd.js +3 -0
  786. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0vse2cboy4cms.js +3 -0
  787. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0x7ey4_8b48_o.js +3 -0
  788. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0z8l8t55t65t_.js +3 -0
  789. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0zap6p0vuv-fp.js +3 -0
  790. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1-m49cfu6a7gl.js +3 -0
  791. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1-w3hswsbrppl.js +3 -0
  792. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1167zbjp4ys_a.js +3 -0
  793. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_129serqqq3xyq.js +3 -0
  794. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_12en3pdvxu0dy.js +3 -0
  795. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_14-4y3i6c1vxc.js +3 -0
  796. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1596hk9t3r1a5.js +3 -0
  797. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_17us24ry0om-z.js +3 -0
  798. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1_8xi22-aoxu1.js +3 -0
  799. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1_l32aoya75_m.js +3 -0
  800. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ar0v26274uhj.js +3 -0
  801. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dkgfjoaf_1g3.js +3 -0
  802. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1eg14m09zdg__.js +3 -0
  803. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1h_y671y1la_8.js +3 -0
  804. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1mkokmyyp47hd.js +3 -0
  805. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1msjiuu45famw.js +3 -0
  806. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1mw7isdchouml.js +3 -0
  807. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1n4cotiug2a_r.js +3 -0
  808. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1njl24pr6dwrt.js +3 -0
  809. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1o1_3bydb-3j5.js +3 -0
  810. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1pjor42_s9imf.js +3 -0
  811. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1q_82vyl-q7u6.js +3 -0
  812. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1qta4yeufzpz7.js +3 -0
  813. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1qxbl6k6dji0s.js +3 -0
  814. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_21a3kf8buivxw.js +3 -0
  815. package/server/.next/server/chunks/ssr/node_modules_zod_v4_classic_external_01k1rek7hgd0j.js +4 -4
  816. package/server/.next/server/chunks/ssr/src_0-v68qrxobagw._.js +4 -3
  817. package/server/.next/server/chunks/ssr/src_06tjy8wljego8._.js +1 -1
  818. package/server/.next/server/chunks/ssr/src_084tdkx3c_yqi._.js +1 -1
  819. package/server/.next/server/chunks/ssr/src_0905fjqu0qv57._.js +3 -0
  820. package/server/.next/server/chunks/ssr/src_0_5_wl0sww-x7._.js +6 -3
  821. package/server/.next/server/chunks/ssr/src_0abts6wp5ucc0._.js +1 -1
  822. package/server/.next/server/chunks/ssr/src_0i-1ohush6mui._.js +3 -0
  823. package/server/.next/server/chunks/ssr/src_0ixeyy74fe5jy._.js +3 -0
  824. package/server/.next/server/chunks/ssr/src_0jdurlhzhcg5x._.js +3 -0
  825. package/server/.next/server/chunks/ssr/src_0ley8c3htc2q9._.js +3 -0
  826. package/server/.next/server/chunks/ssr/src_0oagnv9_4qww7._.js +3 -0
  827. package/server/.next/server/chunks/ssr/src_0p0fk07bj9gpq._.js +1 -1
  828. package/server/.next/server/chunks/ssr/src_0ph020gy78gi9._.js +1 -1
  829. package/server/.next/server/chunks/ssr/src_0uitfl3c1mdqb._.js +1 -1
  830. package/server/.next/server/chunks/ssr/src_1-xw4hea2lvb3._.js +1 -1
  831. package/server/.next/server/chunks/ssr/src_10zavgy86u3us._.js +1 -1
  832. package/server/.next/server/chunks/ssr/src_12sdm7skn8fr1._.js +3 -0
  833. package/server/.next/server/chunks/ssr/src_13upnysaqwi9a._.js +3 -0
  834. package/server/.next/server/chunks/ssr/src_16lx0qdi44evh._.js +3 -0
  835. package/server/.next/server/chunks/ssr/src_1koc8y1nfdlw3._.js +3 -0
  836. package/server/.next/server/chunks/ssr/src_1nse4o3frj33x._.js +3 -0
  837. package/server/.next/server/chunks/ssr/src_1q-jgpnd3lbcu._.js +3 -0
  838. package/server/.next/server/chunks/ssr/src_1sdwdnblbiq_g._.js +1 -1
  839. package/server/.next/server/chunks/ssr/src_1xjlp4oxlprxb._.js +3 -0
  840. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_agents_1fyhh1ldgm23z._.js +1 -1
  841. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_ask_ask-form_tsx_18ttm9nna_9y6._.js +1 -1
  842. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_logs_export-button_tsx_1k-crb88n1za_._.js +1 -1
  843. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_models_0ayzqn062pnv5._.js +1 -1
  844. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_playground_playground-view_tsx_18ua5zn_a0mar._.js +1 -1
  845. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_providers_1ru-30x6-uwu4._.js +1 -1
  846. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_1kor9sy67qpiw._.js +1 -1
  847. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_limits-form_tsx_1vouaaf560z_x._.js +1 -1
  848. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_1v003vrkwk19w._.js +1 -1
  849. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_limits-form_tsx_0sfk3ver58rqw._.js +1 -1
  850. package/server/.next/server/chunks/ssr/src_app_(console)_08pmfte22v8vg._.js +3 -0
  851. package/server/.next/server/chunks/ssr/src_app_(console)_1rx84pcbevbbk._.js +3 -0
  852. package/server/.next/server/chunks/ssr/src_app_(console)_alerts_0j5xlt68kwg8x._.js +1 -1
  853. package/server/.next/server/chunks/ssr/src_app_(console)_apps_1_g9txz3qpxgg._.js +1 -1
  854. package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_1sfvku9ui1le-._.js +1 -1
  855. package/server/.next/server/chunks/ssr/src_app_(console)_backups_actions_ts_1vpytsdh0wc1f._.js +1 -1
  856. package/server/.next/server/chunks/ssr/src_app_(console)_backups_drive-buttons_tsx_00cku5r_z3jkg._.js +1 -1
  857. package/server/.next/server/chunks/ssr/src_app_(console)_catalog_page_tsx_1u2_-bv4yi5oo._.js +1 -1
  858. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fahc65-97qla._.js +1 -1
  859. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fmp_anbkapur._.js +1 -1
  860. package/server/.next/server/chunks/ssr/src_app_(console)_connections_actions_ts_103blv4gzq76z._.js +1 -1
  861. package/server/.next/server/chunks/ssr/src_app_(console)_create_actions_ts_05-86qr6kfjey._.js +1 -1
  862. package/server/.next/server/chunks/ssr/src_app_(console)_deployments_06a83hsex1kba._.js +1 -1
  863. package/server/.next/server/chunks/ssr/src_app_(console)_dns_actions_ts_1jzn58xzwbukz._.js +1 -1
  864. package/server/.next/server/chunks/ssr/src_app_(console)_dns_record-actions_tsx_0cqmz51zcuebv._.js +1 -1
  865. package/server/.next/server/chunks/ssr/src_app_(console)_firebase_1stlii5cy_hx3._.js +3 -0
  866. package/server/.next/server/chunks/ssr/src_app_(console)_firebase_row-menu_tsx_0hssoq3pqjl-n._.js +3 -0
  867. package/server/.next/server/chunks/ssr/src_app_(console)_logs_log-viewer_tsx_0v3e4cflfk14w._.js +1 -1
  868. package/server/.next/server/chunks/ssr/src_app_(console)_manage_sections_17htk-vea5fna._.js +1 -1
  869. package/server/.next/server/chunks/ssr/src_app_(console)_manage_sections_section-switch_tsx_1mfs-o_357i22._.js +1 -1
  870. package/server/.next/server/chunks/ssr/src_app_(console)_monitor-actions_ts_10w3h7myk2ppi._.js +1 -1
  871. package/server/.next/server/chunks/ssr/src_app_(console)_overview_page_tsx_0se3f3ln9q-42._.js +1 -1
  872. package/server/.next/server/chunks/ssr/src_app_(console)_palette-action_ts_0zyw9a9imev6p._.js +1 -1
  873. package/server/.next/server/chunks/ssr/src_app_(console)_repos_[id]_page_tsx_1nkxthc4ethrj._.js +1 -1
  874. package/server/.next/server/chunks/ssr/src_app_(console)_sql_1icfsti04djqe._.js +2 -2
  875. package/server/.next/server/chunks/ssr/src_app_(console)_sql_actions_ts_1oqco02hw-3vp._.js +1 -1
  876. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_0ib3m2ch9gu-4._.js +1 -1
  877. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_pool-actions_ts_0nzd4vwy_9zzx._.js +1 -1
  878. package/server/.next/server/chunks/ssr/src_app_(console)_uptime_148phfjye0539._.js +1 -1
  879. package/server/.next/server/chunks/ssr/src_app_(console)_uptime_1mnnkfi-2zv-k._.js +1 -1
  880. package/server/.next/server/chunks/ssr/src_app_(console)_vercel-actions_ts_0wpk1yo9v632d._.js +1 -1
  881. package/server/.next/server/chunks/ssr/src_app_(console)_welcome_page_tsx_1bw0x0riq-oem._.js +1 -1
  882. package/server/.next/server/chunks/ssr/src_app_invite_page_tsx_0mny3a23n5hs9._.js +1 -1
  883. package/server/.next/server/chunks/ssr/src_app_mfa_setup_setup-flow_tsx_1fpwygr2vdgnh._.js +1 -1
  884. package/server/.next/server/chunks/ssr/src_app_s_[slug]_not-found_tsx_04_zrw19809g4._.js +3 -0
  885. package/server/.next/server/chunks/ssr/src_app_s_[slug]_page_tsx_0jjqe6py82mpb._.js +1 -1
  886. package/server/.next/server/chunks/ssr/src_app_setup_setup-form_tsx_0izoagdur96e1._.js +1 -1
  887. package/server/.next/server/chunks/ssr/src_app_signin_0hb58isfg-2yx._.js +3 -0
  888. package/server/.next/server/chunks/ssr/src_app_signin_1_sp0qx8_z7c9._.js +1 -1
  889. package/server/.next/server/chunks/ssr/src_components_08d78uqnnmrrh._.js +3 -0
  890. package/server/.next/server/chunks/ssr/src_components_0j11cbzb8mgbx._.js +1 -1
  891. package/server/.next/server/chunks/ssr/src_components_11x625pqq9ovs._.js +1 -1
  892. package/server/.next/server/chunks/ssr/src_components_1pytjhvy4c2mp._.js +1 -1
  893. package/server/.next/server/chunks/ssr/src_components_create_create-dialog_tsx_1s_9clly_m1ru._.js +1 -1
  894. package/server/.next/server/chunks/ssr/src_components_row-menu_tsx_0rzpl9elzpy8u._.js +1 -1
  895. package/server/.next/server/chunks/ssr/src_lib_0-xd6p5793qdu._.js +3 -0
  896. package/server/.next/server/chunks/ssr/src_lib_005l0kcpyu43o._.js +3 -2
  897. package/server/.next/server/chunks/ssr/src_lib_033ses2c4-ww-._.js +1 -1
  898. package/server/.next/server/chunks/ssr/src_lib_0br09js6tlkn0._.js +3 -0
  899. package/server/.next/server/chunks/ssr/src_lib_0f_4mvf4-xxst._.js +1 -1
  900. package/server/.next/server/chunks/ssr/src_lib_0n1xnas42gur9._.js +1 -1
  901. package/server/.next/server/chunks/ssr/src_lib_0qbcg988i_-ee._.js +3 -0
  902. package/server/.next/server/chunks/ssr/src_lib_16oqslmhfgod1._.js +3 -0
  903. package/server/.next/server/chunks/ssr/src_lib_18e550s395xn5._.js +3 -0
  904. package/server/.next/server/chunks/ssr/src_lib_18wgdeemqm6gg._.js +3 -0
  905. package/server/.next/server/chunks/ssr/src_lib_1_5ea0kxdn6zt._.js +3 -0
  906. package/server/.next/server/chunks/ssr/src_lib_1xwavi_m_li7p._.js +3 -0
  907. package/server/.next/server/chunks/ssr/src_lib_1ywf_wup1kxy_._.js +1 -1
  908. package/server/.next/server/chunks/ssr/src_lib_20y7pw44m8gs0._.js +1 -1
  909. package/server/.next/server/chunks/ssr/src_lib_alerts_catalog_ts_1ndg28acul64q._.js +1 -1
  910. package/server/.next/server/chunks/ssr/src_lib_backoff_ts_1ng2bz5j0w501._.js +3 -0
  911. package/server/.next/server/chunks/ssr/src_lib_collector_db-tasks_ts_1srkgjghwj3ma._.js +3 -0
  912. package/server/.next/server/chunks/ssr/src_lib_collector_http-check_ts_0bh0rtjky3u1-._.js +3 -0
  913. package/server/.next/server/chunks/ssr/src_lib_collector_node-runtime_ts_0778fef3fi3zj._.js +3 -0
  914. package/server/.next/server/chunks/ssr/src_lib_collector_run_ts_0-q8is8s0y9cq._.js +3 -3
  915. package/server/.next/server/chunks/ssr/src_lib_data_apps-db_ts_02ovqtci8e7o6._.js +3 -0
  916. package/server/.next/server/chunks/ssr/src_lib_data_deployments-db_ts_1shbv_55rwa2-._.js +3 -0
  917. package/server/.next/server/chunks/ssr/src_lib_data_provider-status-db_ts_09oo6p4m7x7te._.js +3 -0
  918. package/server/.next/server/chunks/ssr/src_lib_data_public-status-db_ts_0gvnrjcitruqe._.js +1 -1
  919. package/server/.next/server/chunks/ssr/src_lib_data_supabase-action_ts_0h0b758akvlvd._.js +1 -1
  920. package/server/.next/server/chunks/ssr/src_lib_data_vercel-action_ts_1hvera3nwo5fp._.js +1 -1
  921. package/server/.next/server/chunks/ssr/src_lib_demo_0a5wqvhuj5hjh._.js +3 -0
  922. package/server/.next/server/chunks/ssr/src_lib_demo_0mr090huk17s8._.js +3 -0
  923. package/server/.next/server/chunks/ssr/src_lib_demo_1wu-a6lubzph6._.js +3 -0
  924. package/server/.next/server/chunks/ssr/src_lib_deps_plan_ts_0bctf8v4qttk5._.js +1 -1
  925. package/server/.next/server/chunks/ssr/src_lib_domain-move_ts_04stiet1-xpe2._.js +3 -0
  926. package/server/.next/server/chunks/ssr/src_lib_rate-limit_ts_0r-eu6to05vyx._.js +1 -1
  927. package/server/.next/server/chunks/ssr/src_lib_sections_ts_0r8u4nvlpdkgq._.js +3 -0
  928. package/server/.next/server/chunks/ssr/src_lib_utils_ts_0m4hn6s00gc2u._.js +3 -0
  929. package/server/.next/server/chunks/ssr/src_lib_view_databases_ts_1ovdbo8spjhf9._.js +1 -1
  930. package/server/.next/server/chunks/ssr/src_lib_view_deploy-actions_ts_110iixnn6rdh9._.js +3 -0
  931. package/server/.next/server/chunks/ssr/src_lib_view_display-name_ts_0xoimm6j7bwnf._.js +1 -1
  932. package/server/.next/server/chunks/ssr/src_lib_view_labels_ts_1uxs84z7vclz5._.js +1 -1
  933. package/server/.next/server/chunks/ssr/src_lib_view_usage_ts_1h1tj0m3n2vul._.js +1 -1
  934. package/server/.next/server/chunks/ssr/src_private_04omlb_sgy-_r._.js +1 -1
  935. package/server/.next/server/chunks/ssr/src_private_0iy_wyg2p1jkn._.js +1 -1
  936. package/server/.next/server/chunks/ssr/src_private_actions_decide-form_tsx_1hngtxpyle3v8._.js +1 -1
  937. package/server/.next/server/chunks/ssr/src_private_actions_proposals-settings_ts_16v2x9a4amejq._.js +1 -1
  938. package/server/.next/server/chunks/ssr/src_private_actions_telegram-approvals_ts_14gvz6qi_j4aa._.js +1 -1
  939. package/server/.next/server/chunks/ssr/src_private_ai_gateway_ts_04_5ao9914d0p._.js +1 -1
  940. package/server/.next/server/chunks/ssr/src_private_ai_providers_actions_ts_0wxa36ai6s5nn._.js +1 -1
  941. package/server/.next/server/chunks/ssr/src_private_ai_usage-analytics_ts_1bxba3xarzol0._.js +1 -1
  942. package/server/.next/server/chunks/ssr/src_private_assist_advisor-notes_ts_0qkpm5c3la7fo._.js +6 -6
  943. package/server/.next/server/chunks/ssr/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
  944. package/server/.next/server/middleware-build-manifest.js +3 -14
  945. package/server/.next/server/middleware.js +1 -1
  946. package/server/.next/server/next-font-manifest.js +1 -1
  947. package/server/.next/server/next-font-manifest.json +0 -4
  948. package/server/.next/server/pages/404.html +1 -1
  949. package/server/.next/server/pages/500.html +1 -1
  950. package/server/.next/server/preview-props.json +3 -3
  951. package/server/.next/server/server-reference-manifest.js +1 -1
  952. package/server/.next/server/server-reference-manifest.json +242 -212
  953. package/server/.next/static/chunks/0-_zjfssid86w.js +33 -0
  954. package/server/.next/static/chunks/02-edmd1oolf2.css +3 -0
  955. package/server/.next/static/chunks/02e07gc948zdh.js +1 -0
  956. package/server/.next/static/chunks/05p62k_8g05pm.js +76 -0
  957. package/server/.next/static/chunks/073u0a0mfexc8.js +1 -0
  958. package/server/.next/static/chunks/09fx7h5vm68up.js +1 -0
  959. package/server/.next/static/chunks/0a5vchcarwyam.js +1 -0
  960. package/server/.next/static/chunks/0ao7_ov9mlvqp.js +1 -0
  961. package/server/.next/static/chunks/0cvmbpyjages7.js +5 -0
  962. package/server/.next/static/chunks/0hnhf3barhk90.js +1 -0
  963. package/server/.next/static/chunks/0i8-ofb4wfcch.js +1 -0
  964. package/server/.next/static/chunks/0id261ol_gl6f.js +1 -0
  965. package/server/.next/static/chunks/0iyozrryj1w49.js +1 -0
  966. package/server/.next/static/chunks/0q2ogu5cn9q9p.js +1 -0
  967. package/server/.next/static/chunks/0z_fqwq62_95p.js +1 -0
  968. package/server/.next/static/chunks/12fo0pcbpv7lw.js +1 -0
  969. package/server/.next/static/chunks/12l7tr29-a97t.js +1 -0
  970. package/server/.next/static/chunks/16d1ws92me6_q.js +1 -0
  971. package/server/.next/static/chunks/1__8cm_-lydee.js +1 -0
  972. package/server/.next/static/chunks/1hmur12m0hx3z.js +1 -0
  973. package/server/.next/static/chunks/1o1lidcbrrh92.js +1 -0
  974. package/server/.next/static/chunks/1pre7l9hmk-b6.js +1 -0
  975. package/server/.next/static/chunks/1qxc6cck2xkbs.js +1 -0
  976. package/server/.next/static/chunks/205s3z3_jvp5m.js +1 -0
  977. package/server/.next/static/chunks/20cpkauaj8e6x.js +7 -0
  978. package/server/.next/static/chunks/25meucm7i1e7b.js +1 -0
  979. package/server/.next/static/chunks/2oy7awlquezq_.js +1 -0
  980. package/server/.next/static/chunks/2pj8subq20y-_.js +1 -0
  981. package/server/.next/static/chunks/2qcurt9u9shwc.js +1 -0
  982. package/server/.next/static/chunks/2scf40c-_g_q1.js +1 -0
  983. package/server/.next/static/chunks/2tnx5isef9ryw.js +1 -0
  984. package/server/.next/static/chunks/2v_f39dz8sa3-.js +1 -0
  985. package/server/.next/static/chunks/2whojv56qi3ke.js +1 -0
  986. package/server/.next/static/chunks/2wlen-jacsbqv.js +1 -0
  987. package/server/.next/static/chunks/319s97ka6eaex.js +1 -0
  988. package/server/.next/static/chunks/36bqhxadlfbfn.js +1 -0
  989. package/server/.next/static/chunks/36js6cf9c-53b.js +1 -0
  990. package/server/.next/static/chunks/372gugw4ldy47.js +1 -0
  991. package/server/.next/static/chunks/39n_1gky-xh0a.js +1 -0
  992. package/server/.next/static/chunks/3fv862m8cvcoe.js +1 -0
  993. package/server/.next/static/chunks/3g73nar6-7bqk.js +1 -0
  994. package/server/.next/static/chunks/3orhi-m-n-ra4.js +1 -0
  995. package/server/.next/static/chunks/3u3h2mlon2qu7.js +1 -0
  996. package/server/.next/static/chunks/3vacue9vhoqag.js +1 -0
  997. package/server/.next/static/chunks/3x8-w_p0n-gsd.js +1 -0
  998. package/server/.next/static/chunks/3xo5igjfumqip.js +1 -0
  999. package/server/.next/static/chunks/3yljsdgzvrkdf.js +1 -0
  1000. package/server/.next/static/chunks/3zx1pe40m_ddz.js +1 -0
  1001. package/server/.next/static/chunks/415ijq-anmr2o.js +1 -0
  1002. package/server/.next/static/chunks/43wm4_0-0-eej.js +1 -0
  1003. package/server/.next/static/chunks/44bizq7fli9cp.js +1 -0
  1004. package/server/.next/static/media/icon.17zy5uxei5-yo.svg +17 -0
  1005. package/server/drizzle-selfhost/0005_framework_vulnerable_rule.sql +2 -0
  1006. package/server/drizzle-selfhost/0006_monitor_domain_moved.sql +4 -0
  1007. package/server/drizzle-selfhost/meta/_journal.json +54 -40
  1008. package/server/server.js +1 -1
  1009. package/tools/reset-login.mjs +29 -2
  1010. package/server/.next/server/app/(console)/[...slug]/page/app-paths-manifest.json +0 -3
  1011. package/server/.next/server/app/(console)/[...slug]/page/build-manifest.json +0 -22
  1012. package/server/.next/server/app/(console)/[...slug]/page/next-font-manifest.json +0 -11
  1013. package/server/.next/server/app/(console)/[...slug]/page/react-loadable-manifest.json +0 -1
  1014. package/server/.next/server/app/(console)/[...slug]/page/server-reference-manifest.json +0 -95
  1015. package/server/.next/server/app/(console)/[...slug]/page.js +0 -103
  1016. package/server/.next/server/app/(console)/[...slug]/page.js.nft.json +0 -1
  1017. package/server/.next/server/app/(console)/[...slug]/page_client-reference-manifest.js +0 -3
  1018. package/server/.next/server/app/favicon.ico/route/app-paths-manifest.json +0 -3
  1019. package/server/.next/server/app/favicon.ico/route.js +0 -12
  1020. package/server/.next/server/app/favicon.ico/route.js.nft.json +0 -1
  1021. package/server/.next/server/app/favicon.ico.body +0 -0
  1022. package/server/.next/server/app/favicon.ico.meta +0 -1
  1023. package/server/.next/server/chunks/[externals]__0qo8lpb70m87u._.js +0 -3
  1024. package/server/.next/server/chunks/[externals]__100hq0n2xtenb._.js +0 -3
  1025. package/server/.next/server/chunks/[externals]__1irgb5qz1s3gv._.js +0 -3
  1026. package/server/.next/server/chunks/[root-of-the-server]__00hb7hqa7qktx._.js +0 -3
  1027. package/server/.next/server/chunks/[root-of-the-server]__01gitcyenl9ge._.js +0 -3
  1028. package/server/.next/server/chunks/[root-of-the-server]__02m_c7u17aggg._.js +0 -3
  1029. package/server/.next/server/chunks/[root-of-the-server]__049ykc067tlsv._.js +0 -3
  1030. package/server/.next/server/chunks/[root-of-the-server]__04rnior8cyxtx._.js +0 -3
  1031. package/server/.next/server/chunks/[root-of-the-server]__05eh797cjmgya._.js +0 -3
  1032. package/server/.next/server/chunks/[root-of-the-server]__06ek056i_j_uk._.js +0 -3
  1033. package/server/.next/server/chunks/[root-of-the-server]__06f9e4kpi0mw8._.js +0 -3
  1034. package/server/.next/server/chunks/[root-of-the-server]__06jphm4auz_sh._.js +0 -3
  1035. package/server/.next/server/chunks/[root-of-the-server]__06r-019fixp3f._.js +0 -3
  1036. package/server/.next/server/chunks/[root-of-the-server]__07uknh5b-embq._.js +0 -3
  1037. package/server/.next/server/chunks/[root-of-the-server]__07v5e0vzgl4n2._.js +0 -3
  1038. package/server/.next/server/chunks/[root-of-the-server]__07w0ehfomhmm1._.js +0 -3
  1039. package/server/.next/server/chunks/[root-of-the-server]__08fyoixg__c7n._.js +0 -3
  1040. package/server/.next/server/chunks/[root-of-the-server]__091fhe9u6mapu._.js +0 -3
  1041. package/server/.next/server/chunks/[root-of-the-server]__09829lhdhabq5._.js +0 -3
  1042. package/server/.next/server/chunks/[root-of-the-server]__0_rfeg3389imx._.js +0 -3
  1043. package/server/.next/server/chunks/[root-of-the-server]__0a9tv46v8y_c5._.js +0 -3
  1044. package/server/.next/server/chunks/[root-of-the-server]__0aha0ly6g6o_2._.js +0 -3
  1045. package/server/.next/server/chunks/[root-of-the-server]__0b2hzo6nez0we._.js +0 -3
  1046. package/server/.next/server/chunks/[root-of-the-server]__0b9tciqdsctau._.js +0 -3
  1047. package/server/.next/server/chunks/[root-of-the-server]__0b_4w-5x5u7ag._.js +0 -3
  1048. package/server/.next/server/chunks/[root-of-the-server]__0b_jutz-o08fu._.js +0 -3
  1049. package/server/.next/server/chunks/[root-of-the-server]__0bnasoi-x21jc._.js +0 -3
  1050. package/server/.next/server/chunks/[root-of-the-server]__0c4u-u6i71c99._.js +0 -3
  1051. package/server/.next/server/chunks/[root-of-the-server]__0c5w5y-db0jkb._.js +0 -3
  1052. package/server/.next/server/chunks/[root-of-the-server]__0d8ypilha-el8._.js +0 -3
  1053. package/server/.next/server/chunks/[root-of-the-server]__0dlwmjtvf308b._.js +0 -3
  1054. package/server/.next/server/chunks/[root-of-the-server]__0el1c67a5ioz_._.js +0 -3
  1055. package/server/.next/server/chunks/[root-of-the-server]__0evbn4gllmqw9._.js +0 -3
  1056. package/server/.next/server/chunks/[root-of-the-server]__0flqwe7amc3mz._.js +0 -3
  1057. package/server/.next/server/chunks/[root-of-the-server]__0fw19tsgp-vbq._.js +0 -3
  1058. package/server/.next/server/chunks/[root-of-the-server]__0fw7l5y58_xcd._.js +0 -3
  1059. package/server/.next/server/chunks/[root-of-the-server]__0g1tldn4xjewd._.js +0 -3
  1060. package/server/.next/server/chunks/[root-of-the-server]__0grtjjr51j6xe._.js +0 -3
  1061. package/server/.next/server/chunks/[root-of-the-server]__0h1qhdjpfq1d4._.js +0 -3
  1062. package/server/.next/server/chunks/[root-of-the-server]__0h4n81_nqdr4j._.js +0 -3
  1063. package/server/.next/server/chunks/[root-of-the-server]__0h7pbkmsrhlwj._.js +0 -3
  1064. package/server/.next/server/chunks/[root-of-the-server]__0hqkum2r4f0xy._.js +0 -3
  1065. package/server/.next/server/chunks/[root-of-the-server]__0hty-wue10pro._.js +0 -3
  1066. package/server/.next/server/chunks/[root-of-the-server]__0i598fxqi-zy7._.js +0 -3
  1067. package/server/.next/server/chunks/[root-of-the-server]__0jqgfbhrgi28s._.js +0 -3
  1068. package/server/.next/server/chunks/[root-of-the-server]__0l0w4cbvdatmt._.js +0 -3
  1069. package/server/.next/server/chunks/[root-of-the-server]__0m7i0l3nkbdfm._.js +0 -3
  1070. package/server/.next/server/chunks/[root-of-the-server]__0m_6ooqldguxr._.js +0 -3
  1071. package/server/.next/server/chunks/[root-of-the-server]__0mwiq4mkf8pc5._.js +0 -3
  1072. package/server/.next/server/chunks/[root-of-the-server]__0npmbdrxybln5._.js +0 -3
  1073. package/server/.next/server/chunks/[root-of-the-server]__0nqw6z6fp8wad._.js +0 -3
  1074. package/server/.next/server/chunks/[root-of-the-server]__0olmk-rbbhxlo._.js +0 -3
  1075. package/server/.next/server/chunks/[root-of-the-server]__0owyb9lr5t5u-._.js +0 -3
  1076. package/server/.next/server/chunks/[root-of-the-server]__0p3lnkpxf2-xz._.js +0 -3
  1077. package/server/.next/server/chunks/[root-of-the-server]__0p70ujmcgsfif._.js +0 -3
  1078. package/server/.next/server/chunks/[root-of-the-server]__0q6_612vy0cdp._.js +0 -3
  1079. package/server/.next/server/chunks/[root-of-the-server]__0qmkpydmx3ljf._.js +0 -3
  1080. package/server/.next/server/chunks/[root-of-the-server]__0r-zdzq6ki5gr._.js +0 -3
  1081. package/server/.next/server/chunks/[root-of-the-server]__0si9k9jhdc0bm._.js +0 -3
  1082. package/server/.next/server/chunks/[root-of-the-server]__0t8d8b4qkw3y-._.js +0 -3
  1083. package/server/.next/server/chunks/[root-of-the-server]__0thzl_1s30zso._.js +0 -3
  1084. package/server/.next/server/chunks/[root-of-the-server]__0tl5pxttllr4d._.js +0 -3
  1085. package/server/.next/server/chunks/[root-of-the-server]__0ud71z3im7xje._.js +0 -3
  1086. package/server/.next/server/chunks/[root-of-the-server]__0uyh4jgcd9092._.js +0 -3
  1087. package/server/.next/server/chunks/[root-of-the-server]__0v4-g6c-ls39_._.js +0 -3
  1088. package/server/.next/server/chunks/[root-of-the-server]__0vgnlhvdoh3bn._.js +0 -3
  1089. package/server/.next/server/chunks/[root-of-the-server]__0vugeaxly8zvv._.js +0 -3
  1090. package/server/.next/server/chunks/[root-of-the-server]__0wmbz6u3dhwpq._.js +0 -3
  1091. package/server/.next/server/chunks/[root-of-the-server]__0wy38l7k36j6g._.js +0 -3
  1092. package/server/.next/server/chunks/[root-of-the-server]__0xiz361p5kdhf._.js +0 -3
  1093. package/server/.next/server/chunks/[root-of-the-server]__0xmk00qk0z8xm._.js +0 -3
  1094. package/server/.next/server/chunks/[root-of-the-server]__0y4j2b3eu46x_._.js +0 -3
  1095. package/server/.next/server/chunks/[root-of-the-server]__0z-07azr3zk8s._.js +0 -3
  1096. package/server/.next/server/chunks/[root-of-the-server]__0z-41cwvkliev._.js +0 -3
  1097. package/server/.next/server/chunks/[root-of-the-server]__0znfwqxftxq60._.js +0 -3
  1098. package/server/.next/server/chunks/[root-of-the-server]__0zxyfd7u67hmv._.js +0 -3
  1099. package/server/.next/server/chunks/[root-of-the-server]__1-jsquu8mohcz._.js +0 -3
  1100. package/server/.next/server/chunks/[root-of-the-server]__1-rqermjb77se._.js +0 -3
  1101. package/server/.next/server/chunks/[root-of-the-server]__1-zdlu4-l-ku9._.js +0 -3
  1102. package/server/.next/server/chunks/[root-of-the-server]__10-px6moitvbx._.js +0 -3
  1103. package/server/.next/server/chunks/[root-of-the-server]__10c7apgidgs6x._.js +0 -3
  1104. package/server/.next/server/chunks/[root-of-the-server]__10igiswto_7s8._.js +0 -3
  1105. package/server/.next/server/chunks/[root-of-the-server]__10x3lu8jeqgbt._.js +0 -3
  1106. package/server/.next/server/chunks/[root-of-the-server]__11-van59e9p2a._.js +0 -3
  1107. package/server/.next/server/chunks/[root-of-the-server]__110c-t3wz3nzm._.js +0 -3
  1108. package/server/.next/server/chunks/[root-of-the-server]__116b4n13dv75t._.js +0 -3
  1109. package/server/.next/server/chunks/[root-of-the-server]__11k46kam6tbia._.js +0 -3
  1110. package/server/.next/server/chunks/[root-of-the-server]__11tte6au1b-z-._.js +0 -3
  1111. package/server/.next/server/chunks/[root-of-the-server]__127dbd1prkw0n._.js +0 -3
  1112. package/server/.next/server/chunks/[root-of-the-server]__139-2tkq2di_-._.js +0 -3
  1113. package/server/.next/server/chunks/[root-of-the-server]__13_b24n_f4my4._.js +0 -3
  1114. package/server/.next/server/chunks/[root-of-the-server]__145gadwk31inl._.js +0 -3
  1115. package/server/.next/server/chunks/[root-of-the-server]__14luo1ecxoqh-._.js +0 -3
  1116. package/server/.next/server/chunks/[root-of-the-server]__162cm9ds1c5y2._.js +0 -3
  1117. package/server/.next/server/chunks/[root-of-the-server]__16wve14c32m54._.js +0 -3
  1118. package/server/.next/server/chunks/[root-of-the-server]__1815iu1syowit._.js +0 -3
  1119. package/server/.next/server/chunks/[root-of-the-server]__19kwj690b37xf._.js +0 -3
  1120. package/server/.next/server/chunks/[root-of-the-server]__19vsae2naddj5._.js +0 -3
  1121. package/server/.next/server/chunks/[root-of-the-server]__1__rgcmvy4dq_._.js +0 -3
  1122. package/server/.next/server/chunks/[root-of-the-server]__1_l065umy451k._.js +0 -3
  1123. package/server/.next/server/chunks/[root-of-the-server]__1_ow7lgy0u7st._.js +0 -3
  1124. package/server/.next/server/chunks/[root-of-the-server]__1addx81qjp4tj._.js +0 -3
  1125. package/server/.next/server/chunks/[root-of-the-server]__1aza-7l2pl-pm._.js +0 -3
  1126. package/server/.next/server/chunks/[root-of-the-server]__1bfzck-boudpr._.js +0 -3
  1127. package/server/.next/server/chunks/[root-of-the-server]__1bsyavebtmd7w._.js +0 -3
  1128. package/server/.next/server/chunks/[root-of-the-server]__1cju843cjyf1t._.js +0 -3
  1129. package/server/.next/server/chunks/[root-of-the-server]__1cla4k3dqtcfb._.js +0 -3
  1130. package/server/.next/server/chunks/[root-of-the-server]__1d01ycphxl_8c._.js +0 -3
  1131. package/server/.next/server/chunks/[root-of-the-server]__1e31qar_deo52._.js +0 -3
  1132. package/server/.next/server/chunks/[root-of-the-server]__1fm_cwl42xphm._.js +0 -3
  1133. package/server/.next/server/chunks/[root-of-the-server]__1fnsa-f0t7bxj._.js +0 -3
  1134. package/server/.next/server/chunks/[root-of-the-server]__1g1176fer3j4e._.js +0 -3
  1135. package/server/.next/server/chunks/[root-of-the-server]__1h-j2ehta-v8y._.js +0 -3
  1136. package/server/.next/server/chunks/[root-of-the-server]__1hqy35gww7ps2._.js +0 -3
  1137. package/server/.next/server/chunks/[root-of-the-server]__1i92wg2yuvs4c._.js +0 -3
  1138. package/server/.next/server/chunks/[root-of-the-server]__1iv6vg3z9ho81._.js +0 -3
  1139. package/server/.next/server/chunks/[root-of-the-server]__1j3-sv7eqyhjb._.js +0 -3
  1140. package/server/.next/server/chunks/[root-of-the-server]__1j3w0-cp17tx4._.js +0 -3
  1141. package/server/.next/server/chunks/[root-of-the-server]__1j_iy13gp2-on._.js +0 -3
  1142. package/server/.next/server/chunks/[root-of-the-server]__1jx4n51g-4s45._.js +0 -3
  1143. package/server/.next/server/chunks/[root-of-the-server]__1kg91b3sadtoc._.js +0 -3
  1144. package/server/.next/server/chunks/[root-of-the-server]__1kjndfodqqamq._.js +0 -3
  1145. package/server/.next/server/chunks/[root-of-the-server]__1l8s8oe7j06yw._.js +0 -3
  1146. package/server/.next/server/chunks/[root-of-the-server]__1m08l0n-keil9._.js +0 -3
  1147. package/server/.next/server/chunks/[root-of-the-server]__1mami4vb3y5gd._.js +0 -3
  1148. package/server/.next/server/chunks/[root-of-the-server]__1mse65-7gtj-n._.js +0 -3
  1149. package/server/.next/server/chunks/[root-of-the-server]__1nbabbcvq6ftu._.js +0 -3
  1150. package/server/.next/server/chunks/[root-of-the-server]__1o0vizengmvr5._.js +0 -3
  1151. package/server/.next/server/chunks/[root-of-the-server]__1objhlwwrjfjk._.js +0 -3
  1152. package/server/.next/server/chunks/[root-of-the-server]__1pscqm70t9q_6._.js +0 -3
  1153. package/server/.next/server/chunks/[root-of-the-server]__1r-13hkmnpab2._.js +0 -3
  1154. package/server/.next/server/chunks/[root-of-the-server]__1r-kuxxt5svyg._.js +0 -3
  1155. package/server/.next/server/chunks/[root-of-the-server]__1r0czef7apz8a._.js +0 -3
  1156. package/server/.next/server/chunks/[root-of-the-server]__1r6ztpxo08lwp._.js +0 -3
  1157. package/server/.next/server/chunks/[root-of-the-server]__1rw0i4x2ake3x._.js +0 -3
  1158. package/server/.next/server/chunks/[root-of-the-server]__1s5qcgiravzf_._.js +0 -3
  1159. package/server/.next/server/chunks/[root-of-the-server]__1sucr6flncx_f._.js +0 -3
  1160. package/server/.next/server/chunks/[root-of-the-server]__1t0_ibqlvou_d._.js +0 -3
  1161. package/server/.next/server/chunks/[root-of-the-server]__1t9zp524wouer._.js +0 -3
  1162. package/server/.next/server/chunks/[root-of-the-server]__1tezk6eqndp54._.js +0 -3
  1163. package/server/.next/server/chunks/[root-of-the-server]__1tllcx0d90k6q._.js +0 -3
  1164. package/server/.next/server/chunks/[root-of-the-server]__1u1b3a58anm3f._.js +0 -3
  1165. package/server/.next/server/chunks/[root-of-the-server]__1v-789ydxj30e._.js +0 -3
  1166. package/server/.next/server/chunks/[root-of-the-server]__1vi0u2vkv3tk0._.js +0 -3
  1167. package/server/.next/server/chunks/[root-of-the-server]__1w3svzao_gnxp._.js +0 -3
  1168. package/server/.next/server/chunks/[root-of-the-server]__1w53h3d5ptawi._.js +0 -3
  1169. package/server/.next/server/chunks/[root-of-the-server]__1w_73psnce1dd._.js +0 -3
  1170. package/server/.next/server/chunks/[root-of-the-server]__1wuxzuu_xkzl6._.js +0 -3
  1171. package/server/.next/server/chunks/[root-of-the-server]__1wwzyck7gzela._.js +0 -3
  1172. package/server/.next/server/chunks/[root-of-the-server]__1x7ucdyxuh2_k._.js +0 -3
  1173. package/server/.next/server/chunks/[root-of-the-server]__20_1nfa6fiz-q._.js +0 -3
  1174. package/server/.next/server/chunks/[root-of-the-server]__20b_clyk74g5u._.js +0 -3
  1175. package/server/.next/server/chunks/[root-of-the-server]__20ev6t8zggct2._.js +0 -3
  1176. package/server/.next/server/chunks/_008zv66xvj7ey._.js +0 -37
  1177. package/server/.next/server/chunks/_0a-hy32dzrje8._.js +0 -3
  1178. package/server/.next/server/chunks/_0a7533vs89s78._.js +0 -7
  1179. package/server/.next/server/chunks/_0ejcrge5k4quv._.js +0 -120
  1180. package/server/.next/server/chunks/_0gbk60zhuj4js._.js +0 -3
  1181. package/server/.next/server/chunks/_0k4iqzwm6w5_c._.js +0 -37
  1182. package/server/.next/server/chunks/_0m1ll2r1g77ii._.js +0 -3
  1183. package/server/.next/server/chunks/_0mgm3vz_sy8eb._.js +0 -3
  1184. package/server/.next/server/chunks/_0nt4hve0bi30h._.js +0 -37
  1185. package/server/.next/server/chunks/_0qr77omrkuewo._.js +0 -3
  1186. package/server/.next/server/chunks/_0rjh9w2ih3j2h._.js +0 -3
  1187. package/server/.next/server/chunks/_0ucq4nndk_9mb._.js +0 -3
  1188. package/server/.next/server/chunks/_0uxp3uhmyw1h3._.js +0 -3
  1189. package/server/.next/server/chunks/_0wxm_716tjorj._.js +0 -3
  1190. package/server/.next/server/chunks/_0zbvj132mwn12._.js +0 -3
  1191. package/server/.next/server/chunks/_0zkmkbrbc96-h._.js +0 -3
  1192. package/server/.next/server/chunks/_13a44prd3r109._.js +0 -3
  1193. package/server/.next/server/chunks/_14ymj3uzawde4._.js +0 -7
  1194. package/server/.next/server/chunks/_1b7pc6ohhqxs3._.js +0 -120
  1195. package/server/.next/server/chunks/_1b7ufx8anq8rr._.js +0 -3
  1196. package/server/.next/server/chunks/_1i7qkrp3fnx1a._.js +0 -37
  1197. package/server/.next/server/chunks/_1lq5m27p-ilrw._.js +0 -3
  1198. package/server/.next/server/chunks/_1luzeov9x87mg._.js +0 -7
  1199. package/server/.next/server/chunks/_1mnwzh3z9y4th._.js +0 -3
  1200. package/server/.next/server/chunks/_1zx_54or1pubb._.js +0 -57
  1201. package/server/.next/server/chunks/_next-internal_server_app_favicon_ico_route_actions_0g2jjlssn1kss.js +0 -3
  1202. package/server/.next/server/chunks/node_modules_next_166oduh3hi1qv._.js +0 -3
  1203. package/server/.next/server/chunks/node_modules_next_1bpl0_13bu-mp._.js +0 -3
  1204. package/server/.next/server/chunks/src_014zbodp4djeb._.js +0 -3
  1205. package/server/.next/server/chunks/src_01jp2f5qmh8e2._.js +0 -3
  1206. package/server/.next/server/chunks/src_04pgj--n_d4w5._.js +0 -3
  1207. package/server/.next/server/chunks/src_0dy4w8f4s56m7._.js +0 -3
  1208. package/server/.next/server/chunks/src_0h2cjsnz9pqi7._.js +0 -3
  1209. package/server/.next/server/chunks/src_0h8_rg_r28y_e._.js +0 -3
  1210. package/server/.next/server/chunks/src_0hhtt0p5ybxni._.js +0 -3
  1211. package/server/.next/server/chunks/src_0kwnhwi77unm7._.js +0 -3
  1212. package/server/.next/server/chunks/src_0ldb1fj5qtl-n._.js +0 -3
  1213. package/server/.next/server/chunks/src_0rh392hbuxnv6._.js +0 -3
  1214. package/server/.next/server/chunks/src_0vffc49o4-382._.js +0 -3
  1215. package/server/.next/server/chunks/src_0xqorb3-ef3ub._.js +0 -3
  1216. package/server/.next/server/chunks/src_10y_2e6znqpoa._.js +0 -3
  1217. package/server/.next/server/chunks/src_17m9gvb5o-w8p._.js +0 -3
  1218. package/server/.next/server/chunks/src_1dsh9rzlos6-1._.js +0 -3
  1219. package/server/.next/server/chunks/src_1hy7u0jtydq_d._.js +0 -3
  1220. package/server/.next/server/chunks/src_1j2o14j0-23xv._.js +0 -3
  1221. package/server/.next/server/chunks/src_1j71dvub05y-4._.js +0 -3
  1222. package/server/.next/server/chunks/src_1no_yh953mran._.js +0 -3
  1223. package/server/.next/server/chunks/src_1s7yll47_n_hy._.js +0 -3
  1224. package/server/.next/server/chunks/src_lib_03a2ehk2-znxl._.js +0 -3
  1225. package/server/.next/server/chunks/src_lib_08u7n7-yunfvd._.js +0 -4
  1226. package/server/.next/server/chunks/src_lib_0d-fifn3g3zp4._.js +0 -3
  1227. package/server/.next/server/chunks/src_lib_0dyhs-qioyjww._.js +0 -3
  1228. package/server/.next/server/chunks/src_lib_0hkrs-q6hzcww._.js +0 -3
  1229. package/server/.next/server/chunks/src_lib_0oz4gm8agoidh._.js +0 -6
  1230. package/server/.next/server/chunks/src_lib_0s_txig7jm3ty._.js +0 -9
  1231. package/server/.next/server/chunks/src_lib_0x4n8swwa3zn7._.js +0 -3
  1232. package/server/.next/server/chunks/src_lib_0y-obfzqjj0c6._.js +0 -6
  1233. package/server/.next/server/chunks/src_lib_10_w0ihgmx4e6._.js +0 -6
  1234. package/server/.next/server/chunks/src_lib_10vqn6q0h8kls._.js +0 -4
  1235. package/server/.next/server/chunks/src_lib_15wd7ab4u5nrn._.js +0 -9
  1236. package/server/.next/server/chunks/src_lib_1p21oczr6lh5a._.js +0 -3
  1237. package/server/.next/server/chunks/src_lib_1s-3a-lp7wq7s._.js +0 -3
  1238. package/server/.next/server/chunks/src_lib_1tzoqx44yogsk._.js +0 -4
  1239. package/server/.next/server/chunks/src_lib_1v1ja5mvs12l3._.js +0 -3
  1240. package/server/.next/server/chunks/src_lib_1y3rtb5bjz0-k._.js +0 -3
  1241. package/server/.next/server/chunks/src_lib_1yewk45thnv1h._.js +0 -3
  1242. package/server/.next/server/chunks/src_lib_1z73euz6d3tus._.js +0 -6
  1243. package/server/.next/server/chunks/src_lib_data_0ask_rbmgwlf3._.js +0 -3
  1244. package/server/.next/server/chunks/src_lib_data_0e155tkqeoojm._.js +0 -3
  1245. package/server/.next/server/chunks/src_lib_demo_1vea4wqi-dxio._.js +0 -3
  1246. package/server/.next/server/chunks/src_lib_demo_1w8p39upm6ea2._.js +0 -3
  1247. package/server/.next/server/chunks/src_lib_demo_session_ts_1gjl21ovvq1na._.js +0 -3
  1248. package/server/.next/server/chunks/src_lib_demo_session_ts_1ou6lpswmwykq._.js +0 -3
  1249. package/server/.next/server/chunks/src_lib_security_osv_ts_1fckitwjz25y3._.js +0 -3
  1250. package/server/.next/server/chunks/ssr/[externals]__020te-_1z03yq._.js +0 -3
  1251. package/server/.next/server/chunks/ssr/[externals]__0d_b-rmqrnp-4._.js +0 -3
  1252. package/server/.next/server/chunks/ssr/[externals]__0jneh11f99ndq._.js +0 -3
  1253. package/server/.next/server/chunks/ssr/[externals]__0q1j6etr_np7z._.js +0 -3
  1254. package/server/.next/server/chunks/ssr/[externals]__0tuq6zpflbfiy._.js +0 -3
  1255. package/server/.next/server/chunks/ssr/[externals]__0zvy4iicnrk95._.js +0 -3
  1256. package/server/.next/server/chunks/ssr/[externals]__1-bg5_534qin1._.js +0 -3
  1257. package/server/.next/server/chunks/ssr/[externals]__19ny_glrblslt._.js +0 -3
  1258. package/server/.next/server/chunks/ssr/[externals]__1a1nz9v0djtee._.js +0 -3
  1259. package/server/.next/server/chunks/ssr/[externals]__1ut5w9sjvvugj._.js +0 -3
  1260. package/server/.next/server/chunks/ssr/[externals]__1wps6-uuzn43x._.js +0 -3
  1261. package/server/.next/server/chunks/ssr/[root-of-the-server]__02cq5r26w4itc._.js +0 -3
  1262. package/server/.next/server/chunks/ssr/[root-of-the-server]__02ekfgznq_frg._.js +0 -3
  1263. package/server/.next/server/chunks/ssr/[root-of-the-server]__02qyxz9eh8_eh._.js +0 -3
  1264. package/server/.next/server/chunks/ssr/[root-of-the-server]__02s8g4eagqfmb._.js +0 -3
  1265. package/server/.next/server/chunks/ssr/[root-of-the-server]__04ovk2bqwu87z._.js +0 -3
  1266. package/server/.next/server/chunks/ssr/[root-of-the-server]__052_cprs0alpy._.js +0 -3
  1267. package/server/.next/server/chunks/ssr/[root-of-the-server]__0543ddliluvv3._.js +0 -3
  1268. package/server/.next/server/chunks/ssr/[root-of-the-server]__08479d23kb1xv._.js +0 -3
  1269. package/server/.next/server/chunks/ssr/[root-of-the-server]__08fqg76puqdfr._.js +0 -3
  1270. package/server/.next/server/chunks/ssr/[root-of-the-server]__08lyheht537x7._.js +0 -3
  1271. package/server/.next/server/chunks/ssr/[root-of-the-server]__08r-36gsbhzfl._.js +0 -3
  1272. package/server/.next/server/chunks/ssr/[root-of-the-server]__09-0oydof-7uw._.js +0 -3
  1273. package/server/.next/server/chunks/ssr/[root-of-the-server]__09nm_hn1c8zhf._.js +0 -3
  1274. package/server/.next/server/chunks/ssr/[root-of-the-server]__09zhej94-8cfl._.js +0 -3
  1275. package/server/.next/server/chunks/ssr/[root-of-the-server]__0acmauri7z1sg._.js +0 -3
  1276. package/server/.next/server/chunks/ssr/[root-of-the-server]__0aqyve_ff5w0a._.js +0 -3
  1277. package/server/.next/server/chunks/ssr/[root-of-the-server]__0bk5eahqwy8sh._.js +0 -3
  1278. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ct71emqfru3b._.js +0 -3
  1279. package/server/.next/server/chunks/ssr/[root-of-the-server]__0e9m8up0h1qhl._.js +0 -3
  1280. package/server/.next/server/chunks/ssr/[root-of-the-server]__0eiatxdstconl._.js +0 -3
  1281. package/server/.next/server/chunks/ssr/[root-of-the-server]__0gm7dev9velgg._.js +0 -3
  1282. package/server/.next/server/chunks/ssr/[root-of-the-server]__0go63he_23y9m._.js +0 -3
  1283. package/server/.next/server/chunks/ssr/[root-of-the-server]__0h9gtpapca7i_._.js +0 -3
  1284. package/server/.next/server/chunks/ssr/[root-of-the-server]__0hln97a4qcziv._.js +0 -3
  1285. package/server/.next/server/chunks/ssr/[root-of-the-server]__0jijx2bqn0en9._.js +0 -3
  1286. package/server/.next/server/chunks/ssr/[root-of-the-server]__0krmmz0jerb62._.js +0 -3
  1287. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ksvf4x4zcbpb._.js +0 -3
  1288. package/server/.next/server/chunks/ssr/[root-of-the-server]__0lc7my3iqbrsu._.js +0 -3
  1289. package/server/.next/server/chunks/ssr/[root-of-the-server]__0lt7660aka4d-._.js +0 -3
  1290. package/server/.next/server/chunks/ssr/[root-of-the-server]__0msyy6xoone7-._.js +0 -3
  1291. package/server/.next/server/chunks/ssr/[root-of-the-server]__0n7cj-oti5wct._.js +0 -4
  1292. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ncef7_34ta3-._.js +0 -3
  1293. package/server/.next/server/chunks/ssr/[root-of-the-server]__0nk9sgklibvso._.js +0 -3
  1294. package/server/.next/server/chunks/ssr/[root-of-the-server]__0nlzqp6jk7rac._.js +0 -3
  1295. package/server/.next/server/chunks/ssr/[root-of-the-server]__0op0kqh43wd-a._.js +0 -3
  1296. package/server/.next/server/chunks/ssr/[root-of-the-server]__0qe9gfdyim9-4._.js +0 -3
  1297. package/server/.next/server/chunks/ssr/[root-of-the-server]__0s5ikdxrwjpuv._.js +0 -3
  1298. package/server/.next/server/chunks/ssr/[root-of-the-server]__0tf_y6x-civd1._.js +0 -3
  1299. package/server/.next/server/chunks/ssr/[root-of-the-server]__0z8wbpv0sokm-._.js +0 -3
  1300. package/server/.next/server/chunks/ssr/[root-of-the-server]__1-5oo48nrva5i._.js +0 -3
  1301. package/server/.next/server/chunks/ssr/[root-of-the-server]__1-7rv__xugolc._.js +0 -3
  1302. package/server/.next/server/chunks/ssr/[root-of-the-server]__1-o_iq-ed9vc8._.js +0 -3
  1303. package/server/.next/server/chunks/ssr/[root-of-the-server]__10bkg3o65q6r4._.js +0 -3
  1304. package/server/.next/server/chunks/ssr/[root-of-the-server]__10d1_0sush0ly._.js +0 -3
  1305. package/server/.next/server/chunks/ssr/[root-of-the-server]__119-39ph_0j3f._.js +0 -3
  1306. package/server/.next/server/chunks/ssr/[root-of-the-server]__12qymdfh83hht._.js +0 -3
  1307. package/server/.next/server/chunks/ssr/[root-of-the-server]__13oi70jo-u731._.js +0 -4
  1308. package/server/.next/server/chunks/ssr/[root-of-the-server]__146kj3-h6fkaq._.js +0 -3
  1309. package/server/.next/server/chunks/ssr/[root-of-the-server]__14v88t9px5pb6._.js +0 -3
  1310. package/server/.next/server/chunks/ssr/[root-of-the-server]__15j_u2bz3jc-a._.js +0 -3
  1311. package/server/.next/server/chunks/ssr/[root-of-the-server]__15n-r12rnj61t._.js +0 -3
  1312. package/server/.next/server/chunks/ssr/[root-of-the-server]__16o4p3l21rdq3._.js +0 -3
  1313. package/server/.next/server/chunks/ssr/[root-of-the-server]__171npv87rwei1._.js +0 -3
  1314. package/server/.next/server/chunks/ssr/[root-of-the-server]__176fov12nmg0c._.js +0 -3
  1315. package/server/.next/server/chunks/ssr/[root-of-the-server]__17kocbnwlcw6d._.js +0 -3
  1316. package/server/.next/server/chunks/ssr/[root-of-the-server]__17zzr7zjfaj94._.js +0 -3
  1317. package/server/.next/server/chunks/ssr/[root-of-the-server]__18s2sszcjwz_x._.js +0 -3
  1318. package/server/.next/server/chunks/ssr/[root-of-the-server]__19_nr6j2w-in_._.js +0 -3
  1319. package/server/.next/server/chunks/ssr/[root-of-the-server]__1biup3mh_6gel._.js +0 -3
  1320. package/server/.next/server/chunks/ssr/[root-of-the-server]__1cwrbme6aoi_x._.js +0 -3
  1321. package/server/.next/server/chunks/ssr/[root-of-the-server]__1euvy9wcyro9t._.js +0 -3
  1322. package/server/.next/server/chunks/ssr/[root-of-the-server]__1ews36zthoaro._.js +0 -3
  1323. package/server/.next/server/chunks/ssr/[root-of-the-server]__1f02dck4ff54w._.js +0 -3
  1324. package/server/.next/server/chunks/ssr/[root-of-the-server]__1gh2hxr2l59r6._.js +0 -3
  1325. package/server/.next/server/chunks/ssr/[root-of-the-server]__1gw6334w8y2my._.js +0 -3
  1326. package/server/.next/server/chunks/ssr/[root-of-the-server]__1i69oli51is1u._.js +0 -3
  1327. package/server/.next/server/chunks/ssr/[root-of-the-server]__1ikedn5g4-l15._.js +0 -3
  1328. package/server/.next/server/chunks/ssr/[root-of-the-server]__1k1fmq0-rg3p0._.js +0 -3
  1329. package/server/.next/server/chunks/ssr/[root-of-the-server]__1lrilann8v4wn._.js +0 -3
  1330. package/server/.next/server/chunks/ssr/[root-of-the-server]__1lv3bun_d6qpi._.js +0 -3
  1331. package/server/.next/server/chunks/ssr/[root-of-the-server]__1lx2k37wgre3d._.js +0 -3
  1332. package/server/.next/server/chunks/ssr/[root-of-the-server]__1owrn7crnsybx._.js +0 -3
  1333. package/server/.next/server/chunks/ssr/[root-of-the-server]__1qltiqn0htqnx._.js +0 -3
  1334. package/server/.next/server/chunks/ssr/[root-of-the-server]__1qrlp_d3-c1x9._.js +0 -3
  1335. package/server/.next/server/chunks/ssr/[root-of-the-server]__1s5zrlyqayctz._.js +0 -3
  1336. package/server/.next/server/chunks/ssr/[root-of-the-server]__1w1472ukyh58r._.js +0 -3
  1337. package/server/.next/server/chunks/ssr/[root-of-the-server]__1yfl8wmoazlwo._.js +0 -3
  1338. package/server/.next/server/chunks/ssr/[root-of-the-server]__1zhd84kcbex_x._.js +0 -3
  1339. package/server/.next/server/chunks/ssr/[root-of-the-server]__20ht054m5-_d6._.js +0 -3
  1340. package/server/.next/server/chunks/ssr/_05kq3r87s7p3q._.js +0 -3
  1341. package/server/.next/server/chunks/ssr/_08ph09r66b11v._.js +0 -3
  1342. package/server/.next/server/chunks/ssr/_0_tr9fol2yq33._.js +0 -4
  1343. package/server/.next/server/chunks/ssr/_0_ul4mlc_pj5i._.js +0 -4
  1344. package/server/.next/server/chunks/ssr/_0fxox6h290j6h._.js +0 -3
  1345. package/server/.next/server/chunks/ssr/_0hykblvnwc2ar._.js +0 -3
  1346. package/server/.next/server/chunks/ssr/_0m1ll2r1g77ii._.js +0 -3
  1347. package/server/.next/server/chunks/ssr/_0nutgke9z49bh._.js +0 -3
  1348. package/server/.next/server/chunks/ssr/_0ooh0hh-r_12s._.js +0 -3
  1349. package/server/.next/server/chunks/ssr/_0pn3dn9s9es51._.js +0 -3
  1350. package/server/.next/server/chunks/ssr/_0qnv1uc1_yv28._.js +0 -4
  1351. package/server/.next/server/chunks/ssr/_0r04c1-snv6jw._.js +0 -3
  1352. package/server/.next/server/chunks/ssr/_0rfq_mzyiodmf._.js +0 -3
  1353. package/server/.next/server/chunks/ssr/_0tcmsw8hszixv._.js +0 -3
  1354. package/server/.next/server/chunks/ssr/_0tnfblwwlyvq2._.js +0 -3
  1355. package/server/.next/server/chunks/ssr/_0x1vi7mal3bqd._.js +0 -3
  1356. package/server/.next/server/chunks/ssr/_11w5w9dpxcf1w._.js +0 -3
  1357. package/server/.next/server/chunks/ssr/_14kop_5asppd8._.js +0 -3
  1358. package/server/.next/server/chunks/ssr/_16t9k9e5cjvas._.js +0 -3
  1359. package/server/.next/server/chunks/ssr/_17xmdlg5_8s76._.js +0 -3
  1360. package/server/.next/server/chunks/ssr/_1__gz-j9u_15n._.js +0 -3
  1361. package/server/.next/server/chunks/ssr/_1_ojvke28lw3y._.js +0 -3
  1362. package/server/.next/server/chunks/ssr/_1c28jitsyufnt._.js +0 -4
  1363. package/server/.next/server/chunks/ssr/_1dx207la592b7._.js +0 -4
  1364. package/server/.next/server/chunks/ssr/_1flla16o7o9ba._.js +0 -3
  1365. package/server/.next/server/chunks/ssr/_1nir32qtr99-r._.js +0 -4
  1366. package/server/.next/server/chunks/ssr/_1qt1czw3w8dww._.js +0 -3
  1367. package/server/.next/server/chunks/ssr/_1sq12-1_02tzt._.js +0 -4
  1368. package/server/.next/server/chunks/ssr/_1ykxf4mi60jog._.js +0 -4
  1369. package/server/.next/server/chunks/ssr/_1zr0t31h18f2p._.js +0 -3
  1370. package/server/.next/server/chunks/ssr/_20ln-4gu85-yt._.js +0 -3
  1371. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_page_actions_1uaicj0j8stji.js +0 -3
  1372. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_firebase_page_actions_215m-kkv06r4z.js +0 -3
  1373. package/server/.next/server/chunks/ssr/node_modules_041o69opnip9_._.js +0 -3
  1374. package/server/.next/server/chunks/ssr/node_modules_@base-ui_react_dialog_index_parts_mjs_0wvx70_xziwkw._.js +0 -3
  1375. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_00mnhied2lajr.js +0 -3
  1376. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0258fhwe3r49a.js +0 -3
  1377. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_030uvarevc52x.js +0 -3
  1378. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_08nk-xg737vfb.js +0 -3
  1379. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_08tyiz9d0lm9w.js +0 -3
  1380. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_09sjrubxp_rj2.js +0 -3
  1381. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0_bt7te8snw13.js +0 -3
  1382. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0_sbp7ay425x_.js +0 -3
  1383. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0b6yug3vz_f5i.js +0 -3
  1384. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0d4fbjkqhtcy1.js +0 -3
  1385. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0drw64qqgo4t4.js +0 -3
  1386. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0f1q6zt-_lhr2.js +0 -3
  1387. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0j67up203frfc.js +0 -3
  1388. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0m1sh-r1a08nu.js +0 -3
  1389. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0m80vhox8yne_.js +0 -3
  1390. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0madmy1ghn2d_.js +0 -3
  1391. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0oonr-4chwcci.js +0 -3
  1392. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0opsftra4yyso.js +0 -3
  1393. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pz49shx663y1.js +0 -3
  1394. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0rb6ju1slcbnm.js +0 -3
  1395. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0re64vewl4bd9.js +0 -3
  1396. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0s9srhxdns9u3.js +0 -3
  1397. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0vfaoq0q8fb9j.js +0 -3
  1398. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1-a6-p-bbfew5.js +0 -3
  1399. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_105eedqksbfit.js +0 -3
  1400. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_10deooxbcl7dn.js +0 -3
  1401. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_10p350-tq8wue.js +0 -3
  1402. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_13zeb30aqtlf2.js +0 -3
  1403. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_163j9d9tcnnjx.js +0 -3
  1404. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_18lxgbslt6r8b.js +0 -3
  1405. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1_fjxf0k32zmt.js +0 -3
  1406. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1_qogypi_aiam.js +0 -3
  1407. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1a04whtr87syz.js +0 -3
  1408. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1b0g9w0uow3x5.js +0 -3
  1409. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1d8w2j-twvhc-.js +0 -3
  1410. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dm4bx5yqfx5d.js +0 -3
  1411. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ejivqe23qgi6.js +0 -3
  1412. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1f4rp6x19w0vu.js +0 -3
  1413. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1g2tu-twl68c2.js +0 -3
  1414. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1jhcfycewcquz.js +0 -3
  1415. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1kb_ff04m4p78.js +0 -3
  1416. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1kz-w63djss2p.js +0 -3
  1417. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1mwwly61gvbnl.js +0 -3
  1418. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1nnmbb1a34pgl.js +0 -3
  1419. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1o0p09ki2at8x.js +0 -3
  1420. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1q1pd2kc4g0v1.js +0 -3
  1421. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1vswl-lmn1feb.js +0 -3
  1422. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1wg7_z4bxv6ru.js +0 -3
  1423. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1x6mq0hf94v16.js +0 -3
  1424. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_20dal1y611l3i.js +0 -3
  1425. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_21bzvd4_jyx44.js +0 -3
  1426. package/server/.next/server/chunks/ssr/src_01jp2f5qmh8e2._.js +0 -3
  1427. package/server/.next/server/chunks/ssr/src_0qvu1m5b9qo28._.js +0 -3
  1428. package/server/.next/server/chunks/ssr/src_0t6-d5hmzrbp1._.js +0 -3
  1429. package/server/.next/server/chunks/ssr/src_1717pig1-y5th._.js +0 -3
  1430. package/server/.next/server/chunks/ssr/src_1iyzhhf1u_gwo._.js +0 -3
  1431. package/server/.next/server/chunks/ssr/src_1ottjkdvhje3g._.js +0 -3
  1432. package/server/.next/server/chunks/ssr/src_1x6t-w3_nu4w7._.js +0 -3
  1433. package/server/.next/server/chunks/ssr/src_app_(console)_1l7irblrb5fae._.js +0 -3
  1434. package/server/.next/server/chunks/ssr/src_app_(console)_[___slug]_page_tsx_0b007i3c1v_vg._.js +0 -3
  1435. package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_088bs149wsgca._.js +0 -3
  1436. package/server/.next/server/chunks/ssr/src_app_(console)_firebase_page_tsx_0g20hm13dvbc-._.js +0 -3
  1437. package/server/.next/server/chunks/ssr/src_app_signin_1tg6pswa99jbe._.js +0 -3
  1438. package/server/.next/server/chunks/ssr/src_lib_03a2ehk2-znxl._.js +0 -3
  1439. package/server/.next/server/chunks/ssr/src_lib_0etkz1wbvfw-k._.js +0 -3
  1440. package/server/.next/server/chunks/ssr/src_lib_0hkrs-q6hzcww._.js +0 -3
  1441. package/server/.next/server/chunks/ssr/src_lib_0x4n8swwa3zn7._.js +0 -3
  1442. package/server/.next/server/chunks/ssr/src_lib_1coh17dmjagw1._.js +0 -3
  1443. package/server/.next/server/chunks/ssr/src_lib_1nkahiclbn55q._.js +0 -3
  1444. package/server/.next/server/chunks/ssr/src_lib_1p21oczr6lh5a._.js +0 -3
  1445. package/server/.next/server/chunks/ssr/src_lib_1v1jkqs0kbvmq._.js +0 -3
  1446. package/server/.next/server/chunks/ssr/src_lib_1yewk45thnv1h._.js +0 -3
  1447. package/server/.next/server/chunks/ssr/src_lib_demo_0hdl7pzdqejqx._.js +0 -3
  1448. package/server/.next/server/chunks/ssr/src_lib_demo_1w8p39upm6ea2._.js +0 -3
  1449. package/server/.next/server/chunks/ssr/src_lib_demo_visitor-limits_ts_1bx0-ks0r5_gj._.js +0 -3
  1450. package/server/.next/server/chunks/ssr/src_lib_security_osv_ts_1fckitwjz25y3._.js +0 -3
  1451. package/server/.next/static/chunks/08dak2kh1c6_7.js +0 -1
  1452. package/server/.next/static/chunks/0b9slopuz4e8a.js +0 -76
  1453. package/server/.next/static/chunks/0dp-tuwkw7xf8.js +0 -33
  1454. package/server/.next/static/chunks/0fhj_pu5ntcfo.js +0 -1
  1455. package/server/.next/static/chunks/0h9i512dn01kj.js +0 -1
  1456. package/server/.next/static/chunks/0ic6_-0gkd6p7.js +0 -1
  1457. package/server/.next/static/chunks/0icohez16w-ei.js +0 -1
  1458. package/server/.next/static/chunks/0j1wzqg4ukm70.js +0 -1
  1459. package/server/.next/static/chunks/0j_5norjm-kef.js +0 -1
  1460. package/server/.next/static/chunks/0kscmnb071fci.js +0 -1
  1461. package/server/.next/static/chunks/0ld78j1d4j201.js +0 -1
  1462. package/server/.next/static/chunks/0qlb-l1uyqku5.js +0 -1
  1463. package/server/.next/static/chunks/0r-2mywc7qkb_.js +0 -1
  1464. package/server/.next/static/chunks/0udh0u8c6ovgf.css +0 -3
  1465. package/server/.next/static/chunks/0y1ss0tjq0nq0.js +0 -1
  1466. package/server/.next/static/chunks/1-oetq3mwlhds.js +0 -1
  1467. package/server/.next/static/chunks/11ywzwmfd_pt0.js +0 -1
  1468. package/server/.next/static/chunks/1jaozq01v9r6e.js +0 -1
  1469. package/server/.next/static/chunks/1ky5exl-c1kbo.js +0 -1
  1470. package/server/.next/static/chunks/1lsu_fxiyaeiz.js +0 -1
  1471. package/server/.next/static/chunks/1o3_amrh-sxr3.js +0 -1
  1472. package/server/.next/static/chunks/1w9o_jo_pejc5.js +0 -1
  1473. package/server/.next/static/chunks/1yvbs41m8_4nc.js +0 -7
  1474. package/server/.next/static/chunks/22alexnun_rdm.js +0 -1
  1475. package/server/.next/static/chunks/27qwmt1w6-iri.js +0 -1
  1476. package/server/.next/static/chunks/29humkd2-_1oo.js +0 -1
  1477. package/server/.next/static/chunks/29j96yfhxsf41.js +0 -1
  1478. package/server/.next/static/chunks/29qnnsjsgsia6.js +0 -1
  1479. package/server/.next/static/chunks/2ii8j9xuvv604.js +0 -1
  1480. package/server/.next/static/chunks/2m0ftj__ody0m.js +0 -1
  1481. package/server/.next/static/chunks/2rbtw3em5hkt4.js +0 -1
  1482. package/server/.next/static/chunks/2sdyov_lz1uj4.js +0 -1
  1483. package/server/.next/static/chunks/2toeyr9b_nk0e.js +0 -1
  1484. package/server/.next/static/chunks/2w7qxt7ux-m1-.js +0 -1
  1485. package/server/.next/static/chunks/2zc1osymeruya.js +0 -1
  1486. package/server/.next/static/chunks/33fbppn5fotpk.js +0 -1
  1487. package/server/.next/static/chunks/3auw1gobgv94g.js +0 -1
  1488. package/server/.next/static/chunks/3b1p-xm7iow1_.js +0 -1
  1489. package/server/.next/static/chunks/3gl2k6v182lli.js +0 -5
  1490. package/server/.next/static/chunks/3gurl_36kr7sg.js +0 -1
  1491. package/server/.next/static/chunks/3h-i_hcaaf7vs.js +0 -1
  1492. package/server/.next/static/chunks/3kznplgmzot89.js +0 -1
  1493. package/server/.next/static/chunks/3n_n6yeienmn-.js +0 -1
  1494. package/server/.next/static/chunks/3nqciag05fif0.js +0 -1
  1495. package/server/.next/static/chunks/3r3mt51wqymgs.js +0 -1
  1496. package/server/.next/static/chunks/3shbvizselyoq.js +0 -1
  1497. package/server/.next/static/chunks/3vpy-ra0rib9m.js +0 -1
  1498. package/server/.next/static/chunks/3xxagngfonh62.js +0 -1
  1499. package/server/.next/static/chunks/3yv-enyk37whg.js +0 -1
  1500. package/server/.next/static/media/favicon.117ezoe8m31dk.ico +0 -0
  1501. package/server/public/file.svg +0 -1
  1502. package/server/public/globe.svg +0 -1
  1503. package/server/public/next.svg +0 -1
  1504. package/server/public/vercel.svg +0 -1
  1505. package/server/public/window.svg +0 -1
  1506. /package/server/.next/server/app/{favicon.ico → icon.svg}/route/build-manifest.json +0 -0
  1507. /package/server/.next/static/{00CFAqN6pFBVkqJyXSd78 → 90CuiGzddaxNn9lvRkGlH}/_buildManifest.js +0 -0
  1508. /package/server/.next/static/{00CFAqN6pFBVkqJyXSd78 → 90CuiGzddaxNn9lvRkGlH}/_clientMiddlewareManifest.js +0 -0
  1509. /package/server/.next/static/{00CFAqN6pFBVkqJyXSd78 → 90CuiGzddaxNn9lvRkGlH}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- (()=>{"use strict";module.exports=[258401,a=>{var b=a.i(187924),c=a.i(908161),d=a.i(817748),e=a.i(851519),f=a.i(572131),g=a.i(619089),h=a.i(246059),i=a.i(998868),j=a.i(861954),k=a.i(57441),k=k,l=a.i(332485),m=k,n=k,o=k,m=k,k=k;h.z.object({error:h.z.object({status:i.z.string().optional(),message:i.z.string().optional(),details:j.z.array(m.looseObject({reason:i.z.string().optional()})).optional()})}),h.z.object({message:i.z.string()}),h.z.object({missing_permissions:j.z.array(i.z.string()).min(1)}),h.z.object({error:k.enum(["invalid_grant","invalid_client","unauthorized_client"])});let p={"==":"EQUAL","!=":"NOT_EQUAL","<":"LESS_THAN","<=":"LESS_THAN_OR_EQUAL",">":"GREATER_THAN",">=":"GREATER_THAN_OR_EQUAL","array-contains":"ARRAY_CONTAINS",in:"IN","not-in":"NOT_IN","array-contains-any":"ARRAY_CONTAINS_ANY"},q=["string","number","boolean","null"],r=/^(?:__name__|[A-Za-z_][A-Za-z0-9_]{0,99}(?:\.[A-Za-z_][A-Za-z0-9_]{0,99}){0,9})$/;h.z.object({collection:i.z.string().regex(/^(?!__.*__$)(?!\.\.?$)[^/\s][^/]{0,199}$/),where:j.z.array(h.z.object({field:i.z.string().regex(r),op:k.enum(Object.keys(p)),type:k.enum(q),value:i.z.string().max(500)})).max(5),orderBy:h.z.object({field:i.z.string().regex(r),dir:k.enum(["asc","desc"])}).nullable(),limit:l.z.number().int().min(1).max(100)}),j.z.array(m.looseObject({document:h.z.object({name:i.z.string(),fields:n.record(i.z.string(),o.unknown()).optional()}).optional()}));var s=a.i(368114),t=a.i(405050);let u=(0,t.createServerReference)("40f5eab32cd382b285ae8d2285a2ddd4b7b921e732",t.callServer,void 0,t.findSourceMapURL,"firestoreCollectionsAction"),v=(0,t.createServerReference)("60d8c86a9ba13914cc8ab3299a3c6052c822b05b06",t.callServer,void 0,t.findSourceMapURL,"firestoreQueryAction");a.s(["FirestoreConsole",0,function({targets:a}){let[h,i]=(0,f.useState)(a[0]?.id??""),[j,k]=(0,f.useState)(null),[l,m]=(0,f.useState)(!1),[n,o]=(0,f.useState)(""),[r,t]=(0,f.useState)([]),[w,x]=(0,f.useState)(""),[y,z]=(0,f.useState)("asc"),[A,B]=(0,f.useState)(20),[C,D]=(0,f.useState)(null),[E,F]=(0,f.useState)(null),[G,H]=(0,f.useTransition)(),I=a.find(a=>a.id===h),J=(a,b)=>t(c=>c.map(c=>c.key===a?{...c,...b}:c));return(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsxs)(g.M,{tone:"warning",title:"Every query costs Firestore reads",children:["One read per document returned (at least one per query), from the free 50,000 a day. Listing collections costs one read.",I?.readsToday!=null?` This project has used ${I.readsToday.toLocaleString("en")} today.`:""]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-end gap-2",children:[(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Project",(0,b.jsx)("select",{className:(0,s.f)(g.S,"w-56"),value:h,onChange:a=>{i(a.target.value),k(null),o(""),D(null)},children:a.map(a=>(0,b.jsx)("option",{value:a.id,children:a.alias},a.id))})]}),(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Collection",j?(0,b.jsxs)("select",{className:(0,s.f)(g.S,"w-56 font-mono"),value:n,onChange:a=>o(a.target.value),children:[0===j.length&&(0,b.jsx)("option",{value:"",children:"No collections"}),j.map(a=>(0,b.jsx)("option",{value:a,children:a},a))]}):(0,b.jsx)(g.K,{onClick:function(){H(async()=>{try{let a=await u(h);if(!a.ok)return void F(a.error);k(a.data?.collections??[]),m(!!a.data?.more),o(a.data?.collections?.[0]??""),F(null)}catch{F("Something went wrong. Try again.")}})},disabled:G||!h,children:G?"Loading…":"List root collections"})]}),(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Order by",(0,b.jsx)("input",{className:(0,s.f)(g.S,"w-40 font-mono"),placeholder:"field (optional)",value:w,onChange:a=>x(a.target.value)})]}),(0,b.jsxs)("select",{"aria-label":"Direction",className:(0,s.f)(g.S,"w-24"),value:y,onChange:a=>z("desc"===a.target.value?"desc":"asc"),children:[(0,b.jsx)("option",{value:"asc",children:"asc"}),(0,b.jsx)("option",{value:"desc",children:"desc"})]}),(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Limit",(0,b.jsx)("input",{type:"number",min:1,max:100,className:(0,s.f)(g.S,"w-20 font-mono"),value:A,onChange:a=>B(Math.max(1,Math.min(100,Math.round(Number(a.target.value)||1))))})]}),(0,b.jsxs)(g.K,{variant:"primary",className:"ml-auto",onClick:function(){H(async()=>{try{let a=await v(h,{collection:n,where:r.map(({field:a,op:b,type:c,value:d})=>({field:a.trim(),op:b,type:c,value:d})),orderBy:w.trim()?{field:w.trim(),dir:y}:null,limit:A});if(!a.ok){F(a.error),D(null);return}D(a.data?.run??null),F(null)}catch{F("Something went wrong. Try again.")}})},disabled:G||!n,children:[(0,b.jsx)(c.f,{size:15})," ",G?"Running…":"Run query"]})]}),l&&(0,b.jsx)("p",{className:"text-[12.5px] text-ink-soft",children:"Showing the first 100 collections."}),(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[r.map(a=>(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,b.jsx)("span",{className:"w-12 text-[12.5px] text-ink-soft",children:"where"}),(0,b.jsx)("input",{"aria-label":"Field",className:(0,s.f)(g.S,"w-44 font-mono"),placeholder:"field",value:a.field,onChange:b=>J(a.key,{field:b.target.value})}),(0,b.jsx)("select",{"aria-label":"Operator",className:(0,s.f)(g.S,"w-44 font-mono"),value:a.op,onChange:b=>J(a.key,{op:b.target.value}),children:Object.keys(p).map(a=>(0,b.jsx)("option",{value:a,children:a},a))}),(0,b.jsx)("select",{"aria-label":"Value type",className:(0,s.f)(g.S,"w-28"),value:a.type,onChange:b=>J(a.key,{type:b.target.value}),children:q.map(a=>(0,b.jsx)("option",{value:a,children:a},a))}),(0,b.jsx)("input",{"aria-label":"Value",className:(0,s.f)(g.S,"w-56 font-mono"),disabled:"null"===a.type,placeholder:"in"===a.op||"not-in"===a.op||"array-contains-any"===a.op?"a, b, c":"value",value:a.value,onChange:b=>J(a.key,{value:b.target.value})}),(0,b.jsx)(g.K,{size:"sm",variant:"ghost","aria-label":"Remove condition",onClick:()=>t(b=>b.filter(b=>b.key!==a.key)),children:(0,b.jsx)(e.f,{size:14})})]},a.key)),r.length<5&&(0,b.jsx)("div",{children:(0,b.jsxs)(g.K,{size:"sm",variant:"ghost",onClick:()=>t(a=>[...a,{key:Date.now(),field:"",op:"==",type:"string",value:""}]),children:[(0,b.jsx)(d.f,{size:14})," Add where"]})})]}),E&&(0,b.jsx)(g.M,{tone:"danger",title:"The query didn't run",children:E}),C&&(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("div",{className:"flex flex-wrap gap-3 text-[12.5px] text-ink-soft",children:[(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:C.docs.length})," document",1===C.docs.length?"":"s"]}),(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:C.reads})," read",1===C.reads?"":"s"," used"]}),(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:C.durationMs})," ms"]}),C.truncated&&(0,b.jsx)("span",{className:"rounded border border-warn-icon/40 bg-warn-soft px-1.5 text-ink",children:"Truncated"})]}),(0,b.jsx)("div",{className:"max-h-[520px] overflow-auto rounded-md border border-line",children:0===C.docs.length?(0,b.jsx)("p",{className:"px-3 py-2 text-[13px] text-ink-soft",children:"No documents matched."}):C.docs.map(a=>(0,b.jsxs)("div",{className:"border-b border-line px-3 py-2 last:border-b-0",children:[(0,b.jsx)("div",{className:"font-mono text-[12.5px] font-medium text-ink",children:a.id}),(0,b.jsx)("pre",{className:"mt-1 overflow-x-auto whitespace-pre-wrap break-all font-mono text-[12px] text-ink-soft",children:a.json})]},a.id))})]})]})}],258401)},366550,a=>{var b=a.i(187924),c=a.i(908161),d=a.i(572131),e=a.i(823292),f=a.i(611619),g=a.i(619089),h=a.i(462007),i=a.i(368114);let j=[{id:"tables-by-size",label:"Tables by size",sql:`select n.nspname as schema, c.relname as table,
1
+ (()=>{"use strict";module.exports=[258401,a=>{var b=a.i(187924),c=a.i(908161),d=a.i(817748),e=a.i(851519),f=a.i(572131),g=a.i(619089),h=a.i(246059),i=a.i(998868),j=a.i(861954),k=a.i(57441),k=k,l=a.i(332485),m=k,n=k,o=k,m=k,k=k;h.z.object({error:h.z.object({status:i.z.string().optional(),message:i.z.string().optional(),details:j.z.array(m.looseObject({reason:i.z.string().optional()})).optional()})}),h.z.object({message:i.z.string()}),h.z.object({missing_permissions:j.z.array(i.z.string()).min(1)}),h.z.object({error:k.enum(["invalid_grant","invalid_client","unauthorized_client"])});let p={"==":"EQUAL","!=":"NOT_EQUAL","<":"LESS_THAN","<=":"LESS_THAN_OR_EQUAL",">":"GREATER_THAN",">=":"GREATER_THAN_OR_EQUAL","array-contains":"ARRAY_CONTAINS",in:"IN","not-in":"NOT_IN","array-contains-any":"ARRAY_CONTAINS_ANY"},q=["string","number","boolean","null"],r=/^(?:__name__|[A-Za-z_][A-Za-z0-9_]{0,99}(?:\.[A-Za-z_][A-Za-z0-9_]{0,99}){0,9})$/;h.z.object({collection:i.z.string().regex(/^(?!__.*__$)(?!\.\.?$)[^/\s][^/]{0,199}$/),where:j.z.array(h.z.object({field:i.z.string().regex(r),op:k.enum(Object.keys(p)),type:k.enum(q),value:i.z.string().max(500)})).max(5),orderBy:h.z.object({field:i.z.string().regex(r),dir:k.enum(["asc","desc"])}).nullable(),limit:l.z.number().int().min(1).max(100)}),j.z.array(m.looseObject({document:h.z.object({name:i.z.string(),fields:n.record(i.z.string(),o.unknown()).optional()}).optional()}));var s=a.i(368114),t=a.i(405050);let u=(0,t.createServerReference)("40606b26810beb5a68894cfe5b0ff4db692975eef4",t.callServer,void 0,t.findSourceMapURL,"firestoreCollectionsAction"),v=(0,t.createServerReference)("60926b4b706b6c3c6b09ea788ace2712fd55b4ee83",t.callServer,void 0,t.findSourceMapURL,"firestoreQueryAction");a.s(["FirestoreConsole",0,function({targets:a}){let[h,i]=(0,f.useState)(a[0]?.id??""),[j,k]=(0,f.useState)(null),[l,m]=(0,f.useState)(!1),[n,o]=(0,f.useState)(""),[r,t]=(0,f.useState)([]),[w,x]=(0,f.useState)(""),[y,z]=(0,f.useState)("asc"),[A,B]=(0,f.useState)(20),[C,D]=(0,f.useState)(null),[E,F]=(0,f.useState)(null),[G,H]=(0,f.useTransition)(),I=a.find(a=>a.id===h),J=(a,b)=>t(c=>c.map(c=>c.key===a?{...c,...b}:c));return(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsxs)(g.M,{tone:"warning",title:"Every query costs Firestore reads",children:["One read per document returned (at least one per query), from the free 50,000 a day. Listing collections costs one read.",I?.readsToday!=null?` This project has used ${I.readsToday.toLocaleString("en")} today.`:""]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-end gap-2",children:[(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Project",(0,b.jsx)("select",{className:(0,s.f)(g.S,"w-56"),value:h,onChange:a=>{i(a.target.value),k(null),o(""),D(null)},children:a.map(a=>(0,b.jsx)("option",{value:a.id,children:a.alias},a.id))})]}),(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Collection",j?(0,b.jsxs)("select",{className:(0,s.f)(g.S,"w-56 font-mono"),value:n,onChange:a=>o(a.target.value),children:[0===j.length&&(0,b.jsx)("option",{value:"",children:"No collections"}),j.map(a=>(0,b.jsx)("option",{value:a,children:a},a))]}):(0,b.jsx)(g.K,{onClick:function(){H(async()=>{try{let a=await u(h);if(!a.ok)return void F(a.error);k(a.data?.collections??[]),m(!!a.data?.more),o(a.data?.collections?.[0]??""),F(null)}catch{F("Something went wrong. Try again.")}})},disabled:G||!h,children:G?"Loading…":"List root collections"})]}),(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Order by",(0,b.jsx)("input",{className:(0,s.f)(g.S,"w-40 font-mono"),placeholder:"field (optional)",value:w,onChange:a=>x(a.target.value)})]}),(0,b.jsxs)("select",{"aria-label":"Direction",className:(0,s.f)(g.S,"w-24"),value:y,onChange:a=>z("desc"===a.target.value?"desc":"asc"),children:[(0,b.jsx)("option",{value:"asc",children:"asc"}),(0,b.jsx)("option",{value:"desc",children:"desc"})]}),(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Limit",(0,b.jsx)("input",{type:"number",min:1,max:100,className:(0,s.f)(g.S,"w-20 font-mono"),value:A,onChange:a=>B(Math.max(1,Math.min(100,Math.round(Number(a.target.value)||1))))})]}),(0,b.jsxs)(g.K,{variant:"primary",className:"ml-auto",onClick:function(){H(async()=>{try{let a=await v(h,{collection:n,where:r.map(({field:a,op:b,type:c,value:d})=>({field:a.trim(),op:b,type:c,value:d})),orderBy:w.trim()?{field:w.trim(),dir:y}:null,limit:A});if(!a.ok){F(a.error),D(null);return}D(a.data?.run??null),F(null)}catch{F("Something went wrong. Try again.")}})},disabled:G||!n,children:[(0,b.jsx)(c.f,{size:15})," ",G?"Running…":"Run query"]})]}),l&&(0,b.jsx)("p",{className:"text-[12.5px] text-ink-soft",children:"Showing the first 100 collections."}),(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[r.map(a=>(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,b.jsx)("span",{className:"w-12 text-[12.5px] text-ink-soft",children:"where"}),(0,b.jsx)("input",{"aria-label":"Field",className:(0,s.f)(g.S,"w-44 font-mono"),placeholder:"field",value:a.field,onChange:b=>J(a.key,{field:b.target.value})}),(0,b.jsx)("select",{"aria-label":"Operator",className:(0,s.f)(g.S,"w-44 font-mono"),value:a.op,onChange:b=>J(a.key,{op:b.target.value}),children:Object.keys(p).map(a=>(0,b.jsx)("option",{value:a,children:a},a))}),(0,b.jsx)("select",{"aria-label":"Value type",className:(0,s.f)(g.S,"w-28"),value:a.type,onChange:b=>J(a.key,{type:b.target.value}),children:q.map(a=>(0,b.jsx)("option",{value:a,children:a},a))}),(0,b.jsx)("input",{"aria-label":"Value",className:(0,s.f)(g.S,"w-56 font-mono"),disabled:"null"===a.type,placeholder:"in"===a.op||"not-in"===a.op||"array-contains-any"===a.op?"a, b, c":"value",value:a.value,onChange:b=>J(a.key,{value:b.target.value})}),(0,b.jsx)(g.K,{size:"sm",variant:"ghost","aria-label":"Remove condition",onClick:()=>t(b=>b.filter(b=>b.key!==a.key)),children:(0,b.jsx)(e.f,{size:14})})]},a.key)),r.length<5&&(0,b.jsx)("div",{children:(0,b.jsxs)(g.K,{size:"sm",variant:"ghost",onClick:()=>t(a=>[...a,{key:Date.now(),field:"",op:"==",type:"string",value:""}]),children:[(0,b.jsx)(d.f,{size:14})," Add where"]})})]}),E&&(0,b.jsx)(g.M,{tone:"danger",title:"The query didn't run",children:E}),C&&(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("div",{className:"flex flex-wrap gap-3 text-[12.5px] text-ink-soft",children:[(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:C.docs.length})," document",1===C.docs.length?"":"s"]}),(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:C.reads})," read",1===C.reads?"":"s"," used"]}),(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:C.durationMs})," ms"]}),C.truncated&&(0,b.jsx)("span",{className:"rounded border border-warn-icon/40 bg-warn-soft px-1.5 text-ink",children:"Truncated"})]}),(0,b.jsx)("div",{className:"max-h-[520px] overflow-auto rounded-md border border-line",children:0===C.docs.length?(0,b.jsx)("p",{className:"px-3 py-2 text-[13px] text-ink-soft",children:"No documents matched."}):C.docs.map(a=>(0,b.jsxs)("div",{className:"border-b border-line px-3 py-2 last:border-b-0",children:[(0,b.jsx)("div",{className:"font-mono text-[12.5px] font-medium text-ink",children:a.id}),(0,b.jsx)("pre",{className:"mt-1 overflow-x-auto whitespace-pre-wrap break-all font-mono text-[12px] text-ink-soft",children:a.json})]},a.id))})]})]})}],258401)},366550,a=>{var b=a.i(187924),c=a.i(908161),d=a.i(572131),e=a.i(823292),f=a.i(611619),g=a.i(619089),h=a.i(462007),i=a.i(368114);let j=[{id:"tables-by-size",label:"Tables by size",sql:`select n.nspname as schema, c.relname as table,
2
2
  pg_size_pretty(pg_total_relation_size(c.oid)) as total,
3
3
  pg_size_pretty(pg_relation_size(c.oid)) as data,
4
4
  pg_total_relation_size(c.oid) as bytes
@@ -30,6 +30,6 @@ from pg_statio_user_indexes`},{id:"row-estimates",label:"Row counts (estimate)",
30
30
  last_autoanalyze, last_autovacuum
31
31
  from pg_stat_user_tables
32
32
  order by n_live_tup desc
33
- limit 100`}],k="watchpost.sql.snippets.v1";var l=a.i(746097),m=a.i(405050);let n=(0,m.createServerReference)("7078423f4c8d343df20984b21ffbb1a4734d2311be",m.callServer,void 0,m.findSourceMapURL,"runSqlAction");function o(a){try{return window.localStorage.setItem(k,JSON.stringify(a)),!0}catch{return!1}}let p=a=>null===a?"NULL":"string"==typeof a?a:String(a);function q({run:a}){return(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-3 text-[12.5px] text-ink-soft",children:[(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:a.rowCount})," row",1===a.rowCount?"":"s"]}),(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:a.durationMs})," ms"]}),a.truncated&&(0,b.jsx)("span",{className:"rounded border border-warn-icon/40 bg-warn-soft px-1.5 text-ink",children:"Truncated: more rows or data than the console shows"})]}),0===a.columns.length?(0,b.jsx)("p",{className:"text-[13px] text-ink-soft",children:"The statement returned no columns."}):(0,b.jsx)("div",{className:"max-h-[520px] overflow-auto rounded-md border border-line",children:(0,b.jsxs)("table",{className:(0,i.f)(h.o,"font-mono text-[12.5px]"),children:[(0,b.jsx)(h.U,{head:a.columns}),(0,b.jsx)("tbody",{children:a.rows.map((a,c)=>(0,b.jsx)("tr",{children:a.map((a,c)=>(0,b.jsx)("td",{className:(0,i.f)(h.z,"max-w-[420px] overflow-hidden text-ellipsis",null===a&&"text-ink-faint"),title:p(a).length>60?p(a):void 0,children:p(a)},c))},c))})]})})]})}a.s(["SqlConsole",0,function({targets:a}){let[h,m]=(0,d.useState)(a[0]?.id??""),[p,r]=(0,d.useState)(j[0].sql),[s,t]=(0,d.useState)([]),[u,v]=(0,d.useState)(null),[w,x]=(0,d.useState)(null),[y,z]=(0,d.useState)(!1),[A,B]=(0,d.useTransition)();(0,d.useEffect)(()=>{let a=setTimeout(()=>t(function(){try{var a=window.localStorage.getItem(k);if(!a)return[];try{let b=JSON.parse(a);if(!Array.isArray(b))return[];return b.filter(a=>!!a&&"object"==typeof a&&"string"==typeof a.id&&"string"==typeof a.label&&"string"==typeof a.sql).slice(0,30).map(a=>({id:a.id.slice(0,40),label:a.label.slice(0,60),sql:a.sql.slice(0,2e4)}))}catch{return[]}}catch{return[]}}()),0);return()=>clearTimeout(a)},[]);let C=a.find(a=>a.id===h);async function D(a){let b=await n(h,p,a);return b.ok&&b.data?.run?(v(b.data.run),x(null),{ok:!0,message:`${b.data.run.rowCount} row${1===b.data.run.rowCount?"":"s"} in ${b.data.run.durationMs} ms`}):!b.ok&&b.data?.needsWake?(z(!0),{ok:!1,message:l.f}):(v(null),x(b.ok?"No result.":b.error),{ok:!1,message:b.ok?"No result.":b.error})}function E(){if(h&&p.trim()&&!A){if(C?.provider==="neon"&&"active"!==C.wake)return void z(!0);B(async()=>{try{await D(!1)}catch{x("Something went wrong. Try again.")}})}}let F=[...j,...s];return(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-end gap-2",children:[(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Database",(0,b.jsx)("select",{className:(0,i.f)(g.S,"w-56"),value:h,onChange:a=>{m(a.target.value),v(null),x(null)},children:a.map(a=>(0,b.jsxs)("option",{value:a.id,children:[a.alias," · ","supabase"===a.provider?"Supabase":"Neon","idle"===a.wake?" (idle)":""]},a.id))})]}),(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Snippet",(0,b.jsxs)("select",{className:(0,i.f)(g.S,"w-64"),value:"",onChange:a=>{let b=F.find(b=>b.id===a.target.value);b&&r(b.sql)},children:[(0,b.jsx)("option",{value:"",disabled:!0,children:"Insert a snippet…"}),(0,b.jsx)("optgroup",{label:"Built in",children:j.map(a=>(0,b.jsx)("option",{value:a.id,children:a.label},a.id))}),s.length>0&&(0,b.jsx)("optgroup",{label:"Saved in this browser",children:s.map(a=>(0,b.jsx)("option",{value:a.id,children:a.label},a.id))})]})]}),(0,b.jsxs)("div",{className:"ml-auto flex gap-2",children:[(0,b.jsx)(g.K,{size:"sm",variant:"ghost",onClick:function(){let a=window.prompt("Name this snippet (saved in this browser only)")?.trim();if(!a)return;let b=[{id:`local-${Date.now()}`,label:a.slice(0,60),sql:p},...s].slice(0,30);o(b)?(t(b),e.c.success("Snippet saved in this browser")):e.c.error("This browser didn't let the console save it.")},disabled:!p.trim(),children:"Save as snippet"}),(0,b.jsxs)(g.K,{variant:"primary",onClick:E,disabled:A||!h||!p.trim(),children:[(0,b.jsx)(c.f,{size:15})," ",A?"Running…":"Run"]})]})]}),(0,b.jsx)("textarea",{"aria-label":"SQL query",spellCheck:!1,rows:10,value:p,className:(0,i.f)(g.S,"min-h-[180px] resize-y font-mono text-[13px] leading-relaxed"),onChange:a=>r(a.target.value),onKeyDown:a=>{"Enter"===a.key&&(a.ctrlKey||a.metaKey)&&(a.preventDefault(),E())}}),(0,b.jsxs)("p",{className:"text-[12.5px] text-ink-soft",children:["One SELECT, WITH, EXPLAIN, SHOW or TABLE statement. It runs in a read-only transaction that is always rolled back, with a 5 s timeout and at most ",500," rows. Ctrl+Enter runs it. 20 runs per 10 minutes."]}),s.length>0&&(0,b.jsxs)("div",{className:"flex flex-wrap gap-1.5 text-[12.5px] text-ink-soft",children:["Saved here:",s.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded border border-line px-1.5",children:[(0,b.jsx)("button",{type:"button",className:"text-ink hover:underline",onClick:()=>r(a.sql),children:a.label}),(0,b.jsx)("button",{type:"button","aria-label":`Delete snippet ${a.label}`,className:"text-ink-faint hover:text-err",onClick:()=>{var b;let c;return b=a.id,void(o(c=s.filter(a=>a.id!==b))&&t(c))},children:"×"})]},a.id))]}),w&&(0,b.jsx)(g.M,{tone:"danger",title:"The query didn't run",children:w}),u&&(0,b.jsx)(q,{run:u}),(0,b.jsx)(f.f,{open:y,onOpenChange:z,title:`Wake ${C?.alias??"the database"}?`,cta:"Run anyway",body:l.f,onConfirm:async()=>{try{return await D(!0)}catch{return{ok:!1,message:"Something went wrong. Try again."}}}})]})}],366550)}]})();
33
+ limit 100`}],k="watchpost.sql.snippets.v1";var l=a.i(746097),m=a.i(405050);let n=(0,m.createServerReference)("703040950a860d5ea42b7d87a9b3e55ed72e204c8d",m.callServer,void 0,m.findSourceMapURL,"runSqlAction");function o(a){try{return window.localStorage.setItem(k,JSON.stringify(a)),!0}catch{return!1}}let p=a=>null===a?"NULL":"string"==typeof a?a:String(a);function q({run:a}){return(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-3 text-[12.5px] text-ink-soft",children:[(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:a.rowCount})," row",1===a.rowCount?"":"s"]}),(0,b.jsxs)("span",{children:[(0,b.jsx)("b",{className:"font-mono font-medium text-ink",children:a.durationMs})," ms"]}),a.truncated&&(0,b.jsx)("span",{className:"rounded border border-warn-icon/40 bg-warn-soft px-1.5 text-ink",children:"Truncated: more rows or data than the console shows"})]}),0===a.columns.length?(0,b.jsx)("p",{className:"text-[13px] text-ink-soft",children:"The statement returned no columns."}):(0,b.jsx)("div",{className:"max-h-[520px] overflow-auto rounded-md border border-line",children:(0,b.jsxs)("table",{className:(0,i.f)(h.o,"font-mono text-[12.5px]"),children:[(0,b.jsx)(h.U,{head:a.columns}),(0,b.jsx)("tbody",{children:a.rows.map((a,c)=>(0,b.jsx)("tr",{children:a.map((a,c)=>(0,b.jsx)("td",{className:(0,i.f)(h.z,"max-w-[420px] overflow-hidden text-ellipsis",null===a&&"text-ink-faint"),title:p(a).length>60?p(a):void 0,children:p(a)},c))},c))})]})})]})}a.s(["SqlConsole",0,function({targets:a}){let[h,m]=(0,d.useState)(a[0]?.id??""),[p,r]=(0,d.useState)(j[0].sql),[s,t]=(0,d.useState)([]),[u,v]=(0,d.useState)(null),[w,x]=(0,d.useState)(null),[y,z]=(0,d.useState)(!1),[A,B]=(0,d.useTransition)();(0,d.useEffect)(()=>{let a=setTimeout(()=>t(function(){try{var a=window.localStorage.getItem(k);if(!a)return[];try{let b=JSON.parse(a);if(!Array.isArray(b))return[];return b.filter(a=>!!a&&"object"==typeof a&&"string"==typeof a.id&&"string"==typeof a.label&&"string"==typeof a.sql).slice(0,30).map(a=>({id:a.id.slice(0,40),label:a.label.slice(0,60),sql:a.sql.slice(0,2e4)}))}catch{return[]}}catch{return[]}}()),0);return()=>clearTimeout(a)},[]);let C=a.find(a=>a.id===h);async function D(a){let b=await n(h,p,a);return b.ok&&b.data?.run?(v(b.data.run),x(null),{ok:!0,message:`${b.data.run.rowCount} row${1===b.data.run.rowCount?"":"s"} in ${b.data.run.durationMs} ms`}):!b.ok&&b.data?.needsWake?(z(!0),{ok:!1,message:l.f}):(v(null),x(b.ok?"No result.":b.error),{ok:!1,message:b.ok?"No result.":b.error})}function E(){if(h&&p.trim()&&!A){if(C?.provider==="neon"&&"active"!==C.wake)return void z(!0);B(async()=>{try{await D(!1)}catch{x("Something went wrong. Try again.")}})}}let F=[...j,...s];return(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-end gap-2",children:[(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Database",(0,b.jsx)("select",{className:(0,i.f)(g.S,"w-56"),value:h,onChange:a=>{m(a.target.value),v(null),x(null)},children:a.map(a=>(0,b.jsxs)("option",{value:a.id,children:[a.alias," · ","supabase"===a.provider?"Supabase":"Neon","idle"===a.wake?" (idle)":""]},a.id))})]}),(0,b.jsxs)("label",{className:"flex flex-col gap-1 text-[13px] font-medium",children:["Snippet",(0,b.jsxs)("select",{className:(0,i.f)(g.S,"w-64"),value:"",onChange:a=>{let b=F.find(b=>b.id===a.target.value);b&&r(b.sql)},children:[(0,b.jsx)("option",{value:"",disabled:!0,children:"Insert a snippet…"}),(0,b.jsx)("optgroup",{label:"Built in",children:j.map(a=>(0,b.jsx)("option",{value:a.id,children:a.label},a.id))}),s.length>0&&(0,b.jsx)("optgroup",{label:"Saved in this browser",children:s.map(a=>(0,b.jsx)("option",{value:a.id,children:a.label},a.id))})]})]}),(0,b.jsxs)("div",{className:"ml-auto flex gap-2",children:[(0,b.jsx)(g.K,{size:"sm",variant:"ghost",onClick:function(){let a=window.prompt("Name this snippet (saved in this browser only)")?.trim();if(!a)return;let b=[{id:`local-${Date.now()}`,label:a.slice(0,60),sql:p},...s].slice(0,30);o(b)?(t(b),e.c.success("Snippet saved in this browser")):e.c.error("This browser didn't let the console save it.")},disabled:!p.trim(),children:"Save as snippet"}),(0,b.jsxs)(g.K,{variant:"primary",onClick:E,disabled:A||!h||!p.trim(),children:[(0,b.jsx)(c.f,{size:15})," ",A?"Running…":"Run"]})]})]}),(0,b.jsx)("textarea",{"aria-label":"SQL query",spellCheck:!1,rows:10,value:p,className:(0,i.f)(g.S,"min-h-[180px] resize-y font-mono text-[13px] leading-relaxed"),onChange:a=>r(a.target.value),onKeyDown:a=>{"Enter"===a.key&&(a.ctrlKey||a.metaKey)&&(a.preventDefault(),E())}}),(0,b.jsxs)("p",{className:"text-[12.5px] text-ink-soft",children:["One SELECT, WITH, EXPLAIN, SHOW or TABLE statement. It runs in a read-only transaction that is always rolled back, with a 5 s timeout and at most ",500," rows. Ctrl+Enter runs it. 20 runs per 10 minutes."]}),s.length>0&&(0,b.jsxs)("div",{className:"flex flex-wrap gap-1.5 text-[12.5px] text-ink-soft",children:["Saved here:",s.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded border border-line px-1.5",children:[(0,b.jsx)("button",{type:"button",className:"text-ink hover:underline",onClick:()=>r(a.sql),children:a.label}),(0,b.jsx)("button",{type:"button","aria-label":`Delete snippet ${a.label}`,className:"text-ink-faint hover:text-err",onClick:()=>{var b;let c;return b=a.id,void(o(c=s.filter(a=>a.id!==b))&&t(c))},children:"×"})]},a.id))]}),w&&(0,b.jsx)(g.M,{tone:"danger",title:"The query didn't run",children:w}),u&&(0,b.jsx)(q,{run:u}),(0,b.jsx)(f.f,{open:y,onOpenChange:z,title:`Wake ${C?.alias??"the database"}?`,cta:"Run anyway",body:l.f,onConfirm:async()=>{try{return await D(!0)}catch{return{ok:!1,message:"Something went wrong. Try again."}}}})]})}],366550)}]})();
34
34
 
35
35
  //# sourceMappingURL=src_app_%28console%29_sql_1icfsti04djqe._.js.map
@@ -2,6 +2,6 @@ module.exports=[719825,a=>{"use strict";var b=a.i(137936),c=a.i(118558),d=a.i(60
2
2
  begin
3
3
  ${a.map(a=>` ${a}`).join("\n")}
4
4
  end
5
- $watchpost$;`,ac=[`revoke select on all tables in schema public from ${X};`,`alter default privileges for role postgres in schema public revoke select on tables from ${X};`,`revoke usage on schema public from ${X};`,`revoke connect on database postgres from ${X};`,`revoke pg_read_all_stats from ${X};`,`alter role ${X} nologin;`].map(a=>`begin ${a} exception when others then null; end;`);var ad=a.i(367623);let ae={target:async function(a){let b=await (0,ad.i)(a);if(!b||"supabase"!==b.provider)return null;let c=await (0,P.p)(a,"supabase_project");return c&&c.resource.externalId===b.externalId?{ref:b.externalId,token:c.token,paused:"paused"===b.state}:null},pooler:(a,b)=>V(a,b),run:(a,b,c,d)=>T(a,b,c,d),access:(a,b)=>W(a,b),save:(a,b,c)=>(0,ad.o)(a,b,!1,c),alias:async a=>(0,I.X)(await (0,J.e)(),a),password:()=>(function(a=g.randomBytes){return a(32).toString("base64url")})(),verifier:a=>(function(a,b=(0,g.randomBytes)(16),c=4096){let d=(0,g.pbkdf2Sync)(a.normalize("NFKC"),b,c,32,"sha256"),e=(0,g.createHash)("sha256").update(_(d,"Client Key")).digest(),f=_(d,"Server Key");return`SCRAM-SHA-256$${c}:${b.toString("base64")}$${e.toString("base64")}:${f.toString("base64")}`})(a),sleep:a=>new Promise(b=>setTimeout(b,a))},af="That Supabase project is no longer watched, or its token can't be read.",ag="This project is paused. Restore it first, then add SQL access.",ah=new Set([{code:"28P01"},{code:"08006"},{code:"CONNECT_TIMEOUT"}].map(Y.E));function ai(a){if("scope"===a.kind){let b;return b=a.missing??["database_write"],`This project's token can't set the role up (missing ${b.join(", ")}). It needs Database: Read-write and Connection pooling: Read; replace the token on Connections, or create the role by hand below.`}return a.error}async function aj(a,b=ae){if(!(0,n.f)(a))return{can:!1,reason:"other",error:"Something in that request wasn't valid."};let c=await b.target(a);return c?c.paused?{can:!1,reason:"other",error:ag}:b.access(c.token,c.ref):{can:!1,reason:"other",error:af}}async function ak(a,b,c=ae){if(!(0,n.f)(a))return{ok:!1,error:"Something in that request wasn't valid."};let d=await c.target(a);if(!d)return{ok:!1,error:af};if(d.paused)return{ok:!1,error:ag};let e=await c.pooler(d.token,d.ref);if(!e.ok)return{ok:!1,error:ai(e)};let f=c.password(),g=function(a,b,c){if(!Z.k.test(b))return{ok:!1,error:"This project's ref doesn't look right."};if(!$.test(c))return{ok:!1,error:"The generated password isn't valid."};let d=a.filter(a=>!a.database_type||"PRIMARY"===a.database_type),e=d.map(a=>(a.db_host??"").toLowerCase()).find(a=>Z.J.test(a));if(!e)return{ok:!1,error:"This project has no shared Supavisor pooler host (…pooler.supabase.com). Use the manual steps."};let f=d.find(a=>a.db_name&&/^[A-Za-z_][A-Za-z0-9_]{0,62}$/.test(a.db_name))?.db_name??"postgres";return{ok:!0,dsn:`postgresql://${X}.${b}:${encodeURIComponent(c)}@${e}:6543/${f}?sslmode=require`}}(e.data,d.ref,f);if(!g.ok)return{ok:!1,error:g.error};let h=await c.alias(a),i={kind:"err",message:`SQL access automatic setup failed \xb7 ${h}`,resourceId:a},j=async()=>(await c.run(d.token,d.ref,ab(ac),!1)).ok,k=await c.run(d.token,d.ref,ab(function(a){if(!aa.test(a))throw Error("bad verifier");return[`if not exists (select 1 from pg_catalog.pg_roles where rolname = '${X}') then create role ${X} login password '${a}'; else alter role ${X} with login password '${a}'; end if;`,`alter role ${X} set default_transaction_read_only = on;`,`alter role ${X} set statement_timeout = '5s';`,`grant connect on database postgres to ${X};`,`grant usage on schema public to ${X};`,`grant select on all tables in schema public to ${X};`,`alter default privileges for role postgres in schema public grant select on tables to ${X};`,`begin grant pg_read_all_stats to ${X}; exception when others then null; end;`]}(c.verifier(f))),!1);if(!k.ok){if("transient"===k.kind&&void 0===k.status){let a=await j();return{ok:!1,error:`${k.error} ${a?"Any grants it may have given were revoked.":`Check the ${X} role in the Supabase SQL Editor.`}`,audit:i}}return{ok:!1,error:ai(k),audit:i}}let l={ok:!1,error:"Not checked."};for(let d=0;d<3&&(d>0&&await c.sleep(2e3),!(l=await c.save(a,g.dsn,b)).ok&&ah.has(l.error));d++);if(!l.ok){let a=await j();return{ok:!1,error:`The new role didn't pass the read-only check, so nothing was saved: ${l.error} ${a?`Its grants were revoked and its login turned off (the role ${X} stays; nothing was dropped).`:`Revoking its grants failed too: run "revoke all on all tables in schema public from ${X}; alter role ${X} nologin;" in the Supabase SQL Editor.`}`,audit:i}}return{ok:!0,message:`SQL access created for ${h}: read-only role ${X} checked and saved.`,audit:{kind:"ok",message:`SQL access created automatically for ${h} (read-only role ${X})`,resourceId:a}}}var al=a.i(75105),am=a.i(312573),an=a.i(323878),ao=a.i(530175),ap=a.i(713095);let aq={requireActionMember:e.g};async function ar(a,b){if(a)try{await (0,f.f)({kind:a.kind,message:a.message,detail:a.detail,resourceId:a.resourceId,actorUserId:b.userId})}catch{console.warn("audit event failed")}}let as=(a,b,c)=>async()=>{let d=await (0,an.C)(a,b.id);return d.allowed?null:`Too many ${c}. Try again in ${(0,am.H)(d.retryAfter)}.`};async function at(a,b,c){return(0,d.F)("owner",async d=>{if(!(0,n.f)(a)||"boolean"!=typeof c)return{ok:!1,error:al.w};let e=(0,ao.E)(b);if(!e.ok)return{ok:!1,error:e.error,fieldErrors:{sql:e.error}};let f=await (0,ad.A)(a,e.text,c,as(am.t.sqlRun,d,"runs"));if(await ar(f.audit,d),!f.ok)return{ok:!1,error:f.error,...f.needsWake?{data:{needsWake:!0}}:{}};let{columns:g,rows:h,rowCount:i,truncated:j,durationMs:k}=f.result;return{ok:!0,data:{run:{columns:g,rows:h,rowCount:i,truncated:j,durationMs:k}}}},aq)}async function au(a,b){if(!a.ok)return{ok:!1,error:a.error,..."needsWake"in a&&a.needsWake?{data:{needsWake:!0}}:{}};if(a.audit)try{await (0,f.f)({kind:"ok",...a.audit,actorUserId:b.userId})}catch{console.warn("audit event failed")}return(0,c.refresh)(),{ok:!0,message:a.message}}async function av(a,b,c){return(0,d.F)("owner",async d=>{if(!(0,n.f)(a)||"string"!=typeof b||"boolean"!=typeof c)return{ok:!1,error:al.w};if(!b.trim())return{ok:!1,error:"Paste a connection string.",fieldErrors:{dsn:"Paste a connection string."}};let e=await as(am.t.credential,d,"connection tests")();return e?{ok:!1,error:e}:au(await (0,ad.o)(a,b,c,d.userId),d)},aq)}async function aw(a){return(0,d.F)("owner",async b=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let c=await as(am.t.credential,b,"connection tests")();return c?{ok:!1,error:c}:{ok:!0,data:await aj(a)}},aq)}async function ax(a){return(0,d.F)("owner",async b=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let d=await (0,P.q)(b.id,"sql-auto",a);if(d)return{ok:!1,error:d};let e=await ak(a,b.userId);if(e.audit)try{await (0,f.f)({kind:e.audit.kind,message:e.audit.message,resourceId:e.audit.resourceId,actorUserId:b.userId})}catch{console.warn("audit event failed")}return e.ok?((0,c.refresh)(),{ok:!0,message:e.message}):{ok:!1,error:e.error}},aq)}async function ay(a){return(0,d.F)("owner",async b=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let c=await as(am.t.monitorWrite,b,"changes")();return c?{ok:!1,error:c}:au(await (0,ad.y)(a),b)},aq)}async function az(a){return(0,d.F)("owner",async b=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let c=await as(am.t.firestoreQuery,b,"Firestore queries")();if(c)return{ok:!1,error:c};let d=await N(a);return d.ok?{ok:!0,data:{collections:d.ids,more:d.more}}:{ok:!1,error:d.error}},aq)}async function aA(a,b){return(0,d.F)("owner",async c=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let d=await O(a,b,as(am.t.firestoreQuery,c,"Firestore queries"));return await ar(d.audit,c),d.ok?{ok:!0,data:{run:d.result}}:{ok:!1,error:d.error}},aq)}(0,ap.ensureServerEntryExports)([at,av,aw,ax,ay,az,aA]),(0,b.registerServerReference)(at,"7078423f4c8d343df20984b21ffbb1a4734d2311be",null),(0,b.registerServerReference)(av,"70b4e03c24488e8234e5e38cd2a7dde6e617e23432",null),(0,b.registerServerReference)(aw,"4024a23ecb41de0935162749ac527021fd56b1cbe9",null),(0,b.registerServerReference)(ax,"408b5c24481affd6b9646b8c5cb20648076cf0995f",null),(0,b.registerServerReference)(ay,"4081a9aa4f92916ed3f3f44e8af9567ec41cb9e089",null),(0,b.registerServerReference)(az,"40f5eab32cd382b285ae8d2285a2ddd4b7b921e732",null),(0,b.registerServerReference)(aA,"60d8c86a9ba13914cc8ab3299a3c6052c822b05b06",null),a.s(["u",0,ax,"o",0,ay,"L",0,az,"n",0,aA,"S",0,at,"$",0,av,"M",0,aw],719825)}];
5
+ $watchpost$;`,ac=[`revoke select on all tables in schema public from ${X};`,`alter default privileges for role postgres in schema public revoke select on tables from ${X};`,`revoke usage on schema public from ${X};`,`revoke connect on database postgres from ${X};`,`revoke pg_read_all_stats from ${X};`,`alter role ${X} nologin;`].map(a=>`begin ${a} exception when others then null; end;`);var ad=a.i(367623);let ae={target:async function(a){let b=await (0,ad.i)(a);if(!b||"supabase"!==b.provider)return null;let c=await (0,P.p)(a,"supabase_project");return c&&c.resource.externalId===b.externalId?{ref:b.externalId,token:c.token,paused:"paused"===b.state}:null},pooler:(a,b)=>V(a,b),run:(a,b,c,d)=>T(a,b,c,d),access:(a,b)=>W(a,b),save:(a,b,c)=>(0,ad.o)(a,b,!1,c),alias:async a=>(0,I.X)(await (0,J.e)(),a),password:()=>(function(a=g.randomBytes){return a(32).toString("base64url")})(),verifier:a=>(function(a,b=(0,g.randomBytes)(16),c=4096){let d=(0,g.pbkdf2Sync)(a.normalize("NFKC"),b,c,32,"sha256"),e=(0,g.createHash)("sha256").update(_(d,"Client Key")).digest(),f=_(d,"Server Key");return`SCRAM-SHA-256$${c}:${b.toString("base64")}$${e.toString("base64")}:${f.toString("base64")}`})(a),sleep:a=>new Promise(b=>setTimeout(b,a))},af="That Supabase project is no longer watched, or its token can't be read.",ag="This project is paused. Restore it first, then add SQL access.",ah=new Set([{code:"28P01"},{code:"08006"},{code:"CONNECT_TIMEOUT"}].map(Y.E));function ai(a){if("scope"===a.kind){let b;return b=a.missing??["database_write"],`This project's token can't set the role up (missing ${b.join(", ")}). It needs Database: Read-write and Connection pooling: Read; replace the token on Connections, or create the role by hand below.`}return a.error}async function aj(a,b=ae){if(!(0,n.f)(a))return{can:!1,reason:"other",error:"Something in that request wasn't valid."};let c=await b.target(a);return c?c.paused?{can:!1,reason:"other",error:ag}:b.access(c.token,c.ref):{can:!1,reason:"other",error:af}}async function ak(a,b,c=ae){if(!(0,n.f)(a))return{ok:!1,error:"Something in that request wasn't valid."};let d=await c.target(a);if(!d)return{ok:!1,error:af};if(d.paused)return{ok:!1,error:ag};let e=await c.pooler(d.token,d.ref);if(!e.ok)return{ok:!1,error:ai(e)};let f=c.password(),g=function(a,b,c){if(!Z.k.test(b))return{ok:!1,error:"This project's ref doesn't look right."};if(!$.test(c))return{ok:!1,error:"The generated password isn't valid."};let d=a.filter(a=>!a.database_type||"PRIMARY"===a.database_type),e=d.map(a=>(a.db_host??"").toLowerCase()).find(a=>Z.J.test(a));if(!e)return{ok:!1,error:"This project has no shared Supavisor pooler host (…pooler.supabase.com). Use the manual steps."};let f=d.find(a=>a.db_name&&/^[A-Za-z_][A-Za-z0-9_]{0,62}$/.test(a.db_name))?.db_name??"postgres";return{ok:!0,dsn:`postgresql://${X}.${b}:${encodeURIComponent(c)}@${e}:6543/${f}?sslmode=require`}}(e.data,d.ref,f);if(!g.ok)return{ok:!1,error:g.error};let h=await c.alias(a),i={kind:"err",message:`SQL access automatic setup failed \xb7 ${h}`,resourceId:a},j=async()=>(await c.run(d.token,d.ref,ab(ac),!1)).ok,k=await c.run(d.token,d.ref,ab(function(a){if(!aa.test(a))throw Error("bad verifier");return[`if not exists (select 1 from pg_catalog.pg_roles where rolname = '${X}') then create role ${X} login password '${a}'; else alter role ${X} with login password '${a}'; end if;`,`alter role ${X} set default_transaction_read_only = on;`,`alter role ${X} set statement_timeout = '5s';`,`grant connect on database postgres to ${X};`,`grant usage on schema public to ${X};`,`grant select on all tables in schema public to ${X};`,`alter default privileges for role postgres in schema public grant select on tables to ${X};`,`begin grant pg_read_all_stats to ${X}; exception when others then null; end;`]}(c.verifier(f))),!1);if(!k.ok){if("transient"===k.kind&&void 0===k.status){let a=await j();return{ok:!1,error:`${k.error} ${a?"Any grants it may have given were revoked.":`Check the ${X} role in the Supabase SQL Editor.`}`,audit:i}}return{ok:!1,error:ai(k),audit:i}}let l={ok:!1,error:"Not checked."};for(let d=0;d<3&&(d>0&&await c.sleep(2e3),!(l=await c.save(a,g.dsn,b)).ok&&ah.has(l.error));d++);if(!l.ok){let a=await j();return{ok:!1,error:`The new role didn't pass the read-only check, so nothing was saved: ${l.error} ${a?`Its grants were revoked and its login turned off (the role ${X} stays; nothing was dropped).`:`Revoking its grants failed too: run "revoke all on all tables in schema public from ${X}; alter role ${X} nologin;" in the Supabase SQL Editor.`}`,audit:i}}return{ok:!0,message:`SQL access created for ${h}: read-only role ${X} checked and saved.`,audit:{kind:"ok",message:`SQL access created automatically for ${h} (read-only role ${X})`,resourceId:a}}}var al=a.i(75105),am=a.i(312573),an=a.i(323878),ao=a.i(530175),ap=a.i(713095);let aq={requireActionMember:e.g};async function ar(a,b){if(a)try{await (0,f.f)({kind:a.kind,message:a.message,detail:a.detail,resourceId:a.resourceId,actorUserId:b.userId})}catch{console.warn("audit event failed")}}let as=(a,b,c)=>async()=>{let d=await (0,an.C)(a,b.id);return d.allowed?null:`Too many ${c}. Try again in ${(0,am.H)(d.retryAfter)}.`};async function at(a,b,c){return(0,d.F)("owner",async d=>{if(!(0,n.f)(a)||"boolean"!=typeof c)return{ok:!1,error:al.w};let e=(0,ao.E)(b);if(!e.ok)return{ok:!1,error:e.error,fieldErrors:{sql:e.error}};let f=await (0,ad.A)(a,e.text,c,as(am.t.sqlRun,d,"runs"));if(await ar(f.audit,d),!f.ok)return{ok:!1,error:f.error,...f.needsWake?{data:{needsWake:!0}}:{}};let{columns:g,rows:h,rowCount:i,truncated:j,durationMs:k}=f.result;return{ok:!0,data:{run:{columns:g,rows:h,rowCount:i,truncated:j,durationMs:k}}}},aq)}async function au(a,b){if(!a.ok)return{ok:!1,error:a.error,..."needsWake"in a&&a.needsWake?{data:{needsWake:!0}}:{}};if(a.audit)try{await (0,f.f)({kind:"ok",...a.audit,actorUserId:b.userId})}catch{console.warn("audit event failed")}return(0,c.refresh)(),{ok:!0,message:a.message}}async function av(a,b,c){return(0,d.F)("owner",async d=>{if(!(0,n.f)(a)||"string"!=typeof b||"boolean"!=typeof c)return{ok:!1,error:al.w};if(!b.trim())return{ok:!1,error:"Paste a connection string.",fieldErrors:{dsn:"Paste a connection string."}};let e=await as(am.t.credential,d,"connection tests")();return e?{ok:!1,error:e}:au(await (0,ad.o)(a,b,c,d.userId),d)},aq)}async function aw(a){return(0,d.F)("owner",async b=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let c=await as(am.t.credential,b,"connection tests")();return c?{ok:!1,error:c}:{ok:!0,data:await aj(a)}},aq)}async function ax(a){return(0,d.F)("owner",async b=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let d=await (0,P.q)(b.id,"sql-auto",a);if(d)return{ok:!1,error:d};let e=await ak(a,b.userId);if(e.audit)try{await (0,f.f)({kind:e.audit.kind,message:e.audit.message,resourceId:e.audit.resourceId,actorUserId:b.userId})}catch{console.warn("audit event failed")}return e.ok?((0,c.refresh)(),{ok:!0,message:e.message}):{ok:!1,error:e.error}},aq)}async function ay(a){return(0,d.F)("owner",async b=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let c=await as(am.t.monitorWrite,b,"changes")();return c?{ok:!1,error:c}:au(await (0,ad.y)(a),b)},aq)}async function az(a){return(0,d.F)("owner",async b=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let c=await as(am.t.firestoreQuery,b,"Firestore queries")();if(c)return{ok:!1,error:c};let d=await N(a);return d.ok?{ok:!0,data:{collections:d.ids,more:d.more}}:{ok:!1,error:d.error}},aq)}async function aA(a,b){return(0,d.F)("owner",async c=>{if(!(0,n.f)(a))return{ok:!1,error:al.w};let d=await O(a,b,as(am.t.firestoreQuery,c,"Firestore queries"));return await ar(d.audit,c),d.ok?{ok:!0,data:{run:d.result}}:{ok:!1,error:d.error}},aq)}(0,ap.ensureServerEntryExports)([at,av,aw,ax,ay,az,aA]),(0,b.registerServerReference)(at,"703040950a860d5ea42b7d87a9b3e55ed72e204c8d",null),(0,b.registerServerReference)(av,"7095bda342eb8ee067738863ca84df2db323739016",null),(0,b.registerServerReference)(aw,"403adb8d103b4650dc06c4d4e6cdc7d9264b8aa098",null),(0,b.registerServerReference)(ax,"405e60f47a541e8bcf051bffa510c51faef59c9a0d",null),(0,b.registerServerReference)(ay,"40aa0aea50dd2373eeca84883038d55a4f1d9d1e0d",null),(0,b.registerServerReference)(az,"40606b26810beb5a68894cfe5b0ff4db692975eef4",null),(0,b.registerServerReference)(aA,"60926b4b706b6c3c6b09ea788ace2712fd55b4ee83",null),a.s(["u",0,ax,"o",0,ay,"L",0,az,"n",0,aA,"S",0,at,"$",0,av,"M",0,aw],719825)}];
6
6
 
7
7
  //# sourceMappingURL=src_app_%28console%29_sql_actions_ts_1oqco02hw-3vp._.js.map
@@ -1,3 +1,3 @@
1
- (()=>{"use strict";module.exports=[28358,a=>{var b=a.i(187924),c=a.i(196790),d=a.i(572131),e=a.i(823292),f=a.i(611619),g=a.i(619089),h=a.i(507504),i=a.i(814574),j=a.i(405050);let k=(0,j.createServerReference)("406bf958e64f91452b8f85475f220c94a216a87558",j.callServer,void 0,j.findSourceMapURL,"deleteMetricsKey"),l=(0,j.createServerReference)("70b47ce53b37cdb18f7fd404d363335ce6dd37c787",j.callServer,void 0,j.findSourceMapURL,"setMetricsKey");function m({id:a,projectRef:f,alias:j,hasKey:k,open:n,onOpenChange:o,trigger:p}){let[q,r]=(0,d.useState)(!1),s=n??q,[t,u]=(0,d.useState)(""),[v,w]=(0,d.useState)(),[x,y]=(0,d.useTransition)();function z(a){x||(u(""),w(void 0),void 0===n&&r(a),o?.(a))}return(0,h.useHoldRefresh)(s),(0,b.jsxs)(i.N,{open:s,onOpenChange:z,children:[p&&(0,b.jsx)(i.a,{render:p}),(0,b.jsxs)(i.d,{className:"gap-0 p-0 sm:max-w-[560px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{children:[(0,b.jsxs)(i.F,{className:"text-base",children:[k?"Replace":"Add"," metrics key for ",j]}),(0,b.jsx)(i.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:"CPU, RAM, disk and connections come from Supabase's Metrics API (beta), which needs a Secret API key of this project."})]})]}),(0,b.jsxs)("form",{onSubmit:b=>{b.preventDefault(),y(async()=>{try{let b=await l(a,f,t);if(!b.ok){w(b.fieldErrors?.key??b.error),e.c.error(b.error);return}let c=b.message?.includes("test call failed");e.c.success(`Metrics key saved for ${j}`,{description:c?"The test call failed; the Compute panel shows why.":"CPU shows after the next scrape, in about 5 minutes."}),u(""),z(!1)}catch{e.c.error("Something went wrong. Try again.")}})},children:[(0,b.jsxs)("div",{className:"px-[18px] pt-2 text-[13px] text-ink-soft",children:[(0,b.jsxs)("ol",{className:"mb-3 list-decimal space-y-1 pl-5",children:[(0,b.jsxs)("li",{children:["In Supabase, open ",(0,b.jsx)("b",{className:"font-medium text-ink",children:"Project Settings → API Keys"})," for this project and create a new Secret API key named ",(0,b.jsx)("span",{className:"font-mono text-ink",children:"watchbell-metrics"}),"."]}),(0,b.jsx)("li",{children:"Paste it below. A secret key has full database power, so the console stores it encrypted, never shows it again and only sends it to this project's metrics endpoint."}),(0,b.jsx)("li",{children:"You can revoke it in Supabase at any time; the panel then shows the error and you can add a new one."})]}),(0,b.jsx)(g.O,{id:`mk-${a}`,label:"Secret API key",error:v,help:"Starts with sb_secret_. Saving makes one test call to the metrics endpoint.",children:(0,b.jsx)("input",{id:`mk-${a}`,type:"password",className:`${g.S} font-mono`,autoComplete:"off",spellCheck:!1,placeholder:"sb_secret_…",value:t,onChange:a=>{u(a.target.value),w(void 0)}})})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(g.K,{type:"button",onClick:()=>z(!1),disabled:x,children:"Cancel"}),(0,b.jsx)(g.K,{type:"submit",variant:"primary",disabled:x||!t.trim(),children:x?"Testing…":k?"Replace key":"Save key"})]})]})]})]})}a.s(["MetricsKeyButtons",0,function({id:a,projectRef:c,alias:d,hasKey:e}){return(0,b.jsxs)("span",{className:"inline-flex gap-1.5",children:[(0,b.jsx)(m,{id:a,projectRef:c,alias:d,hasKey:e,trigger:(0,b.jsx)(g.K,{size:"sm",children:e?"Replace key":"Add metrics key"})}),e&&(0,b.jsx)(f.f,{trigger:(0,b.jsx)(g.K,{size:"sm",variant:"ghost",children:"Remove"}),danger:!0,title:`Remove the metrics key of ${d}?`,cta:"Remove key",body:"The console deletes the stored key and this project's compute history. Revoke the key in Supabase (Project Settings → API Keys) too.",onConfirm:async()=>{let b=await k(a);return b.ok?{ok:!0,message:`Metrics key removed for ${d}.`}:{ok:!1,message:b.error}}})]})},"MetricsKeyDialog",0,m],28358)},103113,a=>{var b=a.i(187924),c=a.i(908161),d=a.i(572131),e=a.i(823292),f=a.i(771378),g=a.i(611619),h=a.i(619089),i=a.i(507504),j=a.i(54901),k=a.i(188406),l=a.i(814574),m=a.i(405050);let n=(0,m.createServerReference)("6092496daace0491c99105f672e6d9587f7d3673f4",m.callServer,void 0,m.findSourceMapURL,"pauseAction"),o=(0,m.createServerReference)("60f93dc70a9244b3590cdcd0840faa30be028d5b99",m.callServer,void 0,m.findSourceMapURL,"restoreAction"),p=(0,m.createServerReference)("60cfea148fd689403a67dc92b60cbce0d180d39aa2",m.callServer,void 0,m.findSourceMapURL,"setAutoRestore"),q=(0,m.createServerReference)("6001e418c2b1b2cfeb7e7083f75f04127facfab4ac",m.callServer,void 0,m.findSourceMapURL,"setKeepActive");var r=a.i(28358);function s({alias:a,account:g,choices:j}){let[k,m]=(0,d.useState)(!1),[o,p]=(0,d.useState)(j.at(-1)?.id??""),[q,r]=(0,d.useTransition)(),t=(0,f.useMask)();(0,i.useHoldRefresh)(k);let u=j.find(a=>a.id===o);return(0,b.jsxs)(l.N,{open:k,onOpenChange:a=>{!q&&(m(a),a&&p(j.at(-1)?.id??""))},children:[(0,b.jsx)(l.a,{render:(0,b.jsx)(h.K,{size:"sm",children:"Restore"})}),(0,b.jsxs)(l.d,{className:"gap-0 p-0 sm:max-w-[560px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{children:[(0,b.jsxs)(l.F,{className:"text-base",children:["Restore ",a,"?"]}),(0,b.jsxs)(l.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:["Account ",(0,b.jsx)(f.Masked,{kind:"account",real:g})," already uses both free slots. Pick a project to pause first."]})]})]}),(0,b.jsxs)("div",{className:"px-[18px] pb-2",children:[j.length?(0,b.jsx)("div",{className:"max-h-[260px] overflow-y-auto",children:j.map(a=>(0,b.jsxs)("label",{className:"flex cursor-pointer items-center gap-3 border-b border-line px-1 py-[9px] last:border-b-0 hover:bg-hover",children:[(0,b.jsx)("input",{type:"radio",name:"pause-first",className:"size-4 accent-brand",checked:o===a.id,onChange:()=>p(a.id)}),(0,b.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("span",{className:"block truncate",children:["Pause ",a.alias]}),(0,b.jsxs)("span",{className:"block truncate text-[12px] text-ink-faint",children:["Last API traffic ",a.traffic,a.usedBy.length?` \xb7 used by ${a.usedBy.map(a=>t("app",a)).join(", ")}`:""]})]})]},a.id))}):(0,b.jsx)("p",{className:"my-2 text-[13px] text-ink-soft",children:"The console doesn't watch this account's active projects, so pause one in Supabase first."}),(0,b.jsxs)("p",{className:"mb-2 mt-3 text-[13px] text-ink-soft",children:["Apps that use the paused project get errors until you restore it. You can also move ",a," to another account with a free slot instead."]}),(0,b.jsx)("p",{className:"mb-3 text-[13px] text-ink-soft",children:"Restore stays blocked until the project you pause shows Paused (about 2 minutes). Then press Restore again."})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(h.K,{onClick:()=>m(!1),disabled:q,children:"Cancel"}),(0,b.jsx)(h.K,{variant:"danger",disabled:q||!u,onClick:function(){u&&r(async()=>{try{let b=await n(u.id,u.ref);if(!b.ok)return void e.c.error(b.error);e.c.success("Pause started",{description:`Pausing ${u.alias}. Restore ${a} once ${u.alias} shows Paused, about 2 minutes.`}),m(!1)}catch{e.c.error("Something went wrong. Try again.")}})},children:q?"Working…":"Pause selected"})]})]})]})}let t={keep:(a,b)=>b?`${a}: warning from day 5 without API traffic, and one keep-alive query a day.`:`${a} may pause after 7 idle days.`,autoRestore:(a,b)=>b?`${a} is restored automatically when its account has a free slot.`:`${a} is no longer restored automatically.`};a.s(["ActiveRowMenu",0,function({id:a,projectRef:c,alias:e,label:f,metrics:g,dashboard:h=!0}){let{open:i,dialog:l}=(0,j.W)(),[m,o]=(0,d.useState)(!1);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(k.RowMenu,{label:f,items:[...h?[{label:"Open in Supabase",href:`https://supabase.com/dashboard/project/${encodeURIComponent(c)}`}]:[],{label:"Check services",later:6},...g?[{label:g.hasKey?"Replace metrics key":"Add metrics key",onSelect:()=>o(!0)}]:[],"---",{label:"Pause project",danger:!0,onSelect:()=>i({title:`Pause ${e}?`,body:"Supabase stops the project in about 2 minutes. Apps that use this database get errors until it's restored (possible for 1 year). Pausing frees one of this account's 2 free slots. Nothing is deleted.",cta:"Pause project",danger:!0,run:async()=>{let b;return(b=`Pausing ${e}. It takes about 2 minutes.`,a=>a.ok?{ok:!0,message:b}:a)(await n(a,c))}})}]}),l,g&&(0,b.jsx)(r.MetricsKeyDialog,{id:a,projectRef:c,alias:e,hasKey:g.hasKey,open:m,onOpenChange:o})]})},"KeepActiveBoxes",0,function({id:a,alias:c,keep:f,autoRestore:g,owner:h,sent:i}){let[j,k]=(0,d.useState)({keep:f,autoRestore:g}),[l,m]=(0,d.useTransition)(),n=(d,f)=>(0,b.jsxs)("label",{className:"flex items-center gap-1.5 text-[13px]",title:h?void 0:"Owner only",children:[(0,b.jsx)("input",{type:"checkbox",className:"size-4 accent-brand",checked:j[d],disabled:!h||l,onChange:b=>{var f;return f=b.target.checked,void(k({...j,[d]:f}),m(async()=>{try{let b=await ("keep"===d?q:p)(a,f);if(!b.ok){k(j),e.c.error(b.error);return}e.c.success("Keep active saved",{description:t[d](c,f)})}catch{k(j),e.c.error("Something went wrong. Try again.")}}))}}),f]});return(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex flex-col items-start gap-0.5",children:[n("keep","Keep active"),n("autoRestore","Auto-restore")]}),i&&(0,b.jsxs)("div",{className:"text-[12px] text-ink-faint",children:["Keep-alive sent ",i]})]})},"RestoreButton",0,function({id:a,projectRef:c,alias:d,account:e,slotsLeft:f,choices:i}){return f>0?(0,b.jsx)(g.f,{trigger:(0,b.jsx)(h.K,{size:"sm",children:"Restore"}),title:`Restore ${d}?`,body:"Supabase brings the project back in about 2 minutes. Apps that use it start working again after that.",cta:"Restore",onConfirm:async()=>{let b=await o(a,c);return b.ok?{ok:!0,message:`Restoring ${d}. It takes about 2 minutes.`}:{ok:!1,message:b.error}}}):(0,b.jsx)(s,{alias:d,account:e,choices:i})}],103113)}]})();
1
+ (()=>{"use strict";module.exports=[28358,a=>{var b=a.i(187924),c=a.i(196790),d=a.i(572131),e=a.i(823292),f=a.i(611619),g=a.i(619089),h=a.i(507504),i=a.i(814574),j=a.i(405050);let k=(0,j.createServerReference)("40b5a1fd9cf26117c36d16e425c4207264c756755d",j.callServer,void 0,j.findSourceMapURL,"deleteMetricsKey"),l=(0,j.createServerReference)("706f7a7378ab5cc3ca8976c2746d4b0f79523089bd",j.callServer,void 0,j.findSourceMapURL,"setMetricsKey");function m({id:a,projectRef:f,alias:j,hasKey:k,open:n,onOpenChange:o,trigger:p}){let[q,r]=(0,d.useState)(!1),s=n??q,[t,u]=(0,d.useState)(""),[v,w]=(0,d.useState)(),[x,y]=(0,d.useTransition)();function z(a){x||(u(""),w(void 0),void 0===n&&r(a),o?.(a))}return(0,h.useHoldRefresh)(s),(0,b.jsxs)(i.N,{open:s,onOpenChange:z,children:[p&&(0,b.jsx)(i.a,{render:p}),(0,b.jsxs)(i.d,{className:"gap-0 p-0 sm:max-w-[560px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{children:[(0,b.jsxs)(i.F,{className:"text-base",children:[k?"Replace":"Add"," metrics key for ",j]}),(0,b.jsx)(i.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:"CPU, RAM, disk and connections come from Supabase's Metrics API (beta), which needs a Secret API key of this project."})]})]}),(0,b.jsxs)("form",{onSubmit:b=>{b.preventDefault(),y(async()=>{try{let b=await l(a,f,t);if(!b.ok){w(b.fieldErrors?.key??b.error),e.c.error(b.error);return}let c=b.message?.includes("test call failed");e.c.success(`Metrics key saved for ${j}`,{description:c?"The test call failed; the Compute panel shows why.":"CPU shows after the next scrape, in about 5 minutes."}),u(""),z(!1)}catch{e.c.error("Something went wrong. Try again.")}})},children:[(0,b.jsxs)("div",{className:"px-[18px] pt-2 text-[13px] text-ink-soft",children:[(0,b.jsxs)("ol",{className:"mb-3 list-decimal space-y-1 pl-5",children:[(0,b.jsxs)("li",{children:["In Supabase, open ",(0,b.jsx)("b",{className:"font-medium text-ink",children:"Project Settings → API Keys"})," for this project and create a new Secret API key named ",(0,b.jsx)("span",{className:"font-mono text-ink",children:"watchbell-metrics"}),"."]}),(0,b.jsx)("li",{children:"Paste it below. A secret key has full database power, so the console stores it encrypted, never shows it again and only sends it to this project's metrics endpoint."}),(0,b.jsx)("li",{children:"You can revoke it in Supabase at any time; the panel then shows the error and you can add a new one."})]}),(0,b.jsx)(g.O,{id:`mk-${a}`,label:"Secret API key",error:v,help:"Starts with sb_secret_. Saving makes one test call to the metrics endpoint.",children:(0,b.jsx)("input",{id:`mk-${a}`,type:"password",className:`${g.S} font-mono`,autoComplete:"off",spellCheck:!1,placeholder:"sb_secret_…",value:t,onChange:a=>{u(a.target.value),w(void 0)}})})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(g.K,{type:"button",onClick:()=>z(!1),disabled:x,children:"Cancel"}),(0,b.jsx)(g.K,{type:"submit",variant:"primary",disabled:x||!t.trim(),children:x?"Testing…":k?"Replace key":"Save key"})]})]})]})]})}a.s(["MetricsKeyButtons",0,function({id:a,projectRef:c,alias:d,hasKey:e}){return(0,b.jsxs)("span",{className:"inline-flex gap-1.5",children:[(0,b.jsx)(m,{id:a,projectRef:c,alias:d,hasKey:e,trigger:(0,b.jsx)(g.K,{size:"sm",children:e?"Replace key":"Add metrics key"})}),e&&(0,b.jsx)(f.f,{trigger:(0,b.jsx)(g.K,{size:"sm",variant:"ghost",children:"Remove"}),danger:!0,title:`Remove the metrics key of ${d}?`,cta:"Remove key",body:"The console deletes the stored key and this project's compute history. Revoke the key in Supabase (Project Settings → API Keys) too.",onConfirm:async()=>{let b=await k(a);return b.ok?{ok:!0,message:`Metrics key removed for ${d}.`}:{ok:!1,message:b.error}}})]})},"MetricsKeyDialog",0,m],28358)},103113,a=>{var b=a.i(187924),c=a.i(908161),d=a.i(572131),e=a.i(823292),f=a.i(771378),g=a.i(611619),h=a.i(619089),i=a.i(507504),j=a.i(54901),k=a.i(188406),l=a.i(814574),m=a.i(405050);let n=(0,m.createServerReference)("60bbc6a09d9c43fa23b0c11e6e1cf08911330a94ae",m.callServer,void 0,m.findSourceMapURL,"checkServicesAction"),o=(0,m.createServerReference)("60c93d7ea36c13ef879a30d8385522051c2461529e",m.callServer,void 0,m.findSourceMapURL,"pauseAction"),p=(0,m.createServerReference)("60046ca7d2b9290377e0c6c368bd821dbd0d59fe07",m.callServer,void 0,m.findSourceMapURL,"restoreAction"),q=(0,m.createServerReference)("606824869fd30fee512fdf6e8a3c71cf8cc978b9ee",m.callServer,void 0,m.findSourceMapURL,"setAutoRestore"),r=(0,m.createServerReference)("604e98f58a27cf74c7676897683f3f3943a98053f8",m.callServer,void 0,m.findSourceMapURL,"setKeepActive");var s=a.i(28358);function t({alias:a,account:g,choices:j}){let[k,m]=(0,d.useState)(!1),[n,p]=(0,d.useState)(j.at(-1)?.id??""),[q,r]=(0,d.useTransition)(),s=(0,f.useMask)();(0,i.useHoldRefresh)(k);let u=j.find(a=>a.id===n);return(0,b.jsxs)(l.N,{open:k,onOpenChange:a=>{!q&&(m(a),a&&p(j.at(-1)?.id??""))},children:[(0,b.jsx)(l.a,{render:(0,b.jsx)(h.K,{size:"sm",children:"Restore"})}),(0,b.jsxs)(l.d,{className:"gap-0 p-0 sm:max-w-[560px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{children:[(0,b.jsxs)(l.F,{className:"text-base",children:["Restore ",a,"?"]}),(0,b.jsxs)(l.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:["Account ",(0,b.jsx)(f.Masked,{kind:"account",real:g})," already uses both free slots. Pick a project to pause first."]})]})]}),(0,b.jsxs)("div",{className:"px-[18px] pb-2",children:[j.length?(0,b.jsx)("div",{className:"max-h-[260px] overflow-y-auto",children:j.map(a=>(0,b.jsxs)("label",{className:"flex cursor-pointer items-center gap-3 border-b border-line px-1 py-[9px] last:border-b-0 hover:bg-hover",children:[(0,b.jsx)("input",{type:"radio",name:"pause-first",className:"size-4 accent-brand",checked:n===a.id,onChange:()=>p(a.id)}),(0,b.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("span",{className:"block truncate",children:["Pause ",a.alias]}),(0,b.jsxs)("span",{className:"block truncate text-[12px] text-ink-faint",children:["Last API traffic ",a.traffic,a.usedBy.length?` \xb7 used by ${a.usedBy.map(a=>s("app",a)).join(", ")}`:""]})]})]},a.id))}):(0,b.jsx)("p",{className:"my-2 text-[13px] text-ink-soft",children:"The console doesn't watch this account's active projects, so pause one in Supabase first."}),(0,b.jsxs)("p",{className:"mb-2 mt-3 text-[13px] text-ink-soft",children:["Apps that use the paused project get errors until you restore it. You can also move ",a," to another account with a free slot instead."]}),(0,b.jsx)("p",{className:"mb-3 text-[13px] text-ink-soft",children:"Restore stays blocked until the project you pause shows Paused (about 2 minutes). Then press Restore again."})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(h.K,{onClick:()=>m(!1),disabled:q,children:"Cancel"}),(0,b.jsx)(h.K,{variant:"danger",disabled:q||!u,onClick:function(){u&&r(async()=>{try{let b=await o(u.id,u.ref);if(!b.ok)return void e.c.error(b.error);e.c.success("Pause started",{description:`Pausing ${u.alias}. Restore ${a} once ${u.alias} shows Paused, about 2 minutes.`}),m(!1)}catch{e.c.error("Something went wrong. Try again.")}})},children:q?"Working…":"Pause selected"})]})]})]})}let u={keep:(a,b)=>b?`${a}: warning from day 5 without API traffic, and one keep-alive query a day.`:`${a} may pause after 7 idle days.`,autoRestore:(a,b)=>b?`${a} is restored automatically when its account has a free slot.`:`${a} is no longer restored automatically.`};a.s(["ActiveRowMenu",0,function({id:a,projectRef:c,alias:f,label:g,metrics:h,dashboard:i=!0}){let{open:l,dialog:m}=(0,j.W)(),[p,q]=(0,d.useState)(!1);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(k.RowMenu,{label:g,items:[...i?[{label:"Open in Supabase",href:`https://supabase.com/dashboard/project/${encodeURIComponent(c)}`}]:[],{label:"Check services",onSelect:()=>{let b;return b=e.c.loading(`Checking ${f}'s services…`),void n(a,c).then(a=>a.ok?e.c.success(`${f}: services healthy`,{id:b,description:a.message}):e.c.error(`${f}: services`,{id:b,description:a.error})).catch(()=>e.c.error("Something went wrong. Try again.",{id:b}))}},...h?[{label:h.hasKey?"Replace metrics key":"Add metrics key",onSelect:()=>q(!0)}]:[],"---",{label:"Pause project",danger:!0,onSelect:()=>l({title:`Pause ${f}?`,body:"Supabase stops the project in about 2 minutes. Apps that use this database get errors until it's restored (possible for 1 year). Pausing frees one of this account's 2 free slots. Nothing is deleted.",cta:"Pause project",danger:!0,run:async()=>{let b;return(b=`Pausing ${f}. It takes about 2 minutes.`,a=>a.ok?{ok:!0,message:b}:a)(await o(a,c))}})}]}),m,h&&(0,b.jsx)(s.MetricsKeyDialog,{id:a,projectRef:c,alias:f,hasKey:h.hasKey,open:p,onOpenChange:q})]})},"KeepActiveBoxes",0,function({id:a,alias:c,keep:f,autoRestore:g,owner:h,sent:i}){let[j,k]=(0,d.useState)({keep:f,autoRestore:g}),[l,m]=(0,d.useTransition)(),n=(d,f)=>(0,b.jsxs)("label",{className:"flex items-center gap-1.5 text-[13px]",title:h?void 0:"Owner only",children:[(0,b.jsx)("input",{type:"checkbox",className:"size-4 accent-brand",checked:j[d],disabled:!h||l,onChange:b=>{var f;return f=b.target.checked,void(k({...j,[d]:f}),m(async()=>{try{let b=await ("keep"===d?r:q)(a,f);if(!b.ok){k(j),e.c.error(b.error);return}e.c.success("Keep active saved",{description:u[d](c,f)})}catch{k(j),e.c.error("Something went wrong. Try again.")}}))}}),f]});return(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex flex-col items-start gap-0.5",children:[n("keep","Keep active"),n("autoRestore","Auto-restore")]}),i&&(0,b.jsxs)("div",{className:"text-[12px] text-ink-faint",children:["Keep-alive sent ",i]})]})},"RestoreButton",0,function({id:a,projectRef:c,alias:d,account:e,slotsLeft:f,choices:i}){return f>0?(0,b.jsx)(g.f,{trigger:(0,b.jsx)(h.K,{size:"sm",children:"Restore"}),title:`Restore ${d}?`,body:"Supabase brings the project back in about 2 minutes. Apps that use it start working again after that.",cta:"Restore",onConfirm:async()=>{let b=await p(a,c);return b.ok?{ok:!0,message:`Restoring ${d}. It takes about 2 minutes.`}:{ok:!1,message:b.error}}}):(0,b.jsx)(t,{alias:d,account:e,choices:i})}],103113)}]})();
2
2
 
3
3
  //# sourceMappingURL=src_app_%28console%29_supabase_0ib3m2ch9gu-4._.js.map
@@ -5,6 +5,6 @@ module.exports=[953685,612990,a=>{"use strict";var b=a.i(137936),c=a.i(118558),d
5
5
  select state, extract(epoch from now() - state_change)::int as idle_s, extract(epoch from now() - backend_start)::int as age_s,
6
6
  left(query, 400) as query
7
7
  from pg_stat_activity where usename = current_user and pid <> pg_backend_pid()
8
- order by state_change asc limit 20`),b=(0,i.f)(a).map(a=>({busy:"idle"!==a.state,idleS:Number(a.idle_s),table:l(a.query),ageS:Number(a.age_s)}));return{used:b.length+1,active:b.filter(a=>a.busy).length+1,conns:b}}catch{return null}}a.s(["Y",0,10,"X",0,15,"R",0,k,"H",0,m,"g",0,a=>({pct:Math.min(100,Math.round(a.used/15*100)),warn:a.used>=10})],612990);var n=a.i(371289),o=a.i(312573),p=a.i(323878),q=a.i(713095);let r={requireActionMember:e.g};async function s(){return(0,d.F)("owner",async a=>{if(!(0,n.r)())return{ok:!1,error:"Not available in this mode."};let b=await (0,p.C)(o.t.monitorWrite,a.id);if(!b.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,o.H)(b.retryAfter)}.`};let d=await k(1,5);return await (0,f.f)({kind:"ok",message:`Closed ${d.trimmed} idle database connection${1===d.trimmed?"":"s"} (pool ${d.total}/15)`,resourceId:null,actorUserId:a.userId}).catch(()=>console.warn("audit event failed")),(0,c.refresh)(),{ok:!0,message:`Closed ${d.trimmed} idle connection${1===d.trimmed?"":"s"}.`}},r)}async function t(){await s()}(0,q.ensureServerEntryExports)([s,t]),(0,b.registerServerReference)(s,"00f3a3a47c192358c0bd875ec16eb1b0246cb34ca2",null),(0,b.registerServerReference)(t,"00cf92c41cd4015764857af49220315b56632b1cf4",null),a.s(["w",0,s,"n",0,t],953685)}];
8
+ order by state_change asc limit 20`),b=(0,i.f)(a).map(a=>({busy:"idle"!==a.state,idleS:Number(a.idle_s),table:l(a.query),ageS:Number(a.age_s)}));return{used:b.length+1,active:b.filter(a=>a.busy).length+1,conns:b}}catch{return null}}a.s(["Y",0,10,"X",0,15,"R",0,k,"H",0,m,"g",0,a=>({pct:Math.min(100,Math.round(a.used/15*100)),warn:a.used>=10})],612990);var n=a.i(371289),o=a.i(312573),p=a.i(323878),q=a.i(713095);let r={requireActionMember:e.g};async function s(){return(0,d.F)("owner",async a=>{if(!(0,n.r)())return{ok:!1,error:"Not available in this mode."};let b=await (0,p.C)(o.t.monitorWrite,a.id);if(!b.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,o.H)(b.retryAfter)}.`};let d=await k(1,5);return await (0,f.f)({kind:"ok",message:`Closed ${d.trimmed} idle database connection${1===d.trimmed?"":"s"} (pool ${d.total}/15)`,resourceId:null,actorUserId:a.userId}).catch(()=>console.warn("audit event failed")),(0,c.refresh)(),{ok:!0,message:`Closed ${d.trimmed} idle connection${1===d.trimmed?"":"s"}.`}},r)}async function t(){await s()}(0,q.ensureServerEntryExports)([s,t]),(0,b.registerServerReference)(s,"008f81709251f97baa934f99de0a3180b8c48767cb",null),(0,b.registerServerReference)(t,"0099a474f7cc300e7c7c2fda3fe16bc0a308bde5f1",null),a.s(["w",0,s,"n",0,t],953685)}];
9
9
 
10
10
  //# sourceMappingURL=src_app_%28console%29_supabase_pool-actions_ts_0nzd4vwy_9zzx._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[[180626,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call MaintenanceDialog() from the server but MaintenanceDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/uptime/maintenance-dialog.tsx","MaintenanceDialog");a.s(["MaintenanceDialog",0,b])},739243,a=>{var b=a.i(180626);a.n(b)},725849,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call MaintenanceMenu() from the server but MaintenanceMenu is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/uptime/maintenance-menu.tsx","MaintenanceMenu");a.s(["MaintenanceMenu",0,b])},316754,a=>{var b=a.i(725849);a.n(b)},287563,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call MonitorDialog() from the server but MonitorDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/uptime/monitor-dialog.tsx","MonitorDialog");a.s(["MonitorDialog",0,b])},215312,a=>{var b=a.i(287563);a.n(b)},244293,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call MonitorMenu() from the server but MonitorMenu is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/uptime/monitor-menu.tsx","MonitorMenu");a.s(["MonitorMenu",0,b])},538793,a=>{var b=a.i(244293);a.n(b)},713064,a=>{var b=a.i(907997),c=a.i(252302),d=a.i(649247),e=a.i(803681),f=a.i(959581),g=a.i(685865),h=a.i(154756),i=a.i(954296),j=a.i(686251),k=a.i(605826),l=a.i(421911),m=a.i(791444),n=a.i(109307),o=a.i(714530),p=a.i(895176),q=a.i(149396),r=a.i(767163),s=a.i(519051),t=a.i(245710),u=a.i(139138),v=a.i(469762),w=a.i(505237),x=a.i(968715),y=a.i(739243),z=a.i(316754),A=a.i(215312),B=a.i(538793),C=a.i(701702);let D="font-mono text-[12.5px]",E=["Monitor","Status",(0,b.jsxs)("span",{children:["Last 90 days",(0,b.jsx)(i.Src,{kind:"calc"})]},"bars"),"Uptime","Response","Interval",""],F=[["Up","ok"],["Degraded","warn"],["Down","err"],["Maintenance","maint"],["Paused","paused"]],G=["Applies to","When","Note","Status",""];async function H(){let a=await (0,n.I)(),i=new Date,H=(0,w.z)(a.role),[I,J,K,L]=await Promise.all([(0,p.d)(i),H?(0,p.b)():Promise.resolve([]),(0,o.A)(),(0,q.u)()]),M=I.map(a=>({m:a,s:(0,w.M)(a,(0,s.x)(K,{monitorId:a.id,appId:a.appId},i),i)})),N=(0,x.j)(M.map(({m:a,s:b})=>({state:b.state,appGone:a.appGone}))),O=M.map(({m:a,s:d})=>{let f,g="heartbeat"===a.kind,k=g?null:a.bodyContains??(a.jsonPath?`JSON ${a.jsonPath} equals "${a.jsonEquals??""}"`:null),l=g?`${a.appName} \xb7 ${a.path}`:`${a.appName}${a.path}`;return{key:a.id,state:d.state,text:[l,g?"Heartbeat":k?"Keyword":"",L.has(a.id)?"Public":"",d.label,(0,v.C)(a.uptime30)].join(" "),row:(0,b.jsxs)("tr",{className:m.C,children:[(0,b.jsx)("td",{className:m.z,children:(0,b.jsxs)("span",{className:"inline-flex items-center gap-[7px]",children:[(0,b.jsx)(h.g,{kind:"mon"}),(0,b.jsxs)("span",{children:[(0,b.jsx)(C.Masked,{kind:"app",real:a.appName}),(0,b.jsx)("span",{className:"text-ink-faint",children:g?` \xb7 ${a.path}`:a.path})]}),g&&(0,b.jsx)(e.E,{children:"Heartbeat"}),k&&(0,b.jsx)("span",{title:k,children:(0,b.jsx)(e.E,{children:"Keyword"})}),L.has(a.id)&&(0,b.jsx)("span",{title:"Shown on the public status page",children:(0,b.jsx)(e.E,{children:"Public"})})]})}),(0,b.jsx)("td",{className:m.z,children:(0,b.jsx)(j.F,{state:d.state,children:d.label})}),(0,b.jsx)("td",{className:m.z,children:(0,b.jsx)(c.n,{bars:(0,x.h)(a.days,i)})}),(0,b.jsx)("td",{className:(0,u.f)(m.z,D),children:(0,v.C)(a.uptime30)}),(0,b.jsx)("td",{className:(0,u.f)(m.z,D),children:g||"err"===a.state||null===a.lastLatencyMs?"—":`${a.lastLatencyMs} ms`}),(0,b.jsx)("td",{className:(0,u.f)(m.z,"text-ink-soft"),children:"heartbeat"===(f=a).kind?`${(0,r.v)(f.periodS??3600)} + ${(0,r.v)(f.graceS??600)}`:`${Math.max(1,Math.round(f.intervalS/60))} min`}),(0,b.jsx)("td",{className:m.z,children:H&&(0,b.jsx)(B.MonitorMenu,{monitor:{id:a.id,appName:a.appName,path:a.path,url:a.url,expectedStatus:a.expectedStatus,timeoutMs:a.timeoutMs,bodyContains:a.bodyContains,jsonPath:a.jsonPath,jsonEquals:a.jsonEquals,ownerPaused:a.ownerPaused,kind:a.kind,name:a.name,periodS:a.periodS,graceS:a.graceS}})})]})}}),P={apps:J.map(a=>({id:a.id,name:a.name})),monitors:I.filter(a=>!a.appGone).map(a=>({id:a.id,label:"heartbeat"===a.kind?`${a.appName} \xb7 ${a.path}`:`${a.appName}${a.path}`}))},Q=K.map(a=>{let c=(0,s.y)(a,i);return{key:a.id,state:c.status.state,text:[a.target,c.when,a.note??""].join(" "),row:(0,b.jsxs)("tr",{className:m.C,children:[(0,b.jsx)("td",{className:m.z,children:(0,b.jsx)(C.MaskedText,{text:a.target})}),(0,b.jsx)("td",{className:m.z,children:c.when}),(0,b.jsx)("td",{className:(0,u.f)(m.z,m.M,"text-ink-soft"),children:a.note?(0,b.jsx)(C.MaskedText,{text:a.note}):"—"}),(0,b.jsx)("td",{className:m.z,children:(0,b.jsx)(j.F,{state:c.status.state,children:c.status.text})}),(0,b.jsx)("td",{className:m.z,children:H&&(0,b.jsx)(z.MaintenanceMenu,{win:a,options:P})})]})}});return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(g.AutoRefresh,{at:i.getTime()}),(0,b.jsx)(e.L,{crumbs:[{label:"Hosting"},{label:"Uptime"}],title:"Uptime",sub:"HTTP checks run every minute; heartbeats wait for your own jobs to ping. cron-job.org calls the collector, and Upstash QStash checks every 5 minutes that it is still running.",actions:H?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(l.RefreshButton,{}),(0,b.jsx)(y.MaintenanceDialog,{mode:"add",options:P}),(0,b.jsx)(A.MonitorDialog,{mode:"add",apps:J})]}):void 0}),(0,b.jsx)("div",{className:"grid grid-cols-1 gap-4 min-[721px]:grid-cols-2 min-[1281px]:grid-cols-5",children:F.map(([a,c])=>(0,b.jsx)(e.N,{title:a,children:(0,b.jsx)("span",{className:"text-[26px] font-semibold tracking-[-0.02em]",children:N[c]})},a))}),(0,b.jsx)(e.N,{flush:!0,children:0===I.length?(0,b.jsx)(d.x,{canAct:H}):(0,b.jsx)(f.ListFilter,{placeholder:"Filter by name",states:w.g,head:E,rows:O})}),(0,b.jsxs)(e.N,{title:"Maintenance windows",flush:!0,children:[(0,b.jsxs)("p",{className:"mx-[18px] mb-2.5 text-[12.5px] text-ink-soft",children:["Checks keep running inside a window, but they are left out of uptime % and open no alerts. ",(0,t.n)()]}),Q.length?(0,b.jsx)(k.PlainTable,{head:G,rows:Q}):(0,b.jsxs)("p",{className:"mx-[18px] mb-4 text-[13px] text-ink-faint",children:["No maintenance windows.",H?" Add one before planned work, so it doesn't count as downtime.":""]})]})]})}a.s(["default",0,H,"maxDuration",0,30])}],603768,function(a){a.n(a.i(713064))}];
1
+ module.exports=[[180626,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call MaintenanceDialog() from the server but MaintenanceDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/uptime/maintenance-dialog.tsx","MaintenanceDialog");a.s(["MaintenanceDialog",0,b])},739243,a=>{var b=a.i(180626);a.n(b)},725849,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call MaintenanceMenu() from the server but MaintenanceMenu is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/uptime/maintenance-menu.tsx","MaintenanceMenu");a.s(["MaintenanceMenu",0,b])},316754,a=>{var b=a.i(725849);a.n(b)},287563,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call MonitorDialog() from the server but MonitorDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/uptime/monitor-dialog.tsx","MonitorDialog");a.s(["MonitorDialog",0,b])},215312,a=>{var b=a.i(287563);a.n(b)},244293,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call MonitorMenu() from the server but MonitorMenu is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/uptime/monitor-menu.tsx","MonitorMenu");a.s(["MonitorMenu",0,b])},538793,a=>{var b=a.i(244293);a.n(b)},713064,a=>{var b=a.i(907997),c=a.i(252302),d=a.i(649247),e=a.i(803681),f=a.i(959581),g=a.i(685865),h=a.i(154756),i=a.i(954296),j=a.i(686251),k=a.i(605826),l=a.i(421911),m=a.i(791444),n=a.i(109307),o=a.i(462820),p=a.i(714530),q=a.i(895176),r=a.i(149396),s=a.i(767163),t=a.i(519051),u=a.i(371289),v=a.i(245710),w=a.i(139138),x=a.i(469762),y=a.i(505237),z=a.i(968715),A=a.i(739243),B=a.i(316754),C=a.i(215312),D=a.i(570845),E=a.i(538793),F=a.i(701702);let G="font-mono text-[12.5px]",H=["Monitor","Status",(0,b.jsxs)("span",{children:["Last 90 days",(0,b.jsx)(i.Src,{kind:"calc"})]},"bars"),"Uptime","Response","Interval",""],I=[["Up","ok"],["Degraded","warn"],["Down","err"],["Maintenance","maint"],["Paused","paused"]],J=["Applies to","When","Note","Status",""];async function K(){let a=await (0,n.I)(),i=new Date,K=(0,y.z)(a.role),[L,M,N,O]=await Promise.all([(0,q.d)(i),K?(0,q.b)():Promise.resolve([]),(0,p.A)(),(0,r.u)()]),P=L.map(a=>({m:a,s:(0,y.M)(a,(0,t.x)(N,{monitorId:a.id,appId:a.appId},i),i)})),Q=(0,z.j)(P.map(({m:a,s:b})=>({state:b.state,appGone:a.appGone}))),R=P.map(({m:a,s:d})=>{let f,g="heartbeat"===a.kind,k=g?null:a.bodyContains??(a.jsonPath?`JSON ${a.jsonPath} equals "${a.jsonEquals??""}"`:null),l=g?`${a.appName} \xb7 ${a.path}`:`${a.appName}${a.path}`;return{key:a.id,state:d.state,text:[l,g?"Heartbeat":k?"Keyword":"",O.has(a.id)?"Public":"",d.label,(0,x.C)(a.uptime30)].join(" "),row:(0,b.jsxs)("tr",{className:m.C,children:[(0,b.jsx)("td",{className:m.z,children:(0,b.jsxs)("span",{className:"inline-flex items-center gap-[7px]",children:[(0,b.jsx)(h.g,{kind:"mon"}),(0,b.jsxs)("span",{children:[(0,b.jsx)(F.Masked,{kind:"app",real:a.appName}),(0,b.jsx)("span",{className:"text-ink-faint",children:g?` \xb7 ${a.path}`:a.path})]}),g&&(0,b.jsx)(e.E,{children:"Heartbeat"}),k&&(0,b.jsx)("span",{title:k,children:(0,b.jsx)(e.E,{children:"Keyword"})}),O.has(a.id)&&(0,b.jsx)("span",{title:"Shown on the public status page",children:(0,b.jsx)(e.E,{children:"Public"})})]})}),(0,b.jsx)("td",{className:m.z,children:a.move&&!a.appGone&&"warn"===d.state?(0,b.jsx)(D.DomainMoved,{monitorId:a.id,from:a.move.from,to:a.move.to,canAct:K}):(0,b.jsx)(j.F,{state:d.state,children:d.label})}),(0,b.jsx)("td",{className:m.z,children:(0,b.jsx)(c.n,{bars:(0,z.h)(a.days,i)})}),(0,b.jsx)("td",{className:(0,w.f)(m.z,G),children:(0,x.C)(a.uptime30)}),(0,b.jsx)("td",{className:(0,w.f)(m.z,G),children:g||"err"===a.state||null===a.lastLatencyMs?"—":`${a.lastLatencyMs} ms`}),(0,b.jsx)("td",{className:(0,w.f)(m.z,"text-ink-soft"),children:"heartbeat"===(f=a).kind?`${(0,s.v)(f.periodS??3600)} + ${(0,s.v)(f.graceS??600)}`:`${Math.max(1,Math.round(f.intervalS/60))} min`}),(0,b.jsx)("td",{className:m.z,children:K&&(0,b.jsx)(E.MonitorMenu,{monitor:{id:a.id,appName:a.appName,path:a.path,url:a.url,expectedStatus:a.expectedStatus,timeoutMs:a.timeoutMs,bodyContains:a.bodyContains,jsonPath:a.jsonPath,jsonEquals:a.jsonEquals,ownerPaused:a.ownerPaused,kind:a.kind,name:a.name,periodS:a.periodS,graceS:a.graceS}})})]})}}),S={apps:M.map(a=>({id:a.id,name:a.name})),monitors:L.filter(a=>!a.appGone).map(a=>({id:a.id,label:"heartbeat"===a.kind?`${a.appName} \xb7 ${a.path}`:`${a.appName}${a.path}`}))},T=N.map(a=>{let c=(0,t.y)(a,i);return{key:a.id,state:c.status.state,text:[a.target,c.when,a.note??""].join(" "),row:(0,b.jsxs)("tr",{className:m.C,children:[(0,b.jsx)("td",{className:m.z,children:(0,b.jsx)(F.MaskedText,{text:a.target})}),(0,b.jsx)("td",{className:m.z,children:c.when}),(0,b.jsx)("td",{className:(0,w.f)(m.z,m.M,"text-ink-soft"),children:a.note?(0,b.jsx)(F.MaskedText,{text:a.note}):"—"}),(0,b.jsx)("td",{className:m.z,children:(0,b.jsx)(j.F,{state:c.status.state,children:c.status.text})}),(0,b.jsx)("td",{className:m.z,children:K&&(0,b.jsx)(B.MaintenanceMenu,{win:a,options:S})})]})}});return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(g.AutoRefresh,{at:i.getTime()}),(0,b.jsx)(e.L,{crumbs:[{label:"Hosting"},{label:"Uptime"}],title:"Uptime",sub:(0,u.r)()?o.V.sub.cloud:o.V.sub.selfhost,actions:K?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(l.RefreshButton,{}),(0,b.jsx)(A.MaintenanceDialog,{mode:"add",options:S}),(0,b.jsx)(C.MonitorDialog,{mode:"add",apps:M})]}):void 0}),(0,b.jsx)("div",{className:"grid grid-cols-1 gap-4 min-[721px]:grid-cols-2 min-[1281px]:grid-cols-5",children:I.map(([a,c])=>(0,b.jsx)(e.N,{title:a,children:(0,b.jsx)("span",{className:"text-[26px] font-semibold tracking-[-0.02em]",children:Q[c]})},a))}),(0,b.jsx)(e.N,{flush:!0,children:0===L.length?(0,b.jsx)(d.x,{canAct:K}):(0,b.jsx)(f.ListFilter,{placeholder:"Filter by name",states:y.g,head:H,rows:R})}),(0,b.jsxs)(e.N,{title:"Maintenance windows",flush:!0,children:[(0,b.jsxs)("p",{className:"mx-[18px] mb-2.5 text-[12.5px] text-ink-soft",children:["Checks keep running inside a window, but they are left out of uptime % and open no alerts. ",(0,v.n)()]}),T.length?(0,b.jsx)(k.PlainTable,{head:J,rows:T}):(0,b.jsxs)("p",{className:"mx-[18px] mb-4 text-[13px] text-ink-faint",children:["No maintenance windows.",K?" Add one before planned work, so it doesn't count as downtime.":""]})]})]})}a.s(["default",0,K,"maxDuration",0,30])}],603768,function(a){a.n(a.i(713064))}];
2
2
 
3
3
  //# sourceMappingURL=src_app_%28console%29_uptime_148phfjye0539._.js.map
@@ -1,3 +1,3 @@
1
- (()=>{"use strict";module.exports=[320518,a=>{var b=a.i(187924),c=a.i(249490),d=a.i(572131),e=a.i(823292),f=a.i(619089),g=a.i(507504),h=a.i(814574),i=a.i(941881),j=a.i(147474);let k=[30,60,90,180,360];function l(a){return"all"===a.scope?"all":"app"===a.scope?`app:${a.appId}`:`monitor:${a.monitorId}`}var m=a.i(405050);let n=(0,m.createServerReference)("4038dd92b771fde0dcac7cbf44a35f54c01a573a9d",m.callServer,void 0,m.findSourceMapURL,"addWindow"),o=(0,m.createServerReference)("607cbb86adfe69a1469dccc9312007ade437068e10",m.callServer,void 0,m.findSourceMapURL,"editWindow");function p(a){if("edit"===a.mode){let b=a.win;return{target:l(b),weekly:b.weekly,start:(0,j.S)(b.startsAt),durationMin:String(b.durationMin),note:b.note??""}}return{target:"all",weekly:!1,start:(0,j.S)(new Date(36e5*Math.ceil(Date.now()/36e5))),durationMin:"90",note:""}}a.s(["MaintenanceDialog",0,function(a){let[m,q]=(0,d.useState)(!1),r="edit"===a.mode?a.open:m,[s,t]=(0,d.useState)(()=>p(a)),[u,v]=(0,d.useState)({}),[w,x]=(0,d.useTransition)();function y(b){b&&(t(p(a)),v({})),"edit"===a.mode?a.onOpenChange(b):q(b)}(0,g.useHoldRefresh)(r);let{apps:z,monitors:A}=a.options,B="edit"===a.mode?l(a.win):null,C="all"===B||z.some(a=>`app:${a.id}`===B)||A.some(a=>`monitor:${a.id}`===B),D=u.scope??u.targetId;return(0,b.jsxs)(h.N,{open:r,onOpenChange:a=>{w||y(a)},children:["add"===a.mode&&(0,b.jsx)(h.a,{render:(0,b.jsx)(f.K,{children:"Add maintenance window"})}),(0,b.jsxs)(h.d,{className:"gap-0 p-0 sm:max-w-[560px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{children:[(0,b.jsx)(h.F,{className:"text-base",children:"add"===a.mode?"Add maintenance window":"Edit maintenance window"}),(0,b.jsxs)(h.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:["Checks keep running, but they are left out of uptime % and open no alerts. ",(0,j.n)()]})]})]}),(0,b.jsxs)("form",{onSubmit:b=>{b.preventDefault(),function(){var b,c;let d={...function(a){if("all"===a)return{scope:"all",targetId:""};let b=/^(app|monitor):(.+)$/.exec(a);return b?{scope:b[1],targetId:b[2]}:{scope:"",targetId:""}}(s.target),start:s.start,durationMin:s.durationMin,weekly:s.weekly,note:s.note},f=function(a){let b={},c="all"===a.scope||"app"===a.scope||"monitor"===a.scope?a.scope:null;c||(b.scope="Pick what it applies to.");let d="string"==typeof a.start?a.start:"",e=(0,j.a)(d);e||(b.start="Pick a start time.");let f=Number(a.durationMin);k.includes(f)||(b.durationMin="Pick how long it lasts.");let g="string"==typeof a.targetId?a.targetId:"";if(c&&"all"!==c&&!(0,i.f)(g)&&(b.targetId="app"===c?"Pick an application.":"Pick a monitor."),Object.keys(b).length||!c||!e)return{ok:!1,fieldErrors:b};let h=("string"==typeof a.note?a.note:"").trim().slice(0,120)||null;return{ok:!0,value:{scope:c,appId:"app"===c?g:null,monitorId:"monitor"===c?g:null,startsAt:e,durationMin:f,weekly:!0===a.weekly,note:h}}}(d);if(!f.ok)return v(f.fieldErrors);(b=f.value,c=new Date,!b.weekly&&b.startsAt.getTime()+6e4*b.durationMin<=c.getTime())?v({start:"That window has already ended."}):(v({}),x(async()=>{let b="add"===a.mode?await n(d):await o(a.win.id,d);if(!b.ok){v(b.fieldErrors??{}),e.c.error(b.error);return}e.c.success("Window saved",{description:b.message}),y(!1)}))}()},children:[(0,b.jsxs)("div",{className:"px-[18px] pt-2",children:[(0,b.jsx)(f.O,{id:"mw-scope",label:"Applies to",error:D,children:(0,b.jsxs)("select",{id:"mw-scope",className:f.S,value:s.target,onChange:a=>t({...s,target:a.target.value}),children:[(0,b.jsx)("option",{value:"all",children:"All monitors"}),"edit"===a.mode&&!C&&B&&(0,b.jsx)("option",{value:B,children:a.win.target}),z.length>0&&(0,b.jsx)("optgroup",{label:"Application",children:z.map(a=>(0,b.jsx)("option",{value:`app:${a.id}`,children:a.name},a.id))}),A.length>0&&(0,b.jsx)("optgroup",{label:"One monitor",children:A.map(a=>(0,b.jsx)("option",{value:`monitor:${a.id}`,children:a.label},a.id))})]})}),(0,b.jsxs)("fieldset",{className:"mb-3.5 flex flex-col gap-[5px]",children:[(0,b.jsx)("legend",{className:"mb-[5px] text-[13px] font-medium",children:"Repeat"}),(0,b.jsx)("div",{className:"flex flex-wrap gap-x-4 gap-y-1.5",children:[[!1,"Once"],[!0,"Every week"]].map(([a,c])=>(0,b.jsxs)("label",{className:"flex items-center gap-1.5 text-[13px]",children:[(0,b.jsx)("input",{type:"radio",name:"mw-rep",className:"size-4 accent-brand",checked:s.weekly===a,onChange:()=>t({...s,weekly:a})}),c]},c))})]}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,b.jsx)(f.O,{id:"mw-start",label:"Starts",error:u.start,children:(0,b.jsx)("input",{id:"mw-start",type:"datetime-local",className:f.S,value:s.start,onChange:a=>t({...s,start:a.target.value})})}),(0,b.jsx)(f.O,{id:"mw-len",label:"Lasts",error:u.durationMin,children:(0,b.jsx)("select",{id:"mw-len",className:f.S,value:s.durationMin,onChange:a=>t({...s,durationMin:a.target.value}),children:k.map(a=>{let c,d;return(0,b.jsx)("option",{value:String(a),children:[(c=Math.floor(a/60))?`${c} h`:"",(d=a%60)?`${d} min`:""].filter(Boolean).join(" ")},a)})})})]}),(0,b.jsx)(f.O,{id:"mw-note",label:"Note (optional)",help:"Shown on the public status page if a monitor there is affected.",children:(0,b.jsx)("input",{id:"mw-note",className:f.S,value:s.note,maxLength:120,placeholder:"Moving DNS to Cloudflare",autoComplete:"off",onChange:a=>t({...s,note:a.target.value})})})]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(f.K,{onClick:()=>y(!1),disabled:w,children:"Cancel"}),(0,b.jsx)(f.K,{type:"submit",variant:"primary",disabled:w,children:w?"Saving…":"add"===a.mode?"Add window":"Save"})]})]})]})]})}],320518)},723355,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(611619),e=a.i(188406),f=a.i(742680),g=a.i(405050);let h=(0,g.createServerReference)("407fccae53a1910ccf917ffdbd3f3f287851c31cfc",g.callServer,void 0,g.findSourceMapURL,"removeWindow");var i=a.i(320518);a.s(["MaintenanceMenu",0,function({win:a,options:g}){let[j,k]=(0,c.useState)(!1),[l,m]=(0,c.useState)(!1);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.RowMenu,{label:(0,f.J)(a.target,"window"),items:[{label:"Edit window",onSelect:()=>k(!0)},"---",{label:"Delete",danger:!0,onSelect:()=>m(!0)}]}),j&&(0,b.jsx)(i.MaintenanceDialog,{mode:"edit",win:a,options:g,open:!0,onOpenChange:k}),(0,b.jsx)(d.f,{open:l,onOpenChange:m,title:"Delete this maintenance window?",body:"Checks count toward uptime % and open alerts again outside any other window.",cta:"Delete",danger:!0,onConfirm:async()=>{let b=await h(a.id);return{ok:b.ok,message:(b.ok?b.message:b.error)??""}}})]})}],723355)},642823,855771,a=>{var b=a.i(187924),c=a.i(614548),d=a.i(572131),e=a.i(823292),f=a.i(619089),g=a.i(507504),h=a.i(814574),i=a.i(880305),j=a.i(310412),k=a.i(405050);let l=(0,k.createServerReference)("608c39ff3ce6625cf7317e8af776a152a22bcadcd9",k.callServer,void 0,k.findSourceMapURL,"addHeartbeat"),m=(0,k.createServerReference)("608515271840d74b7e27ff1cd5b2ea6691bc34f30e",k.callServer,void 0,k.findSourceMapURL,"addMonitor"),n=(0,k.createServerReference)("6029f2bcdf1c931a508457f5db4f694d99ed140fab",k.callServer,void 0,k.findSourceMapURL,"editHeartbeat"),o=(0,k.createServerReference)("603d46117f0038f275b4855698d786e8d7409423e4",k.callServer,void 0,k.findSourceMapURL,"editMonitor");var p=a.i(771378);function q(a){return null===a?{ok:!1,text:"Couldn't reach the console"}:a>=200&&a<300?{ok:!0,text:`OK \xb7 ${a}`}:404===a?{ok:!1,text:"Not found · 404"}:429===a?{ok:!1,text:"Too many pings · 429"}:{ok:!1,text:`Failed \xb7 ${a}`}}function r({name:a,url:i,onClose:j}){let k=null!==i,[l,m]=(0,d.useState)(!1),[n,o]=(0,d.useState)(null);async function s(){if(i)try{await navigator.clipboard.writeText(i),e.c.success("Copied.")}catch{e.c.error("Couldn't copy. Select the URL and copy it yourself.")}}async function t(a){let b,c=i?(b=/\/api\/ping\/(hb_[0-9a-f]{32})\/?$/.exec(i))?`/api/ping/${b[1]}${"fail"===a?"/fail":""}`:null:null;if(c&&!l){m(!0),o(null);try{let a=await fetch(c,{method:"GET",cache:"no-store"});o(q(a.status))}catch{o(q(null))}finally{m(!1)}}}function u(){o(null),j()}return(0,g.useHoldRefresh)(k),(0,b.jsx)(h.N,{open:k,onOpenChange:a=>{a||u()},children:(0,b.jsxs)(h.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsxs)(h.F,{className:"text-base",children:["Ping URL for ",(0,b.jsx)(p.Masked,{kind:"text",real:a})]}),(0,b.jsx)(h.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:"Copy it now. It is shown once; the console keeps only a hash. Lost it? Make a new one from the monitor's menu."})]})]}),(0,b.jsxs)("div",{className:"px-[18px] pt-2",children:[(0,b.jsxs)("div",{className:"mb-3 flex items-center gap-1.5",children:[(0,b.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]",children:i&&(0,b.jsx)(p.Masked,{kind:"text",real:i,masked:i.replace(/(\/api\/ping\/).*/,"$1••••••")})}),(0,b.jsx)(f.K,{size:"sm",onClick:s,children:"Copy"})]}),(0,b.jsxs)("div",{className:"mb-3.5 flex flex-wrap items-center gap-2",children:[(0,b.jsx)(f.K,{size:"sm",disabled:l,onClick:()=>t("ok"),children:"Send test ping"}),(0,b.jsx)(f.K,{size:"sm",disabled:l,onClick:()=>t("fail"),children:"Test fail"}),(0,b.jsx)("span",{role:"status","aria-live":"polite",className:`text-[13px] ${n?n.ok?"text-ok":"text-err":"text-ink-soft"}`,children:l?"Sending…":n?.text??""})]}),(0,b.jsxs)("div",{className:"mb-3.5 rounded-lg border border-line bg-surface-2 px-3 py-2.5 text-[13px]",children:[(0,b.jsx)("b",{className:"font-medium",children:"From your job"}),(0,b.jsxs)("ul",{className:"mt-1 list-disc pl-[18px] text-ink-soft",children:[(0,b.jsxs)("li",{children:["When it succeeds: ",(0,b.jsx)("span",{className:"font-mono",children:"curl -fsS -m 10 <url>"})]}),(0,b.jsxs)("li",{children:["When it fails: add ",(0,b.jsx)("span",{className:"font-mono",children:"/fail"})," to the URL"]}),(0,b.jsxs)("li",{children:["When it starts (optional): add ",(0,b.jsx)("span",{className:"font-mono",children:"/start"})]})]})]})]}),(0,b.jsx)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:(0,b.jsx)(f.K,{variant:"primary",onClick:u,children:"Done"})})]})})}a.s(["f",0,r],855771);let s={name:"",periodS:"86400",graceS:"3600"},t=[["http","HTTP check","The collector opens a URL every minute"],["heartbeat","Heartbeat","Your cron job or backup script pings a secret URL when it runs"]];function u(a){if("edit"===a.mode){let b=a.monitor;return{appId:"",kind:b.kind,url:"http"===b.kind?b.url:"",expectedStatus:String(b.expectedStatus),timeoutS:String(Math.round(b.timeoutMs/1e3)),bodyContains:b.bodyContains??"",jsonPath:b.jsonPath??"",jsonEquals:b.jsonEquals??"",name:b.name??"",periodS:String(b.periodS??s.periodS),graceS:String(b.graceS??s.graceS)}}let b=a.apps[0];return{appId:b?.id??"",kind:"http",url:b?`https://${b.domain}/api/health`:"",expectedStatus:"200",timeoutS:"5",bodyContains:"",jsonPath:"",jsonEquals:"",...s}}a.s(["MonitorDialog",0,function(a){let[k,p]=(0,d.useState)(!1),q="edit"===a.mode?a.open:k,[s,v]=(0,d.useState)(()=>u(a)),[w,x]=(0,d.useState)({}),[y,z]=(0,d.useTransition)(),[A,B]=(0,d.useState)(null);function C(b){b&&(v(u(a)),x({})),"edit"===a.mode?a.onOpenChange(b):p(b)}(0,g.useHoldRefresh)(q);let D="add"===a.mode?a.apps:[],E="add"===a.mode&&0===D.length,F="heartbeat"===s.kind,G="add"===a.mode?"HTTP checks run every minute from the collector. Heartbeats wait for your job to ping the console.":F?"Your job pings the console; nothing is fetched.":"Checked every minute from the collector.";return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(h.N,{open:q,onOpenChange:a=>{y||C(a)},children:["add"===a.mode&&(E?(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(f.K,{variant:"primary",disabled:!0,children:"Add monitor"}),(0,b.jsx)("span",{className:"text-[12.5px] text-ink-faint",children:"Watch an app first: Connections, then Sync."})]}):(0,b.jsx)(h.a,{render:(0,b.jsx)(f.K,{variant:"primary",children:"Add monitor"})})),(0,b.jsxs)(h.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{children:[(0,b.jsx)(h.F,{className:"text-base",children:"add"===a.mode?"Add monitor":"Edit monitor"}),(0,b.jsx)(h.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:G})]})]}),(0,b.jsxs)("form",{onSubmit:b=>{let c,d;b.preventDefault(),(d=(c="heartbeat"===s.kind)?(0,j.a)(s):(0,j.X)(s)).ok?(x({}),z(async()=>{let b=c?"add"===a.mode?await l(s.appId,s):await n(a.monitor.id,s):"add"===a.mode?await m(s.appId,s):await o(a.monitor.id,s);if(!b.ok){x(b.fieldErrors??{}),e.c.error(b.error);return}e.c.success("add"===a.mode?"Monitor added":"Monitor saved",{description:b.message}),C(!1);let d=b.data&&"pingUrl"in b.data?b.data.pingUrl:null;d&&B({name:s.name.trim(),url:d})})):x(d.fieldErrors)},children:[(0,b.jsxs)("div",{className:"px-[18px] pt-2",children:["add"===a.mode&&(0,b.jsxs)("fieldset",{className:"mb-3.5",children:[(0,b.jsx)("legend",{className:"mb-[5px] text-[13px] font-medium",children:"Type"}),(0,b.jsx)("div",{className:"overflow-hidden rounded-lg border border-line",children:t.map(([a,c,d])=>(0,b.jsxs)("label",{className:"flex cursor-pointer items-start gap-2.5 border-t border-line px-3 py-[9px] first:border-t-0 hover:bg-hover",children:[(0,b.jsx)("input",{type:"radio",name:"mon-kind",value:a,checked:s.kind===a,className:"mt-[3px] accent-brand",onChange:()=>{v({...s,kind:a}),x({})}}),(0,b.jsxs)("span",{children:[c,(0,b.jsx)("small",{className:"block text-xs text-ink-faint",children:d})]})]},a))})]}),(0,b.jsx)(f.O,{id:"mon-app",label:"Application",children:"add"===a.mode?(0,b.jsx)("select",{id:"mon-app",className:f.S,value:s.appId,onChange:a=>{let b=D.find(b=>b.id===a.target.value);v({...s,appId:a.target.value,url:b?`https://${b.domain}/`:s.url})},children:D.map(a=>(0,b.jsx)("option",{value:a.id,children:a.name},a.id))}):(0,b.jsx)("input",{id:"mon-app",className:f.S,value:a.monitor.appName,disabled:!0})}),F?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(f.O,{id:"hb-name",label:"Name",error:w.name,children:(0,b.jsx)("input",{id:"hb-name",className:f.S,value:s.name,placeholder:"backup job",maxLength:80,autoComplete:"off",onChange:a=>v({...s,name:a.target.value})})}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,b.jsx)(f.O,{id:"hb-every",label:"Expected every",error:w.periodS,children:(0,b.jsx)("select",{id:"hb-every",className:f.S,value:s.periodS,onChange:a=>v({...s,periodS:a.target.value}),children:i.Q.map(a=>(0,b.jsx)("option",{value:String(a),children:(0,i.v)(a)},a))})}),(0,b.jsx)(f.O,{id:"hb-grace",label:"Grace time",error:w.graceS,children:(0,b.jsx)("select",{id:"hb-grace",className:f.S,value:s.graceS,onChange:a=>v({...s,graceS:a.target.value}),children:i.q.map(a=>(0,b.jsx)("option",{value:String(a),children:(0,i.v)(a)},a))})})]}),(0,b.jsxs)("p",{className:"mb-3 text-[13px] text-ink-soft",children:["Late once the period passes, down after the grace time too.","add"===a.mode?" The ping URL is shown once after you add it.":""]})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(f.O,{id:"mon-url",label:"URL",help:"Must start with https://. A health route that touches nothing heavy works best.",error:w.url,children:(0,b.jsx)("input",{id:"mon-url",className:f.S,value:s.url,autoComplete:"off",spellCheck:!1,onChange:a=>v({...s,url:a.target.value})})}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,b.jsx)(f.O,{id:"mon-code",label:"Expected status",error:w.expectedStatus,children:(0,b.jsx)("input",{id:"mon-code",className:f.S,inputMode:"numeric",value:s.expectedStatus,onChange:a=>v({...s,expectedStatus:a.target.value})})}),(0,b.jsx)(f.O,{id:"mon-timeout",label:"Timeout",error:w.timeoutS,children:(0,b.jsx)("select",{id:"mon-timeout",className:f.S,value:s.timeoutS,onChange:a=>v({...s,timeoutS:a.target.value}),children:j.L.map(a=>(0,b.jsxs)("option",{value:String(a),children:[a," s"]},a))})})]}),(0,b.jsx)(f.O,{id:"mon-match",label:"Response must contain (optional)",help:"Plain text, case-sensitive. The first 256 KB of the response is searched and never stored.",error:w.bodyContains,children:(0,b.jsx)("input",{id:"mon-match",className:f.S,value:s.bodyContains??"",placeholder:'e.g. "status":"ok"',autoComplete:"off",spellCheck:!1,onChange:a=>v({...s,bodyContains:a.target.value})})}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,b.jsx)(f.O,{id:"mon-jpath",label:"Or JSON field (optional)",error:w.jsonPath,children:(0,b.jsx)("input",{id:"mon-jpath",className:`${f.S} font-mono`,value:s.jsonPath??"",placeholder:"status or checks.db",autoComplete:"off",spellCheck:!1,onChange:a=>v({...s,jsonPath:a.target.value})})}),(0,b.jsx)(f.O,{id:"mon-jeq",label:"Equals",error:w.jsonEquals,children:(0,b.jsx)("input",{id:"mon-jeq",className:`${f.S} font-mono`,value:s.jsonEquals??"",placeholder:"ok",autoComplete:"off",spellCheck:!1,onChange:a=>v({...s,jsonEquals:a.target.value})})})]}),(0,b.jsx)("p",{className:"mb-3 text-[13px] text-ink-soft",children:"Marked down after 3 failed checks in a row. A missing keyword counts as a failed check."})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(f.K,{onClick:()=>C(!1),disabled:y,children:"Cancel"}),(0,b.jsx)(f.K,{type:"submit",variant:"primary",disabled:y,children:y?"Saving…":"add"===a.mode?"Add monitor":"Save"})]})]})]})]}),(0,b.jsx)(r,{name:A?.name??"",url:A?.url??null,onClose:()=>B(null)})]})}],642823)},788831,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(611619),f=a.i(188406),g=a.i(742680),h=a.i(405050);let i=(0,h.createServerReference)("40d1fff01fd68691ca5d74009a45c3c6e18ebf8a81",h.callServer,void 0,h.findSourceMapURL,"checkNow"),j=(0,h.createServerReference)("402bd22ed749f291f7e3de81600808bf1bd811d743",h.callServer,void 0,h.findSourceMapURL,"newPingUrl"),k=(0,h.createServerReference)("601959ebe07fff7a9ee41f165edfc6210acdb78db8",h.callServer,void 0,h.findSourceMapURL,"pauseMonitor"),l=(0,h.createServerReference)("60f6f921322a8bc6e7ed2c92d5b2c5f3e9d97659ee",h.callServer,void 0,h.findSourceMapURL,"recordTestPingAction"),m=(0,h.createServerReference)("40c7c0874c5ccfb5d7791a5d17874f9b307a88ef96",h.callServer,void 0,h.findSourceMapURL,"removeMonitor");var n=a.i(642823),o=a.i(855771);a.s(["MonitorMenu",0,function({monitor:a}){let[h,p]=(0,c.useState)(!1),[q,r]=(0,c.useState)(!1),[s,t]=(0,c.useState)(!1),[u,v]=(0,c.useState)(null),[,w]=(0,c.useTransition)(),x=(0,c.useRef)(!1),y="heartbeat"===a.kind,z=y?`${a.appName} \xb7 ${a.path}`:`${a.appName}${a.path}`,A=(a,b)=>{if(x.current)return;x.current=!0;let c=b?d.c.loading(b):void 0;w(async()=>{try{let b=await a();b.ok?b.data?.passed===!1?d.c.warning(b.message??"",{id:c}):d.c.success(b.message??"",{id:c}):d.c.error(b.error,{id:c})}catch{d.c.error("Something went wrong. Try again.",{id:c})}finally{x.current=!1}})},B={label:a.ownerPaused?"Resume":"Pause",onSelect:()=>A(()=>k(a.id,!a.ownerPaused))},C=y?{label:"Show ping URL",onSelect:()=>t(!0)}:{label:"Check now",onSelect:()=>A(()=>i(a.id),`Checking ${z}…`)};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(f.RowMenu,{label:(0,g.J)(a.appName,a.path),items:[C,...y?[{label:"Record a test ping: OK",onSelect:()=>A(()=>l(a.id,"ok"))},{label:"Record a test ping: Fail",onSelect:()=>A(()=>l(a.id,"fail"))}]:[],{label:"Edit monitor",onSelect:()=>p(!0)},B,"---",{label:"Delete",danger:!0,onSelect:()=>r(!0)}]}),h&&(0,b.jsx)(n.MonitorDialog,{mode:"edit",monitor:a,open:!0,onOpenChange:p}),(0,b.jsx)(e.f,{open:q,onOpenChange:r,title:`Delete ${z}?`,body:y?"Its ping URL stops working. This can't be undone.":"This can't be undone.",cta:"Delete",danger:!0,onConfirm:async()=>{let b=await m(a.id);return{ok:b.ok,message:(b.ok?b.message:b.error)??""}}}),y&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.f,{open:s,onOpenChange:t,title:`New ping URL for ${a.path}?`,body:"Make a new ping URL? The old one stops working, so update your job.",cta:"Make a new URL",onConfirm:async()=>{let b=await j(a.id);return b.ok&&b.data?.pingUrl&&v(b.data.pingUrl),{ok:b.ok,message:(b.ok?b.message:b.error)??""}}}),(0,b.jsx)(o.f,{name:a.path,url:u,onClose:()=>v(null)})]})]})}],788831)}]})();
1
+ (()=>{"use strict";module.exports=[320518,a=>{var b=a.i(187924),c=a.i(249490),d=a.i(572131),e=a.i(823292),f=a.i(619089),g=a.i(507504),h=a.i(814574),i=a.i(941881),j=a.i(147474);let k=[30,60,90,180,360];function l(a){return"all"===a.scope?"all":"app"===a.scope?`app:${a.appId}`:`monitor:${a.monitorId}`}var m=a.i(405050);let n=(0,m.createServerReference)("409c2433a24efd8772bbaf5c98a4e994b7308d876b",m.callServer,void 0,m.findSourceMapURL,"addWindow"),o=(0,m.createServerReference)("60f8622eaf665f4a81b6a57f9b87982824891214d3",m.callServer,void 0,m.findSourceMapURL,"editWindow");function p(a){if("edit"===a.mode){let b=a.win;return{target:l(b),weekly:b.weekly,start:(0,j.S)(b.startsAt),durationMin:String(b.durationMin),note:b.note??""}}return{target:"all",weekly:!1,start:(0,j.S)(new Date(36e5*Math.ceil(Date.now()/36e5))),durationMin:"90",note:""}}a.s(["MaintenanceDialog",0,function(a){let[m,q]=(0,d.useState)(!1),r="edit"===a.mode?a.open:m,[s,t]=(0,d.useState)(()=>p(a)),[u,v]=(0,d.useState)({}),[w,x]=(0,d.useTransition)();function y(b){b&&(t(p(a)),v({})),"edit"===a.mode?a.onOpenChange(b):q(b)}(0,g.useHoldRefresh)(r);let{apps:z,monitors:A}=a.options,B="edit"===a.mode?l(a.win):null,C="all"===B||z.some(a=>`app:${a.id}`===B)||A.some(a=>`monitor:${a.id}`===B),D=u.scope??u.targetId;return(0,b.jsxs)(h.N,{open:r,onOpenChange:a=>{w||y(a)},children:["add"===a.mode&&(0,b.jsx)(h.a,{render:(0,b.jsx)(f.K,{children:"Add maintenance window"})}),(0,b.jsxs)(h.d,{className:"gap-0 p-0 sm:max-w-[560px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{children:[(0,b.jsx)(h.F,{className:"text-base",children:"add"===a.mode?"Add maintenance window":"Edit maintenance window"}),(0,b.jsxs)(h.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:["Checks keep running, but they are left out of uptime % and open no alerts. ",(0,j.n)()]})]})]}),(0,b.jsxs)("form",{onSubmit:b=>{b.preventDefault(),function(){var b,c;let d={...function(a){if("all"===a)return{scope:"all",targetId:""};let b=/^(app|monitor):(.+)$/.exec(a);return b?{scope:b[1],targetId:b[2]}:{scope:"",targetId:""}}(s.target),start:s.start,durationMin:s.durationMin,weekly:s.weekly,note:s.note},f=function(a){let b={},c="all"===a.scope||"app"===a.scope||"monitor"===a.scope?a.scope:null;c||(b.scope="Pick what it applies to.");let d="string"==typeof a.start?a.start:"",e=(0,j.a)(d);e||(b.start="Pick a start time.");let f=Number(a.durationMin);k.includes(f)||(b.durationMin="Pick how long it lasts.");let g="string"==typeof a.targetId?a.targetId:"";if(c&&"all"!==c&&!(0,i.f)(g)&&(b.targetId="app"===c?"Pick an application.":"Pick a monitor."),Object.keys(b).length||!c||!e)return{ok:!1,fieldErrors:b};let h=("string"==typeof a.note?a.note:"").trim().slice(0,120)||null;return{ok:!0,value:{scope:c,appId:"app"===c?g:null,monitorId:"monitor"===c?g:null,startsAt:e,durationMin:f,weekly:!0===a.weekly,note:h}}}(d);if(!f.ok)return v(f.fieldErrors);(b=f.value,c=new Date,!b.weekly&&b.startsAt.getTime()+6e4*b.durationMin<=c.getTime())?v({start:"That window has already ended."}):(v({}),x(async()=>{let b="add"===a.mode?await n(d):await o(a.win.id,d);if(!b.ok){v(b.fieldErrors??{}),e.c.error(b.error);return}e.c.success("Window saved",{description:b.message}),y(!1)}))}()},children:[(0,b.jsxs)("div",{className:"px-[18px] pt-2",children:[(0,b.jsx)(f.O,{id:"mw-scope",label:"Applies to",error:D,children:(0,b.jsxs)("select",{id:"mw-scope",className:f.S,value:s.target,onChange:a=>t({...s,target:a.target.value}),children:[(0,b.jsx)("option",{value:"all",children:"All monitors"}),"edit"===a.mode&&!C&&B&&(0,b.jsx)("option",{value:B,children:a.win.target}),z.length>0&&(0,b.jsx)("optgroup",{label:"Application",children:z.map(a=>(0,b.jsx)("option",{value:`app:${a.id}`,children:a.name},a.id))}),A.length>0&&(0,b.jsx)("optgroup",{label:"One monitor",children:A.map(a=>(0,b.jsx)("option",{value:`monitor:${a.id}`,children:a.label},a.id))})]})}),(0,b.jsxs)("fieldset",{className:"mb-3.5 flex flex-col gap-[5px]",children:[(0,b.jsx)("legend",{className:"mb-[5px] text-[13px] font-medium",children:"Repeat"}),(0,b.jsx)("div",{className:"flex flex-wrap gap-x-4 gap-y-1.5",children:[[!1,"Once"],[!0,"Every week"]].map(([a,c])=>(0,b.jsxs)("label",{className:"flex items-center gap-1.5 text-[13px]",children:[(0,b.jsx)("input",{type:"radio",name:"mw-rep",className:"size-4 accent-brand",checked:s.weekly===a,onChange:()=>t({...s,weekly:a})}),c]},c))})]}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,b.jsx)(f.O,{id:"mw-start",label:"Starts",error:u.start,children:(0,b.jsx)("input",{id:"mw-start",type:"datetime-local",className:f.S,value:s.start,onChange:a=>t({...s,start:a.target.value})})}),(0,b.jsx)(f.O,{id:"mw-len",label:"Lasts",error:u.durationMin,children:(0,b.jsx)("select",{id:"mw-len",className:f.S,value:s.durationMin,onChange:a=>t({...s,durationMin:a.target.value}),children:k.map(a=>{let c,d;return(0,b.jsx)("option",{value:String(a),children:[(c=Math.floor(a/60))?`${c} h`:"",(d=a%60)?`${d} min`:""].filter(Boolean).join(" ")},a)})})})]}),(0,b.jsx)(f.O,{id:"mw-note",label:"Note (optional)",help:"Shown on the public status page if a monitor there is affected.",children:(0,b.jsx)("input",{id:"mw-note",className:f.S,value:s.note,maxLength:120,placeholder:"Moving DNS to Cloudflare",autoComplete:"off",onChange:a=>t({...s,note:a.target.value})})})]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(f.K,{onClick:()=>y(!1),disabled:w,children:"Cancel"}),(0,b.jsx)(f.K,{type:"submit",variant:"primary",disabled:w,children:w?"Saving…":"add"===a.mode?"Add window":"Save"})]})]})]})]})}],320518)},723355,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(611619),e=a.i(188406),f=a.i(742680),g=a.i(405050);let h=(0,g.createServerReference)("40877c218b03049bfc5dc9d61d64670f65d1316a88",g.callServer,void 0,g.findSourceMapURL,"removeWindow");var i=a.i(320518);a.s(["MaintenanceMenu",0,function({win:a,options:g}){let[j,k]=(0,c.useState)(!1),[l,m]=(0,c.useState)(!1);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.RowMenu,{label:(0,f.J)(a.target,"window"),items:[{label:"Edit window",onSelect:()=>k(!0)},"---",{label:"Delete",danger:!0,onSelect:()=>m(!0)}]}),j&&(0,b.jsx)(i.MaintenanceDialog,{mode:"edit",win:a,options:g,open:!0,onOpenChange:k}),(0,b.jsx)(d.f,{open:l,onOpenChange:m,title:"Delete this maintenance window?",body:"Checks count toward uptime % and open alerts again outside any other window.",cta:"Delete",danger:!0,onConfirm:async()=>{let b=await h(a.id);return{ok:b.ok,message:(b.ok?b.message:b.error)??""}}})]})}],723355)},642823,855771,a=>{var b=a.i(187924),c=a.i(614548),d=a.i(572131),e=a.i(823292),f=a.i(619089),g=a.i(507504),h=a.i(814574),i=a.i(880305),j=a.i(310412),k=a.i(405050);let l=(0,k.createServerReference)("6090dd7dd3622766cda2d33490c36177fe10f07bbb",k.callServer,void 0,k.findSourceMapURL,"addHeartbeat"),m=(0,k.createServerReference)("605971b2a0651d57c21f9b8f5e84c1a382d5cc9674",k.callServer,void 0,k.findSourceMapURL,"addMonitor"),n=(0,k.createServerReference)("60c54ecbb1b142671c24d844324870f8ed35cceb64",k.callServer,void 0,k.findSourceMapURL,"editHeartbeat"),o=(0,k.createServerReference)("60f4e57c678c0bfe3b3d687ef85f6a1bd590942e36",k.callServer,void 0,k.findSourceMapURL,"editMonitor");var p=a.i(771378);function q(a){return null===a?{ok:!1,text:"Couldn't reach the console"}:a>=200&&a<300?{ok:!0,text:`OK \xb7 ${a}`}:404===a?{ok:!1,text:"Not found · 404"}:429===a?{ok:!1,text:"Too many pings · 429"}:{ok:!1,text:`Failed \xb7 ${a}`}}function r({name:a,url:i,onClose:j}){let k=null!==i,[l,m]=(0,d.useState)(!1),[n,o]=(0,d.useState)(null);async function s(){if(i)try{await navigator.clipboard.writeText(i),e.c.success("Copied.")}catch{e.c.error("Couldn't copy. Select the URL and copy it yourself.")}}async function t(a){let b,c=i?(b=/\/api\/ping\/(hb_[0-9a-f]{32})\/?$/.exec(i))?`/api/ping/${b[1]}${"fail"===a?"/fail":""}`:null:null;if(c&&!l){m(!0),o(null);try{let a=await fetch(c,{method:"GET",cache:"no-store"});o(q(a.status))}catch{o(q(null))}finally{m(!1)}}}function u(){o(null),j()}return(0,g.useHoldRefresh)(k),(0,b.jsx)(h.N,{open:k,onOpenChange:a=>{a||u()},children:(0,b.jsxs)(h.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsxs)(h.F,{className:"text-base",children:["Ping URL for ",(0,b.jsx)(p.Masked,{kind:"text",real:a})]}),(0,b.jsx)(h.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:"Copy it now. It is shown once; the console keeps only a hash. Lost it? Make a new one from the monitor's menu."})]})]}),(0,b.jsxs)("div",{className:"px-[18px] pt-2",children:[(0,b.jsxs)("div",{className:"mb-3 flex items-center gap-1.5",children:[(0,b.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]",children:i&&(0,b.jsx)(p.Masked,{kind:"text",real:i,masked:i.replace(/(\/api\/ping\/).*/,"$1••••••")})}),(0,b.jsx)(f.K,{size:"sm",onClick:s,children:"Copy"})]}),(0,b.jsxs)("div",{className:"mb-3.5 flex flex-wrap items-center gap-2",children:[(0,b.jsx)(f.K,{size:"sm",disabled:l,onClick:()=>t("ok"),children:"Send test ping"}),(0,b.jsx)(f.K,{size:"sm",disabled:l,onClick:()=>t("fail"),children:"Test fail"}),(0,b.jsx)("span",{role:"status","aria-live":"polite",className:`text-[13px] ${n?n.ok?"text-ok":"text-err":"text-ink-soft"}`,children:l?"Sending…":n?.text??""})]}),(0,b.jsxs)("div",{className:"mb-3.5 rounded-lg border border-line bg-surface-2 px-3 py-2.5 text-[13px]",children:[(0,b.jsx)("b",{className:"font-medium",children:"From your job"}),(0,b.jsxs)("ul",{className:"mt-1 list-disc pl-[18px] text-ink-soft",children:[(0,b.jsxs)("li",{children:["When it succeeds: ",(0,b.jsx)("span",{className:"font-mono",children:"curl -fsS -m 10 <url>"})]}),(0,b.jsxs)("li",{children:["When it fails: add ",(0,b.jsx)("span",{className:"font-mono",children:"/fail"})," to the URL"]}),(0,b.jsxs)("li",{children:["When it starts (optional): add ",(0,b.jsx)("span",{className:"font-mono",children:"/start"})]})]})]})]}),(0,b.jsx)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:(0,b.jsx)(f.K,{variant:"primary",onClick:u,children:"Done"})})]})})}a.s(["f",0,r],855771);let s={name:"",periodS:"86400",graceS:"3600"},t=[["http","HTTP check","The collector opens a URL every minute"],["heartbeat","Heartbeat","Your cron job or backup script pings a secret URL when it runs"]];function u(a){if("edit"===a.mode){let b=a.monitor;return{appId:"",kind:b.kind,url:"http"===b.kind?b.url:"",expectedStatus:String(b.expectedStatus),timeoutS:String(Math.round(b.timeoutMs/1e3)),bodyContains:b.bodyContains??"",jsonPath:b.jsonPath??"",jsonEquals:b.jsonEquals??"",name:b.name??"",periodS:String(b.periodS??s.periodS),graceS:String(b.graceS??s.graceS)}}let b=a.apps[0];return{appId:b?.id??"",kind:"http",url:b?`https://${b.domain}/api/health`:"",expectedStatus:"200",timeoutS:"5",bodyContains:"",jsonPath:"",jsonEquals:"",...s}}a.s(["MonitorDialog",0,function(a){let[k,p]=(0,d.useState)(!1),q="edit"===a.mode?a.open:k,[s,v]=(0,d.useState)(()=>u(a)),[w,x]=(0,d.useState)({}),[y,z]=(0,d.useTransition)(),[A,B]=(0,d.useState)(null);function C(b){b&&(v(u(a)),x({})),"edit"===a.mode?a.onOpenChange(b):p(b)}(0,g.useHoldRefresh)(q);let D="add"===a.mode?a.apps:[],E="add"===a.mode&&0===D.length,F="heartbeat"===s.kind,G="add"===a.mode?"HTTP checks run every minute from the collector. Heartbeats wait for your job to ping the console.":F?"Your job pings the console; nothing is fetched.":"Checked every minute from the collector.";return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(h.N,{open:q,onOpenChange:a=>{y||C(a)},children:["add"===a.mode&&(E?(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(f.K,{variant:"primary",disabled:!0,children:"Add monitor"}),(0,b.jsx)("span",{className:"text-[12.5px] text-ink-faint",children:"Watch an app first: Connections, then Sync."})]}):(0,b.jsx)(h.a,{render:(0,b.jsx)(f.K,{variant:"primary",children:"Add monitor"})})),(0,b.jsxs)(h.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:[(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:(0,b.jsx)(c.f,{size:19})}),(0,b.jsxs)("div",{children:[(0,b.jsx)(h.F,{className:"text-base",children:"add"===a.mode?"Add monitor":"Edit monitor"}),(0,b.jsx)(h.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:G})]})]}),(0,b.jsxs)("form",{onSubmit:b=>{let c,d;b.preventDefault(),(d=(c="heartbeat"===s.kind)?(0,j.a)(s):(0,j.X)(s)).ok?(x({}),z(async()=>{let b=c?"add"===a.mode?await l(s.appId,s):await n(a.monitor.id,s):"add"===a.mode?await m(s.appId,s):await o(a.monitor.id,s);if(!b.ok){x(b.fieldErrors??{}),e.c.error(b.error);return}e.c.success("add"===a.mode?"Monitor added":"Monitor saved",{description:b.message}),C(!1);let d=b.data&&"pingUrl"in b.data?b.data.pingUrl:null;d&&B({name:s.name.trim(),url:d})})):x(d.fieldErrors)},children:[(0,b.jsxs)("div",{className:"px-[18px] pt-2",children:["add"===a.mode&&(0,b.jsxs)("fieldset",{className:"mb-3.5",children:[(0,b.jsx)("legend",{className:"mb-[5px] text-[13px] font-medium",children:"Type"}),(0,b.jsx)("div",{className:"overflow-hidden rounded-lg border border-line",children:t.map(([a,c,d])=>(0,b.jsxs)("label",{className:"flex cursor-pointer items-start gap-2.5 border-t border-line px-3 py-[9px] first:border-t-0 hover:bg-hover",children:[(0,b.jsx)("input",{type:"radio",name:"mon-kind",value:a,checked:s.kind===a,className:"mt-[3px] accent-brand",onChange:()=>{v({...s,kind:a}),x({})}}),(0,b.jsxs)("span",{children:[c,(0,b.jsx)("small",{className:"block text-xs text-ink-faint",children:d})]})]},a))})]}),(0,b.jsx)(f.O,{id:"mon-app",label:"Application",children:"add"===a.mode?(0,b.jsx)("select",{id:"mon-app",className:f.S,value:s.appId,onChange:a=>{let b=D.find(b=>b.id===a.target.value);v({...s,appId:a.target.value,url:b?`https://${b.domain}/`:s.url})},children:D.map(a=>(0,b.jsx)("option",{value:a.id,children:a.name},a.id))}):(0,b.jsx)("input",{id:"mon-app",className:f.S,value:a.monitor.appName,disabled:!0})}),F?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(f.O,{id:"hb-name",label:"Name",error:w.name,children:(0,b.jsx)("input",{id:"hb-name",className:f.S,value:s.name,placeholder:"backup job",maxLength:80,autoComplete:"off",onChange:a=>v({...s,name:a.target.value})})}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,b.jsx)(f.O,{id:"hb-every",label:"Expected every",error:w.periodS,children:(0,b.jsx)("select",{id:"hb-every",className:f.S,value:s.periodS,onChange:a=>v({...s,periodS:a.target.value}),children:i.Q.map(a=>(0,b.jsx)("option",{value:String(a),children:(0,i.v)(a)},a))})}),(0,b.jsx)(f.O,{id:"hb-grace",label:"Grace time",error:w.graceS,children:(0,b.jsx)("select",{id:"hb-grace",className:f.S,value:s.graceS,onChange:a=>v({...s,graceS:a.target.value}),children:i.q.map(a=>(0,b.jsx)("option",{value:String(a),children:(0,i.v)(a)},a))})})]}),(0,b.jsxs)("p",{className:"mb-3 text-[13px] text-ink-soft",children:["Late once the period passes, down after the grace time too.","add"===a.mode?" The ping URL is shown once after you add it.":""]})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(f.O,{id:"mon-url",label:"URL",help:"Must start with https://. A health route that touches nothing heavy works best.",error:w.url,children:(0,b.jsx)("input",{id:"mon-url",className:f.S,value:s.url,autoComplete:"off",spellCheck:!1,onChange:a=>v({...s,url:a.target.value})})}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,b.jsx)(f.O,{id:"mon-code",label:"Expected status",error:w.expectedStatus,children:(0,b.jsx)("input",{id:"mon-code",className:f.S,inputMode:"numeric",value:s.expectedStatus,onChange:a=>v({...s,expectedStatus:a.target.value})})}),(0,b.jsx)(f.O,{id:"mon-timeout",label:"Timeout",error:w.timeoutS,children:(0,b.jsx)("select",{id:"mon-timeout",className:f.S,value:s.timeoutS,onChange:a=>v({...s,timeoutS:a.target.value}),children:j.L.map(a=>(0,b.jsxs)("option",{value:String(a),children:[a," s"]},a))})})]}),(0,b.jsx)(f.O,{id:"mon-match",label:"Response must contain (optional)",help:"Plain text, case-sensitive. The first 256 KB of the response is searched and never stored.",error:w.bodyContains,children:(0,b.jsx)("input",{id:"mon-match",className:f.S,value:s.bodyContains??"",placeholder:'e.g. "status":"ok"',autoComplete:"off",spellCheck:!1,onChange:a=>v({...s,bodyContains:a.target.value})})}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,b.jsx)(f.O,{id:"mon-jpath",label:"Or JSON field (optional)",error:w.jsonPath,children:(0,b.jsx)("input",{id:"mon-jpath",className:`${f.S} font-mono`,value:s.jsonPath??"",placeholder:"status or checks.db",autoComplete:"off",spellCheck:!1,onChange:a=>v({...s,jsonPath:a.target.value})})}),(0,b.jsx)(f.O,{id:"mon-jeq",label:"Equals",error:w.jsonEquals,children:(0,b.jsx)("input",{id:"mon-jeq",className:`${f.S} font-mono`,value:s.jsonEquals??"",placeholder:"ok",autoComplete:"off",spellCheck:!1,onChange:a=>v({...s,jsonEquals:a.target.value})})})]}),(0,b.jsx)("p",{className:"mb-3 text-[13px] text-ink-soft",children:"Marked down after 3 failed checks in a row. A missing keyword counts as a failed check."})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(f.K,{onClick:()=>C(!1),disabled:y,children:"Cancel"}),(0,b.jsx)(f.K,{type:"submit",variant:"primary",disabled:y,children:y?"Saving…":"add"===a.mode?"Add monitor":"Save"})]})]})]})]}),(0,b.jsx)(r,{name:A?.name??"",url:A?.url??null,onClose:()=>B(null)})]})}],642823)},788831,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(611619),f=a.i(188406),g=a.i(742680),h=a.i(405050);let i=(0,h.createServerReference)("40dd6fafc5198b09980d3a0e88e9b9edebc4d7d543",h.callServer,void 0,h.findSourceMapURL,"checkNow"),j=(0,h.createServerReference)("4070a969a060b0f4fcc38b0bb97d9d5cdab1d1ef1f",h.callServer,void 0,h.findSourceMapURL,"newPingUrl"),k=(0,h.createServerReference)("6057a46e4652b3111f7098d43961a5d6298b9f0e59",h.callServer,void 0,h.findSourceMapURL,"pauseMonitor"),l=(0,h.createServerReference)("607aefdf2a073db670929304dacef089e641788d09",h.callServer,void 0,h.findSourceMapURL,"recordTestPingAction"),m=(0,h.createServerReference)("400ee85a1301cc4928f4668897765e23553fa0a962",h.callServer,void 0,h.findSourceMapURL,"removeMonitor");var n=a.i(642823),o=a.i(855771);a.s(["MonitorMenu",0,function({monitor:a}){let[h,p]=(0,c.useState)(!1),[q,r]=(0,c.useState)(!1),[s,t]=(0,c.useState)(!1),[u,v]=(0,c.useState)(null),[,w]=(0,c.useTransition)(),x=(0,c.useRef)(!1),y="heartbeat"===a.kind,z=y?`${a.appName} \xb7 ${a.path}`:`${a.appName}${a.path}`,A=(a,b)=>{if(x.current)return;x.current=!0;let c=b?d.c.loading(b):void 0;w(async()=>{try{let b=await a();b.ok?b.data?.passed===!1?d.c.warning(b.message??"",{id:c}):d.c.success(b.message??"",{id:c}):d.c.error(b.error,{id:c})}catch{d.c.error("Something went wrong. Try again.",{id:c})}finally{x.current=!1}})},B={label:a.ownerPaused?"Resume":"Pause",onSelect:()=>A(()=>k(a.id,!a.ownerPaused))},C=y?{label:"Show ping URL",onSelect:()=>t(!0)}:{label:"Check now",onSelect:()=>A(()=>i(a.id),`Checking ${z}…`)};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(f.RowMenu,{label:(0,g.J)(a.appName,a.path),items:[C,...y?[{label:"Record a test ping: OK",onSelect:()=>A(()=>l(a.id,"ok"))},{label:"Record a test ping: Fail",onSelect:()=>A(()=>l(a.id,"fail"))}]:[],{label:"Edit monitor",onSelect:()=>p(!0)},B,"---",{label:"Delete",danger:!0,onSelect:()=>r(!0)}]}),h&&(0,b.jsx)(n.MonitorDialog,{mode:"edit",monitor:a,open:!0,onOpenChange:p}),(0,b.jsx)(e.f,{open:q,onOpenChange:r,title:`Delete ${z}?`,body:y?"Its ping URL stops working. This can't be undone.":"This can't be undone.",cta:"Delete",danger:!0,onConfirm:async()=>{let b=await m(a.id);return{ok:b.ok,message:(b.ok?b.message:b.error)??""}}}),y&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.f,{open:s,onOpenChange:t,title:`New ping URL for ${a.path}?`,body:"Make a new ping URL? The old one stops working, so update your job.",cta:"Make a new URL",onConfirm:async()=>{let b=await j(a.id);return b.ok&&b.data?.pingUrl&&v(b.data.pingUrl),{ok:b.ok,message:(b.ok?b.message:b.error)??""}}}),(0,b.jsx)(o.f,{name:a.path,url:u,onClose:()=>v(null)})]})]})}],788831)}]})();
2
2
 
3
3
  //# sourceMappingURL=src_app_%28console%29_uptime_1mnnkfi-2zv-k._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[429852,a=>{"use strict";var b=a.i(137936),c=a.i(600079),d=a.i(109307),e=a.i(322145),f=a.i(915598),g=a.i(683439),h=a.i(75105),i=a.i(572134),j=a.i(657582),k=a.i(713095);let l={requireActionMember:d.g};async function m(a,b){return(0,c.F)("operator",async c=>(0,g.f)(a)&&"string"==typeof b&&f.T.test(b)?(0,f.B)(c,a,b):{ok:!1,error:h.w},l)}async function n(a,b){return(0,c.F)("operator",async c=>(0,g.f)(a)&&"string"==typeof b&&f.T.test(b)?(0,f.U)(c,a,b):{ok:!1,error:h.w},l)}async function o(a,b){return(0,c.F)("operator",async c=>{if(!(0,g.f)(a)||"string"!=typeof b||!f.T.test(b))return{ok:!1,error:h.w};let d=await (0,f.p)(c,"promote",a);if("string"==typeof d)return(0,e.W)((0,f.O)(d),c,"");let k=await (0,f.X)(d);if(!k.ok)return(0,e.W)((0,f.O)(k.error),c,d.t.account.id);if(k.data.currentId===b)return(0,e.W)((0,f.O)(f.f),c,d.t.account.id);let l=k.data.production.find(a=>a.id===b);if(!l||"staged"!==(0,j.U)(l,k.data.currentId,k.data.production))return(0,e.W)((0,f.O)(f.u),c,d.t.account.id);let m=(0,f.C)(l,b),n=await (0,i.u)(d.t.token,d.teamId,d.projectId,b);return(0,f.J)(d,n,{message:`Promoted ${m}. New pushes to ${d.app} go live again.`,audit:`Promoted \xb7 ${d.app} → ${m}`},`Promote failed \xb7 ${d.app} → ${m}`)},l)}async function p(a,b){return(0,c.F)("operator",async c=>{if(!(0,g.f)(a)||"string"!=typeof b||!f.T.test(b))return{ok:!1,error:h.w};let d=await (0,f.p)(c,"cancel",a);if("string"==typeof d)return(0,e.W)((0,f.O)(d),c,"");let j=await (0,i.S)(d.t.token,{id:d.teamId,slug:d.teamSlug,name:d.teamSlug},b);if(!j.ok)return(0,e.W)((0,f.O)(404===j.status?"Vercel can't find that build any more.":j.error),c,d.t.account.id);if(j.data.projectId!==d.projectId)return(0,e.W)((0,f.O)(h.w),c,d.t.account.id);if(!f.o.has(j.data.rawState))return(0,e.W)((0,f.O)("This build already finished."),c,d.t.account.id);let k=(0,f.C)(j.data,b),l=await (0,i.T)(d.t.token,d.teamId,b);return(0,f.J)(d,l,{message:"Build canceled. The current production deployment stays live.",audit:`Build canceled \xb7 ${d.app} \xb7 ${k}`},`Cancel failed \xb7 ${d.app} \xb7 ${k}`)},l)}async function q(a,b){return(0,c.F)("operator",async c=>{if(!(0,g.f)(a)||"string"!=typeof b||!f.T.test(b))return{ok:!1,error:h.w};let d=await (0,f.p)(c,"promote-preview",a);if("string"==typeof d)return(0,e.W)((0,f.O)(d),c,"");let k=await (0,i.S)(d.t.token,{id:d.teamId,slug:d.teamSlug,name:d.teamSlug},b);if(!k.ok)return(0,e.W)((0,f.O)(404===k.status?f.G:k.error),c,d.t.account.id);if(k.data.projectId!==d.projectId)return(0,e.W)((0,f.O)(h.w),c,d.t.account.id);if("preview"!==k.data.target||"READY"!==k.data.rawState)return(0,e.W)((0,f.O)(f.l),c,d.t.account.id);let l=await (0,f.X)(d);if(!l.ok)return(0,e.W)((0,f.O)(l.error),c,d.t.account.id);if(l.data.production.some(a=>"staged"===(0,j.U)(a,l.data.currentId,l.data.production)))return(0,e.W)((0,f.O)(f.S),c,d.t.account.id);let m=await (0,i.N)(d.t.token,d.teamId,d.projectId);if(!m.ok)return(0,e.W)((0,f.O)(m.error),c,d.t.account.id);if(m.data)return(0,e.W)((0,f.O)(`A production build of ${d.app} is already running.`),c,d.t.account.id);let n=(0,f.C)(k.data,b),o=await (0,i.l)(d.t.token,d.teamId,{projectId:d.projectId,name:l.data.name,deploymentId:b});return(0,f.J)(d,o,{message:`Promoting ${n} to production. Vercel is building ${d.app} with the production environment variables; it goes live when the build is ready.`,audit:`Preview promoted \xb7 ${d.app} \xb7 ${n}`},`Preview promote failed \xb7 ${d.app} \xb7 ${n}`)},l)}(0,k.ensureServerEntryExports)([m,n,o,p,q]),(0,b.registerServerReference)(m,"607ba5e62444be676f64d720074d884a9afa6ed7e3",null),(0,b.registerServerReference)(n,"60e653b49ada64c82143095960364cd8a311c5ac3d",null),(0,b.registerServerReference)(o,"60190bc2454975374ef46c785042fef3fdb03fcd26",null),(0,b.registerServerReference)(p,"60f88edbe9d04d343610a9eb3971c358e8934267c2",null),(0,b.registerServerReference)(q,"60900dc807cd048f30b0552898a2052a24b44d55a3",null),a.s(["x",0,p,"j",0,o,"Y",0,q,"t",0,m,"d",0,n])}];
1
+ module.exports=[429852,a=>{"use strict";var b=a.i(137936),c=a.i(600079),d=a.i(109307),e=a.i(858806),f=a.i(322145),g=a.i(915598),h=a.i(683439),i=a.i(75105),j=a.i(572134),k=a.i(288666);let l={truncated:!1,lines:[{at:null,kind:"delimiter",text:"Running build in Washington, D.C., USA (East) – iad1"},{at:null,kind:"stdout",text:"Cloning github.com/example/shop (Branch: main, Commit: 4f2a9c1)"},{at:null,kind:"command",text:"npm install"},{at:null,kind:"stdout",text:"added 412 packages in 18s"},{at:null,kind:"command",text:"npm run build"},{at:null,kind:"stdout",text:"> next build"},{at:null,kind:"stdout",text:" ▲ Next.js 16.4.1"},{at:null,kind:"stdout",text:" Creating an optimized production build ..."},{at:null,kind:"stderr",text:"Failed to compile."},{at:null,kind:"stderr",text:"./app/checkout/page.tsx:12:7"},{at:null,kind:"stderr",text:"Type error: Property 'total' does not exist on type 'Cart'."},{at:null,kind:"stderr",text:'Error: Command "npm run build" exited with 1'}]},m=["stdout","stderr","command","delimiter"],n=/\u001b\[[0-9;?]*[A-Za-z]/g,o=a=>a&&"object"==typeof a&&!Array.isArray(a)?a:null;async function p(a,b,c,d={}){let e=new URLSearchParams({teamId:b,builds:"1",direction:"backward",limit:String(2e3)}),f=await (0,k.R)("Vercel",`https://api.vercel.com/v3/deployments/${encodeURIComponent(c)}/events?${e}`,{token:a},{timeoutMs:1e4,...d});if(!f.ok)return f;let g=function(a){if(!Array.isArray(a))return null;let b=[];for(let c of a){let a=o(c);if(!a||!m.includes(a.type))continue;let d=o(a.payload),e="string"==typeof d?.text?d.text:"string"==typeof a.text?a.text:null;if(null===e)continue;let f="number"==typeof a.created?a.created:"number"==typeof d?.date?d.date:null,g=e.replace(n,"").replace(/\r/g,"").split("\n");for(let c of(g.length>1&&""===g.at(-1)&&g.pop(),g))b.push({at:f,kind:a.type,text:c})}return b}(f.data);if(!g||!Array.isArray(f.data))return(0,k.t)("Vercel","the build log");let h=function(a,b=2e3){return a.length>b?{lines:a.slice(a.length-b),truncated:!0}:{lines:a,truncated:!1}}(g.every(a=>null!==a.at)?g.map((a,b)=>({l:a,i:b})).sort((a,b)=>a.l.at-b.l.at||a.i-b.i).map(a=>a.l):[...g].reverse());return{ok:!0,data:{lines:h.lines,truncated:h.truncated||f.data.length>=2e3}}}var q=a.i(657582),r=a.i(713095);let s={requireActionMember:d.g};async function t(a,b){return(0,c.F)("operator",async c=>(0,h.f)(a)&&"string"==typeof b&&g.T.test(b)?(0,g.B)(c,a,b):{ok:!1,error:i.w},s)}async function u(a){return(0,c.F)("operator",async b=>{if(!(0,h.f)(a))return{ok:!1,error:i.w};let c=await (0,e.R)(a);return c?(0,g.B)(b,a,c):{ok:!1,error:"No current production deployment"}},s)}async function v(a,b){return(0,c.F)("operator",async()=>{if(!(0,h.f)(a)||"string"!=typeof b||!g.T.test(b)||!await (0,e.C)(a,b))return{ok:!1,error:i.w};let c=await (0,f.p)(a,"app"),d=c?.resource.meta.teamId;if(!c||"string"!=typeof d||!d)return{ok:!1,error:g.u};let j=await p(c.token,d,b);return j.ok?{ok:!0,data:j.data}:{ok:!1,error:`Couldn't read the build log: ${j.error}`}},s,async()=>({ok:!0,data:l}))}async function w(a,b){return(0,c.F)("operator",async c=>(0,h.f)(a)&&"string"==typeof b&&g.T.test(b)?(0,g.U)(c,a,b):{ok:!1,error:i.w},s)}async function x(a,b){return(0,c.F)("operator",async c=>{if(!(0,h.f)(a)||"string"!=typeof b||!g.T.test(b))return{ok:!1,error:i.w};let d=await (0,g.p)(c,"promote",a);if("string"==typeof d)return(0,f.W)((0,g.O)(d),c,"");let e=await (0,g.X)(d);if(!e.ok)return(0,f.W)((0,g.O)(e.error),c,d.t.account.id);if(e.data.currentId===b)return(0,f.W)((0,g.O)(g.f),c,d.t.account.id);let k=e.data.production.find(a=>a.id===b);if(!k||"staged"!==(0,q.U)(k,e.data.currentId,e.data.production))return(0,f.W)((0,g.O)(g.v),c,d.t.account.id);let l=(0,g.C)(k,b),m=await (0,j.u)(d.t.token,d.teamId,d.projectId,b);return(0,g.J)(d,m,{message:`Promoted ${l}. New pushes to ${d.app} go live again.`,audit:`Promoted \xb7 ${d.app} → ${l}`},`Promote failed \xb7 ${d.app} → ${l}`)},s)}async function y(a,b){return(0,c.F)("operator",async c=>{if(!(0,h.f)(a)||"string"!=typeof b||!g.T.test(b))return{ok:!1,error:i.w};let d=await (0,g.p)(c,"cancel",a);if("string"==typeof d)return(0,f.W)((0,g.O)(d),c,"");let e=await (0,j.S)(d.t.token,{id:d.teamId,slug:d.teamSlug,name:d.teamSlug},b);if(!e.ok)return(0,f.W)((0,g.O)(404===e.status?"Vercel can't find that build any more.":e.error),c,d.t.account.id);if(e.data.projectId!==d.projectId)return(0,f.W)((0,g.O)(i.w),c,d.t.account.id);if(!g.o.has(e.data.rawState))return(0,f.W)((0,g.O)("This build already finished."),c,d.t.account.id);let k=(0,g.C)(e.data,b),l=await (0,j.T)(d.t.token,d.teamId,b);return(0,g.J)(d,l,{message:"Build canceled. The current production deployment stays live.",audit:`Build canceled \xb7 ${d.app} \xb7 ${k}`},`Cancel failed \xb7 ${d.app} \xb7 ${k}`)},s)}async function z(a,b){return(0,c.F)("operator",async c=>{if(!(0,h.f)(a)||"string"!=typeof b||!g.T.test(b))return{ok:!1,error:i.w};let d=await (0,g.p)(c,"promote-preview",a);if("string"==typeof d)return(0,f.W)((0,g.O)(d),c,"");let e=await (0,j.S)(d.t.token,{id:d.teamId,slug:d.teamSlug,name:d.teamSlug},b);if(!e.ok)return(0,f.W)((0,g.O)(404===e.status?g.G:e.error),c,d.t.account.id);if(e.data.projectId!==d.projectId)return(0,f.W)((0,g.O)(i.w),c,d.t.account.id);if("preview"!==e.data.target||"READY"!==e.data.rawState)return(0,f.W)((0,g.O)(g.l),c,d.t.account.id);let k=await (0,g.X)(d);if(!k.ok)return(0,f.W)((0,g.O)(k.error),c,d.t.account.id);if(k.data.production.some(a=>"staged"===(0,q.U)(a,k.data.currentId,k.data.production)))return(0,f.W)((0,g.O)(g.S),c,d.t.account.id);let l=await (0,j.N)(d.t.token,d.teamId,d.projectId);if(!l.ok)return(0,f.W)((0,g.O)(l.error),c,d.t.account.id);if(l.data)return(0,f.W)((0,g.O)(`A production build of ${d.app} is already running.`),c,d.t.account.id);let m=(0,g.C)(e.data,b),n=await (0,j.l)(d.t.token,d.teamId,{projectId:d.projectId,name:k.data.name,deploymentId:b});return(0,g.J)(d,n,{message:`Promoting ${m} to production. Vercel is building ${d.app} with the production environment variables; it goes live when the build is ready.`,audit:`Preview promoted \xb7 ${d.app} \xb7 ${m}`},`Preview promote failed \xb7 ${d.app} \xb7 ${m}`)},s)}(0,r.ensureServerEntryExports)([t,u,v,w,x,y,z]),(0,b.registerServerReference)(t,"602cb079aa790e16ea19167eba40830d6c08c0b1fd",null),(0,b.registerServerReference)(u,"4099037ab6341405c4e2a0854bfc31c1767a9e5081",null),(0,b.registerServerReference)(v,"60252179b2cdeae52a032ad3a892e77538b0e1b841",null),(0,b.registerServerReference)(w,"60533fb4e5182651671fbfa30df5880c0731f9e75c",null),(0,b.registerServerReference)(x,"60865708d5a5bc688c74b6e4cf4b65321b87491175",null),(0,b.registerServerReference)(y,"608b682929d1b66dc8ec085312646ab3768493bd3e",null),(0,b.registerServerReference)(z,"603c4306edfc8590aea062360360e6644e0ccb004c",null),a.s(["m",0,v,"x",0,y,"j",0,x,"Y",0,z,"t",0,t,"n",0,u,"d",0,w],429852)}];
2
2
 
3
3
  //# sourceMappingURL=src_app_%28console%29_vercel-actions_ts_0wpk1yo9v632d._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[172927,a=>{"use strict";var b=a.i(907997);let c=(0,a.i(377269).f)("outline","check","Check",[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]]);var d=a.i(93321),e=a.i(395936),f=a.i(548734),g=a.i(837137),h=a.i(803681),i=a.i(75148),j=a.i(109307),k=a.i(462820),l=a.i(801168),m=a.i(532380),n=a.i(556987);function o({n:a,title:d,body:e,done:f,children:g}){return(0,b.jsxs)("div",{className:"flex items-start gap-3.5 border-t border-line px-[18px] py-3.5 first:border-t-0",children:[(0,b.jsx)("span",{className:`grid size-[26px] shrink-0 place-items-center rounded-full border font-mono text-xs font-medium ${f?"border-transparent bg-ok-soft text-ok":"border-line-strong"}`,children:f?(0,b.jsx)(c,{size:14,"aria-label":"Done"}):a}),(0,b.jsxs)("div",{className:"flex-1",children:[(0,b.jsx)("h3",{className:"text-sm",children:d}),(0,b.jsx)("p",{className:"mb-2 mt-0.5 text-[13px] text-ink-soft",children:e}),(0,b.jsx)("div",{className:"flex flex-wrap gap-2",children:g})]})]})}async function p(){let a=await (0,j.B)("owner");if(!a.ok)return(0,b.jsx)(i.f,{role:a.member.role});let[c,p,q]=await Promise.all([(0,f.f)().select({p:g.accounts.provider}).from(g.accounts),(0,f.f)().select({id:g.accounts.id,label:g.accounts.label,watchNew:g.accounts.watchNew}).from(g.accounts).where((0,d.u)(g.accounts.provider,"vercel")).limit(1),(0,f.f)().select({id:g.resources.id}).from(g.resources).where((0,d.u)(g.resources.monitored,!0)).limit(1)]),r=new Set(c.map(a=>a.p)),s=p[0],t=q.length>0,u=k.s.alertsStep;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(h.L,{crumbs:[{label:"Home"},{label:"Welcome"}],title:"Welcome to Watchbell",sub:"Nothing is connected yet. These steps take about 10 minutes."}),(0,b.jsxs)("div",{className:"grid gap-4 min-[1001px]:grid-cols-[minmax(0,1.6fr)_minmax(0,1fr)]",children:[(0,b.jsxs)("section",{className:"rounded-lg border border-line bg-surface",children:[(0,b.jsx)(o,{n:1,title:"Connect Vercel",body:"Paste an access token. The console lists your projects but watches nothing until you choose.",done:r.has("vercel"),children:r.has("vercel")?(0,b.jsx)(e.default,{href:"/connections?provider=vercel",children:"View connection"}):(0,b.jsx)(l.AccountDialog,{provider:"vercel",triggerLabel:"Connect Vercel",primary:!0})}),(0,b.jsx)(o,{n:2,title:"Pick the apps to watch",body:"Run Sync and tick the projects you care about. Each gets an uptime check every minute.",done:t,children:s?(0,b.jsx)(m.SyncButton,{accountId:s.id,title:`Vercel \xb7 ${(0,n.G)(s.label)}`,label:"Sync Vercel",primary:!0,watchNew:s.watchNew}):(0,b.jsx)("span",{className:"text-[12.5px] text-ink-faint",children:"Connect Vercel first"})}),(0,b.jsxs)(o,{n:3,title:"Add your databases",body:"Connect one or more accounts per provider. Status is read from their APIs, so your databases aren't woken up.",done:["supabase","neon","firebase"].some(a=>r.has(a)),children:[(0,b.jsx)(l.AccountDialog,{provider:"supabase",triggerLabel:"Supabase"}),(0,b.jsx)(l.AccountDialog,{provider:"neon",triggerLabel:"Neon"}),(0,b.jsx)(l.AccountDialog,{provider:"firebase",triggerLabel:"Firebase"})]}),(0,b.jsx)(o,{n:4,title:"Add your domains (optional)",body:"Connect Cloudflare to see DNS, certificates, and when domains expire.",done:r.has("cloudflare"),children:(0,b.jsx)(l.AccountDialog,{provider:"cloudflare",triggerLabel:"Connect Cloudflare"})}),(0,b.jsx)(o,{n:5,title:"Get alerts",body:"Connect a Telegram bot so you hear about problems right away.",children:u.href?(0,b.jsx)(e.default,{href:u.href,className:(0,h.R)({size:"sm"}),children:u.text}):(0,b.jsx)("span",{className:"text-[12.5px] text-ink-faint",children:u.text})}),(0,b.jsx)(o,{n:6,title:"Back up to Google Drive (optional)",body:"A summary of each month is saved to your Drive. The last 3 months are kept.",done:r.has("drive"),children:(0,b.jsx)(e.default,{href:"/backups",className:(0,h.R)({size:"sm"}),children:r.has("drive")?"Open backups":"Set up backups"})})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)(h.N,{title:"What it costs",children:[(0,b.jsx)("span",{className:"text-[26px] font-semibold tracking-tight",children:k.s.amount}),(0,b.jsx)("p",{className:"mb-2.5 mt-1 text-[12.5px] text-ink-soft",children:k.s.note}),k.s.free.map(([a,c])=>(0,b.jsxs)("div",{className:"flex items-center gap-2 border-b border-line py-2 last:border-b-0",children:[(0,b.jsx)("span",{children:a}),(0,b.jsx)("span",{className:"ml-auto text-[13px] text-ink-soft",children:c})]},a))]}),(0,b.jsxs)(h.N,{title:"Not ready yet?",children:[(0,b.jsx)("p",{className:"text-[13px] text-ink-soft",children:"You can come back to this page any time from Home. The rest of the console fills in as you connect accounts."}),(0,b.jsx)(e.default,{href:"/connections",className:`${(0,h.R)({size:"sm"})} mt-2`,children:"Open connections"})]})]})]})]})}a.s(["default",0,p],172927)},217990,function(a){a.n(a.i(172927))}];
1
+ module.exports=[172927,a=>{"use strict";var b=a.i(907997);let c=(0,a.i(377269).f)("outline","check","Check",[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]]);var d=a.i(93321),e=a.i(395936),f=a.i(548734),g=a.i(837137),h=a.i(803681),i=a.i(75148),j=a.i(109307),k=a.i(462820),l=a.i(801168),m=a.i(532380),n=a.i(556987);function o({n:a,title:d,body:e,done:f,children:g}){return(0,b.jsxs)("div",{className:"flex items-start gap-3.5 border-t border-line px-[18px] py-3.5 first:border-t-0",children:[(0,b.jsx)("span",{className:`grid size-[26px] shrink-0 place-items-center rounded-full border font-mono text-xs font-medium ${f?"border-transparent bg-ok-soft text-ok":"border-line-strong"}`,children:f?(0,b.jsx)(c,{size:14,"aria-label":"Done"}):a}),(0,b.jsxs)("div",{className:"flex-1",children:[(0,b.jsx)("h3",{className:"text-sm",children:d}),(0,b.jsx)("p",{className:"mb-2 mt-0.5 text-[13px] text-ink-soft",children:e}),(0,b.jsx)("div",{className:"flex flex-wrap gap-2",children:g})]})]})}async function p(){let a=await (0,j.B)("owner");if(!a.ok)return(0,b.jsx)(i.f,{role:a.member.role});let[c,p,q]=await Promise.all([(0,f.f)().select({p:g.accounts.provider}).from(g.accounts),(0,f.f)().select({id:g.accounts.id,label:g.accounts.label,watchNew:g.accounts.watchNew}).from(g.accounts).where((0,d.u)(g.accounts.provider,"vercel")).limit(1),(0,f.f)().select({id:g.resources.id}).from(g.resources).where((0,d.u)(g.resources.monitored,!0)).limit(1)]),r=new Set(c.map(a=>a.p)),s=p[0],t=q.length>0,u=k.s.alertsStep;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(h.L,{crumbs:[{label:"Home"},{label:"Welcome"}],title:"Welcome to Watchbell",sub:"Nothing is connected yet. These steps take about 10 minutes."}),(0,b.jsxs)("div",{className:"grid gap-4 min-[1001px]:grid-cols-[minmax(0,1.6fr)_minmax(0,1fr)]",children:[(0,b.jsxs)("section",{className:"rounded-lg border border-line bg-surface",children:[(0,b.jsx)(o,{n:1,title:"Connect Vercel",body:"Paste an access token. The console lists your projects but watches nothing until you choose.",done:r.has("vercel"),children:r.has("vercel")?(0,b.jsx)(e.default,{href:"/connections?provider=vercel",children:"View connection"}):(0,b.jsx)(l.AccountDialog,{provider:"vercel",triggerLabel:"Connect Vercel",primary:!0})}),(0,b.jsx)(o,{n:2,title:"Pick the apps to watch",body:"Run Sync and tick the projects you care about. Each gets an uptime check every minute.",done:t,children:s?(0,b.jsx)(m.SyncButton,{accountId:s.id,title:`Vercel \xb7 ${(0,n.G)(s.label)}`,label:"Sync Vercel",primary:!0,watchNew:s.watchNew}):(0,b.jsx)("span",{className:"text-[12.5px] text-ink-faint",children:"Connect Vercel first"})}),(0,b.jsxs)(o,{n:3,title:"Add your databases",body:"Connect one or more accounts per provider. Status is read from their APIs, so your databases aren't woken up.",done:["supabase","neon","firebase"].some(a=>r.has(a)),children:[(0,b.jsx)(l.AccountDialog,{provider:"supabase",triggerLabel:"Supabase"}),(0,b.jsx)(l.AccountDialog,{provider:"neon",triggerLabel:"Neon"}),(0,b.jsx)(l.AccountDialog,{provider:"firebase",triggerLabel:"Firebase"})]}),(0,b.jsx)(o,{n:4,title:"Add your domains (optional)",body:"Connect Cloudflare to see DNS, certificates, and when domains expire.",done:r.has("cloudflare"),children:(0,b.jsx)(l.AccountDialog,{provider:"cloudflare",triggerLabel:"Connect Cloudflare"})}),(0,b.jsx)(o,{n:5,title:"Get alerts",body:"Connect a Telegram bot so you hear about problems right away.",children:u.href?(0,b.jsx)(e.default,{href:u.href,className:(0,h.R)({size:"sm"}),children:u.text}):(0,b.jsx)("span",{className:"text-[12.5px] text-ink-faint",children:u.text})}),(0,b.jsx)(o,{n:6,title:"Back up to Google Drive (optional)",body:"A summary of each month is saved to your Drive. The last 3 months are kept.",done:r.has("drive"),children:(0,b.jsx)(e.default,{href:"/backups",className:(0,h.R)({size:"sm"}),children:r.has("drive")?"Open backups":"Set up backups"})})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)(h.N,{title:"What it costs",children:[(0,b.jsx)("span",{className:"text-[26px] font-semibold tracking-tight",children:k.s.amount}),(0,b.jsx)("p",{className:"mb-2.5 mt-1 text-[12.5px] text-ink-soft",children:k.s.note}),k.s.free.map(([a,c])=>(0,b.jsxs)("div",{className:"flex items-center gap-2 border-b border-line py-2 last:border-b-0",children:[(0,b.jsx)("span",{children:a}),(0,b.jsx)("span",{className:"ml-auto text-[13px] text-ink-soft",children:c})]},a))]}),(0,b.jsxs)(h.N,{title:"Not ready yet?",children:[(0,b.jsx)("p",{className:"text-[13px] text-ink-soft",children:"You can do all of this later on Connections. Until your first account is connected, Watchbell opens on this page."}),(0,b.jsx)(e.default,{href:"/connections",className:`${(0,h.R)({size:"sm"})} mt-2`,children:"Open connections"})]})]})]})]})}a.s(["default",0,p],172927)},217990,function(a){a.n(a.i(172927))}];
2
2
 
3
3
  //# sourceMappingURL=src_app_%28console%29_welcome_page_tsx_1bw0x0riq-oem._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[892193,a=>{"use strict";var b=a.i(907997);a.i(570396);var c=a.i(673727),d=a.i(903769),e=a.i(803681),f=a.i(109307),g=a.i(245710),h=a.i(108356);let i={owner:["Everything, including connections, users, and settings"],operator:["See every app, database, domain, and alert","Redeploy, restore, wake, and silence alerts","Not change connections, users, or settings"],viewer:["See every app, database, domain, and alert","No logs and no actions"]};async function j(){let a=await (0,f.x)();a||(0,c.redirect)("/signin");let j=await (0,f.M)(a.email),k=j?j.role[0].toUpperCase()+j.role.slice(1):"";return(0,b.jsx)("main",{className:"grid min-h-screen place-items-center px-4 py-6",children:(0,b.jsxs)("div",{className:"w-[400px] max-w-full rounded-xl border border-line bg-surface p-7",children:[(0,b.jsx)("span",{className:"mb-[18px] grid size-7 place-items-center rounded-[7px] bg-brand font-mono text-xs font-semibold text-on-brand",children:"WB"}),j?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h1",{className:"mb-1 text-xl",children:"You're invited"}),(0,b.jsxs)("p",{className:"mb-[18px] text-ink-soft",children:[(0,b.jsx)("b",{className:"font-medium text-ink",children:a.email})," was invited to Watchbell as ","operator"===j.role?"an":"a"," ",k,"."]}),(0,b.jsxs)("div",{className:"mb-3.5 rounded-lg border border-line bg-surface-2 px-3 py-2.5 text-[13px]",children:[(0,b.jsxs)("b",{className:"font-medium",children:[k,"s can"]}),(0,b.jsx)("ul",{className:"mt-1 list-disc pl-[18px] text-ink-soft",children:i[j.role].map(a=>(0,b.jsx)("li",{children:a},a))})]}),(0,b.jsx)("form",{action:h.f,children:(0,b.jsx)(e.K,{type:"submit",variant:"primary",className:"w-full justify-center",children:"Accept invite"})}),(0,b.jsxs)("p",{className:"mt-3.5 text-[12.5px] text-ink-faint",children:["This invite works until ",(0,g.L)(j.expiresAt),". Not you? Sign out."]})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h1",{className:"mb-1 text-xl",children:"This invite isn't valid anymore"}),(0,b.jsx)("p",{className:"mb-[18px] text-ink-soft",children:"It expired or was withdrawn. Ask an owner for a new one."})]}),(0,b.jsx)("form",{action:d.f,className:"mt-2",children:(0,b.jsx)(e.K,{type:"submit",variant:"ghost",size:"sm",children:"Sign out"})})]})})}a.s(["default",0,j])},318144,function(a){a.n(a.i(892193))}];
1
+ module.exports=[892193,a=>{"use strict";var b=a.i(907997),c=a.i(568119);a.i(570396);var d=a.i(673727),e=a.i(903769),f=a.i(803681),g=a.i(109307),h=a.i(245710),i=a.i(108356);let j={owner:["Everything, including connections, users, and settings"],operator:["See every app, database, domain, and alert","Redeploy, restore, wake, and silence alerts","Not change connections, users, or settings"],viewer:["See every app, database, domain, and alert","No logs and no actions"]};async function k(){let a=await (0,g.x)();a||(0,d.redirect)("/signin");let k=await (0,g.M)(a.email),l=k?k.role[0].toUpperCase()+k.role.slice(1):"";return(0,b.jsx)("main",{className:"grid min-h-screen place-items-center px-4 py-6",children:(0,b.jsxs)("div",{className:"w-[400px] max-w-full rounded-xl border border-line bg-surface p-7",children:[(0,b.jsx)(c.f,{className:"mb-[18px]"}),k?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h1",{className:"mb-1 text-xl",children:"You're invited"}),(0,b.jsxs)("p",{className:"mb-[18px] text-ink-soft",children:[(0,b.jsx)("b",{className:"font-medium text-ink",children:a.email})," was invited to Watchbell as ","operator"===k.role?"an":"a"," ",l,"."]}),(0,b.jsxs)("div",{className:"mb-3.5 rounded-lg border border-line bg-surface-2 px-3 py-2.5 text-[13px]",children:[(0,b.jsxs)("b",{className:"font-medium",children:[l,"s can"]}),(0,b.jsx)("ul",{className:"mt-1 list-disc pl-[18px] text-ink-soft",children:j[k.role].map(a=>(0,b.jsx)("li",{children:a},a))})]}),(0,b.jsx)("form",{action:i.f,children:(0,b.jsx)(f.K,{type:"submit",variant:"primary",className:"w-full justify-center",children:"Accept invite"})}),(0,b.jsxs)("p",{className:"mt-3.5 text-[12.5px] text-ink-faint",children:["This invite works until ",(0,h.L)(k.expiresAt),". Not you? Sign out."]})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h1",{className:"mb-1 text-xl",children:"This invite isn't valid anymore"}),(0,b.jsx)("p",{className:"mb-[18px] text-ink-soft",children:"It expired or was withdrawn. Ask an owner for a new one."})]}),(0,b.jsx)("form",{action:e.f,className:"mt-2",children:(0,b.jsx)(f.K,{type:"submit",variant:"ghost",size:"sm",children:"Sign out"})})]})})}a.s(["default",0,k])},318144,function(a){a.n(a.i(892193))}];
2
2
 
3
3
  //# sourceMappingURL=src_app_invite_page_tsx_0mny3a23n5hs9._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[829254,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(619089),e=a.i(405050);let f=(0,e.createServerReference)("60e12697d15b44e4b4f5be922e8e76e83290c61211",e.callServer,void 0,e.findSourceMapURL,"confirmMfaEnrollment"),g=(0,e.createServerReference)("00175ac092bca1ea5ebe99a3ef03530487d206d449",e.callServer,void 0,e.findSourceMapURL,"startMfaEnrollment");var h=a.i(756540);a.s(["SetupFlow",0,function(){let[a,e]=(0,c.useState)(null),[i,j]=(0,c.useTransition)(),[k,l,m]=(0,c.useActionState)(f,{status:"idle"});(0,h.f)(k);let n="done"===k.status;return a&&a.ok?(0,b.jsxs)("form",{action:l,children:[(0,b.jsxs)("ol",{className:"mb-3 list-decimal pl-5 text-[13px] text-ink-soft",children:[(0,b.jsx)("li",{children:"Scan this QR code with your authenticator app."}),(0,b.jsx)("li",{children:"Type the 6-digit code it shows."})]}),(0,b.jsx)("img",{src:a.qr,alt:"QR code for your authenticator app",className:"mx-auto mb-3 size-44 rounded-lg bg-white p-2"}),(0,b.jsxs)("p",{className:"mb-3 text-center text-[12.5px] text-ink-soft",children:["Can't scan? Enter this key: ",(0,b.jsx)("code",{className:"font-mono break-all text-ink",children:a.secret})]}),(0,b.jsx)("input",{type:"hidden",name:"factorId",value:a.factorId}),(0,b.jsx)(d.O,{id:"code",label:"Code",error:"error"===k.status?k.message:void 0,children:(0,b.jsx)("input",{id:"code",name:"code",inputMode:"numeric",autoComplete:"one-time-code",pattern:"[0-9 ]{6,7}",maxLength:7,required:!0,className:`${d.S} font-mono tracking-widest`,placeholder:"123456"})}),(0,b.jsx)(d.K,{type:"submit",variant:"primary",className:"w-full justify-center",disabled:m||n,children:n?"Opening the console…":m?"Checking…":"Turn on"})]}):(0,b.jsxs)(b.Fragment,{children:[a&&!a.ok&&(0,b.jsx)("div",{className:"mb-3",children:(0,b.jsx)(d.M,{tone:"danger",title:a.error})}),(0,b.jsx)(d.K,{variant:"primary",className:"w-full justify-center",disabled:i,onClick:()=>j(async()=>e(await g())),children:i?"Preparing…":"Set up authenticator"})]})}],829254)}];
1
+ module.exports=[829254,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(619089),e=a.i(405050);let f=(0,e.createServerReference)("60097e5843fd036fa8c58aa8a39bc38da519804ffc",e.callServer,void 0,e.findSourceMapURL,"confirmMfaEnrollment"),g=(0,e.createServerReference)("001fcedda00515e89b3057f42768f76ba7b4048607",e.callServer,void 0,e.findSourceMapURL,"startMfaEnrollment");var h=a.i(756540);a.s(["SetupFlow",0,function(){let[a,e]=(0,c.useState)(null),[i,j]=(0,c.useTransition)(),[k,l,m]=(0,c.useActionState)(f,{status:"idle"});(0,h.f)(k);let n="done"===k.status;return a&&a.ok?(0,b.jsxs)("form",{action:l,children:[(0,b.jsxs)("ol",{className:"mb-3 list-decimal pl-5 text-[13px] text-ink-soft",children:[(0,b.jsx)("li",{children:"Scan this QR code with your authenticator app."}),(0,b.jsx)("li",{children:"Type the 6-digit code it shows."})]}),(0,b.jsx)("img",{src:a.qr,alt:"QR code for your authenticator app",className:"mx-auto mb-3 size-44 rounded-lg bg-white p-2"}),(0,b.jsxs)("p",{className:"mb-3 text-center text-[12.5px] text-ink-soft",children:["Can't scan? Enter this key: ",(0,b.jsx)("code",{className:"font-mono break-all text-ink",children:a.secret})]}),(0,b.jsx)("input",{type:"hidden",name:"factorId",value:a.factorId}),(0,b.jsx)(d.O,{id:"code",label:"Code",error:"error"===k.status?k.message:void 0,children:(0,b.jsx)("input",{id:"code",name:"code",inputMode:"numeric",autoComplete:"one-time-code",pattern:"[0-9 ]{6,7}",maxLength:7,required:!0,className:`${d.S} font-mono tracking-widest`,placeholder:"123456"})}),(0,b.jsx)(d.K,{type:"submit",variant:"primary",className:"w-full justify-center",disabled:m||n,children:n?"Opening the console…":m?"Checking…":"Turn on"})]}):(0,b.jsxs)(b.Fragment,{children:[a&&!a.ok&&(0,b.jsx)("div",{className:"mb-3",children:(0,b.jsx)(d.M,{tone:"danger",title:a.error})}),(0,b.jsx)(d.K,{variant:"primary",className:"w-full justify-center",disabled:i,onClick:()=>j(async()=>e(await g())),children:i?"Preparing…":"Set up authenticator"})]})}],829254)}];
2
2
 
3
3
  //# sourceMappingURL=src_app_mfa_setup_setup-flow_tsx_1fpwygr2vdgnh._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[921572,a=>{"use strict";var b=a.i(907997);a.s(["default",0,function(){return(0,b.jsxs)("main",{className:"mx-auto flex max-w-[760px] flex-col gap-1.5 px-4 pb-12 pt-8",children:[(0,b.jsx)("h1",{className:"text-[20px]",children:"No status page here"}),(0,b.jsx)("p",{className:"m-0 text-ink-soft",children:"This address doesn't match a published status page. Check the link with whoever sent it."})]})}])},543738,function(a){a.n(a.i(921572))}];
2
+
3
+ //# sourceMappingURL=src_app_s_%5Bslug%5D_not-found_tsx_04_zrw19809g4._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[779798,a=>{"use strict";var b=a.i(907997);a.i(570396);var c=a.i(673727),d=a.i(800717),e=a.i(252302),f=a.i(686251),g=a.i(149396),h=a.i(470253),i=a.i(245710);async function j(){return[]}let k=(0,d.cache)(async a=>{let b=(0,h.P)(a);return b?(0,g.t)(b,new Date):null});async function l({params:a}){let b=await k((await a).slug);return{title:b?b.title:"Not found",robots:{index:!1,follow:!1}}}function m({state:a,title:c,children:d}){return(0,b.jsxs)("div",{className:"flex items-start gap-2.5 rounded-lg border border-brand/25 bg-brand-soft px-3.5 py-2.5",role:"status",children:[(0,b.jsx)("span",{className:"mt-px",children:(0,b.jsx)(f.Z,{state:a,size:18})}),(0,b.jsxs)("div",{children:[(0,b.jsx)("b",{className:"block font-medium",children:c}),d&&(0,b.jsx)("p",{className:"mt-0.5 text-[13px] text-ink-soft",children:d})]})]})}async function n({params:a}){let{slug:d}=await a,g=await k(d);g||(0,c.notFound)();let h=g.monitors[0];return(0,b.jsxs)("main",{className:"mx-auto flex max-w-[760px] flex-col gap-4 px-4 pb-12 pt-8",children:[(0,b.jsxs)("header",{className:"flex items-center gap-3",children:[(0,b.jsx)("span",{className:"grid size-7 shrink-0 place-items-center rounded-[7px] bg-brand font-mono text-xs font-semibold text-on-brand","aria-hidden":!0,children:"WB"}),(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("h1",{className:"text-[20px]",children:g.title}),(0,b.jsxs)("p",{className:"mt-0.5 text-ink-soft",children:["Updated every minute · times in ",(0,i.D)()]})]})]}),g.announcement&&(0,b.jsx)(m,{state:"info",title:g.announcement}),g.maintenance.map((a,c)=>(0,b.jsxs)(m,{state:"maint",title:a.active?"Maintenance now":"Scheduled maintenance",children:[`${a.from}–${a.to} ${(0,i.D)()}.`,a.note&&` ${a.note}`]},c)),(0,b.jsxs)("section",{className:"min-w-0 rounded-lg border border-line bg-surface",children:[0===g.monitors.length&&(0,b.jsx)("p",{className:"px-[18px] py-4 text-ink-soft",children:"Nothing is shown on this page yet."}),g.monitors.map(a=>(0,b.jsxs)("div",{className:"grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-3 gap-y-1.5 border-t border-line px-[18px] py-3 first:border-t-0",children:[(0,b.jsx)("b",{className:"min-w-0 truncate font-medium",children:a.name}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(f.F,{state:a.state,children:a.label}),(0,b.jsx)("span",{className:"font-mono text-[12.5px] text-ink-faint",children:a.uptime})]}),(0,b.jsx)("div",{className:"col-span-full min-w-0 overflow-x-auto",children:(0,b.jsx)(e.n,{bars:a.bars.map((a,b)=>({day:String(b),tone:a.tone,title:a.title}))})})]},a.badge))]}),(0,b.jsxs)("p",{className:"m-0 text-[12.5px] text-ink-faint",children:["Last 90 days. Grey means no data, blue means maintenance (not counted).",h&&(0,b.jsxs)(b.Fragment,{children:[" Badge: ",(0,b.jsx)("img",{alt:`${h.name} uptime badge`,className:"inline align-middle",height:20,src:`/s/${d}/badge/${h.badge}.svg`})]})]})]})}a.s(["default",0,n,"dynamicParams",0,!0,"generateMetadata",0,l,"generateStaticParams",0,j,"revalidate",0,60])},475787,function(a){a.n(a.i(779798))}];
1
+ module.exports=[779798,a=>{"use strict";var b=a.i(907997),c=a.i(568119);a.i(570396);var d=a.i(673727),e=a.i(800717),f=a.i(252302),g=a.i(686251),h=a.i(149396),i=a.i(470253),j=a.i(245710);async function k(){return[]}let l=(0,e.cache)(async a=>{let b=(0,i.P)(a);return b?(0,h.t)(b,new Date):null});async function m({params:a}){let b=await l((await a).slug);return{title:b?b.title:"No status page here",robots:{index:!1,follow:!1}}}function n({state:a,title:c,children:d}){return(0,b.jsxs)("div",{className:"flex items-start gap-2.5 rounded-lg border border-brand/25 bg-brand-soft px-3.5 py-2.5",role:"status",children:[(0,b.jsx)("span",{className:"mt-px",children:(0,b.jsx)(g.Z,{state:a,size:18})}),(0,b.jsxs)("div",{children:[(0,b.jsx)("b",{className:"block font-medium",children:c}),d&&(0,b.jsx)("p",{className:"mt-0.5 text-[13px] text-ink-soft",children:d})]})]})}async function o({params:a}){let{slug:e}=await a,h=await l(e);h||(0,d.notFound)();let k=(0,i.W)(h.monitors);return(0,b.jsxs)("main",{className:"mx-auto flex max-w-[760px] flex-col gap-4 px-4 pb-12 pt-8",children:[(0,b.jsxs)("header",{className:"flex items-center gap-3",children:[(0,b.jsx)(c.f,{}),(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("h1",{className:"text-[20px]",children:h.title}),(0,b.jsxs)("p",{className:"mt-0.5 text-ink-soft",children:["Updated every minute · times in ",(0,j.D)()]})]})]}),k&&(0,b.jsxs)("p",{className:"m-0 flex items-center gap-2 text-[17px] font-medium",role:"status",children:[(0,b.jsx)(g.Z,{state:k.state,size:20}),k.text]}),h.announcement&&(0,b.jsx)(n,{state:"info",title:h.announcement}),h.maintenance.map((a,c)=>(0,b.jsxs)(n,{state:"maint",title:a.active?"Maintenance now":"Scheduled maintenance",children:[`${a.from}–${a.to} ${(0,j.D)()}.`,a.note&&` ${a.note}`]},c)),(0,b.jsxs)("section",{className:"min-w-0 rounded-lg border border-line bg-surface",children:[0===h.monitors.length&&(0,b.jsx)("p",{className:"px-[18px] py-4 text-ink-soft",children:"Nothing is shown on this page yet."}),h.monitors.map(a=>(0,b.jsxs)("div",{className:"grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-3 gap-y-1.5 border-t border-line px-[18px] py-3 first:border-t-0",children:[(0,b.jsx)("b",{className:"min-w-0 truncate font-medium",children:a.name}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,b.jsx)(g.F,{state:a.state,children:a.label}),(0,b.jsx)("span",{className:"font-mono text-[12.5px] text-ink-faint",children:a.uptime})]}),(0,b.jsx)("div",{className:"col-span-full min-w-0 overflow-x-auto",children:(0,b.jsx)(f.n,{bars:a.bars.map((a,b)=>({day:String(b),tone:a.tone,title:a.title}))})})]},a.badge))]}),(0,b.jsx)("p",{className:"m-0 text-[12.5px] text-ink-faint",children:"Last 90 days. Grey means no data, blue means maintenance (not counted)."})]})}a.s(["default",0,o,"dynamicParams",0,!0,"generateMetadata",0,m,"generateStaticParams",0,k,"revalidate",0,60])},475787,function(a){a.n(a.i(779798))}];
2
2
 
3
3
  //# sourceMappingURL=src_app_s_%5Bslug%5D_page_tsx_0jjqe6py82mpb._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[505281,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(619089),e=a.i(405050);let f=(0,e.createServerReference)("608c6a929be88465b31cb510623a7e23908b2ea462",e.callServer,void 0,e.findSourceMapURL,"submitSetup");a.s(["SetupForm",0,function(){let[a,e,g]=(0,c.useActionState)(f,{status:"idle"}),h=b=>"error"===a.status&&a.field===b?a.message:void 0,i="error"===a.status?a:{code:"",email:""},j="error"!==a.status||a.field?void 0:a.message;return(0,b.jsxs)("form",{action:e,children:[(0,b.jsx)(d.O,{id:"code",label:"Setup code",error:h("code"),children:(0,b.jsx)("input",{id:"code",name:"code",autoComplete:"off",spellCheck:!1,defaultValue:i.code,placeholder:"XXXXX-XXXXX",maxLength:20,required:!0,className:`${d.S} font-mono uppercase tracking-widest`})}),(0,b.jsx)(d.O,{id:"email",label:"Email",error:h("email"),children:(0,b.jsx)("input",{id:"email",name:"email",type:"email",defaultValue:i.email,autoComplete:"email",placeholder:"name@example.com",required:!0,className:d.S})}),(0,b.jsx)(d.O,{id:"password",label:"Password",help:"At least 12 characters.",error:h("password"),children:(0,b.jsx)("input",{id:"password",name:"password",type:"password",autoComplete:"new-password",minLength:12,maxLength:200,required:!0,className:d.S})}),(0,b.jsx)(d.O,{id:"confirm",label:"Confirm password",error:h("confirm"),children:(0,b.jsx)("input",{id:"confirm",name:"confirm",type:"password",autoComplete:"new-password",minLength:12,maxLength:200,required:!0,className:d.S})}),j&&(0,b.jsx)("p",{className:"mb-3.5 text-[12.5px] text-err",role:"alert",children:j}),(0,b.jsx)(d.K,{type:"submit",variant:"primary",className:"w-full justify-center",disabled:g,children:g?"Creating…":"Create owner account"}),(0,b.jsx)("p",{className:"mt-4 text-[12.5px] text-ink-faint",children:"Next you'll add an authenticator app. Owners always sign in with a code."})]},"error"===a.status?`${a.message}:${i.code}:${i.email}`:"idle")}],505281)}];
1
+ module.exports=[505281,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(619089),e=a.i(405050);let f=(0,e.createServerReference)("60b4f1f52d04fb8e94803ccb4c54c41b6155cf0420",e.callServer,void 0,e.findSourceMapURL,"submitSetup");a.s(["SetupForm",0,function(){let[a,e,g]=(0,c.useActionState)(f,{status:"idle"}),h=b=>"error"===a.status&&a.field===b?a.message:void 0,i="error"===a.status?a:{code:"",email:""},j="error"!==a.status||a.field?void 0:a.message;return(0,b.jsxs)("form",{action:e,children:[(0,b.jsx)(d.O,{id:"code",label:"Setup code",error:h("code"),children:(0,b.jsx)("input",{id:"code",name:"code",autoComplete:"off",spellCheck:!1,defaultValue:i.code,placeholder:"XXXXX-XXXXX",maxLength:20,required:!0,className:`${d.S} font-mono uppercase tracking-widest`})}),(0,b.jsx)(d.O,{id:"email",label:"Email",error:h("email"),children:(0,b.jsx)("input",{id:"email",name:"email",type:"email",defaultValue:i.email,autoComplete:"email",placeholder:"name@example.com",required:!0,className:d.S})}),(0,b.jsx)(d.O,{id:"password",label:"Password",help:"At least 12 characters.",error:h("password"),children:(0,b.jsx)("input",{id:"password",name:"password",type:"password",autoComplete:"new-password",minLength:12,maxLength:200,required:!0,className:d.S})}),(0,b.jsx)(d.O,{id:"confirm",label:"Confirm password",error:h("confirm"),children:(0,b.jsx)("input",{id:"confirm",name:"confirm",type:"password",autoComplete:"new-password",minLength:12,maxLength:200,required:!0,className:d.S})}),j&&(0,b.jsx)("p",{className:"mb-3.5 text-[12.5px] text-err",role:"alert",children:j}),(0,b.jsx)(d.K,{type:"submit",variant:"primary",className:"w-full justify-center",disabled:g,children:g?"Creating…":"Create owner account"}),(0,b.jsx)("p",{className:"mt-4 text-[12.5px] text-ink-faint",children:"Next you'll add an authenticator app. Owners always sign in with a code."})]},"error"===a.status?`${a.message}:${i.code}:${i.email}`:"idle")}],505281)}];
2
2
 
3
3
  //# sourceMappingURL=src_app_setup_setup-form_tsx_0izoagdur96e1._.js.map
@@ -0,0 +1,3 @@
1
+ (()=>{"use strict";module.exports=[976873,a=>{var b=a.i(405050);let c=(0,b.createServerReference)("6087173b9817b60f95a56bcfa79531e6d9c5e02022",b.callServer,void 0,b.findSourceMapURL,"signInWithPassword");a.s(["f",0,c])},625104,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(619089);let e="demo@watchbell.west-solutions.web.id",f="watchbell-demo";var g=a.i(976873);a.s(["DemoSignInForm",0,function({next:a}){let[h,i,j]=(0,c.useActionState)(g.f,{status:"idle"}),k=(0,c.useRef)(null),l=(0,c.useRef)(null);return(0,b.jsxs)("form",{action:i,children:[(0,b.jsx)("h1",{className:"mb-1 text-xl",children:"Try the Watchbell demo"}),(0,b.jsx)("p",{className:"mb-[18px] text-ink-soft",children:"Sign in with the demo account to look around a console full of made-up data of your own."}),(0,b.jsxs)("div",{className:"mb-[18px] rounded-lg border border-line bg-sunken px-3.5 py-3",children:[(0,b.jsxs)("dl",{className:"mb-2.5 grid grid-cols-[auto_1fr] gap-x-3 gap-y-1 text-[13px]",children:[(0,b.jsx)("dt",{className:"text-ink-soft",children:"Email"}),(0,b.jsx)("dd",{className:"break-all font-mono",children:e}),(0,b.jsx)("dt",{className:"text-ink-soft",children:"Password"}),(0,b.jsx)("dd",{className:"font-mono",children:f})]}),(0,b.jsx)(d.K,{size:"sm",onClick:()=>{k.current&&(k.current.value=e),l.current&&(l.current.value=f),l.current?.focus()},children:"Use demo account"})]}),a&&(0,b.jsx)("input",{type:"hidden",name:"next",value:a}),(0,b.jsx)(d.O,{id:"email",label:"Email",error:"error"===h.status&&"email"===h.field?h.message:void 0,children:(0,b.jsx)("input",{ref:k,id:"email",name:"email",type:"email",autoComplete:"username",placeholder:"name@example.com",required:!0,maxLength:254,defaultValue:"error"===h.status?h.email:void 0,className:d.S})}),(0,b.jsx)(d.O,{id:"password",label:"Password",error:"error"===h.status&&"email"!==h.field?h.message:void 0,children:(0,b.jsx)("input",{ref:l,id:"password",name:"password",type:"password",autoComplete:"current-password",required:!0,maxLength:200,className:d.S})}),(0,b.jsx)(d.K,{type:"submit",variant:"primary",className:"w-full justify-center",disabled:j,children:j?"Signing in…":"Sign in"}),(0,b.jsx)("p",{className:"mt-4 text-[12.5px] text-ink-faint",children:"Or use any email and password. Every sign-in, the demo account too, gets its own made-up data."})]})}],625104)},318465,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(619089),e=a.i(976873);a.s(["PasswordSignInForm",0,function({next:a}){let[f,g,h]=(0,c.useActionState)(e.f,{status:"idle"});return(0,b.jsxs)("form",{action:g,children:[(0,b.jsx)("h1",{className:"mb-1 text-xl",children:"Sign in to Watchbell"}),(0,b.jsx)("p",{className:"mb-[18px] text-ink-soft",children:"Use the email and password an owner set up for you."}),a&&(0,b.jsx)("input",{type:"hidden",name:"next",value:a}),(0,b.jsx)(d.O,{id:"email",label:"Email",children:(0,b.jsx)("input",{id:"email",name:"email",type:"email",autoComplete:"username",placeholder:"name@example.com",required:!0,defaultValue:"error"===f.status?f.email:void 0,className:d.S})}),(0,b.jsx)(d.O,{id:"password",label:"Password",error:"error"===f.status?f.message:void 0,children:(0,b.jsx)("input",{id:"password",name:"password",type:"password",autoComplete:"current-password",required:!0,maxLength:1024,className:d.S})}),(0,b.jsx)(d.K,{type:"submit",variant:"primary",className:"w-full justify-center",disabled:h,children:h?"Signing in…":"Sign in"}),(0,b.jsxs)("p",{className:"mt-4 text-[12.5px] text-ink-faint",children:["Forgot your password? Ask an owner to reset it. If you are the owner, stop Watchbell and run"," ",(0,b.jsx)("code",{className:"font-mono text-ink-soft",children:"watchbell reset-login you@example.com"})," on the machine it runs on (from an installer: ",(0,b.jsx)("code",{className:"font-mono text-ink-soft",children:"npm run reset-login -- you@example.com"})," in its app folder)."]})]})}])},59558,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(619089);let e="https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit";function f({siteKey:a}){let d=(0,c.useRef)(null),[g,h]=(0,c.useState)(!1);return((0,c.useEffect)(()=>{let b,c=!1;return(window.turnstile?Promise.resolve(window.turnstile):new Promise((a,b)=>{let c=document.querySelector(`script[src="${e}"]`);c||((c=document.createElement("script")).src=e,c.async=!0,document.head.appendChild(c));let d=c;d.addEventListener("load",()=>window.turnstile?a(window.turnstile):b(Error("turnstile"))),d.addEventListener("error",()=>{d.remove(),b(Error("turnstile"))})})).then(e=>{!c&&d.current&&(b=e.render(d.current,{sitekey:a,action:"signin",theme:"auto"}))}).catch(()=>{console.warn("bot check failed to load"),c||h(!0)}),()=>{c=!0,b&&window.turnstile&&window.turnstile.remove(b)}},[a]),g)?(0,b.jsx)("p",{role:"alert",className:"mb-3.5 text-[13px] text-err",children:"The bot check couldn't load. Check your connection and reload the page."}):(0,b.jsx)("div",{ref:d,className:"mb-3.5 min-h-[65px]"})}var g=a.i(405050);let h=(0,g.createServerReference)("6080237ec09bb832f2fa84fb0019d504c4db3be3e4",g.callServer,void 0,g.findSourceMapURL,"sendSignInLink");a.s(["SignInForm",0,function({siteKey:a}){let[e,g,i]=(0,c.useActionState)(h,{status:"idle"}),[j,k]=(0,c.useState)(!1),[l,m]=(0,c.useState)(0);return"sent"!==e.status||j?(0,b.jsxs)("form",{action:a=>{k(!1),m(a=>a+1),g(a)},children:[(0,b.jsx)("h1",{className:"mb-1 text-xl",children:"Sign in to Watchbell"}),(0,b.jsx)("p",{className:"mb-[18px] text-ink-soft",children:"We'll email you a sign-in link. Only invited people can get in."}),(0,b.jsx)(d.O,{id:"email",label:"Email",error:"error"===e.status?e.message:void 0,children:(0,b.jsx)("input",{id:"email",name:"email",type:"email",autoComplete:"email",placeholder:"name@example.com",required:!0,className:d.S})}),(0,b.jsx)(f,{siteKey:a},l),(0,b.jsx)(d.K,{type:"submit",variant:"primary",className:"w-full justify-center",disabled:i,children:i?"Sending…":"Send sign-in link"}),(0,b.jsx)("p",{className:"mt-4 text-[12.5px] text-ink-faint",children:"Can't get in? Ask an owner to invite you."})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h1",{className:"mb-1 text-xl",children:"Check your email"}),(0,b.jsxs)("p",{className:"mb-[18px] text-ink-soft",children:["If ",e.email," is invited, a sign-in link is on its way. It works for 1 hour."]}),(0,b.jsx)(d.K,{className:"w-full justify-center",onClick:()=>k(!0),children:"Use a different email"})]})}],59558)}]})();
2
+
3
+ //# sourceMappingURL=src_app_signin_0hb58isfg-2yx._.js.map