watchbell 1.1.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 (906) hide show
  1. package/package.json +1 -1
  2. package/server/.next/BUILD_ID +1 -1
  3. package/server/.next/app-path-routes-manifest.json +1 -0
  4. package/server/.next/build-manifest.json +116 -105
  5. package/server/.next/prerender-manifest.json +3 -3
  6. package/server/.next/routes-manifest.json +6 -0
  7. package/server/.next/server/app/(console)/(private)/ai/agents/page/build-manifest.json +3 -3
  8. package/server/.next/server/app/(console)/(private)/ai/agents/page/server-reference-manifest.json +11 -11
  9. package/server/.next/server/app/(console)/(private)/ai/agents/page.js +54 -52
  10. package/server/.next/server/app/(console)/(private)/ai/agents/page.js.nft.json +1 -1
  11. package/server/.next/server/app/(console)/(private)/ai/agents/page_client-reference-manifest.js +1 -1
  12. package/server/.next/server/app/(console)/(private)/ai/ask/page/build-manifest.json +3 -3
  13. package/server/.next/server/app/(console)/(private)/ai/ask/page/server-reference-manifest.json +10 -10
  14. package/server/.next/server/app/(console)/(private)/ai/ask/page.js +54 -52
  15. package/server/.next/server/app/(console)/(private)/ai/ask/page.js.nft.json +1 -1
  16. package/server/.next/server/app/(console)/(private)/ai/ask/page_client-reference-manifest.js +1 -1
  17. package/server/.next/server/app/(console)/(private)/ai/connect/page/build-manifest.json +3 -3
  18. package/server/.next/server/app/(console)/(private)/ai/connect/page/server-reference-manifest.json +9 -9
  19. package/server/.next/server/app/(console)/(private)/ai/connect/page.js +54 -52
  20. package/server/.next/server/app/(console)/(private)/ai/connect/page.js.nft.json +1 -1
  21. package/server/.next/server/app/(console)/(private)/ai/connect/page_client-reference-manifest.js +1 -1
  22. package/server/.next/server/app/(console)/(private)/ai/keys/page/build-manifest.json +3 -3
  23. package/server/.next/server/app/(console)/(private)/ai/keys/page/server-reference-manifest.json +12 -12
  24. package/server/.next/server/app/(console)/(private)/ai/keys/page.js +54 -52
  25. package/server/.next/server/app/(console)/(private)/ai/keys/page.js.nft.json +1 -1
  26. package/server/.next/server/app/(console)/(private)/ai/keys/page_client-reference-manifest.js +1 -1
  27. package/server/.next/server/app/(console)/(private)/ai/logs/page/build-manifest.json +3 -3
  28. package/server/.next/server/app/(console)/(private)/ai/logs/page/server-reference-manifest.json +10 -10
  29. package/server/.next/server/app/(console)/(private)/ai/logs/page.js +54 -52
  30. package/server/.next/server/app/(console)/(private)/ai/logs/page.js.nft.json +1 -1
  31. package/server/.next/server/app/(console)/(private)/ai/logs/page_client-reference-manifest.js +1 -1
  32. package/server/.next/server/app/(console)/(private)/ai/models/page/build-manifest.json +3 -3
  33. package/server/.next/server/app/(console)/(private)/ai/models/page/server-reference-manifest.json +19 -19
  34. package/server/.next/server/app/(console)/(private)/ai/models/page.js +54 -52
  35. package/server/.next/server/app/(console)/(private)/ai/models/page.js.nft.json +1 -1
  36. package/server/.next/server/app/(console)/(private)/ai/models/page_client-reference-manifest.js +1 -1
  37. package/server/.next/server/app/(console)/(private)/ai/page/build-manifest.json +3 -3
  38. package/server/.next/server/app/(console)/(private)/ai/page/server-reference-manifest.json +9 -9
  39. package/server/.next/server/app/(console)/(private)/ai/page.js +54 -52
  40. package/server/.next/server/app/(console)/(private)/ai/page.js.nft.json +1 -1
  41. package/server/.next/server/app/(console)/(private)/ai/page_client-reference-manifest.js +1 -1
  42. package/server/.next/server/app/(console)/(private)/ai/playground/page/build-manifest.json +3 -3
  43. package/server/.next/server/app/(console)/(private)/ai/playground/page/server-reference-manifest.json +12 -12
  44. package/server/.next/server/app/(console)/(private)/ai/playground/page.js +54 -52
  45. package/server/.next/server/app/(console)/(private)/ai/playground/page.js.nft.json +1 -1
  46. package/server/.next/server/app/(console)/(private)/ai/playground/page_client-reference-manifest.js +1 -1
  47. package/server/.next/server/app/(console)/(private)/ai/providers/page/build-manifest.json +3 -3
  48. package/server/.next/server/app/(console)/(private)/ai/providers/page/server-reference-manifest.json +15 -15
  49. package/server/.next/server/app/(console)/(private)/ai/providers/page.js +54 -52
  50. package/server/.next/server/app/(console)/(private)/ai/providers/page.js.nft.json +1 -1
  51. package/server/.next/server/app/(console)/(private)/ai/providers/page_client-reference-manifest.js +1 -1
  52. package/server/.next/server/app/(console)/(private)/ai/quota/page/build-manifest.json +3 -3
  53. package/server/.next/server/app/(console)/(private)/ai/quota/page/server-reference-manifest.json +10 -10
  54. package/server/.next/server/app/(console)/(private)/ai/quota/page.js +54 -52
  55. package/server/.next/server/app/(console)/(private)/ai/quota/page.js.nft.json +1 -1
  56. package/server/.next/server/app/(console)/(private)/ai/quota/page_client-reference-manifest.js +1 -1
  57. package/server/.next/server/app/(console)/(private)/ai/usage/page/build-manifest.json +3 -3
  58. package/server/.next/server/app/(console)/(private)/ai/usage/page/server-reference-manifest.json +10 -10
  59. package/server/.next/server/app/(console)/(private)/ai/usage/page.js +54 -52
  60. package/server/.next/server/app/(console)/(private)/ai/usage/page.js.nft.json +1 -1
  61. package/server/.next/server/app/(console)/(private)/ai/usage/page_client-reference-manifest.js +1 -1
  62. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page/build-manifest.json +3 -3
  63. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page/server-reference-manifest.json +9 -9
  64. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js +54 -52
  65. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js.nft.json +1 -1
  66. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page_client-reference-manifest.js +1 -1
  67. package/server/.next/server/app/(console)/(private)/auto-actions/page/build-manifest.json +3 -3
  68. package/server/.next/server/app/(console)/(private)/auto-actions/page/server-reference-manifest.json +10 -10
  69. package/server/.next/server/app/(console)/(private)/auto-actions/page.js +54 -52
  70. package/server/.next/server/app/(console)/(private)/auto-actions/page.js.nft.json +1 -1
  71. package/server/.next/server/app/(console)/(private)/auto-actions/page_client-reference-manifest.js +1 -1
  72. package/server/.next/server/app/(console)/[...slug]/page/build-manifest.json +3 -3
  73. package/server/.next/server/app/(console)/[...slug]/page/server-reference-manifest.json +9 -9
  74. package/server/.next/server/app/(console)/[...slug]/page.js +55 -53
  75. package/server/.next/server/app/(console)/[...slug]/page.js.nft.json +1 -1
  76. package/server/.next/server/app/(console)/[...slug]/page_client-reference-manifest.js +1 -1
  77. package/server/.next/server/app/(console)/alerts/page/build-manifest.json +3 -3
  78. package/server/.next/server/app/(console)/alerts/page/server-reference-manifest.json +22 -22
  79. package/server/.next/server/app/(console)/alerts/page.js +54 -52
  80. package/server/.next/server/app/(console)/alerts/page.js.nft.json +1 -1
  81. package/server/.next/server/app/(console)/alerts/page_client-reference-manifest.js +1 -1
  82. package/server/.next/server/app/(console)/apps/[id]/page/build-manifest.json +3 -3
  83. package/server/.next/server/app/(console)/apps/[id]/page/server-reference-manifest.json +23 -23
  84. package/server/.next/server/app/(console)/apps/[id]/page.js +54 -52
  85. package/server/.next/server/app/(console)/apps/[id]/page.js.nft.json +1 -1
  86. package/server/.next/server/app/(console)/apps/[id]/page_client-reference-manifest.js +1 -1
  87. package/server/.next/server/app/(console)/apps/page/build-manifest.json +3 -3
  88. package/server/.next/server/app/(console)/apps/page/server-reference-manifest.json +11 -11
  89. package/server/.next/server/app/(console)/apps/page.js +54 -52
  90. package/server/.next/server/app/(console)/apps/page.js.nft.json +1 -1
  91. package/server/.next/server/app/(console)/apps/page_client-reference-manifest.js +1 -1
  92. package/server/.next/server/app/(console)/backups/page/build-manifest.json +3 -3
  93. package/server/.next/server/app/(console)/backups/page/server-reference-manifest.json +12 -12
  94. package/server/.next/server/app/(console)/backups/page.js +54 -52
  95. package/server/.next/server/app/(console)/backups/page.js.nft.json +1 -1
  96. package/server/.next/server/app/(console)/backups/page_client-reference-manifest.js +1 -1
  97. package/server/.next/server/app/(console)/catalog/page/build-manifest.json +3 -3
  98. package/server/.next/server/app/(console)/catalog/page/server-reference-manifest.json +9 -9
  99. package/server/.next/server/app/(console)/catalog/page.js +54 -52
  100. package/server/.next/server/app/(console)/catalog/page.js.nft.json +1 -1
  101. package/server/.next/server/app/(console)/catalog/page_client-reference-manifest.js +1 -1
  102. package/server/.next/server/app/(console)/connections/page/build-manifest.json +3 -3
  103. package/server/.next/server/app/(console)/connections/page/server-reference-manifest.json +54 -54
  104. package/server/.next/server/app/(console)/connections/page.js +60 -58
  105. package/server/.next/server/app/(console)/connections/page.js.nft.json +1 -1
  106. package/server/.next/server/app/(console)/connections/page_client-reference-manifest.js +1 -1
  107. package/server/.next/server/app/(console)/d1/page/build-manifest.json +3 -3
  108. package/server/.next/server/app/(console)/d1/page/server-reference-manifest.json +9 -9
  109. package/server/.next/server/app/(console)/d1/page.js +54 -52
  110. package/server/.next/server/app/(console)/d1/page.js.nft.json +1 -1
  111. package/server/.next/server/app/(console)/d1/page_client-reference-manifest.js +1 -1
  112. package/server/.next/server/app/(console)/deployments/page/build-manifest.json +3 -3
  113. package/server/.next/server/app/(console)/deployments/page/server-reference-manifest.json +14 -14
  114. package/server/.next/server/app/(console)/deployments/page.js +54 -52
  115. package/server/.next/server/app/(console)/deployments/page.js.nft.json +1 -1
  116. package/server/.next/server/app/(console)/deployments/page_client-reference-manifest.js +1 -1
  117. package/server/.next/server/app/(console)/dns/page/build-manifest.json +3 -3
  118. package/server/.next/server/app/(console)/dns/page/server-reference-manifest.json +16 -16
  119. package/server/.next/server/app/(console)/dns/page.js +54 -52
  120. package/server/.next/server/app/(console)/dns/page.js.nft.json +1 -1
  121. package/server/.next/server/app/(console)/dns/page_client-reference-manifest.js +1 -1
  122. package/server/.next/server/app/(console)/domains/page/build-manifest.json +3 -3
  123. package/server/.next/server/app/(console)/domains/page/server-reference-manifest.json +11 -11
  124. package/server/.next/server/app/(console)/domains/page.js +54 -52
  125. package/server/.next/server/app/(console)/domains/page.js.nft.json +1 -1
  126. package/server/.next/server/app/(console)/domains/page_client-reference-manifest.js +1 -1
  127. package/server/.next/server/app/(console)/events/page/build-manifest.json +3 -3
  128. package/server/.next/server/app/(console)/events/page/server-reference-manifest.json +9 -9
  129. package/server/.next/server/app/(console)/events/page.js +54 -52
  130. package/server/.next/server/app/(console)/events/page.js.nft.json +1 -1
  131. package/server/.next/server/app/(console)/events/page_client-reference-manifest.js +1 -1
  132. package/server/.next/server/app/(console)/firebase/page/build-manifest.json +3 -3
  133. package/server/.next/server/app/(console)/firebase/page/server-reference-manifest.json +15 -15
  134. package/server/.next/server/app/(console)/firebase/page.js +55 -53
  135. package/server/.next/server/app/(console)/firebase/page.js.nft.json +1 -1
  136. package/server/.next/server/app/(console)/firebase/page_client-reference-manifest.js +1 -1
  137. package/server/.next/server/app/(console)/logs/page/build-manifest.json +3 -3
  138. package/server/.next/server/app/(console)/logs/page/server-reference-manifest.json +10 -10
  139. package/server/.next/server/app/(console)/logs/page.js +54 -52
  140. package/server/.next/server/app/(console)/logs/page.js.nft.json +1 -1
  141. package/server/.next/server/app/(console)/logs/page_client-reference-manifest.js +1 -1
  142. package/server/.next/server/app/(console)/manage/sections/page/app-paths-manifest.json +3 -0
  143. package/server/.next/server/app/(console)/manage/sections/page/build-manifest.json +22 -0
  144. package/server/.next/server/app/(console)/manage/sections/page/next-font-manifest.json +11 -0
  145. package/server/.next/server/app/(console)/manage/sections/page/react-loadable-manifest.json +1 -0
  146. package/server/.next/server/app/(console)/manage/sections/page/server-reference-manifest.json +105 -0
  147. package/server/.next/server/app/(console)/manage/sections/page.js +104 -0
  148. package/server/.next/server/app/(console)/manage/sections/page.js.nft.json +1 -0
  149. package/server/.next/server/app/(console)/manage/sections/page_client-reference-manifest.js +3 -0
  150. package/server/.next/server/app/(console)/neon/page/build-manifest.json +3 -3
  151. package/server/.next/server/app/(console)/neon/page/server-reference-manifest.json +20 -20
  152. package/server/.next/server/app/(console)/neon/page.js +54 -52
  153. package/server/.next/server/app/(console)/neon/page.js.nft.json +1 -1
  154. package/server/.next/server/app/(console)/neon/page_client-reference-manifest.js +1 -1
  155. package/server/.next/server/app/(console)/overview/page/build-manifest.json +3 -3
  156. package/server/.next/server/app/(console)/overview/page/server-reference-manifest.json +18 -18
  157. package/server/.next/server/app/(console)/overview/page.js +54 -52
  158. package/server/.next/server/app/(console)/overview/page.js.nft.json +1 -1
  159. package/server/.next/server/app/(console)/overview/page_client-reference-manifest.js +1 -1
  160. package/server/.next/server/app/(console)/repos/[id]/page/build-manifest.json +3 -3
  161. package/server/.next/server/app/(console)/repos/[id]/page/server-reference-manifest.json +10 -10
  162. package/server/.next/server/app/(console)/repos/[id]/page.js +54 -52
  163. package/server/.next/server/app/(console)/repos/[id]/page.js.nft.json +1 -1
  164. package/server/.next/server/app/(console)/repos/[id]/page_client-reference-manifest.js +1 -1
  165. package/server/.next/server/app/(console)/repos/page/build-manifest.json +3 -3
  166. package/server/.next/server/app/(console)/repos/page/server-reference-manifest.json +9 -9
  167. package/server/.next/server/app/(console)/repos/page.js +54 -52
  168. package/server/.next/server/app/(console)/repos/page.js.nft.json +1 -1
  169. package/server/.next/server/app/(console)/repos/page_client-reference-manifest.js +1 -1
  170. package/server/.next/server/app/(console)/settings/page/build-manifest.json +3 -3
  171. package/server/.next/server/app/(console)/settings/page/server-reference-manifest.json +19 -19
  172. package/server/.next/server/app/(console)/settings/page.js +54 -52
  173. package/server/.next/server/app/(console)/settings/page.js.nft.json +1 -1
  174. package/server/.next/server/app/(console)/settings/page_client-reference-manifest.js +1 -1
  175. package/server/.next/server/app/(console)/sql/page/build-manifest.json +3 -3
  176. package/server/.next/server/app/(console)/sql/page/server-reference-manifest.json +16 -16
  177. package/server/.next/server/app/(console)/sql/page.js +54 -52
  178. package/server/.next/server/app/(console)/sql/page.js.nft.json +1 -1
  179. package/server/.next/server/app/(console)/sql/page_client-reference-manifest.js +1 -1
  180. package/server/.next/server/app/(console)/status/page/build-manifest.json +3 -3
  181. package/server/.next/server/app/(console)/status/page/server-reference-manifest.json +9 -9
  182. package/server/.next/server/app/(console)/status/page.js +54 -52
  183. package/server/.next/server/app/(console)/status/page.js.nft.json +1 -1
  184. package/server/.next/server/app/(console)/status/page_client-reference-manifest.js +1 -1
  185. package/server/.next/server/app/(console)/supabase/page/build-manifest.json +3 -3
  186. package/server/.next/server/app/(console)/supabase/page/server-reference-manifest.json +29 -29
  187. package/server/.next/server/app/(console)/supabase/page.js +54 -52
  188. package/server/.next/server/app/(console)/supabase/page.js.nft.json +1 -1
  189. package/server/.next/server/app/(console)/supabase/page_client-reference-manifest.js +1 -1
  190. package/server/.next/server/app/(console)/topology/page/build-manifest.json +3 -3
  191. package/server/.next/server/app/(console)/topology/page/server-reference-manifest.json +9 -9
  192. package/server/.next/server/app/(console)/topology/page.js +54 -52
  193. package/server/.next/server/app/(console)/topology/page.js.nft.json +1 -1
  194. package/server/.next/server/app/(console)/topology/page_client-reference-manifest.js +1 -1
  195. package/server/.next/server/app/(console)/turso/page/build-manifest.json +3 -3
  196. package/server/.next/server/app/(console)/turso/page/server-reference-manifest.json +9 -9
  197. package/server/.next/server/app/(console)/turso/page.js +54 -52
  198. package/server/.next/server/app/(console)/turso/page.js.nft.json +1 -1
  199. package/server/.next/server/app/(console)/turso/page_client-reference-manifest.js +1 -1
  200. package/server/.next/server/app/(console)/upstash/page/build-manifest.json +3 -3
  201. package/server/.next/server/app/(console)/upstash/page/server-reference-manifest.json +9 -9
  202. package/server/.next/server/app/(console)/upstash/page.js +54 -52
  203. package/server/.next/server/app/(console)/upstash/page.js.nft.json +1 -1
  204. package/server/.next/server/app/(console)/upstash/page_client-reference-manifest.js +1 -1
  205. package/server/.next/server/app/(console)/uptime/page/build-manifest.json +3 -3
  206. package/server/.next/server/app/(console)/uptime/page/server-reference-manifest.json +22 -22
  207. package/server/.next/server/app/(console)/uptime/page.js +54 -52
  208. package/server/.next/server/app/(console)/uptime/page.js.nft.json +1 -1
  209. package/server/.next/server/app/(console)/uptime/page_client-reference-manifest.js +1 -1
  210. package/server/.next/server/app/(console)/welcome/page/build-manifest.json +3 -3
  211. package/server/.next/server/app/(console)/welcome/page/server-reference-manifest.json +14 -14
  212. package/server/.next/server/app/(console)/welcome/page.js +55 -53
  213. package/server/.next/server/app/(console)/welcome/page.js.nft.json +1 -1
  214. package/server/.next/server/app/(console)/welcome/page_client-reference-manifest.js +1 -1
  215. package/server/.next/server/app/_global-error/page/build-manifest.json +3 -3
  216. package/server/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  217. package/server/.next/server/app/_global-error/page.js.nft.json +1 -1
  218. package/server/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  219. package/server/.next/server/app/_global-error.html +1 -1
  220. package/server/.next/server/app/_global-error.rsc +3 -3
  221. package/server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  222. package/server/.next/server/app/_global-error.segments/_full.segment.rsc +3 -3
  223. package/server/.next/server/app/_global-error.segments/_tree.segment.rsc +2 -2
  224. package/server/.next/server/app/_not-found/page/build-manifest.json +3 -3
  225. package/server/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  226. package/server/.next/server/app/_not-found/page.js.nft.json +1 -1
  227. package/server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  228. package/server/.next/server/app/_not-found.html +1 -1
  229. package/server/.next/server/app/_not-found.rsc +4 -4
  230. package/server/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
  231. package/server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  232. package/server/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  233. package/server/.next/server/app/account/password/page/build-manifest.json +3 -3
  234. package/server/.next/server/app/account/password/page/server-reference-manifest.json +2 -2
  235. package/server/.next/server/app/account/password/page.js.nft.json +1 -1
  236. package/server/.next/server/app/account/password/page_client-reference-manifest.js +1 -1
  237. package/server/.next/server/app/api/collect/route/server-reference-manifest.json +7 -7
  238. package/server/.next/server/app/api/collect/route.js +74 -71
  239. package/server/.next/server/app/api/collect/route.js.nft.json +1 -1
  240. package/server/.next/server/app/api/daily/route/server-reference-manifest.json +7 -7
  241. package/server/.next/server/app/api/daily/route.js +66 -63
  242. package/server/.next/server/app/api/daily/route.js.nft.json +1 -1
  243. package/server/.next/server/app/api/health/route.js.nft.json +1 -1
  244. package/server/.next/server/app/api/ping/[...parts]/route.js.nft.json +1 -1
  245. package/server/.next/server/app/api/status/route.js.nft.json +1 -1
  246. package/server/.next/server/app/api/telegram/webhook/route/server-reference-manifest.json +7 -7
  247. package/server/.next/server/app/api/telegram/webhook/route.js +71 -68
  248. package/server/.next/server/app/api/telegram/webhook/route.js.nft.json +1 -1
  249. package/server/.next/server/app/api/v1/[[...rest]]/route.js.nft.json +1 -1
  250. package/server/.next/server/app/api/v1/advice/route.js +4 -4
  251. package/server/.next/server/app/api/v1/advice/route.js.nft.json +1 -1
  252. package/server/.next/server/app/api/v1/ai/chat/completions/route.js +2 -2
  253. package/server/.next/server/app/api/v1/ai/chat/completions/route.js.nft.json +1 -1
  254. package/server/.next/server/app/api/v1/ai/models/route.js +2 -2
  255. package/server/.next/server/app/api/v1/ai/models/route.js.nft.json +1 -1
  256. package/server/.next/server/app/api/v1/ai/questions/[id]/route.js +1 -1
  257. package/server/.next/server/app/api/v1/ai/questions/[id]/route.js.nft.json +1 -1
  258. package/server/.next/server/app/api/v1/ai/questions/route.js +5 -5
  259. package/server/.next/server/app/api/v1/ai/questions/route.js.nft.json +1 -1
  260. package/server/.next/server/app/api/v1/mcp/route.js +5 -5
  261. package/server/.next/server/app/api/v1/mcp/route.js.nft.json +1 -1
  262. package/server/.next/server/app/api/v1/me/route.js +1 -1
  263. package/server/.next/server/app/api/v1/me/route.js.nft.json +1 -1
  264. package/server/.next/server/app/api/v1/openapi.json/route.js +1 -1
  265. package/server/.next/server/app/api/v1/openapi.json/route.js.nft.json +1 -1
  266. package/server/.next/server/app/api/v1/status/apps/[app]/route.js +4 -4
  267. package/server/.next/server/app/api/v1/status/apps/[app]/route.js.nft.json +1 -1
  268. package/server/.next/server/app/api/v1/status/route.js +4 -4
  269. package/server/.next/server/app/api/v1/status/route.js.nft.json +1 -1
  270. package/server/.next/server/app/api/watchdog/route.js +19 -18
  271. package/server/.next/server/app/api/watchdog/route.js.nft.json +1 -1
  272. package/server/.next/server/app/auth/confirm/route.js.nft.json +1 -1
  273. package/server/.next/server/app/auth/google/callback/route.js.nft.json +1 -1
  274. package/server/.next/server/app/auth/google/create/callback/route.js.nft.json +1 -1
  275. package/server/.next/server/app/auth/not-member/route.js.nft.json +1 -1
  276. package/server/.next/server/app/auth/session-ended/route.js.nft.json +1 -1
  277. package/server/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  278. package/server/.next/server/app/invite/page/build-manifest.json +3 -3
  279. package/server/.next/server/app/invite/page/server-reference-manifest.json +2 -2
  280. package/server/.next/server/app/invite/page.js.nft.json +1 -1
  281. package/server/.next/server/app/invite/page_client-reference-manifest.js +1 -1
  282. package/server/.next/server/app/mfa/page/build-manifest.json +3 -3
  283. package/server/.next/server/app/mfa/page/server-reference-manifest.json +2 -2
  284. package/server/.next/server/app/mfa/page.js.nft.json +1 -1
  285. package/server/.next/server/app/mfa/page_client-reference-manifest.js +1 -1
  286. package/server/.next/server/app/mfa/setup/page/build-manifest.json +3 -3
  287. package/server/.next/server/app/mfa/setup/page/server-reference-manifest.json +3 -3
  288. package/server/.next/server/app/mfa/setup/page.js.nft.json +1 -1
  289. package/server/.next/server/app/mfa/setup/page_client-reference-manifest.js +1 -1
  290. package/server/.next/server/app/page/build-manifest.json +3 -3
  291. package/server/.next/server/app/page/server-reference-manifest.json +1 -1
  292. package/server/.next/server/app/page.js.nft.json +1 -1
  293. package/server/.next/server/app/page_client-reference-manifest.js +1 -1
  294. package/server/.next/server/app/s/[slug]/badge/[file]/route.js.nft.json +1 -1
  295. package/server/.next/server/app/s/[slug]/page/build-manifest.json +3 -3
  296. package/server/.next/server/app/s/[slug]/page/server-reference-manifest.json +1 -1
  297. package/server/.next/server/app/s/[slug]/page.js.nft.json +1 -1
  298. package/server/.next/server/app/s/[slug]/page_client-reference-manifest.js +1 -1
  299. package/server/.next/server/app/setup/page/build-manifest.json +3 -3
  300. package/server/.next/server/app/setup/page/server-reference-manifest.json +2 -2
  301. package/server/.next/server/app/setup/page.js.nft.json +1 -1
  302. package/server/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  303. package/server/.next/server/app/signin/page/build-manifest.json +3 -3
  304. package/server/.next/server/app/signin/page/server-reference-manifest.json +3 -3
  305. package/server/.next/server/app/signin/page.js.nft.json +1 -1
  306. package/server/.next/server/app/signin/page_client-reference-manifest.js +1 -1
  307. package/server/.next/server/app-paths-manifest.json +1 -0
  308. package/server/.next/server/chunks/{[externals]__0fbnlnnial7w5._.js → [externals]__0qo8lpb70m87u._.js} +1 -1
  309. package/server/.next/server/chunks/{[externals]__1e0dmqhilgze5._.js → [externals]__100hq0n2xtenb._.js} +1 -1
  310. package/server/.next/server/chunks/{[externals]__1jhautmcwmgii._.js → [externals]__1irgb5qz1s3gv._.js} +1 -1
  311. package/server/.next/server/chunks/[root-of-the-server]__03276vwi4jgvk._.js +1 -1
  312. package/server/.next/server/chunks/[root-of-the-server]__049ykc067tlsv._.js +1 -1
  313. package/server/.next/server/chunks/[root-of-the-server]__04q-9779vl4kn._.js +3 -0
  314. package/server/.next/server/chunks/[root-of-the-server]__04rnior8cyxtx._.js +3 -0
  315. package/server/.next/server/chunks/{[root-of-the-server]__0hju4mctdmvz9._.js → [root-of-the-server]__06ek056i_j_uk._.js} +2 -2
  316. package/server/.next/server/chunks/[root-of-the-server]__06f9e4kpi0mw8._.js +1 -1
  317. package/server/.next/server/chunks/[root-of-the-server]__06jphm4auz_sh._.js +3 -0
  318. package/server/.next/server/chunks/{[root-of-the-server]__0rak0ce6prxwp._.js → [root-of-the-server]__06r-019fixp3f._.js} +1 -1
  319. package/server/.next/server/chunks/{[root-of-the-server]__1-q6_msattgcu._.js → [root-of-the-server]__07uknh5b-embq._.js} +1 -1
  320. package/server/.next/server/chunks/{[root-of-the-server]__0vctt_0kj1gz4._.js → [root-of-the-server]__07v5e0vzgl4n2._.js} +2 -2
  321. package/server/.next/server/chunks/{[root-of-the-server]__14zpwd7xntffk._.js → [root-of-the-server]__08fyoixg__c7n._.js} +1 -1
  322. package/server/.next/server/chunks/[root-of-the-server]__0_rfeg3389imx._.js +1 -1
  323. package/server/.next/server/chunks/[root-of-the-server]__0b2hzo6nez0we._.js +1 -1
  324. package/server/.next/server/chunks/[root-of-the-server]__0b9tciqdsctau._.js +3 -0
  325. package/server/.next/server/chunks/{[root-of-the-server]__15tt645jfx-br._.js → [root-of-the-server]__0b_4w-5x5u7ag._.js} +1 -1
  326. package/server/.next/server/chunks/{[root-of-the-server]__1-37ctpn8yw_m._.js → [root-of-the-server]__0bnasoi-x21jc._.js} +1 -1
  327. package/server/.next/server/chunks/{[root-of-the-server]__08i_or_xyqg4g._.js → [root-of-the-server]__0d8ypilha-el8._.js} +2 -2
  328. package/server/.next/server/chunks/{[root-of-the-server]__0f5l9--3_wjvx._.js → [root-of-the-server]__0flqwe7amc3mz._.js} +2 -2
  329. package/server/.next/server/chunks/{[root-of-the-server]__11kfkk5yxz4ge._.js → [root-of-the-server]__0fw19tsgp-vbq._.js} +2 -2
  330. package/server/.next/server/chunks/{[root-of-the-server]__1_l4gp3r2d-7x._.js → [root-of-the-server]__0fw7l5y58_xcd._.js} +2 -2
  331. package/server/.next/server/chunks/{[root-of-the-server]__0j68ia9q425ff._.js → [root-of-the-server]__0g1tldn4xjewd._.js} +2 -2
  332. package/server/.next/server/chunks/{[root-of-the-server]__03pc2mot62sow._.js → [root-of-the-server]__0h1qhdjpfq1d4._.js} +2 -2
  333. package/server/.next/server/chunks/{[root-of-the-server]__0hpdrg-m0n6ty._.js → [root-of-the-server]__0h4n81_nqdr4j._.js} +2 -2
  334. package/server/.next/server/chunks/{[root-of-the-server]__0i3n8l6ecdb4u._.js → [root-of-the-server]__0hty-wue10pro._.js} +2 -2
  335. package/server/.next/server/chunks/[root-of-the-server]__0jqgfbhrgi28s._.js +3 -0
  336. package/server/.next/server/chunks/[root-of-the-server]__0m7i0l3nkbdfm._.js +1 -1
  337. package/server/.next/server/chunks/[root-of-the-server]__0mwiq4mkf8pc5._.js +1 -1
  338. package/server/.next/server/chunks/{[root-of-the-server]__0mui3wh3lfb6m._.js → [root-of-the-server]__0npmbdrxybln5._.js} +1 -1
  339. package/server/.next/server/chunks/{[root-of-the-server]__010exlr_efe2h._.js → [root-of-the-server]__0nqw6z6fp8wad._.js} +2 -2
  340. package/server/.next/server/chunks/{[root-of-the-server]__0_iz9zh9e_mov._.js → [root-of-the-server]__0olmk-rbbhxlo._.js} +2 -2
  341. package/server/.next/server/chunks/{[root-of-the-server]__0nsie5dba69e6._.js → [root-of-the-server]__0owyb9lr5t5u-._.js} +2 -2
  342. package/server/.next/server/chunks/[root-of-the-server]__0p3lnkpxf2-xz._.js +1 -1
  343. package/server/.next/server/chunks/{[root-of-the-server]__0v1kcolrxwmob._.js → [root-of-the-server]__0si9k9jhdc0bm._.js} +2 -2
  344. package/server/.next/server/chunks/{[root-of-the-server]__0ul6-jnt2oco7._.js → [root-of-the-server]__0t8d8b4qkw3y-._.js} +1 -1
  345. package/server/.next/server/chunks/{[root-of-the-server]__0i1de88cj5y-p._.js → [root-of-the-server]__0tl5pxttllr4d._.js} +2 -2
  346. package/server/.next/server/chunks/{[root-of-the-server]__0m7_0rarf_x86._.js → [root-of-the-server]__0uyh4jgcd9092._.js} +2 -2
  347. package/server/.next/server/chunks/[root-of-the-server]__0v4-g6c-ls39_._.js +3 -0
  348. package/server/.next/server/chunks/[root-of-the-server]__0vgnlhvdoh3bn._.js +3 -0
  349. package/server/.next/server/chunks/[root-of-the-server]__0vp-x4ifpr3p9._.js +1 -1
  350. package/server/.next/server/chunks/{[root-of-the-server]__15j_u2bz3jc-a._.js → [root-of-the-server]__0wy38l7k36j6g._.js} +1 -1
  351. package/server/.next/server/chunks/{[root-of-the-server]__0j53mir12jire._.js → [root-of-the-server]__0xiz361p5kdhf._.js} +1 -1
  352. package/server/.next/server/chunks/{[root-of-the-server]__0ogbwvwpnlx0b._.js → [root-of-the-server]__0z-07azr3zk8s._.js} +1 -1
  353. package/server/.next/server/chunks/{[root-of-the-server]__0x0x6v75re5_e._.js → [root-of-the-server]__0zxyfd7u67hmv._.js} +1 -1
  354. package/server/.next/server/chunks/[root-of-the-server]__10c7apgidgs6x._.js +3 -0
  355. package/server/.next/server/chunks/{[root-of-the-server]__1czhdqbxj_3ov._.js → [root-of-the-server]__10x3lu8jeqgbt._.js} +2 -2
  356. package/server/.next/server/chunks/{[root-of-the-server]__0gs-x779qi1ba._.js → [root-of-the-server]__11-van59e9p2a._.js} +2 -2
  357. package/server/.next/server/chunks/[root-of-the-server]__110c-t3wz3nzm._.js +1 -1
  358. package/server/.next/server/chunks/[root-of-the-server]__116b4n13dv75t._.js +3 -0
  359. package/server/.next/server/chunks/[root-of-the-server]__11k46kam6tbia._.js +1 -1
  360. package/server/.next/server/chunks/[root-of-the-server]__11tte6au1b-z-._.js +3 -0
  361. package/server/.next/server/chunks/[root-of-the-server]__127dbd1prkw0n._.js +3 -0
  362. package/server/.next/server/chunks/[root-of-the-server]__12uj0887q1ayr._.js +1 -1
  363. package/server/.next/server/chunks/[root-of-the-server]__13_b24n_f4my4._.js +3 -0
  364. package/server/.next/server/chunks/[root-of-the-server]__13h--47xmg706._.js +5 -0
  365. package/server/.next/server/chunks/{[root-of-the-server]__1rf3slum5swk2._.js → [root-of-the-server]__145gadwk31inl._.js} +2 -2
  366. package/server/.next/server/chunks/{[root-of-the-server]__0qesn8t6k9y_n._.js → [root-of-the-server]__14luo1ecxoqh-._.js} +1 -1
  367. package/server/.next/server/chunks/{[root-of-the-server]__15ddlx_ma_1iu._.js → [root-of-the-server]__162cm9ds1c5y2._.js} +2 -2
  368. package/server/.next/server/chunks/[root-of-the-server]__19kwj690b37xf._.js +1 -1
  369. package/server/.next/server/chunks/[root-of-the-server]__19vsae2naddj5._.js +3 -0
  370. package/server/.next/server/chunks/[root-of-the-server]__1_l065umy451k._.js +3 -0
  371. package/server/.next/server/chunks/[root-of-the-server]__1_ow7lgy0u7st._.js +3 -0
  372. package/server/.next/server/chunks/[root-of-the-server]__1akvpmbiap6nf._.js +1 -1
  373. package/server/.next/server/chunks/{[root-of-the-server]__0292lwnmh4wtc._.js → [root-of-the-server]__1aza-7l2pl-pm._.js} +2 -2
  374. package/server/.next/server/chunks/[root-of-the-server]__1bsyavebtmd7w._.js +3 -0
  375. package/server/.next/server/chunks/[root-of-the-server]__1cju843cjyf1t._.js +3 -0
  376. package/server/.next/server/chunks/{[root-of-the-server]__1flvcyht5uk7h._.js → [root-of-the-server]__1cla4k3dqtcfb._.js} +2 -2
  377. package/server/.next/server/chunks/[root-of-the-server]__1fnsa-f0t7bxj._.js +3 -0
  378. package/server/.next/server/chunks/[root-of-the-server]__1g1176fer3j4e._.js +3 -0
  379. package/server/.next/server/chunks/[root-of-the-server]__1hqy35gww7ps2._.js +3 -0
  380. package/server/.next/server/chunks/[root-of-the-server]__1i92wg2yuvs4c._.js +3 -0
  381. package/server/.next/server/chunks/{[root-of-the-server]__03e141znq0hr-._.js → [root-of-the-server]__1iv6vg3z9ho81._.js} +1 -1
  382. package/server/.next/server/chunks/{[root-of-the-server]__1jh0el-zvg4hp._.js → [root-of-the-server]__1j3-sv7eqyhjb._.js} +2 -2
  383. package/server/.next/server/chunks/[root-of-the-server]__1j3w0-cp17tx4._.js +3 -0
  384. package/server/.next/server/chunks/{[root-of-the-server]__0alnp_0qkhzze._.js → [root-of-the-server]__1j_iy13gp2-on._.js} +2 -2
  385. package/server/.next/server/chunks/[root-of-the-server]__1kg91b3sadtoc._.js +3 -0
  386. package/server/.next/server/chunks/[root-of-the-server]__1kjndfodqqamq._.js +3 -0
  387. package/server/.next/server/chunks/[root-of-the-server]__1mami4vb3y5gd._.js +3 -0
  388. package/server/.next/server/chunks/[root-of-the-server]__1mse65-7gtj-n._.js +3 -0
  389. package/server/.next/server/chunks/[root-of-the-server]__1objhlwwrjfjk._.js +1 -1
  390. package/server/.next/server/chunks/[root-of-the-server]__1pscg7y0et34j._.js +3 -0
  391. package/server/.next/server/chunks/[root-of-the-server]__1rw0i4x2ake3x._.js +3 -0
  392. package/server/.next/server/chunks/[root-of-the-server]__1t9zp524wouer._.js +3 -0
  393. package/server/.next/server/chunks/[root-of-the-server]__1v-789ydxj30e._.js +3 -0
  394. package/server/.next/server/chunks/[root-of-the-server]__1vi0u2vkv3tk0._.js +1 -1
  395. package/server/.next/server/chunks/{[root-of-the-server]__1hw6s0e7p2-6g._.js → [root-of-the-server]__1w3svzao_gnxp._.js} +2 -2
  396. package/server/.next/server/chunks/[root-of-the-server]__1x7ucdyxuh2_k._.js +3 -0
  397. package/server/.next/server/chunks/{[root-of-the-server]__08l1x_plf4dil._.js → [root-of-the-server]__1xdi98xyay6bn._.js} +1 -1
  398. package/server/.next/server/chunks/{[root-of-the-server]__1qzor1nqajuyp._.js → [root-of-the-server]__20_1nfa6fiz-q._.js} +2 -2
  399. package/server/.next/server/chunks/[root-of-the-server]__20b_clyk74g5u._.js +3 -0
  400. package/server/.next/server/chunks/[root-of-the-server]__20ev6t8zggct2._.js +3 -0
  401. package/server/.next/server/chunks/_004c7-39glldb._.js +4 -4
  402. package/server/.next/server/chunks/_008zv66xvj7ey._.js +37 -0
  403. package/server/.next/server/chunks/{_12uzjq-fbcuvb._.js → _01s3_8ssosvqi._.js} +1 -1
  404. package/server/.next/server/chunks/_03qlijpos6a21._.js +3 -0
  405. package/server/.next/server/chunks/_09l75j3ey14tc._.js +1 -1
  406. package/server/.next/server/chunks/_0a7533vs89s78._.js +7 -0
  407. package/server/.next/server/chunks/_0ejcrge5k4quv._.js +1 -1
  408. package/server/.next/server/chunks/_0k4iqzwm6w5_c._.js +37 -0
  409. package/server/.next/server/chunks/_0kmhvts35imzs._.js +1 -1
  410. package/server/.next/server/chunks/_0m1ll2r1g77ii._.js +1 -1
  411. package/server/.next/server/chunks/_0n-wbmmvp4omq._.js +1 -1
  412. package/server/.next/server/chunks/_0nt4hve0bi30h._.js +37 -0
  413. package/server/.next/server/chunks/_0op74d4yyc3ma._.js +1 -1
  414. package/server/.next/server/chunks/_0pf2g5n_ko5dq._.js +3 -0
  415. package/server/.next/server/chunks/_0qmi54vmnlwdv._.js +1 -1
  416. package/server/.next/server/chunks/_0qr77omrkuewo._.js +3 -0
  417. package/server/.next/server/chunks/_0rjh9w2ih3j2h._.js +3 -0
  418. package/server/.next/server/chunks/_0sy878k2ywjbq._.js +3 -0
  419. package/server/.next/server/chunks/_0tz4o-qufnu3l._.js +4 -4
  420. package/server/.next/server/chunks/_0voowig3y32v1._.js +1 -1
  421. package/server/.next/server/chunks/_0wxm_716tjorj._.js +3 -0
  422. package/server/.next/server/chunks/_0xf7mtsrkgc9e._.js +1 -1
  423. package/server/.next/server/chunks/_0zkmkbrbc96-h._.js +3 -0
  424. package/server/.next/server/chunks/_1-pw7jw52sbti._.js +3 -0
  425. package/server/.next/server/chunks/_10vh_l3hht4_3._.js +4 -4
  426. package/server/.next/server/chunks/_14ymj3uzawde4._.js +7 -0
  427. package/server/.next/server/chunks/_15g-opioju_ju._.js +3 -0
  428. package/server/.next/server/chunks/_17aiz6zt-yv52._.js +1 -1
  429. package/server/.next/server/chunks/_1_son1yzo5xvl._.js +3 -0
  430. package/server/.next/server/chunks/_1b7pc6ohhqxs3._.js +1 -1
  431. package/server/.next/server/chunks/_1g_prqb_u33e3._.js +1 -1
  432. package/server/.next/server/chunks/_1i7qkrp3fnx1a._.js +37 -0
  433. package/server/.next/server/chunks/_1luzeov9x87mg._.js +7 -0
  434. package/server/.next/server/chunks/{_1jz6k3wy_s8br._.js → _1p0ced3sr0i_8._.js} +1 -1
  435. package/server/.next/server/chunks/_1v7q0xdxbqawm._.js +1 -1
  436. package/server/.next/server/chunks/_1zx_54or1pubb._.js +1 -1
  437. package/server/.next/server/chunks/node_modules_next_dist_1i-_xribpwttd._.js +313 -0
  438. package/server/.next/server/chunks/src_01jp2f5qmh8e2._.js +3 -0
  439. package/server/.next/server/chunks/src_063xvouojxyoa._.js +1 -1
  440. package/server/.next/server/chunks/src_088gmyaew7ds0._.js +3 -0
  441. package/server/.next/server/chunks/{src_08bzavsfds295._.js → src_0kwnhwi77unm7._.js} +2 -2
  442. package/server/.next/server/chunks/src_0xqorb3-ef3ub._.js +1 -1
  443. package/server/.next/server/chunks/src_0y_4gogmeu-2k._.js +3 -0
  444. package/server/.next/server/chunks/src_1-xw4hea2lvb3._.js +1 -1
  445. package/server/.next/server/chunks/src_1a5yibsjcy1ga._.js +1 -1
  446. package/server/.next/server/chunks/src_1bqzr81r3wkvi._.js +3 -0
  447. package/server/.next/server/chunks/{src_03umyw-p7jhaj._.js → src_1dsh9rzlos6-1._.js} +2 -2
  448. package/server/.next/server/chunks/src_1hy7u0jtydq_d._.js +3 -0
  449. package/server/.next/server/chunks/src_1j2o14j0-23xv._.js +3 -0
  450. package/server/.next/server/chunks/src_1j71dvub05y-4._.js +3 -0
  451. package/server/.next/server/chunks/{src_0k78ifotuztod._.js → src_1no_yh953mran._.js} +2 -2
  452. package/server/.next/server/chunks/src_1s7yll47_n_hy._.js +3 -0
  453. package/server/.next/server/chunks/src_1tux0n9_5b1kr._.js +3 -3
  454. package/server/.next/server/chunks/src_1wduh0eckiwl1._.js +3 -0
  455. package/server/.next/server/chunks/src_1wzm081p6qyre._.js +3 -3
  456. package/server/.next/server/chunks/src_lib_0ds7lhpop_adf._.js +1 -1
  457. package/server/.next/server/chunks/src_lib_0glcfed-uogyd._.js +1 -1
  458. package/server/.next/server/chunks/src_lib_0oz4gm8agoidh._.js +6 -0
  459. package/server/.next/server/chunks/src_lib_0s_txig7jm3ty._.js +3 -3
  460. package/server/.next/server/chunks/src_lib_0ta8sd9jeuw50._.js +15 -0
  461. package/server/.next/server/chunks/src_lib_0y-obfzqjj0c6._.js +6 -0
  462. package/server/.next/server/chunks/src_lib_10_w0ihgmx4e6._.js +6 -0
  463. package/server/.next/server/chunks/src_lib_15wd7ab4u5nrn._.js +3 -3
  464. package/server/.next/server/chunks/src_lib_1en6omqx66g9d._.js +15 -0
  465. package/server/.next/server/chunks/{src_lib_0vl2-zp4wzw7n._.js → src_lib_1p21oczr6lh5a._.js} +1 -1
  466. package/server/.next/server/chunks/src_lib_1qo6t00wwitz6._.js +15 -0
  467. package/server/.next/server/chunks/src_lib_1sz77jjn7xl7o._.js +1 -1
  468. package/server/.next/server/chunks/src_lib_1yewk45thnv1h._.js +1 -1
  469. package/server/.next/server/chunks/src_lib_1z73euz6d3tus._.js +6 -0
  470. package/server/.next/server/chunks/src_lib_collector_auth_ts_0lqx92__e4zij._.js +4 -4
  471. package/server/.next/server/chunks/src_lib_collector_runners_ts_12z4gtgikss74._.js +6 -6
  472. package/server/.next/server/chunks/src_lib_data_logs-db_ts_1ddw07do12mmk._.js +2 -2
  473. package/server/.next/server/chunks/src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js +6 -0
  474. package/server/.next/server/chunks/src_lib_notify_lang_ts_1r2w02ctaky7e._.js +1 -1
  475. package/server/.next/server/chunks/src_lib_providers_info_ts_02x6g30rg2hsp._.js +3 -0
  476. package/server/.next/server/chunks/src_lib_view_databases_ts_0fdc7jkjvyrxi._.js +3 -0
  477. package/server/.next/server/chunks/src_private_ai_gateway_ts_04_5ao9914d0p._.js +1 -1
  478. package/server/.next/server/chunks/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
  479. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_agents_page_actions_1q6nc5chwn5k4.js +1 -1
  480. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_models_page_actions_0n_anax2l1jpu.js +1 -1
  481. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_playground_page_actions_1kyng_xuojdtb.js +1 -1
  482. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_quota_page_actions_04r4ro6x7-p7p.js +1 -1
  483. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_usage_page_actions_1fq9uugdpqa_l.js +1 -1
  484. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_auto-actions_page_actions_0mhtiq_5szpe0.js +1 -1
  485. package/server/.next/server/chunks/ssr/{[externals]__0vbbz7arebnub._.js → [externals]__0zvy4iicnrk95._.js} +1 -1
  486. package/server/.next/server/chunks/ssr/[root-of-the-server]__02qyxz9eh8_eh._.js +1 -1
  487. package/server/.next/server/chunks/ssr/[root-of-the-server]__04ovk2bqwu87z._.js +3 -0
  488. package/server/.next/server/chunks/ssr/{[root-of-the-server]__13rgl1h4g39l-._.js → [root-of-the-server]__052_cprs0alpy._.js} +1 -1
  489. package/server/.next/server/chunks/ssr/{[root-of-the-server]__18b1wk6-2gq4x._.js → [root-of-the-server]__0543ddliluvv3._.js} +2 -2
  490. package/server/.next/server/chunks/ssr/{[root-of-the-server]__168ahi_n-kf90._.js → [root-of-the-server]__08479d23kb1xv._.js} +1 -1
  491. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1drr27jyyhw7p._.js → [root-of-the-server]__08fqg76puqdfr._.js} +1 -1
  492. package/server/.next/server/chunks/ssr/[root-of-the-server]__09-0oydof-7uw._.js +1 -1
  493. package/server/.next/server/chunks/ssr/[root-of-the-server]__09nm_hn1c8zhf._.js +3 -0
  494. package/server/.next/server/chunks/ssr/{[root-of-the-server]__07n1hb3mk44lt._.js → [root-of-the-server]__0acmauri7z1sg._.js} +1 -1
  495. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ct71emqfru3b._.js +1 -1
  496. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0ryl_hnreck66._.js → [root-of-the-server]__0e9m8up0h1qhl._.js} +2 -2
  497. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1xa91qls2i3j4._.js → [root-of-the-server]__0h9gtpapca7i_._.js} +1 -1
  498. package/server/.next/server/chunks/ssr/[root-of-the-server]__0hln97a4qcziv._.js +3 -0
  499. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ksvf4x4zcbpb._.js +1 -1
  500. package/server/.next/server/chunks/ssr/[root-of-the-server]__0lc7my3iqbrsu._.js +1 -1
  501. package/server/.next/server/chunks/ssr/[root-of-the-server]__0n7cj-oti5wct._.js +2 -2
  502. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ncef7_34ta3-._.js +1 -1
  503. package/server/.next/server/chunks/ssr/[root-of-the-server]__0wcnxr_g-bd3r._.js +1 -1
  504. package/server/.next/server/chunks/ssr/[root-of-the-server]__1-o_iq-ed9vc8._.js +1 -1
  505. package/server/.next/server/chunks/ssr/[root-of-the-server]__10bkg3o65q6r4._.js +1 -1
  506. package/server/.next/server/chunks/ssr/[root-of-the-server]__12qymdfh83hht._.js +3 -0
  507. package/server/.next/server/chunks/ssr/[root-of-the-server]__13oi70jo-u731._.js +2 -2
  508. package/server/.next/server/chunks/ssr/[root-of-the-server]__146kj3-h6fkaq._.js +1 -1
  509. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0hbk3gqja86zp._.js → [root-of-the-server]__15n-r12rnj61t._.js} +1 -1
  510. package/server/.next/server/chunks/ssr/[root-of-the-server]__16o4p3l21rdq3._.js +3 -0
  511. package/server/.next/server/chunks/ssr/[root-of-the-server]__17kocbnwlcw6d._.js +1 -1
  512. package/server/.next/server/chunks/ssr/[root-of-the-server]__19_nr6j2w-in_._.js +3 -0
  513. package/server/.next/server/chunks/ssr/[root-of-the-server]__1_f7nip9age3d._.js +1 -1
  514. package/server/.next/server/chunks/ssr/[root-of-the-server]__1gw6334w8y2my._.js +1 -1
  515. package/server/.next/server/chunks/ssr/[root-of-the-server]__1i69oli51is1u._.js +1 -1
  516. package/server/.next/server/chunks/ssr/{[root-of-the-server]__11y6b96ofb-c5._.js → [root-of-the-server]__1k1fmq0-rg3p0._.js} +2 -2
  517. package/server/.next/server/chunks/ssr/[root-of-the-server]__1lx2k37wgre3d._.js +1 -1
  518. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1n1pq5j5p4_qn._.js → [root-of-the-server]__1owrn7crnsybx._.js} +1 -1
  519. package/server/.next/server/chunks/ssr/[root-of-the-server]__1w1472ukyh58r._.js +1 -1
  520. package/server/.next/server/chunks/ssr/[root-of-the-server]__20ht054m5-_d6._.js +1 -1
  521. package/server/.next/server/chunks/ssr/_0-uwh2rwm_dic._.js +2 -2
  522. package/server/.next/server/chunks/ssr/_026w_ig6vy9bt._.js +1 -1
  523. package/server/.next/server/chunks/ssr/{_1wu_8nu5allm0._.js → _05kq3r87s7p3q._.js} +1 -1
  524. package/server/.next/server/chunks/ssr/_06kwu83_fmex9._.js +2 -2
  525. package/server/.next/server/chunks/ssr/_0_oc9q0vqkynd._.js +1 -1
  526. package/server/.next/server/chunks/ssr/_0_rtyc4t9xcdo._.js +1 -1
  527. package/server/.next/server/chunks/ssr/_0_tr9fol2yq33._.js +1 -1
  528. package/server/.next/server/chunks/ssr/_0_ul4mlc_pj5i._.js +2 -2
  529. package/server/.next/server/chunks/ssr/_0a22b7zsckifp._.js +1 -1
  530. package/server/.next/server/chunks/ssr/_0azq3ml4gbn1d._.js +1 -1
  531. package/server/.next/server/chunks/ssr/_0cw4kz3d6kmb1._.js +1 -1
  532. package/server/.next/server/chunks/ssr/_0d702k82llasi._.js +1 -1
  533. package/server/.next/server/chunks/ssr/_0fnl7z-saj7nc._.js +1 -1
  534. package/server/.next/server/chunks/ssr/_0hykblvnwc2ar._.js +1 -1
  535. package/server/.next/server/chunks/ssr/_0i-e824vtomvg._.js +2 -2
  536. package/server/.next/server/chunks/ssr/_0jjoot3rhbde3._.js +2 -2
  537. package/server/.next/server/chunks/ssr/_0kn710rrv_o2t._.js +2 -2
  538. package/server/.next/server/chunks/ssr/_0m1ll2r1g77ii._.js +1 -1
  539. package/server/.next/server/chunks/ssr/_0mgclon6_oh87._.js +2 -2
  540. package/server/.next/server/chunks/ssr/{_08u2qnetu4ghm._.js → _0ooh0hh-r_12s._.js} +2 -2
  541. package/server/.next/server/chunks/ssr/_0oovfx_t_-u0k._.js +1 -1
  542. package/server/.next/server/chunks/ssr/{_06sp8cllu_ljh._.js → _0pn3dn9s9es51._.js} +2 -2
  543. package/server/.next/server/chunks/ssr/_0qnv1uc1_yv28._.js +2 -2
  544. package/server/.next/server/chunks/ssr/_0qo8tc43kjsf_._.js +1 -1
  545. package/server/.next/server/chunks/ssr/{_12348a3ug1-wo._.js → _0r04c1-snv6jw._.js} +2 -2
  546. package/server/.next/server/chunks/ssr/_0sotiqakj-6ci._.js +1 -1
  547. package/server/.next/server/chunks/ssr/_0tcmsw8hszixv._.js +1 -1
  548. package/server/.next/server/chunks/ssr/{_216rrmkts392q._.js → _0tnfblwwlyvq2._.js} +2 -2
  549. package/server/.next/server/chunks/ssr/_0uogspz6zrvwk._.js +2 -2
  550. package/server/.next/server/chunks/ssr/{_1exwj9ou5yh71._.js → _0x1vi7mal3bqd._.js} +2 -2
  551. package/server/.next/server/chunks/ssr/_1-6d1tm3r_qwg._.js +1 -1
  552. package/server/.next/server/chunks/ssr/_10bven6gb1vj0._.js +1 -1
  553. package/server/.next/server/chunks/ssr/_10pz3ggun9s5i._.js +2 -2
  554. package/server/.next/server/chunks/ssr/{_1ibagew7zj8y6._.js → _11w5w9dpxcf1w._.js} +2 -2
  555. package/server/.next/server/chunks/ssr/_12ddramfkd6o1._.js +2 -2
  556. package/server/.next/server/chunks/ssr/{_1p4i1e1kw70-_._.js → _14kop_5asppd8._.js} +2 -2
  557. package/server/.next/server/chunks/ssr/_15ft896zgt02e._.js +2 -2
  558. package/server/.next/server/chunks/ssr/_16t9k9e5cjvas._.js +1 -1
  559. package/server/.next/server/chunks/ssr/_18lgd6o04ugow._.js +2 -2
  560. package/server/.next/server/chunks/ssr/_19-3vzkc6rk97._.js +1 -1
  561. package/server/.next/server/chunks/ssr/_1_-o2s48aj4i7._.js +1 -1
  562. package/server/.next/server/chunks/ssr/_1b1ano88ar-gi._.js +2 -2
  563. package/server/.next/server/chunks/ssr/_1b4uqc9fwt4dy._.js +1 -1
  564. package/server/.next/server/chunks/ssr/_1boia2p3_0nsz._.js +2 -2
  565. package/server/.next/server/chunks/ssr/_1c28jitsyufnt._.js +1 -1
  566. package/server/.next/server/chunks/ssr/_1cl55h_h3q-b_._.js +1 -1
  567. package/server/.next/server/chunks/ssr/_1dx207la592b7._.js +2 -2
  568. package/server/.next/server/chunks/ssr/_1e24cpw3g7njr._.js +2 -2
  569. package/server/.next/server/chunks/ssr/_1flla16o7o9ba._.js +1 -1
  570. package/server/.next/server/chunks/ssr/_1g2zbl_-4z_hg._.js +1 -1
  571. package/server/.next/server/chunks/ssr/_1gl78598hz_ku._.js +1 -1
  572. package/server/.next/server/chunks/ssr/_1i77n2n-wb98v._.js +2 -2
  573. package/server/.next/server/chunks/ssr/_1j9cka-44jd65._.js +1 -1
  574. package/server/.next/server/chunks/ssr/_1jh_o2i8hj2g5._.js +1 -1
  575. package/server/.next/server/chunks/ssr/_1nir32qtr99-r._.js +1 -1
  576. package/server/.next/server/chunks/ssr/_1sq12-1_02tzt._.js +2 -2
  577. package/server/.next/server/chunks/ssr/_1ybhu25y38395._.js +2 -2
  578. package/server/.next/server/chunks/ssr/_1ykxf4mi60jog._.js +2 -2
  579. package/server/.next/server/chunks/ssr/_1z6dy1k48mskn._.js +1 -1
  580. package/server/.next/server/chunks/ssr/_1zr0t31h18f2p._.js +3 -0
  581. package/server/.next/server/chunks/ssr/_210edglbxmcb3._.js +2 -2
  582. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_keys_page_actions_1910ocjt__nlh.js +1 -1
  583. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_logs_page_actions_136-s4sxl6nra.js +1 -1
  584. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_alerts_page_actions_0f7cxitw-svnl.js +1 -1
  585. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_14l8--w36mywn.js +1 -1
  586. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_page_actions_1uaicj0j8stji.js +1 -1
  587. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_06a1fnrawxlh1.js +3 -0
  588. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_dns_page_actions_1p2deebbgom7b.js +1 -1
  589. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_domains_page_actions_0-wg58qcvu_rv.js +1 -1
  590. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_firebase_page_actions_215m-kkv06r4z.js +1 -1
  591. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_logs_page_actions_11-8xinblaop_.js +1 -1
  592. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_manage_sections_page_actions_0ven9q46d3d7s.js +3 -0
  593. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_settings_page_actions_1z3l1p4keed3m.js +1 -1
  594. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_supabase_page_actions_1evatil08dntl.js +1 -1
  595. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_uptime_page_actions_0k1237d-q3oc4.js +1 -1
  596. package/server/.next/server/chunks/ssr/_next-internal_server_app_account_password_page_actions_1v4e71_oifbx9.js +1 -1
  597. package/server/.next/server/chunks/ssr/_next-internal_server_app_signin_page_actions_11wzk446p6_zi.js +1 -1
  598. package/server/.next/server/chunks/ssr/node_modules_next_dist_0joxsz2q5dh6c._.js +2 -2
  599. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pz49shx663y1.js +3 -0
  600. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1b0g9w0uow3x5.js +1 -1
  601. package/server/.next/server/chunks/ssr/src_00wh1gv_h2pjs._.js +1 -1
  602. package/server/.next/server/chunks/ssr/src_01jp2f5qmh8e2._.js +3 -0
  603. package/server/.next/server/chunks/ssr/src_025wo6h30c00a._.js +1 -1
  604. package/server/.next/server/chunks/ssr/src_06tjy8wljego8._.js +1 -1
  605. package/server/.next/server/chunks/ssr/src_084tdkx3c_yqi._.js +1 -1
  606. package/server/.next/server/chunks/ssr/src_09atx_ns_mlan._.js +1 -1
  607. package/server/.next/server/chunks/ssr/src_0_5_wl0sww-x7._.js +1 -1
  608. package/server/.next/server/chunks/ssr/src_0_kumjlw3o034._.js +1 -1
  609. package/server/.next/server/chunks/ssr/src_0abts6wp5ucc0._.js +1 -1
  610. package/server/.next/server/chunks/ssr/src_0dl7jkqqm313f._.js +3 -0
  611. package/server/.next/server/chunks/ssr/src_0f_ip1ke7i9r7._.js +1 -1
  612. package/server/.next/server/chunks/ssr/src_0fdfz--89117z._.js +1 -1
  613. package/server/.next/server/chunks/ssr/src_0ho313o5cu3-h._.js +1 -1
  614. package/server/.next/server/chunks/ssr/src_0iefnjvaszvw_._.js +1 -1
  615. package/server/.next/server/chunks/ssr/src_0loe22pbn4cuu._.js +1 -1
  616. package/server/.next/server/chunks/ssr/src_0nylfis4--x5j._.js +1 -1
  617. package/server/.next/server/chunks/ssr/src_0ohsn5qzqqds_._.js +1 -1
  618. package/server/.next/server/chunks/ssr/src_0p0fk07bj9gpq._.js +1 -1
  619. package/server/.next/server/chunks/ssr/src_0ph020gy78gi9._.js +1 -1
  620. package/server/.next/server/chunks/ssr/src_0t6-d5hmzrbp1._.js +1 -1
  621. package/server/.next/server/chunks/ssr/src_0uitfl3c1mdqb._.js +1 -1
  622. package/server/.next/server/chunks/ssr/src_0usxo7vu7o2cj._.js +1 -1
  623. package/server/.next/server/chunks/ssr/src_0widudneyf0oq._.js +1 -1
  624. package/server/.next/server/chunks/ssr/src_0xau6d5z5e_md._.js +1 -1
  625. package/server/.next/server/chunks/ssr/src_1-wu43p02yiel._.js +1 -1
  626. package/server/.next/server/chunks/ssr/src_1-xw4hea2lvb3._.js +1 -1
  627. package/server/.next/server/chunks/ssr/src_10zavgy86u3us._.js +1 -1
  628. package/server/.next/server/chunks/ssr/src_11iuy79j_finh._.js +3 -0
  629. package/server/.next/server/chunks/ssr/src_12x8sjp-qdw08._.js +1 -1
  630. package/server/.next/server/chunks/ssr/src_14aur12he3m2a._.js +1 -1
  631. package/server/.next/server/chunks/ssr/src_15aqc6akkqade._.js +1 -1
  632. package/server/.next/server/chunks/ssr/src_15zqi72ky6hi9._.js +1 -1
  633. package/server/.next/server/chunks/ssr/src_19evuexp67uty._.js +1 -1
  634. package/server/.next/server/chunks/ssr/src_1am4_ady64k2b._.js +1 -1
  635. package/server/.next/server/chunks/ssr/src_1cbawr4iw5h-x._.js +1 -1
  636. package/server/.next/server/chunks/ssr/src_1ccrc8twenijg._.js +1 -1
  637. package/server/.next/server/chunks/ssr/src_1ctx1an_a3k7g._.js +1 -1
  638. package/server/.next/server/chunks/ssr/src_1iyzhhf1u_gwo._.js +3 -0
  639. package/server/.next/server/chunks/ssr/{src_11_hakxhnybdd._.js → src_1ottjkdvhje3g._.js} +2 -2
  640. package/server/.next/server/chunks/ssr/src_1sdwdnblbiq_g._.js +1 -1
  641. package/server/.next/server/chunks/ssr/src_1xsg-zd4lt_d4._.js +1 -1
  642. package/server/.next/server/chunks/ssr/src_1y0xvj1obxu7i._.js +1 -1
  643. package/server/.next/server/chunks/ssr/src_1zpftf1xj-30l._.js +1 -1
  644. package/server/.next/server/chunks/ssr/src_20hs1ilkxmap0._.js +1 -1
  645. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_agents_1fyhh1ldgm23z._.js +1 -1
  646. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_agents_1lhfs18es1mqc._.js +1 -1
  647. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_agents_loading_tsx_1qyzywm3br5h2._.js +1 -1
  648. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_ask_06n-9cjmbb-vu._.js +1 -1
  649. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_ask_ask-form_tsx_18ttm9nna_9y6._.js +1 -1
  650. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_ask_loading_tsx_1niopfalguzs6._.js +1 -1
  651. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_connect_loading_tsx_0q7g8dpf7-vgo._.js +1 -1
  652. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_keys_04ypt31p11eq7._.js +1 -1
  653. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_keys_loading_tsx_1hc7x_jx0xx0_._.js +1 -1
  654. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_logs_0261l8yb2z9x1._.js +1 -1
  655. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_logs_export-button_tsx_1k-crb88n1za_._.js +1 -1
  656. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_logs_loading_tsx_1dwhza0ud8asg._.js +1 -1
  657. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_models_0ayzqn062pnv5._.js +1 -1
  658. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_models_0hla-5y3iresx._.js +1 -1
  659. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_models_loading_tsx_1qtp-lo_o41cr._.js +1 -1
  660. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_playground_1o1z2qp3tik5x._.js +1 -1
  661. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_playground_loading_tsx_02umaieh-00pu._.js +1 -1
  662. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_playground_playground-view_tsx_18ua5zn_a0mar._.js +1 -1
  663. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_providers_0jamu-nm6x-dh._.js +1 -1
  664. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_providers_1ru-30x6-uwu4._.js +1 -1
  665. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_providers_loading_tsx_0u2pi0tk7s3ch._.js +1 -1
  666. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_1kor9sy67qpiw._.js +1 -1
  667. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_limits-form_tsx_1vouaaf560z_x._.js +1 -1
  668. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_loading_tsx_1hhnum-g2eq3n._.js +1 -1
  669. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_1v003vrkwk19w._.js +1 -1
  670. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_limits-form_tsx_0sfk3ver58rqw._.js +1 -1
  671. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_loading_tsx_0pjvu-xuxbxmh._.js +1 -1
  672. package/server/.next/server/chunks/ssr/{src_app_(console)_1olpa0osy74mq._.js → src_app_(console)_1l7irblrb5fae._.js} +2 -2
  673. package/server/.next/server/chunks/ssr/src_app_(console)_[___slug]_page_tsx_0b007i3c1v_vg._.js +1 -1
  674. package/server/.next/server/chunks/ssr/src_app_(console)_alerts_0j5xlt68kwg8x._.js +1 -1
  675. package/server/.next/server/chunks/ssr/src_app_(console)_alerts_1t61z2wktki-v._.js +1 -1
  676. package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_1sfvku9ui1le-._.js +1 -1
  677. package/server/.next/server/chunks/ssr/src_app_(console)_backups_actions_ts_1vpytsdh0wc1f._.js +1 -1
  678. package/server/.next/server/chunks/ssr/src_app_(console)_backups_drive-buttons_tsx_00cku5r_z3jkg._.js +1 -1
  679. package/server/.next/server/chunks/ssr/src_app_(console)_backups_page_tsx_0o082iagq_14b._.js +1 -1
  680. package/server/.next/server/chunks/ssr/src_app_(console)_catalog_page_tsx_1u2_-bv4yi5oo._.js +1 -1
  681. package/server/.next/server/chunks/ssr/src_app_(console)_connections_02upf_c41dauw._.js +3 -0
  682. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fahc65-97qla._.js +1 -1
  683. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fmp_anbkapur._.js +3 -0
  684. package/server/.next/server/chunks/ssr/src_app_(console)_connections_actions_ts_103blv4gzq76z._.js +1 -1
  685. package/server/.next/server/chunks/ssr/src_app_(console)_create_actions_ts_05-86qr6kfjey._.js +1 -1
  686. package/server/.next/server/chunks/ssr/src_app_(console)_d1_page_tsx_167hwnq_9uh81._.js +1 -1
  687. package/server/.next/server/chunks/ssr/src_app_(console)_dns_0d1uyir4fe7pc._.js +1 -1
  688. package/server/.next/server/chunks/ssr/src_app_(console)_dns_actions_ts_1jzn58xzwbukz._.js +1 -1
  689. package/server/.next/server/chunks/ssr/src_app_(console)_dns_record-actions_tsx_0cqmz51zcuebv._.js +1 -1
  690. package/server/.next/server/chunks/ssr/src_app_(console)_domains_1ut499n11u8_r._.js +1 -1
  691. package/server/.next/server/chunks/ssr/src_app_(console)_firebase_page_tsx_0g20hm13dvbc-._.js +1 -1
  692. package/server/.next/server/chunks/ssr/src_app_(console)_logs_log-viewer_tsx_0v3e4cflfk14w._.js +1 -1
  693. package/server/.next/server/chunks/ssr/src_app_(console)_manage_sections_17htk-vea5fna._.js +3 -0
  694. package/server/.next/server/chunks/ssr/src_app_(console)_manage_sections_section-switch_tsx_1mfs-o_357i22._.js +3 -0
  695. package/server/.next/server/chunks/ssr/src_app_(console)_monitor-actions_ts_10w3h7myk2ppi._.js +1 -1
  696. package/server/.next/server/chunks/ssr/src_app_(console)_neon_1ubea__gt06o0._.js +1 -1
  697. package/server/.next/server/chunks/ssr/src_app_(console)_palette-action_ts_0zyw9a9imev6p._.js +1 -1
  698. package/server/.next/server/chunks/ssr/src_app_(console)_repos_[id]_page_tsx_1nkxthc4ethrj._.js +1 -1
  699. package/server/.next/server/chunks/ssr/src_app_(console)_sql_16-sh45tpob8n._.js +1 -1
  700. package/server/.next/server/chunks/ssr/src_app_(console)_sql_1icfsti04djqe._.js +2 -2
  701. package/server/.next/server/chunks/ssr/src_app_(console)_sql_actions_ts_1oqco02hw-3vp._.js +1 -1
  702. package/server/.next/server/chunks/ssr/src_app_(console)_status_page_tsx_1zvj799nv4kah._.js +1 -1
  703. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_0ib3m2ch9gu-4._.js +1 -1
  704. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_1ofufib3-zzt-._.js +1 -1
  705. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_pool-actions_ts_0nzd4vwy_9zzx._.js +1 -1
  706. package/server/.next/server/chunks/ssr/src_app_(console)_uptime_148phfjye0539._.js +1 -1
  707. package/server/.next/server/chunks/ssr/src_app_(console)_uptime_1mnnkfi-2zv-k._.js +1 -1
  708. package/server/.next/server/chunks/ssr/src_app_(console)_vercel-actions_ts_0wpk1yo9v632d._.js +1 -1
  709. package/server/.next/server/chunks/ssr/src_app_(console)_welcome_page_tsx_1bw0x0riq-oem._.js +1 -1
  710. package/server/.next/server/chunks/ssr/src_app_mfa_setup_setup-flow_tsx_1fpwygr2vdgnh._.js +1 -1
  711. package/server/.next/server/chunks/ssr/src_app_setup_setup-form_tsx_0izoagdur96e1._.js +1 -1
  712. package/server/.next/server/chunks/ssr/{src_app_signin_1y1xla7bcc5a1._.js → src_app_signin_1tg6pswa99jbe._.js} +2 -2
  713. package/server/.next/server/chunks/ssr/src_components_11x625pqq9ovs._.js +1 -1
  714. package/server/.next/server/chunks/ssr/src_components_create_create-dialog_tsx_1s_9clly_m1ru._.js +1 -1
  715. package/server/.next/server/chunks/ssr/src_components_ui_dialog_tsx_1tn-i_6d3rhzt._.js +1 -1
  716. package/server/.next/server/chunks/ssr/src_lib_005l0kcpyu43o._.js +1 -1
  717. package/server/.next/server/chunks/ssr/{src_lib_0vl2-zp4wzw7n._.js → src_lib_1p21oczr6lh5a._.js} +1 -1
  718. package/server/.next/server/chunks/ssr/src_lib_1yewk45thnv1h._.js +1 -1
  719. package/server/.next/server/chunks/ssr/src_lib_collector_run_ts_0-q8is8s0y9cq._.js +3 -3
  720. package/server/.next/server/chunks/ssr/src_lib_copy_edition_ts_1y6lsdbj64t9p._.js +1 -1
  721. package/server/.next/server/chunks/ssr/src_lib_data_keep-active-db_ts_0p07g9b74uu3e._.js +1 -1
  722. package/server/.next/server/chunks/ssr/src_lib_data_logs-db_ts_1ddw07do12mmk._.js +2 -2
  723. package/server/.next/server/chunks/ssr/src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js +6 -0
  724. package/server/.next/server/chunks/ssr/{src_lib_demo_20zjotuzm1lm8._.js → src_lib_demo_0hdl7pzdqejqx._.js} +2 -2
  725. package/server/.next/server/chunks/ssr/src_lib_providers_info_ts_02x6g30rg2hsp._.js +3 -0
  726. package/server/.next/server/chunks/ssr/src_private_0iy_wyg2p1jkn._.js +1 -1
  727. package/server/.next/server/chunks/ssr/src_private_actions_decide-form_tsx_1hngtxpyle3v8._.js +1 -1
  728. package/server/.next/server/chunks/ssr/src_private_ai_gateway_ts_04_5ao9914d0p._.js +1 -1
  729. package/server/.next/server/chunks/ssr/src_private_ai_providers_actions_ts_0wxa36ai6s5nn._.js +1 -1
  730. package/server/.next/server/chunks/ssr/src_private_assist_advisor-notes_ts_0qkpm5c3la7fo._.js +1 -1
  731. package/server/.next/server/chunks/ssr/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
  732. package/server/.next/server/middleware-build-manifest.js +116 -105
  733. package/server/.next/server/next-font-manifest.js +1 -1
  734. package/server/.next/server/next-font-manifest.json +4 -0
  735. package/server/.next/server/pages/404.html +1 -1
  736. package/server/.next/server/pages/500.html +1 -1
  737. package/server/.next/server/preview-props.json +3 -3
  738. package/server/.next/server/server-reference-manifest.js +1 -1
  739. package/server/.next/server/server-reference-manifest.json +212 -166
  740. package/server/.next/static/chunks/{3w445wy3mpp2f.js → 08dak2kh1c6_7.js} +1 -1
  741. package/server/.next/static/chunks/{2-8ra6gmaw_pb.js → 0b9slopuz4e8a.js} +1 -1
  742. package/server/.next/static/chunks/{3col9buetdxvh.js → 0dp-tuwkw7xf8.js} +2 -2
  743. package/server/.next/static/chunks/0fhj_pu5ntcfo.js +1 -0
  744. package/server/.next/static/chunks/{010bc8dzhxd_0.js → 0h9i512dn01kj.js} +1 -1
  745. package/server/.next/static/chunks/0ic6_-0gkd6p7.js +1 -0
  746. package/server/.next/static/chunks/{3s7hj7g12rmuh.js → 0icohez16w-ei.js} +1 -1
  747. package/server/.next/static/chunks/{08w0t5q93_9mu.js → 0j1wzqg4ukm70.js} +1 -1
  748. package/server/.next/static/chunks/{2cmw27buw9oce.js → 0kscmnb071fci.js} +1 -1
  749. package/server/.next/static/chunks/0ld78j1d4j201.js +1 -0
  750. package/server/.next/static/chunks/{1yb4_s_96v9tf.js → 0qlb-l1uyqku5.js} +1 -1
  751. package/server/.next/static/chunks/0udh0u8c6ovgf.css +3 -0
  752. package/server/.next/static/chunks/0y1ss0tjq0nq0.js +1 -0
  753. package/server/.next/static/chunks/{0dhgqjjm0zj6_.js → 1-oetq3mwlhds.js} +1 -1
  754. package/server/.next/static/chunks/{3uujo4bht1tqo.js → 11ywzwmfd_pt0.js} +1 -1
  755. package/server/.next/static/chunks/{1aoqsoecu-fy_.js → 1jaozq01v9r6e.js} +1 -1
  756. package/server/.next/static/chunks/1ky5exl-c1kbo.js +1 -0
  757. package/server/.next/static/chunks/{3o7se0ypyiqmz.js → 1lsu_fxiyaeiz.js} +1 -1
  758. package/server/.next/static/chunks/{1endj3d7bewa1.js → 1o3_amrh-sxr3.js} +1 -1
  759. package/server/.next/static/chunks/{1vi8tyc1ou2o3.js → 1w9o_jo_pejc5.js} +1 -1
  760. package/server/.next/static/chunks/{0nx0h-723nd_u.js → 1yvbs41m8_4nc.js} +2 -2
  761. package/server/.next/static/chunks/{0unx038_2rfsp.js → 22alexnun_rdm.js} +1 -1
  762. package/server/.next/static/chunks/{06lmwdlx-fkr8.js → 27qwmt1w6-iri.js} +1 -1
  763. package/server/.next/static/chunks/{02uvde7i-78p5.js → 29humkd2-_1oo.js} +1 -1
  764. package/server/.next/static/chunks/{0-7by9f00qb4d.js → 29j96yfhxsf41.js} +1 -1
  765. package/server/.next/static/chunks/{1483hxa9hair1.js → 29qnnsjsgsia6.js} +1 -1
  766. package/server/.next/static/chunks/{2pbnh717ldzfl.js → 2ii8j9xuvv604.js} +1 -1
  767. package/server/.next/static/chunks/{2ufr23d_eyosj.js → 2m0ftj__ody0m.js} +1 -1
  768. package/server/.next/static/chunks/{201zah03wlibg.js → 2q88116332v43.js} +1 -1
  769. package/server/.next/static/chunks/2rbtw3em5hkt4.js +1 -0
  770. package/server/.next/static/chunks/2sdyov_lz1uj4.js +1 -0
  771. package/server/.next/static/chunks/{1o4mdgq5lu1g_.js → 2toeyr9b_nk0e.js} +1 -1
  772. package/server/.next/static/chunks/{2zdjxqgm-44u1.js → 2w7qxt7ux-m1-.js} +1 -1
  773. package/server/.next/static/chunks/{18gwem_5y9wnt.js → 2zc1osymeruya.js} +1 -1
  774. package/server/.next/static/chunks/33fbppn5fotpk.js +1 -0
  775. package/server/.next/static/chunks/3auw1gobgv94g.js +1 -0
  776. package/server/.next/static/chunks/3b1p-xm7iow1_.js +1 -0
  777. package/server/.next/static/chunks/{2z6a725ntvlr6.js → 3gl2k6v182lli.js} +2 -2
  778. package/server/.next/static/chunks/{2lv5qmgi8nm4h.js → 3gurl_36kr7sg.js} +1 -1
  779. package/server/.next/static/chunks/{2n-h6_0i3mpxo.js → 3h-i_hcaaf7vs.js} +1 -1
  780. package/server/.next/static/chunks/{0dnjs3de2e_d1.js → 3kznplgmzot89.js} +1 -1
  781. package/server/.next/static/chunks/{0du6qnm4ee-qx.js → 3mb_v650fie_i.js} +1 -1
  782. package/server/.next/static/chunks/{1t2iu6ufyxecz.js → 3n_n6yeienmn-.js} +1 -1
  783. package/server/.next/static/chunks/{01oee9tptcjdb.js → 3nqciag05fif0.js} +1 -1
  784. package/server/.next/static/chunks/3r3mt51wqymgs.js +1 -0
  785. package/server/.next/static/chunks/3sg_npfod25zq.js +1 -0
  786. package/server/.next/static/chunks/{03fjh6klyhqv4.js → 3shbvizselyoq.js} +1 -1
  787. package/server/.next/static/chunks/3xxagngfonh62.js +1 -0
  788. package/server/.next/static/chunks/{3alfhqlczff2s.js → 3yv-enyk37whg.js} +1 -1
  789. package/server/node_modules/@next/env/package.json +1 -1
  790. package/server/node_modules/next/dist/build/analyze/snapshot.js +1 -1
  791. package/server/node_modules/next/dist/build/index.js +3 -3
  792. package/server/node_modules/next/dist/build/swc/index.js +1 -1
  793. package/server/node_modules/next/dist/build/turbopack-analyze/index.js +1 -1
  794. package/server/node_modules/next/dist/build/turbopack-build/impl.js +1 -1
  795. package/server/node_modules/next/dist/build/webpack-config.js +3 -3
  796. package/server/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +2 -2
  797. package/server/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +2 -2
  798. package/server/node_modules/next/dist/compiled/next-server/app-route-turbo.runtime.prod.js +1 -1
  799. package/server/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
  800. package/server/node_modules/next/dist/server/app-render/async-local-storage.js +1 -1
  801. package/server/node_modules/next/dist/server/config.js +1 -1
  802. package/server/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +2 -2
  803. package/server/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  804. package/server/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  805. package/server/node_modules/next/dist/server/lib/generate-agent-files.js +3 -3
  806. package/server/node_modules/next/dist/server/lib/router-server.js +1 -1
  807. package/server/node_modules/next/dist/server/lib/start-server.js +1 -1
  808. package/server/node_modules/next/dist/server/lib/trace/tracer.js +1 -1
  809. package/server/node_modules/next/dist/server/typescript/rules/config.js +2 -2
  810. package/server/node_modules/next/dist/server/use-cache/use-cache-wrapper.js +1 -1
  811. package/server/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  812. package/server/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
  813. package/server/node_modules/next/dist/telemetry/events/version.js +2 -2
  814. package/server/node_modules/next/package.json +11 -11
  815. package/server/.next/server/chunks/[root-of-the-server]__03zcy67tjxii8._.js +0 -3
  816. package/server/.next/server/chunks/[root-of-the-server]__08j1jeemvo-th._.js +0 -3
  817. package/server/.next/server/chunks/[root-of-the-server]__0abdjgj-muln9._.js +0 -3
  818. package/server/.next/server/chunks/[root-of-the-server]__0b_bj-_t8b0b-._.js +0 -3
  819. package/server/.next/server/chunks/[root-of-the-server]__0rxrv00e5e6fj._.js +0 -3
  820. package/server/.next/server/chunks/[root-of-the-server]__0xyzhdj3z_1ro._.js +0 -3
  821. package/server/.next/server/chunks/[root-of-the-server]__0zd61mh-juh2i._.js +0 -3
  822. package/server/.next/server/chunks/[root-of-the-server]__13scfgchwlitx._.js +0 -3
  823. package/server/.next/server/chunks/[root-of-the-server]__15zbj_ehkvv-n._.js +0 -3
  824. package/server/.next/server/chunks/[root-of-the-server]__16dyxwm6pzumx._.js +0 -3
  825. package/server/.next/server/chunks/[root-of-the-server]__16sp8qurcwsnf._.js +0 -3
  826. package/server/.next/server/chunks/[root-of-the-server]__18qf1s7o0ia89._.js +0 -3
  827. package/server/.next/server/chunks/[root-of-the-server]__1951xb3jdzdop._.js +0 -3
  828. package/server/.next/server/chunks/[root-of-the-server]__1_1-jgxiadvs0._.js +0 -3
  829. package/server/.next/server/chunks/[root-of-the-server]__1_2akhn6c9eqq._.js +0 -3
  830. package/server/.next/server/chunks/[root-of-the-server]__1a9cd4d9ohf69._.js +0 -3
  831. package/server/.next/server/chunks/[root-of-the-server]__1c2u-bg524-_w._.js +0 -3
  832. package/server/.next/server/chunks/[root-of-the-server]__1c8_e0jqh_8na._.js +0 -3
  833. package/server/.next/server/chunks/[root-of-the-server]__1g-be2zoiz2tf._.js +0 -3
  834. package/server/.next/server/chunks/[root-of-the-server]__1h96ebyza_vlh._.js +0 -3
  835. package/server/.next/server/chunks/[root-of-the-server]__1hxhj2o7lea8i._.js +0 -3
  836. package/server/.next/server/chunks/[root-of-the-server]__1i4bqqne6vibf._.js +0 -3
  837. package/server/.next/server/chunks/[root-of-the-server]__1i83m8i-3yn72._.js +0 -3
  838. package/server/.next/server/chunks/[root-of-the-server]__1jrcnhad_b53j._.js +0 -3
  839. package/server/.next/server/chunks/[root-of-the-server]__1ldcwvd42rpuz._.js +0 -3
  840. package/server/.next/server/chunks/[root-of-the-server]__1pgtip37umn35._.js +0 -3
  841. package/server/.next/server/chunks/[root-of-the-server]__1rl43iilsc-je._.js +0 -3
  842. package/server/.next/server/chunks/[root-of-the-server]__1sj7uwyq1gpet._.js +0 -3
  843. package/server/.next/server/chunks/[root-of-the-server]__1ta7-xvmtkjwr._.js +0 -3
  844. package/server/.next/server/chunks/[root-of-the-server]__1voiad6r-u931._.js +0 -3
  845. package/server/.next/server/chunks/[root-of-the-server]__1wlilsfzjqdw9._.js +0 -3
  846. package/server/.next/server/chunks/[root-of-the-server]__1wonw7ft4hset._.js +0 -3
  847. package/server/.next/server/chunks/[root-of-the-server]__202r0hxhr5bnu._.js +0 -3
  848. package/server/.next/server/chunks/[root-of-the-server]__2196hxm-s7u6e._.js +0 -3
  849. package/server/.next/server/chunks/_01vdbh009dk-w._.js +0 -5
  850. package/server/.next/server/chunks/_061mqfu1rkl7g._.js +0 -34
  851. package/server/.next/server/chunks/_0c_vrxu6rin-k._.js +0 -3
  852. package/server/.next/server/chunks/_0qawxzcf--lyq._.js +0 -4
  853. package/server/.next/server/chunks/_0qrn1v02iivm8._.js +0 -3
  854. package/server/.next/server/chunks/_0s30ac32b7prb._.js +0 -3
  855. package/server/.next/server/chunks/_0vfrh5u-u4mis._.js +0 -3
  856. package/server/.next/server/chunks/_0vgojnnkcf1vu._.js +0 -4
  857. package/server/.next/server/chunks/_0vz0de4gz70-e._.js +0 -4
  858. package/server/.next/server/chunks/_1-mixh9aeqh7f._.js +0 -3
  859. package/server/.next/server/chunks/_1b63jfweu0o04._.js +0 -3
  860. package/server/.next/server/chunks/_1i57ar6zvd7yb._.js +0 -34
  861. package/server/.next/server/chunks/_1k2cwp1_wt6qm._.js +0 -3
  862. package/server/.next/server/chunks/_1kj2yv4-wk2kp._.js +0 -34
  863. package/server/.next/server/chunks/_1l82x0z8bo4pt._.js +0 -3
  864. package/server/.next/server/chunks/_1ozrnl_on86u7._.js +0 -34
  865. package/server/.next/server/chunks/_1xeuk6g48m3_1._.js +0 -3
  866. package/server/.next/server/chunks/src_0d5xqe2zx_935._.js +0 -3
  867. package/server/.next/server/chunks/src_0v4pdrc1yxyl8._.js +0 -3
  868. package/server/.next/server/chunks/src_0vva87j3z99p9._.js +0 -3
  869. package/server/.next/server/chunks/src_1zo6so07lgcdj._.js +0 -3
  870. package/server/.next/server/chunks/src_db_rows_ts_15b286wn1kn1e._.js +0 -3
  871. package/server/.next/server/chunks/src_lib_0485hz-c7h7dr._.js +0 -15
  872. package/server/.next/server/chunks/src_lib_0qcyomi01xvf1._.js +0 -15
  873. package/server/.next/server/chunks/src_lib_1d6edz_ucj01w._.js +0 -3
  874. package/server/.next/server/chunks/src_lib_1ryt-36ohhnm6._.js +0 -15
  875. package/server/.next/server/chunks/src_lib_1suc_xwzxtuej._.js +0 -3
  876. package/server/.next/server/chunks/src_lib_1uh73ofc-pe92._.js +0 -3
  877. package/server/.next/server/chunks/src_private_1yzfhupl3rlpx._.js +0 -6
  878. package/server/.next/server/chunks/ssr/[root-of-the-server]__004r8ubf3fp_i._.js +0 -3
  879. package/server/.next/server/chunks/ssr/[root-of-the-server]__04a21b9fkrqs3._.js +0 -3
  880. package/server/.next/server/chunks/ssr/[root-of-the-server]__0q36f5xjkzf4z._.js +0 -3
  881. package/server/.next/server/chunks/ssr/[root-of-the-server]__0wf8q7-o-4n8y._.js +0 -3
  882. package/server/.next/server/chunks/ssr/[root-of-the-server]__1e-xqsuqsd4ub._.js +0 -3
  883. package/server/.next/server/chunks/ssr/[root-of-the-server]__204_t7bzma353._.js +0 -3
  884. package/server/.next/server/chunks/ssr/_04e0uk5aqrgc3._.js +0 -3
  885. package/server/.next/server/chunks/ssr/_11o43qq2eyx_r._.js +0 -3
  886. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_03amng1-xhfd1.js +0 -3
  887. package/server/.next/server/chunks/ssr/src_0qu78tivj78-x._.js +0 -3
  888. package/server/.next/server/chunks/ssr/src_app_(console)_connections_0gm1y-wtw5gyd._.js +0 -3
  889. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1qigx20w8bk53._.js +0 -3
  890. package/server/.next/server/chunks/ssr/src_lib_data_settings-db_ts_1to3jtggxlaz4._.js +0 -3
  891. package/server/.next/static/chunks/0anet8wttkax1.js +0 -1
  892. package/server/.next/static/chunks/0ao7kjrp6bp3l.js +0 -1
  893. package/server/.next/static/chunks/0b0rwd99q942r.js +0 -1
  894. package/server/.next/static/chunks/0dmi-v53phuqn.js +0 -1
  895. package/server/.next/static/chunks/0ilml-p3iktnr.js +0 -1
  896. package/server/.next/static/chunks/0y_0w1ek5fakj.js +0 -1
  897. package/server/.next/static/chunks/1fxuyn0k52n4v.css +0 -3
  898. package/server/.next/static/chunks/1k01h6men2hvb.js +0 -1
  899. package/server/.next/static/chunks/1mdaf7mwcfafr.js +0 -1
  900. package/server/.next/static/chunks/2mj8z5a9dz7bh.js +0 -1
  901. package/server/.next/static/chunks/2qltilq3pn4ia.js +0 -1
  902. package/server/.next/static/chunks/2wqgz94tksucm.js +0 -1
  903. package/server/.next/static/chunks/3ypdfkwyovory.js +0 -1
  904. /package/server/.next/static/{n3Kt7dFNHr9KDw7DgGz0m → 00CFAqN6pFBVkqJyXSd78}/_buildManifest.js +0 -0
  905. /package/server/.next/static/{n3Kt7dFNHr9KDw7DgGz0m → 00CFAqN6pFBVkqJyXSd78}/_clientMiddlewareManifest.js +0 -0
  906. /package/server/.next/static/{n3Kt7dFNHr9KDw7DgGz0m → 00CFAqN6pFBVkqJyXSd78}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- (()=>{"use strict";module.exports=[455317,71575,569057,912283,930270,a=>{var b=a.i(93321),c=a.i(530385),d=a.i(351674),e=a.i(548734),f=a.i(837137),g=a.i(927262),h=a.i(201516),i=a.i(273133),j=a.i(120213);let k=a=>Math.round(a).toLocaleString("en-US"),l=(a,b)=>Math.floor((a.getTime()-b.getTime())/864e5),m=(a,b)=>`${a} ${b}${1===a?"":"s"}`,n=a=>{try{let b=new URL(a);return`${b.host}${b.pathname}`}catch{return a}},o=a=>{try{return new URL(a).pathname}catch{return"/"}},p="Down · ",q=(a,b,c)=>({rule:a,subject:b,status:"unknown",resourceId:null,accountId:null,title:b,message:"",provider:null,sampleAt:null,...c}),r=a=>"firestore"===a.provider?"firebase":"d1"===a.provider?"cloudflare":a.provider,s=new Set(["turso","upstash","d1"]),t={MonitorDown:(a,b)=>a.monitors.map(a=>{let c=q("MonitorDown",a.id,{resourceId:a.appId,title:`${a.appName} ${"heartbeat"===a.kind?a.url:o(a.url)}`,provider:"vercel",sampleAt:a.lastCheckedAt}),d=b??3;if("heartbeat"===a.kind){let b;return{...c,status:"err"===a.state?"firing":"ok"===a.state?"ok":"unknown",message:`${a.appName} \xb7 ${a.url}: ${b=a.lastError,b?.startsWith(p)?b.slice(p.length):"no ping in time"}.`}}return a.failStreak>=d?{...c,status:"firing",message:(0,h.H)(a)?`${n(a.url)} failed its check (${(0,h.H)(a)}) on ${d} consecutive checks.`:`${n(a.url)} returned ${a.lastStatus?`HTTP ${a.lastStatus}`:"no answer"} on ${d} consecutive checks.`}:{...c,status:0===a.failStreak&&a.lastCheckedAt?"ok":"unknown",message:`${n(a.url)} answers again.`}}),CollectorStale:(a,b)=>{let c=a.lastMinuteRunAt;return[q("CollectorStale","collector",{status:!c||a.now.getTime()-c.getTime()>(b??5)*6e4?"firing":"ok",title:"collector",message:c?`The last minute run finished ${k((a.now.getTime()-c.getTime())/6e4)} min ago.`:"The collector hasn't finished a run yet."})]},HighLatency:(a,b)=>a.monitors.filter(a=>"http"===a.kind).map(a=>{let c=q("HighLatency",a.id,{resourceId:a.appId,title:`${a.appName} ${o(a.url)}`,provider:"vercel",sampleAt:a.lastCheckedAt});if(a.checksLast10<5||null===a.p95Last10)return c;let d=b??1500;return{...c,status:a.p95Last10>d?"firing":"ok",message:`p95 ${k(a.p95Last10)} ms over the last 10 minutes (limit ${k(d)} ms).`}}),DeploymentFailed:a=>a.apps.map(a=>{let b=q("DeploymentFailed",a.id,{resourceId:a.id,title:a.name,provider:"vercel"}),c=a.latestProduction;return c?"error"===c.state?{...b,status:"firing",message:`Production deployment ${c.sha?c.sha.slice(0,7):"(no commit)"} failed.`}:{...b,status:"building"===c.state?"unknown":"ok"}:{...b,status:"ok"}}),DatabasePaused:a=>a.dbs&&a.dbs.filter(a=>"supabase"===a.provider).map(a=>q("DatabasePaused",a.id,{resourceId:a.id,title:a.name,provider:"supabase",status:"unknown"===a.state?"unknown":"paused"===a.state?"firing":"ok",message:`Supabase project ${a.name} is paused.`})),CertExpiringSoon:(a,b)=>a.domains&&a.domains.map(c=>{let d=q("CertExpiringSoon",c.id,{resourceId:c.id,title:c.name,provider:"cloudflare"});if(!c.tlsNotAfter)return d;let e=l(c.tlsNotAfter,a.now);return{...d,status:e<(b??14)?"firing":"ok",message:`The TLS certificate of ${c.name} expires in ${m(e,"day")}.`}}),DomainExpiringSoon:(a,b)=>a.domains&&a.domains.map(c=>{let d=q("DomainExpiringSoon",c.id,{resourceId:c.id,title:c.name,provider:"cloudflare"});if(!c.expiresAt)return d;let e=l(c.expiresAt,a.now);return{...d,status:e<(b??30)?"firing":"ok",message:`${c.name} expires in ${m(e,"day")}.`}}),StorageAlmostFull:(a,b)=>a.dbs&&a.dbs.filter(a=>"firestore"!==a.provider).map(a=>{let c=q("StorageAlmostFull",a.id,{resourceId:a.id,title:a.name,provider:r(a)});if(null===a.sizeBytes||!a.sizeLimitBytes)return c;let d=a.sizeBytes/a.sizeLimitBytes*100;return{...c,status:d>(b??80)?"firing":"ok",message:`${a.name} uses ${k(a.sizeBytes/1e6)} MB of ${k(a.sizeLimitBytes/1e6)} MB (${k(d)}%).`}}),NeonComputeHigh:(a,b)=>a.dbs&&a.dbs.filter(a=>"neon"===a.provider).map(a=>{let c=q("NeonComputeHigh",a.id,{resourceId:a.id,title:a.name,provider:"neon"});return null===a.cuHours?c:{...c,status:a.cuHours>(b??80)?"firing":"ok",message:`${a.name} used ${k(a.cuHours)} of ${k(a.cuLimit??100)} CU-hours this month.`}}),FirestoreQuotaHigh:(a,b)=>a.dbs&&a.dbs.filter(a=>"firestore"===a.provider).map(a=>{let c=q("FirestoreQuotaHigh",a.id,{resourceId:a.id,title:a.name,provider:"firebase"});if(a.quotaExhausted)return{...c,status:"firing",message:`${a.name} hit a Firestore quota (RESOURCE_EXHAUSTED).`};if(null===a.readsToday||!a.readsLimit)return!1===a.quotaExhausted?{...c,status:"ok"}:c;let d=a.readsToday/a.readsLimit*100;return{...c,status:d>(b??80)?"firing":"ok",message:`${a.name} read ${k(a.readsToday)} of ${k(a.readsLimit)} documents today (${k(d)}%).`}}),AutoPauseRisk:(a,b)=>a.dbs&&a.dbs.filter(a=>"supabase"===a.provider).map(c=>{let d=q("AutoPauseRisk",c.id,{resourceId:c.id,title:c.name,provider:"supabase"});if("paused"===c.state)return{...d,status:"ok"};if(!c.lastApiAt)return d;let e=Math.floor((a.now.getTime()-c.lastApiAt.getTime())/864e5);return{...d,status:e>=(b??4)?"firing":"ok",message:`No API traffic for ${m(e,"day")}. Supabase pauses free projects after about 7 days.`}}),DnsProxiedToVercel:a=>a.dns&&a.dns.map(a=>q("DnsProxiedToVercel",a.id,{resourceId:a.resourceId,title:a.name,provider:"cloudflare",status:a.proxied&&a.pointsToVercel?"firing":"ok",message:`${a.name} points to Vercel through the Cloudflare proxy. Vercel recommends DNS only.`})),DbQuotaHigh:(a,b)=>a.dbs&&a.dbs.filter(a=>s.has(a.provider)).map(a=>{let c=q("DbQuotaHigh",a.id,{resourceId:a.id,title:a.name,provider:r(a)});return null==a.quotaPct?c:{...c,status:a.quotaPct>(b??80)?"firing":"ok",message:`${a.name}: ${a.quotaLabel??"usage"} at ${k(a.quotaPct)}% of the free plan.`}}),ComputeHigh:(a,b)=>a.compute?a.compute.map(c=>{let d=q("ComputeHigh",c.id,{resourceId:c.id,title:c.name,provider:"supabase",sampleAt:c.latest?new Date(c.latest.at):null}),e=(0,i.B)(c.latest,(0,i.V)(b),a.now);return null===e?d:{...d,status:e.length?"firing":"ok",message:e.length?`${c.name}: ${e.join(", ")}.`:`${c.name} compute is back under the limits.`}}):null,CredentialExpiring:(a,b)=>a.accounts.map(c=>{let d=q("CredentialExpiring",c.id,{accountId:c.id,title:`${c.provider} \xb7 ${c.label}`,provider:c.provider});if("drive"===c.provider&&"error"===c.status&&c.lastError?.includes("invalid_grant"))return{...d,status:"firing",message:"Google Drive access was removed (invalid_grant). Reconnect it."};if(!c.expiresAt)return{...d,status:"ok"};let e=l(c.expiresAt,a.now);return{...d,status:e<(b??14)?"firing":"ok",message:e<0?`The ${c.provider} credential ${c.label} has expired.`:`The ${c.provider} credential ${c.label} expires in ${m(e,"day")}.`}}),VulnerableDependency:a=>a.deps?a.deps.flatMap(b=>{let c=a.apps.find(a=>a.id===b.appId);if(!c)return[];let d=q("VulnerableDependency",b.appId,{resourceId:b.appId,title:c.name,provider:"github"});if(b.error)return[d];let e=(0,j.g)(b.vulns);return e?[{...d,status:"firing",message:(0,j.L)(b.vulns),..."critical"===e?{severity:"critical"}:{}}]:[{...d,status:"ok",message:`${c.name} has no high or critical dependency advisories.`}]}):null},u=["MonitorDown","HighLatency"],v=["telegram","discord"],w=a=>a.channels.some(a=>v.includes(a));function x(a,b){return b.collectorStale&&"CollectorStale"!==a.rule?"CollectorStale":a.resourceId&&u.includes(a.rule)?b.mutedApps.get(a.resourceId)??null:null}let y=(a,b)=>"critical"===b&&"warning"===a?"critical":a,z=(a,b)=>a.silencedUntilResolved||null!==a.silencedUntil&&a.silencedUntil.getTime()>b.getTime(),A=(a,b)=>`${a}|${b}`;var B=a.i(519051),C=a.i(245710);function D(a,b){return"1h"===a?{silencedUntil:new Date(b.getTime()+36e5),silencedUntilResolved:!1}:{silencedUntil:null,silencedUntilResolved:!0}}a.s(["_",0,[["critical","Critical"],["warning","Warning"],["info","Info"]],"O",0,function(a,b){return a.silencedUntilResolved?{state:"off",text:"Silenced until resolved"}:a.silencedUntil&&a.silencedUntil.getTime()>b.getTime()?{state:"off",text:`Silenced until ${(0,C.U)(a.silencedUntil)}`}:"open"===a.pending||"repeat"===a.pending?{state:"build",text:"Sending…"}:a.causedBy&&!a.notifiedOpen?{state:"off",text:"Muted"}:a.lastNotifiedAt?{state:"ok",text:`Sent ${(0,C.U)(a.lastNotifiedAt)}`}:{state:"off",text:"Digest only"}},"G",0,function(a){return a.enabled?a.firing?{state:"err",text:`Firing \xb7 ${a.firing}`}:a.hasData?{state:"off",text:"Inactive"}:{state:"unknown",text:"No data yet"}:{state:"off",text:"Disabled"}},"A",0,D,"M",0,function(a,b){let c=Math.max(1,Math.round((b.getTime()-a.getTime())/6e4));if(c<60)return`${c} min`;let d=Math.floor(c/60);return d<24?`${d} h ${c%60} min`:`${Math.floor(d/24)} d ${d%24} h`}],71575);var E=a.i(639271),F=a.i(656298),G=a.i(688275),H=a.i(893893),I=a.i(672319),J=a.i(188546),K=a.i(233711);async function L(){let[a]=await (0,e.f)().select({at:f.collectorRuns.finishedAt}).from(f.collectorRuns).where((0,b.b)((0,b.E)(f.collectorRuns.finishedAt),(0,b.y)(f.collectorRuns.trigger,["cron_job_org","qstash","manual"]))).orderBy((0,c.A)(f.collectorRuns.finishedAt)).limit(1);return a?.at??null}async function M(){let[a]=await (0,e.f)().select({at:f.collectorRuns.finishedAt}).from(f.collectorRuns).where((0,b.b)((0,b.E)(f.collectorRuns.finishedAt),(0,b.y)(f.collectorRuns.trigger,["cron_job_org","manual"]))).orderBy((0,c.A)(f.collectorRuns.finishedAt)).limit(1);return a?.at??null}a.s(["D",0,L,"d",0,M],569057);var N=a.i(367247),O=a.i(84877),P=a.i(679662);let Q=/^v?(\d+)\.(\d+)\.(\d+)(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$/;function R(a,b){let c=Q.exec(a.trim()),d=Q.exec(b.trim());return!!c&&!!d&&c[1]===d[1]&&("0"!==c[1]||c[2]===d[2])&&(0,O.f)(b,a)>=0}function S(a,b){if(!b)return{deps:a,stale:[]};let c=[...Object.entries(b.dependencies).map(([a,b])=>[a,b,!1]),...Object.entries(b.optionalDependencies).map(([a,b])=>[a,b,!1]),...Object.entries(b.devDependencies).map(([a,b])=>[a,b,!0])],d=[...a],e=[];for(let[a,b,f]of c){let c=(0,P.Y)(b);if(!c||!(0,P.C)(c))continue;let g=d.filter(b=>b.name===a);!g.length||g.some(a=>(0,O.f)(a.version,c)>=0)||((d=d.filter(b=>b.name!==a)).push({name:a,version:c,dev:g.every(a=>a.dev)&&f}),e.push(a))}return{deps:d,stale:e}}let T=a=>`Lockfile tertinggal — jalankan npm install (${a.slice(0,5).join(", ")}${a.length>5?`, +${a.length-5}`:""}).`;a.s(["M",0,T,"a",0,function(a,b,c){if(!a.length)return{ok:!1,why:"nothing"};let d=a.filter(a=>c.includes(a.severity));if(!d.length)return{ok:!1,why:"severity"};for(let a of d){let c=b.get(a.package);if(!c||!R(c,a.to))return{ok:!1,why:"major"}}return{ok:!0,upgrades:d}},"m",0,S,"D",0,function(a){let b=new Map;for(let c of a){if(!c.direct)continue;let a=b.get(c.package);(!a||0>(0,O.f)(c.installedVersion,a))&&b.set(c.package,c.installedVersion)}return b},"U",0,function(a,b){for(let c of b){let b=function(a){if(a.packages?.length)return a.packages;let b=/^Watch(?:bell|post): update (\S+) (?:to|ke) /.exec(a.title);return b?[b[1]]:"all"}(c);if("all"===b||a.some(a=>b.includes(a)))return c}return null},"J",0,R],912283);var U=a.i(358179),V=a.i(492665),W=a.i(683439),X=a.i(852539),Y=a.i(33135),Z=a.i(533957);let $="OpsConsole-Deps/1.0 (+https://west-solutions.web.id)";async function _(a,b,c,d){let e=d.deadline-Date.now();if(e<500)return{ok:!1,error:"No time left for OSV.dev"};let f=AbortSignal.timeout(e);return ab(a,{method:"POST",headers:{"content-type":"application/json","user-agent":$},body:JSON.stringify(b),signal:f},c,f,d)}async function aa(a,b,c){let d=c.deadline-Date.now();if(d<500)return{ok:!1,error:"No time left for OSV.dev"};let e=AbortSignal.timeout(Math.min(d,8e3));return ab(a,{method:"GET",headers:{"user-agent":$},signal:e},b,e,c)}async function ab(a,b,c,d,e){let f;try{f=await (e.fetch??fetch)(a,{...b,redirect:"error",cache:"no-store"})}catch(a){return{ok:!1,error:(0,Z.t)(a)?"OSV.dev didn't answer in time":"Couldn't reach OSV.dev"}}if(!f.ok)return await f.body?.cancel().catch(()=>void 0),{ok:!1,error:`OSV.dev answered HTTP ${f.status}`};try{let{bytes:a,truncated:b}=await (0,Y.z)(f,c,(0,Y.X)(d));if(b)return{ok:!1,error:"OSV.dev sent too large an answer"};return{ok:!0,body:JSON.parse(new TextDecoder().decode(a))}}catch(a){return{ok:!1,error:(0,Z.t)(a)?"OSV.dev didn't answer in time":"OSV.dev sent an answer we couldn't read"}}}async function ac(a,b){let c=[];for(let d of(0,X.f)(a)){let a=await _(X.n,d,4194304,b);if(!a.ok)return a;let e=(0,X.j)(a.body,d.queries.length);if(!e)return{ok:!1,error:"OSV.dev sent an answer we couldn't read"};c.push(...e)}return{ok:!0,ids:c}}async function ad(a,b){let c=[...new Set(a)].filter(X.G);if(c.length>300)return{ok:!1,error:`Too many advisories to read in one scan (${c.length})`};let d=new Map,e=null;for(let a=0;a<c.length&&!e;a+=8)await Promise.all(c.slice(a,a+8).map(async a=>{let c=await aa(`${X.W}${encodeURIComponent(a)}`,1048576,b),f=c.ok?(0,X.O)(c.body):null;f?d.set(a,f):e??=c.ok?"OSV.dev sent an advisory we couldn't read":c.error}));return e?{ok:!1,error:e}:{ok:!0,map:d}}var ae=a.i(689963),af=a.i(26972),ag=a.i(427221),ah=a.i(811365),ai=a.i(760417);let aj=ae.z.array(af.z.object({name:ag.z.string(),type:ag.z.string(),sha:ag.z.string(),size:ah.z.number().optional()}));async function ak(a,b,c,d={}){if(!(0,ai.M)(b)||!(0,ai.c)(c))return{ok:!1,kind:"format",error:"That isn't a repository name or ref."};let e=await (0,ai.j)(`/repos/${(0,ai.f)(b)}/contents/?ref=${encodeURIComponent(c)}`,a,d);if(!e.ok)return e;let f=aj.safeParse(e.data);return f.success?{ok:!0,data:f.data.filter(a=>"file"===a.type&&/^[0-9a-f]{40}$/.test(a.sha)).map(a=>({name:a.name,sha:a.sha,size:a.size??0}))}:{ok:!1,kind:"format",error:"GitHub answered the file list in a format the console doesn't recognise."}}function al(a,b,c,d,e,f={}){return(0,ai.V)(a,b,c,d,e,f)}async function am(a,b,c={}){if(!(0,ai.M)(b))return{ok:!1,kind:"format",error:"That isn't a repository name."};let d=await (0,ai.j)(`/repos/${(0,ai.f)(b)}/dependabot/alerts?state=open&ecosystem=npm&per_page=100`,a,c);if(!d.ok)return"scope"===d.kind||"missing"===d.kind?{ok:!0,data:{denied:!0}}:d;let e=(0,j.E)(d.data);return e?{ok:!0,data:{alerts:e}}:{ok:!1,kind:"format",error:"GitHub answered the Dependabot alerts in a format the console doesn't recognise."}}async function an(){let[a]=await (0,e.f)().select().from(f.accounts).where((0,b.u)(f.accounts.provider,"github")).orderBy((0,c.M)(f.accounts.createdAt)).limit(1);if(!a)return{error:"GitHub isn't connected."};let d=(0,U.V)({ciphertext:a.credentialCiphertext,iv:a.credentialIv},(0,V.f)().OPS_ENCRYPTION_KEY);return d?{token:d,accountId:a.id}:{error:"Can't read the stored GitHub credential. Replace it on Connections."}}let ao=(a,b)=>a.length>b?`${a.slice(0,b-1)}…`:a;async function ap(a,b){let c=new Date;await (0,e.f)().insert(f.dependencyScans).values({repoId:a,...b,updatedAt:c}).onConflictDoUpdate({target:f.dependencyScans.repoId,set:{...b,updatedAt:c}})}async function aq(a){return(0,e.f)().select({id:f.dependencyVulns.id,package:f.dependencyVulns.package,installedVersion:f.dependencyVulns.installedVersion,vulnId:f.dependencyVulns.vulnId,severity:f.dependencyVulns.severity,fixedVersion:f.dependencyVulns.fixedVersion,summary:f.dependencyVulns.summary,aliases:f.dependencyVulns.aliases,dev:f.dependencyVulns.dev,direct:f.dependencyVulns.direct,source:f.dependencyVulns.source}).from(f.dependencyVulns).where((0,b.b)((0,b.u)(f.dependencyVulns.repoId,a),(0,b.M)(f.dependencyVulns.resolvedAt))).limit(2e3)}async function ar(a,c,d,g={}){let h=()=>({...g,timeoutMs:Math.max(1e3,Math.min(d-Date.now(),1e4))}),i=async a=>(await ap(c.id,{error:ao(a,300),scannedAt:new Date}).catch(()=>void 0),{status:"failed",error:a}),k=c.defaultBranch??"HEAD",l=await ak(a,c.fullName,k,h());if(!l.ok)return i(l.error);let m=function(a){for(let b of P.a){let c=a.find(a=>a.name===b.path);if(c)return{path:b.path,kind:b.kind,sha:c.sha}}return null}(l.data),n=l.data.find(a=>"package.json"===a.name)??null,o=m?m.sha:n?`pkg:${n.sha}`:null,[p]=await (0,e.f)().select().from(f.dependencyScans).where((0,b.u)(f.dependencyScans.repoId,c.id)).limit(1),q=new Date;if(!(0,j.U)(p??null,o,q,g.force))return{status:"unchanged"};if(!o){let a=await aq(c.id);return a.length&&await (0,e.f)().update(f.dependencyVulns).set({resolvedAt:q}).where((0,b.y)(f.dependencyVulns.id,a.map(a=>a.id))),await ap(c.id,{lockfilePath:null,lockfileSha:null,packageCount:0,scannedAt:q,queriedAt:q,error:null,note:"No package.json or lockfile at the repository root."}),{status:"scanned",vulns:0,packages:0,note:"no package.json"}}let r=n?await al(a,c.fullName,"package.json",k,ai.$,h()):null;if(r&&!r.ok)return i(r.error);let s=r?.ok&&r.data?(0,P.b)(r.data):null,t=null,u="package-json",v=null;if(m){if(2e3>d-Date.now())return i("Time budget used before the lockfile was read; the next run tries again.");let b=await al(a,c.fullName,m.path,k,0xf00000,{...g,timeoutMs:Math.max(1e3,Math.min(d-Date.now(),2e4))});if(!b.ok)return i(b.error);t=b.data?(0,P.D)(m.kind,b.data):null,u=m.kind,t||(v=`${m.path} couldn't be read; the versions come from package.json ranges (approximate).`)}if(t){let a=S(t,s);t=a.deps,a.stale.length&&(v=[v,T(a.stale)].filter(Boolean).join(" "))}else t=s?(0,P.e)(s):[],u="package-json",v??=m?null:"No lockfile: the versions come from package.json ranges (approximate).";let w=await aq(c.id),x=[];if(t.length){let a=await ac(t,{fetch:g.fetch,deadline:d});if(!a.ok)return i(a.error);let b=(0,j.A)(w,!0===g.force),c=await ad((0,j.z)(t,a.ids,b),{fetch:g.fetch,deadline:d});if(!c.ok)return i(c.error);x=(0,X.i)(t,a.ids,c.map,b)}if(d-Date.now()>1500){let b=await am(a,c.fullName,h());b.ok&&"alerts"in b.data?x=(0,j.R)(x,b.data.alerts,t):b.ok&&(v=[v,"Dependabot alerts aren't readable with this token (optional: Dependabot alerts: Read)."].filter(Boolean).join(" "))}let y=(0,j.h)(w,x,(0,P.K)(s)),z=new Date;return await (0,e.f)().transaction(async a=>{for(let d of(y.insert.length&&await a.insert(f.dependencyVulns).values(y.insert.map(a=>({repoId:c.id,package:a.package,installedVersion:a.installedVersion,vulnId:a.vulnId,aliases:a.aliases,severity:a.severity,fixedVersion:a.fixedVersion,summary:a.summary,direct:a.direct,dev:a.dev,source:a.source,firstSeenAt:z,lastSeenAt:z}))).onConflictDoNothing(),y.update))await a.update(f.dependencyVulns).set({severity:d.severity,fixedVersion:d.fixedVersion,summary:d.summary,aliases:d.aliases,dev:d.dev,direct:d.direct,lastSeenAt:z}).where((0,b.u)(f.dependencyVulns.id,d.id));y.resolve.length&&await a.update(f.dependencyVulns).set({resolvedAt:z}).where((0,b.b)((0,b.y)(f.dependencyVulns.id,y.resolve),(0,b.M)(f.dependencyVulns.resolvedAt))),await a.insert(f.dependencyScans).values({repoId:c.id,lockfilePath:m?.path??(n?"package.json":null),lockfileSha:o,packageCount:t.length,scannedAt:z,queriedAt:z,error:null,note:v?ao(v,300):null,updatedAt:z}).onConflictDoUpdate({target:f.dependencyScans.repoId,set:{lockfilePath:m?.path??(n?"package.json":null),lockfileSha:o,packageCount:t.length,scannedAt:z,queriedAt:z,error:null,note:v?ao(v,300):null,updatedAt:z}})}),{status:"scanned",vulns:y.insert.length+y.update.length,packages:t.length,note:"package-json"===u?v:null}}async function as(a){let d={repo:null,scan:null,vulns:[],writeConnected:!1};if(!(0,W.f)(a))return d;let[g]=await (0,e.f)().select({id:f.githubRepos.id,fullName:f.githubRepos.fullName}).from(f.appRepos).innerJoin(f.githubRepos,(0,b.u)(f.githubRepos.id,f.appRepos.repoId)).where((0,b.u)(f.appRepos.appId,a)).limit(1);if(!g)return d;let[[h],i,[k]]=await Promise.all([(0,e.f)().select({scannedAt:f.dependencyScans.scannedAt,lockfilePath:f.dependencyScans.lockfilePath,packageCount:f.dependencyScans.packageCount,error:f.dependencyScans.error,note:f.dependencyScans.note}).from(f.dependencyScans).where((0,b.u)(f.dependencyScans.repoId,g.id)).limit(1),(0,e.f)().select({package:f.dependencyVulns.package,installedVersion:f.dependencyVulns.installedVersion,vulnId:f.dependencyVulns.vulnId,severity:f.dependencyVulns.severity,fixedVersion:f.dependencyVulns.fixedVersion,summary:f.dependencyVulns.summary,aliases:f.dependencyVulns.aliases,dev:f.dependencyVulns.dev,direct:f.dependencyVulns.direct,firstSeenAt:f.dependencyVulns.firstSeenAt}).from(f.dependencyVulns).where((0,b.b)((0,b.u)(f.dependencyVulns.repoId,g.id),(0,b.M)(f.dependencyVulns.resolvedAt))).limit(2e3),(0,e.f)().select({id:f.accounts.id}).from(f.accounts).where((0,b.u)(f.accounts.provider,"github_write")).limit(1)]);i.sort((a,b)=>(0,j.t)(a.severity)-(0,j.t)(b.severity)||(a.package<b.package?-1:+(a.package>b.package))||(a.vulnId<b.vulnId?-1:1));let l=await (0,e.f)().select({number:f.dependencyPrs.number,stage:f.dependencyPrs.stage,stageText:f.dependencyPrs.stageText,openedAt:f.dependencyPrs.openedAt}).from(f.dependencyPrs).where((0,b.b)((0,b.u)(f.dependencyPrs.repoId,g.id),(0,b.B)(f.dependencyPrs.openedAt,new Date(Date.now()-12096e5)))).orderBy((0,c.A)(f.dependencyPrs.openedAt)).limit(5).catch(()=>[]);return{repo:g,scan:h??null,vulns:i,writeConnected:!!k,prs:(l??[]).map(a=>({...a,fullName:g.fullName}))}}async function at(a,c={}){if(!(0,W.f)(a))return{ok:!1,error:"That app no longer exists."};let[g]=await (0,e.f)().select({app:f.resources.name,id:f.githubRepos.id,fullName:f.githubRepos.fullName,defaultBranch:f.githubRepos.defaultBranch,goneAt:f.githubRepos.goneAt}).from(f.appRepos).innerJoin(f.githubRepos,(0,b.u)(f.githubRepos.id,f.appRepos.repoId)).innerJoin(f.resources,(0,b.u)(f.resources.id,f.appRepos.appId)).where((0,b.u)(f.appRepos.appId,a)).limit(1);if(!g)return{ok:!1,error:"Link a repository first."};if(g.goneAt)return{ok:!1,error:"That repository is no longer shared with the GitHub token."};let h=await an();if("error"in h)return{ok:!1,error:h.error};let i=await ar(h.token,{id:g.id,fullName:g.fullName,defaultBranch:g.defaultBranch,scannedAt:null},Date.now()+4e4,{...c,force:!0});if("failed"===i.status)return{ok:!1,error:`The scan failed: ${i.error}`};let[j]=await (0,e.f)().select({n:d.B`count(*)::int`}).from(f.dependencyVulns).where((0,b.b)((0,b.u)(f.dependencyVulns.repoId,g.id),(0,b.M)(f.dependencyVulns.resolvedAt))),k=j?.n??0;return{ok:!0,app:g.app,repo:g.fullName,vulns:k,message:k?`${k} known vulnerabilit${1===k?"y":"ies"} in ${i.packages??0} packages.`:`No known vulnerabilities in ${i.packages??0} packages.`}}async function au(a){let c=a.filter(W.f);if(!c.length)return[];let d=await (0,e.f)().select({appId:f.appRepos.appId,repoId:f.appRepos.repoId,error:f.dependencyScans.error}).from(f.appRepos).innerJoin(f.dependencyScans,(0,b.u)(f.dependencyScans.repoId,f.appRepos.repoId)).where((0,b.b)((0,b.y)(f.appRepos.appId,c),(0,b.E)(f.dependencyScans.scannedAt)));if(!d.length)return[];let g=await (0,e.f)().select({repoId:f.dependencyVulns.repoId,package:f.dependencyVulns.package,installedVersion:f.dependencyVulns.installedVersion,fixedVersion:f.dependencyVulns.fixedVersion,severity:f.dependencyVulns.severity,summary:f.dependencyVulns.summary,dev:f.dependencyVulns.dev}).from(f.dependencyVulns).where((0,b.b)((0,b.y)(f.dependencyVulns.repoId,[...new Set(d.map(a=>a.repoId))]),(0,b.M)(f.dependencyVulns.resolvedAt))).limit(1e4);return d.map(a=>({appId:a.appId,repoId:a.repoId,error:a.error,vulns:g.filter(b=>b.repoId===a.repoId).map(a=>({package:a.package,installedVersion:a.installedVersion,fixedVersion:a.fixedVersion,severity:a.severity,summary:a.summary,dev:a.dev}))}))}async function av(a){let c=a.filter(W.f),d=new Map;if(!c.length)return d;let g=await (0,e.f)().select({appId:f.appRepos.appId,repoId:f.appRepos.repoId}).from(f.appRepos).where((0,b.y)(f.appRepos.appId,c));if(!g.length)return d;let h=await (0,e.f)().select({repoId:f.dependencyVulns.repoId,package:f.dependencyVulns.package,installedVersion:f.dependencyVulns.installedVersion,fixedVersion:f.dependencyVulns.fixedVersion,vulnId:f.dependencyVulns.vulnId,aliases:f.dependencyVulns.aliases,severity:f.dependencyVulns.severity,direct:f.dependencyVulns.direct}).from(f.dependencyVulns).where((0,b.b)((0,b.y)(f.dependencyVulns.repoId,[...new Set(g.map(a=>a.repoId))]),(0,b.M)(f.dependencyVulns.resolvedAt),(0,b.u)(f.dependencyVulns.direct,!0),(0,b.E)(f.dependencyVulns.fixedVersion))).limit(2e3);for(let a of g)(0,j.B)(h.filter(b=>b.repoId===a.repoId)).length&&d.set(a.appId,a.repoId);return d}async function aw(){return(0,e.f)().select({appId:f.links.fromResourceId,dbId:f.links.toResourceId}).from(f.links).where((0,b.u)(f.links.kind,"uses_db")).limit(500)}async function ax(a){let g=(0,b.b)((0,b.u)(f.resources.monitored,!0),(0,b.M)(f.resources.goneAt)),[h,i,j,k,l]=await Promise.all([M(),L(),(0,e.f)().select({m:f.monitors,appName:f.resources.name}).from(f.monitors).innerJoin(f.resources,(0,b.u)(f.resources.id,f.monitors.resourceId)).where((0,b.b)(g,(0,b.u)(f.monitors.paused,!1),(0,b.u)(f.monitors.ownerPaused,!1))),(0,e.f)().select({id:f.resources.id,name:f.resources.name}).from(f.resources).where((0,b.b)(g,(0,b.u)(f.resources.kind,"app"))),(0,e.f)().select({id:f.accounts.id,provider:f.accounts.provider,label:f.accounts.label,expiresAt:f.accounts.expiresAt,status:f.accounts.status,lastError:f.accounts.lastError}).from(f.accounts)]),m=j.map(a=>a.m.id),n=m.length?await (0,e.f)().select({id:f.checks.monitorId,n:d.B`count(*)::int`,p95:d.B`percentile_cont(0.95) within group (order by ${f.checks.latencyMs})::float8`}).from(f.checks).where((0,b.b)((0,b.y)(f.checks.monitorId,m),(0,b.B)(f.checks.at,new Date(a.getTime()-6e5)),(0,b.u)(f.checks.inMaintenance,!1))).groupBy(f.checks.monitorId):[],o=k.map(a=>a.id),p=o.length?await (0,e.f)().selectDistinctOn([f.deployments.resourceId],{appId:f.deployments.resourceId,state:f.deployments.state,sha:f.deployments.commitSha,createdAt:f.deployments.createdAtProvider}).from(f.deployments).where((0,b.b)((0,b.y)(f.deployments.resourceId,o),(0,b.u)(f.deployments.target,"production"))).orderBy(f.deployments.resourceId,(0,c.A)(f.deployments.createdAtProvider)):[],q=await (0,e.f)().select({id:f.resources.id,name:f.resources.name,kind:f.resources.kind,state:f.snapshots.state,data:f.snapshots.data}).from(f.resources).innerJoin(f.snapshots,(0,b.u)(f.snapshots.resourceId,f.resources.id)).where((0,b.b)(g,(0,b.y)(f.resources.kind,["supabase_project","neon_project","firestore","turso_database","upstash_redis","d1_database","zone","domain"]))),r=a=>q.filter(b=>b.kind===a),s=q.filter(a=>["supabase_project","neon_project","firestore","turso_database","upstash_redis","d1_database"].includes(a.kind)),t=r("zone"),u=r("domain"),v=await aw(),w=await (0,N.Y)().catch(()=>null),x=o.length?await au(o).catch(()=>null):null;return{now:a,lastMinuteRunAt:h,lastAnyRunAt:i,monitors:j.map(({m:a,appName:b})=>{let c=n.find(b=>b.id===a.id),d="heartbeat"===a.kind;return{id:a.id,appId:a.resourceId,appName:b,url:d?a.name??"heartbeat":a.url,kind:d?"heartbeat":"http",state:a.state,failStreak:a.failStreak,lastStatus:a.lastStatus,lastError:a.lastError,lastCheckedAt:a.lastCheckedAt,p95Last10:c?.p95??null,checksLast10:c?.n??0}}),apps:k.map(a=>{let b=p.find(b=>b.appId===a.id);return{id:a.id,name:a.name,latestProduction:b?{state:b.state,sha:b.sha,createdAt:b.createdAt}:null}}),accounts:l,dbs:s.length?s.map(b=>(function(a,b){let c={id:a.id,name:a.name,state:a.state,sizeBytes:null,sizeLimitBytes:null,lastApiAt:null,cuHours:null,cuLimit:null,readsToday:null,readsLimit:null,quotaExhausted:null};if("supabase_project"===a.kind){let b=(0,H.k)(H.B,a.data),d=(0,K.Z)(b.lastTrafficAt),e=(0,K.Z)(b.trafficAt),f=d??(e&&!b.trafficError?new Date(e.getTime()-6048e5):null);return{...c,provider:"supabase",sizeBytes:b.sizeBytes??null,sizeLimitBytes:I.R,lastApiAt:f}}if("neon_project"===a.kind){let b=(0,H.k)(H.s,a.data),d=(b.branches??[]).map(a=>a.logicalSize).filter(a=>"number"==typeof a);return{...c,provider:"neon",cuHours:null==b.computeSeconds?null:b.computeSeconds/3600,cuLimit:G.a.cuHours,sizeBytes:d.length?d.reduce((a,b)=>a+b,0):null,sizeLimitBytes:G.a.storageBytes}}if("firestore"===a.kind){let d=(0,H.k)(H.w,a.data),e=(0,K.Z)(d.opsAt),f=null!=d.reads&&e&&e.getTime()>=(0,F.a)(b).getTime()?d.reads:null,g=null!=d.latencyMs||null!=d.pingError;return{...c,provider:"firestore",readsToday:f,readsLimit:F.T.reads,quotaExhausted:g?"RESOURCE_EXHAUSTED"===d.pingReason:null}}if("turso_database"===a.kind){let d=(0,H.k)(H.N,a.data),e=(0,E.u)((0,E.G)(d,b));return{...c,provider:"turso",sizeBytes:d.orgStorageBytes??null,sizeLimitBytes:E.g.storageBytes,quotaPct:e?.pct??null,quotaLabel:e?`${e.label} ${e.text}`:null}}if("upstash_redis"===a.kind){let d=(0,H.k)(H.e,a.data),e=(0,E.u)((0,E.$)(d,b));return{...c,provider:"upstash",sizeBytes:d.storageBytes??null,sizeLimitBytes:E.W.storageBytes,quotaPct:e?.pct??null,quotaLabel:e?`${e.label} ${e.text}`:null}}if("d1_database"===a.kind){let d=(0,H.k)(H.x,a.data),e=(0,E.u)((0,E.I)(d,b));return{...c,provider:"d1",sizeBytes:d.sizeBytes??null,sizeLimitBytes:E.M.dbBytes,quotaPct:e?.pct??null,quotaLabel:e?`${e.label} ${e.text}`:null}}return null})(b,a)).filter(a=>null!==a):null,domains:t.length||u.length?[...t.map(a=>({id:a.id,name:a.name,tlsNotAfter:null,expiresAt:(0,K.Z)((0,J.q)(a.data).rdap?.expiresAt)})),...u.map(a=>({id:a.id,name:a.name,tlsNotAfter:(0,K.Z)((0,J.q)(a.data).tls?.notAfter),expiresAt:null}))]:null,dns:function(a,b){let c=a.filter(a=>Array.isArray(a.data.records));if(!c.length)return null;let d=a.map(a=>a.name),e=[];for(let a of c){let c=b.filter(b=>(0,K.J)(b.name,d)===a.name.toLowerCase().replace(/\.$/,"")),f=[...new Set(c.flatMap(a=>(0,J.q)(a.data).vercel?.recommendedIps??[]))];for(let b of(0,J.q)(a.data).records){if(!(0,K.l)(b,f))continue;let d=b.name.toLowerCase().replace(/\.$/,""),g=c.find(a=>a.name.toLowerCase().replace(/\.$/,"")===d);e.push({id:`${a.id}:${b.id}`,resourceId:g?.id??a.id,name:b.name,proxied:b.proxied,pointsToVercel:!0})}}return e}(t,u),links:v,compute:w,deps:x&&x.length?x:null}}a.s(["j",0,as,"C",0,av,"a",0,au,"h",0,at],930270);var ay=a.i(714530);let az={vercel:"Vercel",supabase:"Supabase",neon:"Neon",cloudflare:"Cloudflare",firebase:"Firebase",gcp:"Google Cloud"};async function aA(){return(await (0,e.f)().select().from(f.alertRules)).filter(a=>(0,g.h)(a.key)).map(a=>({key:a.key,severity:a.severity,threshold:a.threshold,enabled:a.enabled,channels:a.channels}))}async function aB(a,c={}){let[d,h,i,j,k]=await Promise.all([ax(a),aA(),(0,e.f)().select().from(f.alerts).where((0,b.M)(f.alerts.resolvedAt)),(0,e.f)().select({provider:f.providerStatus.provider,state:f.providerStatus.state}).from(f.providerStatus),(0,ay.w)()]),{observations:l,evaluated:m}=function(a,b,c){let d=[],e=new Set;for(let f of b){if(!f.enabled||c&&!c.includes(f.key)||!g._[f.key])continue;let b=t[f.key](a,f.threshold);b&&(e.add(f.key),d.push(...b))}return{observations:d,evaluated:e}}(d,h,c.only),n=h.find(a=>"CollectorStale"===a.key),o=void 0===d.lastAnyRunAt?d.lastMinuteRunAt:d.lastAnyRunAt,p=!!n?.enabled&&(!o||a.getTime()-o.getTime()>(n.threshold??5)*6e4),q=new Map((d.dbs??[]).filter(a=>"paused"===a.state).map(a=>[a.id,a.name])),r=new Map(d.links.filter(a=>q.has(a.dbId)).map(a=>[a.appId,`DatabasePaused \xb7 ${q.get(a.dbId)}`])),s=new Map(j.filter(a=>"warn"===a.state||"err"===a.state).map(a=>["gcp"===a.provider?"firebase":a.provider,az[a.provider]??a.provider])),u=(0,B.u)(k,d.monitors.map(a=>({id:a.id,appId:a.appId})),a,d.apps.map(a=>a.id)),v=function(a,b,c,d,e){let f={open:[],touch:[],resolve:[]},h=new Map(d.map(a=>[a.key,a])),i=new Map(b.map(a=>[A(a.rule,a.subject),a])),j=new Set(a.map(a=>A(a.ruleKey,a.subject))),k=a=>f.resolve.push({id:a.id,pending:a.notifiedOpen?"resolve":null});for(let b of a){let a=h.get(b.ruleKey),d=i.get(A(b.ruleKey,b.subject));if(!a||!a.enabled){f.resolve.push({id:b.id,pending:null});continue}if(!c.has(b.ruleKey))continue;if(!d){f.resolve.push({id:b.id,pending:null});continue}if("unknown"===d.status)continue;let j=d.provider?e.incidents.get(d.provider)??null:null;if("firing"===d.status){let c=x(d,e),g=b.notifiedOpen&&null!==b.lastNotifiedAt&&e.now.getTime()-b.lastNotifiedAt.getTime()>=216e5,h={id:b.id,okStreak:0,lastSampleAt:d.sampleAt??b.lastSampleAt,lastSeenAt:e.now,message:d.message,causedBy:c,providerIncident:j},i=!b.notifiedOpen&&(!b.pendingSince||e.now.getTime()-b.pendingSince.getTime()>=216e5);(g||i)&&!z(b,e.now)&&!c&&null===b.pending&&w(a)&&(h.pending=g?"repeat":"open"),f.touch.push(h);continue}if(!g._[b.ruleKey].sampled||null===d.sampleAt){k(b);continue}if(!(null===b.lastSampleAt||d.sampleAt.getTime()>b.lastSampleAt.getTime()))continue;let l=b.okStreak+1;l>=2?k(b):f.touch.push({id:b.id,okStreak:l,lastSampleAt:d.sampleAt})}for(let a of b){if("firing"!==a.status||j.has(A(a.rule,a.subject))||e.maintenance.has(a.subject)||a.resourceId&&e.maintenance.has(a.resourceId))continue;let b=h.get(a.rule);if(!b)continue;let c=x(a,e);f.open.push({ruleKey:a.rule,subject:a.subject,resourceId:a.resourceId,accountId:a.accountId,severity:y(b.severity,a.severity),title:a.title,message:a.message,startedAt:e.now,lastSeenAt:e.now,lastSampleAt:a.sampleAt,causedBy:c,providerIncident:a.provider?e.incidents.get(a.provider)??null:null,pending:c||!w(b)?null:"open"})}return f}(i.filter(a=>(0,g.h)(a.ruleKey)).map(a=>({id:a.id,ruleKey:a.ruleKey,subject:a.subject,okStreak:a.okStreak,lastSampleAt:a.lastSampleAt,silencedUntil:a.silencedUntil,silencedUntilResolved:a.silencedUntilResolved,notifiedOpen:a.notifiedOpen,lastNotifiedAt:a.lastNotifiedAt,pending:a.pending,pendingSince:a.pendingSince})),l,m,h,{now:a,collectorStale:p,mutedApps:r,incidents:s,maintenance:u});return v.open.length||v.touch.length||v.resolve.length?(await (0,e.f)().transaction(async c=>{for(let b of v.open)await c.insert(f.alerts).values({...b,pendingSince:b.pending?a:null}).onConflictDoNothing();for(let d of v.touch){let{id:e,pending:g,...h}=d;await c.update(f.alerts).set({...h,...g?{pending:g,pendingSince:a}:{}}).where((0,b.b)((0,b.u)(f.alerts.id,e),(0,b.M)(f.alerts.resolvedAt)))}for(let d of v.resolve)await c.update(f.alerts).set({resolvedAt:a,pending:d.pending,pendingSince:d.pending?a:null}).where((0,b.b)((0,b.u)(f.alerts.id,d.id),(0,b.M)(f.alerts.resolvedAt)))}),{opened:v.open.length,resolved:v.resolve.length}):{opened:0,resolved:0}}async function aC(){let[a]=await (0,e.f)().select({n:d.B`count(*)::int`}).from(f.alerts).where((0,b.b)((0,b.M)(f.alerts.resolvedAt),(0,b.y)(f.alerts.severity,["critical","warning"])));return a?.n??0}let aD=d.B`case ${f.alerts.severity} when 'critical' then 0 when 'warning' then 1 else 2 end`;async function aE(){return(await (0,e.f)().select({a:f.alerts,name:f.resources.name,kind:f.resources.kind}).from(f.alerts).leftJoin(f.resources,(0,b.u)(f.resources.id,f.alerts.resourceId)).where((0,b.M)(f.alerts.resolvedAt)).orderBy(aD,(0,c.A)(f.alerts.startedAt)).limit(200)).map(({a,name:b,kind:c})=>({...a,resourceName:b??null,resourceKind:c??null}))}async function aF(a){return(await (0,e.f)().select({id:f.alerts.id,ruleKey:f.alerts.ruleKey,severity:f.alerts.severity,title:f.alerts.title,resourceId:f.alerts.resourceId,startedAt:f.alerts.startedAt,resolvedAt:f.alerts.resolvedAt}).from(f.alerts).where((0,b.b)((0,b.E)(f.alerts.resolvedAt),(0,b.B)(f.alerts.resolvedAt,new Date(a.getTime()-6048e5)))).orderBy((0,c.A)(f.alerts.resolvedAt)).limit(50)).flatMap(a=>a.resolvedAt?[{...a,resolvedAt:a.resolvedAt}]:[])}async function aG(){let[a,c,h]=await Promise.all([aA(),(0,e.f)().select({key:f.alerts.ruleKey,n:d.B`count(*)::int`}).from(f.alerts).where((0,b.M)(f.alerts.resolvedAt)).groupBy(f.alerts.ruleKey),(0,e.f)().select({kind:f.resources.kind}).from(f.resources).innerJoin(f.snapshots,(0,b.u)(f.snapshots.resourceId,f.resources.id)).where((0,b.b)((0,b.u)(f.resources.monitored,!0),(0,b.M)(f.resources.goneAt))).groupBy(f.resources.kind)]),i=new Set(h.map(a=>a.kind)),j={databases:["supabase_project","neon_project","firestore"].some(a=>i.has(a)),domains:i.has("domain")||i.has("zone"),dns:i.has("zone")};return g.u.flatMap(b=>{let d=a.find(a=>a.key===b);if(!d)return[];let e=g._[b].needs;return[{rule:d,firing:c.find(a=>a.key===b)?.n??0,hasData:null===e||j[e]}]})}async function aH(a,c,d,g){let h="off"===c?{silencedUntil:null,silencedUntilResolved:!1,silencedBy:null}:{...D(c,g),silencedBy:d},[i]=await (0,e.f)().update(f.alerts).set(h).where((0,b.b)((0,b.u)(f.alerts.id,a),(0,b.M)(f.alerts.resolvedAt))).returning({ruleKey:f.alerts.ruleKey,title:f.alerts.title,resourceId:f.alerts.resourceId});return i??null}async function aI(a,c){return(await (0,e.f)().update(f.alertRules).set({...c,updatedAt:new Date}).where((0,b.u)(f.alertRules.key,a)).returning({key:f.alertRules.key})).length>0}a.s(["$",0,aB,"q",0,aE,"I",0,aF,"X",0,aC,"y",0,aG,"z",0,aI,"N",0,aH],455317)},425238,a=>{var b=a.i(609007),c=a.i(556987);let d=/(?<![\p{L}\p{N}_])(?:w[bp]_[A-Za-z0-9]{6,}|hb_[0-9a-f]{6,}|sk-[A-Za-z0-9_-]{6,}|gsk_[A-Za-z0-9]{6,}|AIza[0-9A-Za-z_-]{8,}|AQ\.[A-Za-z0-9_-]{8,})/gu,e=/\b[a-z][a-z0-9+.-]*:\/\/[^\s/?#"'<>)]*(\/[^\s?#"'<>)]*)?(?:[?#][^\s"'<>)]*)?/gi,f="[\\p{L}\\p{N}_-]",g=a=>a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),h=new WeakMap,i=[RegExp(d.source,"u"),/\b(?:Bearer|Basic)\s+[A-Za-z0-9._~+/=-]{12,}/i,/\beyJ[\w-]{8,}\.[\w-]{8,}\.[\w-]{8,}/,/\b[a-z][a-z0-9+.-]*:\/\/[^\s/@:]+:[^\s/@]+@/i,/\b[A-Fa-f0-9]{40,}\b/,/\b(?=[A-Za-z0-9_-]*\d)(?=[A-Za-z0-9_-]*[A-Za-z])[A-Za-z0-9_-]{40,}\b/];a.s(["G",0,function(a){return i.some(b=>b.test(a))},"F",0,function(a,i){let j=(0,b.h)(a);j=(0,c.J)(j,i);let k=function(a){if(h.has(a))return h.get(a);let b=new Map((a.account??[]).filter(a=>a.name.trim().length>=2).map(a=>[a.name.toLowerCase(),a.alias])),c=[...b.keys()].sort((a,b)=>b.length-a.length),d=c.length?{re:RegExp(`(?<!${f})(?:${c.map(g).join("|")})(?!${f})`,"giu"),alias:b}:null;return h.set(a,d),d}(i);return k&&(j=j.replace(k.re,a=>k.alias.get(a.toLowerCase())??a)),(j=(j=(j=j.replace(d,"[hidden]")).replace(/hb_\[hidden\]/g,"[hidden]")).replace(e,(a,b)=>b??"[url]")).replace(/@/g,"(at)")}])}]})();
1
+ (()=>{"use strict";module.exports=[455317,71575,569057,912283,930270,a=>{var b=a.i(93321),c=a.i(530385),d=a.i(351674),e=a.i(548734),f=a.i(837137),g=a.i(927262),h=a.i(201516),i=a.i(273133),j=a.i(120213);let k=a=>Math.round(a).toLocaleString("en-US"),l=(a,b)=>Math.floor((a.getTime()-b.getTime())/864e5),m=(a,b)=>`${a} ${b}${1===a?"":"s"}`,n=a=>{try{let b=new URL(a);return`${b.host}${b.pathname}`}catch{return a}},o=a=>{try{return new URL(a).pathname}catch{return"/"}},p="Down · ",q=(a,b,c)=>({rule:a,subject:b,status:"unknown",resourceId:null,accountId:null,title:b,message:"",provider:null,sampleAt:null,...c}),r=a=>"firestore"===a.provider?"firebase":"d1"===a.provider?"cloudflare":a.provider,s=new Set(["turso","upstash","d1"]),t={MonitorDown:(a,b)=>a.monitors.map(a=>{let c=q("MonitorDown",a.id,{resourceId:a.appId,title:`${a.appName} ${"heartbeat"===a.kind?a.url:o(a.url)}`,provider:"vercel",sampleAt:a.lastCheckedAt}),d=b??3;if("heartbeat"===a.kind){let b;return{...c,status:"err"===a.state?"firing":"ok"===a.state?"ok":"unknown",message:`${a.appName} \xb7 ${a.url}: ${b=a.lastError,b?.startsWith(p)?b.slice(p.length):"no ping in time"}.`}}return a.failStreak>=d?{...c,status:"firing",message:(0,h.H)(a)?`${n(a.url)} failed its check (${(0,h.H)(a)}) on ${d} consecutive checks.`:`${n(a.url)} returned ${a.lastStatus?`HTTP ${a.lastStatus}`:"no answer"} on ${d} consecutive checks.`}:{...c,status:0===a.failStreak&&a.lastCheckedAt?"ok":"unknown",message:`${n(a.url)} answers again.`}}),CollectorStale:(a,b)=>{let c=a.lastMinuteRunAt;return[q("CollectorStale","collector",{status:!c||a.now.getTime()-c.getTime()>(b??5)*6e4?"firing":"ok",title:"collector",message:c?`The last minute run finished ${k((a.now.getTime()-c.getTime())/6e4)} min ago.`:"The collector hasn't finished a run yet."})]},HighLatency:(a,b)=>a.monitors.filter(a=>"http"===a.kind).map(a=>{let c=q("HighLatency",a.id,{resourceId:a.appId,title:`${a.appName} ${o(a.url)}`,provider:"vercel",sampleAt:a.lastCheckedAt});if(a.checksLast10<5||null===a.p95Last10)return c;let d=b??1500;return{...c,status:a.p95Last10>d?"firing":"ok",message:`p95 ${k(a.p95Last10)} ms over the last 10 minutes (limit ${k(d)} ms).`}}),DeploymentFailed:a=>a.apps.map(a=>{let b=q("DeploymentFailed",a.id,{resourceId:a.id,title:a.name,provider:"vercel"}),c=a.latestProduction;return c?"error"===c.state?{...b,status:"firing",message:`Production deployment ${c.sha?c.sha.slice(0,7):"(no commit)"} failed.`}:{...b,status:"building"===c.state?"unknown":"ok"}:{...b,status:"ok"}}),DatabasePaused:a=>a.dbs&&a.dbs.filter(a=>"supabase"===a.provider).map(a=>q("DatabasePaused",a.id,{resourceId:a.id,title:a.name,provider:"supabase",status:"unknown"===a.state?"unknown":"paused"===a.state?"firing":"ok",message:`Supabase project ${a.name} is paused.`})),CertExpiringSoon:(a,b)=>a.domains&&a.domains.map(c=>{let d=q("CertExpiringSoon",c.id,{resourceId:c.id,title:c.name,provider:"cloudflare"});if(!c.tlsNotAfter)return d;let e=l(c.tlsNotAfter,a.now);return{...d,status:e<(b??14)?"firing":"ok",message:`The TLS certificate of ${c.name} expires in ${m(e,"day")}.`}}),DomainExpiringSoon:(a,b)=>a.domains&&a.domains.map(c=>{let d=q("DomainExpiringSoon",c.id,{resourceId:c.id,title:c.name,provider:"cloudflare"});if(!c.expiresAt)return d;let e=l(c.expiresAt,a.now);return{...d,status:e<(b??30)?"firing":"ok",message:`${c.name} expires in ${m(e,"day")}.`}}),StorageAlmostFull:(a,b)=>a.dbs&&a.dbs.filter(a=>"firestore"!==a.provider).map(a=>{let c=q("StorageAlmostFull",a.id,{resourceId:a.id,title:a.name,provider:r(a)});if(null===a.sizeBytes||!a.sizeLimitBytes)return c;let d=a.sizeBytes/a.sizeLimitBytes*100;return{...c,status:d>(b??80)?"firing":"ok",message:`${a.name} uses ${k(a.sizeBytes/1e6)} MB of ${k(a.sizeLimitBytes/1e6)} MB (${k(d)}%).`}}),NeonComputeHigh:(a,b)=>a.dbs&&a.dbs.filter(a=>"neon"===a.provider).map(a=>{let c=q("NeonComputeHigh",a.id,{resourceId:a.id,title:a.name,provider:"neon"});return null===a.cuHours?c:{...c,status:a.cuHours>(b??80)?"firing":"ok",message:`${a.name} used ${k(a.cuHours)} of ${k(a.cuLimit??100)} CU-hours this month.`}}),FirestoreQuotaHigh:(a,b)=>a.dbs&&a.dbs.filter(a=>"firestore"===a.provider).map(a=>{let c=q("FirestoreQuotaHigh",a.id,{resourceId:a.id,title:a.name,provider:"firebase"});if(a.quotaExhausted)return{...c,status:"firing",message:`${a.name} hit a Firestore quota (RESOURCE_EXHAUSTED).`};if(null===a.readsToday||!a.readsLimit)return!1===a.quotaExhausted?{...c,status:"ok"}:c;let d=a.readsToday/a.readsLimit*100;return{...c,status:d>(b??80)?"firing":"ok",message:`${a.name} read ${k(a.readsToday)} of ${k(a.readsLimit)} documents today (${k(d)}%).`}}),AutoPauseRisk:(a,b)=>a.dbs&&a.dbs.filter(a=>"supabase"===a.provider).map(c=>{let d=q("AutoPauseRisk",c.id,{resourceId:c.id,title:c.name,provider:"supabase"});if("paused"===c.state)return{...d,status:"ok"};if(!c.lastApiAt)return d;let e=Math.floor((a.now.getTime()-c.lastApiAt.getTime())/864e5);return{...d,status:e>=(b??4)?"firing":"ok",message:`No API traffic for ${m(e,"day")}. Supabase pauses free projects after about 7 days.`}}),DnsProxiedToVercel:a=>a.dns&&a.dns.map(a=>q("DnsProxiedToVercel",a.id,{resourceId:a.resourceId,title:a.name,provider:"cloudflare",status:a.proxied&&a.pointsToVercel?"firing":"ok",message:`${a.name} points to Vercel through the Cloudflare proxy. Vercel recommends DNS only.`})),DbQuotaHigh:(a,b)=>a.dbs&&a.dbs.filter(a=>s.has(a.provider)).map(a=>{let c=q("DbQuotaHigh",a.id,{resourceId:a.id,title:a.name,provider:r(a)});return null==a.quotaPct?c:{...c,status:a.quotaPct>(b??80)?"firing":"ok",message:`${a.name}: ${a.quotaLabel??"usage"} at ${k(a.quotaPct)}% of the free plan.`}}),ComputeHigh:(a,b)=>a.compute?a.compute.map(c=>{let d=q("ComputeHigh",c.id,{resourceId:c.id,title:c.name,provider:"supabase",sampleAt:c.latest?new Date(c.latest.at):null}),e=(0,i.B)(c.latest,(0,i.V)(b),a.now);return null===e?d:{...d,status:e.length?"firing":"ok",message:e.length?`${c.name}: ${e.join(", ")}.`:`${c.name} compute is back under the limits.`}}):null,CredentialExpiring:(a,b)=>a.accounts.map(c=>{let d=q("CredentialExpiring",c.id,{accountId:c.id,title:`${c.provider} \xb7 ${c.label}`,provider:c.provider});if("drive"===c.provider&&"error"===c.status&&c.lastError?.includes("invalid_grant"))return{...d,status:"firing",message:"Google Drive access was removed (invalid_grant). Reconnect it."};if(!c.expiresAt)return{...d,status:"ok"};let e=l(c.expiresAt,a.now);return{...d,status:e<(b??14)?"firing":"ok",message:e<0?`The ${c.provider} credential ${c.label} has expired.`:`The ${c.provider} credential ${c.label} expires in ${m(e,"day")}.`}}),VulnerableDependency:a=>a.deps?a.deps.flatMap(b=>{let c=a.apps.find(a=>a.id===b.appId);if(!c)return[];let d=q("VulnerableDependency",b.appId,{resourceId:b.appId,title:c.name,provider:"github"});if(b.error)return[d];let e=(0,j.g)(b.vulns);return e?[{...d,status:"firing",message:(0,j.L)(b.vulns),..."critical"===e?{severity:"critical"}:{}}]:[{...d,status:"ok",message:`${c.name} has no high or critical dependency advisories.`}]}):null},u=["MonitorDown","HighLatency"],v=["telegram","discord"],w=a=>a.channels.some(a=>v.includes(a));function x(a,b){return b.collectorStale&&"CollectorStale"!==a.rule?"CollectorStale":a.resourceId&&u.includes(a.rule)?b.mutedApps.get(a.resourceId)??null:null}let y=(a,b)=>"critical"===b&&"warning"===a?"critical":a,z=(a,b)=>a.silencedUntilResolved||null!==a.silencedUntil&&a.silencedUntil.getTime()>b.getTime(),A=(a,b)=>`${a}|${b}`;var B=a.i(519051),C=a.i(160147),D=a.i(245710);function E(a,b){return"1h"===a?{silencedUntil:new Date(b.getTime()+36e5),silencedUntilResolved:!1}:{silencedUntil:null,silencedUntilResolved:!0}}a.s(["_",0,[["critical","Critical"],["warning","Warning"],["info","Info"]],"O",0,function(a,b){return a.silencedUntilResolved?{state:"off",text:"Silenced until resolved"}:a.silencedUntil&&a.silencedUntil.getTime()>b.getTime()?{state:"off",text:`Silenced until ${(0,D.U)(a.silencedUntil)}`}:"open"===a.pending||"repeat"===a.pending?{state:"build",text:"Sending…"}:a.causedBy&&!a.notifiedOpen?{state:"off",text:"Muted"}:a.lastNotifiedAt?{state:"ok",text:`Sent ${(0,D.U)(a.lastNotifiedAt)}`}:{state:"off",text:"Digest only"}},"G",0,function(a){return a.enabled?a.firing?{state:"err",text:`Firing \xb7 ${a.firing}`}:a.hasData?{state:"off",text:"Inactive"}:{state:"unknown",text:"No data yet"}:{state:"off",text:"Disabled"}},"A",0,E,"M",0,function(a,b){let c=Math.max(1,Math.round((b.getTime()-a.getTime())/6e4));if(c<60)return`${c} min`;let d=Math.floor(c/60);return d<24?`${d} h ${c%60} min`:`${Math.floor(d/24)} d ${d%24} h`}],71575);var F=a.i(639271),G=a.i(656298),H=a.i(688275),I=a.i(893893),J=a.i(672319),K=a.i(188546),L=a.i(233711);async function M(){let[a]=await (0,e.f)().select({at:f.collectorRuns.finishedAt}).from(f.collectorRuns).where((0,b.b)((0,b.E)(f.collectorRuns.finishedAt),(0,b.y)(f.collectorRuns.trigger,["cron_job_org","qstash","manual"]))).orderBy((0,c.A)(f.collectorRuns.finishedAt)).limit(1);return a?.at??null}async function N(){let[a]=await (0,e.f)().select({at:f.collectorRuns.finishedAt}).from(f.collectorRuns).where((0,b.b)((0,b.E)(f.collectorRuns.finishedAt),(0,b.y)(f.collectorRuns.trigger,["cron_job_org","manual"]))).orderBy((0,c.A)(f.collectorRuns.finishedAt)).limit(1);return a?.at??null}a.s(["D",0,M,"d",0,N],569057);var O=a.i(367247),P=a.i(84877),Q=a.i(679662);let R=/^v?(\d+)\.(\d+)\.(\d+)(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$/;function S(a,b){let c=R.exec(a.trim()),d=R.exec(b.trim());return!!c&&!!d&&c[1]===d[1]&&("0"!==c[1]||c[2]===d[2])&&(0,P.f)(b,a)>=0}function T(a,b){if(!b)return{deps:a,stale:[]};let c=[...Object.entries(b.dependencies).map(([a,b])=>[a,b,!1]),...Object.entries(b.optionalDependencies).map(([a,b])=>[a,b,!1]),...Object.entries(b.devDependencies).map(([a,b])=>[a,b,!0])],d=[...a],e=[];for(let[a,b,f]of c){let c=(0,Q.Y)(b);if(!c||!(0,Q.C)(c))continue;let g=d.filter(b=>b.name===a);!g.length||g.some(a=>(0,P.f)(a.version,c)>=0)||((d=d.filter(b=>b.name!==a)).push({name:a,version:c,dev:g.every(a=>a.dev)&&f}),e.push(a))}return{deps:d,stale:e}}let U=a=>`Lockfile tertinggal — jalankan npm install (${a.slice(0,5).join(", ")}${a.length>5?`, +${a.length-5}`:""}).`;a.s(["M",0,U,"a",0,function(a,b,c){if(!a.length)return{ok:!1,why:"nothing"};let d=a.filter(a=>c.includes(a.severity));if(!d.length)return{ok:!1,why:"severity"};for(let a of d){let c=b.get(a.package);if(!c||!S(c,a.to))return{ok:!1,why:"major"}}return{ok:!0,upgrades:d}},"m",0,T,"D",0,function(a){let b=new Map;for(let c of a){if(!c.direct)continue;let a=b.get(c.package);(!a||0>(0,P.f)(c.installedVersion,a))&&b.set(c.package,c.installedVersion)}return b},"U",0,function(a,b){for(let c of b){let b=function(a){if(a.packages?.length)return a.packages;let b=/^Watch(?:bell|post): update (\S+) (?:to|ke) /.exec(a.title);return b?[b[1]]:"all"}(c);if("all"===b||a.some(a=>b.includes(a)))return c}return null},"J",0,S],912283);var V=a.i(358179),W=a.i(492665),X=a.i(683439),Y=a.i(852539),Z=a.i(33135),$=a.i(533957);let _="OpsConsole-Deps/1.0 (+https://west-solutions.web.id)";async function aa(a,b,c,d){let e=d.deadline-Date.now();if(e<500)return{ok:!1,error:"No time left for OSV.dev"};let f=AbortSignal.timeout(e);return ac(a,{method:"POST",headers:{"content-type":"application/json","user-agent":_},body:JSON.stringify(b),signal:f},c,f,d)}async function ab(a,b,c){let d=c.deadline-Date.now();if(d<500)return{ok:!1,error:"No time left for OSV.dev"};let e=AbortSignal.timeout(Math.min(d,8e3));return ac(a,{method:"GET",headers:{"user-agent":_},signal:e},b,e,c)}async function ac(a,b,c,d,e){let f;try{f=await (e.fetch??fetch)(a,{...b,redirect:"error",cache:"no-store"})}catch(a){return{ok:!1,error:(0,$.t)(a)?"OSV.dev didn't answer in time":"Couldn't reach OSV.dev"}}if(!f.ok)return await f.body?.cancel().catch(()=>void 0),{ok:!1,error:`OSV.dev answered HTTP ${f.status}`};try{let{bytes:a,truncated:b}=await (0,Z.z)(f,c,(0,Z.X)(d));if(b)return{ok:!1,error:"OSV.dev sent too large an answer"};return{ok:!0,body:JSON.parse(new TextDecoder().decode(a))}}catch(a){return{ok:!1,error:(0,$.t)(a)?"OSV.dev didn't answer in time":"OSV.dev sent an answer we couldn't read"}}}async function ad(a,b){let c=[];for(let d of(0,Y.f)(a)){let a=await aa(Y.n,d,4194304,b);if(!a.ok)return a;let e=(0,Y.j)(a.body,d.queries.length);if(!e)return{ok:!1,error:"OSV.dev sent an answer we couldn't read"};c.push(...e)}return{ok:!0,ids:c}}async function ae(a,b){let c=[...new Set(a)].filter(Y.G);if(c.length>300)return{ok:!1,error:`Too many advisories to read in one scan (${c.length})`};let d=new Map,e=null;for(let a=0;a<c.length&&!e;a+=8)await Promise.all(c.slice(a,a+8).map(async a=>{let c=await ab(`${Y.W}${encodeURIComponent(a)}`,1048576,b),f=c.ok?(0,Y.O)(c.body):null;f?d.set(a,f):e??=c.ok?"OSV.dev sent an advisory we couldn't read":c.error}));return e?{ok:!1,error:e}:{ok:!0,map:d}}var af=a.i(689963),ag=a.i(26972),ah=a.i(427221),ai=a.i(811365),aj=a.i(760417);let ak=af.z.array(ag.z.object({name:ah.z.string(),type:ah.z.string(),sha:ah.z.string(),size:ai.z.number().optional()}));async function al(a,b,c,d={}){if(!(0,aj.M)(b)||!(0,aj.c)(c))return{ok:!1,kind:"format",error:"That isn't a repository name or ref."};let e=await (0,aj.j)(`/repos/${(0,aj.f)(b)}/contents/?ref=${encodeURIComponent(c)}`,a,d);if(!e.ok)return e;let f=ak.safeParse(e.data);return f.success?{ok:!0,data:f.data.filter(a=>"file"===a.type&&/^[0-9a-f]{40}$/.test(a.sha)).map(a=>({name:a.name,sha:a.sha,size:a.size??0}))}:{ok:!1,kind:"format",error:"GitHub answered the file list in a format the console doesn't recognise."}}function am(a,b,c,d,e,f={}){return(0,aj.V)(a,b,c,d,e,f)}async function an(a,b,c={}){if(!(0,aj.M)(b))return{ok:!1,kind:"format",error:"That isn't a repository name."};let d=await (0,aj.j)(`/repos/${(0,aj.f)(b)}/dependabot/alerts?state=open&ecosystem=npm&per_page=100`,a,c);if(!d.ok)return"scope"===d.kind||"missing"===d.kind?{ok:!0,data:{denied:!0}}:d;let e=(0,j.E)(d.data);return e?{ok:!0,data:{alerts:e}}:{ok:!1,kind:"format",error:"GitHub answered the Dependabot alerts in a format the console doesn't recognise."}}async function ao(){let[a]=await (0,e.f)().select().from(f.accounts).where((0,b.u)(f.accounts.provider,"github")).orderBy((0,c.M)(f.accounts.createdAt)).limit(1);if(!a)return{error:"GitHub isn't connected."};let d=(0,V.V)({ciphertext:a.credentialCiphertext,iv:a.credentialIv},(0,W.f)().OPS_ENCRYPTION_KEY);return d?{token:d,accountId:a.id}:{error:"Can't read the stored GitHub credential. Replace it on Connections."}}let ap=(a,b)=>a.length>b?`${a.slice(0,b-1)}…`:a;async function aq(a,b){let c=new Date;await (0,e.f)().insert(f.dependencyScans).values({repoId:a,...b,updatedAt:c}).onConflictDoUpdate({target:f.dependencyScans.repoId,set:{...b,updatedAt:c}})}async function ar(a){return(0,e.f)().select({id:f.dependencyVulns.id,package:f.dependencyVulns.package,installedVersion:f.dependencyVulns.installedVersion,vulnId:f.dependencyVulns.vulnId,severity:f.dependencyVulns.severity,fixedVersion:f.dependencyVulns.fixedVersion,summary:f.dependencyVulns.summary,aliases:f.dependencyVulns.aliases,dev:f.dependencyVulns.dev,direct:f.dependencyVulns.direct,source:f.dependencyVulns.source}).from(f.dependencyVulns).where((0,b.b)((0,b.u)(f.dependencyVulns.repoId,a),(0,b.M)(f.dependencyVulns.resolvedAt))).limit(2e3)}async function as(a,c,d,g={}){let h=()=>({...g,timeoutMs:Math.max(1e3,Math.min(d-Date.now(),1e4))}),i=async a=>(await aq(c.id,{error:ap(a,300),scannedAt:new Date}).catch(()=>void 0),{status:"failed",error:a}),k=c.defaultBranch??"HEAD",l=await al(a,c.fullName,k,h());if(!l.ok)return i(l.error);let m=function(a){for(let b of Q.a){let c=a.find(a=>a.name===b.path);if(c)return{path:b.path,kind:b.kind,sha:c.sha}}return null}(l.data),n=l.data.find(a=>"package.json"===a.name)??null,o=m?m.sha:n?`pkg:${n.sha}`:null,[p]=await (0,e.f)().select().from(f.dependencyScans).where((0,b.u)(f.dependencyScans.repoId,c.id)).limit(1),q=new Date;if(!(0,j.U)(p??null,o,q,g.force))return{status:"unchanged"};if(!o){let a=await ar(c.id);return a.length&&await (0,e.f)().update(f.dependencyVulns).set({resolvedAt:q}).where((0,b.y)(f.dependencyVulns.id,a.map(a=>a.id))),await aq(c.id,{lockfilePath:null,lockfileSha:null,packageCount:0,scannedAt:q,queriedAt:q,error:null,note:"No package.json or lockfile at the repository root."}),{status:"scanned",vulns:0,packages:0,note:"no package.json"}}let r=n?await am(a,c.fullName,"package.json",k,aj.$,h()):null;if(r&&!r.ok)return i(r.error);let s=r?.ok&&r.data?(0,Q.b)(r.data):null,t=null,u="package-json",v=null;if(m){if(2e3>d-Date.now())return i("Time budget used before the lockfile was read; the next run tries again.");let b=await am(a,c.fullName,m.path,k,0xf00000,{...g,timeoutMs:Math.max(1e3,Math.min(d-Date.now(),2e4))});if(!b.ok)return i(b.error);t=b.data?(0,Q.D)(m.kind,b.data):null,u=m.kind,t||(v=`${m.path} couldn't be read; the versions come from package.json ranges (approximate).`)}if(t){let a=T(t,s);t=a.deps,a.stale.length&&(v=[v,U(a.stale)].filter(Boolean).join(" "))}else t=s?(0,Q.e)(s):[],u="package-json",v??=m?null:"No lockfile: the versions come from package.json ranges (approximate).";let w=await ar(c.id),x=[];if(t.length){let a=await ad(t,{fetch:g.fetch,deadline:d});if(!a.ok)return i(a.error);let b=(0,j.A)(w,!0===g.force),c=await ae((0,j.z)(t,a.ids,b),{fetch:g.fetch,deadline:d});if(!c.ok)return i(c.error);x=(0,Y.i)(t,a.ids,c.map,b)}if(d-Date.now()>1500){let b=await an(a,c.fullName,h());b.ok&&"alerts"in b.data?x=(0,j.R)(x,b.data.alerts,t):b.ok&&(v=[v,"Dependabot alerts aren't readable with this token (optional: Dependabot alerts: Read)."].filter(Boolean).join(" "))}let y=(0,j.h)(w,x,(0,Q.K)(s)),z=new Date;return await (0,e.f)().transaction(async a=>{for(let d of(y.insert.length&&await a.insert(f.dependencyVulns).values(y.insert.map(a=>({repoId:c.id,package:a.package,installedVersion:a.installedVersion,vulnId:a.vulnId,aliases:a.aliases,severity:a.severity,fixedVersion:a.fixedVersion,summary:a.summary,direct:a.direct,dev:a.dev,source:a.source,firstSeenAt:z,lastSeenAt:z}))).onConflictDoNothing(),y.update))await a.update(f.dependencyVulns).set({severity:d.severity,fixedVersion:d.fixedVersion,summary:d.summary,aliases:d.aliases,dev:d.dev,direct:d.direct,lastSeenAt:z}).where((0,b.u)(f.dependencyVulns.id,d.id));y.resolve.length&&await a.update(f.dependencyVulns).set({resolvedAt:z}).where((0,b.b)((0,b.y)(f.dependencyVulns.id,y.resolve),(0,b.M)(f.dependencyVulns.resolvedAt))),await a.insert(f.dependencyScans).values({repoId:c.id,lockfilePath:m?.path??(n?"package.json":null),lockfileSha:o,packageCount:t.length,scannedAt:z,queriedAt:z,error:null,note:v?ap(v,300):null,updatedAt:z}).onConflictDoUpdate({target:f.dependencyScans.repoId,set:{lockfilePath:m?.path??(n?"package.json":null),lockfileSha:o,packageCount:t.length,scannedAt:z,queriedAt:z,error:null,note:v?ap(v,300):null,updatedAt:z}})}),{status:"scanned",vulns:y.insert.length+y.update.length,packages:t.length,note:"package-json"===u?v:null}}async function at(a){let d={repo:null,scan:null,vulns:[],writeConnected:!1};if(!(0,X.f)(a))return d;let[g]=await (0,e.f)().select({id:f.githubRepos.id,fullName:f.githubRepos.fullName}).from(f.appRepos).innerJoin(f.githubRepos,(0,b.u)(f.githubRepos.id,f.appRepos.repoId)).where((0,b.u)(f.appRepos.appId,a)).limit(1);if(!g)return d;let[[h],i,[k]]=await Promise.all([(0,e.f)().select({scannedAt:f.dependencyScans.scannedAt,lockfilePath:f.dependencyScans.lockfilePath,packageCount:f.dependencyScans.packageCount,error:f.dependencyScans.error,note:f.dependencyScans.note}).from(f.dependencyScans).where((0,b.u)(f.dependencyScans.repoId,g.id)).limit(1),(0,e.f)().select({package:f.dependencyVulns.package,installedVersion:f.dependencyVulns.installedVersion,vulnId:f.dependencyVulns.vulnId,severity:f.dependencyVulns.severity,fixedVersion:f.dependencyVulns.fixedVersion,summary:f.dependencyVulns.summary,aliases:f.dependencyVulns.aliases,dev:f.dependencyVulns.dev,direct:f.dependencyVulns.direct,firstSeenAt:f.dependencyVulns.firstSeenAt}).from(f.dependencyVulns).where((0,b.b)((0,b.u)(f.dependencyVulns.repoId,g.id),(0,b.M)(f.dependencyVulns.resolvedAt))).limit(2e3),(0,e.f)().select({id:f.accounts.id}).from(f.accounts).where((0,b.u)(f.accounts.provider,"github_write")).limit(1)]);i.sort((a,b)=>(0,j.t)(a.severity)-(0,j.t)(b.severity)||(a.package<b.package?-1:+(a.package>b.package))||(a.vulnId<b.vulnId?-1:1));let l=await (0,e.f)().select({number:f.dependencyPrs.number,stage:f.dependencyPrs.stage,stageText:f.dependencyPrs.stageText,openedAt:f.dependencyPrs.openedAt}).from(f.dependencyPrs).where((0,b.b)((0,b.u)(f.dependencyPrs.repoId,g.id),(0,b.B)(f.dependencyPrs.openedAt,new Date(Date.now()-12096e5)))).orderBy((0,c.A)(f.dependencyPrs.openedAt)).limit(5).catch(()=>[]);return{repo:g,scan:h??null,vulns:i,writeConnected:!!k,prs:(l??[]).map(a=>({...a,fullName:g.fullName}))}}async function au(a,c={}){if(!(0,X.f)(a))return{ok:!1,error:"That app no longer exists."};let[g]=await (0,e.f)().select({app:f.resources.name,id:f.githubRepos.id,fullName:f.githubRepos.fullName,defaultBranch:f.githubRepos.defaultBranch,goneAt:f.githubRepos.goneAt}).from(f.appRepos).innerJoin(f.githubRepos,(0,b.u)(f.githubRepos.id,f.appRepos.repoId)).innerJoin(f.resources,(0,b.u)(f.resources.id,f.appRepos.appId)).where((0,b.u)(f.appRepos.appId,a)).limit(1);if(!g)return{ok:!1,error:"Link a repository first."};if(g.goneAt)return{ok:!1,error:"That repository is no longer shared with the GitHub token."};let h=await ao();if("error"in h)return{ok:!1,error:h.error};let i=await as(h.token,{id:g.id,fullName:g.fullName,defaultBranch:g.defaultBranch,scannedAt:null},Date.now()+4e4,{...c,force:!0});if("failed"===i.status)return{ok:!1,error:`The scan failed: ${i.error}`};let[j]=await (0,e.f)().select({n:d.B`count(*)::int`}).from(f.dependencyVulns).where((0,b.b)((0,b.u)(f.dependencyVulns.repoId,g.id),(0,b.M)(f.dependencyVulns.resolvedAt))),k=j?.n??0;return{ok:!0,app:g.app,repo:g.fullName,vulns:k,message:k?`${k} known vulnerabilit${1===k?"y":"ies"} in ${i.packages??0} packages.`:`No known vulnerabilities in ${i.packages??0} packages.`}}async function av(a){let c=a.filter(X.f);if(!c.length)return[];let d=await (0,e.f)().select({appId:f.appRepos.appId,repoId:f.appRepos.repoId,error:f.dependencyScans.error}).from(f.appRepos).innerJoin(f.dependencyScans,(0,b.u)(f.dependencyScans.repoId,f.appRepos.repoId)).where((0,b.b)((0,b.y)(f.appRepos.appId,c),(0,b.E)(f.dependencyScans.scannedAt)));if(!d.length)return[];let g=await (0,e.f)().select({repoId:f.dependencyVulns.repoId,package:f.dependencyVulns.package,installedVersion:f.dependencyVulns.installedVersion,fixedVersion:f.dependencyVulns.fixedVersion,severity:f.dependencyVulns.severity,summary:f.dependencyVulns.summary,dev:f.dependencyVulns.dev}).from(f.dependencyVulns).where((0,b.b)((0,b.y)(f.dependencyVulns.repoId,[...new Set(d.map(a=>a.repoId))]),(0,b.M)(f.dependencyVulns.resolvedAt))).limit(1e4);return d.map(a=>({appId:a.appId,repoId:a.repoId,error:a.error,vulns:g.filter(b=>b.repoId===a.repoId).map(a=>({package:a.package,installedVersion:a.installedVersion,fixedVersion:a.fixedVersion,severity:a.severity,summary:a.summary,dev:a.dev}))}))}async function aw(a){let c=a.filter(X.f),d=new Map;if(!c.length)return d;let g=await (0,e.f)().select({appId:f.appRepos.appId,repoId:f.appRepos.repoId}).from(f.appRepos).where((0,b.y)(f.appRepos.appId,c));if(!g.length)return d;let h=await (0,e.f)().select({repoId:f.dependencyVulns.repoId,package:f.dependencyVulns.package,installedVersion:f.dependencyVulns.installedVersion,fixedVersion:f.dependencyVulns.fixedVersion,vulnId:f.dependencyVulns.vulnId,aliases:f.dependencyVulns.aliases,severity:f.dependencyVulns.severity,direct:f.dependencyVulns.direct}).from(f.dependencyVulns).where((0,b.b)((0,b.y)(f.dependencyVulns.repoId,[...new Set(g.map(a=>a.repoId))]),(0,b.M)(f.dependencyVulns.resolvedAt),(0,b.u)(f.dependencyVulns.direct,!0),(0,b.E)(f.dependencyVulns.fixedVersion))).limit(2e3);for(let a of g)(0,j.B)(h.filter(b=>b.repoId===a.repoId)).length&&d.set(a.appId,a.repoId);return d}async function ax(){return(0,e.f)().select({appId:f.links.fromResourceId,dbId:f.links.toResourceId}).from(f.links).where((0,b.u)(f.links.kind,"uses_db")).limit(500)}async function ay(a){let g=(0,b.b)((0,b.u)(f.resources.monitored,!0),(0,b.M)(f.resources.goneAt)),[h,i,j,k,l]=await Promise.all([N(),M(),(0,e.f)().select({m:f.monitors,appName:f.resources.name}).from(f.monitors).innerJoin(f.resources,(0,b.u)(f.resources.id,f.monitors.resourceId)).where((0,b.b)(g,(0,b.u)(f.monitors.paused,!1),(0,b.u)(f.monitors.ownerPaused,!1))),(0,e.f)().select({id:f.resources.id,name:f.resources.name}).from(f.resources).where((0,b.b)(g,(0,b.u)(f.resources.kind,"app"))),(0,e.f)().select({id:f.accounts.id,provider:f.accounts.provider,label:f.accounts.label,expiresAt:f.accounts.expiresAt,status:f.accounts.status,lastError:f.accounts.lastError}).from(f.accounts)]),m=j.map(a=>a.m.id),n=m.length?await (0,e.f)().select({id:f.checks.monitorId,n:d.B`count(*)::int`,p95:d.B`percentile_cont(0.95) within group (order by ${f.checks.latencyMs})::float8`}).from(f.checks).where((0,b.b)((0,b.y)(f.checks.monitorId,m),(0,b.B)(f.checks.at,new Date(a.getTime()-6e5)),(0,b.u)(f.checks.inMaintenance,!1))).groupBy(f.checks.monitorId):[],o=k.map(a=>a.id),p=o.length?await (0,e.f)().selectDistinctOn([f.deployments.resourceId],{appId:f.deployments.resourceId,state:f.deployments.state,sha:f.deployments.commitSha,createdAt:f.deployments.createdAtProvider}).from(f.deployments).where((0,b.b)((0,b.y)(f.deployments.resourceId,o),(0,b.u)(f.deployments.target,"production"))).orderBy(f.deployments.resourceId,(0,c.A)(f.deployments.createdAtProvider)):[],q=await (0,e.f)().select({id:f.resources.id,name:f.resources.name,kind:f.resources.kind,state:f.snapshots.state,data:f.snapshots.data}).from(f.resources).innerJoin(f.snapshots,(0,b.u)(f.snapshots.resourceId,f.resources.id)).where((0,b.b)(g,(0,b.y)(f.resources.kind,["supabase_project","neon_project","firestore","turso_database","upstash_redis","d1_database","zone","domain"]))),r=a=>q.filter(b=>b.kind===a),s=q.filter(a=>["supabase_project","neon_project","firestore","turso_database","upstash_redis","d1_database"].includes(a.kind)),t=r("zone"),u=r("domain"),v=await ax(),w=await (0,O.Y)().catch(()=>null),x=o.length?await av(o).catch(()=>null):null;return{now:a,lastMinuteRunAt:h,lastAnyRunAt:i,monitors:j.map(({m:a,appName:b})=>{let c=n.find(b=>b.id===a.id),d="heartbeat"===a.kind;return{id:a.id,appId:a.resourceId,appName:b,url:d?a.name??"heartbeat":a.url,kind:d?"heartbeat":"http",state:a.state,failStreak:a.failStreak,lastStatus:a.lastStatus,lastError:a.lastError,lastCheckedAt:a.lastCheckedAt,p95Last10:c?.p95??null,checksLast10:c?.n??0}}),apps:k.map(a=>{let b=p.find(b=>b.appId===a.id);return{id:a.id,name:a.name,latestProduction:b?{state:b.state,sha:b.sha,createdAt:b.createdAt}:null}}),accounts:l,dbs:s.length?s.map(b=>(function(a,b){let c={id:a.id,name:a.name,state:a.state,sizeBytes:null,sizeLimitBytes:null,lastApiAt:null,cuHours:null,cuLimit:null,readsToday:null,readsLimit:null,quotaExhausted:null};if("supabase_project"===a.kind){let b=(0,I.k)(I.B,a.data),d=(0,L.Z)(b.lastTrafficAt),e=(0,L.Z)(b.trafficAt),f=d??(e&&!b.trafficError?new Date(e.getTime()-6048e5):null);return{...c,provider:"supabase",sizeBytes:b.sizeBytes??null,sizeLimitBytes:J.R,lastApiAt:f}}if("neon_project"===a.kind){let b=(0,I.k)(I.s,a.data),d=(b.branches??[]).map(a=>a.logicalSize).filter(a=>"number"==typeof a);return{...c,provider:"neon",cuHours:null==b.computeSeconds?null:b.computeSeconds/3600,cuLimit:H.a.cuHours,sizeBytes:d.length?d.reduce((a,b)=>a+b,0):null,sizeLimitBytes:H.a.storageBytes}}if("firestore"===a.kind){let d=(0,I.k)(I.w,a.data),e=(0,L.Z)(d.opsAt),f=null!=d.reads&&e&&e.getTime()>=(0,G.a)(b).getTime()?d.reads:null,g=null!=d.latencyMs||null!=d.pingError;return{...c,provider:"firestore",readsToday:f,readsLimit:G.T.reads,quotaExhausted:g?"RESOURCE_EXHAUSTED"===d.pingReason:null}}if("turso_database"===a.kind){let d=(0,I.k)(I.N,a.data),e=(0,F.u)((0,F.G)(d,b));return{...c,provider:"turso",sizeBytes:d.orgStorageBytes??null,sizeLimitBytes:F.g.storageBytes,quotaPct:e?.pct??null,quotaLabel:e?`${e.label} ${e.text}`:null}}if("upstash_redis"===a.kind){let d=(0,I.k)(I.e,a.data),e=(0,F.u)((0,F.$)(d,b));return{...c,provider:"upstash",sizeBytes:d.storageBytes??null,sizeLimitBytes:F.W.storageBytes,quotaPct:e?.pct??null,quotaLabel:e?`${e.label} ${e.text}`:null}}if("d1_database"===a.kind){let d=(0,I.k)(I.x,a.data),e=(0,F.u)((0,F.I)(d,b));return{...c,provider:"d1",sizeBytes:d.sizeBytes??null,sizeLimitBytes:F.M.dbBytes,quotaPct:e?.pct??null,quotaLabel:e?`${e.label} ${e.text}`:null}}return null})(b,a)).filter(a=>null!==a):null,domains:t.length||u.length?[...t.map(a=>({id:a.id,name:a.name,tlsNotAfter:null,expiresAt:(0,L.Z)((0,K.q)(a.data).rdap?.expiresAt)})),...u.map(a=>({id:a.id,name:a.name,tlsNotAfter:(0,L.Z)((0,K.q)(a.data).tls?.notAfter),expiresAt:null}))]:null,dns:function(a,b){let c=a.filter(a=>Array.isArray(a.data.records));if(!c.length)return null;let d=a.map(a=>a.name),e=[];for(let a of c){let c=b.filter(b=>(0,L.J)(b.name,d)===a.name.toLowerCase().replace(/\.$/,"")),f=[...new Set(c.flatMap(a=>(0,K.q)(a.data).vercel?.recommendedIps??[]))];for(let b of(0,K.q)(a.data).records){if(!(0,L.l)(b,f))continue;let d=b.name.toLowerCase().replace(/\.$/,""),g=c.find(a=>a.name.toLowerCase().replace(/\.$/,"")===d);e.push({id:`${a.id}:${b.id}`,resourceId:g?.id??a.id,name:b.name,proxied:b.proxied,pointsToVercel:!0})}}return e}(t,u),links:v,compute:w,deps:x&&x.length?x:null}}a.s(["j",0,at,"C",0,aw,"a",0,av,"h",0,au],930270);var az=a.i(714530),aA=a.i(396667);let aB={vercel:"Vercel",supabase:"Supabase",neon:"Neon",cloudflare:"Cloudflare",firebase:"Firebase",gcp:"Google Cloud"};async function aC(){return(await (0,e.f)().select().from(f.alertRules)).filter(a=>(0,g.h)(a.key)).map(a=>({key:a.key,severity:a.severity,threshold:a.threshold,enabled:a.enabled,channels:a.channels}))}async function aD(a,c={}){let[d,h,i,j,k,l]=await Promise.all([ay(a),aC(),(0,e.f)().select().from(f.alerts).where((0,b.M)(f.alerts.resolvedAt)),(0,e.f)().select({provider:f.providerStatus.provider,state:f.providerStatus.state}).from(f.providerStatus),(0,az.w)(),(0,aA.I)()]),m=new Map(d.accounts.map(a=>[a.id,a.provider])),n=i.filter(a=>!(0,C.O)(l,a.ruleKey,a.accountId?m.get(a.accountId):null)),o=function(a,b,c){let d=[],e=new Set;for(let f of b){if(!f.enabled||c&&!c.includes(f.key)||!g._[f.key])continue;let b=t[f.key](a,f.threshold);b&&(e.add(f.key),d.push(...b))}return{observations:d,evaluated:e}}(d,h,c.only),p=o.evaluated,q=o.observations.filter(a=>!(0,C.O)(l,a.rule,a.provider)),r=h.find(a=>"CollectorStale"===a.key),s=void 0===d.lastAnyRunAt?d.lastMinuteRunAt:d.lastAnyRunAt,u=!!r?.enabled&&(!s||a.getTime()-s.getTime()>(r.threshold??5)*6e4),v=new Map((d.dbs??[]).filter(a=>"paused"===a.state).map(a=>[a.id,a.name])),D=new Map(d.links.filter(a=>v.has(a.dbId)).map(a=>[a.appId,`DatabasePaused \xb7 ${v.get(a.dbId)}`])),E=new Map(j.filter(a=>"warn"===a.state||"err"===a.state).map(a=>["gcp"===a.provider?"firebase":a.provider,aB[a.provider]??a.provider])),F=(0,B.u)(k,d.monitors.map(a=>({id:a.id,appId:a.appId})),a,d.apps.map(a=>a.id)),G=function(a,b,c,d,e){let f={open:[],touch:[],resolve:[]},h=new Map(d.map(a=>[a.key,a])),i=new Map(b.map(a=>[A(a.rule,a.subject),a])),j=new Set(a.map(a=>A(a.ruleKey,a.subject))),k=a=>f.resolve.push({id:a.id,pending:a.notifiedOpen?"resolve":null});for(let b of a){let a=h.get(b.ruleKey),d=i.get(A(b.ruleKey,b.subject));if(!a||!a.enabled){f.resolve.push({id:b.id,pending:null});continue}if(!c.has(b.ruleKey))continue;if(!d){f.resolve.push({id:b.id,pending:null});continue}if("unknown"===d.status)continue;let j=d.provider?e.incidents.get(d.provider)??null:null;if("firing"===d.status){let c=x(d,e),g=b.notifiedOpen&&null!==b.lastNotifiedAt&&e.now.getTime()-b.lastNotifiedAt.getTime()>=216e5,h={id:b.id,okStreak:0,lastSampleAt:d.sampleAt??b.lastSampleAt,lastSeenAt:e.now,message:d.message,causedBy:c,providerIncident:j},i=!b.notifiedOpen&&(!b.pendingSince||e.now.getTime()-b.pendingSince.getTime()>=216e5);(g||i)&&!z(b,e.now)&&!c&&null===b.pending&&w(a)&&(h.pending=g?"repeat":"open"),f.touch.push(h);continue}if(!g._[b.ruleKey].sampled||null===d.sampleAt){k(b);continue}if(!(null===b.lastSampleAt||d.sampleAt.getTime()>b.lastSampleAt.getTime()))continue;let l=b.okStreak+1;l>=2?k(b):f.touch.push({id:b.id,okStreak:l,lastSampleAt:d.sampleAt})}for(let a of b){if("firing"!==a.status||j.has(A(a.rule,a.subject))||e.maintenance.has(a.subject)||a.resourceId&&e.maintenance.has(a.resourceId))continue;let b=h.get(a.rule);if(!b)continue;let c=x(a,e);f.open.push({ruleKey:a.rule,subject:a.subject,resourceId:a.resourceId,accountId:a.accountId,severity:y(b.severity,a.severity),title:a.title,message:a.message,startedAt:e.now,lastSeenAt:e.now,lastSampleAt:a.sampleAt,causedBy:c,providerIncident:a.provider?e.incidents.get(a.provider)??null:null,pending:c||!w(b)?null:"open"})}return f}(n.filter(a=>(0,g.h)(a.ruleKey)).map(a=>({id:a.id,ruleKey:a.ruleKey,subject:a.subject,okStreak:a.okStreak,lastSampleAt:a.lastSampleAt,silencedUntil:a.silencedUntil,silencedUntilResolved:a.silencedUntilResolved,notifiedOpen:a.notifiedOpen,lastNotifiedAt:a.lastNotifiedAt,pending:a.pending,pendingSince:a.pendingSince})),q,p,h,{now:a,collectorStale:u,mutedApps:D,incidents:E,maintenance:F});return G.open.length||G.touch.length||G.resolve.length?(await (0,e.f)().transaction(async c=>{for(let b of G.open)await c.insert(f.alerts).values({...b,pendingSince:b.pending?a:null}).onConflictDoNothing();for(let d of G.touch){let{id:e,pending:g,...h}=d;await c.update(f.alerts).set({...h,...g?{pending:g,pendingSince:a}:{}}).where((0,b.b)((0,b.u)(f.alerts.id,e),(0,b.M)(f.alerts.resolvedAt)))}for(let d of G.resolve)await c.update(f.alerts).set({resolvedAt:a,pending:d.pending,pendingSince:d.pending?a:null}).where((0,b.b)((0,b.u)(f.alerts.id,d.id),(0,b.M)(f.alerts.resolvedAt)))}),{opened:G.open.length,resolved:G.resolve.length}):{opened:0,resolved:0}}async function aE(){let a=await (0,aA.I)(),[c]=await (0,e.f)().select({n:d.B`count(*)::int`}).from(f.alerts).where((0,b.b)((0,b.M)(f.alerts.resolvedAt),(0,b.y)(f.alerts.severity,["critical","warning"]),(0,aA.s)(a)));return c?.n??0}let aF=d.B`case ${f.alerts.severity} when 'critical' then 0 when 'warning' then 1 else 2 end`;async function aG(a=new Set){return(await (0,e.f)().select({a:f.alerts,name:f.resources.name,kind:f.resources.kind}).from(f.alerts).leftJoin(f.resources,(0,b.u)(f.resources.id,f.alerts.resourceId)).where((0,b.b)((0,b.M)(f.alerts.resolvedAt),(0,aA.s)(a))).orderBy(aF,(0,c.A)(f.alerts.startedAt)).limit(200)).map(({a,name:b,kind:c})=>({...a,resourceName:b??null,resourceKind:c??null}))}async function aH(a){return(await (0,e.f)().select({id:f.alerts.id,ruleKey:f.alerts.ruleKey,severity:f.alerts.severity,title:f.alerts.title,resourceId:f.alerts.resourceId,startedAt:f.alerts.startedAt,resolvedAt:f.alerts.resolvedAt}).from(f.alerts).where((0,b.b)((0,b.E)(f.alerts.resolvedAt),(0,b.B)(f.alerts.resolvedAt,new Date(a.getTime()-6048e5)))).orderBy((0,c.A)(f.alerts.resolvedAt)).limit(50)).flatMap(a=>a.resolvedAt?[{...a,resolvedAt:a.resolvedAt}]:[])}async function aI(){let[a,c,h]=await Promise.all([aC(),(0,e.f)().select({key:f.alerts.ruleKey,n:d.B`count(*)::int`}).from(f.alerts).where((0,b.M)(f.alerts.resolvedAt)).groupBy(f.alerts.ruleKey),(0,e.f)().select({kind:f.resources.kind}).from(f.resources).innerJoin(f.snapshots,(0,b.u)(f.snapshots.resourceId,f.resources.id)).where((0,b.b)((0,b.u)(f.resources.monitored,!0),(0,b.M)(f.resources.goneAt))).groupBy(f.resources.kind)]),i=new Set(h.map(a=>a.kind)),j={databases:["supabase_project","neon_project","firestore"].some(a=>i.has(a)),domains:i.has("domain")||i.has("zone"),dns:i.has("zone")};return g.u.flatMap(b=>{let d=a.find(a=>a.key===b);if(!d)return[];let e=g._[b].needs;return[{rule:d,firing:c.find(a=>a.key===b)?.n??0,hasData:null===e||j[e]}]})}async function aJ(a,c,d,g){let h="off"===c?{silencedUntil:null,silencedUntilResolved:!1,silencedBy:null}:{...E(c,g),silencedBy:d},[i]=await (0,e.f)().update(f.alerts).set(h).where((0,b.b)((0,b.u)(f.alerts.id,a),(0,b.M)(f.alerts.resolvedAt))).returning({ruleKey:f.alerts.ruleKey,title:f.alerts.title,resourceId:f.alerts.resourceId});return i??null}async function aK(a,c){return(await (0,e.f)().update(f.alertRules).set({...c,updatedAt:new Date}).where((0,b.u)(f.alertRules.key,a)).returning({key:f.alertRules.key})).length>0}a.s(["$",0,aD,"q",0,aG,"I",0,aH,"X",0,aE,"y",0,aI,"z",0,aK,"N",0,aJ],455317)},425238,a=>{var b=a.i(609007),c=a.i(556987);let d=/(?<![\p{L}\p{N}_])(?:w[bp]_[A-Za-z0-9]{6,}|hb_[0-9a-f]{6,}|sk-[A-Za-z0-9_-]{6,}|gsk_[A-Za-z0-9]{6,}|AIza[0-9A-Za-z_-]{8,}|AQ\.[A-Za-z0-9_-]{8,})/gu,e=/\b[a-z][a-z0-9+.-]*:\/\/[^\s/?#"'<>)]*(\/[^\s?#"'<>)]*)?(?:[?#][^\s"'<>)]*)?/gi,f="[\\p{L}\\p{N}_-]",g=a=>a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),h=new WeakMap,i=[RegExp(d.source,"u"),/\b(?:Bearer|Basic)\s+[A-Za-z0-9._~+/=-]{12,}/i,/\beyJ[\w-]{8,}\.[\w-]{8,}\.[\w-]{8,}/,/\b[a-z][a-z0-9+.-]*:\/\/[^\s/@:]+:[^\s/@]+@/i,/\b[A-Fa-f0-9]{40,}\b/,/\b(?=[A-Za-z0-9_-]*\d)(?=[A-Za-z0-9_-]*[A-Za-z])[A-Za-z0-9_-]{40,}\b/];a.s(["G",0,function(a){return i.some(b=>b.test(a))},"F",0,function(a,i){let j=(0,b.h)(a);j=(0,c.J)(j,i);let k=function(a){if(h.has(a))return h.get(a);let b=new Map((a.account??[]).filter(a=>a.name.trim().length>=2).map(a=>[a.name.toLowerCase(),a.alias])),c=[...b.keys()].sort((a,b)=>b.length-a.length),d=c.length?{re:RegExp(`(?<!${f})(?:${c.map(g).join("|")})(?!${f})`,"giu"),alias:b}:null;return h.set(a,d),d}(i);return k&&(j=j.replace(k.re,a=>k.alias.get(a.toLowerCase())??a)),(j=(j=(j=j.replace(d,"[hidden]")).replace(/hb_\[hidden\]/g,"[hidden]")).replace(e,(a,b)=>b??"[url]")).replace(/@/g,"(at)")}])}]})();
2
2
 
3
3
  //# sourceMappingURL=src_1-xw4hea2lvb3._.js.map
@@ -1,3 +1,3 @@
1
- (()=>{"use strict";module.exports=[992861,a=>{var b=a.i(187924),c=a.i(101169),d=a.i(218024),e=a.i(196790),f=a.i(817748),g=a.i(901615),h=a.i(238246),i=a.i(572131),j=a.i(823292),k=a.i(619089),l=a.i(507504),m=a.i(814574),n=a.i(405050);let o=(0,n.createServerReference)("40bc4a1f6c222bf3161e56d1e5d01067ce1de9a111",n.callServer,void 0,n.findSourceMapURL,"createKeyAction");function p({scopes:a}){return(0,b.jsx)(b.Fragment,{children:a.map(a=>(0,b.jsx)("span",{className:"mr-1 inline-block whitespace-nowrap rounded-[4px] border border-line bg-surface-2 px-[5px] font-mono text-xs text-ink-soft",children:a},a))})}var q=a.i(136476);function r({icon:a,title:c,sub:d}){return(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:a}),(0,b.jsxs)("div",{children:[(0,b.jsx)(m.F,{className:"text-base",children:c}),(0,b.jsx)(m.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:d})]})]})}function s({onCreated:a,onCancel:c}){let[d,f]=(0,i.useState)(""),[h,l]=(0,i.useState)(q.J),[m,n]=(0,i.useState)(q.j),[t,u]=(0,i.useState)(String(q.D)),[v,w]=(0,i.useState)({}),[x,y]=(0,i.useState)(""),[z,A]=(0,i.useTransition)();return(0,b.jsxs)("form",{onSubmit:function(b){b.preventDefault(),A(async()=>{w({}),y("");try{let b=await o({name:d.trim(),scopes:q.B.filter(a=>h.includes(a)),expiry:m,ratePerMin:t.trim()});b.ok&&b.data?(j.c.success(b.message??"Key created."),a(b.data)):b.ok||(b.fieldErrors?w(b.fieldErrors):y(b.error))}catch{y("Something went wrong. Try again.")}})},noValidate:!0,children:[(0,b.jsx)(r,{icon:(0,b.jsx)(e.f,{size:19}),title:"Create API key",sub:"For one app or agent. Shown once."}),(0,b.jsxs)("div",{className:"px-[18px] pt-1.5",children:[(0,b.jsx)(k.O,{id:"key-name",label:"Name",help:"Lowercase letters, digits and dashes. Agents and Logs show it.",error:v.name,children:(0,b.jsx)("input",{id:"key-name",value:d,onChange:a=>f(a.target.value),placeholder:g.C.namePlaceholder,autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:k.S})}),(0,b.jsxs)("fieldset",{className:"mb-3.5",children:[(0,b.jsx)("legend",{className:"mb-[5px] text-[13px] font-medium",children:"Scopes"}),(0,b.jsx)("div",{className:"flex flex-col gap-1.5",children:q.B.map(a=>(0,b.jsxs)("label",{className:"flex cursor-pointer items-start gap-2",children:[(0,b.jsx)("input",{type:"checkbox",checked:h.includes(a),onChange:()=>l(b=>b.includes(a)?b.filter(b=>b!==a):[...b,a]),className:"mt-[3px] accent-brand"}),(0,b.jsxs)("span",{children:[(0,b.jsx)(p,{scopes:[a]})," ",(0,b.jsx)("span",{className:"text-[13px] text-ink-soft",children:q.h[a].short})]})]},a))}),v.scopes&&(0,b.jsx)("span",{className:"text-[12.5px] text-err",role:"alert",children:v.scopes})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-3 max-[560px]:grid-cols-1",children:[(0,b.jsx)(k.O,{id:"key-expiry",label:"Expires",error:v.expiry,children:(0,b.jsx)("select",{id:"key-expiry",value:m,onChange:a=>n(a.target.value),className:k.S,children:q.W.map(a=>(0,b.jsx)("option",{value:a,children:q.o[a]},a))})}),(0,b.jsx)(k.O,{id:"key-rate",label:"Rate limit",help:"Requests per minute, 1–600. Applies before the provider's own limits.",error:v.ratePerMin,children:(0,b.jsx)("input",{id:"key-rate",inputMode:"numeric",value:t,onChange:a=>u(a.target.value),className:`${k.S} font-mono`})})]}),x&&(0,b.jsx)("p",{className:"mb-3 text-[13px] text-err",role:"alert",children:x})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(k.K,{onClick:c,disabled:z,children:"Cancel"}),(0,b.jsx)(k.K,{type:"submit",variant:"primary",disabled:z,children:z?"Creating…":"Create key"})]})]})}function t({created:a,onDone:e}){async function f(){try{await navigator.clipboard.writeText(a.key),j.c.success("Copied.")}catch{j.c.error("Couldn't copy. Select the key and copy it by hand.")}}return(0,b.jsxs)("div",{children:[(0,b.jsx)(r,{icon:(0,b.jsx)(c.f,{size:19}),title:`Key ${a.name} created`,sub:"Copy it now."}),(0,b.jsxs)("div",{className:"px-[18px] pb-3 pt-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("code",{className:"min-w-0 flex-1 overflow-x-auto whitespace-nowrap rounded-md border border-line bg-sunken px-2 py-1.5 font-mono text-[12.5px]","data-testid":"new-key",children:a.key}),(0,b.jsxs)(k.K,{size:"sm",onClick:f,children:[(0,b.jsx)(d.f,{size:15,"aria-hidden":!0}),"Copy"]})]}),(0,b.jsx)("p",{className:"mt-2.5 rounded-md border border-warn-icon bg-warn-soft px-2.5 py-2 text-[13px] text-warn",children:"Watchbell keeps only a SHA-256 hash of this key, so it can't show it again. Lost it? Revoke it and create a new one."}),(0,b.jsxs)("p",{className:"mb-0 mt-3 text-[13px] text-ink-soft",children:["Next: put it in the app's environment as ",(0,b.jsx)("span",{className:"font-mono",children:"WATCHBELL_API_KEY"}),", then follow ",(0,b.jsx)(h.default,{href:"/ai",className:"text-brand",children:"Quick start"})," or ",(0,b.jsx)(h.default,{href:"/ai/connect",className:"text-brand",children:"Connect an agent"}),"."]})]}),(0,b.jsx)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:(0,b.jsx)(k.K,{variant:"primary",onClick:e,children:"Done"})})]})}a.s(["CreateKeyDialog",0,function(){let[a,c]=(0,i.useState)(!1),[d,e]=(0,i.useState)(null);function g(a){c(a),a||e(null)}return(0,l.useHoldRefresh)(a),(0,b.jsxs)(m.N,{open:a,onOpenChange:g,children:[(0,b.jsxs)(m.a,{render:(0,b.jsx)(k.K,{variant:"primary"}),children:[(0,b.jsx)(f.f,{size:16,"aria-hidden":!0}),"Create key"]}),(0,b.jsx)(m.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:d?(0,b.jsx)(t,{created:d,onDone:()=>g(!1)}):(0,b.jsx)(s,{onCreated:e,onCancel:()=>g(!1)})})]})}],992861)},659526,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(611619),f=a.i(619089),g=a.i(507504),h=a.i(188406),i=a.i(814574),j=a.i(405050);let k=(0,j.createServerReference)("602698ebfebd6e93ed6e5ed30498a020d07b5782dd",j.callServer,void 0,j.findSourceMapURL,"changeKeyAction"),l=(0,j.createServerReference)("4020c403b74537e60aa0ef7b1c05edd2a90fb87307",j.callServer,void 0,j.findSourceMapURL,"revokeKeyAction");var m=a.i(136476);let n={rename:{title:a=>`Rename ${a}`,sub:"Agents and Logs show the name. Lowercase letters, digits and dashes.",cta:"Save name"},rate:{title:()=>"Change rate limit",sub:"Requests per minute, 1–600. Applies before the provider's own limits, within a minute.",cta:"Save limit"},expiry:{title:()=>"Change expiry",sub:"Counted from today. The key stops working at that date.",cta:"Save expiry"},routing:{title:()=>"Change routing",sub:"Pin this key to one provider and, if you like, one model. Without a pin it uses the default provider.",cta:"Save routing"}};function o({mode:a,k:e,providers:g,onDone:h}){let[j,l]=(0,c.useState)(e.name),[p,q]=(0,c.useState)(String(e.ratePerMin)),[r,s]=(0,c.useState)(e.expiresAt?"90d":"never"),[t,u]=(0,c.useState)(e.providerId??""),[v,w]=(0,c.useState)(e.model??""),[x,y]=(0,c.useState)({}),[z,A]=(0,c.useState)(""),[B,C]=(0,c.useTransition)(),D=n[a];return(0,b.jsxs)("form",{onSubmit:function(b){b.preventDefault(),C(async()=>{y({}),A("");try{let b=await k(e.id,"rename"===a?{kind:"rename",name:j.trim()}:"rate"===a?{kind:"rate",ratePerMin:p.trim()}:"expiry"===a?{kind:"expiry",expiry:r}:{kind:"routing",providerId:t||null,model:t?v.trim():null});b.ok?(d.c.success(b.message??"Key updated."),h()):b.fieldErrors?y(b.fieldErrors):A(b.error)}catch{A("Something went wrong. Try again.")}})},noValidate:!0,children:[(0,b.jsxs)("div",{className:"px-[18px] pb-2 pt-4",children:[(0,b.jsx)(i.F,{className:"text-base",children:D.title(e.name)}),(0,b.jsx)(i.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:D.sub})]}),(0,b.jsxs)("div",{className:"px-[18px] pt-1.5",children:["rename"===a&&(0,b.jsx)(f.O,{id:"edit-name",label:"Name",error:x.name,children:(0,b.jsx)("input",{id:"edit-name",value:j,onChange:a=>l(a.target.value),autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:f.S})}),"rate"===a&&(0,b.jsx)(f.O,{id:"edit-rate",label:"Rate limit",help:"Requests per minute.",error:x.ratePerMin,children:(0,b.jsx)("input",{id:"edit-rate",inputMode:"numeric",value:p,onChange:a=>q(a.target.value),className:`${f.S} font-mono`})}),"expiry"===a&&(0,b.jsx)(f.O,{id:"edit-expiry",label:"Expires",error:x.expiry,children:(0,b.jsx)("select",{id:"edit-expiry",value:r,onChange:a=>s(a.target.value),className:f.S,children:m.W.map(a=>(0,b.jsx)("option",{value:a,children:m.o[a]},a))})}),"routing"===a&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(f.O,{id:"edit-provider",label:"Provider",help:g.length?void 0:"No provider is connected yet. Until one is, this key has nothing to pin to.",error:x.providerId,children:(0,b.jsxs)("select",{id:"edit-provider",value:t,onChange:a=>u(a.target.value),className:f.S,children:[(0,b.jsx)("option",{value:"",children:"No pin (default provider)"}),g.map(a=>(0,b.jsxs)("option",{value:a.id,children:[a.name,a.enabled?"":" (off)"]},a.id))]})}),(0,b.jsx)(f.O,{id:"edit-model",label:"Model",help:"Optional. A Gemini model id, for example gemini-3.8-flash. Empty uses the provider's default.",error:x.model,children:(0,b.jsx)("input",{id:"edit-model",value:v,onChange:a=>w(a.target.value),disabled:!t,placeholder:"gemini-3.8-flash",autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:`${f.S} font-mono`})})]}),z&&(0,b.jsx)("p",{className:"mb-3 text-[13px] text-err",role:"alert",children:z})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(f.K,{onClick:h,disabled:B,children:"Cancel"}),(0,b.jsx)(f.K,{type:"submit",variant:"primary",disabled:B,children:B?"Saving…":D.cta})]})]})}a.s(["KeyActions",0,function({k:a,providers:d}){let[j,k]=(0,c.useState)(null);return(0,g.useHoldRefresh)(null!==j),(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,b.jsx)(e.f,{trigger:(0,b.jsx)(f.K,{size:"sm",children:"Revoke"}),title:`Revoke ${a.name}?`,body:`Calls with ${a.prefix}… answer 401 within a minute. Agents using it show "Key revoked". This can't be undone; create a new key instead.`,cta:"Revoke key",danger:!0,onConfirm:async()=>{let b=await l(a.id);return{ok:b.ok,message:(b.ok?b.message:b.error)??""}}}),(0,b.jsx)(h.RowMenu,{label:`Actions for ${a.name}`,items:[{label:"Rename",onSelect:()=>k("rename")},{label:"Change rate limit",onSelect:()=>k("rate")},{label:"Change expiry",onSelect:()=>k("expiry")},{label:"Change routing",onSelect:()=>k("routing")}]}),(0,b.jsx)(i.N,{open:null!==j,onOpenChange:a=>{a||k(null)},children:(0,b.jsx)(i.d,{className:"gap-0 p-0 sm:max-w-[520px]",showCloseButton:!1,children:j&&(0,b.jsx)(o,{mode:j,k:a,providers:d,onDone:()=>k(null)})})})]})}],659526)},136476,a=>{let b={"ai:invoke":{short:"models",long:"Chat completions and the model list through your provider connections."},"read:status":{short:"console data, MCP",long:"Read-only console data: GET /api/v1/status and the MCP server. Database names are aliases; no URLs, emails or secrets."},"write:notes":{short:"post AI notes",long:a.i(901615).C.writeNotesLong}};a.s(["j",0,"90d","D",0,20,"J",0,["ai:invoke"],"W",0,["7d","30d","90d","1y","never"],"o",0,{"7d":"In 7 days","30d":"In 30 days","90d":"In 90 days","1y":"In 1 year",never:"Never"},"B",0,["ai:invoke","read:status","write:notes"],"h",0,b])}]})();
1
+ (()=>{"use strict";module.exports=[992861,a=>{var b=a.i(187924),c=a.i(101169),d=a.i(218024),e=a.i(196790),f=a.i(817748),g=a.i(901615),h=a.i(238246),i=a.i(572131),j=a.i(823292),k=a.i(619089),l=a.i(507504),m=a.i(814574),n=a.i(405050);let o=(0,n.createServerReference)("40b4a2eb999553d8d73e2b1543d1a4956f102e337f",n.callServer,void 0,n.findSourceMapURL,"createKeyAction");function p({scopes:a}){return(0,b.jsx)(b.Fragment,{children:a.map(a=>(0,b.jsx)("span",{className:"mr-1 inline-block whitespace-nowrap rounded-[4px] border border-line bg-surface-2 px-[5px] font-mono text-xs text-ink-soft",children:a},a))})}var q=a.i(136476);function r({icon:a,title:c,sub:d}){return(0,b.jsxs)("div",{className:"flex items-start gap-3 px-[18px] pb-2 pt-4",children:[(0,b.jsx)("span",{className:"grid size-9 shrink-0 place-items-center rounded-lg bg-sunken text-ink-soft",children:a}),(0,b.jsxs)("div",{children:[(0,b.jsx)(m.F,{className:"text-base",children:c}),(0,b.jsx)(m.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:d})]})]})}function s({onCreated:a,onCancel:c}){let[d,f]=(0,i.useState)(""),[h,l]=(0,i.useState)(q.J),[m,n]=(0,i.useState)(q.j),[t,u]=(0,i.useState)(String(q.D)),[v,w]=(0,i.useState)({}),[x,y]=(0,i.useState)(""),[z,A]=(0,i.useTransition)();return(0,b.jsxs)("form",{onSubmit:function(b){b.preventDefault(),A(async()=>{w({}),y("");try{let b=await o({name:d.trim(),scopes:q.B.filter(a=>h.includes(a)),expiry:m,ratePerMin:t.trim()});b.ok&&b.data?(j.c.success(b.message??"Key created."),a(b.data)):b.ok||(b.fieldErrors?w(b.fieldErrors):y(b.error))}catch{y("Something went wrong. Try again.")}})},noValidate:!0,children:[(0,b.jsx)(r,{icon:(0,b.jsx)(e.f,{size:19}),title:"Create API key",sub:"For one app or agent. Shown once."}),(0,b.jsxs)("div",{className:"px-[18px] pt-1.5",children:[(0,b.jsx)(k.O,{id:"key-name",label:"Name",help:"Lowercase letters, digits and dashes. Agents and Logs show it.",error:v.name,children:(0,b.jsx)("input",{id:"key-name",value:d,onChange:a=>f(a.target.value),placeholder:g.C.namePlaceholder,autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:k.S})}),(0,b.jsxs)("fieldset",{className:"mb-3.5",children:[(0,b.jsx)("legend",{className:"mb-[5px] text-[13px] font-medium",children:"Scopes"}),(0,b.jsx)("div",{className:"flex flex-col gap-1.5",children:q.B.map(a=>(0,b.jsxs)("label",{className:"flex cursor-pointer items-start gap-2",children:[(0,b.jsx)("input",{type:"checkbox",checked:h.includes(a),onChange:()=>l(b=>b.includes(a)?b.filter(b=>b!==a):[...b,a]),className:"mt-[3px] accent-brand"}),(0,b.jsxs)("span",{children:[(0,b.jsx)(p,{scopes:[a]})," ",(0,b.jsx)("span",{className:"text-[13px] text-ink-soft",children:q.h[a].short})]})]},a))}),v.scopes&&(0,b.jsx)("span",{className:"text-[12.5px] text-err",role:"alert",children:v.scopes})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-3 max-[560px]:grid-cols-1",children:[(0,b.jsx)(k.O,{id:"key-expiry",label:"Expires",error:v.expiry,children:(0,b.jsx)("select",{id:"key-expiry",value:m,onChange:a=>n(a.target.value),className:k.S,children:q.W.map(a=>(0,b.jsx)("option",{value:a,children:q.o[a]},a))})}),(0,b.jsx)(k.O,{id:"key-rate",label:"Rate limit",help:"Requests per minute, 1–600. Applies before the provider's own limits.",error:v.ratePerMin,children:(0,b.jsx)("input",{id:"key-rate",inputMode:"numeric",value:t,onChange:a=>u(a.target.value),className:`${k.S} font-mono`})})]}),x&&(0,b.jsx)("p",{className:"mb-3 text-[13px] text-err",role:"alert",children:x})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(k.K,{onClick:c,disabled:z,children:"Cancel"}),(0,b.jsx)(k.K,{type:"submit",variant:"primary",disabled:z,children:z?"Creating…":"Create key"})]})]})}function t({created:a,onDone:e}){async function f(){try{await navigator.clipboard.writeText(a.key),j.c.success("Copied.")}catch{j.c.error("Couldn't copy. Select the key and copy it by hand.")}}return(0,b.jsxs)("div",{children:[(0,b.jsx)(r,{icon:(0,b.jsx)(c.f,{size:19}),title:`Key ${a.name} created`,sub:"Copy it now."}),(0,b.jsxs)("div",{className:"px-[18px] pb-3 pt-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("code",{className:"min-w-0 flex-1 overflow-x-auto whitespace-nowrap rounded-md border border-line bg-sunken px-2 py-1.5 font-mono text-[12.5px]","data-testid":"new-key",children:a.key}),(0,b.jsxs)(k.K,{size:"sm",onClick:f,children:[(0,b.jsx)(d.f,{size:15,"aria-hidden":!0}),"Copy"]})]}),(0,b.jsx)("p",{className:"mt-2.5 rounded-md border border-warn-icon bg-warn-soft px-2.5 py-2 text-[13px] text-warn",children:"Watchbell keeps only a SHA-256 hash of this key, so it can't show it again. Lost it? Revoke it and create a new one."}),(0,b.jsxs)("p",{className:"mb-0 mt-3 text-[13px] text-ink-soft",children:["Next: put it in the app's environment as ",(0,b.jsx)("span",{className:"font-mono",children:"WATCHBELL_API_KEY"}),", then follow ",(0,b.jsx)(h.default,{href:"/ai",className:"text-brand",children:"Quick start"})," or ",(0,b.jsx)(h.default,{href:"/ai/connect",className:"text-brand",children:"Connect an agent"}),"."]})]}),(0,b.jsx)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:(0,b.jsx)(k.K,{variant:"primary",onClick:e,children:"Done"})})]})}a.s(["CreateKeyDialog",0,function(){let[a,c]=(0,i.useState)(!1),[d,e]=(0,i.useState)(null);function g(a){c(a),a||e(null)}return(0,l.useHoldRefresh)(a),(0,b.jsxs)(m.N,{open:a,onOpenChange:g,children:[(0,b.jsxs)(m.a,{render:(0,b.jsx)(k.K,{variant:"primary"}),children:[(0,b.jsx)(f.f,{size:16,"aria-hidden":!0}),"Create key"]}),(0,b.jsx)(m.d,{className:"gap-0 p-0 sm:max-w-[640px]",showCloseButton:!1,children:d?(0,b.jsx)(t,{created:d,onDone:()=>g(!1)}):(0,b.jsx)(s,{onCreated:e,onCancel:()=>g(!1)})})]})}],992861)},659526,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(611619),f=a.i(619089),g=a.i(507504),h=a.i(188406),i=a.i(814574),j=a.i(405050);let k=(0,j.createServerReference)("60d34430ca36fc57502e42820872ce262fbe1f8569",j.callServer,void 0,j.findSourceMapURL,"changeKeyAction"),l=(0,j.createServerReference)("4068ff2b3732ebd0a1e2d0800026678ecbf2338253",j.callServer,void 0,j.findSourceMapURL,"revokeKeyAction");var m=a.i(136476);let n={rename:{title:a=>`Rename ${a}`,sub:"Agents and Logs show the name. Lowercase letters, digits and dashes.",cta:"Save name"},rate:{title:()=>"Change rate limit",sub:"Requests per minute, 1–600. Applies before the provider's own limits, within a minute.",cta:"Save limit"},expiry:{title:()=>"Change expiry",sub:"Counted from today. The key stops working at that date.",cta:"Save expiry"},routing:{title:()=>"Change routing",sub:"Pin this key to one provider and, if you like, one model. Without a pin it uses the default provider.",cta:"Save routing"}};function o({mode:a,k:e,providers:g,onDone:h}){let[j,l]=(0,c.useState)(e.name),[p,q]=(0,c.useState)(String(e.ratePerMin)),[r,s]=(0,c.useState)(e.expiresAt?"90d":"never"),[t,u]=(0,c.useState)(e.providerId??""),[v,w]=(0,c.useState)(e.model??""),[x,y]=(0,c.useState)({}),[z,A]=(0,c.useState)(""),[B,C]=(0,c.useTransition)(),D=n[a];return(0,b.jsxs)("form",{onSubmit:function(b){b.preventDefault(),C(async()=>{y({}),A("");try{let b=await k(e.id,"rename"===a?{kind:"rename",name:j.trim()}:"rate"===a?{kind:"rate",ratePerMin:p.trim()}:"expiry"===a?{kind:"expiry",expiry:r}:{kind:"routing",providerId:t||null,model:t?v.trim():null});b.ok?(d.c.success(b.message??"Key updated."),h()):b.fieldErrors?y(b.fieldErrors):A(b.error)}catch{A("Something went wrong. Try again.")}})},noValidate:!0,children:[(0,b.jsxs)("div",{className:"px-[18px] pb-2 pt-4",children:[(0,b.jsx)(i.F,{className:"text-base",children:D.title(e.name)}),(0,b.jsx)(i.C,{className:"mt-0.5 text-[13px] text-ink-soft",children:D.sub})]}),(0,b.jsxs)("div",{className:"px-[18px] pt-1.5",children:["rename"===a&&(0,b.jsx)(f.O,{id:"edit-name",label:"Name",error:x.name,children:(0,b.jsx)("input",{id:"edit-name",value:j,onChange:a=>l(a.target.value),autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:f.S})}),"rate"===a&&(0,b.jsx)(f.O,{id:"edit-rate",label:"Rate limit",help:"Requests per minute.",error:x.ratePerMin,children:(0,b.jsx)("input",{id:"edit-rate",inputMode:"numeric",value:p,onChange:a=>q(a.target.value),className:`${f.S} font-mono`})}),"expiry"===a&&(0,b.jsx)(f.O,{id:"edit-expiry",label:"Expires",error:x.expiry,children:(0,b.jsx)("select",{id:"edit-expiry",value:r,onChange:a=>s(a.target.value),className:f.S,children:m.W.map(a=>(0,b.jsx)("option",{value:a,children:m.o[a]},a))})}),"routing"===a&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(f.O,{id:"edit-provider",label:"Provider",help:g.length?void 0:"No provider is connected yet. Until one is, this key has nothing to pin to.",error:x.providerId,children:(0,b.jsxs)("select",{id:"edit-provider",value:t,onChange:a=>u(a.target.value),className:f.S,children:[(0,b.jsx)("option",{value:"",children:"No pin (default provider)"}),g.map(a=>(0,b.jsxs)("option",{value:a.id,children:[a.name,a.enabled?"":" (off)"]},a.id))]})}),(0,b.jsx)(f.O,{id:"edit-model",label:"Model",help:"Optional. A Gemini model id, for example gemini-3.8-flash. Empty uses the provider's default.",error:x.model,children:(0,b.jsx)("input",{id:"edit-model",value:v,onChange:a=>w(a.target.value),disabled:!t,placeholder:"gemini-3.8-flash",autoComplete:"off",autoCapitalize:"none",spellCheck:!1,className:`${f.S} font-mono`})})]}),z&&(0,b.jsx)("p",{className:"mb-3 text-[13px] text-err",role:"alert",children:z})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-2 border-t border-line px-[18px] py-3",children:[(0,b.jsx)(f.K,{onClick:h,disabled:B,children:"Cancel"}),(0,b.jsx)(f.K,{type:"submit",variant:"primary",disabled:B,children:B?"Saving…":D.cta})]})]})}a.s(["KeyActions",0,function({k:a,providers:d}){let[j,k]=(0,c.useState)(null);return(0,g.useHoldRefresh)(null!==j),(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,b.jsx)(e.f,{trigger:(0,b.jsx)(f.K,{size:"sm",children:"Revoke"}),title:`Revoke ${a.name}?`,body:`Calls with ${a.prefix}… answer 401 within a minute. Agents using it show "Key revoked". This can't be undone; create a new key instead.`,cta:"Revoke key",danger:!0,onConfirm:async()=>{let b=await l(a.id);return{ok:b.ok,message:(b.ok?b.message:b.error)??""}}}),(0,b.jsx)(h.RowMenu,{label:`Actions for ${a.name}`,items:[{label:"Rename",onSelect:()=>k("rename")},{label:"Change rate limit",onSelect:()=>k("rate")},{label:"Change expiry",onSelect:()=>k("expiry")},{label:"Change routing",onSelect:()=>k("routing")}]}),(0,b.jsx)(i.N,{open:null!==j,onOpenChange:a=>{a||k(null)},children:(0,b.jsx)(i.d,{className:"gap-0 p-0 sm:max-w-[520px]",showCloseButton:!1,children:j&&(0,b.jsx)(o,{mode:j,k:a,providers:d,onDone:()=>k(null)})})})]})}],659526)},136476,a=>{let b={"ai:invoke":{short:"models",long:"Chat completions and the model list through your provider connections."},"read:status":{short:"console data, MCP",long:"Read-only console data: GET /api/v1/status and the MCP server. Database names are aliases; no URLs, emails or secrets."},"write:notes":{short:"post AI notes",long:a.i(901615).C.writeNotesLong}};a.s(["j",0,"90d","D",0,20,"J",0,["ai:invoke"],"W",0,["7d","30d","90d","1y","never"],"o",0,{"7d":"In 7 days","30d":"In 30 days","90d":"In 90 days","1y":"In 1 year",never:"Never"},"B",0,["ai:invoke","read:status","write:notes"],"h",0,b])}]})();
2
2
 
3
3
  //# sourceMappingURL=src_10zavgy86u3us._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[574262,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Manage","Sections"],title:"Sections",sub:!0,children:(0,b.jsx)(c.Z,{lines:5})})}])},689451,function(a){a.n(a.i(574262))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
+
3
+ //# sourceMappingURL=src_11iuy79j_finh._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[819679,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Databases","Cloudflare D1"],title:"Cloudflare D1",sub:!0,children:(0,b.jsx)(c.G,{title:!0,rows:2,cols:8})})}])},105297,function(a){a.n(a.i(819679))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[819679,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Database","Cloudflare D1"],title:"Cloudflare D1",sub:!0,children:(0,b.jsx)(c.G,{title:!0,rows:2,cols:8})})}])},105297,function(a){a.n(a.i(819679))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_12x8sjp-qdw08._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[518926,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Databases","Turso"],title:"Turso",sub:!0,children:(0,b.jsx)(c.G,{title:!0,rows:2,cols:8})})}])},211649,function(a){a.n(a.i(518926))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[518926,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Database","Turso"],title:"Turso",sub:!0,children:(0,b.jsx)(c.G,{title:!0,rows:2,cols:8})})}])},211649,function(a){a.n(a.i(518926))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_14aur12he3m2a._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[126751,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Network","Domains"],title:"Domains",sub:!0,children:(0,b.jsx)(c.G,{rows:6,cols:7})})}])},872958,function(a){a.n(a.i(126751))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[126751,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Hosting","Domains"],title:"Domains",sub:!0,children:(0,b.jsx)(c.G,{rows:6,cols:7})})}])},872958,function(a){a.n(a.i(126751))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_15aqc6akkqade._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[636689,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Network","DNS records"],sub:!0,children:[(0,b.jsx)(c.Z,{lines:5}),(0,b.jsx)(c.G,{rows:8,cols:6})]})}])},769810,function(a){a.n(a.i(636689))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[636689,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Hosting","DNS records"],sub:!0,children:[(0,b.jsx)(c.Z,{lines:5}),(0,b.jsx)(c.G,{rows:8,cols:6})]})}])},769810,function(a){a.n(a.i(636689))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_15zqi72ky6hi9._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[454030,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Administration"],children:[(0,b.jsx)(c.d,{count:4}),(0,b.jsx)(c.G,{title:!0,rows:3,cols:6})]})}])},989308,function(a){a.n(a.i(454030))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[454030,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Manage"],children:[(0,b.jsx)(c.d,{count:4}),(0,b.jsx)(c.G,{title:!0,rows:3,cols:6})]})}])},989308,function(a){a.n(a.i(454030))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_19evuexp67uty._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[135087,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Databases","Free databases"],title:"Free databases",sub:!0,children:[(0,b.jsx)(c.d,{count:4}),(0,b.jsx)(c.G,{rows:8,cols:7})]})}])},968173,function(a){a.n(a.i(135087))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[135087,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Database","Free databases"],title:"Free databases",sub:!0,children:[(0,b.jsx)(c.d,{count:4}),(0,b.jsx)(c.G,{rows:8,cols:7})]})}])},968173,function(a){a.n(a.i(135087))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_1am4_ady64k2b._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[430808,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Administration"],children:(0,b.jsx)(c.G,{rows:4,cols:4})})}])},826617,function(a){a.n(a.i(430808))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[430808,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Manage"],children:(0,b.jsx)(c.G,{rows:4,cols:4})})}])},826617,function(a){a.n(a.i(430808))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_1cbawr4iw5h-x._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[135597,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Administration"],children:[(0,b.jsx)(c.G,{title:!0,rows:2,cols:5}),(0,b.jsx)(c.G,{title:!0,rows:2,cols:5})]})}])},305298,function(a){a.n(a.i(135597))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[135597,a=>{"use strict";var b=a.i(907997),c=a.i(411182);let d=[2,5,2,1];a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Manage"],children:d.map((a,d)=>(0,b.jsxs)("div",{children:[(0,b.jsx)(c.i,{className:"mb-2 w-20"}),(0,b.jsx)("div",{className:"grid grid-cols-[repeat(auto-fill,minmax(230px,1fr))] gap-2.5",children:Array.from({length:a},(a,d)=>(0,b.jsxs)("div",{className:"flex items-center gap-3 rounded-lg border border-line bg-surface px-3.5 py-3",children:[(0,b.jsx)(c.i,{className:"size-9 rounded-lg"}),(0,b.jsxs)("div",{className:"flex-1",children:[(0,b.jsx)(c.i,{className:"w-24"}),(0,b.jsx)(c.i,{className:"mt-1.5 w-16"})]})]},d))})]},d))})}])},305298,function(a){a.n(a.i(135597))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_1ccrc8twenijg._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[969762,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["AI & API","AI Gateway"],children:(0,b.jsx)(c.d,{count:4})})}])},264225,function(a){a.n(a.i(969762))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[969762,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Manage","AI Gateway"],children:(0,b.jsx)(c.d,{count:4})})}])},264225,function(a){a.n(a.i(969762))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_1ctx1an_a3k7g._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[461750,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[root-of-the-server]__1k1fmq0-rg3p0._.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"].map(b=>a.l(b))).then(()=>b(614755)))},678831,a=>{"use strict";var b=a.i(118558),c=a.i(371289);function d(a,b){if((0,c.r)())for(let c of new Set(a))try{b(c)}catch(a){console.warn(`cache: couldn't expire ${c}: ${a instanceof Error?a.message.slice(0,120):"unknown"}`)}}a.s(["D",0,function(a){d(a,a=>(0,b.revalidateTag)(a,{expire:0}))},"J",0,function(a){d(a,a=>(0,b.updateTag)(a))}])},73710,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_demo_cookie_ts_0a12-0n1novgh._.js"].map(b=>a.l(b))).then(()=>b(716983)))},871289,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[root-of-the-server]__0e9m8up0h1qhl._.js","server/chunks/ssr/node_modules_0vppy-p56c35f._.js","server/chunks/ssr/node_modules_@electric-sql_pglite_dist_0j1fzsq3ed7ph._.js"].map(b=>a.l(b))).then(()=>b(204048)))},734864,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_demo_0hdl7pzdqejqx._.js"].map(b=>a.l(b))).then(()=>b(579739)))},522169,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_demo_seed_members_ts_0pz2fa9295pvm._.js"].map(b=>a.l(b))).then(()=>b(615089)))},372153,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_demo_session_ts_0rwvb3aun41zx._.js","server/chunks/ssr/src_lib_demo_1w8p39upm6ea2._.js"].map(b=>a.l(b))).then(()=>b(765161)))},414785,a=>{a.v(a=>Promise.resolve().then(()=>a(534908)))},875034,a=>{"use strict";var b=a.i(691100),c=a.i(381544);let d={decide:b.V,execute:(a,c,d)=>(0,b.N)(a,c,d),history:(a,b)=>(0,c.v)(a,b)};async function e(a,b,f,g,h={},i=d){let j=await i.decide(a,b,f.id,g);if("ok"!==j.status)return"missing"===j.status?{status:"missing"}:{status:"conflict",proposal:j.proposal};let k=[],l=async()=>{let a,b=i.history;if(!b||!k.length)return;let d=k.splice(0),e=new Promise(b=>{a=setTimeout(b,c.h)}),f=(async()=>{for(let[a,c]of d)await b(a,c).catch(()=>void 0)})();await Promise.race([f,e]).finally(()=>clearTimeout(a))};if("reject"===b)return k.push(["rejected",j.proposal]),{status:"ok",proposal:j.proposal,flushHistory:l};k.push(["approved",j.proposal]),h.onApproved&&await h.onApproved(j.proposal).catch(()=>void 0);let m=await i.execute(a,{id:f.id,userId:f.userId},new Date);return m&&("done"===m.status||"failed"===m.status)&&k.push([m.status,m]),{status:"ok",proposal:m??j.proposal,flushHistory:l}}a.s(["f",0,e])},801116,a=>{a.v(a=>Promise.resolve().then(()=>a(624065)))}];
2
+
3
+ //# sourceMappingURL=src_1iyzhhf1u_gwo._.js.map
@@ -1,3 +1,3 @@
1
- (()=>{"use strict";module.exports=[217897,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(188406),f=a.i(742680),g=a.i(405174),h=a.i(752818);a.s(["AppMenu",0,function({app:a}){let[,i]=(0,c.useTransition)(),j=(0,h.f)(),k=[{label:"Redeploy",later:6},...a.siteUrl?[{label:"Open site",href:a.siteUrl}]:[],{label:"View logs",later:5}];return a.monitorCount>0&&k.push({label:a.paused?"Resume monitors":"Pause monitors",onSelect:()=>j(()=>new Promise(b=>i(async()=>{try{let b=await (0,g.f)(a.id,!a.paused);b.ok?d.c.success(b.message??""):d.c.error(b.error)}catch{d.c.error("Something went wrong. Try again.")}finally{b()}})))}),(0,b.jsx)(e.RowMenu,{items:k,label:(0,f.J)(a.name)})}])},405174,752818,a=>{var b=a.i(405050);let c=(0,b.createServerReference)("6078a6727342c4ef6348dcecf887d0ca6d82be3f59",b.callServer,void 0,b.findSourceMapURL,"pauseAppMonitors");a.s(["f",0,c],405174);var d=a.i(572131);a.s(["f",0,function(){let a=(0,d.useRef)(!1);return b=>!a.current&&(a.current=!0,b().catch(()=>void 0).finally(()=>{a.current=!1}),!0)}],752818)},964887,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(405050);let f=(0,e.createServerReference)("403f3dad9b3a14ff3e4f06aa90d294f993a4ac5531",e.callServer,void 0,e.findSourceMapURL,"dismissRecommendation");var g=a.i(619089);a.s(["DismissButton",0,function({recKey:a}){let[e,h]=(0,c.useTransition)();return(0,b.jsx)(g.K,{size:"sm",disabled:e,onClick:()=>h(async()=>{try{let b=await f(a);b.ok?d.c.success(b.message??"Dismissed."):d.c.error(b.error)}catch{d.c.error("Something went wrong. Try again.")}}),children:e?"Dismissing…":"Dismiss"})}],964887)},585709,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(486747),e=a.i(462007),f=a.i(427110);a.s(["PlainTable",0,function({head:a,rows:g}){let[h,i]=(0,c.useState)(1),j=(0,f.$)(g,h);return j.page!==h&&i(j.page),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:e.o,children:[(0,b.jsx)(e.U,{head:a}),(0,b.jsx)("tbody",{children:j.rows.map(a=>(0,b.jsx)(c.Fragment,{children:a.row},a.key))})]})}),(0,b.jsx)(d.f,{page:j.page,pages:j.pages,text:(0,f.z)(j),onPage:i})]})}])}]})();
1
+ (()=>{"use strict";module.exports=[217897,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(188406),f=a.i(742680),g=a.i(224766),h=a.i(752818);a.s(["AppMenu",0,function({app:a}){let[,i]=(0,c.useTransition)(),j=(0,h.f)(),k=[{label:"Redeploy",later:6},...a.siteUrl?[{label:"Open site",href:a.siteUrl}]:[],{label:"View logs",later:5}];return a.monitorCount>0&&k.push({label:a.paused?"Resume monitors":"Pause monitors",onSelect:()=>j(()=>new Promise(b=>i(async()=>{try{let b=await (0,g.f)(a.id,!a.paused);b.ok?d.c.success(b.message??""):d.c.error(b.error)}catch{d.c.error("Something went wrong. Try again.")}finally{b()}})))}),(0,b.jsx)(e.RowMenu,{items:k,label:(0,f.J)(a.name)})}])},224766,752818,a=>{var b=a.i(405050);let c=(0,b.createServerReference)("60859733a4976da0b21f1b15bd4bbb739bade49c9d",b.callServer,void 0,b.findSourceMapURL,"pauseAppMonitors");a.s(["f",0,c],224766);var d=a.i(572131);a.s(["f",0,function(){let a=(0,d.useRef)(!1);return b=>!a.current&&(a.current=!0,b().catch(()=>void 0).finally(()=>{a.current=!1}),!0)}],752818)},964887,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(823292),e=a.i(405050);let f=(0,e.createServerReference)("409598291afda148e093707136178313775ef9704f",e.callServer,void 0,e.findSourceMapURL,"dismissRecommendation");var g=a.i(619089);a.s(["DismissButton",0,function({recKey:a}){let[e,h]=(0,c.useTransition)();return(0,b.jsx)(g.K,{size:"sm",disabled:e,onClick:()=>h(async()=>{try{let b=await f(a);b.ok?d.c.success(b.message??"Dismissed."):d.c.error(b.error)}catch{d.c.error("Something went wrong. Try again.")}}),children:e?"Dismissing…":"Dismiss"})}],964887)},585709,a=>{var b=a.i(187924),c=a.i(572131),d=a.i(486747),e=a.i(462007),f=a.i(427110);a.s(["PlainTable",0,function({head:a,rows:g}){let[h,i]=(0,c.useState)(1),j=(0,f.$)(g,h);return j.page!==h&&i(j.page),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:e.o,children:[(0,b.jsx)(e.U,{head:a}),(0,b.jsx)("tbody",{children:j.rows.map(a=>(0,b.jsx)(c.Fragment,{children:a.row},a.key))})]})}),(0,b.jsx)(d.f,{page:j.page,pages:j.pages,text:(0,f.z)(j),onPage:i})]})}])}]})();
2
2
 
