watchbell 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1030) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +123 -84
  3. package/bin/watchbell.mjs +593 -23
  4. package/package.json +1 -1
  5. package/server/.next/BUILD_ID +1 -1
  6. package/server/.next/app-path-routes-manifest.json +1 -0
  7. package/server/.next/build-manifest.json +116 -105
  8. package/server/.next/prerender-manifest.json +3 -3
  9. package/server/.next/routes-manifest.json +6 -0
  10. package/server/.next/server/app/(console)/(private)/ai/agents/page/build-manifest.json +3 -3
  11. package/server/.next/server/app/(console)/(private)/ai/agents/page/server-reference-manifest.json +11 -11
  12. package/server/.next/server/app/(console)/(private)/ai/agents/page.js +61 -58
  13. package/server/.next/server/app/(console)/(private)/ai/agents/page.js.nft.json +1 -1
  14. package/server/.next/server/app/(console)/(private)/ai/agents/page_client-reference-manifest.js +1 -1
  15. package/server/.next/server/app/(console)/(private)/ai/ask/page/build-manifest.json +3 -3
  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 +61 -58
  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/build-manifest.json +3 -3
  21. package/server/.next/server/app/(console)/(private)/ai/connect/page/server-reference-manifest.json +9 -9
  22. package/server/.next/server/app/(console)/(private)/ai/connect/page.js +61 -58
  23. package/server/.next/server/app/(console)/(private)/ai/connect/page.js.nft.json +1 -1
  24. package/server/.next/server/app/(console)/(private)/ai/connect/page_client-reference-manifest.js +1 -1
  25. package/server/.next/server/app/(console)/(private)/ai/keys/page/build-manifest.json +3 -3
  26. package/server/.next/server/app/(console)/(private)/ai/keys/page/server-reference-manifest.json +12 -12
  27. package/server/.next/server/app/(console)/(private)/ai/keys/page.js +61 -58
  28. package/server/.next/server/app/(console)/(private)/ai/keys/page.js.nft.json +1 -1
  29. package/server/.next/server/app/(console)/(private)/ai/keys/page_client-reference-manifest.js +1 -1
  30. package/server/.next/server/app/(console)/(private)/ai/logs/page/build-manifest.json +3 -3
  31. package/server/.next/server/app/(console)/(private)/ai/logs/page/server-reference-manifest.json +10 -10
  32. package/server/.next/server/app/(console)/(private)/ai/logs/page.js +61 -58
  33. package/server/.next/server/app/(console)/(private)/ai/logs/page.js.nft.json +1 -1
  34. package/server/.next/server/app/(console)/(private)/ai/logs/page_client-reference-manifest.js +1 -1
  35. package/server/.next/server/app/(console)/(private)/ai/models/page/build-manifest.json +3 -3
  36. package/server/.next/server/app/(console)/(private)/ai/models/page/server-reference-manifest.json +19 -19
  37. package/server/.next/server/app/(console)/(private)/ai/models/page.js +61 -58
  38. package/server/.next/server/app/(console)/(private)/ai/models/page.js.nft.json +1 -1
  39. package/server/.next/server/app/(console)/(private)/ai/models/page_client-reference-manifest.js +1 -1
  40. package/server/.next/server/app/(console)/(private)/ai/page/build-manifest.json +3 -3
  41. package/server/.next/server/app/(console)/(private)/ai/page/server-reference-manifest.json +9 -9
  42. package/server/.next/server/app/(console)/(private)/ai/page.js +61 -58
  43. package/server/.next/server/app/(console)/(private)/ai/page.js.nft.json +1 -1
  44. package/server/.next/server/app/(console)/(private)/ai/page_client-reference-manifest.js +1 -1
  45. package/server/.next/server/app/(console)/(private)/ai/playground/page/build-manifest.json +3 -3
  46. package/server/.next/server/app/(console)/(private)/ai/playground/page/server-reference-manifest.json +12 -12
  47. package/server/.next/server/app/(console)/(private)/ai/playground/page.js +61 -58
  48. package/server/.next/server/app/(console)/(private)/ai/playground/page.js.nft.json +1 -1
  49. package/server/.next/server/app/(console)/(private)/ai/playground/page_client-reference-manifest.js +1 -1
  50. package/server/.next/server/app/(console)/(private)/ai/providers/page/build-manifest.json +3 -3
  51. package/server/.next/server/app/(console)/(private)/ai/providers/page/server-reference-manifest.json +15 -15
  52. package/server/.next/server/app/(console)/(private)/ai/providers/page.js +61 -58
  53. package/server/.next/server/app/(console)/(private)/ai/providers/page.js.nft.json +1 -1
  54. package/server/.next/server/app/(console)/(private)/ai/providers/page_client-reference-manifest.js +1 -1
  55. package/server/.next/server/app/(console)/(private)/ai/quota/page/build-manifest.json +3 -3
  56. package/server/.next/server/app/(console)/(private)/ai/quota/page/server-reference-manifest.json +10 -10
  57. package/server/.next/server/app/(console)/(private)/ai/quota/page.js +61 -58
  58. package/server/.next/server/app/(console)/(private)/ai/quota/page.js.nft.json +1 -1
  59. package/server/.next/server/app/(console)/(private)/ai/quota/page_client-reference-manifest.js +1 -1
  60. package/server/.next/server/app/(console)/(private)/ai/usage/page/build-manifest.json +3 -3
  61. package/server/.next/server/app/(console)/(private)/ai/usage/page/server-reference-manifest.json +10 -10
  62. package/server/.next/server/app/(console)/(private)/ai/usage/page.js +61 -58
  63. package/server/.next/server/app/(console)/(private)/ai/usage/page.js.nft.json +1 -1
  64. package/server/.next/server/app/(console)/(private)/ai/usage/page_client-reference-manifest.js +1 -1
  65. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page/build-manifest.json +3 -3
  66. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page/server-reference-manifest.json +9 -9
  67. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js +61 -58
  68. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js.nft.json +1 -1
  69. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page_client-reference-manifest.js +1 -1
  70. package/server/.next/server/app/(console)/(private)/auto-actions/page/build-manifest.json +3 -3
  71. package/server/.next/server/app/(console)/(private)/auto-actions/page/server-reference-manifest.json +10 -10
  72. package/server/.next/server/app/(console)/(private)/auto-actions/page.js +61 -58
  73. package/server/.next/server/app/(console)/(private)/auto-actions/page.js.nft.json +1 -1
  74. package/server/.next/server/app/(console)/(private)/auto-actions/page_client-reference-manifest.js +1 -1
  75. package/server/.next/server/app/(console)/[...slug]/page/build-manifest.json +3 -3
  76. package/server/.next/server/app/(console)/[...slug]/page/server-reference-manifest.json +9 -9
  77. package/server/.next/server/app/(console)/[...slug]/page.js +62 -59
  78. package/server/.next/server/app/(console)/[...slug]/page.js.nft.json +1 -1
  79. package/server/.next/server/app/(console)/[...slug]/page_client-reference-manifest.js +1 -1
  80. package/server/.next/server/app/(console)/alerts/page/build-manifest.json +3 -3
  81. package/server/.next/server/app/(console)/alerts/page/server-reference-manifest.json +22 -22
  82. package/server/.next/server/app/(console)/alerts/page.js +61 -58
  83. package/server/.next/server/app/(console)/alerts/page.js.nft.json +1 -1
  84. package/server/.next/server/app/(console)/alerts/page_client-reference-manifest.js +1 -1
  85. package/server/.next/server/app/(console)/apps/[id]/page/build-manifest.json +3 -3
  86. package/server/.next/server/app/(console)/apps/[id]/page/server-reference-manifest.json +23 -23
  87. package/server/.next/server/app/(console)/apps/[id]/page.js +61 -58
  88. package/server/.next/server/app/(console)/apps/[id]/page.js.nft.json +1 -1
  89. package/server/.next/server/app/(console)/apps/[id]/page_client-reference-manifest.js +1 -1
  90. package/server/.next/server/app/(console)/apps/page/build-manifest.json +3 -3
  91. package/server/.next/server/app/(console)/apps/page/server-reference-manifest.json +11 -11
  92. package/server/.next/server/app/(console)/apps/page.js +61 -58
  93. package/server/.next/server/app/(console)/apps/page.js.nft.json +1 -1
  94. package/server/.next/server/app/(console)/apps/page_client-reference-manifest.js +1 -1
  95. package/server/.next/server/app/(console)/backups/page/build-manifest.json +3 -3
  96. package/server/.next/server/app/(console)/backups/page/server-reference-manifest.json +12 -12
  97. package/server/.next/server/app/(console)/backups/page.js +61 -58
  98. package/server/.next/server/app/(console)/backups/page.js.nft.json +1 -1
  99. package/server/.next/server/app/(console)/backups/page_client-reference-manifest.js +1 -1
  100. package/server/.next/server/app/(console)/catalog/page/build-manifest.json +3 -3
  101. package/server/.next/server/app/(console)/catalog/page/server-reference-manifest.json +9 -9
  102. package/server/.next/server/app/(console)/catalog/page.js +61 -58
  103. package/server/.next/server/app/(console)/catalog/page.js.nft.json +1 -1
  104. package/server/.next/server/app/(console)/catalog/page_client-reference-manifest.js +1 -1
  105. package/server/.next/server/app/(console)/connections/page/build-manifest.json +3 -3
  106. package/server/.next/server/app/(console)/connections/page/server-reference-manifest.json +54 -54
  107. package/server/.next/server/app/(console)/connections/page.js +67 -64
  108. package/server/.next/server/app/(console)/connections/page.js.nft.json +1 -1
  109. package/server/.next/server/app/(console)/connections/page_client-reference-manifest.js +1 -1
  110. package/server/.next/server/app/(console)/d1/page/build-manifest.json +3 -3
  111. package/server/.next/server/app/(console)/d1/page/server-reference-manifest.json +9 -9
  112. package/server/.next/server/app/(console)/d1/page.js +61 -58
  113. package/server/.next/server/app/(console)/d1/page.js.nft.json +1 -1
  114. package/server/.next/server/app/(console)/d1/page_client-reference-manifest.js +1 -1
  115. package/server/.next/server/app/(console)/deployments/page/build-manifest.json +3 -3
  116. package/server/.next/server/app/(console)/deployments/page/server-reference-manifest.json +14 -14
  117. package/server/.next/server/app/(console)/deployments/page.js +61 -58
  118. package/server/.next/server/app/(console)/deployments/page.js.nft.json +1 -1
  119. package/server/.next/server/app/(console)/deployments/page_client-reference-manifest.js +1 -1
  120. package/server/.next/server/app/(console)/dns/page/build-manifest.json +3 -3
  121. package/server/.next/server/app/(console)/dns/page/server-reference-manifest.json +16 -16
  122. package/server/.next/server/app/(console)/dns/page.js +61 -58
  123. package/server/.next/server/app/(console)/dns/page.js.nft.json +1 -1
  124. package/server/.next/server/app/(console)/dns/page_client-reference-manifest.js +1 -1
  125. package/server/.next/server/app/(console)/domains/page/build-manifest.json +3 -3
  126. package/server/.next/server/app/(console)/domains/page/server-reference-manifest.json +11 -11
  127. package/server/.next/server/app/(console)/domains/page.js +61 -58
  128. package/server/.next/server/app/(console)/domains/page.js.nft.json +1 -1
  129. package/server/.next/server/app/(console)/domains/page_client-reference-manifest.js +1 -1
  130. package/server/.next/server/app/(console)/events/page/build-manifest.json +3 -3
  131. package/server/.next/server/app/(console)/events/page/server-reference-manifest.json +9 -9
  132. package/server/.next/server/app/(console)/events/page.js +61 -58
  133. package/server/.next/server/app/(console)/events/page.js.nft.json +1 -1
  134. package/server/.next/server/app/(console)/events/page_client-reference-manifest.js +1 -1
  135. package/server/.next/server/app/(console)/firebase/page/build-manifest.json +3 -3
  136. package/server/.next/server/app/(console)/firebase/page/server-reference-manifest.json +15 -15
  137. package/server/.next/server/app/(console)/firebase/page.js +62 -59
  138. package/server/.next/server/app/(console)/firebase/page.js.nft.json +1 -1
  139. package/server/.next/server/app/(console)/firebase/page_client-reference-manifest.js +1 -1
  140. package/server/.next/server/app/(console)/logs/page/build-manifest.json +3 -3
  141. package/server/.next/server/app/(console)/logs/page/server-reference-manifest.json +10 -10
  142. package/server/.next/server/app/(console)/logs/page.js +61 -58
  143. package/server/.next/server/app/(console)/logs/page.js.nft.json +1 -1
  144. package/server/.next/server/app/(console)/logs/page_client-reference-manifest.js +1 -1
  145. package/server/.next/server/app/(console)/manage/sections/page/app-paths-manifest.json +3 -0
  146. package/server/.next/server/app/(console)/manage/sections/page/build-manifest.json +22 -0
  147. package/server/.next/server/app/(console)/manage/sections/page/next-font-manifest.json +11 -0
  148. package/server/.next/server/app/(console)/manage/sections/page/react-loadable-manifest.json +1 -0
  149. package/server/.next/server/app/(console)/manage/sections/page/server-reference-manifest.json +105 -0
  150. package/server/.next/server/app/(console)/manage/sections/page.js +104 -0
  151. package/server/.next/server/app/(console)/manage/sections/page.js.nft.json +1 -0
  152. package/server/.next/server/app/(console)/manage/sections/page_client-reference-manifest.js +3 -0
  153. package/server/.next/server/app/(console)/neon/page/build-manifest.json +3 -3
  154. package/server/.next/server/app/(console)/neon/page/server-reference-manifest.json +20 -20
  155. package/server/.next/server/app/(console)/neon/page.js +61 -58
  156. package/server/.next/server/app/(console)/neon/page.js.nft.json +1 -1
  157. package/server/.next/server/app/(console)/neon/page_client-reference-manifest.js +1 -1
  158. package/server/.next/server/app/(console)/overview/page/build-manifest.json +3 -3
  159. package/server/.next/server/app/(console)/overview/page/server-reference-manifest.json +16 -16
  160. package/server/.next/server/app/(console)/overview/page.js +61 -58
  161. package/server/.next/server/app/(console)/overview/page.js.nft.json +1 -1
  162. package/server/.next/server/app/(console)/overview/page_client-reference-manifest.js +1 -1
  163. package/server/.next/server/app/(console)/repos/[id]/page/build-manifest.json +3 -3
  164. package/server/.next/server/app/(console)/repos/[id]/page/server-reference-manifest.json +10 -10
  165. package/server/.next/server/app/(console)/repos/[id]/page.js +61 -58
  166. package/server/.next/server/app/(console)/repos/[id]/page.js.nft.json +1 -1
  167. package/server/.next/server/app/(console)/repos/[id]/page_client-reference-manifest.js +1 -1
  168. package/server/.next/server/app/(console)/repos/page/build-manifest.json +3 -3
  169. package/server/.next/server/app/(console)/repos/page/server-reference-manifest.json +9 -9
  170. package/server/.next/server/app/(console)/repos/page.js +61 -58
  171. package/server/.next/server/app/(console)/repos/page.js.nft.json +1 -1
  172. package/server/.next/server/app/(console)/repos/page_client-reference-manifest.js +1 -1
  173. package/server/.next/server/app/(console)/settings/page/build-manifest.json +3 -3
  174. package/server/.next/server/app/(console)/settings/page/server-reference-manifest.json +19 -19
  175. package/server/.next/server/app/(console)/settings/page.js +61 -58
  176. package/server/.next/server/app/(console)/settings/page.js.nft.json +1 -1
  177. package/server/.next/server/app/(console)/settings/page_client-reference-manifest.js +1 -1
  178. package/server/.next/server/app/(console)/sql/page/build-manifest.json +3 -3
  179. package/server/.next/server/app/(console)/sql/page/server-reference-manifest.json +16 -16
  180. package/server/.next/server/app/(console)/sql/page.js +61 -58
  181. package/server/.next/server/app/(console)/sql/page.js.nft.json +1 -1
  182. package/server/.next/server/app/(console)/sql/page_client-reference-manifest.js +1 -1
  183. package/server/.next/server/app/(console)/status/page/build-manifest.json +3 -3
  184. package/server/.next/server/app/(console)/status/page/server-reference-manifest.json +9 -9
  185. package/server/.next/server/app/(console)/status/page.js +61 -58
  186. package/server/.next/server/app/(console)/status/page.js.nft.json +1 -1
  187. package/server/.next/server/app/(console)/status/page_client-reference-manifest.js +1 -1
  188. package/server/.next/server/app/(console)/supabase/page/build-manifest.json +3 -3
  189. package/server/.next/server/app/(console)/supabase/page/server-reference-manifest.json +27 -27
  190. package/server/.next/server/app/(console)/supabase/page.js +61 -58
  191. package/server/.next/server/app/(console)/supabase/page.js.nft.json +1 -1
  192. package/server/.next/server/app/(console)/supabase/page_client-reference-manifest.js +1 -1
  193. package/server/.next/server/app/(console)/topology/page/build-manifest.json +3 -3
  194. package/server/.next/server/app/(console)/topology/page/server-reference-manifest.json +9 -9
  195. package/server/.next/server/app/(console)/topology/page.js +61 -58
  196. package/server/.next/server/app/(console)/topology/page.js.nft.json +1 -1
  197. package/server/.next/server/app/(console)/topology/page_client-reference-manifest.js +1 -1
  198. package/server/.next/server/app/(console)/turso/page/build-manifest.json +3 -3
  199. package/server/.next/server/app/(console)/turso/page/server-reference-manifest.json +9 -9
  200. package/server/.next/server/app/(console)/turso/page.js +61 -58
  201. package/server/.next/server/app/(console)/turso/page.js.nft.json +1 -1
  202. package/server/.next/server/app/(console)/turso/page_client-reference-manifest.js +1 -1
  203. package/server/.next/server/app/(console)/upstash/page/build-manifest.json +3 -3
  204. package/server/.next/server/app/(console)/upstash/page/server-reference-manifest.json +9 -9
  205. package/server/.next/server/app/(console)/upstash/page.js +61 -58
  206. package/server/.next/server/app/(console)/upstash/page.js.nft.json +1 -1
  207. package/server/.next/server/app/(console)/upstash/page_client-reference-manifest.js +1 -1
  208. package/server/.next/server/app/(console)/uptime/page/build-manifest.json +3 -3
  209. package/server/.next/server/app/(console)/uptime/page/server-reference-manifest.json +22 -22
  210. package/server/.next/server/app/(console)/uptime/page.js +61 -58
  211. package/server/.next/server/app/(console)/uptime/page.js.nft.json +1 -1
  212. package/server/.next/server/app/(console)/uptime/page_client-reference-manifest.js +1 -1
  213. package/server/.next/server/app/(console)/welcome/page/build-manifest.json +3 -3
  214. package/server/.next/server/app/(console)/welcome/page/server-reference-manifest.json +14 -14
  215. package/server/.next/server/app/(console)/welcome/page.js +62 -59
  216. package/server/.next/server/app/(console)/welcome/page.js.nft.json +1 -1
  217. package/server/.next/server/app/(console)/welcome/page_client-reference-manifest.js +1 -1
  218. package/server/.next/server/app/_global-error/page/build-manifest.json +3 -3
  219. package/server/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  220. package/server/.next/server/app/_global-error/page.js.nft.json +1 -1
  221. package/server/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  222. package/server/.next/server/app/_global-error.html +1 -1
  223. package/server/.next/server/app/_global-error.rsc +3 -3
  224. package/server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  225. package/server/.next/server/app/_global-error.segments/_full.segment.rsc +3 -3
  226. package/server/.next/server/app/_global-error.segments/_tree.segment.rsc +2 -2
  227. package/server/.next/server/app/_not-found/page/build-manifest.json +3 -3
  228. package/server/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  229. package/server/.next/server/app/_not-found/page.js.nft.json +1 -1
  230. package/server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  231. package/server/.next/server/app/_not-found.html +1 -1
  232. package/server/.next/server/app/_not-found.rsc +4 -4
  233. package/server/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
  234. package/server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  235. package/server/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  236. package/server/.next/server/app/account/password/page/build-manifest.json +3 -3
  237. package/server/.next/server/app/account/password/page/server-reference-manifest.json +2 -2
  238. package/server/.next/server/app/account/password/page.js.nft.json +1 -1
  239. package/server/.next/server/app/account/password/page_client-reference-manifest.js +1 -1
  240. package/server/.next/server/app/api/collect/route/server-reference-manifest.json +7 -7
  241. package/server/.next/server/app/api/collect/route.js +78 -73
  242. package/server/.next/server/app/api/collect/route.js.nft.json +1 -1
  243. package/server/.next/server/app/api/daily/route/server-reference-manifest.json +7 -7
  244. package/server/.next/server/app/api/daily/route.js +77 -72
  245. package/server/.next/server/app/api/daily/route.js.nft.json +1 -1
  246. package/server/.next/server/app/api/health/route.js.nft.json +1 -1
  247. package/server/.next/server/app/api/ping/[...parts]/route.js.nft.json +1 -1
  248. package/server/.next/server/app/api/status/route.js.nft.json +1 -1
  249. package/server/.next/server/app/api/telegram/webhook/route/server-reference-manifest.json +7 -7
  250. package/server/.next/server/app/api/telegram/webhook/route.js +75 -70
  251. package/server/.next/server/app/api/telegram/webhook/route.js.nft.json +1 -1
  252. package/server/.next/server/app/api/v1/[[...rest]]/route.js.nft.json +1 -1
  253. package/server/.next/server/app/api/v1/advice/route.js +20 -19
  254. package/server/.next/server/app/api/v1/advice/route.js.nft.json +1 -1
  255. package/server/.next/server/app/api/v1/ai/chat/completions/route.js +2 -2
  256. package/server/.next/server/app/api/v1/ai/chat/completions/route.js.nft.json +1 -1
  257. package/server/.next/server/app/api/v1/ai/models/route.js +2 -2
  258. package/server/.next/server/app/api/v1/ai/models/route.js.nft.json +1 -1
  259. package/server/.next/server/app/api/v1/ai/questions/[id]/route.js +1 -1
  260. package/server/.next/server/app/api/v1/ai/questions/[id]/route.js.nft.json +1 -1
  261. package/server/.next/server/app/api/v1/ai/questions/route.js +24 -23
  262. package/server/.next/server/app/api/v1/ai/questions/route.js.nft.json +1 -1
  263. package/server/.next/server/app/api/v1/mcp/route.js +22 -21
  264. package/server/.next/server/app/api/v1/mcp/route.js.nft.json +1 -1
  265. package/server/.next/server/app/api/v1/me/route.js +1 -1
  266. package/server/.next/server/app/api/v1/me/route.js.nft.json +1 -1
  267. package/server/.next/server/app/api/v1/openapi.json/route.js +10 -9
  268. package/server/.next/server/app/api/v1/openapi.json/route.js.nft.json +1 -1
  269. package/server/.next/server/app/api/v1/status/apps/[app]/route.js +20 -19
  270. package/server/.next/server/app/api/v1/status/apps/[app]/route.js.nft.json +1 -1
  271. package/server/.next/server/app/api/v1/status/route.js +20 -19
  272. package/server/.next/server/app/api/v1/status/route.js.nft.json +1 -1
  273. package/server/.next/server/app/api/watchdog/route.js +21 -19
  274. package/server/.next/server/app/api/watchdog/route.js.nft.json +1 -1
  275. package/server/.next/server/app/auth/confirm/route.js.nft.json +1 -1
  276. package/server/.next/server/app/auth/google/callback/route.js +18 -17
  277. package/server/.next/server/app/auth/google/callback/route.js.nft.json +1 -1
  278. package/server/.next/server/app/auth/google/create/callback/route.js.nft.json +1 -1
  279. package/server/.next/server/app/auth/not-member/route.js.nft.json +1 -1
  280. package/server/.next/server/app/auth/session-ended/route.js.nft.json +1 -1
  281. package/server/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  282. package/server/.next/server/app/invite/page/build-manifest.json +3 -3
  283. package/server/.next/server/app/invite/page/server-reference-manifest.json +2 -2
  284. package/server/.next/server/app/invite/page.js +4 -3
  285. package/server/.next/server/app/invite/page.js.nft.json +1 -1
  286. package/server/.next/server/app/invite/page_client-reference-manifest.js +1 -1
  287. package/server/.next/server/app/mfa/page/build-manifest.json +3 -3
  288. package/server/.next/server/app/mfa/page/server-reference-manifest.json +2 -2
  289. package/server/.next/server/app/mfa/page.js.nft.json +1 -1
  290. package/server/.next/server/app/mfa/page_client-reference-manifest.js +1 -1
  291. package/server/.next/server/app/mfa/setup/page/build-manifest.json +3 -3
  292. package/server/.next/server/app/mfa/setup/page/server-reference-manifest.json +3 -3
  293. package/server/.next/server/app/mfa/setup/page.js.nft.json +1 -1
  294. package/server/.next/server/app/mfa/setup/page_client-reference-manifest.js +1 -1
  295. package/server/.next/server/app/page/build-manifest.json +3 -3
  296. package/server/.next/server/app/page/server-reference-manifest.json +1 -1
  297. package/server/.next/server/app/page.js.nft.json +1 -1
  298. package/server/.next/server/app/page_client-reference-manifest.js +1 -1
  299. package/server/.next/server/app/s/[slug]/badge/[file]/route.js +9 -8
  300. package/server/.next/server/app/s/[slug]/badge/[file]/route.js.nft.json +1 -1
  301. package/server/.next/server/app/s/[slug]/page/build-manifest.json +3 -3
  302. package/server/.next/server/app/s/[slug]/page/server-reference-manifest.json +1 -1
  303. package/server/.next/server/app/s/[slug]/page.js +8 -8
  304. package/server/.next/server/app/s/[slug]/page.js.nft.json +1 -1
  305. package/server/.next/server/app/s/[slug]/page_client-reference-manifest.js +1 -1
  306. package/server/.next/server/app/setup/page/build-manifest.json +3 -3
  307. package/server/.next/server/app/setup/page/server-reference-manifest.json +2 -2
  308. package/server/.next/server/app/setup/page.js.nft.json +1 -1
  309. package/server/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  310. package/server/.next/server/app/signin/page/build-manifest.json +3 -3
  311. package/server/.next/server/app/signin/page/server-reference-manifest.json +3 -3
  312. package/server/.next/server/app/signin/page.js.nft.json +1 -1
  313. package/server/.next/server/app/signin/page_client-reference-manifest.js +1 -1
  314. package/server/.next/server/app-paths-manifest.json +1 -0
  315. package/server/.next/server/chunks/{[externals]__0fbnlnnial7w5._.js → [externals]__0qo8lpb70m87u._.js} +1 -1
  316. package/server/.next/server/chunks/{[externals]__1e0dmqhilgze5._.js → [externals]__100hq0n2xtenb._.js} +1 -1
  317. package/server/.next/server/chunks/{[externals]__1jhautmcwmgii._.js → [externals]__1irgb5qz1s3gv._.js} +1 -1
  318. package/server/.next/server/chunks/{[root-of-the-server]__0_6eq1806attx._.js → [root-of-the-server]__00hb7hqa7qktx._.js} +1 -1
  319. package/server/.next/server/chunks/[root-of-the-server]__03276vwi4jgvk._.js +1 -1
  320. package/server/.next/server/chunks/[root-of-the-server]__049ykc067tlsv._.js +1 -1
  321. package/server/.next/server/chunks/[root-of-the-server]__04q-9779vl4kn._.js +3 -0
  322. package/server/.next/server/chunks/[root-of-the-server]__04rnior8cyxtx._.js +3 -0
  323. package/server/.next/server/chunks/{[root-of-the-server]__010exlr_efe2h._.js → [root-of-the-server]__06ek056i_j_uk._.js} +2 -2
  324. package/server/.next/server/chunks/[root-of-the-server]__06f9e4kpi0mw8._.js +1 -1
  325. package/server/.next/server/chunks/[root-of-the-server]__06jphm4auz_sh._.js +3 -0
  326. package/server/.next/server/chunks/{[root-of-the-server]__06iz-tlpv7pqm._.js → [root-of-the-server]__06r-019fixp3f._.js} +1 -1
  327. package/server/.next/server/chunks/{[root-of-the-server]__0mtlynfv-vklo._.js → [root-of-the-server]__07uknh5b-embq._.js} +1 -1
  328. package/server/.next/server/chunks/{[root-of-the-server]__0j0medewrv95l._.js → [root-of-the-server]__07v5e0vzgl4n2._.js} +2 -2
  329. package/server/.next/server/chunks/{[root-of-the-server]__0ul6-jnt2oco7._.js → [root-of-the-server]__08fyoixg__c7n._.js} +1 -1
  330. package/server/.next/server/chunks/[root-of-the-server]__0_rfeg3389imx._.js +1 -1
  331. package/server/.next/server/chunks/[root-of-the-server]__0b2hzo6nez0we._.js +1 -1
  332. package/server/.next/server/chunks/[root-of-the-server]__0b9tciqdsctau._.js +3 -0
  333. package/server/.next/server/chunks/{[root-of-the-server]__09qqv-zsz9qhr._.js → [root-of-the-server]__0b_4w-5x5u7ag._.js} +1 -1
  334. package/server/.next/server/chunks/{[root-of-the-server]__1-37ctpn8yw_m._.js → [root-of-the-server]__0bnasoi-x21jc._.js} +1 -1
  335. package/server/.next/server/chunks/[root-of-the-server]__0c5w5y-db0jkb._.js +3 -0
  336. package/server/.next/server/chunks/{[root-of-the-server]__08i_or_xyqg4g._.js → [root-of-the-server]__0d8ypilha-el8._.js} +2 -2
  337. package/server/.next/server/chunks/{[root-of-the-server]__0znb_m_wygjdc._.js → [root-of-the-server]__0erdelc9_06nk._.js} +2 -2
  338. package/server/.next/server/chunks/{[root-of-the-server]__018ux7xja83l6._.js → [root-of-the-server]__0flqwe7amc3mz._.js} +2 -2
  339. package/server/.next/server/chunks/{[root-of-the-server]__0f5l9--3_wjvx._.js → [root-of-the-server]__0fw19tsgp-vbq._.js} +2 -2
  340. package/server/.next/server/chunks/{[root-of-the-server]__1_l4gp3r2d-7x._.js → [root-of-the-server]__0fw7l5y58_xcd._.js} +2 -2
  341. package/server/.next/server/chunks/{[root-of-the-server]__02ihdvnmhshoe._.js → [root-of-the-server]__0g1tldn4xjewd._.js} +2 -2
  342. package/server/.next/server/chunks/{[root-of-the-server]__0ogbwvwpnlx0b._.js → [root-of-the-server]__0grtjjr51j6xe._.js} +1 -1
  343. package/server/.next/server/chunks/{[root-of-the-server]__1jrqehmo6kq8x._.js → [root-of-the-server]__0h1qhdjpfq1d4._.js} +2 -2
  344. package/server/.next/server/chunks/{[root-of-the-server]__08801yoxfe_os._.js → [root-of-the-server]__0h4n81_nqdr4j._.js} +2 -2
  345. package/server/.next/server/chunks/{[root-of-the-server]__081ywec7cjq3d._.js → [root-of-the-server]__0hty-wue10pro._.js} +2 -2
  346. package/server/.next/server/chunks/[root-of-the-server]__0jqgfbhrgi28s._.js +3 -0
  347. package/server/.next/server/chunks/[root-of-the-server]__0m7i0l3nkbdfm._.js +1 -1
  348. package/server/.next/server/chunks/[root-of-the-server]__0mwiq4mkf8pc5._.js +1 -1
  349. package/server/.next/server/chunks/{[root-of-the-server]__0mui3wh3lfb6m._.js → [root-of-the-server]__0npmbdrxybln5._.js} +1 -1
  350. package/server/.next/server/chunks/{[root-of-the-server]__0-ok-3r9xtz0y._.js → [root-of-the-server]__0nqw6z6fp8wad._.js} +2 -2
  351. package/server/.next/server/chunks/{[root-of-the-server]__0_iz9zh9e_mov._.js → [root-of-the-server]__0olmk-rbbhxlo._.js} +2 -2
  352. package/server/.next/server/chunks/{[root-of-the-server]__0nsie5dba69e6._.js → [root-of-the-server]__0owyb9lr5t5u-._.js} +2 -2
  353. package/server/.next/server/chunks/[root-of-the-server]__0p3lnkpxf2-xz._.js +1 -1
  354. package/server/.next/server/chunks/[root-of-the-server]__0qmkpydmx3ljf._.js +3 -0
  355. package/server/.next/server/chunks/[root-of-the-server]__0r-zdzq6ki5gr._.js +3 -0
  356. package/server/.next/server/chunks/{[root-of-the-server]__0mhtnnebbepzx._.js → [root-of-the-server]__0si9k9jhdc0bm._.js} +2 -2
  357. package/server/.next/server/chunks/{[root-of-the-server]__0u66-8g4ql645._.js → [root-of-the-server]__0sivlmcvkc1uq._.js} +1 -1
  358. package/server/.next/server/chunks/[root-of-the-server]__0t8d8b4qkw3y-._.js +3 -0
  359. package/server/.next/server/chunks/{[root-of-the-server]__0i1de88cj5y-p._.js → [root-of-the-server]__0tl5pxttllr4d._.js} +2 -2
  360. package/server/.next/server/chunks/{[root-of-the-server]__1z3-s7wc9-uc6._.js → [root-of-the-server]__0uyh4jgcd9092._.js} +2 -2
  361. package/server/.next/server/chunks/[root-of-the-server]__0v4-g6c-ls39_._.js +3 -0
  362. package/server/.next/server/chunks/[root-of-the-server]__0vgnlhvdoh3bn._.js +3 -0
  363. package/server/.next/server/chunks/{[root-of-the-server]__1x9tt_2yhozwe._.js → [root-of-the-server]__0vp-x4ifpr3p9._.js} +2 -2
  364. package/server/.next/server/chunks/{[root-of-the-server]__15j_u2bz3jc-a._.js → [root-of-the-server]__0wy38l7k36j6g._.js} +1 -1
  365. package/server/.next/server/chunks/{[root-of-the-server]__0qesn8t6k9y_n._.js → [root-of-the-server]__0xiz361p5kdhf._.js} +1 -1
  366. package/server/.next/server/chunks/[root-of-the-server]__0z-07azr3zk8s._.js +3 -0
  367. package/server/.next/server/chunks/[root-of-the-server]__0z-41cwvkliev._.js +3 -0
  368. package/server/.next/server/chunks/[root-of-the-server]__0zxyfd7u67hmv._.js +3 -0
  369. package/server/.next/server/chunks/[root-of-the-server]__1-rqermjb77se._.js +3 -0
  370. package/server/.next/server/chunks/[root-of-the-server]__10c7apgidgs6x._.js +3 -0
  371. package/server/.next/server/chunks/{[root-of-the-server]__03pc2mot62sow._.js → [root-of-the-server]__10x3lu8jeqgbt._.js} +2 -2
  372. package/server/.next/server/chunks/{[root-of-the-server]__0gs-x779qi1ba._.js → [root-of-the-server]__11-van59e9p2a._.js} +2 -2
  373. package/server/.next/server/chunks/[root-of-the-server]__110c-t3wz3nzm._.js +1 -1
  374. package/server/.next/server/chunks/[root-of-the-server]__116b4n13dv75t._.js +3 -0
  375. package/server/.next/server/chunks/[root-of-the-server]__11k46kam6tbia._.js +1 -1
  376. package/server/.next/server/chunks/[root-of-the-server]__11tte6au1b-z-._.js +3 -0
  377. package/server/.next/server/chunks/[root-of-the-server]__127dbd1prkw0n._.js +3 -0
  378. package/server/.next/server/chunks/[root-of-the-server]__12uj0887q1ayr._.js +1 -1
  379. package/server/.next/server/chunks/[root-of-the-server]__13_b24n_f4my4._.js +3 -0
  380. package/server/.next/server/chunks/[root-of-the-server]__13be7gbo81td4._.js +3 -0
  381. package/server/.next/server/chunks/[root-of-the-server]__13h--47xmg706._.js +5 -0
  382. package/server/.next/server/chunks/{[root-of-the-server]__0wt74rsaz-308._.js → [root-of-the-server]__145gadwk31inl._.js} +2 -2
  383. package/server/.next/server/chunks/{[root-of-the-server]__0j53mir12jire._.js → [root-of-the-server]__14luo1ecxoqh-._.js} +1 -1
  384. package/server/.next/server/chunks/{[root-of-the-server]__15ddlx_ma_1iu._.js → [root-of-the-server]__162cm9ds1c5y2._.js} +2 -2
  385. package/server/.next/server/chunks/[root-of-the-server]__19kwj690b37xf._.js +1 -1
  386. package/server/.next/server/chunks/[root-of-the-server]__19vsae2naddj5._.js +3 -0
  387. package/server/.next/server/chunks/[root-of-the-server]__1_l065umy451k._.js +3 -0
  388. package/server/.next/server/chunks/[root-of-the-server]__1_ow7lgy0u7st._.js +3 -0
  389. package/server/.next/server/chunks/[root-of-the-server]__1akvpmbiap6nf._.js +1 -1
  390. package/server/.next/server/chunks/{[root-of-the-server]__0292lwnmh4wtc._.js → [root-of-the-server]__1aza-7l2pl-pm._.js} +2 -2
  391. package/server/.next/server/chunks/[root-of-the-server]__1bsyavebtmd7w._.js +3 -0
  392. package/server/.next/server/chunks/[root-of-the-server]__1cju843cjyf1t._.js +3 -0
  393. package/server/.next/server/chunks/{[root-of-the-server]__0qpf0qusq792k._.js → [root-of-the-server]__1cla4k3dqtcfb._.js} +2 -2
  394. package/server/.next/server/chunks/[root-of-the-server]__1fnsa-f0t7bxj._.js +3 -0
  395. package/server/.next/server/chunks/[root-of-the-server]__1g1176fer3j4e._.js +3 -0
  396. package/server/.next/server/chunks/[root-of-the-server]__1hqy35gww7ps2._.js +3 -0
  397. package/server/.next/server/chunks/[root-of-the-server]__1i92wg2yuvs4c._.js +3 -0
  398. package/server/.next/server/chunks/{[root-of-the-server]__03e141znq0hr-._.js → [root-of-the-server]__1iv6vg3z9ho81._.js} +1 -1
  399. package/server/.next/server/chunks/[root-of-the-server]__1j26i51ankv-z._.js +3 -0
  400. package/server/.next/server/chunks/{[root-of-the-server]__1jh0el-zvg4hp._.js → [root-of-the-server]__1j3-sv7eqyhjb._.js} +2 -2
  401. package/server/.next/server/chunks/[root-of-the-server]__1j3w0-cp17tx4._.js +3 -0
  402. package/server/.next/server/chunks/{[root-of-the-server]__1czhdqbxj_3ov._.js → [root-of-the-server]__1j_iy13gp2-on._.js} +2 -2
  403. package/server/.next/server/chunks/[root-of-the-server]__1kg91b3sadtoc._.js +3 -0
  404. package/server/.next/server/chunks/[root-of-the-server]__1kjndfodqqamq._.js +3 -0
  405. package/server/.next/server/chunks/[root-of-the-server]__1mami4vb3y5gd._.js +3 -0
  406. package/server/.next/server/chunks/[root-of-the-server]__1mse65-7gtj-n._.js +3 -0
  407. package/server/.next/server/chunks/{[root-of-the-server]__0q691wec2busx._.js → [root-of-the-server]__1objhlwwrjfjk._.js} +2 -2
  408. package/server/.next/server/chunks/[root-of-the-server]__1pscg7y0et34j._.js +3 -0
  409. package/server/.next/server/chunks/[root-of-the-server]__1rw0i4x2ake3x._.js +3 -0
  410. package/server/.next/server/chunks/[root-of-the-server]__1t9zp524wouer._.js +3 -0
  411. package/server/.next/server/chunks/{[root-of-the-server]__0tb-63ts77gqd._.js → [root-of-the-server]__1tefe1f5835t_._.js} +2 -2
  412. package/server/.next/server/chunks/[root-of-the-server]__1u1b3a58anm3f._.js +3 -0
  413. package/server/.next/server/chunks/[root-of-the-server]__1v-789ydxj30e._.js +3 -0
  414. package/server/.next/server/chunks/{[root-of-the-server]__132wlw6sbwt1d._.js → [root-of-the-server]__1vi0u2vkv3tk0._.js} +2 -2
  415. package/server/.next/server/chunks/{[root-of-the-server]__0j68ia9q425ff._.js → [root-of-the-server]__1w3svzao_gnxp._.js} +2 -2
  416. package/server/.next/server/chunks/[root-of-the-server]__1w_73psnce1dd._.js +3 -0
  417. package/server/.next/server/chunks/[root-of-the-server]__1x7ucdyxuh2_k._.js +3 -0
  418. package/server/.next/server/chunks/{[root-of-the-server]__08l1x_plf4dil._.js → [root-of-the-server]__1xdi98xyay6bn._.js} +1 -1
  419. package/server/.next/server/chunks/{[root-of-the-server]__18mztbxkzaxjs._.js → [root-of-the-server]__20_1nfa6fiz-q._.js} +2 -2
  420. package/server/.next/server/chunks/[root-of-the-server]__20b_clyk74g5u._.js +3 -0
  421. package/server/.next/server/chunks/[root-of-the-server]__20ev6t8zggct2._.js +3 -0
  422. package/server/.next/server/chunks/_004c7-39glldb._.js +4 -4
  423. package/server/.next/server/chunks/_008zv66xvj7ey._.js +37 -0
  424. package/server/.next/server/chunks/{_12uzjq-fbcuvb._.js → _01s3_8ssosvqi._.js} +1 -1
  425. package/server/.next/server/chunks/_03qlijpos6a21._.js +3 -0
  426. package/server/.next/server/chunks/_09l75j3ey14tc._.js +1 -1
  427. package/server/.next/server/chunks/_0a7533vs89s78._.js +7 -0
  428. package/server/.next/server/chunks/_0ejcrge5k4quv._.js +9 -9
  429. package/server/.next/server/chunks/_0k4iqzwm6w5_c._.js +37 -0
  430. package/server/.next/server/chunks/_0kmhvts35imzs._.js +1 -1
  431. package/server/.next/server/chunks/_0m1ll2r1g77ii._.js +1 -1
  432. package/server/.next/server/chunks/_0n-wbmmvp4omq._.js +3 -0
  433. package/server/.next/server/chunks/_0nt4hve0bi30h._.js +37 -0
  434. package/server/.next/server/chunks/_0op74d4yyc3ma._.js +1 -1
  435. package/server/.next/server/chunks/_0pf2g5n_ko5dq._.js +3 -0
  436. package/server/.next/server/chunks/_0qmi54vmnlwdv._.js +3 -3
  437. package/server/.next/server/chunks/_0qr77omrkuewo._.js +3 -0
  438. package/server/.next/server/chunks/_0rjh9w2ih3j2h._.js +3 -0
  439. package/server/.next/server/chunks/_0sy878k2ywjbq._.js +3 -0
  440. package/server/.next/server/chunks/_0tz4o-qufnu3l._.js +4 -4
  441. package/server/.next/server/chunks/_0voowig3y32v1._.js +1 -1
  442. package/server/.next/server/chunks/_0wxm_716tjorj._.js +3 -0
  443. package/server/.next/server/chunks/_0xf7mtsrkgc9e._.js +1 -1
  444. package/server/.next/server/chunks/_0zkmkbrbc96-h._.js +3 -0
  445. package/server/.next/server/chunks/_1-pw7jw52sbti._.js +3 -0
  446. package/server/.next/server/chunks/_103ai6ybnpq1k._.js +1 -1
  447. package/server/.next/server/chunks/_108e86rhye0o1._.js +1 -1
  448. package/server/.next/server/chunks/_10vh_l3hht4_3._.js +4 -4
  449. package/server/.next/server/chunks/_1476vtrt9101m._.js +1 -1
  450. package/server/.next/server/chunks/_14ymj3uzawde4._.js +7 -0
  451. package/server/.next/server/chunks/_15g-opioju_ju._.js +3 -0
  452. package/server/.next/server/chunks/_17aiz6zt-yv52._.js +1 -1
  453. package/server/.next/server/chunks/_1_son1yzo5xvl._.js +3 -0
  454. package/server/.next/server/chunks/_1b7pc6ohhqxs3._.js +9 -9
  455. package/server/.next/server/chunks/_1g_prqb_u33e3._.js +3 -3
  456. package/server/.next/server/chunks/_1i7qkrp3fnx1a._.js +37 -0
  457. package/server/.next/server/chunks/_1kcmwgs544mo-._.js +1 -1
  458. package/server/.next/server/chunks/_1lq5m27p-ilrw._.js +1 -1
  459. package/server/.next/server/chunks/_1luzeov9x87mg._.js +7 -0
  460. package/server/.next/server/chunks/_1mnwzh3z9y4th._.js +3 -0
  461. package/server/.next/server/chunks/_1nuf-l7izvfl_._.js +1 -1
  462. package/server/.next/server/chunks/{_1jz6k3wy_s8br._.js → _1p0ced3sr0i_8._.js} +1 -1
  463. package/server/.next/server/chunks/_1ptcxyn1tzm9r._.js +1 -1
  464. package/server/.next/server/chunks/_1v7q0xdxbqawm._.js +1 -1
  465. package/server/.next/server/chunks/_1zx_54or1pubb._.js +1 -1
  466. package/server/.next/server/chunks/node_modules_next_dist_1i-_xribpwttd._.js +313 -0
  467. package/server/.next/server/chunks/{src_0uxqs7150nhx2._.js → src_014zbodp4djeb._.js} +2 -2
  468. package/server/.next/server/chunks/src_01jp2f5qmh8e2._.js +3 -0
  469. package/server/.next/server/chunks/{src_0n42os1q41rha._.js → src_04pgj--n_d4w5._.js} +2 -2
  470. package/server/.next/server/chunks/src_063xvouojxyoa._.js +1 -1
  471. package/server/.next/server/chunks/src_088gmyaew7ds0._.js +3 -0
  472. package/server/.next/server/chunks/src_0c-owt8q0lyj3._.js +3 -0
  473. package/server/.next/server/chunks/{src_01wdnb4skk1wz._.js → src_0kwnhwi77unm7._.js} +2 -2
  474. package/server/.next/server/chunks/src_0o4-snj7wkaav._.js +1 -1
  475. package/server/.next/server/chunks/{src_0d-zi077mzm6v._.js → src_0xqorb3-ef3ub._.js} +2 -2
  476. package/server/.next/server/chunks/src_0y_4gogmeu-2k._.js +3 -0
  477. package/server/.next/server/chunks/src_1-xw4hea2lvb3._.js +1 -1
  478. package/server/.next/server/chunks/src_1a5yibsjcy1ga._.js +1 -1
  479. package/server/.next/server/chunks/src_1bqzr81r3wkvi._.js +3 -0
  480. package/server/.next/server/chunks/{src_03umyw-p7jhaj._.js → src_1dsh9rzlos6-1._.js} +2 -2
  481. package/server/.next/server/chunks/src_1hy7u0jtydq_d._.js +3 -0
  482. package/server/.next/server/chunks/src_1j2o14j0-23xv._.js +3 -0
  483. package/server/.next/server/chunks/src_1j71dvub05y-4._.js +3 -0
  484. package/server/.next/server/chunks/{src_1-r51arho90p7._.js → src_1no_yh953mran._.js} +2 -2
  485. package/server/.next/server/chunks/src_1s7yll47_n_hy._.js +3 -0
  486. package/server/.next/server/chunks/src_1tux0n9_5b1kr._.js +3 -3
  487. package/server/.next/server/chunks/src_1wduh0eckiwl1._.js +3 -0
  488. package/server/.next/server/chunks/src_1wzm081p6qyre._.js +3 -3
  489. package/server/.next/server/chunks/src_instrumentation-node_ts_1c--sr1k7_8k2._.js +3 -0
  490. package/server/.next/server/chunks/src_lib_08u7n7-yunfvd._.js +2 -2
  491. package/server/.next/server/chunks/src_lib_0cbs2jlrw1qbh._.js +3 -0
  492. package/server/.next/server/chunks/src_lib_0ds7lhpop_adf._.js +1 -1
  493. package/server/.next/server/chunks/src_lib_0glcfed-uogyd._.js +1 -1
  494. package/server/.next/server/chunks/src_lib_0oz4gm8agoidh._.js +6 -0
  495. package/server/.next/server/chunks/src_lib_0s_txig7jm3ty._.js +3 -3
  496. package/server/.next/server/chunks/src_lib_0ta8sd9jeuw50._.js +15 -0
  497. package/server/.next/server/chunks/src_lib_0x4n8swwa3zn7._.js +1 -1
  498. package/server/.next/server/chunks/src_lib_0y-obfzqjj0c6._.js +6 -0
  499. package/server/.next/server/chunks/src_lib_10_w0ihgmx4e6._.js +6 -0
  500. package/server/.next/server/chunks/src_lib_10vqn6q0h8kls._.js +2 -2
  501. package/server/.next/server/chunks/src_lib_13g9xjx8ci00z._.js +3 -0
  502. package/server/.next/server/chunks/src_lib_15wd7ab4u5nrn._.js +3 -3
  503. package/server/.next/server/chunks/src_lib_1en6omqx66g9d._.js +15 -0
  504. package/server/.next/server/chunks/src_lib_1p21oczr6lh5a._.js +3 -0
  505. package/server/.next/server/chunks/src_lib_1qo6t00wwitz6._.js +15 -0
  506. package/server/.next/server/chunks/src_lib_1sz77jjn7xl7o._.js +1 -1
  507. package/server/.next/server/chunks/src_lib_1tzoqx44yogsk._.js +2 -2
  508. package/server/.next/server/chunks/src_lib_1yd94hta5y1hx._.js +3 -0
  509. package/server/.next/server/chunks/src_lib_1yewk45thnv1h._.js +1 -1
  510. package/server/.next/server/chunks/src_lib_1z73euz6d3tus._.js +6 -0
  511. package/server/.next/server/chunks/src_lib_brand-env_ts_1wcm1bjuismq_._.js +3 -0
  512. package/server/.next/server/chunks/src_lib_collector_auth_ts_0lqx92__e4zij._.js +4 -4
  513. package/server/.next/server/chunks/src_lib_collector_runners_ts_12z4gtgikss74._.js +6 -6
  514. package/server/.next/server/chunks/src_lib_data_0ask_rbmgwlf3._.js +1 -1
  515. package/server/.next/server/chunks/src_lib_data_0e155tkqeoojm._.js +1 -1
  516. package/server/.next/server/chunks/src_lib_data_backup-db_ts_19rtzbv84xz_h._.js +2 -2
  517. package/server/.next/server/chunks/src_lib_data_logs-db_ts_1ddw07do12mmk._.js +1 -1
  518. package/server/.next/server/chunks/src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js +6 -0
  519. package/server/.next/server/chunks/src_lib_demo_pool_ts_0fpn8acsdk64i._.js +9 -9
  520. package/server/.next/server/chunks/src_lib_demo_pool_ts_14rjvkgozh1d4._.js +9 -9
  521. package/server/.next/server/chunks/src_lib_demo_pool_ts_17xz9bk-d5uic._.js +13 -13
  522. package/server/.next/server/chunks/src_lib_demo_pool_ts_210g_on8zx_-n._.js +9 -9
  523. package/server/.next/server/chunks/src_lib_notify_lang_ts_1r2w02ctaky7e._.js +1 -1
  524. package/server/.next/server/chunks/src_lib_providers_info_ts_02x6g30rg2hsp._.js +3 -0
  525. package/server/.next/server/chunks/src_lib_time_ts_1__07rt8x18k-._.js +3 -0
  526. package/server/.next/server/chunks/src_lib_time_ts_1a27wp71yhgti._.js +3 -0
  527. package/server/.next/server/chunks/src_lib_time_ts_1qlwgp7nprvbi._.js +3 -0
  528. package/server/.next/server/chunks/src_lib_view_databases_ts_0fdc7jkjvyrxi._.js +3 -0
  529. package/server/.next/server/chunks/src_private_ai_gateway_ts_04_5ao9914d0p._.js +1 -1
  530. package/server/.next/server/chunks/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
  531. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_agents_page_actions_1q6nc5chwn5k4.js +1 -1
  532. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_models_page_actions_0n_anax2l1jpu.js +1 -1
  533. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_playground_page_actions_1kyng_xuojdtb.js +1 -1
  534. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_quota_page_actions_04r4ro6x7-p7p.js +1 -1
  535. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_usage_page_actions_1fq9uugdpqa_l.js +1 -1
  536. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_auto-actions_page_actions_0mhtiq_5szpe0.js +1 -1
  537. package/server/.next/server/chunks/ssr/{[externals]__1u-jgivpw0_oh._.js → [externals]__0zvy4iicnrk95._.js} +1 -1
  538. package/server/.next/server/chunks/ssr/[root-of-the-server]__02cq5r26w4itc._.js +1 -1
  539. package/server/.next/server/chunks/ssr/[root-of-the-server]__02qyxz9eh8_eh._.js +1 -1
  540. package/server/.next/server/chunks/ssr/[root-of-the-server]__04ovk2bqwu87z._.js +3 -0
  541. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0aahjz4fnt4c_._.js → [root-of-the-server]__052_cprs0alpy._.js} +2 -2
  542. package/server/.next/server/chunks/ssr/{[root-of-the-server]__11-ssp_43878t._.js → [root-of-the-server]__0543ddliluvv3._.js} +2 -2
  543. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0ijk9z1ot_xi4._.js → [root-of-the-server]__08479d23kb1xv._.js} +2 -2
  544. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1csz822qejxk-._.js → [root-of-the-server]__08fqg76puqdfr._.js} +2 -2
  545. package/server/.next/server/chunks/ssr/[root-of-the-server]__09-0oydof-7uw._.js +1 -1
  546. package/server/.next/server/chunks/ssr/[root-of-the-server]__09nm_hn1c8zhf._.js +3 -0
  547. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0lks-6wz-rmk5._.js → [root-of-the-server]__0acmauri7z1sg._.js} +2 -2
  548. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ct71emqfru3b._.js +1 -1
  549. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1tkmutq84zkeh._.js → [root-of-the-server]__0e9m8up0h1qhl._.js} +2 -2
  550. package/server/.next/server/chunks/ssr/[root-of-the-server]__0h9gtpapca7i_._.js +3 -0
  551. package/server/.next/server/chunks/ssr/[root-of-the-server]__0hln97a4qcziv._.js +3 -0
  552. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ksvf4x4zcbpb._.js +1 -1
  553. package/server/.next/server/chunks/ssr/[root-of-the-server]__0lc7my3iqbrsu._.js +1 -1
  554. package/server/.next/server/chunks/ssr/[root-of-the-server]__0n7cj-oti5wct._.js +2 -2
  555. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ncef7_34ta3-._.js +1 -1
  556. package/server/.next/server/chunks/ssr/[root-of-the-server]__0op0kqh43wd-a._.js +3 -0
  557. package/server/.next/server/chunks/ssr/[root-of-the-server]__0wcnxr_g-bd3r._.js +1 -1
  558. package/server/.next/server/chunks/ssr/[root-of-the-server]__1-o_iq-ed9vc8._.js +1 -1
  559. package/server/.next/server/chunks/ssr/[root-of-the-server]__10bkg3o65q6r4._.js +1 -1
  560. package/server/.next/server/chunks/ssr/[root-of-the-server]__12qymdfh83hht._.js +3 -0
  561. package/server/.next/server/chunks/ssr/[root-of-the-server]__13oi70jo-u731._.js +2 -2
  562. package/server/.next/server/chunks/ssr/[root-of-the-server]__146kj3-h6fkaq._.js +1 -1
  563. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1fdzriy6yyu5d._.js → [root-of-the-server]__15n-r12rnj61t._.js} +1 -1
  564. package/server/.next/server/chunks/ssr/[root-of-the-server]__16o4p3l21rdq3._.js +3 -0
  565. package/server/.next/server/chunks/ssr/[root-of-the-server]__17kocbnwlcw6d._.js +1 -1
  566. package/server/.next/server/chunks/ssr/[root-of-the-server]__19_nr6j2w-in_._.js +3 -0
  567. package/server/.next/server/chunks/ssr/[root-of-the-server]__1_f7nip9age3d._.js +1 -1
  568. package/server/.next/server/chunks/ssr/[root-of-the-server]__1gw6334w8y2my._.js +1 -1
  569. package/server/.next/server/chunks/ssr/[root-of-the-server]__1i69oli51is1u._.js +1 -1
  570. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0ryb947ux5cq7._.js → [root-of-the-server]__1k1fmq0-rg3p0._.js} +2 -2
  571. package/server/.next/server/chunks/ssr/[root-of-the-server]__1lx2k37wgre3d._.js +1 -1
  572. package/server/.next/server/chunks/ssr/[root-of-the-server]__1owrn7crnsybx._.js +3 -0
  573. package/server/.next/server/chunks/ssr/[root-of-the-server]__1qltiqn0htqnx._.js +1 -1
  574. package/server/.next/server/chunks/ssr/[root-of-the-server]__1w1472ukyh58r._.js +1 -1
  575. package/server/.next/server/chunks/ssr/[root-of-the-server]__20ht054m5-_d6._.js +1 -1
  576. package/server/.next/server/chunks/ssr/_0-uwh2rwm_dic._.js +2 -2
  577. package/server/.next/server/chunks/ssr/_026w_ig6vy9bt._.js +1 -1
  578. package/server/.next/server/chunks/ssr/{_1wu_8nu5allm0._.js → _05kq3r87s7p3q._.js} +1 -1
  579. package/server/.next/server/chunks/ssr/_06kwu83_fmex9._.js +2 -2
  580. package/server/.next/server/chunks/ssr/_0_oc9q0vqkynd._.js +1 -1
  581. package/server/.next/server/chunks/ssr/_0_rtyc4t9xcdo._.js +1 -1
  582. package/server/.next/server/chunks/ssr/_0_tr9fol2yq33._.js +1 -1
  583. package/server/.next/server/chunks/ssr/_0_ul4mlc_pj5i._.js +2 -2
  584. package/server/.next/server/chunks/ssr/_0a22b7zsckifp._.js +1 -1
  585. package/server/.next/server/chunks/ssr/_0azq3ml4gbn1d._.js +1 -1
  586. package/server/.next/server/chunks/ssr/_0cukja7zcxh7e._.js +1 -1
  587. package/server/.next/server/chunks/ssr/_0cw4kz3d6kmb1._.js +1 -1
  588. package/server/.next/server/chunks/ssr/_0d702k82llasi._.js +1 -1
  589. package/server/.next/server/chunks/ssr/_0fnl7z-saj7nc._.js +1 -1
  590. package/server/.next/server/chunks/ssr/_0hykblvnwc2ar._.js +1 -1
  591. package/server/.next/server/chunks/ssr/_0i-e824vtomvg._.js +2 -2
  592. package/server/.next/server/chunks/ssr/_0jjoot3rhbde3._.js +2 -2
  593. package/server/.next/server/chunks/ssr/_0kn710rrv_o2t._.js +2 -2
  594. package/server/.next/server/chunks/ssr/_0m1ll2r1g77ii._.js +1 -1
  595. package/server/.next/server/chunks/ssr/_0mgclon6_oh87._.js +2 -2
  596. package/server/.next/server/chunks/ssr/{_18t7ov64ycb-w._.js → _0ooh0hh-r_12s._.js} +2 -2
  597. package/server/.next/server/chunks/ssr/_0oovfx_t_-u0k._.js +1 -1
  598. package/server/.next/server/chunks/ssr/{_14bz_443syxhi._.js → _0pn3dn9s9es51._.js} +2 -2
  599. package/server/.next/server/chunks/ssr/_0qnv1uc1_yv28._.js +2 -2
  600. package/server/.next/server/chunks/ssr/_0qo8tc43kjsf_._.js +1 -1
  601. package/server/.next/server/chunks/ssr/{_06_f735j-1i20._.js → _0r04c1-snv6jw._.js} +2 -2
  602. package/server/.next/server/chunks/ssr/_0sotiqakj-6ci._.js +1 -1
  603. package/server/.next/server/chunks/ssr/_0tcmsw8hszixv._.js +1 -1
  604. package/server/.next/server/chunks/ssr/{_0i6y4bkm-0cm3._.js → _0tnfblwwlyvq2._.js} +2 -2
  605. package/server/.next/server/chunks/ssr/_0uogspz6zrvwk._.js +2 -2
  606. package/server/.next/server/chunks/ssr/{_0o0-2ela2_qqd._.js → _0x1vi7mal3bqd._.js} +2 -2
  607. package/server/.next/server/chunks/ssr/_1-6d1tm3r_qwg._.js +1 -1
  608. package/server/.next/server/chunks/ssr/_10bven6gb1vj0._.js +1 -1
  609. package/server/.next/server/chunks/ssr/_10pz3ggun9s5i._.js +2 -2
  610. package/server/.next/server/chunks/ssr/_11w5w9dpxcf1w._.js +3 -0
  611. package/server/.next/server/chunks/ssr/_12ddramfkd6o1._.js +2 -2
  612. package/server/.next/server/chunks/ssr/_1476vtrt9101m._.js +1 -1
  613. package/server/.next/server/chunks/ssr/{_1p4i1e1kw70-_._.js → _14kop_5asppd8._.js} +2 -2
  614. package/server/.next/server/chunks/ssr/_15ft896zgt02e._.js +2 -2
  615. package/server/.next/server/chunks/ssr/_16t9k9e5cjvas._.js +1 -1
  616. package/server/.next/server/chunks/ssr/_18lgd6o04ugow._.js +2 -2
  617. package/server/.next/server/chunks/ssr/_19-3vzkc6rk97._.js +1 -1
  618. package/server/.next/server/chunks/ssr/_1_-o2s48aj4i7._.js +1 -1
  619. package/server/.next/server/chunks/ssr/{_08y82qdosn7ga._.js → _1_ojvke28lw3y._.js} +2 -2
  620. package/server/.next/server/chunks/ssr/_1b1ano88ar-gi._.js +2 -2
  621. package/server/.next/server/chunks/ssr/_1b4uqc9fwt4dy._.js +1 -1
  622. package/server/.next/server/chunks/ssr/_1boia2p3_0nsz._.js +2 -2
  623. package/server/.next/server/chunks/ssr/_1c28jitsyufnt._.js +1 -1
  624. package/server/.next/server/chunks/ssr/_1cl55h_h3q-b_._.js +1 -1
  625. package/server/.next/server/chunks/ssr/_1dx207la592b7._.js +2 -2
  626. package/server/.next/server/chunks/ssr/_1e24cpw3g7njr._.js +2 -2
  627. package/server/.next/server/chunks/ssr/_1flla16o7o9ba._.js +1 -1
  628. package/server/.next/server/chunks/ssr/_1g2zbl_-4z_hg._.js +1 -1
  629. package/server/.next/server/chunks/ssr/_1gl78598hz_ku._.js +1 -1
  630. package/server/.next/server/chunks/ssr/_1i77n2n-wb98v._.js +2 -2
  631. package/server/.next/server/chunks/ssr/_1j9cka-44jd65._.js +1 -1
  632. package/server/.next/server/chunks/ssr/_1jh_o2i8hj2g5._.js +1 -1
  633. package/server/.next/server/chunks/ssr/_1nir32qtr99-r._.js +1 -1
  634. package/server/.next/server/chunks/ssr/_1qt1czw3w8dww._.js +3 -0
  635. package/server/.next/server/chunks/ssr/_1sq12-1_02tzt._.js +2 -2
  636. package/server/.next/server/chunks/ssr/_1ybhu25y38395._.js +2 -2
  637. package/server/.next/server/chunks/ssr/_1ykxf4mi60jog._.js +2 -2
  638. package/server/.next/server/chunks/ssr/_1z6dy1k48mskn._.js +1 -1
  639. package/server/.next/server/chunks/ssr/_1zr0t31h18f2p._.js +3 -0
  640. package/server/.next/server/chunks/ssr/_20ln-4gu85-yt._.js +3 -0
  641. package/server/.next/server/chunks/ssr/_210edglbxmcb3._.js +2 -2
  642. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_keys_page_actions_1910ocjt__nlh.js +1 -1
  643. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_logs_page_actions_136-s4sxl6nra.js +1 -1
  644. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_alerts_page_actions_0f7cxitw-svnl.js +1 -1
  645. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_14l8--w36mywn.js +1 -1
  646. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_page_actions_1uaicj0j8stji.js +1 -1
  647. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_06a1fnrawxlh1.js +3 -0
  648. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_dns_page_actions_1p2deebbgom7b.js +1 -1
  649. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_domains_page_actions_0-wg58qcvu_rv.js +1 -1
  650. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_firebase_page_actions_215m-kkv06r4z.js +1 -1
  651. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_logs_page_actions_11-8xinblaop_.js +1 -1
  652. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_manage_sections_page_actions_0ven9q46d3d7s.js +3 -0
  653. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_settings_page_actions_1z3l1p4keed3m.js +1 -1
  654. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_supabase_page_actions_1evatil08dntl.js +1 -1
  655. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_uptime_page_actions_0k1237d-q3oc4.js +1 -1
  656. package/server/.next/server/chunks/ssr/_next-internal_server_app_account_password_page_actions_1v4e71_oifbx9.js +1 -1
  657. package/server/.next/server/chunks/ssr/_next-internal_server_app_signin_page_actions_11wzk446p6_zi.js +1 -1
  658. package/server/.next/server/chunks/ssr/node_modules_next_dist_0joxsz2q5dh6c._.js +2 -2
  659. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pz49shx663y1.js +3 -0
  660. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1b0g9w0uow3x5.js +1 -1
  661. package/server/.next/server/chunks/ssr/src_00wh1gv_h2pjs._.js +1 -1
  662. package/server/.next/server/chunks/ssr/src_00ze92e3aolj8._.js +1 -1
  663. package/server/.next/server/chunks/ssr/src_01jp2f5qmh8e2._.js +3 -0
  664. package/server/.next/server/chunks/ssr/src_025wo6h30c00a._.js +1 -1
  665. package/server/.next/server/chunks/ssr/src_06tjy8wljego8._.js +1 -1
  666. package/server/.next/server/chunks/ssr/src_084tdkx3c_yqi._.js +1 -1
  667. package/server/.next/server/chunks/ssr/src_09atx_ns_mlan._.js +1 -1
  668. package/server/.next/server/chunks/ssr/src_0_5_wl0sww-x7._.js +1 -1
  669. package/server/.next/server/chunks/ssr/src_0_kumjlw3o034._.js +1 -1
  670. package/server/.next/server/chunks/ssr/src_0abts6wp5ucc0._.js +1 -1
  671. package/server/.next/server/chunks/ssr/src_0dl7jkqqm313f._.js +3 -0
  672. package/server/.next/server/chunks/ssr/src_0f_ip1ke7i9r7._.js +3 -0
  673. package/server/.next/server/chunks/ssr/src_0fdfz--89117z._.js +1 -1
  674. package/server/.next/server/chunks/ssr/src_0ho313o5cu3-h._.js +1 -1
  675. package/server/.next/server/chunks/ssr/src_0iefnjvaszvw_._.js +1 -1
  676. package/server/.next/server/chunks/ssr/src_0loe22pbn4cuu._.js +1 -1
  677. package/server/.next/server/chunks/ssr/src_0nylfis4--x5j._.js +1 -1
  678. package/server/.next/server/chunks/ssr/src_0ohsn5qzqqds_._.js +1 -1
  679. package/server/.next/server/chunks/ssr/src_0p0fk07bj9gpq._.js +1 -1
  680. package/server/.next/server/chunks/ssr/src_0ph020gy78gi9._.js +1 -1
  681. package/server/.next/server/chunks/ssr/src_0t6-d5hmzrbp1._.js +1 -1
  682. package/server/.next/server/chunks/ssr/src_0uitfl3c1mdqb._.js +1 -1
  683. package/server/.next/server/chunks/ssr/src_0usxo7vu7o2cj._.js +1 -1
  684. package/server/.next/server/chunks/ssr/src_0widudneyf0oq._.js +1 -1
  685. package/server/.next/server/chunks/ssr/src_0xau6d5z5e_md._.js +1 -1
  686. package/server/.next/server/chunks/ssr/src_0xh3xicmff6ws._.js +1 -1
  687. package/server/.next/server/chunks/ssr/src_1-wu43p02yiel._.js +1 -1
  688. package/server/.next/server/chunks/ssr/src_1-xw4hea2lvb3._.js +1 -1
  689. package/server/.next/server/chunks/ssr/src_10zavgy86u3us._.js +1 -1
  690. package/server/.next/server/chunks/ssr/src_11iuy79j_finh._.js +3 -0
  691. package/server/.next/server/chunks/ssr/src_12x8sjp-qdw08._.js +1 -1
  692. package/server/.next/server/chunks/ssr/src_14aur12he3m2a._.js +1 -1
  693. package/server/.next/server/chunks/ssr/src_15aqc6akkqade._.js +1 -1
  694. package/server/.next/server/chunks/ssr/src_15zqi72ky6hi9._.js +1 -1
  695. package/server/.next/server/chunks/ssr/src_19evuexp67uty._.js +1 -1
  696. package/server/.next/server/chunks/ssr/src_1am4_ady64k2b._.js +1 -1
  697. package/server/.next/server/chunks/ssr/src_1cbawr4iw5h-x._.js +1 -1
  698. package/server/.next/server/chunks/ssr/src_1ccrc8twenijg._.js +1 -1
  699. package/server/.next/server/chunks/ssr/src_1ctx1an_a3k7g._.js +1 -1
  700. package/server/.next/server/chunks/ssr/src_1iyzhhf1u_gwo._.js +3 -0
  701. package/server/.next/server/chunks/ssr/{src_1eermasnm2cgy._.js → src_1ottjkdvhje3g._.js} +2 -2
  702. package/server/.next/server/chunks/ssr/src_1sdwdnblbiq_g._.js +1 -1
  703. package/server/.next/server/chunks/ssr/src_1xsg-zd4lt_d4._.js +1 -1
  704. package/server/.next/server/chunks/ssr/src_1y0xvj1obxu7i._.js +1 -1
  705. package/server/.next/server/chunks/ssr/src_1zpftf1xj-30l._.js +1 -1
  706. package/server/.next/server/chunks/ssr/src_20hs1ilkxmap0._.js +1 -1
  707. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_agents_1fyhh1ldgm23z._.js +1 -1
  708. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_agents_1lhfs18es1mqc._.js +1 -1
  709. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_agents_loading_tsx_1qyzywm3br5h2._.js +1 -1
  710. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_ask_06n-9cjmbb-vu._.js +1 -1
  711. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_ask_ask-form_tsx_18ttm9nna_9y6._.js +1 -1
  712. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_ask_loading_tsx_1niopfalguzs6._.js +1 -1
  713. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_connect_connect-view_tsx_04abz05n7hdsd._.js +15 -15
  714. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_connect_loading_tsx_0q7g8dpf7-vgo._.js +1 -1
  715. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_keys_04ypt31p11eq7._.js +1 -1
  716. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_keys_loading_tsx_1hc7x_jx0xx0_._.js +1 -1
  717. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_logs_0261l8yb2z9x1._.js +1 -1
  718. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_logs_export-button_tsx_1k-crb88n1za_._.js +1 -1
  719. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_logs_loading_tsx_1dwhza0ud8asg._.js +1 -1
  720. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_models_0ayzqn062pnv5._.js +1 -1
  721. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_models_0hla-5y3iresx._.js +1 -1
  722. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_models_loading_tsx_1qtp-lo_o41cr._.js +1 -1
  723. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_playground_1o1z2qp3tik5x._.js +1 -1
  724. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_playground_loading_tsx_02umaieh-00pu._.js +1 -1
  725. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_playground_playground-view_tsx_18ua5zn_a0mar._.js +1 -1
  726. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_providers_0jamu-nm6x-dh._.js +1 -1
  727. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_providers_1ru-30x6-uwu4._.js +1 -1
  728. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_providers_loading_tsx_0u2pi0tk7s3ch._.js +1 -1
  729. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_1kor9sy67qpiw._.js +1 -1
  730. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_limits-form_tsx_1vouaaf560z_x._.js +1 -1
  731. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_loading_tsx_1hhnum-g2eq3n._.js +1 -1
  732. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_1v003vrkwk19w._.js +1 -1
  733. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_limits-form_tsx_0sfk3ver58rqw._.js +1 -1
  734. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_loading_tsx_0pjvu-xuxbxmh._.js +1 -1
  735. package/server/.next/server/chunks/ssr/{src_app_(console)_1ppp9j5e2rtqf._.js → src_app_(console)_1l7irblrb5fae._.js} +2 -2
  736. package/server/.next/server/chunks/ssr/src_app_(console)_[___slug]_page_tsx_0b007i3c1v_vg._.js +1 -1
  737. package/server/.next/server/chunks/ssr/src_app_(console)_alerts_0j5xlt68kwg8x._.js +1 -1
  738. package/server/.next/server/chunks/ssr/src_app_(console)_alerts_1t61z2wktki-v._.js +1 -1
  739. package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_088bs149wsgca._.js +1 -1
  740. package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_1sfvku9ui1le-._.js +1 -1
  741. package/server/.next/server/chunks/ssr/src_app_(console)_backups_actions_ts_1vpytsdh0wc1f._.js +1 -1
  742. package/server/.next/server/chunks/ssr/src_app_(console)_backups_drive-buttons_tsx_00cku5r_z3jkg._.js +1 -1
  743. package/server/.next/server/chunks/ssr/src_app_(console)_backups_page_tsx_0o082iagq_14b._.js +1 -1
  744. package/server/.next/server/chunks/ssr/src_app_(console)_catalog_page_tsx_1u2_-bv4yi5oo._.js +1 -1
  745. package/server/.next/server/chunks/ssr/src_app_(console)_connections_02upf_c41dauw._.js +3 -0
  746. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fahc65-97qla._.js +1 -1
  747. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fmp_anbkapur._.js +3 -0
  748. package/server/.next/server/chunks/ssr/src_app_(console)_connections_actions_ts_103blv4gzq76z._.js +1 -1
  749. package/server/.next/server/chunks/ssr/src_app_(console)_create_actions_ts_05-86qr6kfjey._.js +1 -1
  750. package/server/.next/server/chunks/ssr/src_app_(console)_d1_page_tsx_167hwnq_9uh81._.js +1 -1
  751. package/server/.next/server/chunks/ssr/src_app_(console)_dns_0d1uyir4fe7pc._.js +1 -1
  752. package/server/.next/server/chunks/ssr/src_app_(console)_dns_actions_ts_1jzn58xzwbukz._.js +1 -1
  753. package/server/.next/server/chunks/ssr/src_app_(console)_dns_record-actions_tsx_0cqmz51zcuebv._.js +1 -1
  754. package/server/.next/server/chunks/ssr/src_app_(console)_domains_1ut499n11u8_r._.js +1 -1
  755. package/server/.next/server/chunks/ssr/src_app_(console)_firebase_page_tsx_0g20hm13dvbc-._.js +1 -1
  756. package/server/.next/server/chunks/ssr/src_app_(console)_logs_log-viewer_tsx_0v3e4cflfk14w._.js +1 -1
  757. package/server/.next/server/chunks/ssr/src_app_(console)_manage_sections_17htk-vea5fna._.js +3 -0
  758. package/server/.next/server/chunks/ssr/src_app_(console)_manage_sections_section-switch_tsx_1mfs-o_357i22._.js +3 -0
  759. package/server/.next/server/chunks/ssr/src_app_(console)_monitor-actions_ts_10w3h7myk2ppi._.js +1 -1
  760. package/server/.next/server/chunks/ssr/src_app_(console)_neon_1ubea__gt06o0._.js +1 -1
  761. package/server/.next/server/chunks/ssr/src_app_(console)_palette-action_ts_0zyw9a9imev6p._.js +1 -1
  762. package/server/.next/server/chunks/ssr/src_app_(console)_repos_[id]_page_tsx_1nkxthc4ethrj._.js +1 -1
  763. package/server/.next/server/chunks/ssr/src_app_(console)_repos_repo-list_tsx_1n1gcm4qfrfdt._.js +1 -1
  764. package/server/.next/server/chunks/ssr/src_app_(console)_sql_16-sh45tpob8n._.js +1 -1
  765. package/server/.next/server/chunks/ssr/src_app_(console)_sql_1icfsti04djqe._.js +2 -2
  766. package/server/.next/server/chunks/ssr/src_app_(console)_sql_actions_ts_1oqco02hw-3vp._.js +1 -1
  767. package/server/.next/server/chunks/ssr/src_app_(console)_status_page_tsx_1zvj799nv4kah._.js +1 -1
  768. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_0ib3m2ch9gu-4._.js +1 -1
  769. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_1ofufib3-zzt-._.js +1 -1
  770. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_pool-actions_ts_0nzd4vwy_9zzx._.js +1 -1
  771. package/server/.next/server/chunks/ssr/src_app_(console)_uptime_148phfjye0539._.js +1 -1
  772. package/server/.next/server/chunks/ssr/src_app_(console)_uptime_1mnnkfi-2zv-k._.js +1 -1
  773. package/server/.next/server/chunks/ssr/src_app_(console)_vercel-actions_ts_0wpk1yo9v632d._.js +1 -1
  774. package/server/.next/server/chunks/ssr/src_app_(console)_welcome_page_tsx_1bw0x0riq-oem._.js +1 -1
  775. package/server/.next/server/chunks/ssr/src_app_mfa_setup_setup-flow_tsx_1fpwygr2vdgnh._.js +1 -1
  776. package/server/.next/server/chunks/ssr/src_app_s_[slug]_page_tsx_0jjqe6py82mpb._.js +1 -1
  777. package/server/.next/server/chunks/ssr/src_app_setup_setup-form_tsx_0izoagdur96e1._.js +1 -1
  778. package/server/.next/server/chunks/ssr/{src_app_signin_124xn9wb2fasu._.js → src_app_signin_1tg6pswa99jbe._.js} +2 -2
  779. package/server/.next/server/chunks/ssr/src_components_11x625pqq9ovs._.js +3 -0
  780. package/server/.next/server/chunks/ssr/src_components_create_create-dialog_tsx_1s_9clly_m1ru._.js +1 -1
  781. package/server/.next/server/chunks/ssr/src_components_ui_dialog_tsx_1tn-i_6d3rhzt._.js +1 -1
  782. package/server/.next/server/chunks/ssr/src_lib_005l0kcpyu43o._.js +3 -3
  783. package/server/.next/server/chunks/ssr/src_lib_05ai1oj91p9w2._.js +2 -2
  784. package/server/.next/server/chunks/ssr/src_lib_0x4n8swwa3zn7._.js +1 -1
  785. package/server/.next/server/chunks/ssr/src_lib_1nkahiclbn55q._.js +1 -1
  786. package/server/.next/server/chunks/ssr/{src_lib_1l8ej-zoyyegd._.js → src_lib_1p21oczr6lh5a._.js} +2 -2
  787. package/server/.next/server/chunks/ssr/src_lib_1yewk45thnv1h._.js +1 -1
  788. package/server/.next/server/chunks/ssr/src_lib_collector_run_ts_0-q8is8s0y9cq._.js +3 -3
  789. package/server/.next/server/chunks/ssr/src_lib_copy_edition_ts_1y6lsdbj64t9p._.js +1 -1
  790. package/server/.next/server/chunks/ssr/src_lib_data_keep-active-db_ts_0p07g9b74uu3e._.js +1 -1
  791. package/server/.next/server/chunks/ssr/src_lib_data_logs-db_ts_1ddw07do12mmk._.js +1 -1
  792. package/server/.next/server/chunks/ssr/src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js +6 -0
  793. package/server/.next/server/chunks/ssr/{src_lib_demo_20hj85e_64pp1._.js → src_lib_demo_0hdl7pzdqejqx._.js} +2 -2
  794. package/server/.next/server/chunks/ssr/src_lib_demo_pool_ts_0fpn8acsdk64i._.js +9 -9
  795. package/server/.next/server/chunks/ssr/src_lib_providers_info_ts_02x6g30rg2hsp._.js +3 -0
  796. package/server/.next/server/chunks/ssr/src_lib_time_ts_1qlwgp7nprvbi._.js +3 -0
  797. package/server/.next/server/chunks/ssr/src_lib_time_ts_1ualgyi3irm1z._.js +3 -0
  798. package/server/.next/server/chunks/ssr/src_private_0iy_wyg2p1jkn._.js +1 -1
  799. package/server/.next/server/chunks/ssr/src_private_actions_decide-form_tsx_1hngtxpyle3v8._.js +1 -1
  800. package/server/.next/server/chunks/ssr/src_private_ai_gateway_ts_04_5ao9914d0p._.js +1 -1
  801. package/server/.next/server/chunks/ssr/src_private_ai_providers_actions_ts_0wxa36ai6s5nn._.js +1 -1
  802. package/server/.next/server/chunks/ssr/src_private_ai_usage-analytics_ts_1bxba3xarzol0._.js +1 -1
  803. package/server/.next/server/chunks/ssr/src_private_ai_views-db_ts_1jbnr41mskha2._.js +1 -1
  804. package/server/.next/server/chunks/ssr/src_private_assist_advisor-notes_ts_0qkpm5c3la7fo._.js +3 -3
  805. package/server/.next/server/chunks/ssr/src_private_explorer_explorer_tsx_04m_tdottspjs._.js +1 -1
  806. package/server/.next/server/chunks/ssr/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
  807. package/server/.next/server/middleware-build-manifest.js +116 -105
  808. package/server/.next/server/next-font-manifest.js +1 -1
  809. package/server/.next/server/next-font-manifest.json +4 -0
  810. package/server/.next/server/pages/404.html +1 -1
  811. package/server/.next/server/pages/500.html +1 -1
  812. package/server/.next/server/preview-props.json +3 -3
  813. package/server/.next/server/server-reference-manifest.js +1 -1
  814. package/server/.next/server/server-reference-manifest.json +210 -164
  815. package/server/.next/static/chunks/08dak2kh1c6_7.js +1 -0
  816. package/server/.next/static/chunks/{2v14aqfx8wv9o.js → 0b9slopuz4e8a.js} +1 -1
  817. package/server/.next/static/chunks/{36ureqoyz5e06.js → 0dp-tuwkw7xf8.js} +2 -2
  818. package/server/.next/static/chunks/0fhj_pu5ntcfo.js +1 -0
  819. package/server/.next/static/chunks/{2k9ytb8jmg14_.js → 0h9i512dn01kj.js} +1 -1
  820. package/server/.next/static/chunks/0ic6_-0gkd6p7.js +1 -0
  821. package/server/.next/static/chunks/0icohez16w-ei.js +1 -0
  822. package/server/.next/static/chunks/{1ieazx9t3vl5p.js → 0j1wzqg4ukm70.js} +1 -1
  823. package/server/.next/static/chunks/{43_va15lk2zc1.js → 0j_5norjm-kef.js} +1 -1
  824. package/server/.next/static/chunks/{1-1hfgat2l_o9.js → 0kscmnb071fci.js} +1 -1
  825. package/server/.next/static/chunks/{0c7pskzfstcdh.js → 0ld78j1d4j201.js} +1 -1
  826. package/server/.next/static/chunks/0qlb-l1uyqku5.js +1 -0
  827. package/server/.next/static/chunks/0udh0u8c6ovgf.css +3 -0
  828. package/server/.next/static/chunks/0y1ss0tjq0nq0.js +1 -0
  829. package/server/.next/static/chunks/{1ts_fd_r1kcrv.js → 1-oetq3mwlhds.js} +1 -1
  830. package/server/.next/static/chunks/{2fj4o7-stsvht.js → 11ywzwmfd_pt0.js} +1 -1
  831. package/server/.next/static/chunks/1j18pg23fzwv_.js +1 -0
  832. package/server/.next/static/chunks/1jaozq01v9r6e.js +1 -0
  833. package/server/.next/static/chunks/1ky5exl-c1kbo.js +1 -0
  834. package/server/.next/static/chunks/{0cannaigw8lhi.js → 1lsu_fxiyaeiz.js} +1 -1
  835. package/server/.next/static/chunks/1o3_amrh-sxr3.js +1 -0
  836. package/server/.next/static/chunks/{0wtboeftyamyk.js → 1w9o_jo_pejc5.js} +1 -1
  837. package/server/.next/static/chunks/1xy80z39ducub.js +1 -0
  838. package/server/.next/static/chunks/1yvbs41m8_4nc.js +7 -0
  839. package/server/.next/static/chunks/22alexnun_rdm.js +1 -0
  840. package/server/.next/static/chunks/{1o_q7_4ulcq9x.js → 27qwmt1w6-iri.js} +1 -1
  841. package/server/.next/static/chunks/29humkd2-_1oo.js +1 -0
  842. package/server/.next/static/chunks/29j96yfhxsf41.js +1 -0
  843. package/server/.next/static/chunks/29qnnsjsgsia6.js +1 -0
  844. package/server/.next/static/chunks/{2cjfogw85k3h-.js → 2ii8j9xuvv604.js} +1 -1
  845. package/server/.next/static/chunks/{30fczssqw6xys.js → 2m0ftj__ody0m.js} +1 -1
  846. package/server/.next/static/chunks/{201zah03wlibg.js → 2q88116332v43.js} +1 -1
  847. package/server/.next/static/chunks/2rbtw3em5hkt4.js +1 -0
  848. package/server/.next/static/chunks/2sdyov_lz1uj4.js +1 -0
  849. package/server/.next/static/chunks/{0li9-xjc40g51.js → 2toeyr9b_nk0e.js} +1 -1
  850. package/server/.next/static/chunks/{2fo6iuxb0ec7f.js → 2w7qxt7ux-m1-.js} +1 -1
  851. package/server/.next/static/chunks/{1gmof0n5nswkk.js → 2zc1osymeruya.js} +1 -1
  852. package/server/.next/static/chunks/33fbppn5fotpk.js +1 -0
  853. package/server/.next/static/chunks/{026asl66kuq3f.js → 340ecjh1jzqjd.js} +15 -15
  854. package/server/.next/static/chunks/3auw1gobgv94g.js +1 -0
  855. package/server/.next/static/chunks/3b1p-xm7iow1_.js +1 -0
  856. package/server/.next/static/chunks/{3tqh7fwtd_k_l.js → 3gl2k6v182lli.js} +2 -2
  857. package/server/.next/static/chunks/{3f5sxz8awpdog.js → 3gurl_36kr7sg.js} +1 -1
  858. package/server/.next/static/chunks/{1gb8jvw-g7fr7.js → 3h-i_hcaaf7vs.js} +1 -1
  859. package/server/.next/static/chunks/{2jlv5ekbb0wu2.js → 3kznplgmzot89.js} +1 -1
  860. package/server/.next/static/chunks/{0du6qnm4ee-qx.js → 3mb_v650fie_i.js} +1 -1
  861. package/server/.next/static/chunks/{3dokgd9nungcr.js → 3n_n6yeienmn-.js} +1 -1
  862. package/server/.next/static/chunks/3nqciag05fif0.js +1 -0
  863. package/server/.next/static/chunks/{1zi37go-xtasg.js → 3o45i7xbzm0w-.js} +1 -1
  864. package/server/.next/static/chunks/{1c4fx4kipvnqz.js → 3oe302ug_esoe.js} +1 -1
  865. package/server/.next/static/chunks/3r3mt51wqymgs.js +1 -0
  866. package/server/.next/static/chunks/3sg_npfod25zq.js +1 -0
  867. package/server/.next/static/chunks/{2rdmebof0d_c4.js → 3shbvizselyoq.js} +1 -1
  868. package/server/.next/static/chunks/3xxagngfonh62.js +1 -0
  869. package/server/.next/static/chunks/{2z1xy8l4s3usi.js → 3yv-enyk37whg.js} +1 -1
  870. package/server/node_modules/@next/env/package.json +1 -1
  871. package/server/node_modules/next/dist/build/analyze/snapshot.js +1 -1
  872. package/server/node_modules/next/dist/build/index.js +3 -3
  873. package/server/node_modules/next/dist/build/swc/index.js +1 -1
  874. package/server/node_modules/next/dist/build/turbopack-analyze/index.js +1 -1
  875. package/server/node_modules/next/dist/build/turbopack-build/impl.js +1 -1
  876. package/server/node_modules/next/dist/build/webpack-config.js +3 -3
  877. package/server/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +2 -2
  878. package/server/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +2 -2
  879. package/server/node_modules/next/dist/compiled/next-server/app-route-turbo.runtime.prod.js +1 -1
  880. package/server/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
  881. package/server/node_modules/next/dist/server/app-render/async-local-storage.js +1 -1
  882. package/server/node_modules/next/dist/server/config.js +1 -1
  883. package/server/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +2 -2
  884. package/server/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  885. package/server/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  886. package/server/node_modules/next/dist/server/lib/generate-agent-files.js +3 -3
  887. package/server/node_modules/next/dist/server/lib/router-server.js +1 -1
  888. package/server/node_modules/next/dist/server/lib/start-server.js +1 -1
  889. package/server/node_modules/next/dist/server/lib/trace/tracer.js +1 -1
  890. package/server/node_modules/next/dist/server/typescript/rules/config.js +2 -2
  891. package/server/node_modules/next/dist/server/use-cache/use-cache-wrapper.js +1 -1
  892. package/server/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  893. package/server/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
  894. package/server/node_modules/next/dist/telemetry/events/version.js +2 -2
  895. package/server/node_modules/next/package.json +11 -11
  896. package/server/.next/server/chunks/[root-of-the-server]__03zcy67tjxii8._.js +0 -3
  897. package/server/.next/server/chunks/[root-of-the-server]__08j1jeemvo-th._.js +0 -3
  898. package/server/.next/server/chunks/[root-of-the-server]__08n3x1x850wqc._.js +0 -3
  899. package/server/.next/server/chunks/[root-of-the-server]__0b_bj-_t8b0b-._.js +0 -3
  900. package/server/.next/server/chunks/[root-of-the-server]__0grnl7ncqcjft._.js +0 -3
  901. package/server/.next/server/chunks/[root-of-the-server]__0hju4mctdmvz9._.js +0 -3
  902. package/server/.next/server/chunks/[root-of-the-server]__0i3n8l6ecdb4u._.js +0 -3
  903. package/server/.next/server/chunks/[root-of-the-server]__0m8w2-7618scn._.js +0 -3
  904. package/server/.next/server/chunks/[root-of-the-server]__0p_b0m2cstlrl._.js +0 -3
  905. package/server/.next/server/chunks/[root-of-the-server]__0uyagcs61c0t_._.js +0 -3
  906. package/server/.next/server/chunks/[root-of-the-server]__0v1kcolrxwmob._.js +0 -3
  907. package/server/.next/server/chunks/[root-of-the-server]__0vctt_0kj1gz4._.js +0 -3
  908. package/server/.next/server/chunks/[root-of-the-server]__0x0x6v75re5_e._.js +0 -3
  909. package/server/.next/server/chunks/[root-of-the-server]__0xyzhdj3z_1ro._.js +0 -3
  910. package/server/.next/server/chunks/[root-of-the-server]__0ymon9r-17xe_._.js +0 -3
  911. package/server/.next/server/chunks/[root-of-the-server]__0zxjft8y2r575._.js +0 -3
  912. package/server/.next/server/chunks/[root-of-the-server]__114vjjaqb2wyv._.js +0 -3
  913. package/server/.next/server/chunks/[root-of-the-server]__12uyws-qe6wxs._.js +0 -3
  914. package/server/.next/server/chunks/[root-of-the-server]__139pgc0wpc7kg._.js +0 -3
  915. package/server/.next/server/chunks/[root-of-the-server]__157yb_wl7w4ly._.js +0 -3
  916. package/server/.next/server/chunks/[root-of-the-server]__16dyxwm6pzumx._.js +0 -3
  917. package/server/.next/server/chunks/[root-of-the-server]__18qf1s7o0ia89._.js +0 -3
  918. package/server/.next/server/chunks/[root-of-the-server]__1951xb3jdzdop._.js +0 -3
  919. package/server/.next/server/chunks/[root-of-the-server]__1_5q9zgl6p5_3._.js +0 -3
  920. package/server/.next/server/chunks/[root-of-the-server]__1a9cd4d9ohf69._.js +0 -3
  921. package/server/.next/server/chunks/[root-of-the-server]__1bwgi7nn5-hc3._.js +0 -3
  922. package/server/.next/server/chunks/[root-of-the-server]__1hxhj2o7lea8i._.js +0 -3
  923. package/server/.next/server/chunks/[root-of-the-server]__1i4bqqne6vibf._.js +0 -3
  924. package/server/.next/server/chunks/[root-of-the-server]__1i83m8i-3yn72._.js +0 -3
  925. package/server/.next/server/chunks/[root-of-the-server]__1jrcnhad_b53j._.js +0 -3
  926. package/server/.next/server/chunks/[root-of-the-server]__1k8s02gwythps._.js +0 -3
  927. package/server/.next/server/chunks/[root-of-the-server]__1lf_lo1wqcbcg._.js +0 -3
  928. package/server/.next/server/chunks/[root-of-the-server]__1n32c8l_j8jt4._.js +0 -3
  929. package/server/.next/server/chunks/[root-of-the-server]__1niiijc82bgoj._.js +0 -3
  930. package/server/.next/server/chunks/[root-of-the-server]__1on_3p53yn6fs._.js +0 -3
  931. package/server/.next/server/chunks/[root-of-the-server]__1pgtip37umn35._.js +0 -3
  932. package/server/.next/server/chunks/[root-of-the-server]__1q90luznbe9-l._.js +0 -3
  933. package/server/.next/server/chunks/[root-of-the-server]__1r15vmrh2r06l._.js +0 -3
  934. package/server/.next/server/chunks/[root-of-the-server]__1rl43iilsc-je._.js +0 -3
  935. package/server/.next/server/chunks/[root-of-the-server]__1ta7-xvmtkjwr._.js +0 -3
  936. package/server/.next/server/chunks/[root-of-the-server]__1voiad6r-u931._.js +0 -3
  937. package/server/.next/server/chunks/[root-of-the-server]__1wlilsfzjqdw9._.js +0 -3
  938. package/server/.next/server/chunks/[root-of-the-server]__1woerg3tb4ls3._.js +0 -3
  939. package/server/.next/server/chunks/[root-of-the-server]__1wonw7ft4hset._.js +0 -3
  940. package/server/.next/server/chunks/[root-of-the-server]__1zaomh_4901_f._.js +0 -3
  941. package/server/.next/server/chunks/[root-of-the-server]__20lwsd6a4wnpe._.js +0 -3
  942. package/server/.next/server/chunks/_01vdbh009dk-w._.js +0 -5
  943. package/server/.next/server/chunks/_03bua_9n4apok._.js +0 -3
  944. package/server/.next/server/chunks/_0594j_bb0l80e._.js +0 -3
  945. package/server/.next/server/chunks/_076dwl7r_5vcl._.js +0 -34
  946. package/server/.next/server/chunks/_08tppw9ujlpke._.js +0 -34
  947. package/server/.next/server/chunks/_08y82qdosn7ga._.js +0 -3
  948. package/server/.next/server/chunks/_0m49djgc1t4wg._.js +0 -3
  949. package/server/.next/server/chunks/_0n5m3o7at0adm._.js +0 -34
  950. package/server/.next/server/chunks/_0qawxzcf--lyq._.js +0 -4
  951. package/server/.next/server/chunks/_0r4am1mgz4dg_._.js +0 -3
  952. package/server/.next/server/chunks/_0s30ac32b7prb._.js +0 -3
  953. package/server/.next/server/chunks/_0vfrh5u-u4mis._.js +0 -3
  954. package/server/.next/server/chunks/_0vgojnnkcf1vu._.js +0 -4
  955. package/server/.next/server/chunks/_0vz0de4gz70-e._.js +0 -4
  956. package/server/.next/server/chunks/_1-mixh9aeqh7f._.js +0 -3
  957. package/server/.next/server/chunks/_11p2ejgai2a78._.js +0 -3
  958. package/server/.next/server/chunks/_1bcsmpznxhk9h._.js +0 -3
  959. package/server/.next/server/chunks/_1he3nioua8ee5._.js +0 -3
  960. package/server/.next/server/chunks/_1l82x0z8bo4pt._.js +0 -3
  961. package/server/.next/server/chunks/_1lpcbqj4uzrsh._.js +0 -3
  962. package/server/.next/server/chunks/_1rw6_0nf-3sxs._.js +0 -34
  963. package/server/.next/server/chunks/src_0d5xqe2zx_935._.js +0 -3
  964. package/server/.next/server/chunks/src_0l-no1yc1_izn._.js +0 -3
  965. package/server/.next/server/chunks/src_0v4pdrc1yxyl8._.js +0 -3
  966. package/server/.next/server/chunks/src_0vva87j3z99p9._.js +0 -3
  967. package/server/.next/server/chunks/src_156ewlek-4a4z._.js +0 -3
  968. package/server/.next/server/chunks/src_1zo6so07lgcdj._.js +0 -3
  969. package/server/.next/server/chunks/src_db_rows_ts_15b286wn1kn1e._.js +0 -3
  970. package/server/.next/server/chunks/src_lib_0-ylqsh7whlj2._.js +0 -3
  971. package/server/.next/server/chunks/src_lib_0485hz-c7h7dr._.js +0 -15
  972. package/server/.next/server/chunks/src_lib_0f0p6-l5vvduu._.js +0 -3
  973. package/server/.next/server/chunks/src_lib_0qcyomi01xvf1._.js +0 -15
  974. package/server/.next/server/chunks/src_lib_15a3m-j_urkkp._.js +0 -3
  975. package/server/.next/server/chunks/src_lib_1d6edz_ucj01w._.js +0 -3
  976. package/server/.next/server/chunks/src_lib_1ryt-36ohhnm6._.js +0 -15
  977. package/server/.next/server/chunks/src_lib_1suc_xwzxtuej._.js +0 -3
  978. package/server/.next/server/chunks/src_lib_1uh73ofc-pe92._.js +0 -3
  979. package/server/.next/server/chunks/src_private_1yzfhupl3rlpx._.js +0 -6
  980. package/server/.next/server/chunks/ssr/[root-of-the-server]__004r8ubf3fp_i._.js +0 -3
  981. package/server/.next/server/chunks/ssr/[root-of-the-server]__06s-dfcfuperv._.js +0 -3
  982. package/server/.next/server/chunks/ssr/[root-of-the-server]__07or1m2vwon1m._.js +0 -3
  983. package/server/.next/server/chunks/ssr/[root-of-the-server]__0d9lwldljqtvx._.js +0 -3
  984. package/server/.next/server/chunks/ssr/[root-of-the-server]__0q36f5xjkzf4z._.js +0 -3
  985. package/server/.next/server/chunks/ssr/[root-of-the-server]__0uklr553mp86_._.js +0 -3
  986. package/server/.next/server/chunks/ssr/[root-of-the-server]__1cykncw1_xcno._.js +0 -3
  987. package/server/.next/server/chunks/ssr/[root-of-the-server]__1ih2a_fbqu7ko._.js +0 -3
  988. package/server/.next/server/chunks/ssr/[root-of-the-server]__1j7_a902k_8es._.js +0 -3
  989. package/server/.next/server/chunks/ssr/[root-of-the-server]__1ofzjllv-b0o0._.js +0 -3
  990. package/server/.next/server/chunks/ssr/_040ixxsgfs0vi._.js +0 -3
  991. package/server/.next/server/chunks/ssr/_04e0uk5aqrgc3._.js +0 -3
  992. package/server/.next/server/chunks/ssr/_0ux6eo_w1x155._.js +0 -3
  993. package/server/.next/server/chunks/ssr/_12o9qqjoik4q4._.js +0 -3
  994. package/server/.next/server/chunks/ssr/_1k2q3yt1h6cfs._.js +0 -3
  995. package/server/.next/server/chunks/ssr/_1zhtvg8t3jtxe._.js +0 -3
  996. package/server/.next/server/chunks/ssr/_200p6me5_kp2j._.js +0 -3
  997. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_03amng1-xhfd1.js +0 -3
  998. package/server/.next/server/chunks/ssr/src_00s82lfm2ga7-._.js +0 -3
  999. package/server/.next/server/chunks/ssr/src_13hsrg6rdvh-d._.js +0 -3
  1000. package/server/.next/server/chunks/ssr/src_1xgsz_do2xpr2._.js +0 -3
  1001. package/server/.next/server/chunks/ssr/src_app_(console)_connections_0gm1y-wtw5gyd._.js +0 -3
  1002. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1qigx20w8bk53._.js +0 -3
  1003. package/server/.next/server/chunks/ssr/src_components_shell_shell_tsx_1cpq-hbch_dvj._.js +0 -3
  1004. package/server/.next/server/chunks/ssr/src_lib_0y40wht-o-oc2._.js +0 -3
  1005. package/server/.next/server/chunks/ssr/src_lib_data_settings-db_ts_1to3jtggxlaz4._.js +0 -3
  1006. package/server/.next/static/chunks/03qto0oyf2r1n.js +0 -1
  1007. package/server/.next/static/chunks/0dmi-v53phuqn.js +0 -1
  1008. package/server/.next/static/chunks/0n_l4a3za5-q8.js +0 -1
  1009. package/server/.next/static/chunks/0t96fqp1vsmrp.js +0 -1
  1010. package/server/.next/static/chunks/0wlc502815llk.js +0 -1
  1011. package/server/.next/static/chunks/158-i6phe17yl.js +0 -1
  1012. package/server/.next/static/chunks/1fxuyn0k52n4v.css +0 -3
  1013. package/server/.next/static/chunks/1mlvn70-zqjvi.js +0 -1
  1014. package/server/.next/static/chunks/1sm8wxvlpowwg.js +0 -1
  1015. package/server/.next/static/chunks/1teh52nh5dujq.js +0 -1
  1016. package/server/.next/static/chunks/1v4hl1z0y1npd.js +0 -1
  1017. package/server/.next/static/chunks/1vh2psoqw3ddc.js +0 -1
  1018. package/server/.next/static/chunks/1xau8pf40_upi.js +0 -7
  1019. package/server/.next/static/chunks/1z2rcngn3-7i5.js +0 -1
  1020. package/server/.next/static/chunks/210qrsqvmgaet.js +0 -1
  1021. package/server/.next/static/chunks/29p15vj15jcsb.js +0 -1
  1022. package/server/.next/static/chunks/2kmerzslng988.js +0 -1
  1023. package/server/.next/static/chunks/2llric-1orr3y.js +0 -1
  1024. package/server/.next/static/chunks/2wb9a1xth0yhf.js +0 -1
  1025. package/server/.next/static/chunks/34gs6c2dsgtqy.js +0 -1
  1026. package/server/.next/static/chunks/3ag6t3ta58rih.js +0 -1
  1027. package/server/.next/static/chunks/3gkta99h3_5i2.js +0 -1
  1028. /package/server/.next/static/{xCga6YpZus71dK3aq8Q4H → 00CFAqN6pFBVkqJyXSd78}/_buildManifest.js +0 -0
  1029. /package/server/.next/static/{xCga6YpZus71dK3aq8Q4H → 00CFAqN6pFBVkqJyXSd78}/_clientMiddlewareManifest.js +0 -0
  1030. /package/server/.next/static/{xCga6YpZus71dK3aq8Q4H → 00CFAqN6pFBVkqJyXSd78}/_ssgManifest.js +0 -0