3
- //# sourceMappingURL=src_11_hakxhnybdd._.js.map
3
+ //# sourceMappingURL=src_1ottjkdvhje3g._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[[829534,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call ActionsRepoForm() from the server but ActionsRepoForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/actions-repo-form.tsx","ActionsRepoForm");a.s(["ActionsRepoForm",0,b])},386180,a=>{var b=a.i(829534);a.n(b)},541088,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call AddMemberDialog() from the server but AddMemberDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/add-member-dialog.tsx","AddMemberDialog");a.s(["AddMemberDialog",0,b])},120396,a=>{var b=a.i(541088);a.n(b)},933292,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call BudgetForm() from the server but BudgetForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/budget-form.tsx","BudgetForm");a.s(["BudgetForm",0,b])},285100,a=>{var b=a.i(933292);a.n(b)},915832,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call InviteDialog() from the server but InviteDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/invite-dialog.tsx","InviteDialog");a.s(["InviteDialog",0,b])},173616,a=>{var b=a.i(915832);a.n(b)},7109,a=>{var b=a.i(211857);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call RemoveMember() from the server but RemoveMember is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/member-actions.tsx","RemoveMember"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call RevokeInvite() from the server but RevokeInvite is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/member-actions.tsx","RevokeInvite"),e=(0,b.registerClientReference)(function(){throw Error("Attempted to call RoleSelect() from the server but RoleSelect is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/member-actions.tsx","RoleSelect");a.s(["RemoveMember",0,c,"RevokeInvite",0,d,"RoleSelect",0,e])},564326,a=>{var b=a.i(7109);a.n(b)},976739,a=>{var b=a.i(907997),c=a.i(803681),d=a.i(75148),e=a.i(473083),f=a.i(109307),g=a.i(534908),h=a.i(149396),i=a.i(492665),j=a.i(529960),k=a.i(686251),l=a.i(462820),m=a.i(976937),n=a.i(972123),o=a.i(386180);async function p(){let a=await (0,m.c)().catch(()=>null);return(0,b.jsxs)(c.N,{title:"Lockfile via GitHub Actions",meta:a?(0,b.jsx)(k.F,{state:"ok",children:"On"}):(0,b.jsx)(k.F,{state:"off",children:"Off"}),children:[(0,b.jsx)("p",{className:"text-[13px] text-ink-soft",children:l.K.lockfileIntro}),(0,b.jsxs)("ol",{className:"mt-2 flex list-decimal flex-col gap-3 pl-5 text-[13px]",children:[(0,b.jsxs)("li",{children:["Create a repository on GitHub, for example ",(0,b.jsx)("span",{className:"font-mono",children:"watchbell-actions"})," (private is fine)."]}),(0,b.jsxs)("li",{children:["Add the file ",(0,b.jsx)("span",{className:"font-mono",children:".github/workflows/watchbell-lockfile.yml"})," ",(0,b.jsx)(j.CopyButton,{text:".github/workflows/watchbell-lockfile.yml",label:"Copy path"})," with this content:",(0,b.jsx)("div",{className:"mt-1 flex justify-end",children:(0,b.jsx)(j.CopyButton,{text:n.G,label:"Copy workflow"})}),(0,b.jsx)("code",{className:"block overflow-x-auto rounded-md border border-line bg-surface-2 px-3 py-2 font-mono text-[12.5px] whitespace-pre mt-1 max-h-72",children:n.G})]}),(0,b.jsxs)("li",{children:["In that repository: Settings › Secrets and variables › Actions › New repository secret, name ",(0,b.jsx)("span",{className:"font-mono",children:"WATCHBELL_PR_TOKEN"})," ",(0,b.jsx)(j.CopyButton,{text:"WATCHBELL_PR_TOKEN",label:"Copy name"}),", value: your GitHub PR-write token (the same one on Connections)."]}),(0,b.jsx)("li",{children:"Give the PR-write token access to this new repository too (GitHub › Settings › Developer settings › your token › Repository access), with Contents: Read and write."}),(0,b.jsx)("li",{children:"Save the repository name here:"})]}),(0,b.jsx)("div",{className:"mt-2",children:(0,b.jsx)(o.ActionsRepoForm,{current:a})})]})}var q=a.i(791444),r=a.i(840784),s=a.i(186133),t=a.i(532620),u=a.i(655206),v=a.i(634418),w=a.i(688275),x=a.i(672319),y=a.i(711251),z=a.i(371289),A=a.i(245710);function B(a){return a>=86400&&a%86400==0?`every ${a/86400} day${86400===a?"":"s"}`:a>=3600&&a%3600==0?`every ${a/3600} h`:a>=60&&a%60==0?`every ${a/60} min`:`every ${a} s`}let C={heartbeats:"Heartbeat monitors: recompute from the last ping",checks:"HTTP uptime checks",vercel:"Vercel projects and deployments",supabase:"Supabase project status",supabaseUsage:"Supabase service health and traffic",neon:"Neon status and usage",firebase:"Firestore health read",firebaseUsage:"Firestore usage",extraDbs:"Turso, Upstash Redis and Cloudflare D1 status and usage",cloudflare:"Cloudflare zones and DNS",domains:"Vercel domain settings",tls:"TLS certificate expiry",rdap:"Domain expiry (RDAP)",eol:"Next.js end-of-life data",status:"Provider status feeds",logs:"Copy of Vercel warning and error logs",pageviews:"Web Analytics page views",alerts:"Alert rules and notices",digest:"Digest due check"},D={cron_job_org:"cron-job.org",qstash:"QStash",vercel_cron:"Vercel Cron",manual:"Refresh now"},E=v.t.checks,F="not read yet",G=a=>Math.round(10*a)/10,H=a=>`${a} days`;var I=a.i(715208),J=a.i(285100);async function K(){let a=new Date,[d,e,f,g,h]=await Promise.all([(0,t.V)(),(0,t.R)("neon_project"),(0,t.e)(),(0,r.G)(a),(0,s.j)()]),i=g.filter(a=>!a.gone),j=function(a,b=y.o){let c,d=[],e=a=>null===a?"none":a>=b.errPct?"err":a>=b.warnPct?"warn":"ok";for(let b of(a.slots.length||d.push({key:"supabase",item:"Supabase free projects",limit:`${x.V} active projects per account`,use:"no Supabase account connected",pct:null,tone:"none"}),a.slots)){let a=G(b.used/b.total*100);d.push({key:`supabase-${b.account}`,item:`Supabase free projects \xb7 ${b.account}`,limit:`${b.total} active per account`,use:`${b.used} of ${b.total} used${b.planUnknown?" (plan not read for every org)":""}`,pct:a,tone:e(a)})}for(let b of(a.neon.length||d.push({key:"neon",item:"Neon CU-hours",limit:`${w.a.cuHours} CU-hours / month per project`,use:"no Neon project watched",pct:null,tone:"none"}),a.neon))d.push({key:`neon-${b.id}`,item:`Neon CU-hours \xb7 ${b.alias}`,limit:`${w.a.cuHours} CU-hours / month per project`,use:b.cu?`${b.cu.value} CU-hours`:F,pct:b.cu?.pct??null,tone:e(b.cu?.pct??null)});let f=G(288/b.qstashPerDay*100);return d.push({key:"qstash",item:"Upstash QStash messages",limit:`${b.qstashPerDay.toLocaleString("en-US")} / day`,use:`288 / day (watchdog ${B(300)})`,pct:f,tone:e(f)}),d.push({key:"cron",item:"cron-job.org runs",limit:"1 run / min (shortest free interval)",use:`1 run / min (${(86400/E).toLocaleString("en-US")} / day)`,pct:null,tone:"none"}),d.push({key:"vercel",item:"Vercel Hobby",limit:`${(c=b.vercelInvocations)>=1e6&&c%1e6==0?`${c/1e6}M`:c.toLocaleString("en-US")} invocations, ${b.vercelCpuHours} h CPU, ${b.vercelMemoryGbH} GB-h memory / month`,use:F,pct:null,tone:"none"}),d.push({key:"analytics",item:"Vercel Web Analytics",limit:`${b.webAnalyticsEvents.toLocaleString("en-US")} events / month`,use:0===a.apps.total?"no apps watched":0===a.apps.read?`${F} \xb7 events ${F}`:`${a.apps.enabled} of ${a.apps.total} app${1===a.apps.total?"":"s"} enabled \xb7 events ${F}`,pct:null,tone:"none"}),d}({slots:(0,I.d)(d),neon:(0,I.D)(e,a,f).map(a=>({id:a.id,alias:a.alias,cu:a.cu})),apps:{total:i.length,read:i.filter(a=>null!==a.pageViews).length,enabled:i.filter(a=>a.pageViews?.enabled===!0).length}},h);return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsx)(c.N,{title:"Free tier budget",flush:!0,meta:"Everything stays on free plans",children:(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:q.o,children:[(0,b.jsx)(q.U,{head:["Item","Free limit","Current use"]}),(0,b.jsx)("tbody",{children:j.map(a=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("td",{className:q.z,children:a.item}),(0,b.jsx)("td",{className:`${q.z} text-ink-soft`,children:a.limit}),(0,b.jsxs)("td",{className:q.z,children:[(0,b.jsx)("span",{className:a.use.includes("not read yet")?"text-ink-soft":"font-mono text-[12.5px]",children:a.use}),null!==a.pct&&(0,b.jsx)(c.e,{pct:a.pct,tone:"warn"===a.tone||"err"===a.tone?a.tone:void 0})]})]},a.key))})]})})}),(0,b.jsx)(c.N,{title:"Free tier limits",meta:"Correct them here when a provider changes its free plan",children:(0,b.jsx)(J.BudgetForm,{saved:h})})]})}var L=a.i(530385),M=a.i(395936),N=a.i(701702),O=a.i(548734),P=a.i(837137),Q=a.i(556987),R=a.i(103493);async function S(){let a=await (0,O.f)().select({id:P.collectorRuns.id,startedAt:P.collectorRuns.startedAt,trigger:P.collectorRuns.trigger,tasks:P.collectorRuns.tasks,ok:P.collectorRuns.ok,errorSummary:P.collectorRuns.errorSummary,durationMs:P.collectorRuns.durationMs}).from(P.collectorRuns).orderBy((0,L.A)(P.collectorRuns.startedAt)).limit(20),d=await (0,t.e)().catch(()=>Q.a),e=function(a,b=a=>a){return a.map(a=>{var c;let d;return{id:a.id,at:`${(0,A.L)(a.startedAt)} ${(0,A.U)(a.startedAt)}`,trigger:D[a.trigger]??a.trigger,tasks:a.tasks.length?`${a.tasks.length} task${1===a.tasks.length?"":"s"}`:"none",duration:null===(c=a.durationMs)?"—":c<1e3?`${c} ms`:`${(c/1e3).toFixed(1)} s`,ok:a.ok,summary:null===a.ok?"Not finished":a.ok?"OK":(d=b(a.errorSummary?.trim()||"Finished with problems")).length<=80?d:`${d.slice(0,79).trimEnd()}…`}})}(a,a=>(0,Q.J)(a,d)),f=function(a=(()=>{try{return"cloud"===(0,z.c)()}catch{return!1}})()){let b=(0,A.C)(),c=(0,A.J)(),d=a?"as a Vercel environment variable and redeploy":"in .env",e=(0,A.R)(),f=e?`${e} isn't a time zone; using ${b} (${c}). Set an IANA name such as Europe/Berlin ${d}.`:`Time zone: ${b} (${c}). To change it, set WATCHBELL_TIMEZONE ${d}.`;return{zone:b,label:c,text:f,follows:a?`Times and the digest (07:00) follow it. The daily job is Vercel Cron at 20:00 UTC (${(0,A.G)()}).`:"Times, the daily job (03:00) and the digest (07:00) follow it."}}();return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsx)(R.f,{}),(0,b.jsxs)(c.N,{title:"What runs when",flush:!0,meta:"Per run, a task starts only when its interval has passed",children:[(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:q.o,children:[(0,b.jsx)(q.U,{head:["Task","Runs"]}),(0,b.jsx)("tbody",{children:(function(a=v.t){return Object.keys(a).map(b=>({task:b,label:C[b],every:B(a[b])}))})().map(a=>(0,b.jsxs)("tr",{children:[(0,b.jsxs)("td",{className:q.z,children:[a.label," ",(0,b.jsx)("span",{className:"ml-1 font-mono text-xs text-ink-soft",children:a.task})]}),(0,b.jsx)("td",{className:`${q.z} text-ink-soft`,children:a.every})]},a.task))})]})}),(0,b.jsxs)("div",{className:"grid grid-cols-[260px_minmax(0,1fr)] items-center gap-4 border-t border-line px-[18px] py-3 max-[720px]:grid-cols-1 max-[720px]:gap-1",children:[(0,b.jsxs)("div",{className:"font-medium",children:["Keep Supabase projects awake",(0,b.jsx)("span",{className:"mt-0.5 block text-[12.5px] font-normal text-ink-soft",children:"Off by default. Set per project on the Supabase page (Keep active, Auto-restore; owner only). Not offered for Neon, because staying awake would use up its CU-hours."})]}),(0,b.jsx)("span",{children:(0,b.jsx)(M.default,{href:"/supabase",className:(0,c.R)({size:"sm"}),children:"Open Supabase"})})]}),(0,b.jsxs)("div",{className:"grid grid-cols-[260px_minmax(0,1fr)] items-center gap-4 border-t border-line px-[18px] py-3 max-[720px]:grid-cols-1 max-[720px]:gap-1",children:[(0,b.jsxs)("div",{className:"font-medium",children:["Time zone",(0,b.jsx)("span",{className:"mt-0.5 block text-[12.5px] font-normal text-ink-soft",children:f.follows})]}),(0,b.jsx)("span",{className:"text-ink-soft",children:f.text})]})]}),(0,b.jsx)(c.N,{title:"Last 20 runs",flush:!0,meta:`Times in ${(0,A.D)()}`,children:0===e.length?(0,b.jsx)("p",{className:"px-[18px] pb-4 text-ink-soft",children:"The collector hasn't run yet."}):(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:q.o,children:[(0,b.jsx)(q.U,{head:["Started","Trigger","Tasks","Duration","Result"]}),(0,b.jsx)("tbody",{children:e.map(a=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("td",{className:`${q.z} font-mono text-[12.5px]`,children:a.at}),(0,b.jsx)("td",{className:q.z,children:a.trigger}),(0,b.jsx)("td",{className:q.z,children:a.tasks}),(0,b.jsx)("td",{className:`${q.z} font-mono text-[12.5px]`,children:a.duration}),(0,b.jsx)("td",{className:q.z,children:(0,b.jsx)(k.F,{state:null===a.ok?"build":a.ok?"ok":"warn",children:(0,b.jsx)(N.MaskedText,{text:a.summary})})})]},a.id))})]})})})]})}var T=a.i(532971),U=a.i(104195);async function V(){let a=await (0,s.J)(),d=function(a=u.f){return[{kind:"Raw checks",keeps:H(a.checks),note:"Every HTTP check result; the hourly rollups below keep the history."},{kind:"Hourly rollups",keeps:H(a.rollupsHourly),note:"Uptime and response numbers per monitor and hour."},{kind:"Stored logs",keeps:H(a.storedLogs),note:"The copy of Vercel warning and error logs."},{kind:"Deployments",keeps:H(a.deployments),note:"Older ones only; the current and the previous production deployment are always kept."},{kind:"Events",keeps:H(a.events),note:"The activity feed."},{kind:"Alerts",keeps:H(a.alerts),note:"Resolved alerts only, counted from when they resolved; open alerts stay."},{kind:"Collector runs",keeps:H(a.collectorRuns),note:"The run history shown in the Collector tab."},{kind:"Advisor dismissals",keeps:H(a.recommendationDismissals),note:"A dismissal only matters for 30 days."}]}(a),e=T.L.map(a=>({key:a,kind:T.I[a],note:d.find(b=>b.kind===T.I[a])?.note??""}));return(0,b.jsxs)(c.N,{title:"Retention",flush:!0,meta:`Cleaned daily at ${(0,A.G)()}`,children:[(0,b.jsx)("p",{className:"px-[18px] pb-3 text-ink-soft",children:"Only the console's own history is deleted. Nothing is ever deleted at a provider. The monthly backup runs on the 1st, before the clean-up, and reads hourly rollups, events and alerts, which keep at least 60 days."}),(0,b.jsx)(U.RetentionForm,{saved:a,rows:e})]})}var W=a.i(525826),X=a.i(93321),Y=a.i(154756),Z=a.i(267767),$=a.i(120396),_=a.i(173616),aa=a.i(564326);async function ab({actorId:a}){let d=(0,z.F)(),e=await (0,O.f)().select().from(P.members).orderBy((0,L.A)(P.members.createdAt)),f=d?[]:await (0,O.f)().select().from(P.invites).where((0,X.M)(P.invites.acceptedAt)).orderBy((0,L.A)(P.invites.createdAt)),g=new Date,h="border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px]",i="border-b border-line px-3 py-[9px] whitespace-nowrap first:pl-[18px]";return(0,b.jsxs)(c.N,{flush:!0,children:[(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-2 px-[18px] pb-3 pt-3.5",children:d?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"text-ink-soft",children:(0,z.W)()?"In the demo you are the only member. On a real install an owner adds people here.":"Members sign in with email and password. A new member gets a temporary password and picks their own at their first sign-in."}),!(0,z.W)()&&(0,b.jsx)($.AddMemberDialog,{})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"text-ink-soft",children:"Invite-only: people sign in with an email link, and only invited emails get in. Preview deployments stay behind Vercel Authentication."}),(0,b.jsx)(_.InviteDialog,{})]})}),(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full border-collapse",children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{children:[(0,b.jsx)("th",{className:h,children:"User"}),(0,b.jsx)("th",{className:h,children:"Role"}),(0,b.jsx)("th",{className:h,children:"Last seen"}),(0,b.jsx)("th",{className:h,children:"Status"}),(0,b.jsx)("th",{className:h})]})}),(0,b.jsxs)("tbody",{children:[e.map(c=>(0,b.jsxs)("tr",{className:"hover:bg-hover",children:[(0,b.jsx)("td",{className:i,children:(0,b.jsx)(Y.F,{kind:"usr",name:c.email})}),(0,b.jsx)("td",{className:i,children:c.id===a?(0,b.jsx)("span",{className:"rounded-[5px] border border-line bg-surface-2 px-1.5 text-xs text-ink-soft",children:"Owner (you)"}):(0,b.jsx)(aa.RoleSelect,{memberId:c.id,email:c.email,role:c.role})}),(0,b.jsx)("td",{className:`${i} text-ink-soft`,children:(a=>{if(!a)return"never";let b=Math.round((Date.now()-a.getTime())/6e4);if(b<2)return"now";if(b<60)return`${b} min ago`;let c=Math.round(b/60);return c<48?`${c} h ago`:`${Math.round(c/24)} days ago`})(c.lastSeenAt)}),(0,b.jsx)("td",{className:i,children:(0,b.jsx)(k.F,{state:"ok",children:"Active"})}),(0,b.jsx)("td",{className:i,children:c.id!==a&&(0,b.jsx)(aa.RemoveMember,{memberId:c.id,email:c.email,deletesAccount:"selfhost"===(0,z.c)()})})]},c.id)),f.map(a=>{let c=(0,Z.R)(a,g);return(0,b.jsxs)("tr",{className:"hover:bg-hover",children:[(0,b.jsx)("td",{className:i,children:(0,b.jsx)(Y.F,{kind:"usr",name:a.email})}),(0,b.jsx)("td",{className:i,children:(0,b.jsx)("span",{className:"rounded-[5px] border border-line bg-surface-2 px-1.5 text-xs text-ink-soft",children:a.role[0].toUpperCase()+a.role.slice(1)})}),(0,b.jsx)("td",{className:`${i} text-ink-soft`,children:"invited"}),(0,b.jsx)("td",{className:i,children:"open"===c?(0,b.jsx)(k.F,{state:"off",children:"Invited"}):(0,b.jsx)(k.F,{state:"warn",children:"Invite expired"})}),(0,b.jsx)("td",{className:i,children:(0,b.jsx)(aa.RevokeInvite,{inviteId:a.id,email:a.email})})]},a.id)})]})]})})]})}let ac=["collector","budget","users","retention","status-page"];async function ad({searchParams:a}){let j=await (0,f.B)("owner");if(!j.ok)return(0,b.jsx)(d.f,{role:j.member.role});let[{tab:k},l]=await Promise.all([a,(0,h.a)()]),m=g.extensions.settingsTabs??[],n=!g.extensions.runner,o=[...ac,...n?["lockfile"]:[],...m.map(a=>a.key)];return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(c.L,{crumbs:[{label:"Administration"},{label:"Settings"}],title:"Settings"}),(0,b.jsxs)(e.Tabs,{defaultValue:k&&o.includes(k)?k:"users",className:"mt-3.5",children:[(0,b.jsxs)(e.TabsList,{variant:"line",children:[(0,b.jsx)(e.TabsTrigger,{value:"collector",children:"Collector"}),(0,b.jsx)(e.TabsTrigger,{value:"budget",children:"Free tier budget"}),(0,b.jsx)(e.TabsTrigger,{value:"users",children:"Users"}),(0,b.jsx)(e.TabsTrigger,{value:"retention",children:"Retention"}),(0,b.jsx)(e.TabsTrigger,{value:"status-page",children:"Status page"}),n&&(0,b.jsx)(e.TabsTrigger,{value:"lockfile",children:"Lockfile"}),m.map(a=>(0,b.jsx)(e.TabsTrigger,{value:a.key,children:a.label},a.key))]}),(0,b.jsx)(e.TabsContent,{value:"collector",className:"mt-4",children:(0,b.jsx)(S,{})}),(0,b.jsx)(e.TabsContent,{value:"budget",className:"mt-4",children:(0,b.jsx)(K,{})}),(0,b.jsx)(e.TabsContent,{value:"users",className:"mt-4",children:(0,b.jsx)(ab,{actorId:j.member.id})}),(0,b.jsx)(e.TabsContent,{value:"retention",className:"mt-4",children:(0,b.jsx)(V,{})}),(0,b.jsx)(e.TabsContent,{value:"status-page",className:"mt-4",children:(0,b.jsx)(W.StatusPageTab,{settings:l,siteUrl:(0,i.f)().SITE_URL})}),n&&(0,b.jsx)(e.TabsContent,{value:"lockfile",className:"mt-4",children:(0,b.jsx)(p,{})}),m.map(({key:a,Tab:c})=>(0,b.jsx)(e.TabsContent,{value:a,className:"mt-4",children:(0,b.jsx)(c,{})},a))]})]})}a.s(["default",0,ad],976739)},718121,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call RetentionForm() from the server but RetentionForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/retention-form.tsx","RetentionForm");a.s(["RetentionForm",0,b])},104195,a=>{var b=a.i(718121);a.n(b)},391022,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call StatusPageTab() from the server but StatusPageTab is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/status-page-tab.tsx","StatusPageTab");a.s(["StatusPageTab",0,b])},525826,a=>{var b=a.i(391022);a.n(b)},736935,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call CopyButton() from the server but CopyButton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/copy-button.tsx","CopyButton");a.s(["CopyButton",0,b])},529960,a=>{var b=a.i(736935);a.n(b)}],814659,function(a){a.n(a.i(976739))}];
1
+ module.exports=[[829534,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call ActionsRepoForm() from the server but ActionsRepoForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/actions-repo-form.tsx","ActionsRepoForm");a.s(["ActionsRepoForm",0,b])},386180,a=>{var b=a.i(829534);a.n(b)},541088,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call AddMemberDialog() from the server but AddMemberDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/add-member-dialog.tsx","AddMemberDialog");a.s(["AddMemberDialog",0,b])},120396,a=>{var b=a.i(541088);a.n(b)},933292,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call BudgetForm() from the server but BudgetForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/budget-form.tsx","BudgetForm");a.s(["BudgetForm",0,b])},285100,a=>{var b=a.i(933292);a.n(b)},915832,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call InviteDialog() from the server but InviteDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/invite-dialog.tsx","InviteDialog");a.s(["InviteDialog",0,b])},173616,a=>{var b=a.i(915832);a.n(b)},7109,a=>{var b=a.i(211857);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call RemoveMember() from the server but RemoveMember is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/member-actions.tsx","RemoveMember"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call RevokeInvite() from the server but RevokeInvite is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/member-actions.tsx","RevokeInvite"),e=(0,b.registerClientReference)(function(){throw Error("Attempted to call RoleSelect() from the server but RoleSelect is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/member-actions.tsx","RoleSelect");a.s(["RemoveMember",0,c,"RevokeInvite",0,d,"RoleSelect",0,e])},564326,a=>{var b=a.i(7109);a.n(b)},976739,a=>{var b=a.i(907997),c=a.i(803681),d=a.i(75148),e=a.i(473083),f=a.i(109307),g=a.i(534908),h=a.i(149396),i=a.i(492665),j=a.i(529960),k=a.i(686251),l=a.i(462820),m=a.i(976937),n=a.i(972123),o=a.i(386180);async function p(){let a=await (0,m.c)().catch(()=>null);return(0,b.jsxs)(c.N,{title:"Lockfile via GitHub Actions",meta:a?(0,b.jsx)(k.F,{state:"ok",children:"On"}):(0,b.jsx)(k.F,{state:"off",children:"Off"}),children:[(0,b.jsx)("p",{className:"text-[13px] text-ink-soft",children:l.K.lockfileIntro}),(0,b.jsxs)("ol",{className:"mt-2 flex list-decimal flex-col gap-3 pl-5 text-[13px]",children:[(0,b.jsxs)("li",{children:["Create a repository on GitHub, for example ",(0,b.jsx)("span",{className:"font-mono",children:"watchbell-actions"})," (private is fine)."]}),(0,b.jsxs)("li",{children:["Add the file ",(0,b.jsx)("span",{className:"font-mono",children:".github/workflows/watchbell-lockfile.yml"})," ",(0,b.jsx)(j.CopyButton,{text:".github/workflows/watchbell-lockfile.yml",label:"Copy path"})," with this content:",(0,b.jsx)("div",{className:"mt-1 flex justify-end",children:(0,b.jsx)(j.CopyButton,{text:n.G,label:"Copy workflow"})}),(0,b.jsx)("code",{className:"block overflow-x-auto rounded-md border border-line bg-surface-2 px-3 py-2 font-mono text-[12.5px] whitespace-pre mt-1 max-h-72",children:n.G})]}),(0,b.jsxs)("li",{children:["In that repository: Settings › Secrets and variables › Actions › New repository secret, name ",(0,b.jsx)("span",{className:"font-mono",children:"WATCHBELL_PR_TOKEN"})," ",(0,b.jsx)(j.CopyButton,{text:"WATCHBELL_PR_TOKEN",label:"Copy name"}),", value: your GitHub PR-write token (the same one on Connections)."]}),(0,b.jsx)("li",{children:"Give the PR-write token access to this new repository too (GitHub › Settings › Developer settings › your token › Repository access), with Contents: Read and write."}),(0,b.jsx)("li",{children:"Save the repository name here:"})]}),(0,b.jsx)("div",{className:"mt-2",children:(0,b.jsx)(o.ActionsRepoForm,{current:a})})]})}var q=a.i(791444),r=a.i(840784),s=a.i(186133),t=a.i(532620),u=a.i(655206),v=a.i(634418),w=a.i(688275),x=a.i(672319),y=a.i(711251),z=a.i(371289),A=a.i(245710);function B(a){return a>=86400&&a%86400==0?`every ${a/86400} day${86400===a?"":"s"}`:a>=3600&&a%3600==0?`every ${a/3600} h`:a>=60&&a%60==0?`every ${a/60} min`:`every ${a} s`}let C={heartbeats:"Heartbeat monitors: recompute from the last ping",checks:"HTTP uptime checks",vercel:"Vercel projects and deployments",supabase:"Supabase project status",supabaseUsage:"Supabase service health and traffic",neon:"Neon status and usage",firebase:"Firestore health read",firebaseUsage:"Firestore usage",extraDbs:"Turso, Upstash Redis and Cloudflare D1 status and usage",cloudflare:"Cloudflare zones and DNS",domains:"Vercel domain settings",tls:"TLS certificate expiry",rdap:"Domain expiry (RDAP)",eol:"Next.js end-of-life data",status:"Provider status feeds",logs:"Copy of Vercel warning and error logs",pageviews:"Web Analytics page views",alerts:"Alert rules and notices",digest:"Digest due check"},D={cron_job_org:"cron-job.org",qstash:"QStash",vercel_cron:"Vercel Cron",manual:"Refresh now"},E=v.t.checks,F="not read yet",G=a=>Math.round(10*a)/10,H=a=>`${a} days`;var I=a.i(715208),J=a.i(285100);async function K(){let a=new Date,[d,e,f,g,h]=await Promise.all([(0,t.V)(),(0,t.R)("neon_project"),(0,t.e)(),(0,r.G)(a),(0,s.j)()]),i=g.filter(a=>!a.gone),j=function(a,b=y.o){let c,d=[],e=a=>null===a?"none":a>=b.errPct?"err":a>=b.warnPct?"warn":"ok";for(let b of(a.slots.length||d.push({key:"supabase",item:"Supabase free projects",limit:`${x.V} active projects per account`,use:"no Supabase account connected",pct:null,tone:"none"}),a.slots)){let a=G(b.used/b.total*100);d.push({key:`supabase-${b.account}`,item:`Supabase free projects \xb7 ${b.account}`,limit:`${b.total} active per account`,use:`${b.used} of ${b.total} used${b.planUnknown?" (plan not read for every org)":""}`,pct:a,tone:e(a)})}for(let b of(a.neon.length||d.push({key:"neon",item:"Neon CU-hours",limit:`${w.a.cuHours} CU-hours / month per project`,use:"no Neon project watched",pct:null,tone:"none"}),a.neon))d.push({key:`neon-${b.id}`,item:`Neon CU-hours \xb7 ${b.alias}`,limit:`${w.a.cuHours} CU-hours / month per project`,use:b.cu?`${b.cu.value} CU-hours`:F,pct:b.cu?.pct??null,tone:e(b.cu?.pct??null)});let f=G(288/b.qstashPerDay*100);return d.push({key:"qstash",item:"Upstash QStash messages",limit:`${b.qstashPerDay.toLocaleString("en-US")} / day`,use:`288 / day (watchdog ${B(300)})`,pct:f,tone:e(f)}),d.push({key:"cron",item:"cron-job.org runs",limit:"1 run / min (shortest free interval)",use:`1 run / min (${(86400/E).toLocaleString("en-US")} / day)`,pct:null,tone:"none"}),d.push({key:"vercel",item:"Vercel Hobby",limit:`${(c=b.vercelInvocations)>=1e6&&c%1e6==0?`${c/1e6}M`:c.toLocaleString("en-US")} invocations, ${b.vercelCpuHours} h CPU, ${b.vercelMemoryGbH} GB-h memory / month`,use:F,pct:null,tone:"none"}),d.push({key:"analytics",item:"Vercel Web Analytics",limit:`${b.webAnalyticsEvents.toLocaleString("en-US")} events / month`,use:0===a.apps.total?"no apps watched":0===a.apps.read?`${F} \xb7 events ${F}`:`${a.apps.enabled} of ${a.apps.total} app${1===a.apps.total?"":"s"} enabled \xb7 events ${F}`,pct:null,tone:"none"}),d}({slots:(0,I.d)(d),neon:(0,I.D)(e,a,f).map(a=>({id:a.id,alias:a.alias,cu:a.cu})),apps:{total:i.length,read:i.filter(a=>null!==a.pageViews).length,enabled:i.filter(a=>a.pageViews?.enabled===!0).length}},h);return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsx)(c.N,{title:"Free tier budget",flush:!0,meta:"Everything stays on free plans",children:(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:q.o,children:[(0,b.jsx)(q.U,{head:["Item","Free limit","Current use"]}),(0,b.jsx)("tbody",{children:j.map(a=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("td",{className:q.z,children:a.item}),(0,b.jsx)("td",{className:`${q.z} text-ink-soft`,children:a.limit}),(0,b.jsxs)("td",{className:q.z,children:[(0,b.jsx)("span",{className:a.use.includes("not read yet")?"text-ink-soft":"font-mono text-[12.5px]",children:a.use}),null!==a.pct&&(0,b.jsx)(c.e,{pct:a.pct,tone:"warn"===a.tone||"err"===a.tone?a.tone:void 0})]})]},a.key))})]})})}),(0,b.jsx)(c.N,{title:"Free tier limits",meta:"Correct them here when a provider changes its free plan",children:(0,b.jsx)(J.BudgetForm,{saved:h})})]})}var L=a.i(530385),M=a.i(395936),N=a.i(701702),O=a.i(548734),P=a.i(837137),Q=a.i(556987),R=a.i(103493);async function S(){let a=await (0,O.f)().select({id:P.collectorRuns.id,startedAt:P.collectorRuns.startedAt,trigger:P.collectorRuns.trigger,tasks:P.collectorRuns.tasks,ok:P.collectorRuns.ok,errorSummary:P.collectorRuns.errorSummary,durationMs:P.collectorRuns.durationMs}).from(P.collectorRuns).orderBy((0,L.A)(P.collectorRuns.startedAt)).limit(20),d=await (0,t.e)().catch(()=>Q.a),e=function(a,b=a=>a){return a.map(a=>{var c;let d;return{id:a.id,at:`${(0,A.L)(a.startedAt)} ${(0,A.U)(a.startedAt)}`,trigger:D[a.trigger]??a.trigger,tasks:a.tasks.length?`${a.tasks.length} task${1===a.tasks.length?"":"s"}`:"none",duration:null===(c=a.durationMs)?"—":c<1e3?`${c} ms`:`${(c/1e3).toFixed(1)} s`,ok:a.ok,summary:null===a.ok?"Not finished":a.ok?"OK":(d=b(a.errorSummary?.trim()||"Finished with problems")).length<=80?d:`${d.slice(0,79).trimEnd()}…`}})}(a,a=>(0,Q.J)(a,d)),f=function(a=(()=>{try{return"cloud"===(0,z.c)()}catch{return!1}})()){let b=(0,A.C)(),c=(0,A.J)(),d=a?"as a Vercel environment variable and redeploy":"in .env",e=(0,A.R)(),f=e?`${e} isn't a time zone; using ${b} (${c}). Set an IANA name such as Europe/Berlin ${d}.`:`Time zone: ${b} (${c}). To change it, set WATCHBELL_TIMEZONE ${d}.`;return{zone:b,label:c,text:f,follows:a?`Times and the digest (07:00) follow it. The daily job is Vercel Cron at 20:00 UTC (${(0,A.G)()}).`:"Times, the daily job (03:00) and the digest (07:00) follow it."}}();return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsx)(R.f,{}),(0,b.jsxs)(c.N,{title:"What runs when",flush:!0,meta:"Per run, a task starts only when its interval has passed",children:[(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:q.o,children:[(0,b.jsx)(q.U,{head:["Task","Runs"]}),(0,b.jsx)("tbody",{children:(function(a=v.t){return Object.keys(a).map(b=>({task:b,label:C[b],every:B(a[b])}))})().map(a=>(0,b.jsxs)("tr",{children:[(0,b.jsxs)("td",{className:q.z,children:[a.label," ",(0,b.jsx)("span",{className:"ml-1 font-mono text-xs text-ink-soft",children:a.task})]}),(0,b.jsx)("td",{className:`${q.z} text-ink-soft`,children:a.every})]},a.task))})]})}),(0,b.jsxs)("div",{className:"grid grid-cols-[260px_minmax(0,1fr)] items-center gap-4 border-t border-line px-[18px] py-3 max-[720px]:grid-cols-1 max-[720px]:gap-1",children:[(0,b.jsxs)("div",{className:"font-medium",children:["Keep Supabase projects awake",(0,b.jsx)("span",{className:"mt-0.5 block text-[12.5px] font-normal text-ink-soft",children:"Off by default. Set per project on the Supabase page (Keep active, Auto-restore; owner only). Not offered for Neon, because staying awake would use up its CU-hours."})]}),(0,b.jsx)("span",{children:(0,b.jsx)(M.default,{href:"/supabase",className:(0,c.R)({size:"sm"}),children:"Open Supabase"})})]}),(0,b.jsxs)("div",{className:"grid grid-cols-[260px_minmax(0,1fr)] items-center gap-4 border-t border-line px-[18px] py-3 max-[720px]:grid-cols-1 max-[720px]:gap-1",children:[(0,b.jsxs)("div",{className:"font-medium",children:["Time zone",(0,b.jsx)("span",{className:"mt-0.5 block text-[12.5px] font-normal text-ink-soft",children:f.follows})]}),(0,b.jsx)("span",{className:"text-ink-soft",children:f.text})]})]}),(0,b.jsx)(c.N,{title:"Last 20 runs",flush:!0,meta:`Times in ${(0,A.D)()}`,children:0===e.length?(0,b.jsx)("p",{className:"px-[18px] pb-4 text-ink-soft",children:"The collector hasn't run yet."}):(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:q.o,children:[(0,b.jsx)(q.U,{head:["Started","Trigger","Tasks","Duration","Result"]}),(0,b.jsx)("tbody",{children:e.map(a=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("td",{className:`${q.z} font-mono text-[12.5px]`,children:a.at}),(0,b.jsx)("td",{className:q.z,children:a.trigger}),(0,b.jsx)("td",{className:q.z,children:a.tasks}),(0,b.jsx)("td",{className:`${q.z} font-mono text-[12.5px]`,children:a.duration}),(0,b.jsx)("td",{className:q.z,children:(0,b.jsx)(k.F,{state:null===a.ok?"build":a.ok?"ok":"warn",children:(0,b.jsx)(N.MaskedText,{text:a.summary})})})]},a.id))})]})})})]})}var T=a.i(532971),U=a.i(104195);async function V(){let a=await (0,s.J)(),d=function(a=u.f){return[{kind:"Raw checks",keeps:H(a.checks),note:"Every HTTP check result; the hourly rollups below keep the history."},{kind:"Hourly rollups",keeps:H(a.rollupsHourly),note:"Uptime and response numbers per monitor and hour."},{kind:"Stored logs",keeps:H(a.storedLogs),note:"The copy of Vercel warning and error logs."},{kind:"Deployments",keeps:H(a.deployments),note:"Older ones only; the current and the previous production deployment are always kept."},{kind:"Events",keeps:H(a.events),note:"The activity feed."},{kind:"Alerts",keeps:H(a.alerts),note:"Resolved alerts only, counted from when they resolved; open alerts stay."},{kind:"Collector runs",keeps:H(a.collectorRuns),note:"The run history shown in the Collector tab."},{kind:"Advisor dismissals",keeps:H(a.recommendationDismissals),note:"A dismissal only matters for 30 days."}]}(a),e=T.L.map(a=>({key:a,kind:T.I[a],note:d.find(b=>b.kind===T.I[a])?.note??""}));return(0,b.jsxs)(c.N,{title:"Retention",flush:!0,meta:`Cleaned daily at ${(0,A.G)()}`,children:[(0,b.jsx)("p",{className:"px-[18px] pb-3 text-ink-soft",children:"Only the console's own history is deleted. Nothing is ever deleted at a provider. The monthly backup runs on the 1st, before the clean-up, and reads hourly rollups, events and alerts, which keep at least 60 days."}),(0,b.jsx)(U.RetentionForm,{saved:a,rows:e})]})}var W=a.i(525826),X=a.i(93321),Y=a.i(154756),Z=a.i(267767),$=a.i(120396),_=a.i(173616),aa=a.i(564326);async function ab({actorId:a}){let d=(0,z.F)(),e=await (0,O.f)().select().from(P.members).orderBy((0,L.A)(P.members.createdAt)),f=d?[]:await (0,O.f)().select().from(P.invites).where((0,X.M)(P.invites.acceptedAt)).orderBy((0,L.A)(P.invites.createdAt)),g=new Date,h="border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px]",i="border-b border-line px-3 py-[9px] whitespace-nowrap first:pl-[18px]";return(0,b.jsxs)(c.N,{flush:!0,children:[(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-2 px-[18px] pb-3 pt-3.5",children:d?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"text-ink-soft",children:(0,z.W)()?"In the demo you are the only member. On a real install an owner adds people here.":"Members sign in with email and password. A new member gets a temporary password and picks their own at their first sign-in."}),!(0,z.W)()&&(0,b.jsx)($.AddMemberDialog,{})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"text-ink-soft",children:"Invite-only: people sign in with an email link, and only invited emails get in. Preview deployments stay behind Vercel Authentication."}),(0,b.jsx)(_.InviteDialog,{})]})}),(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full border-collapse",children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{children:[(0,b.jsx)("th",{className:h,children:"User"}),(0,b.jsx)("th",{className:h,children:"Role"}),(0,b.jsx)("th",{className:h,children:"Last seen"}),(0,b.jsx)("th",{className:h,children:"Status"}),(0,b.jsx)("th",{className:h})]})}),(0,b.jsxs)("tbody",{children:[e.map(c=>(0,b.jsxs)("tr",{className:"hover:bg-hover",children:[(0,b.jsx)("td",{className:i,children:(0,b.jsx)(Y.F,{kind:"usr",name:c.email})}),(0,b.jsx)("td",{className:i,children:c.id===a?(0,b.jsx)("span",{className:"rounded-[5px] border border-line bg-surface-2 px-1.5 text-xs text-ink-soft",children:"Owner (you)"}):(0,b.jsx)(aa.RoleSelect,{memberId:c.id,email:c.email,role:c.role})}),(0,b.jsx)("td",{className:`${i} text-ink-soft`,children:(a=>{if(!a)return"never";let b=Math.round((Date.now()-a.getTime())/6e4);if(b<2)return"now";if(b<60)return`${b} min ago`;let c=Math.round(b/60);return c<48?`${c} h ago`:`${Math.round(c/24)} days ago`})(c.lastSeenAt)}),(0,b.jsx)("td",{className:i,children:(0,b.jsx)(k.F,{state:"ok",children:"Active"})}),(0,b.jsx)("td",{className:i,children:c.id!==a&&(0,b.jsx)(aa.RemoveMember,{memberId:c.id,email:c.email,deletesAccount:"selfhost"===(0,z.c)()})})]},c.id)),f.map(a=>{let c=(0,Z.R)(a,g);return(0,b.jsxs)("tr",{className:"hover:bg-hover",children:[(0,b.jsx)("td",{className:i,children:(0,b.jsx)(Y.F,{kind:"usr",name:a.email})}),(0,b.jsx)("td",{className:i,children:(0,b.jsx)("span",{className:"rounded-[5px] border border-line bg-surface-2 px-1.5 text-xs text-ink-soft",children:a.role[0].toUpperCase()+a.role.slice(1)})}),(0,b.jsx)("td",{className:`${i} text-ink-soft`,children:"invited"}),(0,b.jsx)("td",{className:i,children:"open"===c?(0,b.jsx)(k.F,{state:"off",children:"Invited"}):(0,b.jsx)(k.F,{state:"warn",children:"Invite expired"})}),(0,b.jsx)("td",{className:i,children:(0,b.jsx)(aa.RevokeInvite,{inviteId:a.id,email:a.email})})]},a.id)})]})]})})]})}let ac=["collector","budget","users","retention","status-page"];async function ad({searchParams:a}){let j=await (0,f.B)("owner");if(!j.ok)return(0,b.jsx)(d.f,{role:j.member.role});let[{tab:k},l]=await Promise.all([a,(0,h.a)()]),m=g.extensions.settingsTabs??[],n=!g.extensions.runner,o=[...ac,...n?["lockfile"]:[],...m.map(a=>a.key)];return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(c.L,{crumbs:[{label:"Manage"},{label:"Settings"}],title:"Settings"}),(0,b.jsxs)(e.Tabs,{defaultValue:k&&o.includes(k)?k:"users",className:"mt-3.5",children:[(0,b.jsxs)(e.TabsList,{variant:"line",children:[(0,b.jsx)(e.TabsTrigger,{value:"collector",children:"Collector"}),(0,b.jsx)(e.TabsTrigger,{value:"budget",children:"Free tier budget"}),(0,b.jsx)(e.TabsTrigger,{value:"users",children:"Users"}),(0,b.jsx)(e.TabsTrigger,{value:"retention",children:"Retention"}),(0,b.jsx)(e.TabsTrigger,{value:"status-page",children:"Status page"}),n&&(0,b.jsx)(e.TabsTrigger,{value:"lockfile",children:"Lockfile"}),m.map(a=>(0,b.jsx)(e.TabsTrigger,{value:a.key,children:a.label},a.key))]}),(0,b.jsx)(e.TabsContent,{value:"collector",className:"mt-4",children:(0,b.jsx)(S,{})}),(0,b.jsx)(e.TabsContent,{value:"budget",className:"mt-4",children:(0,b.jsx)(K,{})}),(0,b.jsx)(e.TabsContent,{value:"users",className:"mt-4",children:(0,b.jsx)(ab,{actorId:j.member.id})}),(0,b.jsx)(e.TabsContent,{value:"retention",className:"mt-4",children:(0,b.jsx)(V,{})}),(0,b.jsx)(e.TabsContent,{value:"status-page",className:"mt-4",children:(0,b.jsx)(W.StatusPageTab,{settings:l,siteUrl:(0,i.f)().SITE_URL})}),n&&(0,b.jsx)(e.TabsContent,{value:"lockfile",className:"mt-4",children:(0,b.jsx)(p,{})}),m.map(({key:a,Tab:c})=>(0,b.jsx)(e.TabsContent,{value:a,className:"mt-4",children:(0,b.jsx)(c,{})},a))]},k??"")]})}a.s(["default",0,ad],976739)},718121,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call RetentionForm() from the server but RetentionForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/retention-form.tsx","RetentionForm");a.s(["RetentionForm",0,b])},104195,a=>{var b=a.i(718121);a.n(b)},391022,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call StatusPageTab() from the server but StatusPageTab is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(console)/settings/status-page-tab.tsx","StatusPageTab");a.s(["StatusPageTab",0,b])},525826,a=>{var b=a.i(391022);a.n(b)},736935,a=>{let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call CopyButton() from the server but CopyButton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/copy-button.tsx","CopyButton");a.s(["CopyButton",0,b])},529960,a=>{var b=a.i(736935);a.n(b)}],814659,function(a){a.n(a.i(976739))}];
2
2
 
3
3
  //# sourceMappingURL=src_1sdwdnblbiq_g._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[820480,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Databases","Supabase"],title:"Supabase",sub:!0,children:[(0,b.jsx)(c.d,{count:3}),(0,b.jsx)(c.G,{rows:4,cols:8})]})}])},891090,function(a){a.n(a.i(820480))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[820480,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Database","Supabase"],title:"Supabase",sub:!0,children:[(0,b.jsx)(c.d,{count:3}),(0,b.jsx)(c.G,{rows:4,cols:8})]})}])},891090,function(a){a.n(a.i(820480))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_1xsg-zd4lt_d4._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[766656,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Observe","Uptime"],title:"Uptime",sub:!0,children:[(0,b.jsx)(c.d,{count:4,className:"min-[721px]:grid-cols-2 min-[1001px]:grid-cols-2 min-[1281px]:grid-cols-4"}),(0,b.jsx)(c.G,{rows:6,cols:7})]})}])},356830,function(a){a.n(a.i(766656))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[766656,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Hosting","Uptime"],title:"Uptime",sub:!0,children:[(0,b.jsx)(c.d,{count:4,className:"min-[721px]:grid-cols-2 min-[1001px]:grid-cols-2 min-[1281px]:grid-cols-4"}),(0,b.jsx)(c.G,{rows:6,cols:7})]})}])},356830,function(a){a.n(a.i(766656))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_1y0xvj1obxu7i._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[347842,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Observe","Alerts"],title:"Alerts",sub:!0,children:[(0,b.jsx)(c.G,{title:!0,rows:3,cols:5}),(0,b.jsx)(c.G,{title:!0,rows:4,cols:5})]})}])},299667,function(a){a.n(a.i(347842))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[347842,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsxs)(c.F,{crumbs:["Manage","Alerts"],title:"Alerts",sub:!0,children:[(0,b.jsx)(c.G,{title:!0,rows:3,cols:5}),(0,b.jsx)(c.G,{title:!0,rows:4,cols:5})]})}])},299667,function(a){a.n(a.i(347842))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_1zpftf1xj-30l._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[849452,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Workloads","Applications"],title:"Applications",sub:!0,children:(0,b.jsx)(c.G,{rows:6,cols:7})})}])},389048,function(a){a.n(a.i(849452))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
1
+ module.exports=[849452,a=>{"use strict";var b=a.i(907997),c=a.i(411182);a.s(["default",0,function(){return(0,b.jsx)(c.F,{crumbs:["Hosting","Applications"],title:"Applications",sub:!0,children:(0,b.jsx)(c.G,{rows:6,cols:7})})}])},389048,function(a){a.n(a.i(849452))},791444,a=>{"use strict";var b=a.i(907997);let c="whitespace-nowrap border-y border-line bg-surface-2 px-3 py-2 text-left text-[12.5px] font-medium text-ink-soft first:pl-[18px] last:pr-3.5";a.s(["U",0,function({head:a}){return(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{children:a.map((a,d)=>(0,b.jsx)("th",{className:c,children:a},d))})})},"C",0,"hover:bg-hover","o",0,"w-full border-collapse [&_tbody_tr:last-child_td]:border-b-0","z",0,"whitespace-nowrap border-b border-line px-3 py-[9px] align-middle first:pl-[18px] last:pr-3.5","M",0,"min-w-40 whitespace-normal","I",0,c])}];
2
2
 
3
3
  //# sourceMappingURL=src_20hs1ilkxmap0._.js.map