@@ -1,9 +1,9 @@
1
- module.exports=[270432,a=>{"use strict";var b=a.i(93321),c=a.i(351674),d=a.i(548734),e=a.i(837137),f=a.i(109068),g=a.i(678831),h=a.i(45617),i=a.i(455317),j=a.i(383487),k=a.i(714530),l=a.i(601219),m=a.i(358179),n=a.i(292321),o=a.i(49146),p=a.i(33135),q=a.i(669943),r=a.i(26972),s=a.i(811365),t=a.i(689963),u=a.i(191179),v=a.i(427221),w=a.i(530174);let x=/not enabled/i,y=(a,b,c={})=>({ok:!1,kind:a,error:b,...c}),z="Vercel Web Analytics answered in a format the console doesn't recognise.",A=r.z.object({data:r.z.object({pageviews:s.z.number().finite().nonnegative(),visitors:s.z.number().finite().nonnegative()})}),B=r.z.object({data:t.z.array(u.z.unknown())}),C=r.z.object({timestamp:v.z.string().transform((a,b)=>{let c=Date.parse(a);return Number.isNaN(c)?(b.addIssue({code:"custom",message:"bad timestamp"}),w.z.NEVER):c}),pageviews:s.z.number().finite().nonnegative().nullish().catch(null)});async function D(a,b,c,d){let e=d.since.toISOString(),f=d.until.toISOString(),g=d.fetch??fetch,h=new AbortController,i=setTimeout(()=>h.abort(new DOMException("window","TimeoutError")),d.timeoutMs??8e3),j=d.signal?AbortSignal.any([h.signal,d.signal]):h.signal,k=(0,p.X)(j);async function l(i,l){let m=new URLSearchParams({projectId:c,teamId:b,...l,since:e,until:f});try{let b=await Promise.race([g(`https://api.vercel.com/v1/query/web-analytics/visits/${i}?${m}`,{headers:{Authorization:`Bearer ${a}`,Accept:"application/json"},signal:j,cache:"no-store"}),k]),c=null,d=!1;if(401===b.status||403===b.status)c=y("auth",`Vercel rejected this credential (${b.status}).`,{status:b.status});else if(429===b.status){let a=Number(b.headers.get("Retry-After"));c=y("transient","Vercel says there were too many requests.",{status:429,retryAfterS:Number.isFinite(a)&&a>0?a:60})}else if(400===b.status){let a=await Promise.race([b.text(),k]).catch(()=>"");x.test(a)?d=!0:c=y("transient","Vercel Web Analytics rejected the request (400).",{status:400})}else b.ok||(c=y("transient",`Vercel Web Analytics returned an error (${b.status}).`,{status:b.status}));if(d)return{kind:"off"};if(c)return await b.body?.cancel().catch(()=>void 0),{kind:"fail",fail:c};try{return{kind:"body",body:await Promise.race([b.json(),k])}}catch(a){if(j.aborted)throw a;return{kind:"fail",fail:y("format",z)}}}catch{return{kind:"fail",fail:j.aborted?h.signal.aborted&&!d.signal?.aborted?y("transient","Vercel Web Analytics didn't answer in time."):y("transient","Reading Vercel Web Analytics was cancelled."):y("transient","Couldn't reach Vercel Web Analytics.")}}}try{let[a,b]=await Promise.all([l("count",{}),l("aggregate",{by:"hour"})]);if("off"===a.kind||"off"===b.kind)return{ok:!0,enabled:!1};let c=[a,b].flatMap(a=>"fail"===a.kind?[a.fail]:[]),d=c.find(a=>"auth"===a.kind);if(d)return d;let e="body"===b.kind?B.safeParse(b.body):null,f="fail"===b.kind?b.fail:e?.success?null:y("format",z),g=c.find(a=>"transient"===a.kind);if(g)return g;if(f)return f;if(!e?.success)return y("format",z);let h="body"===a.kind?A.safeParse(a.body):null,i=e.data.data.flatMap(a=>{let b=C.safeParse(a);return b.success?[b.data]:[]});if(i.length>0&&i.every(a=>null==a.pageviews))return y("format",z);let j=new Map;for(let a of i){let b=36e5*Math.floor(a.timestamp/36e5);j.set(b,(j.get(b)??0)+(a.pageviews??0))}let k=[...j].sort((a,b)=>a[0]-b[0]).slice(-24).map(([a,b])=>({at:new Date(a),views:b}));if(h?.success)return{ok:!0,enabled:!0,total:h.data.data.pageviews,visitors:h.data.data.visitors,hourly:k};return{ok:!0,enabled:!0,total:k.reduce((a,b)=>a+b.views,0),visitors:null,hourly:k}}finally{clearTimeout(i),h.abort()}}var E=a.i(631107);async function F(a,b,c){let d=await (0,n.g)(null);if(!d.length)return;let e=new Date(36e5*Math.floor(a.getTime()/36e5)-828e5);await (0,p.P)(d,3,async d=>{if(Date.now()+8500>b)return;let f=await D(d.token,d.teamId,d.projectId,{since:e,until:a});if(!f.ok)return void c.push(`pageviews/${d.appName}: ${f.error}`);try{await (0,q.r)(d.appId,{pageviews:(0,E.a)(f,a)},a)}catch{c.push(`pageviews/${d.appName}: couldn't save the page views`)}})}var G=a.i(46396),H=a.i(492665),I=a.i(519051),J=a.i(572134),K=a.i(646324),L=a.i(560954),M=a.i(384896);function N(a){if(!a)return null;if("unknown"!==a.state)return a.state;let b=a.data?.lastGoodState;return"string"==typeof b&&M.W.includes(b)?b:null}let O={turso_database:"Turso database",upstash_redis:"Upstash Redis",d1_database:"D1 database"};function P(a,b){return"auth"===a.kind?"auth":"scope"===a.kind?b?"auth":"column":"missing"===a.kind?b?"unknown":"column":"unknown"}var Q=a.i(656298),R=a.i(688275),S=a.i(893893),T=a.i(672319),U=a.i(449734),V=a.i(15827),W=a.i(944808),X=a.i(112735);let Y="skipped the rest, time budget used";function Z(a){let b=a.deadline-Date.now()-500;if(b<250)throw Error(Y);return{timeoutMs:Math.min(5e3,b)}}async function $(a,b,c){let d=!1;return{out:await (0,p.P)(b,3,async b=>{let e;try{e=Z(a)}catch{d=!0;return}return c(b,e)}),skipped:d}}function _(a){if(a)throw Error(Y)}async function aa(a){let c=await (0,d.f)().select().from(e.accounts).where((0,b.b)((0,b.u)(e.accounts.provider,a),(0,b.u)(e.accounts.status,"ok"))),f=(0,H.f)().OPS_ENCRYPTION_KEY;return c.map(a=>({acc:a,credential:(0,m.V)({ciphertext:a.credentialCiphertext,iv:a.credentialIv},f)}))}function ab(a,c){return(0,d.f)().select({r:e.resources,s:e.snapshots}).from(e.resources).leftJoin(e.snapshots,(0,b.u)(e.snapshots.resourceId,e.resources.id)).where((0,b.b)((0,b.u)(e.resources.accountId,a),(0,b.u)(e.resources.kind,c),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt))).limit(100)}let ac=a=>c.B`${e.snapshots.data} || ${JSON.stringify(a)}::jsonb`;async function ad(a,b,c){let f=N(a.s?{state:a.s.state,data:a.s.data}:null),g="unknown"===b.state,h=g?f?{lastGoodState:f}:{}:{...b.patch,lastGoodState:b.state},i=!g&&f!==b.state;return await (0,d.f)().insert(e.snapshots).values({resourceId:a.r.id,state:b.state,data:h,collectedAt:c,stateSince:c}).onConflictDoUpdate({target:e.snapshots.resourceId,set:{state:b.state,data:ac(h),...g?{}:{collectedAt:c},...i?{stateSince:c}:{}}}),g?null:function(a){let{prev:b,next:c}=a;if(null===b||"unknown"===b||"unknown"===c||b===c)return null;let d={resourceId:a.resourceId,type:"database",at:a.at};if("supabase_project"===a.kind)return"paused"===c?{...d,reason:"DatabasePaused",kind:"paused",message:"Supabase project paused",detail:"Status changed to INACTIVE"}:"ok"===c?{...d,reason:"DatabaseRestored",kind:"ok",message:"Supabase project active again",detail:"Status changed to ACTIVE_HEALTHY"}:"warn"===c?{...d,reason:"DatabaseUnhealthy",kind:"warn",message:"Supabase project unhealthy",detail:a.label}:"err"===c?{...d,reason:"DatabaseFailed",kind:"err",message:`Supabase project: ${a.label.toLowerCase()}`,detail:a.label}:null;if("neon_project"===a.kind)return"err"===c?{...d,reason:"NeonSuspended",kind:"err",message:"Neon compute suspended",detail:a.label}:"err"===b&&("ok"===c||"idle"===c)?{...d,reason:"NeonAvailable",kind:"ok",message:"Neon compute available again",detail:a.label}:null;let e=O[a.kind];if(e)return"err"===c?{...d,reason:"DatabaseFailed",kind:"err",message:`${e}: ${a.label.toLowerCase()}`,detail:a.label}:"off"===c?{...d,reason:"DatabaseMissing",kind:"off",message:`${e} missing`,detail:a.label}:"ok"===c&&("err"===b||"off"===b)?{...d,reason:"DatabaseRestored",kind:"ok",message:`${e} available again`,detail:a.label}:null;if("err"===c){let b="Daily quota used up"===a.label;return{...d,reason:b?"FirestoreQuotaUsedUp":"FirestoreUnreachable",kind:"err",message:b?"Firestore daily quota used up":"Firestore not reachable",detail:a.label}}return"off"===c?{...d,reason:"FirestoreMissing",kind:"off",message:"Firestore database missing",detail:a.label}:"ok"===c&&("err"===b||"off"===b)?{...d,reason:"FirestoreReachable",kind:"ok",message:"Firestore reachable again",detail:a.label}:null}({kind:a.r.kind,resourceId:a.r.id,prev:f,next:b.state,label:b.label,at:c})}async function ae(a,c){await (0,d.f)().update(e.snapshots).set({data:ac(c)}).where((0,b.u)(e.snapshots.resourceId,a.r.id))}let af=a=>(0,l.f)(a);async function ag(a,c,g,h,i){if("auth"===P(h,!0)){let a=(0,f.E)({ok:!1,kind:"auth",error:h.error});a&&await (0,d.f)().update(e.accounts).set({...a,updatedAt:i.now}).where((0,b.u)(e.accounts.id,c.id))}for(let a of g)await ad(a,{state:"unknown",label:"Unknown",patch:{}},i.now);i.errors.push(`${a}/${c.label}: ${h.error}`)}let ah=a=>a.toISOString();async function ai(a){return a.length?new Set((await (0,d.f)().select({app:e.links.fromResourceId,state:e.snapshots.state,data:e.snapshots.data}).from(e.links).innerJoin(e.resources,(0,b.u)(e.resources.id,e.links.toResourceId)).innerJoin(e.snapshots,(0,b.u)(e.snapshots.resourceId,e.resources.id)).where((0,b.b)((0,b.u)(e.links.kind,"uses_db"),(0,b.y)(e.links.fromResourceId,a),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt)))).filter(a=>"paused"===a.state||"unknown"===a.state&&"paused"===a.data.lastGoodState).map(a=>a.app)):new Set}async function aj(a){for(let{acc:b,credential:c}of(await aa("supabase"))){if(Z(a),!c){a.errors.push(`supabase/${b.label}: credential can't be read`);continue}let d=await ab(b.id,"supabase_project");if(!d.length)continue;let e=await (0,X.X)(c,Z(a));if(!e.ok){await ag("supabase",b,d,e,a);continue}let f=new Map(e.data.map(a=>[a.ref,a])),g=[];for(let b of d){let c=f.get(b.r.externalId);if(!c){g.push(await ad(b,{state:"off",label:"Not found",patch:{status:"REMOVED"}},a.now));continue}let d=(0,T.P)(c.status),e=N(b.s?{state:b.s.state,data:b.s.data}:null),h={status:c.status,region:c.region,pgVersion:c.pgVersion,orgSlug:c.orgSlug};"paused"===d.state&&"paused"!==e&&(h.pausedBeforeSeen=null===e),g.push(await ad(b,{state:d.state,label:d.label,patch:h},a.now))}await af(g);let h=new Map(d.map(a=>[a.r.externalId,a.r.id])),i=e.data.map(a=>({resourceId:h.get(a.ref)??null,accountId:b.id,status:a.status,orgSlug:a.orgSlug}));await (0,L.z)(a.now,i,a.deadline).catch(()=>{console.warn("auto-restore failed"),a.errors.push("auto-restore failed")})}}async function ak(a){for(let{acc:b,credential:c}of(await aa("supabase"))){if(Z(a),!c)continue;let d=await ab(b.id,"supabase_project");if(!d.length)continue;let e=new Map(d.map(a=>[a.r.id,(0,S.k)(S.B,a.s?.data)])),f=new Map;for(let d of new Set([...e.values()].map(a=>a.orgSlug).filter(a=>!!a))){let e=await (0,X.K)(c,d,Z(a));f.set(d,e.ok&&null!==e.data?"free"===e.data:null),e.ok||"scope"===e.kind||a.errors.push(`supabase/${b.label} plan: ${e.error}`)}let{skipped:g}=await $(a,d,async(b,d)=>{let g=e.get(b.r.id),h={freeOrg:g.orgSlug?f.get(g.orgSlug)??null:null};if((g.status??"").startsWith("ACTIVE_")){let[e,f]=await Promise.all([(0,X.F)(c,b.r.externalId,d),(0,X.Z)(c,b.r.externalId,d)]);e.ok?Object.assign(h,{health:e.data.map(({name:a,status:b})=>({name:a,status:b})),healthAt:ah(a.now),healthError:null}):"column"===P(e,!1)?h.healthError=e.error:a.errors.push(`supabase/${b.r.name} health: ${e.error}`),f.ok?Object.assign(h,{lastTrafficAt:(0,T.H)(f.data)?.toISOString()??null,trafficAt:ah(a.now),trafficError:null}):"column"===P(f,!1)?h.trafficError=f.error:a.errors.push(`supabase/${b.r.name} traffic: ${f.error}`)}await ae(b,h)});_(g)}}async function al(a){for(let{acc:b,credential:c}of(await aa("neon"))){if(Z(a),!c){a.errors.push(`neon/${b.label}: credential can't be read`);continue}let d=await ab(b.id,"neon_project");if(!d.length)continue;let{out:e,skipped:f}=await $(a,d,(a,b)=>Promise.all([(0,W.Z)(c,a.r.externalId,b),(0,W.k)(c,a.r.externalId,b),(0,W.e)(c,a.r.externalId,b)])),g=e.flat().find(a=>void 0!==a&&!a.ok&&"auth"===a.kind);if(g){await ag("neon",b,d,g,a);continue}let h=[];for(let[b,c]of d.entries()){let d=e[b];if(!d)continue;let[f,g,i]=d;if(!f.ok||!g.ok||!i.ok){let b=[f,g,i].find(a=>!a.ok);"missing"===b.kind?h.push(await ad(c,{state:"off",label:"Not found",patch:{}},a.now)):(await ad(c,{state:"unknown",label:"Unknown",patch:{}},a.now),a.errors.push(`neon/${c.r.name}: ${b.error}`));continue}let j=(0,R.p)({endpoints:g.data,computeSeconds:f.data.computeSeconds});h.push(await ad(c,{state:j.state,label:j.label,patch:{region:f.data.region,pgVersion:f.data.pgVersion,computeSeconds:f.data.computeSeconds,transferBytes:f.data.transferBytes,activeSeconds:f.data.activeSeconds,periodStart:f.data.periodStart,periodEnd:f.data.periodEnd,endpoints:g.data,branches:i.data}},a.now))}await af(h),_(f)}}async function am(a){for(let{acc:b,credential:c}of(await aa("firebase"))){Z(a);let d=c?(0,V.p)(c):null;if(!d){a.errors.push(`firebase/${b.label}: credential can't be read`);continue}let e=await ab(b.id,"firestore");if(!e.length)continue;let f=await (0,V.X)(d,Z(a));if(!f.ok){await ag("firebase",b,e,f,a);continue}let{out:g,skipped:h}=await $(a,e,(a,b)=>(0,U.G)(f.data,a.r.externalId,b)),i=[];for(let[b,c]of e.entries()){let d=g[b];if(!d)continue;let e=(0,Q.g)(d);"unknown"!==e.state||d.ok||a.errors.push(`firebase/${c.r.name}: ${d.error}`);let f=d.ok?{latencyMs:d.data.latencyMs,pingError:null,pingReason:null,pingKind:null}:{pingError:d.error,pingReason:d.reason??null,pingKind:d.kind};i.push(await ad(c,{...e,patch:f},a.now))}await af(i),_(h)}}async function an(a){for(let{acc:b,credential:c}of(await aa("firebase"))){Z(a);let d=c?(0,V.p)(c):null;if(!d)continue;let e=(await ab(b.id,"firestore")).filter(a=>a.s?.state!=="off");if(!e.length)continue;let f=await (0,V.X)(d,Z(a));if(!f.ok){a.errors.push(`firebase/${b.label}: ${f.error}`);continue}let g=(0,Q.a)(a.now),{skipped:h}=await $(a,e,async(b,c)=>{let d=await (0,U.W)(f.data,b.r.externalId,g,a.now,c);d.ok?await ae(b,{...d.data,opsAt:ah(a.now),opsError:null}):"column"===P(d,!1)?await ae(b,{reads:null,writes:null,deletes:null,opsAt:ah(a.now),opsError:/requires billing/i.test(d.message??"")?"Not available on Spark: Firestore usage needs billing (Blaze plan)":"SERVICE_DISABLED"===d.reason?"Not readable: the Cloud Monitoring API is off in this project":"Not readable: the service account needs monitoring.viewer"}):a.errors.push(`firebase/${b.r.name} usage: ${d.error}`)});_(h)}}async function ao(a){try{return await a(),null}catch(a){return a instanceof Error?a:Error(String(a))}}var ap=a.i(639271),aq=a.i(514670),ar=a.i(354448),as=a.i(584897),at=a.i(697365);async function au(a){let b=[await ao(()=>aw(a)),await ao(()=>ay(a)),await ao(()=>az(a))].find(a=>null!==a);if(b)throw b}let av=a=>a.toISOString();async function aw(a){for(let{acc:b,credential:c}of(await aa("turso"))){if(Z(a),!c){a.errors.push(`turso/${b.label}: credential can't be read`);continue}let d=await ab(b.id,"turso_database");if(!d.length)continue;let e=await (0,ar.u)(c,Z(a));if(!e.ok){await ag("turso",b,d,e,a);continue}let f=new Set(d.map(a=>String(a.r.meta.org??""))),g=[];for(let h of e.data.filter(a=>f.has(a.slug))){let[e,f]=await Promise.all([(0,ar.X)(c,h.slug,Z(a)),(0,ar.d)(c,h.slug,Z(a))]),i=d.filter(a=>a.r.meta.org===h.slug);if(!e.ok){for(let b of i)await ad(b,{state:"unknown",label:"Unknown",patch:{}},a.now);a.errors.push(`turso/${b.label}: ${e.error}`);continue}let j=new Map(e.data.map(a=>[a.id,a]));for(let b of i)g.push(await ax(b,j.get(b.r.externalId),h,f,a))}let h=new Set(e.data.map(a=>a.slug));for(let b of d.filter(a=>!h.has(String(a.r.meta.org??""))))g.push(await ad(b,{state:"off",label:"Organization not visible to this token",patch:{}},a.now));await af(g)}}async function ax(a,b,c,d,e){if(!b)return ad(a,{state:"off",label:"Not found",patch:{}},e.now);let f=(0,ap.i)({blockReads:b.blockReads,blockWrites:b.blockWrites,orgBlockedReads:c.blockedReads,orgBlockedWrites:c.blockedWrites}),g={org:c.slug,group:b.group,primaryRegion:b.primaryRegion,plan:c.plan,blockReads:b.blockReads,blockWrites:b.blockWrites};if(d.ok){let a=d.data.byDb.get(b.id);Object.assign(g,{rowsRead:a?.rowsRead??null,rowsWritten:a?.rowsWritten??null,storageBytes:a?.storageBytes??null,orgRowsRead:d.data.org.rowsRead,orgRowsWritten:d.data.org.rowsWritten,orgStorageBytes:d.data.org.storageBytes,orgDatabases:d.data.org.databases,usageAt:av(e.now),usageError:null})}else"column"===P(d,!1)?g.usageError=d.error:e.errors.push(`turso/${a.r.name} usage: ${d.error}`);return ad(a,{...f,patch:g},e.now)}async function ay(a){for(let{acc:b,credential:c}of(await aa("upstash"))){Z(a);let d=c?(0,as.L)(c):null;if(!d){a.errors.push(`upstash/${b.label}: credential can't be read`);continue}let e=await ab(b.id,"upstash_redis");if(!e.length)continue;let f=await (0,as.M)(d,Z(a));if(!f.ok){await ag("upstash",b,e,f,a);continue}let g=new Map(f.data.map(a=>[a.id,a])),{out:h,skipped:i}=await $(a,e,(a,b)=>g.has(a.r.externalId)?(0,as.Z)(d,a.r.externalId,b):Promise.resolve(null)),j=[];for(let[b,c]of e.entries()){let d=g.get(c.r.externalId);if(!d){j.push(await ad(c,{state:"off",label:"Not found",patch:{}},a.now));continue}let e=(0,ap.t)(d.state),f={region:d.region,status:d.state,type:d.type},i=h[b];i?.ok?Object.assign(f,{...i.data,statsAt:av(a.now),statsError:null}):i&&"column"===P(i,!1)?f.statsError=i.error:i&&a.errors.push(`upstash/${c.r.name} stats: ${i.error}`),j.push(await ad(c,{...e,patch:f},a.now))}await af(j),_(i)}}async function az(a){let b={};for(let{acc:c,credential:d}of(await aa("cloudflare"))){if(Z(a),!d)continue;let e=await aB(c.id,d,a);if(!e.length){b[c.id]={d1:"error",analytics:null,at:av(a.now),note:"No Cloudflare account found for this token"};continue}let f="ok",g=null;for(let b of e){let e=await (0,aq.L)(d,b,Z(a));if(!e.ok){"error"==(f="scope"===e.kind||"auth"===e.kind?"missing":"error")&&a.errors.push(`d1/${c.label}: ${e.error}`);continue}await aC(c.id,b,e.data,a.now);let h=(await ab(c.id,"d1_database")).filter(a=>a.r.meta.accountId===b);if(!h.length)continue;let i=await (0,aq.t)(d,b,(0,aq.Y)(a.now),Z(a));g=i.ok?g??"ok":"scope"===i.kind?"missing":g??"error",i.ok||"scope"===i.kind||a.errors.push(`d1/${c.label} analytics: ${i.error}`);let{out:j,skipped:k}=await $(a,h,(a,c)=>(0,aq.m)(d,b,a.r.externalId,c)),l=new Map((i.ok?i.data:[]).map(a=>[a.databaseId,a])),m=j.map(a=>a?.ok?a.data.sizeBytes??0:0),n={accountRowsRead:i.ok?i.data.reduce((a,b)=>a+b.rowsRead,0):null,accountRowsWritten:i.ok?i.data.reduce((a,b)=>a+b.rowsWritten,0):null,accountSizeBytes:j.every(a=>a?.ok)?m.reduce((a,b)=>a+b,0):null,accountDatabases:e.data.length},o=[];for(let[b,c]of h.entries()){let d=j[b];void 0!==d&&o.push(await aA(c,d,l.get(c.r.externalId)??null,i.ok,i.ok?null:i.error,n,a))}await af(o),_(k)}b[c.id]={d1:f,analytics:g,at:av(a.now),note:null}}await (0,d.f)().insert(e.settings).values({key:at.F,value:b}).onConflictDoUpdate({target:e.settings.key,set:{value:b,updatedAt:a.now}})}async function aA(a,b,c,d,e,f,g){let h={accountId:a.r.meta.accountId??null,createdAt:a.r.meta.createdAt??null,accountDatabases:f.accountDatabases};return(b.ok?Object.assign(h,{sizeBytes:b.data.sizeBytes,numTables:b.data.numTables,readReplication:b.data.readReplication,detailsAt:av(g.now),detailsError:null}):"scope"===b.kind?h.detailsError=b.error:g.errors.push(`d1/${a.r.name}: ${b.error}`),d?Object.assign(h,{rowsRead:c?.rowsRead??0,rowsWritten:c?.rowsWritten??0,readQueries:c?.readQueries??0,writeQueries:c?.writeQueries??0,accountRowsRead:f.accountRowsRead,accountRowsWritten:f.accountRowsWritten,usageDay:(0,aq.Y)(g.now),usageAt:av(g.now),usageError:null}):h.usageError=e,null!==f.accountSizeBytes&&(h.accountSizeBytes=f.accountSizeBytes),b.ok||"transient"!==b.kind)?ad(a,{...(0,ap.c)(d?f:{accountRowsRead:null,accountRowsWritten:null}),patch:h},g.now):ad(a,{state:"unknown",label:"Unknown",patch:{}},g.now)}async function aB(a,c,f){let g=new Set,h=await (0,aq.N)(c,Z(f));if(h.ok)for(let a of h.data)g.add(a.id);for(let c of(await (0,d.f)().select({meta:e.resources.meta}).from(e.resources).where((0,b.b)((0,b.u)(e.resources.accountId,a),(0,b.u)(e.resources.kind,"zone"),(0,b.M)(e.resources.goneAt))).limit(200)))"string"==typeof c.meta.accountId&&/^[0-9a-f]{32}$/i.test(c.meta.accountId)&&g.add(c.meta.accountId);return[...g].slice(0,5)}async function aC(a,c,f,g){let h=(await (0,d.f)().select({id:e.resources.id,externalId:e.resources.externalId,meta:e.resources.meta,goneAt:e.resources.goneAt}).from(e.resources).where((0,b.b)((0,b.u)(e.resources.accountId,a),(0,b.u)(e.resources.kind,"d1_database")))).filter(a=>a.meta.accountId===c),i=new Map(h.map(a=>[a.externalId,a])),j=new Set(f.map(a=>a.uuid));await (0,d.f)().transaction(async d=>{for(let h of f){let f={accountId:c,createdAt:h.createdAt},j=i.get(h.uuid);j?await d.update(e.resources).set({name:h.name,meta:f,lastSeenAt:g,goneAt:null,updatedAt:g}).where((0,b.u)(e.resources.id,j.id)):await d.insert(e.resources).values({accountId:a,kind:"d1_database",externalId:h.uuid,name:h.name,meta:f,monitored:!0,lastSeenAt:g}).onConflictDoNothing({target:[e.resources.accountId,e.resources.kind,e.resources.externalId]})}let k=h.filter(a=>!j.has(a.externalId)&&!a.goneAt).map(a=>a.id);k.length&&await d.update(e.resources).set({goneAt:g,updatedAt:g}).where((0,b.y)(e.resources.id,k))})}var aD=a.i(666680),aE=a.i(263251),aF=a.i(634418);async function aG(a=new Date){let b=(0,aD.randomUUID)(),e=new Date(a.getTime()+aF.d).toISOString(),f=await (0,d.f)().execute(c.B`
1
+ module.exports=[270432,a=>{"use strict";var b=a.i(93321),c=a.i(351674),d=a.i(548734),e=a.i(837137),f=a.i(109068),g=a.i(678831),h=a.i(45617),i=a.i(455317),j=a.i(383487),k=a.i(714530),l=a.i(601219),m=a.i(358179),n=a.i(292321),o=a.i(49146),p=a.i(396667),q=a.i(33135),r=a.i(669943),s=a.i(26972),t=a.i(811365),u=a.i(689963),v=a.i(191179),w=a.i(427221),x=a.i(530174);let y=/not enabled/i,z=(a,b,c={})=>({ok:!1,kind:a,error:b,...c}),A="Vercel Web Analytics answered in a format the console doesn't recognise.",B=s.z.object({data:s.z.object({pageviews:t.z.number().finite().nonnegative(),visitors:t.z.number().finite().nonnegative()})}),C=s.z.object({data:u.z.array(v.z.unknown())}),D=s.z.object({timestamp:w.z.string().transform((a,b)=>{let c=Date.parse(a);return Number.isNaN(c)?(b.addIssue({code:"custom",message:"bad timestamp"}),x.z.NEVER):c}),pageviews:t.z.number().finite().nonnegative().nullish().catch(null)});async function E(a,b,c,d){let e=d.since.toISOString(),f=d.until.toISOString(),g=d.fetch??fetch,h=new AbortController,i=setTimeout(()=>h.abort(new DOMException("window","TimeoutError")),d.timeoutMs??8e3),j=d.signal?AbortSignal.any([h.signal,d.signal]):h.signal,k=(0,q.X)(j);async function l(i,l){let m=new URLSearchParams({projectId:c,teamId:b,...l,since:e,until:f});try{let b=await Promise.race([g(`https://api.vercel.com/v1/query/web-analytics/visits/${i}?${m}`,{headers:{Authorization:`Bearer ${a}`,Accept:"application/json"},signal:j,cache:"no-store"}),k]),c=null,d=!1;if(401===b.status||403===b.status)c=z("auth",`Vercel rejected this credential (${b.status}).`,{status:b.status});else if(429===b.status){let a=Number(b.headers.get("Retry-After"));c=z("transient","Vercel says there were too many requests.",{status:429,retryAfterS:Number.isFinite(a)&&a>0?a:60})}else if(400===b.status){let a=await Promise.race([b.text(),k]).catch(()=>"");y.test(a)?d=!0:c=z("transient","Vercel Web Analytics rejected the request (400).",{status:400})}else b.ok||(c=z("transient",`Vercel Web Analytics returned an error (${b.status}).`,{status:b.status}));if(d)return{kind:"off"};if(c)return await b.body?.cancel().catch(()=>void 0),{kind:"fail",fail:c};try{return{kind:"body",body:await Promise.race([b.json(),k])}}catch(a){if(j.aborted)throw a;return{kind:"fail",fail:z("format",A)}}}catch{return{kind:"fail",fail:j.aborted?h.signal.aborted&&!d.signal?.aborted?z("transient","Vercel Web Analytics didn't answer in time."):z("transient","Reading Vercel Web Analytics was cancelled."):z("transient","Couldn't reach Vercel Web Analytics.")}}}try{let[a,b]=await Promise.all([l("count",{}),l("aggregate",{by:"hour"})]);if("off"===a.kind||"off"===b.kind)return{ok:!0,enabled:!1};let c=[a,b].flatMap(a=>"fail"===a.kind?[a.fail]:[]),d=c.find(a=>"auth"===a.kind);if(d)return d;let e="body"===b.kind?C.safeParse(b.body):null,f="fail"===b.kind?b.fail:e?.success?null:z("format",A),g=c.find(a=>"transient"===a.kind);if(g)return g;if(f)return f;if(!e?.success)return z("format",A);let h="body"===a.kind?B.safeParse(a.body):null,i=e.data.data.flatMap(a=>{let b=D.safeParse(a);return b.success?[b.data]:[]});if(i.length>0&&i.every(a=>null==a.pageviews))return z("format",A);let j=new Map;for(let a of i){let b=36e5*Math.floor(a.timestamp/36e5);j.set(b,(j.get(b)??0)+(a.pageviews??0))}let k=[...j].sort((a,b)=>a[0]-b[0]).slice(-24).map(([a,b])=>({at:new Date(a),views:b}));if(h?.success)return{ok:!0,enabled:!0,total:h.data.data.pageviews,visitors:h.data.data.visitors,hourly:k};return{ok:!0,enabled:!0,total:k.reduce((a,b)=>a+b.views,0),visitors:null,hourly:k}}finally{clearTimeout(i),h.abort()}}var F=a.i(631107);async function G(a,b,c){let d=await (0,n.g)(null);if(!d.length)return;let e=new Date(36e5*Math.floor(a.getTime()/36e5)-828e5);await (0,q.P)(d,3,async d=>{if(Date.now()+8500>b)return;let f=await E(d.token,d.teamId,d.projectId,{since:e,until:a});if(!f.ok)return void c.push(`pageviews/${d.appName}: ${f.error}`);try{await (0,r.r)(d.appId,{pageviews:(0,F.a)(f,a)},a)}catch{c.push(`pageviews/${d.appName}: couldn't save the page views`)}})}var H=a.i(46396),I=a.i(492665),J=a.i(519051),K=a.i(572134),L=a.i(646324),M=a.i(560954),N=a.i(384896);function O(a){if(!a)return null;if("unknown"!==a.state)return a.state;let b=a.data?.lastGoodState;return"string"==typeof b&&N.W.includes(b)?b:null}let P={turso_database:"Turso database",upstash_redis:"Upstash Redis",d1_database:"D1 database"};function Q(a,b){return"auth"===a.kind?"auth":"scope"===a.kind?b?"auth":"column":"missing"===a.kind?b?"unknown":"column":"unknown"}var R=a.i(656298),S=a.i(688275),T=a.i(893893),U=a.i(672319),V=a.i(449734),W=a.i(15827),X=a.i(944808),Y=a.i(112735);let Z="skipped the rest, time budget used";function $(a){let b=a.deadline-Date.now()-500;if(b<250)throw Error(Z);return{timeoutMs:Math.min(5e3,b)}}async function _(a,b,c){let d=!1;return{out:await (0,q.P)(b,3,async b=>{let e;try{e=$(a)}catch{d=!0;return}return c(b,e)}),skipped:d}}function aa(a){if(a)throw Error(Z)}async function ab(a){let c=await (0,d.f)().select().from(e.accounts).where((0,b.b)((0,b.u)(e.accounts.provider,a),(0,b.u)(e.accounts.status,"ok"))),f=(0,I.f)().OPS_ENCRYPTION_KEY;return c.map(a=>({acc:a,credential:(0,m.V)({ciphertext:a.credentialCiphertext,iv:a.credentialIv},f)}))}function ac(a,c){return(0,d.f)().select({r:e.resources,s:e.snapshots}).from(e.resources).leftJoin(e.snapshots,(0,b.u)(e.snapshots.resourceId,e.resources.id)).where((0,b.b)((0,b.u)(e.resources.accountId,a),(0,b.u)(e.resources.kind,c),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt))).limit(100)}let ad=a=>c.B`${e.snapshots.data} || ${JSON.stringify(a)}::jsonb`;async function ae(a,b,c){let f=O(a.s?{state:a.s.state,data:a.s.data}:null),g="unknown"===b.state,h=g?f?{lastGoodState:f}:{}:{...b.patch,lastGoodState:b.state},i=!g&&f!==b.state;return await (0,d.f)().insert(e.snapshots).values({resourceId:a.r.id,state:b.state,data:h,collectedAt:c,stateSince:c}).onConflictDoUpdate({target:e.snapshots.resourceId,set:{state:b.state,data:ad(h),...g?{}:{collectedAt:c},...i?{stateSince:c}:{}}}),g?null:function(a){let{prev:b,next:c}=a;if(null===b||"unknown"===b||"unknown"===c||b===c)return null;let d={resourceId:a.resourceId,type:"database",at:a.at};if("supabase_project"===a.kind)return"paused"===c?{...d,reason:"DatabasePaused",kind:"paused",message:"Supabase project paused",detail:"Status changed to INACTIVE"}:"ok"===c?{...d,reason:"DatabaseRestored",kind:"ok",message:"Supabase project active again",detail:"Status changed to ACTIVE_HEALTHY"}:"warn"===c?{...d,reason:"DatabaseUnhealthy",kind:"warn",message:"Supabase project unhealthy",detail:a.label}:"err"===c?{...d,reason:"DatabaseFailed",kind:"err",message:`Supabase project: ${a.label.toLowerCase()}`,detail:a.label}:null;if("neon_project"===a.kind)return"err"===c?{...d,reason:"NeonSuspended",kind:"err",message:"Neon compute suspended",detail:a.label}:"err"===b&&("ok"===c||"idle"===c)?{...d,reason:"NeonAvailable",kind:"ok",message:"Neon compute available again",detail:a.label}:null;let e=P[a.kind];if(e)return"err"===c?{...d,reason:"DatabaseFailed",kind:"err",message:`${e}: ${a.label.toLowerCase()}`,detail:a.label}:"off"===c?{...d,reason:"DatabaseMissing",kind:"off",message:`${e} missing`,detail:a.label}:"ok"===c&&("err"===b||"off"===b)?{...d,reason:"DatabaseRestored",kind:"ok",message:`${e} available again`,detail:a.label}:null;if("err"===c){let b="Daily quota used up"===a.label;return{...d,reason:b?"FirestoreQuotaUsedUp":"FirestoreUnreachable",kind:"err",message:b?"Firestore daily quota used up":"Firestore not reachable",detail:a.label}}return"off"===c?{...d,reason:"FirestoreMissing",kind:"off",message:"Firestore database missing",detail:a.label}:"ok"===c&&("err"===b||"off"===b)?{...d,reason:"FirestoreReachable",kind:"ok",message:"Firestore reachable again",detail:a.label}:null}({kind:a.r.kind,resourceId:a.r.id,prev:f,next:b.state,label:b.label,at:c})}async function af(a,c){await (0,d.f)().update(e.snapshots).set({data:ad(c)}).where((0,b.u)(e.snapshots.resourceId,a.r.id))}let ag=a=>(0,l.f)(a);async function ah(a,c,g,h,i){if("auth"===Q(h,!0)){let a=(0,f.E)({ok:!1,kind:"auth",error:h.error});a&&await (0,d.f)().update(e.accounts).set({...a,updatedAt:i.now}).where((0,b.u)(e.accounts.id,c.id))}for(let a of g)await ae(a,{state:"unknown",label:"Unknown",patch:{}},i.now);i.errors.push(`${a}/${c.label}: ${h.error}`)}let ai=a=>a.toISOString();async function aj(a){return a.length?new Set((await (0,d.f)().select({app:e.links.fromResourceId,state:e.snapshots.state,data:e.snapshots.data}).from(e.links).innerJoin(e.resources,(0,b.u)(e.resources.id,e.links.toResourceId)).innerJoin(e.snapshots,(0,b.u)(e.snapshots.resourceId,e.resources.id)).where((0,b.b)((0,b.u)(e.links.kind,"uses_db"),(0,b.y)(e.links.fromResourceId,a),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt)))).filter(a=>"paused"===a.state||"unknown"===a.state&&"paused"===a.data.lastGoodState).map(a=>a.app)):new Set}async function ak(a){if(!a.protectOnly||await (0,M.g)())for(let{acc:b,credential:c}of(await ab("supabase"))){if($(a),!c){a.errors.push(`supabase/${b.label}: credential can't be read`);continue}let d=await ac(b.id,"supabase_project");if(!d.length)continue;let e=await (0,Y.X)(c,$(a));if(!e.ok){a.protectOnly?a.errors.push(`supabase/${b.label}: ${e.error}`):await ah("supabase",b,d,e,a);continue}let f=new Map(e.data.map(a=>[a.ref,a])),g=[];for(let b of a.protectOnly?[]:d){let c=f.get(b.r.externalId);if(!c){g.push(await ae(b,{state:"off",label:"Not found",patch:{status:"REMOVED"}},a.now));continue}let d=(0,U.P)(c.status),e=O(b.s?{state:b.s.state,data:b.s.data}:null),h={status:c.status,region:c.region,pgVersion:c.pgVersion,orgSlug:c.orgSlug};"paused"===d.state&&"paused"!==e&&(h.pausedBeforeSeen=null===e),g.push(await ae(b,{state:d.state,label:d.label,patch:h},a.now))}await ag(g);let h=new Map(d.map(a=>[a.r.externalId,a.r.id])),i=e.data.map(a=>({resourceId:h.get(a.ref)??null,accountId:b.id,status:a.status,orgSlug:a.orgSlug}));await (0,M.z)(a.now,i,a.deadline).catch(()=>{console.warn("auto-restore failed"),a.errors.push("auto-restore failed")})}}async function al(a){for(let{acc:b,credential:c}of(await ab("supabase"))){if($(a),!c)continue;let d=await ac(b.id,"supabase_project");if(!d.length)continue;let e=new Map(d.map(a=>[a.r.id,(0,T.k)(T.B,a.s?.data)])),f=new Map;for(let d of new Set([...e.values()].map(a=>a.orgSlug).filter(a=>!!a))){let e=await (0,Y.K)(c,d,$(a));f.set(d,e.ok&&null!==e.data?"free"===e.data:null),e.ok||"scope"===e.kind||a.errors.push(`supabase/${b.label} plan: ${e.error}`)}let{skipped:g}=await _(a,d,async(b,d)=>{let g=e.get(b.r.id),h={freeOrg:g.orgSlug?f.get(g.orgSlug)??null:null};if((g.status??"").startsWith("ACTIVE_")){let[e,f]=await Promise.all([(0,Y.F)(c,b.r.externalId,d),(0,Y.Z)(c,b.r.externalId,d)]);e.ok?Object.assign(h,{health:e.data.map(({name:a,status:b})=>({name:a,status:b})),healthAt:ai(a.now),healthError:null}):"column"===Q(e,!1)?h.healthError=e.error:a.errors.push(`supabase/${b.r.name} health: ${e.error}`),f.ok?Object.assign(h,{lastTrafficAt:(0,U.H)(f.data)?.toISOString()??null,trafficAt:ai(a.now),trafficError:null}):"column"===Q(f,!1)?h.trafficError=f.error:a.errors.push(`supabase/${b.r.name} traffic: ${f.error}`)}await af(b,h)});aa(g)}}async function am(a){for(let{acc:b,credential:c}of(await ab("neon"))){if($(a),!c){a.errors.push(`neon/${b.label}: credential can't be read`);continue}let d=await ac(b.id,"neon_project");if(!d.length)continue;let{out:e,skipped:f}=await _(a,d,(a,b)=>Promise.all([(0,X.Z)(c,a.r.externalId,b),(0,X.k)(c,a.r.externalId,b),(0,X.e)(c,a.r.externalId,b)])),g=e.flat().find(a=>void 0!==a&&!a.ok&&"auth"===a.kind);if(g){await ah("neon",b,d,g,a);continue}let h=[];for(let[b,c]of d.entries()){let d=e[b];if(!d)continue;let[f,g,i]=d;if(!f.ok||!g.ok||!i.ok){let b=[f,g,i].find(a=>!a.ok);"missing"===b.kind?h.push(await ae(c,{state:"off",label:"Not found",patch:{}},a.now)):(await ae(c,{state:"unknown",label:"Unknown",patch:{}},a.now),a.errors.push(`neon/${c.r.name}: ${b.error}`));continue}let j=(0,S.p)({endpoints:g.data,computeSeconds:f.data.computeSeconds});h.push(await ae(c,{state:j.state,label:j.label,patch:{region:f.data.region,pgVersion:f.data.pgVersion,computeSeconds:f.data.computeSeconds,transferBytes:f.data.transferBytes,activeSeconds:f.data.activeSeconds,periodStart:f.data.periodStart,periodEnd:f.data.periodEnd,endpoints:g.data,branches:i.data}},a.now))}await ag(h),aa(f)}}async function an(a){for(let{acc:b,credential:c}of(await ab("firebase"))){$(a);let d=c?(0,W.p)(c):null;if(!d){a.errors.push(`firebase/${b.label}: credential can't be read`);continue}let e=await ac(b.id,"firestore");if(!e.length)continue;let f=await (0,W.X)(d,$(a));if(!f.ok){await ah("firebase",b,e,f,a);continue}let{out:g,skipped:h}=await _(a,e,(a,b)=>(0,V.G)(f.data,a.r.externalId,b)),i=[];for(let[b,c]of e.entries()){let d=g[b];if(!d)continue;let e=(0,R.g)(d);"unknown"!==e.state||d.ok||a.errors.push(`firebase/${c.r.name}: ${d.error}`);let f=d.ok?{latencyMs:d.data.latencyMs,pingError:null,pingReason:null,pingKind:null}:{pingError:d.error,pingReason:d.reason??null,pingKind:d.kind};i.push(await ae(c,{...e,patch:f},a.now))}await ag(i),aa(h)}}async function ao(a){for(let{acc:b,credential:c}of(await ab("firebase"))){$(a);let d=c?(0,W.p)(c):null;if(!d)continue;let e=(await ac(b.id,"firestore")).filter(a=>a.s?.state!=="off");if(!e.length)continue;let f=await (0,W.X)(d,$(a));if(!f.ok){a.errors.push(`firebase/${b.label}: ${f.error}`);continue}let g=(0,R.a)(a.now),{skipped:h}=await _(a,e,async(b,c)=>{let d=await (0,V.W)(f.data,b.r.externalId,g,a.now,c);d.ok?await af(b,{...d.data,opsAt:ai(a.now),opsError:null}):"column"===Q(d,!1)?await af(b,{reads:null,writes:null,deletes:null,opsAt:ai(a.now),opsError:/requires billing/i.test(d.message??"")?"Not available on Spark: Firestore usage needs billing (Blaze plan)":"SERVICE_DISABLED"===d.reason?"Not readable: the Cloud Monitoring API is off in this project":"Not readable: the service account needs monitoring.viewer"}):a.errors.push(`firebase/${b.r.name} usage: ${d.error}`)});aa(h)}}async function ap(a){try{return await a(),null}catch(a){return a instanceof Error?a:Error(String(a))}}var aq=a.i(639271),ar=a.i(514670),as=a.i(354448),at=a.i(584897),au=a.i(697365);async function av(a){let b=[await ap(()=>ax(a)),await ap(()=>az(a)),await ap(()=>aA(a))].find(a=>null!==a);if(b)throw b}let aw=a=>a.toISOString();async function ax(a){for(let{acc:b,credential:c}of(await ab("turso"))){if($(a),!c){a.errors.push(`turso/${b.label}: credential can't be read`);continue}let d=await ac(b.id,"turso_database");if(!d.length)continue;let e=await (0,as.u)(c,$(a));if(!e.ok){await ah("turso",b,d,e,a);continue}let f=new Set(d.map(a=>String(a.r.meta.org??""))),g=[];for(let h of e.data.filter(a=>f.has(a.slug))){let[e,f]=await Promise.all([(0,as.X)(c,h.slug,$(a)),(0,as.d)(c,h.slug,$(a))]),i=d.filter(a=>a.r.meta.org===h.slug);if(!e.ok){for(let b of i)await ae(b,{state:"unknown",label:"Unknown",patch:{}},a.now);a.errors.push(`turso/${b.label}: ${e.error}`);continue}let j=new Map(e.data.map(a=>[a.id,a]));for(let b of i)g.push(await ay(b,j.get(b.r.externalId),h,f,a))}let h=new Set(e.data.map(a=>a.slug));for(let b of d.filter(a=>!h.has(String(a.r.meta.org??""))))g.push(await ae(b,{state:"off",label:"Organization not visible to this token",patch:{}},a.now));await ag(g)}}async function ay(a,b,c,d,e){if(!b)return ae(a,{state:"off",label:"Not found",patch:{}},e.now);let f=(0,aq.i)({blockReads:b.blockReads,blockWrites:b.blockWrites,orgBlockedReads:c.blockedReads,orgBlockedWrites:c.blockedWrites}),g={org:c.slug,group:b.group,primaryRegion:b.primaryRegion,plan:c.plan,blockReads:b.blockReads,blockWrites:b.blockWrites};if(d.ok){let a=d.data.byDb.get(b.id);Object.assign(g,{rowsRead:a?.rowsRead??null,rowsWritten:a?.rowsWritten??null,storageBytes:a?.storageBytes??null,orgRowsRead:d.data.org.rowsRead,orgRowsWritten:d.data.org.rowsWritten,orgStorageBytes:d.data.org.storageBytes,orgDatabases:d.data.org.databases,usageAt:aw(e.now),usageError:null})}else"column"===Q(d,!1)?g.usageError=d.error:e.errors.push(`turso/${a.r.name} usage: ${d.error}`);return ae(a,{...f,patch:g},e.now)}async function az(a){for(let{acc:b,credential:c}of(await ab("upstash"))){$(a);let d=c?(0,at.L)(c):null;if(!d){a.errors.push(`upstash/${b.label}: credential can't be read`);continue}let e=await ac(b.id,"upstash_redis");if(!e.length)continue;let f=await (0,at.M)(d,$(a));if(!f.ok){await ah("upstash",b,e,f,a);continue}let g=new Map(f.data.map(a=>[a.id,a])),{out:h,skipped:i}=await _(a,e,(a,b)=>g.has(a.r.externalId)?(0,at.Z)(d,a.r.externalId,b):Promise.resolve(null)),j=[];for(let[b,c]of e.entries()){let d=g.get(c.r.externalId);if(!d){j.push(await ae(c,{state:"off",label:"Not found",patch:{}},a.now));continue}let e=(0,aq.t)(d.state),f={region:d.region,status:d.state,type:d.type},i=h[b];i?.ok?Object.assign(f,{...i.data,statsAt:aw(a.now),statsError:null}):i&&"column"===Q(i,!1)?f.statsError=i.error:i&&a.errors.push(`upstash/${c.r.name} stats: ${i.error}`),j.push(await ae(c,{...e,patch:f},a.now))}await ag(j),aa(i)}}async function aA(a){let b={};for(let{acc:c,credential:d}of(await ab("cloudflare"))){if($(a),!d)continue;let e=await aC(c.id,d,a);if(!e.length){b[c.id]={d1:"error",analytics:null,at:aw(a.now),note:"No Cloudflare account found for this token"};continue}let f="ok",g=null;for(let b of e){let e=await (0,ar.L)(d,b,$(a));if(!e.ok){"error"==(f="scope"===e.kind||"auth"===e.kind?"missing":"error")&&a.errors.push(`d1/${c.label}: ${e.error}`);continue}await aD(c.id,b,e.data,a.now);let h=(await ac(c.id,"d1_database")).filter(a=>a.r.meta.accountId===b);if(!h.length)continue;let i=await (0,ar.t)(d,b,(0,ar.Y)(a.now),$(a));g=i.ok?g??"ok":"scope"===i.kind?"missing":g??"error",i.ok||"scope"===i.kind||a.errors.push(`d1/${c.label} analytics: ${i.error}`);let{out:j,skipped:k}=await _(a,h,(a,c)=>(0,ar.m)(d,b,a.r.externalId,c)),l=new Map((i.ok?i.data:[]).map(a=>[a.databaseId,a])),m=j.map(a=>a?.ok?a.data.sizeBytes??0:0),n={accountRowsRead:i.ok?i.data.reduce((a,b)=>a+b.rowsRead,0):null,accountRowsWritten:i.ok?i.data.reduce((a,b)=>a+b.rowsWritten,0):null,accountSizeBytes:j.every(a=>a?.ok)?m.reduce((a,b)=>a+b,0):null,accountDatabases:e.data.length},o=[];for(let[b,c]of h.entries()){let d=j[b];void 0!==d&&o.push(await aB(c,d,l.get(c.r.externalId)??null,i.ok,i.ok?null:i.error,n,a))}await ag(o),aa(k)}b[c.id]={d1:f,analytics:g,at:aw(a.now),note:null}}await (0,d.f)().insert(e.settings).values({key:au.F,value:b}).onConflictDoUpdate({target:e.settings.key,set:{value:b,updatedAt:a.now}})}async function aB(a,b,c,d,e,f,g){let h={accountId:a.r.meta.accountId??null,createdAt:a.r.meta.createdAt??null,accountDatabases:f.accountDatabases};return(b.ok?Object.assign(h,{sizeBytes:b.data.sizeBytes,numTables:b.data.numTables,readReplication:b.data.readReplication,detailsAt:aw(g.now),detailsError:null}):"scope"===b.kind?h.detailsError=b.error:g.errors.push(`d1/${a.r.name}: ${b.error}`),d?Object.assign(h,{rowsRead:c?.rowsRead??0,rowsWritten:c?.rowsWritten??0,readQueries:c?.readQueries??0,writeQueries:c?.writeQueries??0,accountRowsRead:f.accountRowsRead,accountRowsWritten:f.accountRowsWritten,usageDay:(0,ar.Y)(g.now),usageAt:aw(g.now),usageError:null}):h.usageError=e,null!==f.accountSizeBytes&&(h.accountSizeBytes=f.accountSizeBytes),b.ok||"transient"!==b.kind)?ae(a,{...(0,aq.c)(d?f:{accountRowsRead:null,accountRowsWritten:null}),patch:h},g.now):ae(a,{state:"unknown",label:"Unknown",patch:{}},g.now)}async function aC(a,c,f){let g=new Set,h=await (0,ar.N)(c,$(f));if(h.ok)for(let a of h.data)g.add(a.id);for(let c of(await (0,d.f)().select({meta:e.resources.meta}).from(e.resources).where((0,b.b)((0,b.u)(e.resources.accountId,a),(0,b.u)(e.resources.kind,"zone"),(0,b.M)(e.resources.goneAt))).limit(200)))"string"==typeof c.meta.accountId&&/^[0-9a-f]{32}$/i.test(c.meta.accountId)&&g.add(c.meta.accountId);return[...g].slice(0,5)}async function aD(a,c,f,g){let h=(await (0,d.f)().select({id:e.resources.id,externalId:e.resources.externalId,meta:e.resources.meta,goneAt:e.resources.goneAt}).from(e.resources).where((0,b.b)((0,b.u)(e.resources.accountId,a),(0,b.u)(e.resources.kind,"d1_database")))).filter(a=>a.meta.accountId===c),i=new Map(h.map(a=>[a.externalId,a])),j=new Set(f.map(a=>a.uuid));await (0,d.f)().transaction(async d=>{for(let h of f){let f={accountId:c,createdAt:h.createdAt},j=i.get(h.uuid);j?await d.update(e.resources).set({name:h.name,meta:f,lastSeenAt:g,goneAt:null,updatedAt:g}).where((0,b.u)(e.resources.id,j.id)):await d.insert(e.resources).values({accountId:a,kind:"d1_database",externalId:h.uuid,name:h.name,meta:f,monitored:!0,lastSeenAt:g}).onConflictDoNothing({target:[e.resources.accountId,e.resources.kind,e.resources.externalId]})}let k=h.filter(a=>!j.has(a.externalId)&&!a.goneAt).map(a=>a.id);k.length&&await d.update(e.resources).set({goneAt:g,updatedAt:g}).where((0,b.y)(e.resources.id,k))})}var aE=a.i(666680),aF=a.i(263251),aG=a.i(634418);async function aH(a=new Date){let b=(0,aE.randomUUID)(),e=new Date(a.getTime()+aG.d).toISOString(),f=await (0,d.f)().execute(c.B`
2
2
  insert into ops.settings (key, value) values ('collector.lease', ${JSON.stringify({until:e,owner:b})}::jsonb)
3
3
  on conflict (key) do update set value = excluded.value, updated_at = now()
4
4
  where (ops.settings.value->>'until')::timestamptz < ${a.toISOString()}::timestamptz
5
- returning key`);return(0,aE.f)(f).length>0?b:null}async function aH(a){await (0,d.f)().execute(c.B`
5
+ returning key`);return(0,aF.f)(f).length>0?b:null}async function aI(a){await (0,d.f)().execute(c.B`
6
6
  update ops.settings set value = jsonb_build_object('until', '1970-01-01T00:00:00Z'), updated_at = now()
7
- where key = 'collector.lease' and value->>'owner' = ${a}`)}var aI=a.i(418864),aJ=a.i(903816),aK=a.i(445710),aL=a.i(306556);function aM(a){let b=a instanceof Error&&a.cause instanceof Error?a.cause:a,c=(b instanceof Error?b.message:"").split("\n")[0].replace(/Bearer\s+\S+/gi,"Bearer [hidden]").trim()||"failed";return c.length>200?`${c.slice(0,200)}…`:c}a.i(569057);let aN="collector.lastRun",aO="vercel.backoffUntil",aP="vercel.currentMiss",aQ={supabase:aj,supabaseUsage:ak,neon:al,firebase:am,firebaseUsage:an,extraDbs:au};async function aR(){let[a]=await (0,d.f)().select().from(e.settings).where((0,b.u)(e.settings.key,aN)).limit(1);return a?.value??{}}async function aS(a){await (0,d.f)().insert(e.settings).values({key:aN,value:a}).onConflictDoUpdate({target:e.settings.key,set:{value:a,updatedAt:new Date}})}let aT=a=>(0,l.f)(a);async function aU(a,f,g,h,i=[]){let j=(await (0,d.f)().select({m:e.monitors,app:e.resources}).from(e.monitors).innerJoin(e.resources,(0,b.u)(e.resources.id,e.monitors.resourceId)).where((0,b.b)((0,b.u)(e.monitors.kind,"http"),(0,b.u)(e.monitors.paused,!1),(0,b.u)(e.monitors.ownerPaused,!1),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt))).orderBy(c.B`${e.monitors.lastCheckedAt} asc nulls first`,e.monitors.id)).filter(({m:b})=>(0,aF.B)(b.lastCheckedAt,a,h));if(!j.length)return 0;let k=await (0,p.P)(j,6,({m:a})=>{let b=(0,aF.P)(a.timeoutMs,f,Date.now());return null===b?Promise.resolve(null):(0,p.b)(a.url,{expectedStatus:a.expectedStatus,timeoutMs:b,body:(0,aJ.C)(a)})}),l=j.flatMap((a,b)=>k[b]?[{...a,r:k[b]}]:[]);if(l.length<j.length&&g.push(`checks: ${j.length-l.length} monitors skipped, time budget used`),!l.length)return 0;let m=[];for(let b of l)await (0,aK.j)(b.m,b.r,a)&&m.push(b);return m.length?(await (0,d.f)().insert(e.checks).values(m.map(({m:b,app:c,r:d})=>({monitorId:b.id,at:a,ok:d.ok,statusCode:d.statusCode,latencyMs:d.latencyMs,error:d.error,inMaintenance:null!==(0,I.x)(i,{monitorId:b.id,appId:c.id},a)}))),await aT(m.map(({m:b,app:c,r:d})=>(0,aL.F)({resourceId:c.id,path:(0,K.K)(b.url),prev:b.state,next:(0,aL.G)(b.failStreak,d).state,code:d.statusCode,error:d.error,at:a}))),m.length):0}let aV=["checks","heartbeats"];async function aW(a,b,c=k.w){if(!aV.some(b=>a.includes(b)))return[];try{return await c()}catch(a){return b.push(`maintenance: ${aM(a)}`),[]}}async function aX(a){let[c]=await (0,d.f)().select().from(e.settings).where((0,b.u)(e.settings.key,aO)).limit(1),f=c?.value?.until;return!!f&&a.getTime()<new Date(f).getTime()}async function aY(a,b){if("transient"!==a.kind||!a.retryAfterS)return!1;let c={until:new Date(b.getTime()+1e3*Math.min(a.retryAfterS,3600)).toISOString()};return await (0,d.f)().insert(e.settings).values({key:aO,value:c}).onConflictDoUpdate({target:e.settings.key,set:{value:c,updatedAt:b}}),!0}let aZ=a=>c.B`coalesce(${e.deployments.externalId} = ${a}::text, false)`;async function a$(a,g,h){if(await aX(a))return;let i=(0,H.f)().OPS_ENCRYPTION_KEY;for(let j of(await (0,d.f)().select().from(e.accounts).where((0,b.b)((0,b.u)(e.accounts.provider,"vercel"),(0,b.u)(e.accounts.status,"ok"))))){let k=(0,m.V)({ciphertext:j.credentialCiphertext,iv:j.credentialIv},i);if((0,f.A)(k)||!k){h.push(`vercel/${j.label}: credential can't be read`);continue}let l=await (0,d.f)().select().from(e.resources).where((0,b.b)((0,b.u)(e.resources.accountId,j.id),(0,b.u)(e.resources.kind,"app"),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt)));if(!l.length)continue;let n=new Map(l.map(a=>[a.externalId,a])),o=await (0,J.X)(k);if(!o.ok){let c=(0,f.E)({ok:!1,kind:o.kind,error:o.error});if(c&&await (0,d.f)().update(e.accounts).set({...c,updatedAt:a}).where((0,b.u)(e.accounts.id,j.id)),h.push(`vercel/${j.label}: ${o.error}`),await aY(o,a))return;continue}let p=new Set(l.map(a=>String(a.meta.teamId)));for(let f of o.data.filter(a=>p.has(a.id))){if(Date.now()>g)return void h.push("vercel: skipped remaining teams, time budget used");let[i,j]=await Promise.all([(0,J.W)(k,f),(0,J.K)(k,f,{since:a.getTime()-6048e5,limit:100})]);if(!i.ok||!j.ok){let b=i.ok?j:i;if(h.push(`vercel/${f.name}: ${b.error}`),await aY(b,a))return;continue}let m=new Map(i.data.map(a=>[a.id,a.currentDeploymentId])),o=j.data.filter(a=>n.has(a.projectId)),p=new Map((o.length?await (0,d.f)().select({externalId:e.deployments.externalId,state:e.deployments.state,target:e.deployments.target,branch:e.deployments.branch,commitSha:e.deployments.commitSha,commitMessage:e.deployments.commitMessage,source:e.deployments.source,url:e.deployments.url,buildingAt:e.deployments.buildingAt,readyAt:e.deployments.readyAt}).from(e.deployments).where((0,b.y)(e.deployments.externalId,o.map(a=>a.id))):[]).map(a=>[a.externalId,a])),q=[];for(let b of o){let c=n.get(b.projectId),f=p.get(b.id),g={state:b.state,target:b.target,branch:b.branch,commitSha:b.sha,commitMessage:b.message,source:b.source,url:b.url,buildingAt:b.buildingAt,readyAt:b.readyAt};if((0,K.E)(f,g)){let f={resourceId:c.id,externalId:b.id,...g,createdAtProvider:b.createdAt,updatedAt:a};await (0,d.f)().insert(e.deployments).values(f).onConflictDoUpdate({target:e.deployments.externalId,set:f})}q.push((0,aL.L)(f?.state,b,c.id,a))}await aT(q);let r=l.filter(a=>String(a.meta.teamId)===f.id),s=await (0,d.f)().select({resourceId:e.deployments.resourceId,id:e.deployments.externalId,createdAt:e.deployments.createdAtProvider}).from(e.deployments).where((0,b.b)((0,b.y)(e.deployments.resourceId,r.map(a=>a.id)),(0,b.u)(e.deployments.target,"production"),(0,b.u)(e.deployments.state,"ready"))),[t]=await (0,d.f)().select().from(e.settings).where((0,b.u)(e.settings.key,aP)).limit(1),u=[],v=()=>u.length?(0,d.f)().insert(e.settings).values({key:aP,value:(0,K.Y)(t?.value,u,a)}).onConflictDoUpdate({target:e.settings.key,set:{value:(0,K.Y)(t?.value,u,a),updatedAt:a}}):Promise.resolve();for(let b of(0,K.Q)(r,m,s,(0,K.S)(t?.value,a))){if(Date.now()>g)break;let c=await (0,J.S)(k,f,b.deploymentId);if(!c.ok){if(h.push(`vercel/${f.name}: current deployment: ${c.error}`),await aY(c,a))return void await v();u.push(b.deploymentId);continue}let i=c.data,j={resourceId:b.appId,externalId:i.id,state:i.state,target:i.target,branch:i.branch,commitSha:i.sha,commitMessage:i.message,source:i.source,url:i.url,buildingAt:i.buildingAt,readyAt:i.readyAt,createdAtProvider:i.createdAt,updatedAt:a};await (0,d.f)().insert(e.deployments).values(j).onConflictDoUpdate({target:e.deployments.externalId,set:j}),"ready"===i.state&&"production"===i.target?s.push({resourceId:b.appId,id:i.id,createdAt:i.createdAt}):u.push(b.deploymentId)}for(let f of(await v(),r)){let{currentId:g,previousId:h}=(0,K.a)(s.filter(a=>a.resourceId===f.id),m.get(f.externalId)??null);await (0,d.f)().update(e.deployments).set({isCurrent:aZ(g),isPreviousProduction:aZ(h),updatedAt:a}).where((0,b.b)((0,b.u)(e.deployments.resourceId,f.id),(0,b.F)(c.B`${e.deployments.isCurrent} is distinct from ${aZ(g)}`,c.B`${e.deployments.isPreviousProduction} is distinct from ${aZ(h)}`)))}}}}async function a_(a){let f=await (0,d.f)().select().from(e.resources).where((0,b.b)((0,b.u)(e.resources.kind,"app"),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt)));if(!f.length)return;let g=await (0,d.f)().select().from(e.monitors).where((0,b.b)((0,b.y)(e.monitors.resourceId,f.map(a=>a.id)),(0,b.u)(e.monitors.paused,!1),(0,b.u)(e.monitors.ownerPaused,!1))),h=new Set((await (0,d.f)().select({r:e.deployments.resourceId}).from(e.deployments).where((0,b.b)((0,b.y)(e.deployments.resourceId,f.map(a=>a.id)),(0,b.u)(e.deployments.target,"production"),(0,b.u)(e.deployments.state,"building"),(0,b.B)(e.deployments.createdAtProvider,new Date(a.getTime()-36e5))))).map(a=>a.r)),i=await ai(f.map(a=>a.id)),j=new Map((await (0,d.f)().select().from(e.snapshots).where((0,b.y)(e.snapshots.resourceId,f.map(a=>a.id)))).map(a=>[a.resourceId,a]));for(let b of f){let f=g.filter(a=>a.resourceId===b.id),k=(0,aL.V)({monitors:f.map(a=>a.state),building:h.has(b.id),dbPaused:i.has(b.id)}),l=f.find(a=>"err"===a.state)??f.find(a=>"warn"===a.state),m={code:l?.lastStatus??null,latencyMs:f.find(a=>"heartbeat"!==a.kind)?.lastLatencyMs??null,dbPaused:i.has(b.id)},n=j.get(b.id);await (0,d.f)().insert(e.snapshots).values({resourceId:b.id,state:k,data:m,collectedAt:a,stateSince:a}).onConflictDoUpdate({target:e.snapshots.resourceId,set:{state:k,data:c.B`${e.snapshots.data} || ${JSON.stringify(m)}::jsonb`,collectedAt:a,...n?.state!==k?{stateSince:a}:{}}})}}async function a0(a,b={}){let c={writeLastRun:aS,refreshApps:a_,refreshNetwork:aI.x,invalidate:g.D,...b};try{await c.writeLastRun({...a.lastRun,...Object.fromEntries(a.done.map(b=>[b,a.started.toISOString()]))});try{await c.refreshApps(new Date)}catch(b){a.errors.push(`app-snapshots: ${aM(b)}`)}if(a.done.some(a=>aI.p.includes(a)))try{await c.refreshNetwork(new Date)}catch(b){a.errors.push(`network-states: ${aM(b)}`)}}finally{c.invalidate((0,h.o)(a.tried??a.done))}}async function a1(a,b,c,d={evaluate:i.$,deliver:o.q,digest:o.J}){let e=[];if(a.includes("alerts"))if(Date.now()>b)c.push("alerts: skipped, time budget used");else{let a=!0;try{await d.evaluate(new Date),console.info("collector alerts evaluated")}catch(b){a=!1,c.push(`alerts: ${aM(b)}`)}try{await d.deliver(new Date,b),console.info("collector notifications delivered")}catch(b){a=!1,c.push(`notify: ${aM(b)}`)}a&&e.push("alerts")}if(a.includes("digest")&&(0,aF.z)("digest",b,Date.now()))try{await d.digest(new Date),console.info("collector digest done"),e.push("digest")}catch(a){c.push(`digest: ${aM(a)}`)}return e}async function a2(a,b,c,d){let e=[],f=[];for(let g of a){if(Date.now()>b){c.push(`${g}: skipped, time budget used`);continue}if((0,aF.z)(g,b,Date.now())){f.push(g);try{await d(g),e.push(g)}catch(a){c.push(`${g}: ${aM(a)}`)}}}return{done:e,tried:f}}async function a3(a){let c,f=new Date,g=await aG(f);if(!g)return{skipped:!0,ok:!0,tasks:[],checks:0,durationMs:0,errors:[]};try{[c]=await (0,d.f)().insert(e.collectorRuns).values({startedAt:f,trigger:"builtin"===a?"manual":a}).returning({id:e.collectorRuns.id})}catch(a){throw await aH(g).catch(()=>void 0),a}let h=[],i=[],k=0,l=f.getTime()+aF.p,m=a=>console.info(`collector ${a} +${Date.now()-f.getTime()}ms`);try{m("start");let b=await aR(),c="cron_job_org"!==a&&"builtin"!==a,d=(0,aF.S)(b,f,c),e=d.filter(a=>aF.u.includes(a)),g=e.includes("alerts")?l-aF.X:l,o=await aW(d,h);m(`due ${d.join(",")}`);let{done:p,tried:q}=await a2(d.filter(a=>!aF.u.includes(a)),g,h,async a=>{if(m(`task ${a}`),"heartbeats"===a){let a=new Date;k+=await (0,j.f)(a,(b,c)=>null!==(0,I.x)(o,{monitorId:b,appId:c},a),c)}"checks"===a&&(k+=await aU(new Date,g,h,c,o)),"vercel"===a&&await a$(new Date,g,h);let b=aQ[a];b&&await b({now:new Date,deadline:g,errors:h}),"cloudflare"===a&&await (0,aI.h)(new Date,g,h),"domains"===a&&await (0,aI.H)(new Date,g,h),"tls"===a&&await (0,aI.V)(new Date,g,h),"rdap"===a&&await (0,aI.W)(new Date,g,h),"eol"===a&&await (0,aI.i)(new Date,g,h),"status"===a&&await (0,G.i)(new Date),"logs"===a&&await (0,n._)(new Date,g,h),"pageviews"===a&&await F(new Date,g,h)});i.push(...p),m("main done"),await a0({lastRun:b,done:i,tried:q,started:f,errors:h}),m("settled");let r=await a1(e,l,h);m("post done"),r.length&&await aS({...b,...Object.fromEntries([...i,...r].map(a=>[a,f.toISOString()]))}),i.push(...r)}catch(a){h.push(`run: ${aM(a)}`)}finally{let a=Date.now()-f.getTime();await (0,d.f)().update(e.collectorRuns).set({finishedAt:new Date,ok:0===h.length,errorSummary:h.join("\n").slice(0,2e3)||null,durationMs:a,tasks:i,checks:k}).where((0,b.u)(e.collectorRuns.id,c.id)).catch(()=>void 0),await aH(g).catch(()=>void 0)}return{skipped:!1,ok:0===h.length,tasks:i,checks:k,durationMs:Date.now()-f.getTime(),errors:h}}a.s(["f",0,a3],270432)}];
7
+ where key = 'collector.lease' and value->>'owner' = ${a}`)}var aJ=a.i(418864),aK=a.i(903816),aL=a.i(445710),aM=a.i(306556);function aN(a){let b=a instanceof Error&&a.cause instanceof Error?a.cause:a,c=(b instanceof Error?b.message:"").split("\n")[0].replace(/Bearer\s+\S+/gi,"Bearer [hidden]").trim()||"failed";return c.length>200?`${c.slice(0,200)}…`:c}a.i(569057);let aO="collector.lastRun",aP="vercel.backoffUntil",aQ="vercel.currentMiss",aR={supabase:ak,supabaseUsage:al,neon:am,firebase:an,firebaseUsage:ao,extraDbs:av};async function aS(){let[a]=await (0,d.f)().select().from(e.settings).where((0,b.u)(e.settings.key,aO)).limit(1);return a?.value??{}}async function aT(a){await (0,d.f)().insert(e.settings).values({key:aO,value:a}).onConflictDoUpdate({target:e.settings.key,set:{value:a,updatedAt:new Date}})}let aU=a=>(0,l.f)(a);async function aV(a,f,g,h,i=[]){let j=(await (0,d.f)().select({m:e.monitors,app:e.resources}).from(e.monitors).innerJoin(e.resources,(0,b.u)(e.resources.id,e.monitors.resourceId)).where((0,b.b)((0,b.u)(e.monitors.kind,"http"),(0,b.u)(e.monitors.paused,!1),(0,b.u)(e.monitors.ownerPaused,!1),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt))).orderBy(c.B`${e.monitors.lastCheckedAt} asc nulls first`,e.monitors.id)).filter(({m:b})=>(0,aG.B)(b.lastCheckedAt,a,h));if(!j.length)return 0;let k=await (0,q.P)(j,6,({m:a})=>{let b=(0,aG.P)(a.timeoutMs,f,Date.now());return null===b?Promise.resolve(null):(0,q.b)(a.url,{expectedStatus:a.expectedStatus,timeoutMs:b,body:(0,aK.C)(a)})}),l=j.flatMap((a,b)=>k[b]?[{...a,r:k[b]}]:[]);if(l.length<j.length&&g.push(`checks: ${j.length-l.length} monitors skipped, time budget used`),!l.length)return 0;let m=[];for(let b of l)await (0,aL.j)(b.m,b.r,a)&&m.push(b);return m.length?(await (0,d.f)().insert(e.checks).values(m.map(({m:b,app:c,r:d})=>({monitorId:b.id,at:a,ok:d.ok,statusCode:d.statusCode,latencyMs:d.latencyMs,error:d.error,inMaintenance:null!==(0,J.x)(i,{monitorId:b.id,appId:c.id},a)}))),await aU(m.map(({m:b,app:c,r:d})=>(0,aM.F)({resourceId:c.id,path:(0,L.K)(b.url),prev:b.state,next:(0,aM.G)(b.failStreak,d).state,code:d.statusCode,error:d.error,at:a}))),m.length):0}let aW=["checks","heartbeats"];async function aX(a,b,c=k.w){if(!aW.some(b=>a.includes(b)))return[];try{return await c()}catch(a){return b.push(`maintenance: ${aN(a)}`),[]}}async function aY(a){let[c]=await (0,d.f)().select().from(e.settings).where((0,b.u)(e.settings.key,aP)).limit(1),f=c?.value?.until;return!!f&&a.getTime()<new Date(f).getTime()}async function aZ(a,b){if("transient"!==a.kind||!a.retryAfterS)return!1;let c={until:new Date(b.getTime()+1e3*Math.min(a.retryAfterS,3600)).toISOString()};return await (0,d.f)().insert(e.settings).values({key:aP,value:c}).onConflictDoUpdate({target:e.settings.key,set:{value:c,updatedAt:b}}),!0}let a$=a=>c.B`coalesce(${e.deployments.externalId} = ${a}::text, false)`;async function a_(a,g,h){if(await aY(a))return;let i=(0,I.f)().OPS_ENCRYPTION_KEY;for(let j of(await (0,d.f)().select().from(e.accounts).where((0,b.b)((0,b.u)(e.accounts.provider,"vercel"),(0,b.u)(e.accounts.status,"ok"))))){let k=(0,m.V)({ciphertext:j.credentialCiphertext,iv:j.credentialIv},i);if((0,f.A)(k)||!k){h.push(`vercel/${j.label}: credential can't be read`);continue}let l=await (0,d.f)().select().from(e.resources).where((0,b.b)((0,b.u)(e.resources.accountId,j.id),(0,b.u)(e.resources.kind,"app"),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt)));if(!l.length)continue;let n=new Map(l.map(a=>[a.externalId,a])),o=await (0,K.X)(k);if(!o.ok){let c=(0,f.E)({ok:!1,kind:o.kind,error:o.error});if(c&&await (0,d.f)().update(e.accounts).set({...c,updatedAt:a}).where((0,b.u)(e.accounts.id,j.id)),h.push(`vercel/${j.label}: ${o.error}`),await aZ(o,a))return;continue}let p=new Set(l.map(a=>String(a.meta.teamId)));for(let f of o.data.filter(a=>p.has(a.id))){if(Date.now()>g)return void h.push("vercel: skipped remaining teams, time budget used");let[i,j]=await Promise.all([(0,K.W)(k,f),(0,K.K)(k,f,{since:a.getTime()-6048e5,limit:100})]);if(!i.ok||!j.ok){let b=i.ok?j:i;if(h.push(`vercel/${f.name}: ${b.error}`),await aZ(b,a))return;continue}let m=new Map(i.data.map(a=>[a.id,a.currentDeploymentId])),o=j.data.filter(a=>n.has(a.projectId)),p=new Map((o.length?await (0,d.f)().select({externalId:e.deployments.externalId,state:e.deployments.state,target:e.deployments.target,branch:e.deployments.branch,commitSha:e.deployments.commitSha,commitMessage:e.deployments.commitMessage,source:e.deployments.source,url:e.deployments.url,buildingAt:e.deployments.buildingAt,readyAt:e.deployments.readyAt}).from(e.deployments).where((0,b.y)(e.deployments.externalId,o.map(a=>a.id))):[]).map(a=>[a.externalId,a])),q=[];for(let b of o){let c=n.get(b.projectId),f=p.get(b.id),g={state:b.state,target:b.target,branch:b.branch,commitSha:b.sha,commitMessage:b.message,source:b.source,url:b.url,buildingAt:b.buildingAt,readyAt:b.readyAt};if((0,L.E)(f,g)){let f={resourceId:c.id,externalId:b.id,...g,createdAtProvider:b.createdAt,updatedAt:a};await (0,d.f)().insert(e.deployments).values(f).onConflictDoUpdate({target:e.deployments.externalId,set:f})}q.push((0,aM.L)(f?.state,b,c.id,a))}await aU(q);let r=l.filter(a=>String(a.meta.teamId)===f.id),s=await (0,d.f)().select({resourceId:e.deployments.resourceId,id:e.deployments.externalId,createdAt:e.deployments.createdAtProvider}).from(e.deployments).where((0,b.b)((0,b.y)(e.deployments.resourceId,r.map(a=>a.id)),(0,b.u)(e.deployments.target,"production"),(0,b.u)(e.deployments.state,"ready"))),[t]=await (0,d.f)().select().from(e.settings).where((0,b.u)(e.settings.key,aQ)).limit(1),u=[],v=()=>u.length?(0,d.f)().insert(e.settings).values({key:aQ,value:(0,L.Y)(t?.value,u,a)}).onConflictDoUpdate({target:e.settings.key,set:{value:(0,L.Y)(t?.value,u,a),updatedAt:a}}):Promise.resolve();for(let b of(0,L.Q)(r,m,s,(0,L.S)(t?.value,a))){if(Date.now()>g)break;let c=await (0,K.S)(k,f,b.deploymentId);if(!c.ok){if(h.push(`vercel/${f.name}: current deployment: ${c.error}`),await aZ(c,a))return void await v();u.push(b.deploymentId);continue}let i=c.data,j={resourceId:b.appId,externalId:i.id,state:i.state,target:i.target,branch:i.branch,commitSha:i.sha,commitMessage:i.message,source:i.source,url:i.url,buildingAt:i.buildingAt,readyAt:i.readyAt,createdAtProvider:i.createdAt,updatedAt:a};await (0,d.f)().insert(e.deployments).values(j).onConflictDoUpdate({target:e.deployments.externalId,set:j}),"ready"===i.state&&"production"===i.target?s.push({resourceId:b.appId,id:i.id,createdAt:i.createdAt}):u.push(b.deploymentId)}for(let f of(await v(),r)){let{currentId:g,previousId:h}=(0,L.a)(s.filter(a=>a.resourceId===f.id),m.get(f.externalId)??null);await (0,d.f)().update(e.deployments).set({isCurrent:a$(g),isPreviousProduction:a$(h),updatedAt:a}).where((0,b.b)((0,b.u)(e.deployments.resourceId,f.id),(0,b.F)(c.B`${e.deployments.isCurrent} is distinct from ${a$(g)}`,c.B`${e.deployments.isPreviousProduction} is distinct from ${a$(h)}`)))}}}}async function a0(a){let f=await (0,d.f)().select().from(e.resources).where((0,b.b)((0,b.u)(e.resources.kind,"app"),(0,b.u)(e.resources.monitored,!0),(0,b.M)(e.resources.goneAt)));if(!f.length)return;let g=await (0,d.f)().select().from(e.monitors).where((0,b.b)((0,b.y)(e.monitors.resourceId,f.map(a=>a.id)),(0,b.u)(e.monitors.paused,!1),(0,b.u)(e.monitors.ownerPaused,!1))),h=new Set((await (0,d.f)().select({r:e.deployments.resourceId}).from(e.deployments).where((0,b.b)((0,b.y)(e.deployments.resourceId,f.map(a=>a.id)),(0,b.u)(e.deployments.target,"production"),(0,b.u)(e.deployments.state,"building"),(0,b.B)(e.deployments.createdAtProvider,new Date(a.getTime()-36e5))))).map(a=>a.r)),i=await aj(f.map(a=>a.id)),j=new Map((await (0,d.f)().select().from(e.snapshots).where((0,b.y)(e.snapshots.resourceId,f.map(a=>a.id)))).map(a=>[a.resourceId,a]));for(let b of f){let f=g.filter(a=>a.resourceId===b.id),k=(0,aM.V)({monitors:f.map(a=>a.state),building:h.has(b.id),dbPaused:i.has(b.id)}),l=f.find(a=>"err"===a.state)??f.find(a=>"warn"===a.state),m={code:l?.lastStatus??null,latencyMs:f.find(a=>"heartbeat"!==a.kind)?.lastLatencyMs??null,dbPaused:i.has(b.id)},n=j.get(b.id);await (0,d.f)().insert(e.snapshots).values({resourceId:b.id,state:k,data:m,collectedAt:a,stateSince:a}).onConflictDoUpdate({target:e.snapshots.resourceId,set:{state:k,data:c.B`${e.snapshots.data} || ${JSON.stringify(m)}::jsonb`,collectedAt:a,...n?.state!==k?{stateSince:a}:{}}})}}async function a1(a,b={}){let c={writeLastRun:aT,refreshApps:a0,refreshNetwork:aJ.x,invalidate:g.D,...b};try{await c.writeLastRun({...a.lastRun,...Object.fromEntries(a.done.map(b=>[b,a.started.toISOString()]))});try{await c.refreshApps(new Date)}catch(b){a.errors.push(`app-snapshots: ${aN(b)}`)}if(a.done.some(a=>aJ.p.includes(a)))try{await c.refreshNetwork(new Date)}catch(b){a.errors.push(`network-states: ${aN(b)}`)}}finally{c.invalidate((0,h.o)(a.tried??a.done))}}async function a2(a,b,c,d={evaluate:i.$,deliver:o.q,digest:o.J}){let e=[];if(a.includes("alerts"))if(Date.now()>b)c.push("alerts: skipped, time budget used");else{let a=!0;try{await d.evaluate(new Date),console.info("collector alerts evaluated")}catch(b){a=!1,c.push(`alerts: ${aN(b)}`)}try{await d.deliver(new Date,b),console.info("collector notifications delivered")}catch(b){a=!1,c.push(`notify: ${aN(b)}`)}a&&e.push("alerts")}if(a.includes("digest")&&(0,aG.z)("digest",b,Date.now()))try{await d.digest(new Date),console.info("collector digest done"),e.push("digest")}catch(a){c.push(`digest: ${aN(a)}`)}return e}async function a3(a,b,c,d){let e=[],f=[];for(let g of a){if(Date.now()>b){c.push(`${g}: skipped, time budget used`);continue}if((0,aG.z)(g,b,Date.now())){f.push(g);try{await d(g),e.push(g)}catch(a){c.push(`${g}: ${aN(a)}`)}}}return{done:e,tried:f}}async function a4(a){let c,f=new Date,g=await aH(f);if(!g)return{skipped:!0,ok:!0,tasks:[],checks:0,durationMs:0,errors:[]};try{[c]=await (0,d.f)().insert(e.collectorRuns).values({startedAt:f,trigger:"builtin"===a?"manual":a}).returning({id:e.collectorRuns.id})}catch(a){throw await aI(g).catch(()=>void 0),a}let h=[],i=[],k=0,l=f.getTime()+aG.p,m=a=>console.info(`collector ${a} +${Date.now()-f.getTime()}ms`);try{m("start");let b=await aS(),c="cron_job_org"!==a&&"builtin"!==a,d=await (0,p.I)(),e=(0,aG.S)(b,f,c,d),g=e.filter(a=>aG.u.includes(a)),o=g.includes("alerts")?l-aG.X:l,q=await aX(e,h);m(`due ${e.join(",")}`);let{done:r,tried:s}=await a3(e.filter(a=>!aG.u.includes(a)),o,h,async a=>{if(m(`task ${a}`),"heartbeats"===a){let a=new Date;k+=await (0,j.f)(a,(b,c)=>null!==(0,J.x)(q,{monitorId:b,appId:c},a),c)}"checks"===a&&(k+=await aV(new Date,o,h,c,q)),"vercel"===a&&await a_(new Date,o,h);let b=aR[a];b&&await b({now:new Date,deadline:o,errors:h,protectOnly:(0,aG.$)(a,d)}),"cloudflare"===a&&await (0,aJ.h)(new Date,o,h),"domains"===a&&await (0,aJ.H)(new Date,o,h),"tls"===a&&await (0,aJ.V)(new Date,o,h),"rdap"===a&&await (0,aJ.W)(new Date,o,h),"eol"===a&&await (0,aJ.i)(new Date,o,h),"status"===a&&await (0,H.i)(new Date),"logs"===a&&await (0,n._)(new Date,o,h),"pageviews"===a&&await G(new Date,o,h)});i.push(...r),m("main done"),await a1({lastRun:b,done:i,tried:s,started:f,errors:h}),m("settled");let t=await a2(g,l,h);m("post done"),t.length&&await aT({...b,...Object.fromEntries([...i,...t].map(a=>[a,f.toISOString()]))}),i.push(...t)}catch(a){h.push(`run: ${aN(a)}`)}finally{let a=Date.now()-f.getTime();await (0,d.f)().update(e.collectorRuns).set({finishedAt:new Date,ok:0===h.length,errorSummary:h.join("\n").slice(0,2e3)||null,durationMs:a,tasks:i,checks:k}).where((0,b.u)(e.collectorRuns.id,c.id)).catch(()=>void 0),await aI(g).catch(()=>void 0)}return{skipped:!1,ok:0===h.length,tasks:i,checks:k,durationMs:Date.now()-f.getTime(),errors:h}}a.s(["f",0,a4],270432)}];
8
8
 
9
9
  //# sourceMappingURL=src_lib_collector_run_ts_0-q8is8s0y9cq._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[901615,a=>{"use strict";a.s(["I",0,{empty:"Ask one above, or from an app's Why dialog. Answers come from your AI providers. Questions are kept 7 days.",agModelSuffix:" (agent)",waiting:"Waiting for an answer…",hint:"Answers come from your AI providers, here in a few seconds. Kept 7 days."},"B",0,{agentTitle:a=>`An agent is connected over MCP (${a} model${1===a?"":"s"}).`,agentBody:"Ask, the Playground and POST /api/v1/ai/questions go to the agent. Only real-time /api/v1/ai/chat needs a provider.",noneBody:"Calls to /api/v1/ai answer 503 provider_not_connected, and Ask AI and summaries need a provider too. MCP still works.",infoAgentTitle:"An agent is connected over MCP; a provider here is only for instant answers.",infoAgentBody:"Connect Gemini or Workers AI if you want answers in seconds (real-time /api/v1/ai/chat). Ask and the Playground already work through the agent.",infoBody:"Agents over MCP work without one. Connect Gemini or Workers AI for answers in seconds (Ask AI, the Why dialog, summaries)."},"p",0,{automationsBelow:"the automations below",automationTitle:"Scheduled automation",automationLead:"A scheduled run in your agent (Gemini CLI, OpenClaw or another MCP client), with the agent's own subscription (Watchbell can't see or spend it).",notSupportedLead:"Signing in with a Gemini or other consumer account to borrow its quota."},"n",0,{notSet:(a,b=!1)=>`${a} ${b?"aren't":"isn't"} set in app/.env (restart Watchbell after adding ${b?"them":"it"}).`,setting:"a setting in app/.env",keyHome:"app/.env (OPS_ENCRYPTION_KEY)",checkWhere:"in app/.env",apply:"restart Watchbell"},"C",0,{writeNotesLong:"Off unless you tick it. Lets an agent post AI notes (MCP tool submit_ai_note) that show on Overview and the app page, and answer the questions you ask with Ask AI (MCP tool answer_question). It can't write anything else.",pinMessage:"Only Gemini models (names starting with gemini), or a model of this custom provider (listed or added on Models).",namePlaceholder:"my-agent"},"U",0,{noteSource:"gemini-cli",modelsAgSentence:"",agModelExamples:[],askAgSentence:" An agent model (ag/<id>, listed only while an agent reports its models) is queued for that agent instead: 202 pending, poll pollUrl until status is answered or expired (at most 20 wait, 429 quota_exceeded).",queued:"Queued for an agent (an ag/<id> model; or the same question from this key was already waiting). Poll pollUrl.",answeredByAgent:"an agent",answeredByClient:"gemini-cli/1.0",adviceAgent:"an agent such as Gemini CLI",mcpClients:"Gemini CLI, OpenClaw and others",advisorExample:{name:"Assistant prompt from another app",system:"You are a release assistant for a small team. Answer in two short paragraphs.",user:"Which of my apps should I look at first this morning?"},adviceFor:"Ask"},"T",0,{hint:"via an agent · ~10–40 s",subAgent:"Try a model with your owner session. Provider models answer in seconds and nothing is stored. Agent models answer through the AI inbox in about 10–40 s; those questions also show on AI › Ask.",giveUp:"No answer after 10 minutes. It will still show on AI › Ask when the agent answers.",emptyAnswer:"(The agent answered without text.)",answerMeta:(a,b)=>`${a} \xb7 agent \xb7 ${b} s`,expired:"The agent didn't answer this question in time.",notTaken:"The agent didn't take the question. Try again.",groupLabel:"Agent",sending:"Sending to the agent…",thinking:"The agent is thinking…",howTitle:"How an agent answers",howBody:"Your question goes to the AI inbox; your agent checks it, reads the console over MCP and answers, usually in about 10–40 s."},"X",0,{noGoogleModels:a=>`${a} answered but offers no Google text models (Gemini or Gemma).`,onlyGoogleOffered:"Only Google models (Gemini, Gemma on Workers AI) can be offered.",modelsLine:"Google only: gemini-* and Gemma (@cf/google/gemma-*) on Workers AI.",localUrl:"Outside self-host mode Watchbell can't reach your computer or network. Use a public https:// URL.",baseUrlHelp:{cloud:"HTTPS only. Must answer GET /models.",selfhost:"Any OpenAI-compatible server that answers GET /models. http:// on your own machine or network works too (for example Ollama at http://localhost:11434/v1)."},keyHelp:{cloud:"Encrypted before it's stored. Never shown again, never sent to the browser.",selfhostCustom:"Optional for a server on your own machine or network (Ollama, LM Studio). If you enter one, it's encrypted before it's stored and never shown again."},noKey:"No key"},"z",0,{mcpTabs:()=>[],serverTabs:()=>[],host:"the server",cronTab:(a,b)=>`# The daily check as a file the cron job reads (the prompt from "Scheduled automation", without its Schedule line)
1
+ module.exports=[901615,a=>{"use strict";a.s(["I",0,{empty:"Ask one above, or from an app's Why dialog. Answers come from your AI providers. Questions are kept 7 days.",agModelSuffix:" (agent)",waiting:"Waiting for an answer…",hint:"Answers come from your AI providers, here in a few seconds. Kept 7 days."},"B",0,{agentTitle:a=>`An agent is connected over MCP (${a} model${1===a?"":"s"}).`,agentBody:"Ask, the Playground and POST /api/v1/ai/questions go to the agent. Only real-time /api/v1/ai/chat needs a provider.",noneBody:"Calls to /api/v1/ai answer 503 provider_not_connected, and Ask AI and summaries need a provider too. MCP still works.",infoAgentTitle:"An agent is connected over MCP; a provider here is only for instant answers.",infoAgentBody:"Connect Gemini or Workers AI if you want answers in seconds (real-time /api/v1/ai/chat). Ask and the Playground already work through the agent.",infoBody:"Agents over MCP work without one. Connect Gemini or Workers AI for answers in seconds (Ask AI, the Why dialog, summaries)."},"p",0,{automationsBelow:"the automations below",automationTitle:"Scheduled automation",automationLead:"A scheduled run in your agent (Gemini CLI, OpenClaw or another MCP client), with the agent's own subscription (Watchbell can't see or spend it).",notSupportedLead:"Signing in with a Gemini or other consumer account to borrow its quota."},"n",0,{notSet:(a,b=!1)=>`${a} ${b?"aren't":"isn't"} set in your .env file (~/.watchbell/.env with npm, app/.env with the installers; restart Watchbell after adding ${b?"them":"it"}).`,setting:"a setting in your .env file (~/.watchbell/.env with npm, app/.env with the installers)",keyHome:"your .env file (OPS_ENCRYPTION_KEY; ~/.watchbell/.env with npm, app/.env with the installers)",checkWhere:"in your .env file (~/.watchbell/.env with npm, app/.env with the installers)",apply:"restart Watchbell"},"C",0,{writeNotesLong:"Off unless you tick it. Lets an agent post AI notes (MCP tool submit_ai_note) that show on Overview and the app page, and answer the questions you ask with Ask AI (MCP tool answer_question). It can't write anything else.",pinMessage:"Only Gemini models (names starting with gemini), or a model of this custom provider (listed or added on Models).",namePlaceholder:"my-agent"},"U",0,{noteSource:"gemini-cli",modelsAgSentence:"",agModelExamples:[],askAgSentence:" An agent model (ag/<id>, listed only while an agent reports its models) is queued for that agent instead: 202 pending, poll pollUrl until status is answered or expired (at most 20 wait, 429 quota_exceeded).",queued:"Queued for an agent (an ag/<id> model; or the same question from this key was already waiting). Poll pollUrl.",answeredByAgent:"an agent",answeredByClient:"gemini-cli/1.0",adviceAgent:"an agent such as Gemini CLI",mcpClients:"Gemini CLI, OpenClaw and others",advisorExample:{name:"Assistant prompt from another app",system:"You are a release assistant for a small team. Answer in two short paragraphs.",user:"Which of my apps should I look at first this morning?"},adviceFor:"Ask"},"T",0,{hint:"via an agent · ~10–40 s",subAgent:"Try a model with your owner session. Provider models answer in seconds and nothing is stored. Agent models answer through the AI inbox in about 10–40 s; those questions also show on AI › Ask.",giveUp:"No answer after 10 minutes. It will still show on AI › Ask when the agent answers.",emptyAnswer:"(The agent answered without text.)",answerMeta:(a,b)=>`${a} \xb7 agent \xb7 ${b} s`,expired:"The agent didn't answer this question in time.",notTaken:"The agent didn't take the question. Try again.",groupLabel:"Agent",sending:"Sending to the agent…",thinking:"The agent is thinking…",howTitle:"How an agent answers",howBody:"Your question goes to the AI inbox; your agent checks it, reads the console over MCP and answers, usually in about 10–40 s."},"X",0,{noGoogleModels:a=>`${a} answered but offers no Google text models (Gemini or Gemma).`,onlyGoogleOffered:"Only Google models (Gemini, Gemma on Workers AI) can be offered.",modelsLine:"Google only: gemini-* and Gemma (@cf/google/gemma-*) on Workers AI.",localUrl:"Outside self-host mode Watchbell can't reach your computer or network. Use a public https:// URL.",baseUrlHelp:{cloud:"HTTPS only. Must answer GET /models.",selfhost:"Any OpenAI-compatible server that answers GET /models. http:// on your own machine or network works too (for example Ollama at http://localhost:11434/v1)."},keyHelp:{cloud:"Encrypted before it's stored. Never shown again, never sent to the browser.",selfhostCustom:"Optional for a server on your own machine or network (Ollama, LM Studio). If you enter one, it's encrypted before it's stored and never shown again."},noKey:"No key"},"z",0,{mcpTabs:()=>[],serverTabs:()=>[],host:"the server",cronTab:(a,b)=>`# The daily check as a file the cron job reads (the prompt from "Scheduled automation", without its Schedule line)
2
2
  cat > ~/watchbell-daily.txt <<'PROMPT'
3
3
  ${a}
4
4
  PROMPT
@@ -1,3 +1,3 @@
1
- module.exports=[560954,862012,a=>{"use strict";var b=a.i(93321),c=a.i(530385),d=a.i(548734),e=a.i(837137),f=a.i(358179),g=a.i(601219),h=a.i(322145);let i="Pause requested · ";function j(a,b){return a.autoRestore?"INACTIVE"!==a.status?{act:!1,reason:"not-paused"}:a.accessDenied?{act:!1,reason:"denied"}:a.lastAutoRestoreAt&&b.getTime()-a.lastAutoRestoreAt.getTime()<216e5?{act:!1,reason:"too-soon"}:a.slotsLeft<=0?{act:!1,reason:"no-slot"}:{act:!0}:{act:!1,reason:"off"}}a.s(["B",0,i,"F",0,j],862012);var k=a.i(893893),l=a.i(672319),m=a.i(492665),n=a.i(683439),o=a.i(75105),p=a.i(112735);async function q(a){let c=a.filter(n.f),f=new Map;if(!c.length)return f;for(let a of(await (0,d.f)().select().from(e.keepActive).where((0,b.y)(e.keepActive.resourceId,c))))f.set(a.resourceId,{keep:a.keep,autoRestore:a.autoRestore,lastKeepAliveAt:a.lastKeepAliveAt});return f}let r={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.`},s={keep:"Keep active",autoRestore:"Auto-restore"};async function t(a,c,f,g){let[h]=await (0,d.f)().select({id:e.resources.id,name:e.resources.name}).from(e.resources).where((0,b.b)((0,b.u)(e.resources.id,a),(0,b.u)(e.resources.kind,"supabase_project"),(0,b.M)(e.resources.goneAt))).limit(1);if(!h)return{ok:!1,error:"That Supabase project is no longer watched."};let i={[c]:f,updatedBy:g,updatedAt:new Date};return await (0,d.f)().insert(e.keepActive).values({resourceId:a,...i}).onConflictDoUpdate({target:e.keepActive.resourceId,set:i}),{ok:!0,message:r[c](h.name,f),audit:{message:`${s[c]} ${f?"on":"off"} \xb7 ${h.name}`,resourceId:a}}}async function u(a){let c=await (0,d.f)().select({data:e.snapshots.data}).from(e.resources).innerJoin(e.snapshots,(0,b.u)(e.snapshots.resourceId,e.resources.id)).where((0,b.b)((0,b.u)(e.resources.accountId,a),(0,b.u)(e.resources.kind,"supabase_project"))),f=new Map;for(let{data:a}of c){let b=(0,k.k)(k.B,a);b.orgSlug&&void 0!==b.freeOrg&&f.set(b.orgSlug,b.freeOrg)}return f}let v=a=>a instanceof Error?a.name:"unknown";async function w(a){let[f]=await (0,d.f)().select({at:e.events.at}).from(e.events).where((0,b.b)((0,b.u)(e.events.reason,"Action"),(0,b.u)(e.events.resourceId,a),(0,b.u)(e.events.type,"action"),(0,b.y)(e.events.kind,["ok","err"]),(0,b.E)(e.events.actorUserId),(0,b.D)(e.events.message,`${i}%`))).orderBy((0,c.A)(e.events.at)).limit(1);return f?.at??null}async function x(a,c,i=1/0){let k=c.filter(a=>!!a.resourceId&&"INACTIVE"===a.status),n=()=>i-Date.now()-500;if(!k.length||250>n())return;let q=await (0,d.f)().select({k:e.keepActive,id:e.resources.id,name:e.resources.name,ref:e.resources.externalId,accountId:e.resources.accountId,label:e.accounts.label,lastTestAt:e.accounts.lastTestAt,ciphertext:e.accounts.credentialCiphertext,iv:e.accounts.credentialIv}).from(e.keepActive).innerJoin(e.resources,(0,b.u)(e.resources.id,e.keepActive.resourceId)).innerJoin(e.accounts,(0,b.u)(e.accounts.id,e.resources.accountId)).where((0,b.b)((0,b.u)(e.keepActive.autoRestore,!0),(0,b.y)(e.keepActive.resourceId,k.map(a=>a.resourceId)),(0,b.u)(e.resources.kind,"supabase_project"),(0,b.M)(e.resources.goneAt)));if(!q.length)return;let r=await (0,h.f)([...new Set(q.map(a=>a.accountId))]),s=new Map,t=new Map;for(let i of q)try{let k=c.filter(a=>a.accountId===i.accountId),q=k.find(a=>a.resourceId===i.id)?.orgSlug??"";if(!s.has(i.accountId)){let a=await u(i.accountId);s.set(i.accountId,a),t.set(i.accountId,(0,l._)(k.map(b=>({status:b.status,freeOrg:a.get(b.orgSlug??"")??null}))).left)}let v=!1===s.get(i.accountId).get(q),x=v?1/0:t.get(i.accountId),y=r.get(i.accountId),z=Math.max(i.k.updatedAt.getTime(),i.lastTestAt?.getTime()??0),A=y?.write==="denied"&&new Date(y.at).getTime()>z,B=j({status:"INACTIVE",autoRestore:!0,lastAutoRestoreAt:i.k.lastAutoRestoreAt,slotsLeft:x,accessDenied:A},a);if(!B.act){"no-slot"===B.reason&&await (0,g.f)([{at:a,type:"action",kind:"info",resourceId:i.id,actorUserId:null,reason:"AutoRestoreWaits",message:`Auto-restore: ${i.name} waits, account ${i.label} has no free slot`,detail:"Pause another project in this account, or restore it by hand once a slot is free."}]);continue}let C=await w(i.id);if(C&&C.getTime()>i.k.updatedAt.getTime())continue;let D=n();if(D<250)return;await (0,d.f)().update(e.keepActive).set({lastAutoRestoreAt:a}).where((0,b.u)(e.keepActive.resourceId,i.id));let E=(0,f.V)({ciphertext:i.ciphertext,iv:i.iv},(0,m.f)().OPS_ENCRYPTION_KEY);if(!E)continue;let F=await (0,p.G)(E,i.ref,{timeoutMs:Math.min(5e3,D)});F.ok?(v||t.set(i.accountId,t.get(i.accountId)-1),await (0,h.y)(i.accountId,"ok"),await (0,g.f)([{at:a,type:"action",kind:"ok",resourceId:i.id,actorUserId:null,message:`Auto-restore: restoring ${i.name}`,detail:null}])):("scope"===F.kind&&await (0,h.y)(i.accountId,"denied"),await (0,g.f)([{at:a,type:"action",kind:"err",resourceId:i.id,actorUserId:null,message:`Auto-restore: ${i.name} couldn't be restored`,detail:"scope"===F.kind?`${(0,o.b)("supabase",{})} Auto-restore stops until then.`:(0,o.S)(F.error)}]))}catch(a){console.warn("auto-restore failed:",v(a))}}async function y(a,c,f=h.W,g=new Date){let i=await (0,h.q)(a.id,"keep-alive",c);if(i)return{ok:!1,error:i};let j=await (0,h.p)(c,"supabase_project");if(!j)return{ok:!1,error:"This project isn't watched any more, or its credential can't be read."};let[k]=await (0,d.f)().select({last:e.keepActive.lastKeepAliveAt}).from(e.keepActive).where((0,b.u)(e.keepActive.resourceId,c)).limit(1);if(k?.last&&g.getTime()-k.last.getTime()<72e6)return f({done:!1,message:"A keep-alive was already sent in the last 20 hours."},a,j.account.id);let l=j.resource.name,m=await (0,p.i)(j.token,j.resource.externalId,{timeoutMs:5e3});return m.ok&&await (0,d.f)().insert(e.keepActive).values({resourceId:c,lastKeepAliveAt:g}).onConflictDoUpdate({target:e.keepActive.resourceId,set:{lastKeepAliveAt:g}}),f(m.ok?{done:!0,message:`Keep-alive sent to ${l}.`,audit:{message:`Keep-alive sent \xb7 ${l}`,resourceId:c}}:{done:!1,failed:{ok:!1,kind:m.kind,error:"scope"===m.kind?"This token can't run the read-only query (Database read).":m.error,...m.status?{status:m.status}:{}},audit:{message:`Keep-alive failed \xb7 ${l}`,resourceId:c}},a,j.account.id)}a.s(["m",0,u,"z",0,x,"A",0,q,"v",0,y,"r",0,t,"G",0,function(a,b,c){return!1===b.get(c)?1/0:(0,l._)(a.map(a=>({status:a.status,freeOrg:b.get(a.orgSlug)??null}))).left}],560954)}];
1
+ module.exports=[560954,862012,a=>{"use strict";var b=a.i(93321),c=a.i(530385),d=a.i(548734),e=a.i(837137),f=a.i(358179),g=a.i(601219),h=a.i(322145);let i="Pause requested · ";function j(a,b){return a.autoRestore?"INACTIVE"!==a.status?{act:!1,reason:"not-paused"}:a.accessDenied?{act:!1,reason:"denied"}:a.lastAutoRestoreAt&&b.getTime()-a.lastAutoRestoreAt.getTime()<216e5?{act:!1,reason:"too-soon"}:a.slotsLeft<=0?{act:!1,reason:"no-slot"}:{act:!0}:{act:!1,reason:"off"}}a.s(["B",0,i,"F",0,j],862012);var k=a.i(893893),l=a.i(672319),m=a.i(492665),n=a.i(683439),o=a.i(75105),p=a.i(112735);async function q(a){let c=a.filter(n.f),f=new Map;if(!c.length)return f;for(let a of(await (0,d.f)().select().from(e.keepActive).where((0,b.y)(e.keepActive.resourceId,c))))f.set(a.resourceId,{keep:a.keep,autoRestore:a.autoRestore,lastKeepAliveAt:a.lastKeepAliveAt});return f}let r={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.`},s={keep:"Keep active",autoRestore:"Auto-restore"};async function t(a,c,f,g){let[h]=await (0,d.f)().select({id:e.resources.id,name:e.resources.name}).from(e.resources).where((0,b.b)((0,b.u)(e.resources.id,a),(0,b.u)(e.resources.kind,"supabase_project"),(0,b.M)(e.resources.goneAt))).limit(1);if(!h)return{ok:!1,error:"That Supabase project is no longer watched."};let i={[c]:f,updatedBy:g,updatedAt:new Date};return await (0,d.f)().insert(e.keepActive).values({resourceId:a,...i}).onConflictDoUpdate({target:e.keepActive.resourceId,set:i}),{ok:!0,message:r[c](h.name,f),audit:{message:`${s[c]} ${f?"on":"off"} \xb7 ${h.name}`,resourceId:a}}}async function u(a){let c=await (0,d.f)().select({data:e.snapshots.data}).from(e.resources).innerJoin(e.snapshots,(0,b.u)(e.snapshots.resourceId,e.resources.id)).where((0,b.b)((0,b.u)(e.resources.accountId,a),(0,b.u)(e.resources.kind,"supabase_project"))),f=new Map;for(let{data:a}of c){let b=(0,k.k)(k.B,a);b.orgSlug&&void 0!==b.freeOrg&&f.set(b.orgSlug,b.freeOrg)}return f}let v=a=>a instanceof Error?a.name:"unknown";async function w(a){let[f]=await (0,d.f)().select({at:e.events.at}).from(e.events).where((0,b.b)((0,b.u)(e.events.reason,"Action"),(0,b.u)(e.events.resourceId,a),(0,b.u)(e.events.type,"action"),(0,b.y)(e.events.kind,["ok","err"]),(0,b.E)(e.events.actorUserId),(0,b.D)(e.events.message,`${i}%`))).orderBy((0,c.A)(e.events.at)).limit(1);return f?.at??null}async function x(){return(await (0,d.f)().select({id:e.keepActive.resourceId}).from(e.keepActive).where((0,b.u)(e.keepActive.autoRestore,!0)).limit(1)).length>0}async function y(a,c,i=1/0){let k=c.filter(a=>!!a.resourceId&&"INACTIVE"===a.status),n=()=>i-Date.now()-500;if(!k.length||250>n())return;let q=await (0,d.f)().select({k:e.keepActive,id:e.resources.id,name:e.resources.name,ref:e.resources.externalId,accountId:e.resources.accountId,label:e.accounts.label,lastTestAt:e.accounts.lastTestAt,ciphertext:e.accounts.credentialCiphertext,iv:e.accounts.credentialIv}).from(e.keepActive).innerJoin(e.resources,(0,b.u)(e.resources.id,e.keepActive.resourceId)).innerJoin(e.accounts,(0,b.u)(e.accounts.id,e.resources.accountId)).where((0,b.b)((0,b.u)(e.keepActive.autoRestore,!0),(0,b.y)(e.keepActive.resourceId,k.map(a=>a.resourceId)),(0,b.u)(e.resources.kind,"supabase_project"),(0,b.M)(e.resources.goneAt)));if(!q.length)return;let r=await (0,h.f)([...new Set(q.map(a=>a.accountId))]),s=new Map,t=new Map;for(let i of q)try{let k=c.filter(a=>a.accountId===i.accountId),q=k.find(a=>a.resourceId===i.id)?.orgSlug??"";if(!s.has(i.accountId)){let a=await u(i.accountId);s.set(i.accountId,a),t.set(i.accountId,(0,l._)(k.map(b=>({status:b.status,freeOrg:a.get(b.orgSlug??"")??null}))).left)}let v=!1===s.get(i.accountId).get(q),x=v?1/0:t.get(i.accountId),y=r.get(i.accountId),z=Math.max(i.k.updatedAt.getTime(),i.lastTestAt?.getTime()??0),A=y?.write==="denied"&&new Date(y.at).getTime()>z,B=j({status:"INACTIVE",autoRestore:!0,lastAutoRestoreAt:i.k.lastAutoRestoreAt,slotsLeft:x,accessDenied:A},a);if(!B.act){"no-slot"===B.reason&&await (0,g.f)([{at:a,type:"action",kind:"info",resourceId:i.id,actorUserId:null,reason:"AutoRestoreWaits",message:`Auto-restore: ${i.name} waits, account ${i.label} has no free slot`,detail:"Pause another project in this account, or restore it by hand once a slot is free."}]);continue}let C=await w(i.id);if(C&&C.getTime()>i.k.updatedAt.getTime())continue;let D=n();if(D<250)return;await (0,d.f)().update(e.keepActive).set({lastAutoRestoreAt:a}).where((0,b.u)(e.keepActive.resourceId,i.id));let E=(0,f.V)({ciphertext:i.ciphertext,iv:i.iv},(0,m.f)().OPS_ENCRYPTION_KEY);if(!E)continue;let F=await (0,p.G)(E,i.ref,{timeoutMs:Math.min(5e3,D)});F.ok?(v||t.set(i.accountId,t.get(i.accountId)-1),await (0,h.y)(i.accountId,"ok"),await (0,g.f)([{at:a,type:"action",kind:"ok",resourceId:i.id,actorUserId:null,message:`Auto-restore: restoring ${i.name}`,detail:null}])):("scope"===F.kind&&await (0,h.y)(i.accountId,"denied"),await (0,g.f)([{at:a,type:"action",kind:"err",resourceId:i.id,actorUserId:null,message:`Auto-restore: ${i.name} couldn't be restored`,detail:"scope"===F.kind?`${(0,o.b)("supabase",{})} Auto-restore stops until then.`:(0,o.S)(F.error)}]))}catch(a){console.warn("auto-restore failed:",v(a))}}async function z(a,c,f=h.W,g=new Date){let i=await (0,h.q)(a.id,"keep-alive",c);if(i)return{ok:!1,error:i};let j=await (0,h.p)(c,"supabase_project");if(!j)return{ok:!1,error:"This project isn't watched any more, or its credential can't be read."};let[k]=await (0,d.f)().select({last:e.keepActive.lastKeepAliveAt}).from(e.keepActive).where((0,b.u)(e.keepActive.resourceId,c)).limit(1);if(k?.last&&g.getTime()-k.last.getTime()<72e6)return f({done:!1,message:"A keep-alive was already sent in the last 20 hours."},a,j.account.id);let l=j.resource.name,m=await (0,p.i)(j.token,j.resource.externalId,{timeoutMs:5e3});return m.ok&&await (0,d.f)().insert(e.keepActive).values({resourceId:c,lastKeepAliveAt:g}).onConflictDoUpdate({target:e.keepActive.resourceId,set:{lastKeepAliveAt:g}}),f(m.ok?{done:!0,message:`Keep-alive sent to ${l}.`,audit:{message:`Keep-alive sent \xb7 ${l}`,resourceId:c}}:{done:!1,failed:{ok:!1,kind:m.kind,error:"scope"===m.kind?"This token can't run the read-only query (Database read).":m.error,...m.status?{status:m.status}:{}},audit:{message:`Keep-alive failed \xb7 ${l}`,resourceId:c}},a,j.account.id)}a.s(["m",0,u,"z",0,y,"g",0,x,"A",0,q,"v",0,z,"r",0,t,"G",0,function(a,b,c){return!1===b.get(c)?1/0:(0,l._)(a.map(a=>({status:a.status,freeOrg:b.get(a.orgSlug)??null}))).left}],560954)}];
2
2
 
3
3
  //# sourceMappingURL=src_lib_data_keep-active-db_ts_0p07g9b74uu3e._.js.map
@@ -1,4 +1,4 @@
1
1
  module.exports=[292321,530174,658739,a=>{"use strict";var b=a.i(93321),c=a.i(530385),d=a.i(258261),e=a.i(351674),f=a.i(548734),g=a.i(837137),h=a.i(33135),i=a.i(358179),j=a.i(601219),k=a.i(492665),l=a.i(609007),m=a.i(666680),n=a.i(26972),o=a.i(689963),p=a.i(191179),q=a.i(83931),r=a.i(427221),s=a.i(954757);a.s(["z",0,s],530174);var s=s,t=a.i(811365);let u=["debug","info","warning","error","fatal","trace"],v=n.z.object({rows:o.z.array(p.z.unknown()).catch([]),hasMoreRows:q.z.boolean().catch(!1)}),w=n.z.object({requestId:r.z.string().min(1),timestamp:r.z.string().transform((a,b)=>{let c=Date.parse(a);return Number.isNaN(c)?(b.addIssue({code:"custom",message:"bad timestamp"}),s.NEVER):new Date(c)}),deploymentId:r.z.string().nullish().catch(null),requestMethod:r.z.string().nullish().catch(null),requestPath:r.z.string().nullish().catch(null),statusCode:t.z.number().nullish().catch(null),logs:o.z.array(p.z.unknown()).nullish().catch(null),events:o.z.array(p.z.unknown()).nullish().catch(null)}),x=n.z.object({level:r.z.string().nullish().catch(null),message:r.z.string().nullish().catch(null)}),y=n.z.object({source:r.z.string().nullish().catch(null)}),z=(a,b)=>(0,m.createHash)("sha1").update(`${a}
2
- ${b}`).digest("hex").slice(0,8),A=(a,b,c={})=>({ok:!1,kind:a,error:b,...c});async function B(a,b,c,d){let e=(d.now??new Date).getTime(),f=Math.max(d.since.getTime(),e-864e5),g=d.until.getTime();if(f>=g)return{ok:!0,lines:[],more:!1};let i=d.maxRows??300,j=d.levels?new Set(d.levels):null,k=a=>!j||j.has(a),l=d.levels?[...new Set(d.levels.map(a=>"fatal"===a?"error":a))]:[],m=d.fetch??fetch,n=new AbortController,o=setTimeout(()=>n.abort(new DOMException("window","TimeoutError")),d.timeoutMs??8e3),p=d.signal?AbortSignal.any([n.signal,d.signal]):n.signal,q=(0,h.X)(p),r=()=>n.signal.aborted&&!d.signal?.aborted?A("transient","Vercel's log history didn't answer in time."):A("transient","Reading Vercel's log history was cancelled."),s=[],t=!1;try{for(let e=0;e<3;e++){let h,j=new URLSearchParams({projectId:c,ownerId:b,page:String(e),startDate:String(f),endDate:String(g)});d.deploymentId&&j.set("deploymentId",d.deploymentId),d.environment&&j.set("environment",d.environment),l.length&&j.set("level",l.join(","));let n=null;try{let b=await Promise.race([m(`https://vercel.com/api/logs/request-logs?${j}`,{headers:{Authorization:`Bearer ${a}`,Accept:"application/json"},signal:p,cache:"no-store"}),q]);if(401===b.status||403===b.status)n=A("auth",`Vercel rejected this credential (${b.status}).`,{status:b.status});else if(429===b.status){let a=Number(b.headers.get("Retry-After"));n=A("transient","Vercel says there were too many requests.",{status:429,retryAfterS:Number.isFinite(a)&&a>0?a:60})}else if(400===b.status)n=A("transient","Vercel's log history didn't answer (400); the range may be past retention.",{status:400});else if(b.ok)try{h=await Promise.race([b.json(),q])}catch(a){if(p.aborted)throw a;n=A("format","Vercel's log history answered in a format the console doesn't recognise.")}else n=A("transient",`Vercel's log history returned an error (${b.status}).`,{status:b.status});n&&await b.body?.cancel().catch(()=>void 0)}catch{n=p.aborted?r():A("transient","Couldn't reach Vercel's log history.")}if(!n){let a=v.safeParse(h),b=a.success&&h&&"object"==typeof h?Object.keys(h):[];if(!a.success||b.includes("rows")||b.includes("hasMoreRows"))if(a.success){for(let b of a.data.rows)s.push(...function(a,b,c=!1){let d=w.safeParse(a);if(!d.success)return[];let e=d.data,f={at:e.timestamp,requestMethod:e.requestMethod??null,requestPath:e.requestPath??null,statusCode:e.statusCode??null,deploymentId:e.deploymentId??null,source:(e.events??[]).map(a=>y.safeParse(a)).find(a=>a.success&&a.data.source)?.data?.source??null},g=[],h=new Map;for(let a of e.logs??[]){let c=x.safeParse(a);if(!c.success||!c.data.message)continue;let d=function(a){let b=(a??"").toLowerCase();return"warn"===b?"warning":u.includes(b)?b:"info"}(c.data.level),i=z(d,c.data.message),j=h.get(i)??0;h.set(i,j+1),b(d)&&g.push({rowId:`${e.requestId}:${i}${j?`#${j}`:""}`,level:d,message:c.data.message,...f})}if(null!=e.statusCode&&e.statusCode>=500&&b("error")&&!g.some(a=>"error"===a.level||"fatal"===a.level)&&g.push({rowId:`${e.requestId}:status`,level:"error",message:`${e.requestMethod??"GET"} ${e.requestPath??"/"} → ${e.statusCode}`,...f}),c&&0===g.length){let a=e.statusCode??0,c=a>=500?"error":a>=400?"warning":"info";b(c)&&g.push({rowId:`${e.requestId}:request`,level:c,message:`${e.requestMethod??"GET"} ${e.requestPath??"/"}${a>0?` → ${a}`:""}`,...f})}return g}(b,k,d.requests));if(!(t=a.data.hasMoreRows)||s.length>=i)break}else n=A("format","Vercel's log history answered in a format the console doesn't recognise.");else n=A("transient","Vercel's log format changed: the answer has neither rows nor hasMoreRows.")}if(n){if(0===e)return n;t=!0;break}}}finally{clearTimeout(o),n.abort()}return s.sort((a,b)=>a.at.getTime()-b.at.getTime()),s.length>i&&(s.splice(0,s.length-i),t=!0),{ok:!0,lines:s,more:t}}a.s(["f",0,B],658739);var C=a.i(968715);let D=["warning","error","fatal"],E="logs_read_cursor";async function F(a){let[c]=await (0,f.f)().select().from(g.accounts).where((0,b.b)((0,b.u)(g.accounts.provider,"vercel"),(0,b.u)(g.accounts.status,"ok"))).limit(1),d=c?(0,i.V)({ciphertext:c.credentialCiphertext,iv:c.credentialIv},(0,k.f)().OPS_ENCRYPTION_KEY):null;return c&&d?(await (0,f.f)().select({appId:g.resources.id,appName:g.resources.name,projectId:g.resources.externalId,meta:g.resources.meta,deploymentId:g.deployments.externalId}).from(g.deployments).innerJoin(g.resources,(0,b.u)(g.resources.id,g.deployments.resourceId)).where((0,b.b)((0,b.u)(g.deployments.isCurrent,!0),(0,b.u)(g.resources.accountId,c.id),(0,b.u)(g.resources.monitored,!0),(0,b.M)(g.resources.goneAt),...a?[(0,b.u)(g.resources.id,a)]:[]))).map(a=>({appId:a.appId,appName:a.appName,projectId:a.projectId,deploymentId:a.deploymentId,teamId:String(a.meta.teamId??""),token:d})):[]}let G=(a,b)=>({resourceId:a.appId,deploymentId:b.deploymentId??a.deploymentId,rowId:b.rowId,at:b.at,level:b.level,message:(0,l.l)((0,l.h)(b.message),2e3),requestMethod:b.requestMethod,requestPath:(0,l.n)(b.requestPath?(0,l.h)(b.requestPath):null),statusCode:b.statusCode,source:b.source});async function H(a,c,i){let k,[l]=await (0,f.f)().select().from(g.settings).where((0,b.u)(g.settings.key,"logs.disabled")).limit(1);if(l?.value===!0)return;let m=await F(null);if(!m.length)return;let n=(0,C.q)((0,C.m)(a)),o=new Map((await (0,f.f)().select({id:g.storedLogs.resourceId,n:e.B`count(*)::int`}).from(g.storedLogs).where((0,b.b)((0,b.y)(g.storedLogs.resourceId,m.map(a=>a.appId)),(0,b.B)(g.storedLogs.at,n))).groupBy(g.storedLogs.resourceId)).map(a=>[a.id,a.n])),p=new Map((await (0,f.f)().select({id:g.storedLogs.resourceId,at:(0,d.y)(g.storedLogs.at)}).from(g.storedLogs).where((0,b.y)(g.storedLogs.resourceId,m.map(a=>a.appId))).groupBy(g.storedLogs.resourceId)).map(a=>[a.id,a.at])),[q]=await (0,f.f)().select().from(g.settings).where((0,b.u)(g.settings.key,E)).limit(1),r=(k=q?.value)&&"object"==typeof k&&!Array.isArray(k)?Object.fromEntries(Object.entries(k).filter(a=>"string"==typeof a[1]&&!Number.isNaN(Date.parse(a[1])))):{},s=a.getTime()-864e5,t=await (0,h.P)(m,3,b=>{if(Date.now()+8500>c)return Promise.resolve(null);let d=[p.get(b.appId)?.getTime(),r[b.appId]?Date.parse(r[b.appId]):void 0].filter(a=>void 0!==a),e=new Date(Math.max(d.length?Math.max(...d)-3e5:s,s));return B(b.token,b.teamId,b.projectId,{since:e,until:a,now:a,levels:D,environment:"production",maxRows:300})}),u=m.map((a,b)=>{let c=t[b];return c?c.ok?(c.more&&i.push(`logs/${a.appName}: more than 300 log lines since the last read; the oldest were skipped`),c.lines.filter(a=>D.includes(a.level))):(i.push(`logs/${a.appName}: ${c.error}`),[]):[]}),v=u.flat().map(a=>a.rowId),w=new Set(v.length?(await (0,f.f)().select({rowId:g.storedLogs.rowId}).from(g.storedLogs).where((0,b.y)(g.storedLogs.rowId,v))).map(a=>a.rowId):[]),x=[];for(let[a,b]of m.entries()){let c=u[a].filter(a=>!w.has(a.rowId));if(!c.length)continue;let d=o.get(b.appId)??0,e=Math.max(0,1e3-d),h=(e>=c.length?c:c.slice(c.length-e)).map(a=>G(b,a));h.length&&await (0,f.f)().insert(g.storedLogs).values(h).onConflictDoNothing({target:g.storedLogs.rowId}),d+c.length>=1e3&&x.push(b.appId)}let y=m.filter((a,b)=>t[b]?.ok);if(y.length){let b={};for(let a of m)r[a.appId]&&(b[a.appId]=r[a.appId]);for(let c of y)b[c.appId]=a.toISOString();await (0,f.f)().insert(g.settings).values({key:E,value:b}).onConflictDoUpdate({target:g.settings.key,set:{value:b,updatedAt:new Date}})}await (0,j.f)(x.map(a=>({resourceId:a,type:"system",kind:"warn",message:"Stored-log limit reached",detail:"More than 1000 warnings and errors today; the rest stay in Vercel only for its short log history (about a day on Hobby).",reason:"LogCapReached"})))}async function I(a,d={}){let e=new Date(a.getTime()-(d.sinceMs??6048e5));return(await (0,f.f)().select({l:g.storedLogs,app:g.resources.name}).from(g.storedLogs).innerJoin(g.resources,(0,b.u)(g.resources.id,g.storedLogs.resourceId)).where((0,b.b)((0,b.B)(g.storedLogs.at,e),...d.appId?[(0,b.u)(g.storedLogs.resourceId,d.appId)]:[])).orderBy((0,c.A)(g.storedLogs.at)).limit(500)).map(({l:a,app:b})=>({id:a.rowId,at:a.at,level:a.level,app:b,method:a.requestMethod,path:a.requestPath,status:a.statusCode,message:a.message})).reverse()}async function J(a,b){let c=(await F(b)).slice(0,6),d=[],e=await (0,h.P)(c,6,b=>B(b.token,b.teamId,b.projectId,{since:new Date(a.getTime()-36e5),until:a,now:a,environment:"production",maxRows:300,requests:!0})),f=[];for(let[a,b]of c.entries()){let c=e[a];if(!c.ok){d.push(`${b.appName}: ${c.error}`);continue}for(let a of c.lines){let c=G(b,a);f.push({id:a.rowId,at:a.at,level:a.level,app:b.appName,method:c.requestMethod,path:c.requestPath,status:a.statusCode,message:c.message})}}return{lines:[...new Map([...await I(a,{appId:b??void 0,sinceMs:36e5}),...f].map(a=>[a.id,a])).values()].sort((a,b)=>a.at.getTime()-b.at.getTime()).slice(-500),readAt:new Date,problems:d}}a.s(["M",0,I,"$",0,J,"g",0,F,"_",0,H],292321)}];
2
+ ${b}`).digest("hex").slice(0,8),A=(a,b,c={})=>({ok:!1,kind:a,error:b,...c});async function B(a,b,c,d){let e=(d.now??new Date).getTime(),f=Math.max(d.since.getTime(),e-864e5),g=d.until.getTime();if(f>=g)return{ok:!0,lines:[],more:!1};let i=d.maxRows??300,j=d.levels?new Set(d.levels):null,k=a=>!j||j.has(a),l=d.levels?[...new Set(d.levels.map(a=>"fatal"===a?"error":a))]:[],m=d.fetch??fetch,n=new AbortController,o=setTimeout(()=>n.abort(new DOMException("window","TimeoutError")),d.timeoutMs??8e3),p=d.signal?AbortSignal.any([n.signal,d.signal]):n.signal,q=(0,h.X)(p),r=()=>n.signal.aborted&&!d.signal?.aborted?A("transient","Vercel's log history didn't answer in time."):A("transient","Reading Vercel's log history was cancelled."),s=[],t=!1;try{for(let e=0;e<3;e++){let h,j=new URLSearchParams({projectId:c,ownerId:b,page:String(e),startDate:String(f),endDate:String(g)});d.deploymentId&&j.set("deploymentId",d.deploymentId),d.environment&&j.set("environment",d.environment),l.length&&j.set("level",l.join(","));let n=null;try{let b=await Promise.race([m(`https://vercel.com/api/logs/request-logs?${j}`,{headers:{Authorization:`Bearer ${a}`,Accept:"application/json"},signal:p,cache:"no-store"}),q]);if(401===b.status||403===b.status)n=A("auth",`Vercel rejected this credential (${b.status}).`,{status:b.status});else if(429===b.status){let a=Number(b.headers.get("Retry-After"));n=A("transient","Vercel says there were too many requests.",{status:429,retryAfterS:Number.isFinite(a)&&a>0?a:60})}else if(400===b.status)n=A("transient","Vercel's log history didn't answer (400); the range may be past retention.",{status:400});else if(b.ok)try{h=await Promise.race([b.json(),q])}catch(a){if(p.aborted)throw a;n=A("format","Vercel's log history answered in a format the console doesn't recognise.")}else n=A("transient",`Vercel's log history returned an error (${b.status}).`,{status:b.status});n&&await b.body?.cancel().catch(()=>void 0)}catch{n=p.aborted?r():A("transient","Couldn't reach Vercel's log history.")}if(!n){let a=v.safeParse(h),b=a.success&&h&&"object"==typeof h?Object.keys(h):[];if(!a.success||b.includes("rows")||b.includes("hasMoreRows"))if(a.success){for(let b of a.data.rows)s.push(...function(a,b,c=!1){let d=w.safeParse(a);if(!d.success)return[];let e=d.data,f={at:e.timestamp,requestMethod:e.requestMethod??null,requestPath:e.requestPath??null,statusCode:e.statusCode??null,deploymentId:e.deploymentId??null,source:(e.events??[]).map(a=>y.safeParse(a)).find(a=>a.success&&a.data.source)?.data?.source??null},g=[],h=new Map;for(let a of e.logs??[]){let c=x.safeParse(a);if(!c.success||!c.data.message)continue;let d=function(a){let b=(a??"").toLowerCase();return"warn"===b?"warning":u.includes(b)?b:"info"}(c.data.level),i=z(d,c.data.message),j=h.get(i)??0;h.set(i,j+1),b(d)&&g.push({rowId:`${e.requestId}:${i}${j?`#${j}`:""}`,level:d,message:c.data.message,...f})}if(null!=e.statusCode&&e.statusCode>=500&&b("error")&&!g.some(a=>"error"===a.level||"fatal"===a.level)&&g.push({rowId:`${e.requestId}:status`,level:"error",message:`${e.requestMethod??"GET"} ${e.requestPath??"/"} → ${e.statusCode}`,...f}),c&&0===g.length){let a=e.statusCode??0,c=a>=500?"error":a>=400?"warning":"info";b(c)&&g.push({rowId:`${e.requestId}:request`,level:c,message:`${e.requestMethod??"GET"} ${e.requestPath??"/"}${a>0?` → ${a}`:""}`,...f})}return g}(b,k,d.requests));if(!(t=a.data.hasMoreRows)||s.length>=i)break}else n=A("format","Vercel's log history answered in a format the console doesn't recognise.");else n=A("transient","Vercel's log format changed: the answer has neither rows nor hasMoreRows.")}if(n){if(0===e)return n;t=!0;break}}}finally{clearTimeout(o),n.abort()}return s.sort((a,b)=>a.at.getTime()-b.at.getTime()),s.length>i&&(s.splice(0,s.length-i),t=!0),{ok:!0,lines:s,more:t}}a.s(["f",0,B],658739);var C=a.i(245710);let D=["warning","error","fatal"],E="logs_read_cursor";async function F(a){let[c]=await (0,f.f)().select().from(g.accounts).where((0,b.b)((0,b.u)(g.accounts.provider,"vercel"),(0,b.u)(g.accounts.status,"ok"))).limit(1),d=c?(0,i.V)({ciphertext:c.credentialCiphertext,iv:c.credentialIv},(0,k.f)().OPS_ENCRYPTION_KEY):null;return c&&d?(await (0,f.f)().select({appId:g.resources.id,appName:g.resources.name,projectId:g.resources.externalId,meta:g.resources.meta,deploymentId:g.deployments.externalId}).from(g.deployments).innerJoin(g.resources,(0,b.u)(g.resources.id,g.deployments.resourceId)).where((0,b.b)((0,b.u)(g.deployments.isCurrent,!0),(0,b.u)(g.resources.accountId,c.id),(0,b.u)(g.resources.monitored,!0),(0,b.M)(g.resources.goneAt),...a?[(0,b.u)(g.resources.id,a)]:[]))).map(a=>({appId:a.appId,appName:a.appName,projectId:a.projectId,deploymentId:a.deploymentId,teamId:String(a.meta.teamId??""),token:d})):[]}let G=(a,b)=>({resourceId:a.appId,deploymentId:b.deploymentId??a.deploymentId,rowId:b.rowId,at:b.at,level:b.level,message:(0,l.l)((0,l.h)(b.message),2e3),requestMethod:b.requestMethod,requestPath:(0,l.n)(b.requestPath?(0,l.h)(b.requestPath):null),statusCode:b.statusCode,source:b.source});async function H(a,c,i){let k,[l]=await (0,f.f)().select().from(g.settings).where((0,b.u)(g.settings.key,"logs.disabled")).limit(1);if(l?.value===!0)return;let m=await F(null);if(!m.length)return;let n=(0,C.y)((0,C.x)(a)),o=new Map((await (0,f.f)().select({id:g.storedLogs.resourceId,n:e.B`count(*)::int`}).from(g.storedLogs).where((0,b.b)((0,b.y)(g.storedLogs.resourceId,m.map(a=>a.appId)),(0,b.B)(g.storedLogs.at,n))).groupBy(g.storedLogs.resourceId)).map(a=>[a.id,a.n])),p=new Map((await (0,f.f)().select({id:g.storedLogs.resourceId,at:(0,d.y)(g.storedLogs.at)}).from(g.storedLogs).where((0,b.y)(g.storedLogs.resourceId,m.map(a=>a.appId))).groupBy(g.storedLogs.resourceId)).map(a=>[a.id,a.at])),[q]=await (0,f.f)().select().from(g.settings).where((0,b.u)(g.settings.key,E)).limit(1),r=(k=q?.value)&&"object"==typeof k&&!Array.isArray(k)?Object.fromEntries(Object.entries(k).filter(a=>"string"==typeof a[1]&&!Number.isNaN(Date.parse(a[1])))):{},s=a.getTime()-864e5,t=await (0,h.P)(m,3,b=>{if(Date.now()+8500>c)return Promise.resolve(null);let d=[p.get(b.appId)?.getTime(),r[b.appId]?Date.parse(r[b.appId]):void 0].filter(a=>void 0!==a),e=new Date(Math.max(d.length?Math.max(...d)-3e5:s,s));return B(b.token,b.teamId,b.projectId,{since:e,until:a,now:a,levels:D,environment:"production",maxRows:300})}),u=m.map((a,b)=>{let c=t[b];return c?c.ok?(c.more&&i.push(`logs/${a.appName}: more than 300 log lines since the last read; the oldest were skipped`),c.lines.filter(a=>D.includes(a.level))):(i.push(`logs/${a.appName}: ${c.error}`),[]):[]}),v=u.flat().map(a=>a.rowId),w=new Set(v.length?(await (0,f.f)().select({rowId:g.storedLogs.rowId}).from(g.storedLogs).where((0,b.y)(g.storedLogs.rowId,v))).map(a=>a.rowId):[]),x=[];for(let[a,b]of m.entries()){let c=u[a].filter(a=>!w.has(a.rowId));if(!c.length)continue;let d=o.get(b.appId)??0,e=Math.max(0,1e3-d),h=(e>=c.length?c:c.slice(c.length-e)).map(a=>G(b,a));h.length&&await (0,f.f)().insert(g.storedLogs).values(h).onConflictDoNothing({target:g.storedLogs.rowId}),d+c.length>=1e3&&x.push(b.appId)}let y=m.filter((a,b)=>t[b]?.ok);if(y.length){let b={};for(let a of m)r[a.appId]&&(b[a.appId]=r[a.appId]);for(let c of y)b[c.appId]=a.toISOString();await (0,f.f)().insert(g.settings).values({key:E,value:b}).onConflictDoUpdate({target:g.settings.key,set:{value:b,updatedAt:new Date}})}await (0,j.f)(x.map(a=>({resourceId:a,type:"system",kind:"warn",message:"Stored-log limit reached",detail:"More than 1000 warnings and errors today; the rest stay in Vercel only for its short log history (about a day on Hobby).",reason:"LogCapReached"})))}async function I(a,d={}){let e=new Date(a.getTime()-(d.sinceMs??6048e5));return(await (0,f.f)().select({l:g.storedLogs,app:g.resources.name}).from(g.storedLogs).innerJoin(g.resources,(0,b.u)(g.resources.id,g.storedLogs.resourceId)).where((0,b.b)((0,b.B)(g.storedLogs.at,e),...d.appId?[(0,b.u)(g.storedLogs.resourceId,d.appId)]:[])).orderBy((0,c.A)(g.storedLogs.at)).limit(500)).map(({l:a,app:b})=>({id:a.rowId,at:a.at,level:a.level,app:b,method:a.requestMethod,path:a.requestPath,status:a.statusCode,message:a.message})).reverse()}async function J(a,b){let c=(await F(b)).slice(0,6),d=[],e=await (0,h.P)(c,6,b=>B(b.token,b.teamId,b.projectId,{since:new Date(a.getTime()-36e5),until:a,now:a,environment:"production",maxRows:300,requests:!0})),f=[];for(let[a,b]of c.entries()){let c=e[a];if(!c.ok){d.push(`${b.appName}: ${c.error}`);continue}for(let a of c.lines){let c=G(b,a);f.push({id:a.rowId,at:a.at,level:a.level,app:b.appName,method:c.requestMethod,path:c.requestPath,status:a.statusCode,message:c.message})}}return{lines:[...new Map([...await I(a,{appId:b??void 0,sinceMs:36e5}),...f].map(a=>[a.id,a])).values()].sort((a,b)=>a.at.getTime()-b.at.getTime()).slice(-500),readAt:new Date,problems:d}}a.s(["M",0,I,"$",0,J,"g",0,F,"_",0,H],292321)}];
3
3
 
4
4
  //# sourceMappingURL=src_lib_data_logs-db_ts_1ddw07do12mmk._.js.map
@@ -0,0 +1,6 @@
1
+ module.exports=[396667,711251,532971,186133,a=>{"use strict";var b=a.i(93321),c=a.i(351674),d=a.i(800717),e=a.i(548734),f=a.i(263251),g=a.i(837137),h=a.i(686921),i=a.i(160147);let j="budget.limits",k={qstashPerDay:1e3,webAnalyticsEvents:5e4,vercelInvocations:1e6,vercelCpuHours:4,vercelMemoryGbH:360,warnPct:70,errPct:90},l=[{key:"qstashPerDay",label:"Upstash QStash messages",unit:"a day",min:1,max:1e7},{key:"webAnalyticsEvents",label:"Vercel Web Analytics events",unit:"a month",min:1,max:1e8},{key:"vercelInvocations",label:"Vercel function invocations",unit:"a month",min:1,max:1e9},{key:"vercelCpuHours",label:"Vercel active CPU",unit:"hours a month",min:1,max:1e4},{key:"vercelMemoryGbH",label:"Vercel provisioned memory",unit:"GB-hours a month",min:1,max:1e5},{key:"warnPct",label:"Warn from",unit:"% used",min:10,max:99},{key:"errPct",label:"Alarm from",unit:"% used",min:11,max:100}],m=(a,b)=>"number"==typeof b&&Number.isInteger(b)&&b>=a.min&&b<=a.max;function n(a){let b={...k};if(!a||"object"!=typeof a)return b;for(let c of l){let d=a[c.key];m(c,d)&&(b[c.key]=d)}return b.warnPct<b.errPct?b:{...b,warnPct:k.warnPct,errPct:k.errPct}}a.s(["o",0,k,"h",0,j,"S",0,function(a,b){let c=l.filter(c=>a[c.key]!==b[c.key]).map(c=>`${c.label} ${a[c.key].toLocaleString("en-US")} → ${b[c.key].toLocaleString("en-US")}`);return c.length?c.join(", "):null},"X",0,n,"R",0,function(a){let b=a&&"object"==typeof a?a:{},c={...k},d={};for(let a of l){let e=b[a.key],f="string"==typeof e?Number(e.replace(/[,_\s]/g,"")):e;m(a,f)?c[a.key]=f:d[a.key]=`Enter a whole number from ${a.min.toLocaleString("en-US")} to ${a.max.toLocaleString("en-US")}.`}return d.warnPct||d.errPct||!(c.warnPct>=c.errPct)||(d.errPct="Alarm must be above Warn."),Object.keys(d).length?{ok:!1,error:"Check the highlighted fields.",fieldErrors:d}:{ok:!0,value:c}}],711251);var o=a.i(655206);let p="retention.days",q={checks:[3,7,14],rollupsHourly:[60,90,180],storedLogs:[3,7,14],deployments:[30,45,60,90],events:[60,90,180],alerts:[60,90,180],collectorRuns:[7,14,30],recommendationDismissals:[30,90,180]},r=Object.keys(q),s={checks:"Raw checks",rollupsHourly:"Hourly rollups",storedLogs:"Stored logs",deployments:"Deployments",events:"Events",alerts:"Alerts",collectorRuns:"Collector runs",recommendationDismissals:"Advisor dismissals"},t=(a,b)=>"number"==typeof b&&q[a].includes(b);function u(a){let b={...o.f};if(!a||"object"!=typeof a)return b;for(let c of r){let d=a[c];t(c,d)&&(b[c]=d)}return b}async function v(a){let[c]=await (0,e.f)().select({value:g.settings.value}).from(g.settings).where((0,b.u)(g.settings.key,a)).limit(1);return c?.value??null}async function w(a,b){await (0,e.f)().insert(g.settings).values({key:a,value:b}).onConflictDoUpdate({target:g.settings.key,set:{value:b,updatedAt:new Date}})}a.s(["L",0,r,"I",0,s,"H",0,p,"E",0,u,"b",0,function(a,b){let c=r.filter(c=>a[c]!==b[c]).map(c=>`${s[c]} ${a[c]} → ${b[c]} days`);return c.length?c.join(", "):null},"K",0,function(a){let b={},c={...o.f},d=a&&"object"==typeof a?a:{};for(let a of r){let e="string"==typeof d[a]?Number(d[a]):d[a];t(a,e)?c[a]=e:b[a]=`Pick ${q[a].join(", ")} days.`}return Object.keys(b).length?{ok:!1,error:"Check the highlighted fields.",fieldErrors:b}:{ok:!0,value:c}}],532971);let x=async()=>u(await v(p)),y=async()=>n(await v(j)),z="notify.language",A="sections.off",B=async()=>(0,i.N)(await v(A)),C=()=>c.B`(select ${g.settings.value} from ${g.settings} where ${g.settings.key} = ${A})`;a.s(["j",0,y,"l",0,()=>v(z),"J",0,x,"W",0,B,"x",0,a=>w(j,a),"U",0,a=>w(z,a),"A",0,a=>w(p,a),"Y",0,a=>w(A,(0,i.N)(a)),"X",0,C],186133);let D=["supabase_project","neon_project","firestore","turso_database","upstash_redis","d1_database"],E=a=>{if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return null}},F=(0,d.cache)(async()=>{let a=c.B.join(D.map(a=>c.B`${a}`),c.B`, `),b=await (0,e.f)().execute(c.B`select
2
+ (select coalesce(jsonb_agg(distinct ${g.accounts.provider}::text), '[]'::jsonb) from ${g.accounts}) as providers,
3
+ exists(select 1 from ${g.resources} where ${g.resources.kind}::text in (${a}) and ${g.resources.goneAt} is null) as databases,
4
+ ${C()} as off`),[d]=(0,f.f)(b),j=E(d?.providers);return{providers:(Array.isArray(j)?j:[]).filter(a=>h.L.includes(a)),databases:d?.databases===!0||d?.databases==="t",off:(0,i.N)(E(d?.off))}});async function G(){let{providers:a,databases:b,off:c}=await F(),d={databases:b},e=[...(0,i.R)(a,d)];return{on:e.filter(a=>!c.includes(a)),available:e,off:c,providers:a,has:d}}async function H(){try{return(0,i.J)((await F()).off)}catch{return new Set}}function I(a){if(!a.size)return;let{ruleKeys:d,providers:e}=(0,i.s)(a),f=[];if(d.length&&f.push(c.B`${g.alerts.ruleKey} in (${c.B.join(d.map(a=>c.B`${a}`),c.B`, `)})`),e.length){let a=c.B.join(e.map(a=>c.B`${a}`),c.B`, `);f.push(c.B`(${g.alerts.ruleKey} = 'CredentialExpiring' and ${g.alerts.accountId} in (select ${g.accounts.id} from ${g.accounts} where ${g.accounts.provider}::text in (${a})))`)}return f.length?(0,b.F)(...f):void 0}async function J(a,c){let d=I(new Set([a]));d&&await (0,e.f)().update(g.alerts).set({pendingSince:c}).where((0,b.b)((0,b.E)(g.alerts.pending),d))}async function K(){let a=await (0,e.f)().select({kind:g.monitors.kind,n:c.B`count(*)::int`}).from(g.monitors).where((0,b.b)((0,b.u)(g.monitors.paused,!1),(0,b.u)(g.monitors.ownerPaused,!1))).groupBy(g.monitors.kind),d=b=>Number(a.find(a=>a.kind===b)?.n??0);return{http:d("http"),heartbeat:d("heartbeat")}}a.s(["s",0,function(a){let c=I(a);return c?(0,b.R)(c):void 0},"F",0,K,"I",0,H,"e",0,J,"Q",0,G],396667)}];
5
+
6
+ //# sourceMappingURL=src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[579739,a=>{"use strict";let b,c=()=>b??=Promise.all([a.A(372153),a.A(106706)]);async function d(a){let[{currentDemoVisitor:b},{withDemoDb:d}]=await c(),e=await b();return d(e.seed,a,e.email)}async function e(){let[{readDemoVisitor:a},{withDemoDb:b}]=await c(),d=await a();d&&await b(d.seed,async()=>void 0,d.email)}a.s(["demoPglite",0,{query:(a,b,c)=>d(d=>d.query(a,b,c)),exec:(a,b)=>d(c=>c.exec(a,b)),transaction:a=>d(b=>b.transaction(a))},"openDemoDb",0,e])},106706,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[root-of-the-server]__11-ssp_43878t._.js","server/chunks/ssr/src_lib_demo_1w8p39upm6ea2._.js","server/chunks/ssr/src_db_pglite_ts_0r1r9wqxilnam._.js","server/chunks/ssr/node_modules_0vppy-p56c35f._.js","server/chunks/ssr/node_modules_@electric-sql_pglite_dist_0j1fzsq3ed7ph._.js","server/chunks/ssr/src_lib_demo_pool_ts_0fpn8acsdk64i._.js"].map(b=>a.l(b))).then(()=>b(601533)))}];
1
+ module.exports=[579739,a=>{"use strict";let b,c=()=>b??=Promise.all([a.A(372153),a.A(106706)]);async function d(a){let[{currentDemoVisitor:b},{withDemoDb:d}]=await c(),e=await b();return d(e.seed,a,e.email)}async function e(){let[{readDemoVisitor:a},{withDemoDb:b}]=await c(),d=await a();d&&await b(d.seed,async()=>void 0,d.email)}a.s(["demoPglite",0,{query:(a,b,c)=>d(d=>d.query(a,b,c)),exec:(a,b)=>d(c=>c.exec(a,b)),transaction:a=>d(b=>b.transaction(a))},"openDemoDb",0,e])},106706,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[root-of-the-server]__16o4p3l21rdq3._.js","server/chunks/ssr/src_lib_demo_1w8p39upm6ea2._.js","server/chunks/ssr/src_db_pglite_ts_0r1r9wqxilnam._.js","server/chunks/ssr/node_modules_0vppy-p56c35f._.js","server/chunks/ssr/node_modules_@electric-sql_pglite_dist_0j1fzsq3ed7ph._.js","server/chunks/ssr/src_lib_demo_pool_ts_0fpn8acsdk64i._.js"].map(b=>a.l(b))).then(()=>b(601533)))}];
2
2
 
3
- //# sourceMappingURL=src_lib_demo_20hj85e_64pp1._.js.map
3
+ //# sourceMappingURL=src_lib_demo_0hdl7pzdqejqx._.js.map