watchbell 1.3.1 → 1.6.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 (878) 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 +3 -0
  4. package/server/.next/build-manifest.json +36 -3
  5. package/server/.next/prerender-manifest.json +3 -3
  6. package/server/.next/routes-manifest.json +18 -0
  7. package/server/.next/server/app/(console)/(private)/ai/agents/page/server-reference-manifest.json +13 -13
  8. package/server/.next/server/app/(console)/(private)/ai/agents/page.js +76 -68
  9. package/server/.next/server/app/(console)/(private)/ai/agents/page.js.nft.json +1 -1
  10. package/server/.next/server/app/(console)/(private)/ai/agents/page_client-reference-manifest.js +1 -1
  11. package/server/.next/server/app/(console)/(private)/ai/ask/page/server-reference-manifest.json +12 -12
  12. package/server/.next/server/app/(console)/(private)/ai/ask/page.js +76 -68
  13. package/server/.next/server/app/(console)/(private)/ai/ask/page.js.nft.json +1 -1
  14. package/server/.next/server/app/(console)/(private)/ai/ask/page_client-reference-manifest.js +1 -1
  15. package/server/.next/server/app/(console)/(private)/ai/connect/page/server-reference-manifest.json +11 -11
  16. package/server/.next/server/app/(console)/(private)/ai/connect/page.js +76 -68
  17. package/server/.next/server/app/(console)/(private)/ai/connect/page.js.nft.json +1 -1
  18. package/server/.next/server/app/(console)/(private)/ai/connect/page_client-reference-manifest.js +1 -1
  19. package/server/.next/server/app/(console)/(private)/ai/keys/page/server-reference-manifest.json +14 -14
  20. package/server/.next/server/app/(console)/(private)/ai/keys/page.js +76 -68
  21. package/server/.next/server/app/(console)/(private)/ai/keys/page.js.nft.json +1 -1
  22. package/server/.next/server/app/(console)/(private)/ai/keys/page_client-reference-manifest.js +1 -1
  23. package/server/.next/server/app/(console)/(private)/ai/logs/page/server-reference-manifest.json +12 -12
  24. package/server/.next/server/app/(console)/(private)/ai/logs/page.js +76 -68
  25. package/server/.next/server/app/(console)/(private)/ai/logs/page.js.nft.json +1 -1
  26. package/server/.next/server/app/(console)/(private)/ai/logs/page_client-reference-manifest.js +1 -1
  27. package/server/.next/server/app/(console)/(private)/ai/models/page/server-reference-manifest.json +21 -21
  28. package/server/.next/server/app/(console)/(private)/ai/models/page.js +76 -68
  29. package/server/.next/server/app/(console)/(private)/ai/models/page.js.nft.json +1 -1
  30. package/server/.next/server/app/(console)/(private)/ai/models/page_client-reference-manifest.js +1 -1
  31. package/server/.next/server/app/(console)/(private)/ai/page/server-reference-manifest.json +11 -11
  32. package/server/.next/server/app/(console)/(private)/ai/page.js +76 -68
  33. package/server/.next/server/app/(console)/(private)/ai/page.js.nft.json +1 -1
  34. package/server/.next/server/app/(console)/(private)/ai/page_client-reference-manifest.js +1 -1
  35. package/server/.next/server/app/(console)/(private)/ai/playground/page/server-reference-manifest.json +14 -14
  36. package/server/.next/server/app/(console)/(private)/ai/playground/page.js +76 -68
  37. package/server/.next/server/app/(console)/(private)/ai/playground/page.js.nft.json +1 -1
  38. package/server/.next/server/app/(console)/(private)/ai/playground/page_client-reference-manifest.js +1 -1
  39. package/server/.next/server/app/(console)/(private)/ai/providers/page/server-reference-manifest.json +17 -17
  40. package/server/.next/server/app/(console)/(private)/ai/providers/page.js +76 -68
  41. package/server/.next/server/app/(console)/(private)/ai/providers/page.js.nft.json +1 -1
  42. package/server/.next/server/app/(console)/(private)/ai/providers/page_client-reference-manifest.js +1 -1
  43. package/server/.next/server/app/(console)/(private)/ai/quota/page/server-reference-manifest.json +12 -12
  44. package/server/.next/server/app/(console)/(private)/ai/quota/page.js +76 -68
  45. package/server/.next/server/app/(console)/(private)/ai/quota/page.js.nft.json +1 -1
  46. package/server/.next/server/app/(console)/(private)/ai/quota/page_client-reference-manifest.js +1 -1
  47. package/server/.next/server/app/(console)/(private)/ai/usage/page/server-reference-manifest.json +12 -12
  48. package/server/.next/server/app/(console)/(private)/ai/usage/page.js +76 -68
  49. package/server/.next/server/app/(console)/(private)/ai/usage/page.js.nft.json +1 -1
  50. package/server/.next/server/app/(console)/(private)/ai/usage/page_client-reference-manifest.js +1 -1
  51. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page/server-reference-manifest.json +11 -11
  52. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js +76 -68
  53. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page.js.nft.json +1 -1
  54. package/server/.next/server/app/(console)/(private)/api-docs/[[...op]]/page_client-reference-manifest.js +1 -1
  55. package/server/.next/server/app/(console)/(private)/auto-actions/page/server-reference-manifest.json +12 -12
  56. package/server/.next/server/app/(console)/(private)/auto-actions/page.js +76 -68
  57. package/server/.next/server/app/(console)/(private)/auto-actions/page.js.nft.json +1 -1
  58. package/server/.next/server/app/(console)/(private)/auto-actions/page_client-reference-manifest.js +1 -1
  59. package/server/.next/server/app/(console)/alerts/page/server-reference-manifest.json +27 -27
  60. package/server/.next/server/app/(console)/alerts/page.js +76 -68
  61. package/server/.next/server/app/(console)/alerts/page.js.nft.json +1 -1
  62. package/server/.next/server/app/(console)/alerts/page_client-reference-manifest.js +1 -1
  63. package/server/.next/server/app/(console)/apps/[id]/page/server-reference-manifest.json +92 -62
  64. package/server/.next/server/app/(console)/apps/[id]/page.js +78 -70
  65. package/server/.next/server/app/(console)/apps/[id]/page.js.nft.json +1 -1
  66. package/server/.next/server/app/(console)/apps/[id]/page_client-reference-manifest.js +1 -1
  67. package/server/.next/server/app/(console)/apps/page/server-reference-manifest.json +14 -14
  68. package/server/.next/server/app/(console)/apps/page.js +78 -70
  69. package/server/.next/server/app/(console)/apps/page.js.nft.json +1 -1
  70. package/server/.next/server/app/(console)/apps/page_client-reference-manifest.js +1 -1
  71. package/server/.next/server/app/(console)/backups/page/server-reference-manifest.json +14 -14
  72. package/server/.next/server/app/(console)/backups/page.js +76 -68
  73. package/server/.next/server/app/(console)/backups/page.js.nft.json +1 -1
  74. package/server/.next/server/app/(console)/backups/page_client-reference-manifest.js +1 -1
  75. package/server/.next/server/app/(console)/catalog/page/server-reference-manifest.json +11 -11
  76. package/server/.next/server/app/(console)/catalog/page.js +76 -68
  77. package/server/.next/server/app/(console)/catalog/page.js.nft.json +1 -1
  78. package/server/.next/server/app/(console)/catalog/page_client-reference-manifest.js +1 -1
  79. package/server/.next/server/app/(console)/connections/page/server-reference-manifest.json +22 -22
  80. package/server/.next/server/app/(console)/connections/page.js +76 -68
  81. package/server/.next/server/app/(console)/connections/page.js.nft.json +1 -1
  82. package/server/.next/server/app/(console)/connections/page_client-reference-manifest.js +1 -1
  83. package/server/.next/server/app/(console)/containers/page/app-paths-manifest.json +3 -0
  84. package/server/.next/server/app/(console)/containers/page/build-manifest.json +22 -0
  85. package/server/.next/server/app/(console)/containers/page/next-font-manifest.json +11 -0
  86. package/server/.next/server/app/(console)/containers/page/react-loadable-manifest.json +1 -0
  87. package/server/.next/server/app/(console)/containers/page/server-reference-manifest.json +145 -0
  88. package/server/.next/server/app/(console)/containers/page.js +121 -0
  89. package/server/.next/server/app/(console)/containers/page.js.nft.json +1 -0
  90. package/server/.next/server/app/(console)/containers/page_client-reference-manifest.js +3 -0
  91. package/server/.next/server/app/(console)/d1/page/server-reference-manifest.json +11 -11
  92. package/server/.next/server/app/(console)/d1/page.js +76 -68
  93. package/server/.next/server/app/(console)/d1/page.js.nft.json +1 -1
  94. package/server/.next/server/app/(console)/d1/page_client-reference-manifest.js +1 -1
  95. package/server/.next/server/app/(console)/deploy/page/app-paths-manifest.json +3 -0
  96. package/server/.next/server/app/(console)/deploy/page/build-manifest.json +22 -0
  97. package/server/.next/server/app/(console)/deploy/page/next-font-manifest.json +11 -0
  98. package/server/.next/server/app/(console)/deploy/page/react-loadable-manifest.json +1 -0
  99. package/server/.next/server/app/(console)/deploy/page/server-reference-manifest.json +115 -0
  100. package/server/.next/server/app/(console)/deploy/page.js +122 -0
  101. package/server/.next/server/app/(console)/deploy/page.js.nft.json +1 -0
  102. package/server/.next/server/app/(console)/deploy/page_client-reference-manifest.js +3 -0
  103. package/server/.next/server/app/(console)/deployments/page/server-reference-manifest.json +19 -19
  104. package/server/.next/server/app/(console)/deployments/page.js +76 -68
  105. package/server/.next/server/app/(console)/deployments/page.js.nft.json +1 -1
  106. package/server/.next/server/app/(console)/deployments/page_client-reference-manifest.js +1 -1
  107. package/server/.next/server/app/(console)/dns/page/server-reference-manifest.json +18 -18
  108. package/server/.next/server/app/(console)/dns/page.js +76 -68
  109. package/server/.next/server/app/(console)/dns/page.js.nft.json +1 -1
  110. package/server/.next/server/app/(console)/dns/page_client-reference-manifest.js +1 -1
  111. package/server/.next/server/app/(console)/domains/page/server-reference-manifest.json +13 -13
  112. package/server/.next/server/app/(console)/domains/page.js +76 -68
  113. package/server/.next/server/app/(console)/domains/page.js.nft.json +1 -1
  114. package/server/.next/server/app/(console)/domains/page_client-reference-manifest.js +1 -1
  115. package/server/.next/server/app/(console)/events/page/server-reference-manifest.json +11 -11
  116. package/server/.next/server/app/(console)/events/page.js +76 -68
  117. package/server/.next/server/app/(console)/events/page.js.nft.json +1 -1
  118. package/server/.next/server/app/(console)/events/page_client-reference-manifest.js +1 -1
  119. package/server/.next/server/app/(console)/firebase/page/server-reference-manifest.json +18 -18
  120. package/server/.next/server/app/(console)/firebase/page.js +76 -68
  121. package/server/.next/server/app/(console)/firebase/page.js.nft.json +1 -1
  122. package/server/.next/server/app/(console)/firebase/page_client-reference-manifest.js +1 -1
  123. package/server/.next/server/app/(console)/logs/page/server-reference-manifest.json +12 -12
  124. package/server/.next/server/app/(console)/logs/page.js +76 -68
  125. package/server/.next/server/app/(console)/logs/page.js.nft.json +1 -1
  126. package/server/.next/server/app/(console)/logs/page_client-reference-manifest.js +1 -1
  127. package/server/.next/server/app/(console)/manage/sections/page/server-reference-manifest.json +12 -12
  128. package/server/.next/server/app/(console)/manage/sections/page.js +76 -68
  129. package/server/.next/server/app/(console)/manage/sections/page.js.nft.json +1 -1
  130. package/server/.next/server/app/(console)/manage/sections/page_client-reference-manifest.js +1 -1
  131. package/server/.next/server/app/(console)/neon/page/server-reference-manifest.json +22 -22
  132. package/server/.next/server/app/(console)/neon/page.js +76 -68
  133. package/server/.next/server/app/(console)/neon/page.js.nft.json +1 -1
  134. package/server/.next/server/app/(console)/neon/page_client-reference-manifest.js +1 -1
  135. package/server/.next/server/app/(console)/os/page/app-paths-manifest.json +3 -0
  136. package/server/.next/server/app/(console)/os/page/build-manifest.json +22 -0
  137. package/server/.next/server/app/(console)/os/page/next-font-manifest.json +11 -0
  138. package/server/.next/server/app/(console)/os/page/react-loadable-manifest.json +1 -0
  139. package/server/.next/server/app/(console)/os/page/server-reference-manifest.json +125 -0
  140. package/server/.next/server/app/(console)/os/page.js +120 -0
  141. package/server/.next/server/app/(console)/os/page.js.nft.json +1 -0
  142. package/server/.next/server/app/(console)/os/page_client-reference-manifest.js +3 -0
  143. package/server/.next/server/app/(console)/overview/page/server-reference-manifest.json +19 -19
  144. package/server/.next/server/app/(console)/overview/page.js +77 -69
  145. package/server/.next/server/app/(console)/overview/page.js.nft.json +1 -1
  146. package/server/.next/server/app/(console)/overview/page_client-reference-manifest.js +1 -1
  147. package/server/.next/server/app/(console)/repos/[id]/page/server-reference-manifest.json +12 -12
  148. package/server/.next/server/app/(console)/repos/[id]/page.js +80 -72
  149. package/server/.next/server/app/(console)/repos/[id]/page.js.nft.json +1 -1
  150. package/server/.next/server/app/(console)/repos/[id]/page_client-reference-manifest.js +1 -1
  151. package/server/.next/server/app/(console)/repos/page/server-reference-manifest.json +11 -11
  152. package/server/.next/server/app/(console)/repos/page.js +81 -72
  153. package/server/.next/server/app/(console)/repos/page.js.nft.json +1 -1
  154. package/server/.next/server/app/(console)/repos/page_client-reference-manifest.js +1 -1
  155. package/server/.next/server/app/(console)/settings/page/server-reference-manifest.json +21 -21
  156. package/server/.next/server/app/(console)/settings/page.js +76 -68
  157. package/server/.next/server/app/(console)/settings/page.js.nft.json +1 -1
  158. package/server/.next/server/app/(console)/settings/page_client-reference-manifest.js +1 -1
  159. package/server/.next/server/app/(console)/sql/page/server-reference-manifest.json +18 -18
  160. package/server/.next/server/app/(console)/sql/page.js +76 -68
  161. package/server/.next/server/app/(console)/sql/page.js.nft.json +1 -1
  162. package/server/.next/server/app/(console)/sql/page_client-reference-manifest.js +1 -1
  163. package/server/.next/server/app/(console)/status/page/server-reference-manifest.json +11 -11
  164. package/server/.next/server/app/(console)/status/page.js +76 -68
  165. package/server/.next/server/app/(console)/status/page.js.nft.json +1 -1
  166. package/server/.next/server/app/(console)/status/page_client-reference-manifest.js +1 -1
  167. package/server/.next/server/app/(console)/supabase/page/server-reference-manifest.json +30 -30
  168. package/server/.next/server/app/(console)/supabase/page.js +81 -72
  169. package/server/.next/server/app/(console)/supabase/page.js.nft.json +1 -1
  170. package/server/.next/server/app/(console)/supabase/page_client-reference-manifest.js +1 -1
  171. package/server/.next/server/app/(console)/topology/page/server-reference-manifest.json +11 -11
  172. package/server/.next/server/app/(console)/topology/page.js +76 -68
  173. package/server/.next/server/app/(console)/topology/page.js.nft.json +1 -1
  174. package/server/.next/server/app/(console)/topology/page_client-reference-manifest.js +1 -1
  175. package/server/.next/server/app/(console)/turso/page/server-reference-manifest.json +11 -11
  176. package/server/.next/server/app/(console)/turso/page.js +76 -68
  177. package/server/.next/server/app/(console)/turso/page.js.nft.json +1 -1
  178. package/server/.next/server/app/(console)/turso/page_client-reference-manifest.js +1 -1
  179. package/server/.next/server/app/(console)/upstash/page/server-reference-manifest.json +11 -11
  180. package/server/.next/server/app/(console)/upstash/page.js +76 -68
  181. package/server/.next/server/app/(console)/upstash/page.js.nft.json +1 -1
  182. package/server/.next/server/app/(console)/upstash/page_client-reference-manifest.js +1 -1
  183. package/server/.next/server/app/(console)/uptime/page/server-reference-manifest.json +25 -25
  184. package/server/.next/server/app/(console)/uptime/page.js +76 -68
  185. package/server/.next/server/app/(console)/uptime/page.js.nft.json +1 -1
  186. package/server/.next/server/app/(console)/uptime/page_client-reference-manifest.js +1 -1
  187. package/server/.next/server/app/(console)/welcome/page/server-reference-manifest.json +16 -16
  188. package/server/.next/server/app/(console)/welcome/page.js +76 -68
  189. package/server/.next/server/app/(console)/welcome/page.js.nft.json +1 -1
  190. package/server/.next/server/app/(console)/welcome/page_client-reference-manifest.js +1 -1
  191. package/server/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  192. package/server/.next/server/app/_global-error/page.js +1 -1
  193. package/server/.next/server/app/_global-error/page.js.nft.json +1 -1
  194. package/server/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  195. package/server/.next/server/app/_global-error.html +1 -1
  196. package/server/.next/server/app/_global-error.rsc +3 -3
  197. package/server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  198. package/server/.next/server/app/_global-error.segments/_full.segment.rsc +3 -3
  199. package/server/.next/server/app/_global-error.segments/_tree.segment.rsc +2 -2
  200. package/server/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  201. package/server/.next/server/app/_not-found/page.js.nft.json +1 -1
  202. package/server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  203. package/server/.next/server/app/_not-found.html +1 -1
  204. package/server/.next/server/app/_not-found.rsc +4 -4
  205. package/server/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
  206. package/server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  207. package/server/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  208. package/server/.next/server/app/account/password/page/server-reference-manifest.json +2 -2
  209. package/server/.next/server/app/account/password/page.js.nft.json +1 -1
  210. package/server/.next/server/app/account/password/page_client-reference-manifest.js +1 -1
  211. package/server/.next/server/app/api/collect/route/server-reference-manifest.json +8 -8
  212. package/server/.next/server/app/api/collect/route.js +59 -52
  213. package/server/.next/server/app/api/collect/route.js.nft.json +1 -1
  214. package/server/.next/server/app/api/daily/route/server-reference-manifest.json +8 -8
  215. package/server/.next/server/app/api/daily/route.js +59 -52
  216. package/server/.next/server/app/api/daily/route.js.nft.json +1 -1
  217. package/server/.next/server/app/api/health/route.js.nft.json +1 -1
  218. package/server/.next/server/app/api/ping/[...parts]/route.js.nft.json +1 -1
  219. package/server/.next/server/app/api/status/route.js.nft.json +1 -1
  220. package/server/.next/server/app/api/telegram/webhook/route/server-reference-manifest.json +8 -8
  221. package/server/.next/server/app/api/telegram/webhook/route.js +59 -52
  222. package/server/.next/server/app/api/telegram/webhook/route.js.nft.json +1 -1
  223. package/server/.next/server/app/api/v1/[[...rest]]/route.js.nft.json +1 -1
  224. package/server/.next/server/app/api/v1/advice/route.js +14 -14
  225. package/server/.next/server/app/api/v1/advice/route.js.nft.json +1 -1
  226. package/server/.next/server/app/api/v1/ai/chat/completions/route.js.nft.json +1 -1
  227. package/server/.next/server/app/api/v1/ai/models/route.js.nft.json +1 -1
  228. package/server/.next/server/app/api/v1/ai/questions/[id]/route.js.nft.json +1 -1
  229. package/server/.next/server/app/api/v1/ai/questions/route.js +10 -10
  230. package/server/.next/server/app/api/v1/ai/questions/route.js.nft.json +1 -1
  231. package/server/.next/server/app/api/v1/mcp/route.js +25 -24
  232. package/server/.next/server/app/api/v1/mcp/route.js.nft.json +1 -1
  233. package/server/.next/server/app/api/v1/me/route.js.nft.json +1 -1
  234. package/server/.next/server/app/api/v1/openapi.json/route.js.nft.json +1 -1
  235. package/server/.next/server/app/api/v1/status/apps/[app]/route.js +13 -13
  236. package/server/.next/server/app/api/v1/status/apps/[app]/route.js.nft.json +1 -1
  237. package/server/.next/server/app/api/v1/status/route.js +13 -13
  238. package/server/.next/server/app/api/v1/status/route.js.nft.json +1 -1
  239. package/server/.next/server/app/api/watchdog/route.js +11 -12
  240. package/server/.next/server/app/api/watchdog/route.js.nft.json +1 -1
  241. package/server/.next/server/app/auth/confirm/route.js.nft.json +1 -1
  242. package/server/.next/server/app/auth/google/callback/route.js.nft.json +1 -1
  243. package/server/.next/server/app/auth/google/create/callback/route.js.nft.json +1 -1
  244. package/server/.next/server/app/auth/not-member/route.js.nft.json +1 -1
  245. package/server/.next/server/app/auth/session-ended/route.js.nft.json +1 -1
  246. package/server/.next/server/app/icon.svg/route.js.nft.json +1 -1
  247. package/server/.next/server/app/invite/page/server-reference-manifest.json +2 -2
  248. package/server/.next/server/app/invite/page.js.nft.json +1 -1
  249. package/server/.next/server/app/invite/page_client-reference-manifest.js +1 -1
  250. package/server/.next/server/app/mfa/page/server-reference-manifest.json +2 -2
  251. package/server/.next/server/app/mfa/page.js +35 -30
  252. package/server/.next/server/app/mfa/page.js.nft.json +1 -1
  253. package/server/.next/server/app/mfa/page_client-reference-manifest.js +1 -1
  254. package/server/.next/server/app/mfa/setup/page/server-reference-manifest.json +3 -3
  255. package/server/.next/server/app/mfa/setup/page.js +35 -30
  256. package/server/.next/server/app/mfa/setup/page.js.nft.json +1 -1
  257. package/server/.next/server/app/mfa/setup/page_client-reference-manifest.js +1 -1
  258. package/server/.next/server/app/page/server-reference-manifest.json +1 -1
  259. package/server/.next/server/app/page.js.nft.json +1 -1
  260. package/server/.next/server/app/page_client-reference-manifest.js +1 -1
  261. package/server/.next/server/app/s/[slug]/badge/[file]/route.js.nft.json +1 -1
  262. package/server/.next/server/app/s/[slug]/page/server-reference-manifest.json +1 -1
  263. package/server/.next/server/app/s/[slug]/page.js.nft.json +1 -1
  264. package/server/.next/server/app/s/[slug]/page_client-reference-manifest.js +1 -1
  265. package/server/.next/server/app/setup/page/server-reference-manifest.json +2 -2
  266. package/server/.next/server/app/setup/page.js +1 -1
  267. package/server/.next/server/app/setup/page.js.nft.json +1 -1
  268. package/server/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  269. package/server/.next/server/app/signin/page/server-reference-manifest.json +3 -3
  270. package/server/.next/server/app/signin/page.js +35 -30
  271. package/server/.next/server/app/signin/page.js.nft.json +1 -1
  272. package/server/.next/server/app/signin/page_client-reference-manifest.js +1 -1
  273. package/server/.next/server/app-paths-manifest.json +3 -0
  274. package/server/.next/server/chunks/{[externals]__1-y7b_mfadqi-._.js → [externals]__0n4j2emxdv20_._.js} +1 -1
  275. package/server/.next/server/chunks/{[externals]__1b3dgyi9diwhy._.js → [externals]__1hwo1oo04do39._.js} +1 -1
  276. package/server/.next/server/chunks/{[externals]__1dd9hhrnxhegy._.js → [externals]__1k12utcf9tvqg._.js} +1 -1
  277. package/server/.next/server/chunks/{[root-of-the-server]__040a3il587nja._.js → [root-of-the-server]__0016p4j5uh74t._.js} +2 -2
  278. package/server/.next/server/chunks/{[root-of-the-server]__08i6b8tzxads4._.js → [root-of-the-server]__00oxbw3nfl_kd._.js} +1 -1
  279. package/server/.next/server/chunks/[root-of-the-server]__01dj-ln12bcmb._.js +1 -1
  280. package/server/.next/server/chunks/[root-of-the-server]__02v25dn1cwxz6._.js +1 -1
  281. package/server/.next/server/chunks/{[root-of-the-server]__0qme276hvajvy._.js → [root-of-the-server]__02y9yjf7lp37-._.js} +1 -1
  282. package/server/.next/server/chunks/[root-of-the-server]__03276vwi4jgvk._.js +1 -1
  283. package/server/.next/server/chunks/{[root-of-the-server]__1jjusd74y8gd5._.js → [root-of-the-server]__03589rgm1a3ks._.js} +2 -2
  284. package/server/.next/server/chunks/[root-of-the-server]__04u9e45_g1jdi._.js +3 -0
  285. package/server/.next/server/chunks/{[root-of-the-server]__0-zrmrb4499ay._.js → [root-of-the-server]__04v42ls1mfjd2._.js} +2 -2
  286. package/server/.next/server/chunks/{[root-of-the-server]__0sp5xoed3-994._.js → [root-of-the-server]__05b18nw2k-7-4._.js} +1 -1
  287. package/server/.next/server/chunks/[root-of-the-server]__05qcc-0e8z1u8._.js +1 -1
  288. package/server/.next/server/chunks/{[root-of-the-server]__01hgqxx2a0okv._.js → [root-of-the-server]__06kp2_zqpttyd._.js} +2 -2
  289. package/server/.next/server/chunks/{[root-of-the-server]__04ogdmf82__0g._.js → [root-of-the-server]__06l038ifglbqy._.js} +1 -1
  290. package/server/.next/server/chunks/{[root-of-the-server]__1etpd6q60ypcc._.js → [root-of-the-server]__06nrq_1pbp3z-._.js} +2 -2
  291. package/server/.next/server/chunks/{[root-of-the-server]__0i3h5covkd6_t._.js → [root-of-the-server]__06zmu7jjyw1qw._.js} +1 -1
  292. package/server/.next/server/chunks/[root-of-the-server]__07eo--c90cju2._.js +1 -1
  293. package/server/.next/server/chunks/{[root-of-the-server]__0sq7jwlhv9n79._.js → [root-of-the-server]__081hh3_un4awi._.js} +1 -1
  294. package/server/.next/server/chunks/{[root-of-the-server]__1vvg0ur3_7o0p._.js → [root-of-the-server]__090n04cg_br7j._.js} +1 -1
  295. package/server/.next/server/chunks/{[root-of-the-server]__0lht1cr4aiudu._.js → [root-of-the-server]__09gla7jgbw2bs._.js} +1 -1
  296. package/server/.next/server/chunks/{[root-of-the-server]__0cmp5mwchd8sn._.js → [root-of-the-server]__09l9icaspfmoh._.js} +2 -2
  297. package/server/.next/server/chunks/{[root-of-the-server]__0m_nqt44ioex_._.js → [root-of-the-server]__09msxcjw3tlue._.js} +1 -1
  298. package/server/.next/server/chunks/{[root-of-the-server]__1smidspfoqz48._.js → [root-of-the-server]__09yvavo991rdd._.js} +2 -2
  299. package/server/.next/server/chunks/{[root-of-the-server]__0ox91q3i5u6fl._.js → [root-of-the-server]__0_vtp19_2frgj._.js} +1 -1
  300. package/server/.next/server/chunks/[root-of-the-server]__0a0st8-rftztn._.js +3 -0
  301. package/server/.next/server/chunks/{[root-of-the-server]__04iumkvxok49x._.js → [root-of-the-server]__0a7moaa91ctod._.js} +2 -2
  302. package/server/.next/server/chunks/{[root-of-the-server]__17dr2z1o1hsvk._.js → [root-of-the-server]__0ao4b2jjkcvo1._.js} +1 -1
  303. package/server/.next/server/chunks/{[root-of-the-server]__04htuwoulmp21._.js → [root-of-the-server]__0at6fxe9efr-x._.js} +1 -1
  304. package/server/.next/server/chunks/{[root-of-the-server]__0erdelc9_06nk._.js → [root-of-the-server]__0c_mpay_m5kbm._.js} +1 -1
  305. package/server/.next/server/chunks/{[root-of-the-server]__02h-ec_gusm_2._.js → [root-of-the-server]__0di45l_tnq1pm._.js} +2 -2
  306. package/server/.next/server/chunks/[root-of-the-server]__0ebkmgcs7v0c8._.js +3 -0
  307. package/server/.next/server/chunks/{[root-of-the-server]__19k0l-ubyp1j_._.js → [root-of-the-server]__0ej4hdoyogtji._.js} +1 -1
  308. package/server/.next/server/chunks/{[root-of-the-server]__1etg41llk7f09._.js → [root-of-the-server]__0eqrtvr3uqlqf._.js} +1 -1
  309. package/server/.next/server/chunks/{[root-of-the-server]__1x7en4waq21dd._.js → [root-of-the-server]__0exruft64u1hg._.js} +1 -1
  310. package/server/.next/server/chunks/{[root-of-the-server]__0ubalx5w0ds9m._.js → [root-of-the-server]__0fii83nfm0bsk._.js} +1 -1
  311. package/server/.next/server/chunks/{[root-of-the-server]__1d1u-wejsfl84._.js → [root-of-the-server]__0g0rd65zoitrb._.js} +1 -1
  312. package/server/.next/server/chunks/{[root-of-the-server]__0fmt9z8-xukob._.js → [root-of-the-server]__0g3v-ty9-xstp._.js} +1 -1
  313. package/server/.next/server/chunks/[root-of-the-server]__0g81f_2ecmg8a._.js +3 -0
  314. package/server/.next/server/chunks/[root-of-the-server]__0gb4uz-gv3va0._.js +1 -1
  315. package/server/.next/server/chunks/[root-of-the-server]__0glhrm7zmrvi2._.js +3 -0
  316. package/server/.next/server/chunks/[root-of-the-server]__0gqye-fi-f3zk._.js +1 -1
  317. package/server/.next/server/chunks/{[root-of-the-server]__1jsf0jf_ljpsm._.js → [root-of-the-server]__0jma907r441wi._.js} +1 -1
  318. package/server/.next/server/chunks/{[root-of-the-server]__1j527a18gh10b._.js → [root-of-the-server]__0jpktq0f88rvz._.js} +2 -2
  319. package/server/.next/server/chunks/[root-of-the-server]__0kk-m8_ul4f4k._.js +1 -1
  320. package/server/.next/server/chunks/{[root-of-the-server]__0lco43i5w25zg._.js → [root-of-the-server]__0myf9g_uv3bia._.js} +2 -2
  321. package/server/.next/server/chunks/[root-of-the-server]__0o6q27cnw6-77._.js +1 -1
  322. package/server/.next/server/chunks/{[root-of-the-server]__1xnqsy7nud--q._.js → [root-of-the-server]__0pi_camvun8ak._.js} +2 -2
  323. package/server/.next/server/chunks/{[root-of-the-server]__0mrbo2p5fy4ji._.js → [root-of-the-server]__0puji-hw0xtk7._.js} +1 -1
  324. package/server/.next/server/chunks/{[root-of-the-server]__1kr6f03r82mk6._.js → [root-of-the-server]__0qlf-so9k6401._.js} +1 -1
  325. package/server/.next/server/chunks/{[root-of-the-server]__0iicsi0n7tfa5._.js → [root-of-the-server]__0r0zrp3s_n614._.js} +1 -1
  326. package/server/.next/server/chunks/{[root-of-the-server]__0zwr7fll4dm9q._.js → [root-of-the-server]__0s3b61ttgb9if._.js} +2 -2
  327. package/server/.next/server/chunks/{[root-of-the-server]__1_df6aphi-pfk._.js → [root-of-the-server]__0t0dd5t5rch1i._.js} +2 -2
  328. package/server/.next/server/chunks/{[root-of-the-server]__11a8fxlpahjy2._.js → [root-of-the-server]__0tshehtsx7229._.js} +1 -1
  329. package/server/.next/server/chunks/[root-of-the-server]__0ty2qkszfdr5t._.js +3 -0
  330. package/server/.next/server/chunks/[root-of-the-server]__0ugx1i8km15fl._.js +3 -0
  331. package/server/.next/server/chunks/{[root-of-the-server]__0c2heh-0pjyob._.js → [root-of-the-server]__0uyc9w7f_r10u._.js} +1 -1
  332. package/server/.next/server/chunks/[root-of-the-server]__0uz_r72zdnwdd._.js +1 -1
  333. package/server/.next/server/chunks/{[root-of-the-server]__130_vkgsongq_._.js → [root-of-the-server]__0vb1_m_h5hi0z._.js} +2 -2
  334. package/server/.next/server/chunks/{[root-of-the-server]__0x929r1phz1oi._.js → [root-of-the-server]__0vclan952l_ty._.js} +2 -2
  335. package/server/.next/server/chunks/[root-of-the-server]__0vp-x4ifpr3p9._.js +1 -1
  336. package/server/.next/server/chunks/{[root-of-the-server]__1wjsjh-1i-sn6._.js → [root-of-the-server]__0vsafetdvsfhj._.js} +1 -1
  337. package/server/.next/server/chunks/{[root-of-the-server]__0db2p-om-b_4s._.js → [root-of-the-server]__0ww7a-9fnx2rv._.js} +1 -1
  338. package/server/.next/server/chunks/[root-of-the-server]__0x5vp_8n6xvpw._.js +3 -0
  339. package/server/.next/server/chunks/[root-of-the-server]__0yhki59n8zyjb._.js +1 -1
  340. package/server/.next/server/chunks/{[root-of-the-server]__20sp5m_w5iklm._.js → [root-of-the-server]__10-v22hv1sxrv._.js} +2 -2
  341. package/server/.next/server/chunks/{[root-of-the-server]__0jswmvddgl3sb._.js → [root-of-the-server]__10d4a34z0js-f._.js} +1 -1
  342. package/server/.next/server/chunks/{[root-of-the-server]__0zkeao78mms1_._.js → [root-of-the-server]__10ts7p_9fu3ge._.js} +2 -2
  343. package/server/.next/server/chunks/{[root-of-the-server]__14jw0y_hj7jmw._.js → [root-of-the-server]__12tmfv427e9cb._.js} +2 -2
  344. package/server/.next/server/chunks/[root-of-the-server]__1426to_m4prqh._.js +1 -1
  345. package/server/.next/server/chunks/[root-of-the-server]__1481y3utu_a_o._.js +3 -0
  346. package/server/.next/server/chunks/[root-of-the-server]__14e0j38785glf._.js +3 -0
  347. package/server/.next/server/chunks/{[root-of-the-server]__1-2ckgdamg0-j._.js → [root-of-the-server]__14yq_wf4xemgd._.js} +2 -2
  348. package/server/.next/server/chunks/[root-of-the-server]__177l2p7kcj-16._.js +1 -1
  349. package/server/.next/server/chunks/{[root-of-the-server]__0-94urkhm871c._.js → [root-of-the-server]__192br5y94wzhx._.js} +1 -1
  350. package/server/.next/server/chunks/[root-of-the-server]__19jalyhtntk8p._.js +3 -0
  351. package/server/.next/server/chunks/{[root-of-the-server]__0fc4c9-xzmkol._.js → [root-of-the-server]__19o-a03uklyrw._.js} +2 -2
  352. package/server/.next/server/chunks/{[root-of-the-server]__1rpgddeg42i-q._.js → [root-of-the-server]__1_0vd5-tvmsg8._.js} +1 -1
  353. package/server/.next/server/chunks/{[root-of-the-server]__0w07p3ypro834._.js → [root-of-the-server]__1_goy0uhapvk9._.js} +2 -2
  354. package/server/.next/server/chunks/[root-of-the-server]__1ac-dzt5bffr2._.js +3 -0
  355. package/server/.next/server/chunks/{[root-of-the-server]__1bjvjngj7lvqi._.js → [root-of-the-server]__1ajyr5xvo1-x5._.js} +2 -2
  356. package/server/.next/server/chunks/{[root-of-the-server]__0-ytbad9hn7uc._.js → [root-of-the-server]__1avuwg9wmyh48._.js} +1 -1
  357. package/server/.next/server/chunks/[root-of-the-server]__1c78cu7kb9vkl._.js +1 -1
  358. package/server/.next/server/chunks/[root-of-the-server]__1ey2qia7rofoc._.js +3 -0
  359. package/server/.next/server/chunks/{[root-of-the-server]__161v5qfd5qk2p._.js → [root-of-the-server]__1ghx3ayy7tm73._.js} +2 -2
  360. package/server/.next/server/chunks/{[root-of-the-server]__0xfgfo-ks4_e8._.js → [root-of-the-server]__1hlvqq0azku2x._.js} +2 -2
  361. package/server/.next/server/chunks/{[root-of-the-server]__0zs-wkvv1cs0i._.js → [root-of-the-server]__1hrcyozojb6ot._.js} +1 -1
  362. package/server/.next/server/chunks/[root-of-the-server]__1hrviq7s700td._.js +3 -0
  363. package/server/.next/server/chunks/{[root-of-the-server]__212_l7y-180xi._.js → [root-of-the-server]__1i841w7a3057h._.js} +1 -1
  364. package/server/.next/server/chunks/[root-of-the-server]__1ifov-udw6__d._.js +3 -0
  365. package/server/.next/server/chunks/{[root-of-the-server]__10negjjz5k5bz._.js → [root-of-the-server]__1ig0p-frprcbm._.js} +1 -1
  366. package/server/.next/server/chunks/[root-of-the-server]__1io5zo7iam532._.js +1 -1
  367. package/server/.next/server/chunks/{[root-of-the-server]__0c9y_zg74k4oe._.js → [root-of-the-server]__1iruoalu93dg7._.js} +2 -2
  368. package/server/.next/server/chunks/[root-of-the-server]__1ksyvvsf32jfg._.js +3 -0
  369. package/server/.next/server/chunks/[root-of-the-server]__1kzi1du1sliqb._.js +3 -0
  370. package/server/.next/server/chunks/{[root-of-the-server]__15vqo7amys573._.js → [root-of-the-server]__1mbm_bvk1oat7._.js} +2 -2
  371. package/server/.next/server/chunks/[root-of-the-server]__1mvibnqor6lx_._.js +3 -0
  372. package/server/.next/server/chunks/{[root-of-the-server]__0ct18spdi1leu._.js → [root-of-the-server]__1ons16gam6qb7._.js} +2 -2
  373. package/server/.next/server/chunks/[root-of-the-server]__1ozfk4_3lx1o7._.js +1 -1
  374. package/server/.next/server/chunks/[root-of-the-server]__1po33h2u2o4e_._.js +3 -0
  375. package/server/.next/server/chunks/[root-of-the-server]__1qps9ushddgwe._.js +3 -0
  376. package/server/.next/server/chunks/{[root-of-the-server]__0so_ihc-5tp14._.js → [root-of-the-server]__1qyz1wi13rxxb._.js} +1 -1
  377. package/server/.next/server/chunks/{[root-of-the-server]__0nkfi6x2c4c5p._.js → [root-of-the-server]__1r2ei065xk141._.js} +1 -1
  378. package/server/.next/server/chunks/{[root-of-the-server]__0dltcr407-ow6._.js → [root-of-the-server]__1r8mzvf7_9d2k._.js} +2 -2
  379. package/server/.next/server/chunks/[root-of-the-server]__1rxke2_vpd7np._.js +3 -0
  380. package/server/.next/server/chunks/[root-of-the-server]__1sjp750034q4j._.js +3 -0
  381. package/server/.next/server/chunks/[root-of-the-server]__1tefe1f5835t_._.js +1 -1
  382. package/server/.next/server/chunks/{[root-of-the-server]__0a5t6bkr3-uqw._.js → [root-of-the-server]__1tlivd99uri0t._.js} +2 -2
  383. package/server/.next/server/chunks/{[root-of-the-server]__217jp1b3psyq_._.js → [root-of-the-server]__1vfvw1pmssxww._.js} +1 -1
  384. package/server/.next/server/chunks/{[root-of-the-server]__1g6xpr_typmce._.js → [root-of-the-server]__1wbnule0tzwdu._.js} +2 -2
  385. package/server/.next/server/chunks/{[root-of-the-server]__0zu1odpvrptrt._.js → [root-of-the-server]__1wcnj2xtesyd9._.js} +1 -1
  386. package/server/.next/server/chunks/{[root-of-the-server]__1cpee8xi1ig3-._.js → [root-of-the-server]__1won_frdj9jms._.js} +2 -2
  387. package/server/.next/server/chunks/[root-of-the-server]__1wvp6wau5ueb9._.js +3 -0
  388. package/server/.next/server/chunks/{[root-of-the-server]__0bvdnvpw43au9._.js → [root-of-the-server]__1y9gsf61fh1fv._.js} +1 -1
  389. package/server/.next/server/chunks/[root-of-the-server]__1yxudc_keazqo._.js +3 -0
  390. package/server/.next/server/chunks/{[root-of-the-server]__1pyhos8be90-4._.js → [root-of-the-server]__1yxxfmyk3649a._.js} +1 -1
  391. package/server/.next/server/chunks/{[root-of-the-server]__1t87mhqedigsz._.js → [root-of-the-server]__1z1fgf8k8icw8._.js} +2 -2
  392. package/server/.next/server/chunks/{[root-of-the-server]__1d4wmw2wohveb._.js → [root-of-the-server]__1z_l9mj3s_6tu._.js} +1 -1
  393. package/server/.next/server/chunks/[root-of-the-server]__1zvy7u_y3fzbz._.js +3 -0
  394. package/server/.next/server/chunks/{[root-of-the-server]__0xd_bgjy5_tr5._.js → [root-of-the-server]__20056vw370xom._.js} +1 -1
  395. package/server/.next/server/chunks/[root-of-the-server]__205cmd-k6g2kc._.js +3 -0
  396. package/server/.next/server/chunks/[root-of-the-server]__20dehd8e5-v9y._.js +1 -1
  397. package/server/.next/server/chunks/{[root-of-the-server]__1sm4p209f_yie._.js → [root-of-the-server]__20qdu-env7wgt._.js} +1 -1
  398. package/server/.next/server/chunks/[root-of-the-server]__20qirklw1sgj0._.js +3 -0
  399. package/server/.next/server/chunks/{[root-of-the-server]__0inf2zuuqjrq6._.js → [root-of-the-server]__212-4r-w6a9sm._.js} +2 -2
  400. package/server/.next/server/chunks/_0-5pjvqu672_v._.js +49 -0
  401. package/server/.next/server/chunks/_02qrz1g8sdvhe._.js +49 -0
  402. package/server/.next/server/chunks/_03qlijpos6a21._.js +1 -1
  403. package/server/.next/server/chunks/_05hhw0eql5-dv._.js +2 -2
  404. package/server/.next/server/chunks/_06gv0srpbf_lk._.js +1 -1
  405. package/server/.next/server/chunks/_06lf75x-xhl7v._.js +1 -1
  406. package/server/.next/server/chunks/{_0-ub844lc_z_a._.js → _0ehqx1pkh20px._.js} +3 -3
  407. package/server/.next/server/chunks/{_08z7lmk32r__5._.js → _0jiq3ns7681pv._.js} +3 -3
  408. package/server/.next/server/chunks/_0n-wbmmvp4omq._.js +1 -1
  409. package/server/.next/server/chunks/_0sy878k2ywjbq._.js +1 -1
  410. package/server/.next/server/chunks/_0vgplianlrk3e._.js +3 -0
  411. package/server/.next/server/chunks/_1_son1yzo5xvl._.js +1 -1
  412. package/server/.next/server/chunks/_1ap0upnvy5i_1._.js +49 -0
  413. package/server/.next/server/chunks/_1b-88djuoexz1._.js +49 -0
  414. package/server/.next/server/chunks/{_0-jfehdfklu-i._.js → _1k3v1-vgvzm_o._.js} +2 -2
  415. package/server/.next/server/chunks/_1l-68brbq289m._.js +2 -2
  416. package/server/.next/server/chunks/{_1-pv4d4qhe7to._.js → _1t46m15axa4b4._.js} +3 -3
  417. package/server/.next/server/chunks/node_modules_drizzle-orm_entity_1-0q2stnw2ab8.js +3 -3
  418. package/server/.next/server/chunks/{_0op74d4yyc3ma._.js → node_modules_next_1mwxx95m7177g._.js} +3 -3
  419. package/server/.next/server/chunks/src_0--qn984h6czu._.js +1 -1
  420. package/server/.next/server/chunks/{src_2108_me3q06ih._.js → src_05be6wzefzaky._.js} +2 -2
  421. package/server/.next/server/chunks/src_05jrvcsgaq5ek._.js +1 -1
  422. package/server/.next/server/chunks/src_063xvouojxyoa._.js +1 -1
  423. package/server/.next/server/chunks/src_06tyytf_c_hlu._.js +1 -1
  424. package/server/.next/server/chunks/src_088gmyaew7ds0._.js +1 -1
  425. package/server/.next/server/chunks/src_08fq45_-8xq5o._.js +1 -1
  426. package/server/.next/server/chunks/src_0_9n02bmhtk4z._.js +1 -1
  427. package/server/.next/server/chunks/src_0c-owt8q0lyj3._.js +1 -1
  428. package/server/.next/server/chunks/{src_0j8daco-75zka._.js → src_0cdn5fuk8f_x2._.js} +2 -2
  429. package/server/.next/server/chunks/src_0dxbyz8iemj_5._.js +1 -1
  430. package/server/.next/server/chunks/src_0hx0sol2clocu._.js +1 -1
  431. package/server/.next/server/chunks/{src_1lvv9wiag2d8-._.js → src_0j84o_hkkaeg-._.js} +2 -2
  432. package/server/.next/server/chunks/src_0u2zbz77uh__q._.js +1 -1
  433. package/server/.next/server/chunks/src_0ud2mqnh4emxz._.js +1 -1
  434. package/server/.next/server/chunks/src_0y_4gogmeu-2k._.js +1 -1
  435. package/server/.next/server/chunks/src_10vyvp9vy_69h._.js +1 -1
  436. package/server/.next/server/chunks/src_13n1vi7uew4iu._.js +1 -1
  437. package/server/.next/server/chunks/src_1_fnzi0em_6er._.js +3 -0
  438. package/server/.next/server/chunks/src_1a5yibsjcy1ga._.js +1 -1
  439. package/server/.next/server/chunks/src_1bqzr81r3wkvi._.js +1 -1
  440. package/server/.next/server/chunks/src_1cvp6ubs-3z6l._.js +1 -1
  441. package/server/.next/server/chunks/src_1il7wg_qjxny7._.js +1 -1
  442. package/server/.next/server/chunks/src_1ntwbcb1cl-y9._.js +1 -1
  443. package/server/.next/server/chunks/src_1tux0n9_5b1kr._.js +5 -5
  444. package/server/.next/server/chunks/src_1u-olt84z63rx._.js +1 -1
  445. package/server/.next/server/chunks/src_1wduh0eckiwl1._.js +1 -1
  446. package/server/.next/server/chunks/src_1wmb2yl3tn-dd._.js +1 -1
  447. package/server/.next/server/chunks/src_1wzm081p6qyre._.js +5 -5
  448. package/server/.next/server/chunks/src_lib_00ixpbvymlbo_._.js +3 -0
  449. package/server/.next/server/chunks/src_lib_0eqv8l-v8d5ze._.js +1 -1
  450. package/server/.next/server/chunks/src_lib_0glcfed-uogyd._.js +1 -1
  451. package/server/.next/server/chunks/src_lib_0j2ifdk5byg1t._.js +3 -0
  452. package/server/.next/server/chunks/src_lib_0ma36vqcze7a9._.js +7 -0
  453. package/server/.next/server/chunks/src_lib_0ps7mu81f-6s1._.js +7 -0
  454. package/server/.next/server/chunks/src_lib_0ta8sd9jeuw50._.js +10 -10
  455. package/server/.next/server/chunks/src_lib_14grv5a5_n9o0._.js +7 -0
  456. package/server/.next/server/chunks/src_lib_1en6omqx66g9d._.js +10 -10
  457. package/server/.next/server/chunks/src_lib_1iuuekw6uwbbr._.js +3 -0
  458. package/server/.next/server/chunks/src_lib_1qo6t00wwitz6._.js +10 -10
  459. package/server/.next/server/chunks/src_lib_1znb-e7g8dkgc._.js +7 -0
  460. package/server/.next/server/chunks/src_lib_alerts_catalog_ts_1ndg28acul64q._.js +1 -1
  461. package/server/.next/server/chunks/src_lib_collector_auth_ts_0lqx92__e4zij._.js +3 -3
  462. package/server/.next/server/chunks/src_lib_collector_runners_ts_12z4gtgikss74._.js +6 -6
  463. package/server/.next/server/chunks/src_lib_data_cached_ts_017to1fh48jms._.js +3 -0
  464. package/server/.next/server/chunks/src_lib_data_databases-db_ts_04a4hj5j7h8m0._.js +3 -0
  465. package/server/.next/server/chunks/src_lib_data_os-scan-db_ts_0g2a3ofkaxf40._.js +4 -0
  466. package/server/.next/server/chunks/src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js +4 -4
  467. package/server/.next/server/chunks/src_lib_databases_snapshot-data_ts_1xilv6_re7hcp._.js +3 -0
  468. package/server/.next/server/chunks/src_lib_demo_pool_ts_0fpn8acsdk64i._.js +5 -5
  469. package/server/.next/server/chunks/src_lib_demo_pool_ts_14rjvkgozh1d4._.js +10 -10
  470. package/server/.next/server/chunks/src_lib_demo_pool_ts_17xz9bk-d5uic._.js +12 -12
  471. package/server/.next/server/chunks/src_lib_demo_pool_ts_210g_on8zx_-n._.js +10 -10
  472. package/server/.next/server/chunks/src_lib_deps_branch_ts_06dz9-7a66n24._.js +3 -0
  473. package/server/.next/server/chunks/src_lib_deps_osv_ts_0c-lbj4hsmojx._.js +3 -0
  474. package/server/.next/server/chunks/src_lib_deps_plan_ts_0bctf8v4qttk5._.js +1 -1
  475. package/server/.next/server/chunks/src_lib_notify_lang_ts_1r2w02ctaky7e._.js +1 -1
  476. package/server/.next/server/chunks/src_lib_sections_ts_0r8u4nvlpdkgq._.js +1 -1
  477. package/server/.next/server/chunks/src_lib_view_security_ts_1_c7vkcsp6y27._.js +3 -0
  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_21atz5tidps07.js +1 -1
  480. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_models_page_actions_0rvlzfa8rjyz_.js +1 -1
  481. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_playground_page_actions_01ejc1xilpuh4.js +1 -1
  482. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_quota_page_actions_0iki29gyi8cwa.js +1 -1
  483. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_ai_usage_page_actions_1c99h-kwdnep7.js +1 -1
  484. package/server/.next/server/chunks/ssr/1oeh_server_app_(console)_(private)_auto-actions_page_actions_1kw4ce6-efkr1.js +1 -1
  485. package/server/.next/server/chunks/ssr/1q96_modules_@tabler_icons-react_dist_esm_icons_IconExternalLink_mjs_19uzq2wmxdb36._.js +3 -0
  486. package/server/.next/server/chunks/ssr/{[externals]__1rj83sktdlxvt._.js → [externals]__00hge8tjqv73a._.js} +1 -1
  487. package/server/.next/server/chunks/ssr/{[externals]__1s7xw086rvse0._.js → [externals]__0summv9f9jkob._.js} +1 -1
  488. package/server/.next/server/chunks/ssr/{[externals]__20leqouf6m6f3._.js → [externals]__1jdljyrzmqoz0._.js} +1 -1
  489. package/server/.next/server/chunks/ssr/{[externals]__02s9k1gg9qqkm._.js → [externals]__1q1drb4oske-9._.js} +1 -1
  490. package/server/.next/server/chunks/ssr/[root-of-the-server]__001mglelq4wpc._.js +1 -1
  491. package/server/.next/server/chunks/ssr/{[root-of-the-server]__07k_84t5-d55n._.js → [root-of-the-server]__02lkybw6gg3ln._.js} +2 -2
  492. package/server/.next/server/chunks/ssr/[root-of-the-server]__02s29zgn7lrps._.js +3 -0
  493. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1e9tlsk1gl8lw._.js → [root-of-the-server]__03xevz8n-mc20._.js} +3 -3
  494. package/server/.next/server/chunks/ssr/{[root-of-the-server]__077-acap7g4ck._.js → [root-of-the-server]__0423qjo9c2t9-._.js} +1 -1
  495. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0nrc_8-wrhf3y._.js → [root-of-the-server]__04p9ipxxdhqfn._.js} +1 -1
  496. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0ct4apye0sfmc._.js → [root-of-the-server]__05s2n35zn4go-._.js} +1 -1
  497. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0fd39clnjw9fb._.js → [root-of-the-server]__06bgklzuef-ya._.js} +2 -2
  498. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1itgt83qo1e77._.js → [root-of-the-server]__07_efq7yhxfj-._.js} +1 -1
  499. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0q7rssq_3unbc._.js → [root-of-the-server]__07zuxj3veqm14._.js} +1 -1
  500. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1qrk2rfmx21b_._.js → [root-of-the-server]__092gsphy4oz6k._.js} +2 -2
  501. package/server/.next/server/chunks/ssr/[root-of-the-server]__09blzlbsxqvy9._.js +1 -1
  502. package/server/.next/server/chunks/ssr/[root-of-the-server]__0_-fz8cunfpwp._.js +3 -0
  503. package/server/.next/server/chunks/ssr/[root-of-the-server]__0de1senl_kfo5._.js +3 -0
  504. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0ee5ew5q3jh8i._.js → [root-of-the-server]__0gyvfp6c-_edw._.js} +2 -2
  505. package/server/.next/server/chunks/ssr/[root-of-the-server]__0jgapr1cnvhi6._.js +1 -1
  506. package/server/.next/server/chunks/ssr/[root-of-the-server]__0keo0-hwsnkw9._.js +1 -1
  507. package/server/.next/server/chunks/ssr/[root-of-the-server]__0l50vsk8enxzj._.js +1 -1
  508. package/server/.next/server/chunks/ssr/[root-of-the-server]__0mvauw9r_4qss._.js +4 -0
  509. package/server/.next/server/chunks/ssr/{[root-of-the-server]__04_prmhm_cts4._.js → [root-of-the-server]__0n4bkq-45z4aa._.js} +1 -1
  510. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0e1s_5gg-u3iu._.js → [root-of-the-server]__0no6c0whevi73._.js} +1 -1
  511. package/server/.next/server/chunks/ssr/[root-of-the-server]__0rdf04ziqasfz._.js +1 -1
  512. package/server/.next/server/chunks/ssr/[root-of-the-server]__0rrdzb9wowemv._.js +1 -1
  513. package/server/.next/server/chunks/ssr/[root-of-the-server]__0y2s_4828a5u9._.js +3 -0
  514. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0p86d9imejczs._.js → [root-of-the-server]__0z5ucbis8ik32._.js} +2 -2
  515. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0uxychcp_pldy._.js → [root-of-the-server]__10r0u-q18z71i._.js} +1 -1
  516. package/server/.next/server/chunks/ssr/{[root-of-the-server]__004q78ed0nf0_._.js → [root-of-the-server]__12t9_ndr9z-2d._.js} +1 -1
  517. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0hgf7si8htevx._.js → [root-of-the-server]__139ya3ejh6htx._.js} +1 -1
  518. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0-zqh1gf4dsj3._.js → [root-of-the-server]__13phmsw9wsyrs._.js} +1 -1
  519. package/server/.next/server/chunks/ssr/[root-of-the-server]__14e0j38785glf._.js +3 -0
  520. package/server/.next/server/chunks/ssr/{[root-of-the-server]__080do5vfu69n5._.js → [root-of-the-server]__157kjredkf1pa._.js} +1 -1
  521. package/server/.next/server/chunks/ssr/{[root-of-the-server]__09j1po2u91fp3._.js → [root-of-the-server]__16jfs8j29r4b5._.js} +2 -2
  522. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0skfdezx5rxie._.js → [root-of-the-server]__183_36tj3p645._.js} +2 -2
  523. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1sw2q1p1t59y8._.js → [root-of-the-server]__18gw74mr2vto3._.js} +2 -2
  524. package/server/.next/server/chunks/ssr/[root-of-the-server]__19twn3g5nv5q1._.js +3 -0
  525. package/server/.next/server/chunks/ssr/[root-of-the-server]__19wvac83zh5-9._.js +3 -0
  526. package/server/.next/server/chunks/ssr/[root-of-the-server]__1_f7nip9age3d._.js +1 -1
  527. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0h9rpg5-lhp5q._.js → [root-of-the-server]__1a5760tg4iits._.js} +2 -2
  528. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0b3g72j9cu141._.js → [root-of-the-server]__1d1ksu1dlha3r._.js} +2 -2
  529. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1y7nfsglxx7cn._.js → [root-of-the-server]__1iqedr7nfvayk._.js} +1 -1
  530. package/server/.next/server/chunks/ssr/{[root-of-the-server]__11paa809_igt_._.js → [root-of-the-server]__1knbzqo0nba_q._.js} +2 -2
  531. package/server/.next/server/chunks/ssr/{[root-of-the-server]__05_98ql5tgeii._.js → [root-of-the-server]__1m38od9tgaroe._.js} +1 -1
  532. package/server/.next/server/chunks/ssr/{[root-of-the-server]__0ed6qo3lg9_f9._.js → [root-of-the-server]__1mah0p09qrkpu._.js} +2 -2
  533. package/server/.next/server/chunks/ssr/{[root-of-the-server]__1v3b498_j-68t._.js → [root-of-the-server]__1mxpszbk1aup8._.js} +3 -3
  534. package/server/.next/server/chunks/ssr/[root-of-the-server]__1u_13nhw3kuz3._.js +1 -1
  535. package/server/.next/server/chunks/ssr/_008i8a0_8skrp._.js +3 -0
  536. package/server/.next/server/chunks/ssr/{_0azq3ml4gbn1d._.js → _01n29sxn-py3x._.js} +2 -2
  537. package/server/.next/server/chunks/ssr/_02eudwc8ieb2r._.js +2 -2
  538. package/server/.next/server/chunks/ssr/_03d3sxmob-gr7._.js +3 -0
  539. package/server/.next/server/chunks/ssr/{_1wfjx67s3e6ws._.js → _04mnjz5cekpue._.js} +1 -1
  540. package/server/.next/server/chunks/ssr/_08rjac8cutbcs._.js +3 -0
  541. package/server/.next/server/chunks/ssr/_08xqk3eibu5aw._.js +1 -1
  542. package/server/.next/server/chunks/ssr/_0_oc9q0vqkynd._.js +1 -1
  543. package/server/.next/server/chunks/ssr/_0a22b7zsckifp._.js +1 -1
  544. package/server/.next/server/chunks/ssr/{_1ah_xx0-cty-v._.js → _0aznz0i-8olet._.js} +1 -1
  545. package/server/.next/server/chunks/ssr/_0bd4cxnpnnq2u._.js +1 -1
  546. package/server/.next/server/chunks/ssr/_0cbbks0ms7i_u._.js +2 -2
  547. package/server/.next/server/chunks/ssr/_0cw4kz3d6kmb1._.js +1 -1
  548. package/server/.next/server/chunks/ssr/_0d2d527wcx-lf._.js +2 -2
  549. package/server/.next/server/chunks/ssr/_0d702k82llasi._.js +1 -1
  550. package/server/.next/server/chunks/ssr/_0dvz4dndt6lkf._.js +1 -1
  551. package/server/.next/server/chunks/ssr/_0eu69r0sm274b._.js +3 -0
  552. package/server/.next/server/chunks/ssr/_0gl-ewvbhb677._.js +2 -2
  553. package/server/.next/server/chunks/ssr/_0gmw45sb1llld._.js +1 -1
  554. package/server/.next/server/chunks/ssr/_0i04zoixa2iup._.js +2 -2
  555. package/server/.next/server/chunks/ssr/_0iaoiq9xbkdma._.js +3 -0
  556. package/server/.next/server/chunks/ssr/_0idbg-ok0so2h._.js +2 -2
  557. package/server/.next/server/chunks/ssr/_0iy27gi4y9-fe._.js +1 -1
  558. package/server/.next/server/chunks/ssr/_0k2qpgzlqzc_p._.js +1 -1
  559. package/server/.next/server/chunks/ssr/_0kdn56_ow-x_s._.js +1 -1
  560. package/server/.next/server/chunks/ssr/_0lb1euzjakqbr._.js +3 -0
  561. package/server/.next/server/chunks/ssr/{_0_vfnz8i8hac7._.js → _0mhwgy5lvtng0._.js} +1 -1
  562. package/server/.next/server/chunks/ssr/_0oovfx_t_-u0k._.js +1 -1
  563. package/server/.next/server/chunks/ssr/_0oub-njkja8gu._.js +2 -2
  564. package/server/.next/server/chunks/ssr/_0pqkexxo7rts_._.js +2 -2
  565. package/server/.next/server/chunks/ssr/_0qhvl_fw4qetx._.js +1 -1
  566. package/server/.next/server/chunks/ssr/_0tnd528j0i1i4._.js +2 -2
  567. package/server/.next/server/chunks/ssr/{_1vjm7-shohnh7._.js → _0u5_d3o0i72tq._.js} +2 -2
  568. package/server/.next/server/chunks/ssr/_0uwkwcgucqgcf._.js +2 -2
  569. package/server/.next/server/chunks/ssr/_0uz60lk-7e_cj._.js +4 -0
  570. package/server/.next/server/chunks/ssr/_0vgplianlrk3e._.js +3 -0
  571. package/server/.next/server/chunks/ssr/_0wo-lpqf7hr1y._.js +2 -2
  572. package/server/.next/server/chunks/ssr/_0xmud7u5hdnqu._.js +2 -2
  573. package/server/.next/server/chunks/ssr/_0zkmkbrbc96-h._.js +3 -0
  574. package/server/.next/server/chunks/ssr/_1-4401bfn50mf._.js +1 -1
  575. package/server/.next/server/chunks/ssr/_1-6d1tm3r_qwg._.js +1 -1
  576. package/server/.next/server/chunks/ssr/_10bven6gb1vj0._.js +1 -1
  577. package/server/.next/server/chunks/ssr/{_1xokm14jd0teg._.js → _113tc44xki0cp._.js} +1 -1
  578. package/server/.next/server/chunks/ssr/_118h21qua_4o3._.js +1 -1
  579. package/server/.next/server/chunks/ssr/_12makqwatfke-._.js +2 -2
  580. package/server/.next/server/chunks/ssr/{_0y5ov4kk2q81r._.js → _13bpjk3g0tp2e._.js} +2 -2
  581. package/server/.next/server/chunks/ssr/_16vvfyez78u5k._.js +3 -0
  582. package/server/.next/server/chunks/ssr/{_0tu64jsmbyx4_._.js → _17tabyg0mhxlx._.js} +2 -2
  583. package/server/.next/server/chunks/ssr/_19-3vzkc6rk97._.js +1 -1
  584. package/server/.next/server/chunks/ssr/_19-n2kl-knt0j._.js +3 -0
  585. package/server/.next/server/chunks/ssr/_1_-o2s48aj4i7._.js +1 -1
  586. package/server/.next/server/chunks/ssr/_1c7jkkvkvzj_u._.js +2 -2
  587. package/server/.next/server/chunks/ssr/_1cl55h_h3q-b_._.js +1 -1
  588. package/server/.next/server/chunks/ssr/_1d0anr0hjs5k5._.js +3 -0
  589. package/server/.next/server/chunks/ssr/_1dlo17ba9g-f9._.js +2 -2
  590. package/server/.next/server/chunks/ssr/_1fc8k_0p8l00c._.js +2 -2
  591. package/server/.next/server/chunks/ssr/_1fuywfexex2s8._.js +2 -2
  592. package/server/.next/server/chunks/ssr/_1g2zbl_-4z_hg._.js +1 -1
  593. package/server/.next/server/chunks/ssr/_1he21-bt45k8z._.js +2 -2
  594. package/server/.next/server/chunks/ssr/_1i96si4hzn74p._.js +1 -1
  595. package/server/.next/server/chunks/ssr/_1j9cka-44jd65._.js +1 -1
  596. package/server/.next/server/chunks/ssr/_1jh_o2i8hj2g5._.js +1 -1
  597. package/server/.next/server/chunks/ssr/_1lgb0h9z-8z15._.js +3 -0
  598. package/server/.next/server/chunks/ssr/_1ln6o3a9quwxo._.js +2 -2
  599. package/server/.next/server/chunks/ssr/_1m4km_w39x5e9._.js +1 -1
  600. package/server/.next/server/chunks/ssr/_1pp1o361lgpwu._.js +2 -2
  601. package/server/.next/server/chunks/ssr/_1q3fi6a4gklq6._.js +3 -0
  602. package/server/.next/server/chunks/ssr/_1qsshadaq_-6p._.js +3 -0
  603. package/server/.next/server/chunks/ssr/_1ul3og9l7vp32._.js +4 -0
  604. package/server/.next/server/chunks/ssr/{_1nzncndn-1ggb._.js → _1xbmdurub1ykt._.js} +1 -1
  605. package/server/.next/server/chunks/ssr/_1yh3k88t_kh4h._.js +2 -2
  606. package/server/.next/server/chunks/ssr/{_10oqiz6hmf92q._.js → _1ykegy3wzl3mu._.js} +2 -2
  607. package/server/.next/server/chunks/ssr/_1z6dy1k48mskn._.js +1 -1
  608. package/server/.next/server/chunks/ssr/{_1_ct-7kmkfab1._.js → _1znzrmlfouh6k._.js} +1 -1
  609. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_keys_page_actions_181-3r4e_0yb5.js +1 -1
  610. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_(private)_ai_logs_page_actions_1ryb93n6khky3.js +1 -1
  611. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_alerts_page_actions_06_3gmyq3jtvi.js +1 -1
  612. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_1myo_rodrlg3a.js +4 -0
  613. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_page_actions_0ksau5eicvycc.js +1 -1
  614. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_connections_page_actions_1fgolmmpxrouc.js +1 -1
  615. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_containers_page_actions_1ainjsbrnl360.js +3 -0
  616. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_dns_page_actions_17d_lvhl-u_4w.js +1 -1
  617. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_domains_page_actions_1yv3fj_fh-n-5.js +1 -1
  618. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_firebase_page_actions_00wuues_v_j3r.js +1 -1
  619. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_logs_page_actions_0oqh51t2rx6q0.js +1 -1
  620. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_manage_sections_page_actions_1sb2ldu57uj32.js +1 -1
  621. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_settings_page_actions_12wgjpd0lbh12.js +1 -1
  622. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_supabase_page_actions_1f3a_tpkwjo8z.js +1 -1
  623. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_uptime_page_actions_1ylbdz0-ykfh6.js +1 -1
  624. package/server/.next/server/chunks/ssr/_next-internal_server_app_account_password_page_actions_1v4e71_oifbx9.js +1 -1
  625. package/server/.next/server/chunks/ssr/_next-internal_server_app_signin_page_actions_11wzk446p6_zi.js +1 -1
  626. package/server/.next/server/chunks/ssr/{node_modules_@tabler_icons-react_dist_esm_icons_0904ro5eqxhlr._.js → node_modules_@tabler_icons-react_dist_esm_icons_0b7guexr5je6g._.js} +1 -1
  627. package/server/.next/server/chunks/ssr/{node_modules_@tabler_icons-react_dist_esm_icons_07e6iv4064369._.js → node_modules_@tabler_icons-react_dist_esm_icons_0ej-u2f-ha9q0._.js} +1 -1
  628. package/server/.next/server/chunks/ssr/{node_modules_@tabler_icons-react_dist_esm_icons_1uzp0vue7-c9z._.js → node_modules_@tabler_icons-react_dist_esm_icons_1nstb42fu_h0p._.js} +1 -1
  629. package/server/.next/server/chunks/ssr/node_modules_class-variance-authority_dist_index_mjs_0wl3fjdt40o5n._.js +3 -0
  630. package/server/.next/server/chunks/ssr/{_1b4uqc9fwt4dy._.js → node_modules_next_1mwxx95m7177g._.js} +2 -2
  631. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0hrjtaoa__ix8.js +3 -0
  632. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0slepiv25mpch.js +3 -0
  633. package/server/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1oqgmgc8y6yxj.js +3 -0
  634. package/server/.next/server/chunks/ssr/src_0330uf9pdfco9._.js +1 -1
  635. package/server/.next/server/chunks/ssr/src_05mcsr-od-9ug._.js +3 -0
  636. package/server/.next/server/chunks/ssr/src_0632mrev4i__u._.js +3 -0
  637. package/server/.next/server/chunks/ssr/src_06tjy8wljego8._.js +1 -1
  638. package/server/.next/server/chunks/ssr/src_084tdkx3c_yqi._.js +1 -1
  639. package/server/.next/server/chunks/ssr/src_0abts6wp5ucc0._.js +1 -1
  640. package/server/.next/server/chunks/ssr/src_0c62tj2aysn_e._.js +3 -0
  641. package/server/.next/server/chunks/ssr/src_0etvjdinp5urq._.js +1 -1
  642. package/server/.next/server/chunks/ssr/src_0k2rwfjheyrf7._.js +1 -1
  643. package/server/.next/server/chunks/ssr/src_0ovx2ogvlz2eh._.js +1 -1
  644. package/server/.next/server/chunks/ssr/src_0ph020gy78gi9._.js +1 -1
  645. package/server/.next/server/chunks/ssr/src_0uitfl3c1mdqb._.js +2 -2
  646. package/server/.next/server/chunks/ssr/src_10zavgy86u3us._.js +1 -1
  647. package/server/.next/server/chunks/ssr/src_13u1vu8hwwr6n._.js +3 -0
  648. package/server/.next/server/chunks/ssr/src_14bxi75kwc3xt._.js +3 -0
  649. package/server/.next/server/chunks/ssr/src_15mtytgydjtio._.js +3 -0
  650. package/server/.next/server/chunks/ssr/{src_14ulgwoxoyfkq._.js → src_1_9q6-wstn038._.js} +2 -2
  651. package/server/.next/server/chunks/ssr/src_1emolu5lrse98._.js +6 -0
  652. package/server/.next/server/chunks/ssr/src_1maoe8g5gnv0u._.js +3 -3
  653. package/server/.next/server/chunks/ssr/src_1ntwbcb1cl-y9._.js +1 -1
  654. package/server/.next/server/chunks/ssr/src_1q-jgpnd3lbcu._.js +1 -1
  655. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_agents_1fyhh1ldgm23z._.js +1 -1
  656. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_ask_ask-form_tsx_18ttm9nna_9y6._.js +1 -1
  657. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_logs_export-button_tsx_1k-crb88n1za_._.js +1 -1
  658. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_models_0ayzqn062pnv5._.js +1 -1
  659. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_playground_playground-view_tsx_18ua5zn_a0mar._.js +1 -1
  660. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_providers_1ru-30x6-uwu4._.js +1 -1
  661. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_quota_limits-form_tsx_1vouaaf560z_x._.js +1 -1
  662. package/server/.next/server/chunks/ssr/src_app_(console)_(private)_ai_usage_limits-form_tsx_0sfk3ver58rqw._.js +1 -1
  663. package/server/.next/server/chunks/ssr/src_app_(console)_0_odx13qcz9o1._.js +3 -0
  664. package/server/.next/server/chunks/ssr/{src_app_(console)_0-vcbt2icvguc._.js → src_app_(console)_0gw9o1og9hq_4._.js} +2 -2
  665. package/server/.next/server/chunks/ssr/src_app_(console)_alerts_0j5xlt68kwg8x._.js +2 -2
  666. package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_08in-j3xp5mbn._.js +3 -0
  667. package/server/.next/server/chunks/ssr/src_app_(console)_backups_actions_ts_1vpytsdh0wc1f._.js +1 -1
  668. package/server/.next/server/chunks/ssr/src_app_(console)_backups_drive-buttons_tsx_00cku5r_z3jkg._.js +1 -1
  669. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fahc65-97qla._.js +1 -1
  670. package/server/.next/server/chunks/ssr/src_app_(console)_connections_1fmp_anbkapur._.js +1 -1
  671. package/server/.next/server/chunks/ssr/src_app_(console)_connections_actions_ts_103blv4gzq76z._.js +1 -1
  672. package/server/.next/server/chunks/ssr/src_app_(console)_containers_containers-view_tsx_1xkcrw5gx53xo._.js +3 -0
  673. package/server/.next/server/chunks/ssr/src_app_(console)_create_actions_ts_05-86qr6kfjey._.js +1 -1
  674. package/server/.next/server/chunks/ssr/src_app_(console)_deploy_0zeo9k66pzhae._.js +3 -0
  675. package/server/.next/server/chunks/ssr/src_app_(console)_deploy_deploy-picker_tsx_1qtt_mfhq6hx7._.js +3 -0
  676. package/server/.next/server/chunks/ssr/src_app_(console)_dns_actions_ts_1jzn58xzwbukz._.js +1 -1
  677. package/server/.next/server/chunks/ssr/src_app_(console)_dns_record-actions_tsx_0cqmz51zcuebv._.js +1 -1
  678. package/server/.next/server/chunks/ssr/src_app_(console)_firebase_row-menu_tsx_0hssoq3pqjl-n._.js +1 -1
  679. package/server/.next/server/chunks/ssr/src_app_(console)_logs_log-viewer_tsx_0v3e4cflfk14w._.js +1 -1
  680. package/server/.next/server/chunks/ssr/src_app_(console)_manage_sections_section-switch_tsx_1mfs-o_357i22._.js +1 -1
  681. package/server/.next/server/chunks/ssr/src_app_(console)_monitor-actions_ts_10w3h7myk2ppi._.js +1 -1
  682. package/server/.next/server/chunks/ssr/src_app_(console)_os_09ake6nf7de4h._.js +3 -0
  683. package/server/.next/server/chunks/ssr/src_app_(console)_os_os-view_tsx_0xr69f5vtstls._.js +3 -0
  684. package/server/.next/server/chunks/ssr/src_app_(console)_palette-action_ts_0zyw9a9imev6p._.js +1 -1
  685. package/server/.next/server/chunks/ssr/src_app_(console)_sql_1icfsti04djqe._.js +2 -2
  686. package/server/.next/server/chunks/ssr/src_app_(console)_sql_actions_ts_1oqco02hw-3vp._.js +1 -1
  687. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_0ib3m2ch9gu-4._.js +1 -1
  688. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_1ofufib3-zzt-._.js +1 -1
  689. package/server/.next/server/chunks/ssr/src_app_(console)_supabase_pool-actions_ts_0nzd4vwy_9zzx._.js +1 -1
  690. package/server/.next/server/chunks/ssr/src_app_(console)_uptime_1mnnkfi-2zv-k._.js +1 -1
  691. package/server/.next/server/chunks/ssr/src_app_(console)_vercel-actions_ts_0wpk1yo9v632d._.js +1 -1
  692. package/server/.next/server/chunks/ssr/src_app_mfa_setup_setup-flow_tsx_1fpwygr2vdgnh._.js +1 -1
  693. package/server/.next/server/chunks/ssr/src_app_setup_setup-form_tsx_0izoagdur96e1._.js +1 -1
  694. package/server/.next/server/chunks/ssr/{src_app_signin_0obhr-33tppu8._.js → src_app_signin_1u2md84o5b6td._.js} +2 -2
  695. package/server/.next/server/chunks/ssr/src_components_174vbjanfxq81._.js +3 -0
  696. package/server/.next/server/chunks/ssr/{src_components_0ozvphxxwb7d-._.js → src_components_1pmro72g7f44k._.js} +1 -1
  697. package/server/.next/server/chunks/ssr/src_components_charts_tsx_0u0c5sxi3-7ug._.js +1 -1
  698. package/server/.next/server/chunks/ssr/src_components_create_create-dialog_tsx_1s_9clly_m1ru._.js +1 -1
  699. package/server/.next/server/chunks/ssr/src_components_live_tsx_1p2s3b807w0jt._.js +1 -1
  700. package/server/.next/server/chunks/ssr/src_lib_00ixpbvymlbo_._.js +3 -0
  701. package/server/.next/server/chunks/ssr/src_lib_05ai1oj91p9w2._.js +2 -2
  702. package/server/.next/server/chunks/ssr/src_lib_0eqv8l-v8d5ze._.js +1 -1
  703. package/server/.next/server/chunks/ssr/src_lib_0f_4mvf4-xxst._.js +1 -1
  704. package/server/.next/server/chunks/ssr/src_lib_0j2ifdk5byg1t._.js +3 -0
  705. package/server/.next/server/chunks/ssr/src_lib_0nbad7vu413-f._.js +1 -1
  706. package/server/.next/server/chunks/ssr/src_lib_1-o98ehvb_ozi._.js +3 -0
  707. package/server/.next/server/chunks/ssr/src_lib_1eioo4oodq-8h._.js +1 -1
  708. package/server/.next/server/chunks/ssr/src_lib_1iuuekw6uwbbr._.js +3 -0
  709. package/server/.next/server/chunks/ssr/{src_lib_0-nc33gvdtkg5._.js → src_lib_1zgor_vrwl5kt._.js} +1 -1
  710. package/server/.next/server/chunks/ssr/src_lib_alerts_catalog_ts_1ndg28acul64q._.js +1 -1
  711. package/server/.next/server/chunks/ssr/src_lib_data_cached_ts_017to1fh48jms._.js +3 -0
  712. package/server/.next/server/chunks/ssr/src_lib_data_databases-db_ts_04a4hj5j7h8m0._.js +3 -0
  713. package/server/.next/server/chunks/ssr/src_lib_data_os-scan-db_ts_0g2a3ofkaxf40._.js +4 -0
  714. package/server/.next/server/chunks/ssr/src_lib_data_provider-action-db_ts_0-bucssqnudtd._.js +1 -1
  715. package/server/.next/server/chunks/ssr/src_lib_data_repos-db_ts_06z14rp86ukii._.js +3 -0
  716. package/server/.next/server/chunks/ssr/src_lib_data_sections-db_ts_1ky6-o4z1mimq._.js +2 -2
  717. package/server/.next/server/chunks/ssr/src_lib_databases_snapshot-data_ts_1xilv6_re7hcp._.js +3 -0
  718. package/server/.next/server/chunks/ssr/{src_lib_demo_0sbw5n9n4mpzx._.js → src_lib_demo_15e3gnqzod0tj._.js} +2 -2
  719. package/server/.next/server/chunks/ssr/src_lib_demo_pool_ts_0fpn8acsdk64i._.js +1 -1
  720. package/server/.next/server/chunks/ssr/src_lib_deps_branch_ts_06dz9-7a66n24._.js +3 -0
  721. package/server/.next/server/chunks/ssr/src_lib_deps_osv_ts_0c-lbj4hsmojx._.js +3 -0
  722. package/server/.next/server/chunks/ssr/src_lib_deps_plan_ts_0bctf8v4qttk5._.js +1 -1
  723. package/server/.next/server/chunks/ssr/src_lib_sections_ts_0r8u4nvlpdkgq._.js +1 -1
  724. package/server/.next/server/chunks/ssr/src_lib_view_security_ts_1_c7vkcsp6y27._.js +3 -0
  725. package/server/.next/server/chunks/ssr/src_lib_view_usage_ts_1h1tj0m3n2vul._.js +1 -1
  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_providers_actions_ts_0wxa36ai6s5nn._.js +1 -1
  729. package/server/.next/server/chunks/ssr/src_private_notes_notes-actions_ts_1g63g8u965fhc._.js +1 -1
  730. package/server/.next/server/chunks/ssr/src_private_ui_0jp9fny_5k1v6._.js +1 -1
  731. package/server/.next/server/middleware-build-manifest.js +36 -3
  732. package/server/.next/server/next-font-manifest.js +1 -1
  733. package/server/.next/server/next-font-manifest.json +12 -0
  734. package/server/.next/server/pages/404.html +1 -1
  735. package/server/.next/server/pages/500.html +1 -1
  736. package/server/.next/server/preview-props.json +3 -3
  737. package/server/.next/server/server-reference-manifest.js +1 -1
  738. package/server/.next/server/server-reference-manifest.json +378 -176
  739. package/server/.next/static/chunks/{0uom2d_-nh45g.js → 00e1aosyzj6rl.js} +1 -1
  740. package/server/.next/static/chunks/{0tw_we2nleycj.js → 0cc9ahw1xs0ny.js} +1 -1
  741. package/server/.next/static/chunks/{0p5xwnif2xe2v.js → 0hths0sijlql2.js} +1 -1
  742. package/server/.next/static/chunks/0hzw1rqyz-ith.js +1 -0
  743. package/server/.next/static/chunks/0ish66r3_d92v.js +1 -0
  744. package/server/.next/static/chunks/{20u3tmdb-6drr.js → 0ps76fyk0mlud.js} +1 -1
  745. package/server/.next/static/chunks/{2i629nz4h3fqg.js → 0rblb2d9s6x__.js} +1 -1
  746. package/server/.next/static/chunks/{2pjruch-2xss_.js → 0v-0yvs2o_ibn.js} +1 -1
  747. package/server/.next/static/chunks/{3ki7epe69d8mi.js → 0viea3-xdb4uv.js} +1 -1
  748. package/server/.next/static/chunks/{3y4vkm_orksj_.js → 11r8k-t1ijjkn.js} +1 -1
  749. package/server/.next/static/chunks/{3tqlcut9yz40q.js → 14f5pn2krqoyh.js} +1 -1
  750. package/server/.next/static/chunks/{1d5jx8nbj9hio.js → 17zst1h7smcce.js} +1 -1
  751. package/server/.next/static/chunks/{1hzn5sr2wq7_6.js → 1a0rdqp6soc92.js} +1 -1
  752. package/server/.next/static/chunks/{2y5zgpld68mbe.js → 1a7zdd51t9mil.js} +2 -2
  753. package/server/.next/static/chunks/{32sed3oqb5mgw.js → 1d4i_v63pyozl.js} +1 -1
  754. package/server/.next/static/chunks/{20xid8njz36og.js → 1d5651gcd0bfq.js} +1 -1
  755. package/server/.next/static/chunks/{2jyi95ohxfybd.js → 1fh3cq_v5nqtp.js} +1 -1
  756. package/server/.next/static/chunks/1fk-rtgxvtdso.js +1 -0
  757. package/server/.next/static/chunks/1kyz-ah3_ho6c.js +1 -0
  758. package/server/.next/static/chunks/{3tigi9c4vke8u.js → 1qjg48qu3j1w4.js} +1 -1
  759. package/server/.next/static/chunks/{3e8jbph5vbqrh.js → 1qmrzxeff7esb.js} +1 -1
  760. package/server/.next/static/chunks/{13t0_-lm77ctu.js → 1rgved8vjyay2.js} +1 -1
  761. package/server/.next/static/chunks/{12z4gcgh75y3h.js → 1y_o3hc2z85sh.js} +1 -1
  762. package/server/.next/static/chunks/{12ryyhs-tt27p.js → 1yjrm8ekqlzfy.js} +1 -1
  763. package/server/.next/static/chunks/{1jfri9y7a54t3.js → 2-ijilf6lbw4f.js} +1 -1
  764. package/server/.next/static/chunks/{12rf9fj_wat4k.js → 2-vu-7596xgz-.js} +2 -2
  765. package/server/.next/static/chunks/{0x_wb_w6fgkyt.js → 226fbv9fq4xq_.js} +1 -1
  766. package/server/.next/static/chunks/{1xaww6l378y_h.js → 26exu0f7ok41j.js} +1 -1
  767. package/server/.next/static/chunks/{1zid1do5vuxcq.js → 28fzu8z0ofyw0.js} +1 -1
  768. package/server/.next/static/chunks/2c2oi6ivdnv6f.js +1 -0
  769. package/server/.next/static/chunks/{1q0dfli6xlok0.js → 2crsj9_2h2nzh.js} +1 -1
  770. package/server/.next/static/chunks/{2gnckmw5e2mfd.js → 2d7luax7loip3.js} +1 -1
  771. package/server/.next/static/chunks/{11r3cljnu3lrb.js → 2j24hsy45xi-u.js} +1 -1
  772. package/server/.next/static/chunks/{0vqfc5ez__g1s.js → 2k4z-oed_6g2l.js} +1 -1
  773. package/server/.next/static/chunks/{2zudgr23_bvy5.js → 2kmw3ug2__8y3.js} +1 -1
  774. package/server/.next/static/chunks/2owzn0qjb8n5g.js +1 -0
  775. package/server/.next/static/chunks/{0p_qyask2har9.js → 2pa65sxfnzj4k.js} +1 -1
  776. package/server/.next/static/chunks/2zzk4wxiacgja.css +3 -0
  777. package/server/.next/static/chunks/{223rdnw2yty48.js → 308vk5n0anqam.js} +2 -2
  778. package/server/.next/static/chunks/{27epf-aa_5m_r.js → 356b00huilj4q.js} +1 -1
  779. package/server/.next/static/chunks/{0znki_inst5fe.js → 35vilzb1p9yjf.js} +1 -1
  780. package/server/.next/static/chunks/39a3uxexc-wqm.js +1 -0
  781. package/server/.next/static/chunks/{1andb44i5y-5c.js → 3_6-4h_qltoii.js} +1 -1
  782. package/server/.next/static/chunks/3a9toq_3nqe93.js +1 -0
  783. package/server/.next/static/chunks/{3a55yojb_7drl.js → 3ezef0voy5xju.js} +1 -1
  784. package/server/.next/static/chunks/{2wmkryogm5g3y.js → 3f1selgoqszyq.js} +2 -2
  785. package/server/.next/static/chunks/{143_uak5v6uky.js → 3g0ywdith98z2.js} +1 -1
  786. package/server/.next/static/chunks/{0o53bcdd6gtyu.js → 3lc-hq-bpg71u.js} +1 -1
  787. package/server/.next/static/chunks/3qudv985iqmz7.js +1 -0
  788. package/server/.next/static/chunks/{0a77yea00jt0y.js → 3u2qewigse-a4.js} +1 -1
  789. package/server/.next/static/chunks/{16f-5rrbswao-.js → 3w5rrc-0xud6m.js} +1 -1
  790. package/server/.next/static/chunks/{2plrf95jah9ew.js → 3wfyge_-2qnyj.js} +1 -1
  791. package/server/.next/static/chunks/{0s44z2_pzghcu.js → 3xulo5x1hbsw-.js} +1 -1
  792. package/server/.next/static/chunks/44hkyor0suthy.js +1 -0
  793. package/server/drizzle-selfhost/0008_ci_failing_rule.sql +2 -0
  794. package/server/drizzle-selfhost/0009_os_security_rule.sql +2 -0
  795. package/server/drizzle-selfhost/0010_supabase_metrics_memory.sql +8 -0
  796. package/server/drizzle-selfhost/meta/_journal.json +82 -61
  797. package/server/.next/server/chunks/[root-of-the-server]__038br8sr9eepd._.js +0 -3
  798. package/server/.next/server/chunks/[root-of-the-server]__0a5op--7u5_xh._.js +0 -3
  799. package/server/.next/server/chunks/[root-of-the-server]__0r3cq1lecww4e._.js +0 -3
  800. package/server/.next/server/chunks/[root-of-the-server]__0r_6xpjwcdrda._.js +0 -3
  801. package/server/.next/server/chunks/[root-of-the-server]__0rctmpp7p7cp9._.js +0 -3
  802. package/server/.next/server/chunks/[root-of-the-server]__0rpys5i04hzww._.js +0 -3
  803. package/server/.next/server/chunks/[root-of-the-server]__0vax5gpdmh80a._.js +0 -3
  804. package/server/.next/server/chunks/[root-of-the-server]__0vv63vp8y0fs-._.js +0 -3
  805. package/server/.next/server/chunks/[root-of-the-server]__0ycpg444s91lb._.js +0 -3
  806. package/server/.next/server/chunks/[root-of-the-server]__0zjhlf_yodox3._.js +0 -3
  807. package/server/.next/server/chunks/[root-of-the-server]__1-37ctpn8yw_m._.js +0 -3
  808. package/server/.next/server/chunks/[root-of-the-server]__1-ne3clcouvm2._.js +0 -3
  809. package/server/.next/server/chunks/[root-of-the-server]__14vj8ywy5spa2._.js +0 -3
  810. package/server/.next/server/chunks/[root-of-the-server]__16jyhasrd2ojp._.js +0 -3
  811. package/server/.next/server/chunks/[root-of-the-server]__16u9d_hm9lefl._.js +0 -3
  812. package/server/.next/server/chunks/[root-of-the-server]__1_zr2xlmtkn4l._.js +0 -3
  813. package/server/.next/server/chunks/[root-of-the-server]__1a9cd4d9ohf69._.js +0 -3
  814. package/server/.next/server/chunks/[root-of-the-server]__1aagly59gw-xf._.js +0 -3
  815. package/server/.next/server/chunks/[root-of-the-server]__1c0cb3ur16yhh._.js +0 -3
  816. package/server/.next/server/chunks/[root-of-the-server]__1jvy8r4n-62x7._.js +0 -3
  817. package/server/.next/server/chunks/[root-of-the-server]__1k-7jan2fsbys._.js +0 -3
  818. package/server/.next/server/chunks/[root-of-the-server]__1qmdi981syrsn._.js +0 -3
  819. package/server/.next/server/chunks/[root-of-the-server]__1r9v6qgjwlv32._.js +0 -3
  820. package/server/.next/server/chunks/[root-of-the-server]__1uad-kugxmkx8._.js +0 -3
  821. package/server/.next/server/chunks/_0ffsv993spriq._.js +0 -3
  822. package/server/.next/server/chunks/_0nt4ifc48vl34._.js +0 -48
  823. package/server/.next/server/chunks/_0rkn5gstaj2d0._.js +0 -48
  824. package/server/.next/server/chunks/_1_4jb754aeifp._.js +0 -48
  825. package/server/.next/server/chunks/_1d_77nvqcnkcg._.js +0 -3
  826. package/server/.next/server/chunks/_1qsryafbujfwn._.js +0 -48
  827. package/server/.next/server/chunks/src_05vq-abuilwk4._.js +0 -3
  828. package/server/.next/server/chunks/src_06lwphwuzgl6e._.js +0 -3
  829. package/server/.next/server/chunks/src_1p24c-nz35cov._.js +0 -3
  830. package/server/.next/server/chunks/src_20sym_ohuqw76._.js +0 -3
  831. package/server/.next/server/chunks/src_lib_001zhbfd1zeuk._.js +0 -3
  832. package/server/.next/server/chunks/src_lib_0k_aposzvy1c8._.js +0 -6
  833. package/server/.next/server/chunks/src_lib_0n1xnas42gur9._.js +0 -3
  834. package/server/.next/server/chunks/src_lib_0vjapfdxkooq5._.js +0 -6
  835. package/server/.next/server/chunks/src_lib_0yn0bj14ih0id._.js +0 -6
  836. package/server/.next/server/chunks/src_lib_18wgdeemqm6gg._.js +0 -3
  837. package/server/.next/server/chunks/src_lib_1qbgm0zu8q1rr._.js +0 -6
  838. package/server/.next/server/chunks/src_lib_1ywf_wup1kxy_._.js +0 -3
  839. package/server/.next/server/chunks/src_private_123pnf7iqjhkz._.js +0 -3
  840. package/server/.next/server/chunks/ssr/[root-of-the-server]__03mal5uo1rzg4._.js +0 -3
  841. package/server/.next/server/chunks/ssr/[root-of-the-server]__0s2of3mcou177._.js +0 -3
  842. package/server/.next/server/chunks/ssr/[root-of-the-server]__0tqqte5jb6jz7._.js +0 -3
  843. package/server/.next/server/chunks/ssr/[root-of-the-server]__0ujxsp9l9ad-l._.js +0 -3
  844. package/server/.next/server/chunks/ssr/[root-of-the-server]__113zn8es2wp67._.js +0 -3
  845. package/server/.next/server/chunks/ssr/_09s2unlb4r6yf._.js +0 -3
  846. package/server/.next/server/chunks/ssr/_0_8v3-nq-b4ug._.js +0 -3
  847. package/server/.next/server/chunks/ssr/_0_yyszoyzyccn._.js +0 -3
  848. package/server/.next/server/chunks/ssr/_0ffsv993spriq._.js +0 -3
  849. package/server/.next/server/chunks/ssr/_0v6v5w16qxwke._.js +0 -3
  850. package/server/.next/server/chunks/ssr/_12wjuabpo0ofk._.js +0 -3
  851. package/server/.next/server/chunks/ssr/_1js_iq-0mb62d._.js +0 -3
  852. package/server/.next/server/chunks/ssr/_1ktvwngz0lzjr._.js +0 -3
  853. package/server/.next/server/chunks/ssr/_1st-ksb6wm2og._.js +0 -3
  854. package/server/.next/server/chunks/ssr/_next-internal_server_app_(console)_apps_[id]_page_actions_1--1mjfnoprr2.js +0 -3
  855. package/server/.next/server/chunks/ssr/src_04o0-kzfmcnim._.js +0 -3
  856. package/server/.next/server/chunks/ssr/src_0dceh6hsdybq8._.js +0 -3
  857. package/server/.next/server/chunks/ssr/src_1-k3gvxaqli74._.js +0 -3
  858. package/server/.next/server/chunks/ssr/src_1ckoccd8qvnje._.js +0 -3
  859. package/server/.next/server/chunks/ssr/src_1p24c-nz35cov._.js +0 -3
  860. package/server/.next/server/chunks/ssr/src_1wnx8vxv7nd04._.js +0 -3
  861. package/server/.next/server/chunks/ssr/src_app_(console)_05h6-wpd078oj._.js +0 -3
  862. package/server/.next/server/chunks/ssr/src_app_(console)_apps_[id]_10xvt--29v-ed._.js +0 -3
  863. package/server/.next/server/chunks/ssr/src_lib_001zhbfd1zeuk._.js +0 -3
  864. package/server/.next/server/chunks/ssr/src_lib_033ses2c4-ww-._.js +0 -3
  865. package/server/.next/server/chunks/ssr/src_lib_0n1xnas42gur9._.js +0 -3
  866. package/server/.next/server/chunks/ssr/src_lib_18wgdeemqm6gg._.js +0 -3
  867. package/server/.next/server/chunks/ssr/src_lib_1ywf_wup1kxy_._.js +0 -3
  868. package/server/.next/server/chunks/ssr/src_private_1yzfhupl3rlpx._.js +0 -6
  869. package/server/.next/static/chunks/08fdgz3f6aeh3.js +0 -1
  870. package/server/.next/static/chunks/11locca8ayu84.js +0 -1
  871. package/server/.next/static/chunks/1lq20aqwgdq8w.js +0 -1
  872. package/server/.next/static/chunks/1tg1mstvws8rj.css +0 -3
  873. package/server/.next/static/chunks/38ao1jq4zw-nd.js +0 -1
  874. package/server/.next/static/chunks/3c79k7qsyelf1.js +0 -1
  875. package/server/.next/static/chunks/3zhb71t6q4f9k.js +0 -1
  876. /package/server/.next/static/{VmJyuS9PCFUrRHa6THIcV → g_rE0bq_ZZa-pl4RulWXV}/_buildManifest.js +0 -0
  877. /package/server/.next/static/{VmJyuS9PCFUrRHa6THIcV → g_rE0bq_ZZa-pl4RulWXV}/_clientMiddlewareManifest.js +0 -0
  878. /package/server/.next/static/{VmJyuS9PCFUrRHa6THIcV → g_rE0bq_ZZa-pl4RulWXV}/_ssgManifest.js +0 -0
@@ -1,7 +1,7 @@
1
- module.exports=[907897,e=>{"use strict";var t=e.i(519137),a=e.i(530298),i=e.i(109709);let n="The demo is busy right now. Try again in a minute.",r="Too many new demo sessions from your network. Try again in a few minutes.",s=new Map([...new Map([["watchbell-demo-busy",n],["watchbell-demo-too-many",r]])].map(([e,t])=>[t,e]));function o(e){return Object.assign(Error(e),{digest:s.get(e)})}var d=e.i(533102),l=e.i(200123),c=e.i(516506),u=e.i(292178),p=e.i(412948),m=e.i(739817),h=e.i(431829);let g=(e,t)=>`${e} ${t}${1===e?"":"s"}`;async function f(e,t,i,n,r){let s,o,f,w,A,y,k,{db:I,seed:v,now:_}=e,$=(0,h.k)(v,"alerts"),b=(...e)=>(0,h.T)(v,"alert",...e),S=e=>t.apps.find(t=>t.id===e)?.name??"app",T=(0,l.f)(await I.execute(d.sql`select resource_id, external_id, state, target, commit_sha, created_at_provider, is_current, is_previous_production from ops.deployments`)),x=T.find(e=>"error"===e.state&&"production"===e.target),D={appId:x.resource_id,appName:S(x.resource_id),sha:x.commit_sha.slice(0,7),createdAt:new Date(x.created_at_provider),currentExternalId:T.find(e=>e.resource_id===x.resource_id&&e.is_current)?.external_id??null},E=(e,t,a)=>{let i=a.resolvedAt??null;return{ruleKey:e,subject:t,severity:c._[e].severity,resourceId:null,accountId:null,okStreak:2*!!i,lastSeenAt:i??(0,m.$)(_,1e3*$.int(5,55)),lastSampleAt:null,notifiedOpen:"info"!==c._[e].severity,lastNotifiedAt:i??new Date(a.startedAt.getTime()+m.E),pending:null,pendingSince:null,...a}},M=r.certSoon,O=(0,u.g)(M.notAfter,_)??0,C=r.zoneSoon,P=(0,u.g)(C.expiresAt,_)??0,z=[E("DeploymentFailed",D.appId,{id:b("firing","deploy"),resourceId:D.appId,title:D.appName,message:`Production deployment ${D.sha} failed.`,startedAt:new Date(D.createdAt.getTime()+1e3*$.int(60,150))}),E("CertExpiringSoon",M.id,{id:b("firing","cert"),resourceId:M.id,title:M.name,message:`The TLS certificate of ${M.name} expires in ${g(O,"day")}.`,startedAt:new Date(M.notAfter.getTime()-14*m.h+$.int(5,55)*m.E)}),E("DomainExpiringSoon",C.id,{id:b("firing","zone"),resourceId:C.id,title:C.name,message:`${C.name} expires in ${g(P,"day")}.`,startedAt:new Date(C.expiresAt.getTime()-30*m.h+$.int(5,55)*m.E)})],R=i.outage,j=i.monitors.find(e=>e.id===R.monitorId),N=t.apps.find(e=>e.id!==D.appId)??t.apps[0],U=e=>n.dbs.find(t=>t.kind===e),F=(e,t)=>(0,m.$)(_,e*m.h+t*m.w+$.int(0,50)*m.E),H=(e,t)=>new Date(e.getTime()+t*m.E),L=(e,t)=>{let a=i.monitors.find(e=>e.id===t.monitorId);return E("HighLatency",a.id,{id:b("resolved",e),resourceId:a.appId,title:`${S(a.appId)} ${a.path}`,message:`p95 ${t.p95.toLocaleString("en-US")} ms over the last 10 minutes (limit 1,500 ms).`,startedAt:t.firedAt,resolvedAt:t.resolvedAt})},B={start:F(4,$.int(1,9)),sha:(0,h.p)(7,v,"old-failed",N.name)},q=U("upstash_redis"),K=U("firestore"),V=U("supabase_project"),W=n.cloudflare.label,G={outage:E("MonitorDown",j.id,{id:b("resolved","outage"),resourceId:j.appId,title:`${S(j.appId)} ${j.path}`,message:`${(0,p.F)(j.url)} returned HTTP 503 on 3 consecutive checks.`,startedAt:new Date(R.startedAt.getTime()+10*m.E),resolvedAt:R.recoveredAt}),latencyA:L("latency-a",i.slow[0]),latencyB:L("latency-b",i.slow[1]),oldDeploy:E("DeploymentFailed",N.id,{id:b("resolved","old-deploy"),resourceId:N.id,title:N.name,message:`Production deployment ${B.sha} failed.`,startedAt:B.start,resolvedAt:H(B.start,$.int(35,70))}),collector:(s=F(6,$.int(1,10)),E("CollectorStale","collector",{id:b("resolved","collector"),title:"collector",message:"The last minute run finished 6 min ago.",startedAt:s,resolvedAt:H(s,$.int(4,9))})),autoPause:(o=F(6,$.int(12,20)),E("AutoPauseRisk",V.id,{id:b("resolved","auto-pause"),resourceId:V.id,title:V.name,message:"No API traffic for 4 days. Supabase pauses free projects after about 7 days.",startedAt:o,resolvedAt:H(o,60*$.int(20,30))})),quota:(f=F(6,$.int(1,8)),E("DbQuotaHigh",q.id,{id:b("resolved","db-quota"),resourceId:q.id,title:q.name,message:`${q.name}: Commands at ${$.int(81,88)}% of the free plan.`,startedAt:f,resolvedAt:H(f,60*$.int(3,6))})),firestore:(w=F(3,$.int(1,6)),E("FirestoreQuotaHigh",K.id,{id:b("resolved","firestore"),resourceId:K.id,title:K.name,message:`${K.name} read ${$.int(40500,46e3).toLocaleString("en-US")} of 50,000 documents today (${$.int(81,92)}%).`,startedAt:w,resolvedAt:H(w,60*$.int(2,5))})),proxied:(A=F(5,$.int(12,20)),E("DnsProxiedToVercel",(y=r.vercelRecord).id,{id:b("resolved","proxied"),resourceId:y.zoneId,title:y.name,message:`${y.name} points to Vercel through the Cloudflare proxy. Vercel recommends DNS only.`,startedAt:A,resolvedAt:H(A,24*$.int(2,4)*60)})),credential:(k=F(6,$.int(14,22)),E("CredentialExpiring",n.cloudflare.accountId,{id:b("resolved","credential"),accountId:n.cloudflare.accountId,title:`cloudflare \xb7 ${W}`,message:`The cloudflare credential ${W} expires in 9 days.`,startedAt:k,resolvedAt:H(k,24*$.int(1,2)*60+$.int(10,300))}))};return await I.insert(a.alerts).values([...z,...Object.values(G)]),{firing:{deploy:z[0].id,cert:z[1].id,zone:z[2].id},resolved:{outage:G.outage.id,oldDeploy:{id:G.oldDeploy.id,appId:N.id,appName:N.name,previousExternalId:T.find(e=>e.resource_id===N.id&&e.is_previous_production)?.external_id??null,startedAt:G.oldDeploy.startedAt,resolvedAt:G.oldDeploy.resolvedAt},credential:{title:G.credential.title,resolvedAt:G.credential.resolvedAt}},failedDeploy:D}}var w=e.i(27479),A=e.i(816173);let y=e=>`${e}.example`,k=["acme-shop","orbit-blog","nimbus-docs","pixel-forge","harbor-api","lumen-portal","quartz-admin","tidal-landing","ember-status","cobalt-store","willow-wiki","atlas-dash","sprout-crm","comet-links","fable-notes","maple-events"],I=[{name:"Juniper Labs",slug:"juniper-labs"},{name:"Kestrel Works",slug:"kestrel-works"},{name:"Brightfield Studio",slug:"brightfield-studio"},{name:"Saltmarsh Digital",slug:"saltmarsh-digital"}],v=["nextjs","nextjs","nextjs","vite","astro","sveltekit","remix"],_=["sin1","iad1","fra1","hnd1","sfo1"],$=["feat/checkout-v2","feat/dark-mode","fix/login-redirect","feat/search","chore/deps","fix/image-sizes","feat/newsletter","fix/cache-headers"],b=["Fix cart total rounding","Add dark mode toggle","Update dependencies","Speed up the product grid","Fix login redirect loop","Add sitemap","Tidy the footer links","Cache the pricing page","Add newsletter signup","Fix image sizes on mobile","Bump Next.js","Add search to the docs","Handle empty states","Retry failed webhooks","Move env checks to startup","Shorten the onboarding copy","Add health endpoint","Fix timezone in the event list","Split the dashboard bundle","Add RSS feed"],S={supabase_project:["shop-prod","portal-main","crm-core","store-db"],neon_project:["analytics","reporting","billing-ledger","metrics-pg"],firestore:["notes-app","mobile-sync","feedback-inbox","event-chat"],turso_database:["edge-cache","geo-lookup","docs-search","flags"],upstash_redis:["sessions","rate-limits","queue-cache","page-cache"],d1_database:["events-log","link-clicks","form-entries","audit-trail"]},T=["acme-studio","orbit-labs","nimbus-works","pixel-harbor","tidal-digital","ember-co"],x=[{level:"error",method:"POST",path:"/api/checkout",status:500,message:"TypeError: Cannot read properties of undefined (reading 'price')"},{level:"warning",method:"GET",path:"/products",status:200,message:"Slow query: products list took 1840 ms"},{level:"error",method:"GET",path:"/api/search",status:504,message:"Task timed out after 10.02 seconds"},{level:"warning",method:"GET",path:"/",status:200,message:"Image optimization fell back to the original file (unsupported format)"},{level:"error",method:"POST",path:"/api/webhooks/payments",status:401,message:"Webhook signature didn't match"},{level:"fatal",method:"GET",path:"/api/report",status:500,message:"Error: connect ECONNREFUSED (database connection pool exhausted)"},{level:"warning",method:"GET",path:"/blog/[slug]",status:404,message:'Post not found for slug "spring-sale-2025"'},{level:"error",method:"PUT",path:"/api/profile",status:422,message:"ZodError: email must be a valid email"}];async function D(e){let{db:t,seed:i,now:n}=e,r=(0,h.k)(i,"apps"),s=r.pick(I),o={id:`team_${(0,h.g)(24,i,"team")}`,name:s.name,slug:s.slug},d=(0,h.T)(i,"account","vercel"),l=(0,m.$)(n,r.int(120,300)*m.h),c=(0,m.$)(n,r.int(3,50)*m.E);await t.insert(a.accounts).values({id:d,provider:"vercel",label:o.name,credentialCiphertext:"demo",credentialIv:"demo",credentialKind:"Access token",status:"ok",lastTestAt:c,lastSyncAt:c,createdAt:l,updatedAt:c});let u=r.shuffle(k).slice(0,r.int(5,8)).sort().map((e,t)=>({id:(0,h.T)(i,"app",e),index:t,name:e,externalId:`prj_${(0,h.g)(28,i,"project",e)}`,host:y(e),createdAt:(0,m.$)(n,r.int(95,400)*m.h-r.int(0,23)*m.w)}));return await t.insert(a.resources).values(u.map(e=>({id:e.id,accountId:d,kind:"app",externalId:e.externalId,name:e.name,monitored:!0,firstSeenAt:e.createdAt,lastSeenAt:c,createdAt:e.createdAt,updatedAt:c,meta:{teamId:o.id,teamSlug:o.slug,teamName:o.name,framework:r.pick(v),productionBranch:"main",createdAt:e.createdAt.toISOString(),repo:`example-org/${e.name}`,repoType:"github",functionRegions:[r.pick(_)]}}))),await t.insert(a.deployments).values(function(e,t){let{seed:a,now:i}=e,n=(0,h.k)(a,"deployments"),r=n.pick(t).id,s=n.pick(t).id,o=[];for(let e of t){let t=(t,r,s,d,l)=>{let c=(0,m.$)(i,s),u=new Date(c.getTime()+1e3*n.int(3,12)),p="ready"===d?new Date(u.getTime()+1e3*n.int(25,160)):null,g="production"===r?"main":n.pick($);o.push({id:(0,h.T)(a,"deployment",e.name,t),resourceId:e.id,externalId:`dpl_${(0,h.g)(24,a,"deployment",e.name,t)}`,state:d,target:r,branch:g,commitSha:(0,h.p)(40,a,"commit",e.name,t),commitMessage:l??n.pick(b),source:"git",url:y(`${e.name}-git-${g.replace(/[^a-z0-9]+/g,"-")}-${(0,h.g)(9,a,"deployment-url",e.name,t).toLowerCase()}`),buildingAt:u,readyAt:p,createdAtProvider:c,isCurrent:!1,isPreviousProduction:!1,createdAt:c,updatedAt:p??u})},d=e.id===r,l=n.int(2,5);for(let e=0;e<l;e++){let a=0===e?Math.max(d?5*m.w:0,n.int(1,96)*m.w-n.int(0,40)*m.E):n.int(4+4*e,6+6*e)*m.h+n.int(0,23)*m.w;t(e,"production",a,"ready")}let c=n.int(0,3);for(let e=0;e<c;e++)t(10+e,"preview",n.int(2,240)*m.w+n.int(0,59)*m.E,"ready");d&&t(20,"production",n.int(30,240)*m.E,"error","Refactor the checkout form"),e.id===s&&t(21,"preview",n.int(1,6)*m.E,"building")}for(let e of t){let t=o.filter(t=>t.resourceId===e.id&&"production"===t.target&&"ready"===t.state).map(e=>({id:e.externalId,createdAt:e.createdAtProvider})),{currentId:a,previousId:i}=(0,w.a)(t,null);for(let t of o)t.resourceId===e.id&&(t.isCurrent=t.externalId===a,t.isPreviousProduction=t.externalId===i)}return o}(e,u)),{accountId:d,team:o,apps:u}}async function E(e,t,i){let{db:n,seed:r,now:s}=e,o=(0,h.k)(r,"snapshots"),d=(0,m.$)(s,1e3*o.int(5,40));await n.insert(a.snapshots).values(t.apps.map(e=>{var t,a;let n,r,l,c,u,p=i.filter(t=>t.appId===e.id),h=(0,A.V)({monitors:p.map(e=>e.state),building:!1,dbPaused:!1}),g=p.find(e=>"err"===e.state)??p.find(e=>"warn"===e.state),f=g?.stateSince??new Date(Math.max(...p.map(e=>e.stateSince.getTime())));return{resourceId:e.id,state:h,stateSince:f,collectedAt:d,data:{code:g?.lastStatus??null,latencyMs:p[0]?.lastLatencyMs??null,dbPaused:!1,pageviews:(t=o,a=s,r=Math.floor((n=(0,m.$)(a,t.int(2,25)*m.E)).getTime()/m.w)*m.w,l=t.int(20,400),{enabled:!0,total24h:u=(c=Array.from({length:24},(e,a)=>{let i=r-(23-a)*m.w,n=.15+.85*Math.max(0,Math.sin(((new Date(i).getUTCHours()+7)%24-6)/24*2*Math.PI));return[new Date(i).toISOString(),Math.round(l*n*(.7+.6*t.next()))]})).reduce((e,[,t])=>e+t,0),visitors24h:Math.round(u*(.3+.2*t.next())),hourly:c,readAt:n.toISOString()})}}}))}var M=e.i(295017),O=e.i(887103),C=e.i(516464),P=e.i(725321);let z="demo",R={supabase:"Access token",neon:"API key",firebase:"Service account",turso:"Platform API token",upstash:"Developer API key",cloudflare:"API token"};async function j(e,t){let{db:i,seed:n,now:r}=e,s=(0,h.k)(n,"databases"),o=t.team,d=e=>(0,h.T)(n,"account",e),l=(0,m.$)(r,s.int(4,40)*m.E);await i.insert(a.accounts).values(["supabase","neon","firebase","turso","upstash","cloudflare"].map(e=>{let t=(0,m.$)(r,s.int(60,280)*m.h);return{id:d(e),provider:e,label:"firebase"===e?`${o.slug}-firebase`:o.name,credentialCiphertext:z,credentialIv:z,credentialKind:R[e],status:"ok",lastTestAt:l,lastSyncAt:l,createdAt:t,updatedAt:l}}));let c=(0,h.p)(32,n,"cloudflare-account"),u=[{kind:"supabase_project",provider:"supabase",externalId:(0,h.g)(20,n,"supabase-ref").toLowerCase().replace(/[0-9]/g,"x")},{kind:"neon_project",provider:"neon",externalId:`${s.pick(["silent","quiet","misty","bold","calm"])}-${s.pick(["river","meadow","forest","harbor","dune"])}-${(0,h.p)(8,n,"neon-id")}`},{kind:"firestore",provider:"firebase",externalId:`${o.slug.split("-")[0]}-notes-${(0,h.p)(5,n,"firebase-id")}`},{kind:"turso_database",provider:"turso",externalId:(0,h.T)(n,"turso-db")},{kind:"upstash_redis",provider:"upstash",externalId:(0,h.T)(n,"upstash-db")},{kind:"d1_database",provider:"cloudflare",externalId:(0,h.T)(n,"d1-db")}].map(({kind:e,provider:t,externalId:a})=>{let i=s.pick(S[e]),l=(0,m.$)(r,s.int(40,300)*m.h),u="supabase_project"===e?{orgSlug:o.slug,region:"ap-southeast-1",pgVersion:"17.4.1.054",createdAt:l.toISOString(),status:"ACTIVE_HEALTHY"}:"neon_project"===e?{orgId:`org-${(0,h.p)(8,n,"neon-org")}`,region:"aws-ap-southeast-1",pgVersion:17,createdAt:l.toISOString()}:"firestore"===e?{projectId:a}:"turso_database"===e?{org:o.slug,group:"default",region:"sin"}:"upstash_redis"===e?{region:"ap-southeast-1",type:"free"}:{accountId:c,createdAt:l.toISOString()};return{id:(0,h.T)(n,"db",e),kind:e,name:i,externalId:a,accountId:d(t),meta:u,createdAt:l}});await i.insert(a.resources).values(u.map(e=>({id:e.id,accountId:e.accountId,kind:e.kind,externalId:e.externalId,name:e.name,monitored:!0,meta:e.meta,firstSeenAt:e.createdAt,lastSeenAt:l,createdAt:e.createdAt,updatedAt:l})));let p=e=>u.find(t=>t.kind===e),g=e=>(0,m.$)(r,e*m.E+1e3*s.int(0,50)),f=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),1)),w=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth()+1,1)),A=(r.getTime()-f.getTime())/(w.getTime()-f.getTime()),y=[{id:`ep-${(0,h.g)(12,n,"neon-ep").toLowerCase()}`,branchId:`br-${(0,h.g)(12,n,"neon-br-main").toLowerCase()}`,state:"idle",pendingState:null,disabled:!1,minCu:.25,maxCu:2,lastActive:(0,m.$)(r,s.int(20,300)*m.E).toISOString()}],k=Math.round((8+50*A+s.int(0,10))*3600),I=(0,C.p)({endpoints:y,computeSeconds:k}),v=[{id:p("supabase_project").id,state:"ok",since:(0,m.$)(r,s.int(20,90)*m.h),at:g(1),data:{status:"ACTIVE_HEALTHY",region:"ap-southeast-1",pgVersion:"17.4.1.054",orgSlug:o.slug,freeOrg:!0,lastTrafficAt:(0,m.$)(r,s.int(3,50)*m.E).toISOString(),trafficAt:(0,m.$)(r,s.int(1,4)*m.E).toISOString(),health:[{name:"db",status:"ACTIVE_HEALTHY"},{name:"auth",status:"ACTIVE_HEALTHY"},{name:"rest",status:"ACTIVE_HEALTHY"},{name:"storage",status:"ACTIVE_HEALTHY"}],healthAt:(0,m.$)(r,s.int(1,4)*m.E).toISOString(),sizeBytes:1048576*s.int(38,140)+s.int(0,1048576),sizeAt:(0,m.$)(r,s.int(4,20)*m.w).toISOString(),lastGoodState:"ok"}},{id:p("neon_project").id,state:"ok"===I.state?"ok":"idle",since:(0,m.$)(r,s.int(20,300)*m.E),at:g(s.int(2,9)),data:{region:"aws-ap-southeast-1",pgVersion:17,orgId:p("neon_project").meta.orgId,computeSeconds:k,transferBytes:Math.round((.2+1.6*A)*0x40000000),periodStart:f.toISOString(),periodEnd:w.toISOString(),activeSeconds:Math.round(k/1.4),endpoints:y,branches:[{id:y[0].branchId,name:"main",isDefault:!0,logicalSize:1048576*s.int(120,380)},{id:`br-${(0,h.g)(12,n,"neon-br-preview").toLowerCase()}`,name:"preview/reporting",isDefault:!1,logicalSize:1048576*s.int(60,160)}],lastGoodState:"ok"===I.state?"ok":"idle"}},{id:p("firestore").id,state:"ok",since:(0,m.$)(r,s.int(10,60)*m.h),at:g(1),data:{displayName:p("firestore").name,latencyMs:s.int(70,190),reads:s.int(4e3,22e3),writes:s.int(800,6e3),deletes:s.int(20,400),opsAt:(0,m.$)(r,s.int(10,50)*m.E).toISOString(),authUsers:s.int(80,2400),authAt:(0,m.$)(r,s.int(2,20)*m.w).toISOString(),lastGoodState:"ok"}},{id:p("turso_database").id,state:"ok",since:(0,m.$)(r,s.int(10,60)*m.h),at:g(s.int(5,50)),data:{org:o.slug,group:"default",primaryRegion:"sin",plan:"free",blockReads:!1,blockWrites:!1,rowsRead:Math.round((20+140*A)*1e6),rowsWritten:Math.round((.2+2.2*A)*1e6),storageBytes:1048576*s.int(40,600),orgRowsRead:Math.round((25+160*A)*1e6),orgRowsWritten:Math.round((.3+2.6*A)*1e6),orgStorageBytes:1048576*s.int(700,1400),orgDatabases:3,usageAt:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),lastGoodState:"ok"}},{id:p("upstash_redis").id,state:"ok",since:(0,m.$)(r,s.int(10,60)*m.h),at:g(s.int(5,50)),data:{region:"ap-southeast-1",status:"active",type:"free",dailyCommands:s.int(2e3,9e3),monthlyRequests:Math.round((20+180*A)*1e3)+s.int(0,999),storageBytes:1048576*s.int(6,90),monthlyBandwidthBytes:Math.round((.1+2.4*A)*0x40000000),statsAt:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),lastGoodState:"ok"}},{id:p("d1_database").id,state:"ok",since:(0,m.$)(r,s.int(10,60)*m.h),at:g(s.int(5,50)),data:{accountId:c,createdAt:p("d1_database").createdAt.toISOString(),sizeBytes:1048576*s.int(4,120),numTables:s.int(4,12),readReplication:"disabled",detailsAt:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),rowsRead:s.int(4e4,9e5),rowsWritten:s.int(1e3,3e4),readQueries:s.int(4e3,6e4),writeQueries:s.int(300,6e3),accountRowsRead:s.int(9e5,18e5),accountRowsWritten:s.int(3e4,55e3),accountSizeBytes:1048576*s.int(200,900),accountDatabases:2,usageDay:r.toISOString().slice(0,10),usageAt:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),lastGoodState:"ok"}}];await i.insert(a.snapshots).values(v.map(e=>({resourceId:e.id,state:e.state,stateSince:e.since,collectedAt:e.at,data:e.data}))),await i.insert(a.settings).values({key:P.f,value:{[d("cloudflare")]:{d1:"ok",analytics:"ok",at:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),note:null}},createdAt:(0,m.$)(r,30*m.h),updatedAt:r});let _=["supabase_project","neon_project","turso_database","upstash_redis","firestore","d1_database","supabase_project","neon_project"],$=t.apps.slice(0,Math.max(4,t.apps.length-1));return await i.insert(a.links).values($.map((e,t)=>({id:(0,h.T)(n,"link",e.name),fromResourceId:e.id,toResourceId:p(_[t]).id,kind:"uses_db",source:"manual",createdAt:(0,m.$)(r,s.int(20,90)*m.h),updatedAt:(0,m.$)(r,s.int(1,19)*m.h)}))),await N(e,p("supabase_project").id),await i.insert(a.keepActive).values({resourceId:p("supabase_project").id,keep:!0,autoRestore:!1,lastKeepAliveAt:(0,m.$)(r,s.int(2,20)*m.w),updatedAt:(0,m.$)(r,12*m.h)}),{dbs:u.map(({id:e,kind:t,name:a,externalId:i,accountId:n})=>({id:e,kind:t,name:a,externalId:i,accountId:n})),cloudflare:{accountId:d("cloudflare"),cfAccountId:c,label:o.name}}}async function N(e,t){let{db:a,seed:i,now:n}=e,r=(0,h.k)(i,"compute"),s=(0,m.$)(n,r.int(1,4)*m.E),o=Array.from({length:24},(e,a)=>{let i=new Date((0,O.b)(n).getTime()-a*m.w),s=Math.round((6+18*r.next())*10)/10,o=Math.round((34+14*r.next())*10)/10;return{resourceId:t,hour:i,samples:0===a?Math.max(1,Math.floor((n.getTime()-i.getTime())/(5*m.E))):12,cpuSamples:0===a?1:11,cpuAvg:s,cpuMax:Math.round(10*Math.min(70,s*(1.4+r.next())))/10,memAvg:o,memMax:Math.round(10*Math.min(85,o+6*r.next()))/10,diskPct:9.8,connUsed:r.int(8,22),connMax:60}}),d={cpuPct:o[0].cpuAvg,memPct:o[0].memAvg,diskPct:9.8,connUsed:o[0].connUsed,connMax:60,at:s.toISOString(),prev:null,recent:Array.from({length:6},(e,t)=>({at:(0,m.$)(s,(5-t)*5*m.E).toISOString(),cpu:Math.round((6+18*r.next())*10)/10}))};await a.insert(M.A).values({resourceId:t,keyCiphertext:z,keyIv:z,latest:d,lastTryAt:s,lastOkAt:s,createdAt:(0,m.$)(n,21*m.h),updatedAt:s}),await a.insert(M.l).values(o.filter(e=>e.hour.getTime()<=n.getTime()))}var U=e.i(728335),F=e.i(108935);let H=7*m.h;async function L(e,t,i,n,r,s){let{db:o,seed:c,now:u}=e,g=(0,h.k)(c,"events"),f=[],w=(e,t)=>f.push({id:(0,h.T)(c,"event",e),count:1,...t});for(let e of(0,l.f)(await o.execute(d.sql`select external_id, resource_id, state, branch, commit_sha, building_at, ready_at, created_at_provider from ops.deployments
2
- where created_at_provider > ${new Date(u.getTime()-H).toISOString()}::timestamptz`))){let t=`${e.branch??"unknown branch"} \xb7 ${e.commit_sha?e.commit_sha.slice(0,7):"no commit"}`,a=new Date(e.created_at_provider),i=e.building_at?new Date(e.building_at):a;w(`${e.external_id}:start`,{at:i,resourceId:e.resource_id,type:"deployment",kind:"build",message:"Deployment started",detail:t,reason:"DeployStarted"}),"ready"===e.state&&e.ready_at&&w(`${e.external_id}:ready`,{at:new Date(e.ready_at),resourceId:e.resource_id,type:"deployment",kind:"ok",message:"Deployment ready",detail:t,reason:"DeployReady"}),"error"===e.state&&w(`${e.external_id}:failed`,{at:new Date(i.getTime()+1e3*g.int(40,110)),resourceId:e.resource_id,type:"deployment",kind:"fail",message:"Deployment failed",detail:t,reason:"DeployFailed"})}let A=i.outage,y=i.monitors.find(e=>e.id===A.monitorId),k=(e,t,a,i,n,r,s)=>w(e,{at:t,resourceId:a,type:"monitor",kind:i,message:n,detail:r,reason:s});k("outage:warn",A.startedAt,A.appId,"warn","Monitor degraded","HTTP 503","MonitorDegraded"),k("outage:err",new Date(A.startedAt.getTime()+10*m.E),A.appId,"err","Monitor down","HTTP 503 on 3 checks in a row","MonitorDown"),k("outage:ok",A.recoveredAt,A.appId,"ok","Monitor recovered",`${y.path} answers again`,"MonitorRecovered"),i.degraded&&k("degraded:warn",i.degraded.since,i.degraded.appId,"warn","Monitor degraded","No answer within 5 s","MonitorDegraded");let I=r.certSoon,v=r.zoneSoon,_=new Date(I.notAfter.getTime()-14*m.h+g.int(5,50)*m.E),$=new Date(v.expiresAt.getTime()-30*m.h+g.int(5,50)*m.E);w("net:cert",{at:_,resourceId:I.id,type:"system",kind:"warn",message:`${I.name} needs attention`,detail:"Certificate expires in 13 days",reason:"NetworkAttention"}),w("net:zone",{at:$,resourceId:v.id,type:"system",kind:"warn",message:`${v.name} needs attention`,detail:"Domain expires in 29 days",reason:"NetworkAttention"});let b=new Date(u);b.setUTCHours(20,0,0,0),b.getTime()>u.getTime()-5*m.E&&b.setTime(b.getTime()-m.h);for(let e=0;e<7;e++){let t=new Date(b.getTime()-e*m.h+1e3*g.int(20,90));w(`daily:${e}`,{at:t,resourceId:null,type:"system",kind:"ok",message:"Daily jobs finished",detail:"Rollups, retention, certificates and domain expiry",reason:"DailyFinished"})}let S=(0,F.demoUserId)(c),T=(e,t,a,i,n=null)=>w(`action:${e}`,{at:(0,m.$)(u,t*m.h+g.int(1,10)*m.w+g.int(0,59)*m.E),resourceId:i,type:"action",kind:"ok",message:a,detail:n,actorUserId:S,reason:"Action"}),x=i.monitors.find(e=>"/api/health"===e.path)??i.monitors[0],D=t.apps[0],E=n.dbs.find(e=>"supabase_project"===e.kind);T("monitor-added",6,`Monitor added: ${(0,p.F)(x.url)}`,x.appId),T("db-link",5,`Database link: ${D.name} → ${E.name}`,D.id),T("keep-active",5,`Keep active on: ${E.name}`,E.id),T("rule",4,"Alert rule edited: HighLatency",null,"threshold 1,500 ms"),T("maintenance",3,"Maintenance window added",null,`Sundays 02:00 ${(0,U.zoneName)()}, 30 min`),T("check-now",1,`Check now: ${(0,p.F)(y.url)}`,y.appId);let M=s.resolved.credential;w("action:credential",{at:new Date(M.resolvedAt.getTime()-g.int(2,9)*m.E),resourceId:null,type:"action",kind:"ok",message:`Credential replaced: ${M.title}`,detail:"Tested and stored; it no longer expires soon",actorUserId:S,reason:"Action"}),w("action:auto-recheck",{at:new Date(A.startedAt.getTime()+11*m.E+3e3),resourceId:y.appId,type:"action",kind:"err",message:`Auto-actions: Check now: ${(0,p.F)(y.url)}`,detail:null,actorUserId:null,reason:"Action"}),await o.insert(a.events).values(f.sort((e,t)=>e.at.getTime()-t.at.getTime()))}let B="76.76.21.21";async function q(e,t,i){let{db:n,seed:r,now:s}=e,o=(0,h.k)(r,"network"),d=e=>(0,m.$)(s,o.int(10,60*e)*m.E).toISOString(),l=i.cloudflare,c=o.shuffle(T).slice(0,2).map((e,t)=>({id:(0,h.T)(r,"zone",e),name:y(e),expiresAt:new Date(1===t?s.getTime()+o.int(12,24)*m.h+o.int(1,20)*m.w:s.getTime()+o.int(200,600)*m.h)})),p=e=>e.split("-").slice(1).join("-")||e,g=t.apps,f=[{name:c[0].name,app:g[0]},...[0,1,2].map(e=>({name:`${p(g[e].name)}.${c[0].name}`,app:g[e]})),...[3,4].map(e=>({name:`${p(g[e%g.length].name)}.${c[1].name}`,app:g[e%g.length]}))],w=o.int(1,3),A=f.map((e,t)=>({id:(0,h.T)(r,"domain",e.name),name:e.name,appId:e.app.id,notAfter:new Date(t===w?s.getTime()+o.int(4,9)*m.h+o.int(1,20)*m.w:s.getTime()+o.int(30,85)*m.h)})),k=(e,t,a,i,n,s=null)=>({id:(0,h.p)(32,r,"dns",e,t,a),type:t,name:a,content:i,proxied:n,ttl:n?1:300,comment:s}),I=c.map(e=>{let t=[...A.filter(t=>t.name===e.name||t.name.endsWith(`.${e.name}`)).map(t=>k(e.name,"A",t.name,B,!1,"Vercel")),k(e.name,"MX",e.name,y("mx1.mail"),!1),k(e.name,"TXT",e.name,`v=spf1 include:_spf.${y("mail")} ~all`,!1),k(e.name,"A",`legacy.${e.name}`,`192.0.2.${o.int(10,200)}`,!0,"Old server, kept for redirects")],a={expiresAt:e.expiresAt.toISOString(),registrar:"Example Registrar, Inc.",error:null,checkedAt:d(20)},i={status:"active",paused:!1,nameServers:[y("ada.ns"),y("bob.ns")],accountId:l.cfAccountId,checkedAt:d(1)},n=(0,u.G)({status:i.status,paused:i.paused,rdap:a},s),r={zone:i,ssl:{mode:"strict",error:null},records:t,recordsTruncated:!1,cfErrors:[],certs:[{type:"universal",status:"active",hosts:[e.name,`*.${e.name}`],expiresOn:new Date(s.getTime()+o.int(40,80)*m.h).toISOString()}],rdap:a,reasons:n.reasons};return{z:e,records:t,rdap:a,state:n.state,data:r}}),v=(0,m.$)(s,o.int(150,380)*m.h),_=(0,m.$)(s,o.int(5,50)*m.E);await n.insert(a.resources).values(c.map(e=>({id:e.id,accountId:l.accountId,kind:"zone",externalId:(0,h.p)(32,r,"zone-id",e.name),name:e.name,monitored:!0,meta:{status:"active",accountId:l.cfAccountId,accountName:l.label},firstSeenAt:v,lastSeenAt:_,createdAt:v,updatedAt:_}))),await n.insert(a.resources).values(A.map(e=>{let a=g.find(t=>t.id===e.appId);return{id:e.id,accountId:t.accountId,kind:"domain",externalId:e.name,name:e.name,parentId:e.appId,monitored:!0,meta:{redirect:null,verified:!0,projectId:a.externalId},firstSeenAt:v,lastSeenAt:_,createdAt:v,updatedAt:_}}));let $=["Let's Encrypt","Google Trust Services"];await n.insert(a.snapshots).values([...I.map(e=>({resourceId:e.z.id,state:e.state,stateSince:"ok"===e.state?v:new Date(e.z.expiresAt.getTime()-30*m.h),data:e.data,collectedAt:_})),...A.map(e=>{let t=I.find(t=>e.name===t.z.name||e.name.endsWith(`.${t.z.name}`)),a={notAfter:e.notAfter.toISOString(),issuer:o.pick($),authorized:!0,error:null,checkedAt:d(19)},i={misconfigured:!1,configuredBy:"A",recommendedIps:[B],checkedAt:d(6)},n=(0,u.k)({host:e.name,tls:a,vercel:i,records:(0,u.Q)(e.name,t.records),zoneRdap:t.rdap},s),r="ok"===n.state?v:new Date(Math.min(e.notAfter.getTime()-14*m.h,t.z.expiresAt.getTime()-30*m.h));return{resourceId:e.id,state:n.state,stateSince:r,data:{tls:a,vercel:i,reasons:n.reasons},collectedAt:_}})]);let b=I[0].records.find(e=>"A"===e.type&&e.name===c[0].name&&e.content===B);return{zones:c,domains:A,certSoon:A[w],zoneSoon:c[1],vercelRecord:{id:b.id,name:b.name,zoneId:c[0].id}}}let K=["vercel","supabase","neon","cloudflare","firebase","gcp"];async function V(e,t){let{db:i,seed:n,now:r}=e,s=(0,h.k)(n,"logs"),o=(0,l.f)(await i.execute(d.sql`select resource_id, external_id from ops.deployments where is_current`)),c=s.shuffle(t.apps).slice(0,3).flatMap((e,t)=>Array.from({length:s.int(4,8)},(a,i)=>{let d=s.pick(x);return{id:(0,h.T)(n,"log",e.name,i),resourceId:e.id,deploymentId:o.find(t=>t.resource_id===e.id)?.external_id??`dpl_${(0,h.g)(24,n,"log-dpl",t)}`,rowId:`${(0,h.g)(10,n,"log-row",e.name,i).toLowerCase()}-${i}`,at:(0,m.$)(r,s.int(3,2760)*m.E+1e3*s.int(0,59)),level:d.level,message:d.message,requestMethod:d.method,requestPath:d.path,statusCode:d.status,source:"serverless"}}));await i.insert(a.storedLogs).values(c)}async function W(e){let{db:t,seed:i,now:n}=e,r=(0,h.k)(i,"provider-status"),s=(0,m.$)(n,r.int(1,4)*m.E);await t.insert(a.providerStatus).values(K.map(e=>"cloudflare"===e?{provider:e,state:"info",indicator:"maintenance",description:"Scheduled maintenance",checkedAt:s,lastOkAt:s,error:null,incidents:[{name:"Scheduled maintenance in one Asia-Pacific data center",impact:"maintenance",startedAt:(0,m.$)(n,r.int(1,3)*m.w).toISOString(),url:null}]}:{provider:e,state:"ok",indicator:"none",description:"All Systems Operational",incidents:[],checkedAt:s,lastOkAt:s,error:null}))}async function G(e){let{db:t,seed:a,now:i}=e,n=(0,h.k)(a,"ai-usage"),r=(0,h.T)(a,"ai-agent","console"),s=n.int(70,140),o=[],l=[],c=[],u=[],p=[],g=[];for(let e=0;e<s;e++){o.push(i.getTime()-n.int(2,10080)*m.E);let e=n.chance(.04);p.push(e?429:200),l.push(e?0:n.int(600,4200)),c.push(e?0:n.int(80,700)),u.push(e?n.int(80,300):n.int(700,4800)),g.push(n.int(1,2))}let f=e=>e.reduce((e,t)=>e+t,0),w=new Date(Math.max(...o));await t.execute(d.sql`
1
+ module.exports=[907897,e=>{"use strict";var t=e.i(519137),a=e.i(530298),n=e.i(109709);let i="The demo is busy right now. Try again in a minute.",r="Too many new demo sessions from your network. Try again in a few minutes.",s=new Map([...new Map([["watchbell-demo-busy",i],["watchbell-demo-too-many",r]])].map(([e,t])=>[t,e]));function o(e){return Object.assign(Error(e),{digest:s.get(e)})}var d=e.i(533102),l=e.i(200123),c=e.i(516506),u=e.i(292178),p=e.i(412948),m=e.i(739817),h=e.i(431829);let g=(e,t)=>`${e} ${t}${1===e?"":"s"}`;async function f(e,t,n,i,r){let s,o,f,w,A,y,k,{db:I,seed:v,now:_}=e,$=(0,h.k)(v,"alerts"),b=(...e)=>(0,h.T)(v,"alert",...e),S=e=>t.apps.find(t=>t.id===e)?.name??"app",T=(0,l.f)(await I.execute(d.sql`select resource_id, external_id, state, target, commit_sha, created_at_provider, is_current, is_previous_production from ops.deployments`)),x=T.find(e=>"error"===e.state&&"production"===e.target),D={appId:x.resource_id,appName:S(x.resource_id),sha:x.commit_sha.slice(0,7),createdAt:new Date(x.created_at_provider),currentExternalId:T.find(e=>e.resource_id===x.resource_id&&e.is_current)?.external_id??null},M=(e,t,a)=>{let n=a.resolvedAt??null;return{ruleKey:e,subject:t,severity:c._[e].severity,resourceId:null,accountId:null,okStreak:2*!!n,lastSeenAt:n??(0,m.$)(_,1e3*$.int(5,55)),lastSampleAt:null,notifiedOpen:"info"!==c._[e].severity,lastNotifiedAt:n??new Date(a.startedAt.getTime()+m.E),pending:null,pendingSince:null,...a}},E=r.certSoon,O=(0,u.g)(E.notAfter,_)??0,C=r.zoneSoon,P=(0,u.g)(C.expiresAt,_)??0,z=[M("DeploymentFailed",D.appId,{id:b("firing","deploy"),resourceId:D.appId,title:D.appName,message:`Production deployment ${D.sha} failed.`,startedAt:new Date(D.createdAt.getTime()+1e3*$.int(60,150))}),M("CertExpiringSoon",E.id,{id:b("firing","cert"),resourceId:E.id,title:E.name,message:`The TLS certificate of ${E.name} expires in ${g(O,"day")}.`,startedAt:new Date(E.notAfter.getTime()-14*m.h+$.int(5,55)*m.E)}),M("DomainExpiringSoon",C.id,{id:b("firing","zone"),resourceId:C.id,title:C.name,message:`${C.name} expires in ${g(P,"day")}.`,startedAt:new Date(C.expiresAt.getTime()-30*m.h+$.int(5,55)*m.E)})],R=n.outage,j=n.monitors.find(e=>e.id===R.monitorId),B=t.apps.find(e=>e.id!==D.appId)??t.apps[0],N=e=>i.dbs.find(t=>t.kind===e),U=(e,t)=>(0,m.$)(_,e*m.h+t*m.w+$.int(0,50)*m.E),F=(e,t)=>new Date(e.getTime()+t*m.E),H=(e,t)=>{let a=n.monitors.find(e=>e.id===t.monitorId);return M("HighLatency",a.id,{id:b("resolved",e),resourceId:a.appId,title:`${S(a.appId)} ${a.path}`,message:`p95 ${t.p95.toLocaleString("en-US")} ms over the last 10 minutes (limit 1,500 ms).`,startedAt:t.firedAt,resolvedAt:t.resolvedAt})},L={start:U(4,$.int(1,9)),sha:(0,h.p)(7,v,"old-failed",B.name)},q=N("upstash_redis"),K=N("firestore"),V=N("supabase_project"),W=i.cloudflare.label,G={outage:M("MonitorDown",j.id,{id:b("resolved","outage"),resourceId:j.appId,title:`${S(j.appId)} ${j.path}`,message:`${(0,p.F)(j.url)} returned HTTP 503 on 3 consecutive checks.`,startedAt:new Date(R.startedAt.getTime()+10*m.E),resolvedAt:R.recoveredAt}),latencyA:H("latency-a",n.slow[0]),latencyB:H("latency-b",n.slow[1]),oldDeploy:M("DeploymentFailed",B.id,{id:b("resolved","old-deploy"),resourceId:B.id,title:B.name,message:`Production deployment ${L.sha} failed.`,startedAt:L.start,resolvedAt:F(L.start,$.int(35,70))}),collector:(s=U(6,$.int(1,10)),M("CollectorStale","collector",{id:b("resolved","collector"),title:"collector",message:"The last minute run finished 6 min ago.",startedAt:s,resolvedAt:F(s,$.int(4,9))})),autoPause:(o=U(6,$.int(12,20)),M("AutoPauseRisk",V.id,{id:b("resolved","auto-pause"),resourceId:V.id,title:V.name,message:"No API traffic for 4 days. Supabase pauses free projects after about 7 days.",startedAt:o,resolvedAt:F(o,60*$.int(20,30))})),quota:(f=U(6,$.int(1,8)),M("DbQuotaHigh",q.id,{id:b("resolved","db-quota"),resourceId:q.id,title:q.name,message:`${q.name}: Commands at ${$.int(81,88)}% of the free plan.`,startedAt:f,resolvedAt:F(f,60*$.int(3,6))})),firestore:(w=U(3,$.int(1,6)),M("FirestoreQuotaHigh",K.id,{id:b("resolved","firestore"),resourceId:K.id,title:K.name,message:`${K.name} read ${$.int(40500,46e3).toLocaleString("en-US")} of 50,000 documents today (${$.int(81,92)}%).`,startedAt:w,resolvedAt:F(w,60*$.int(2,5))})),proxied:(A=U(5,$.int(12,20)),M("DnsProxiedToVercel",(y=r.vercelRecord).id,{id:b("resolved","proxied"),resourceId:y.zoneId,title:y.name,message:`${y.name} points to Vercel through the Cloudflare proxy. Vercel recommends DNS only.`,startedAt:A,resolvedAt:F(A,24*$.int(2,4)*60)})),credential:(k=U(6,$.int(14,22)),M("CredentialExpiring",i.cloudflare.accountId,{id:b("resolved","credential"),accountId:i.cloudflare.accountId,title:`cloudflare \xb7 ${W}`,message:`The cloudflare credential ${W} expires in 9 days.`,startedAt:k,resolvedAt:F(k,24*$.int(1,2)*60+$.int(10,300))}))};return await I.insert(a.alerts).values([...z,...Object.values(G)]),{firing:{deploy:z[0].id,cert:z[1].id,zone:z[2].id},resolved:{outage:G.outage.id,oldDeploy:{id:G.oldDeploy.id,appId:B.id,appName:B.name,previousExternalId:T.find(e=>e.resource_id===B.id&&e.is_previous_production)?.external_id??null,startedAt:G.oldDeploy.startedAt,resolvedAt:G.oldDeploy.resolvedAt},credential:{title:G.credential.title,resolvedAt:G.credential.resolvedAt}},failedDeploy:D}}var w=e.i(27479),A=e.i(816173);let y=e=>`${e}.example`,k=["acme-shop","orbit-blog","nimbus-docs","pixel-forge","harbor-api","lumen-portal","quartz-admin","tidal-landing","ember-status","cobalt-store","willow-wiki","atlas-dash","sprout-crm","comet-links","fable-notes","maple-events"],I=[{name:"Juniper Labs",slug:"juniper-labs"},{name:"Kestrel Works",slug:"kestrel-works"},{name:"Brightfield Studio",slug:"brightfield-studio"},{name:"Saltmarsh Digital",slug:"saltmarsh-digital"}],v=["nextjs","nextjs","nextjs","vite","astro","sveltekit","remix"],_=["sin1","iad1","fra1","hnd1","sfo1"],$=["feat/checkout-v2","feat/dark-mode","fix/login-redirect","feat/search","chore/deps","fix/image-sizes","feat/newsletter","fix/cache-headers"],b=["Fix cart total rounding","Add dark mode toggle","Update dependencies","Speed up the product grid","Fix login redirect loop","Add sitemap","Tidy the footer links","Cache the pricing page","Add newsletter signup","Fix image sizes on mobile","Bump Next.js","Add search to the docs","Handle empty states","Retry failed webhooks","Move env checks to startup","Shorten the onboarding copy","Add health endpoint","Fix timezone in the event list","Split the dashboard bundle","Add RSS feed"],S={supabase_project:["shop-prod","portal-main","crm-core","store-db"],neon_project:["analytics","reporting","billing-ledger","metrics-pg"],firestore:["notes-app","mobile-sync","feedback-inbox","event-chat"],turso_database:["edge-cache","geo-lookup","docs-search","flags"],upstash_redis:["sessions","rate-limits","queue-cache","page-cache"],d1_database:["events-log","link-clicks","form-entries","audit-trail"]},T=["acme-studio","orbit-labs","nimbus-works","pixel-harbor","tidal-digital","ember-co"],x=[{level:"error",method:"POST",path:"/api/checkout",status:500,message:"TypeError: Cannot read properties of undefined (reading 'price')"},{level:"warning",method:"GET",path:"/products",status:200,message:"Slow query: products list took 1840 ms"},{level:"error",method:"GET",path:"/api/search",status:504,message:"Task timed out after 10.02 seconds"},{level:"warning",method:"GET",path:"/",status:200,message:"Image optimization fell back to the original file (unsupported format)"},{level:"error",method:"POST",path:"/api/webhooks/payments",status:401,message:"Webhook signature didn't match"},{level:"fatal",method:"GET",path:"/api/report",status:500,message:"Error: connect ECONNREFUSED (database connection pool exhausted)"},{level:"warning",method:"GET",path:"/blog/[slug]",status:404,message:'Post not found for slug "spring-sale-2025"'},{level:"error",method:"PUT",path:"/api/profile",status:422,message:"ZodError: email must be a valid email"}];async function D(e){let{db:t,seed:n,now:i}=e,r=(0,h.k)(n,"apps"),s=r.pick(I),o={id:`team_${(0,h.g)(24,n,"team")}`,name:s.name,slug:s.slug},d=(0,h.T)(n,"account","vercel"),l=(0,m.$)(i,r.int(120,300)*m.h),c=(0,m.$)(i,r.int(3,50)*m.E);await t.insert(a.accounts).values({id:d,provider:"vercel",label:o.name,credentialCiphertext:"demo",credentialIv:"demo",credentialKind:"Access token",status:"ok",lastTestAt:c,lastSyncAt:c,createdAt:l,updatedAt:c});let u=r.shuffle(k).slice(0,r.int(5,8)).sort().map((e,t)=>({id:(0,h.T)(n,"app",e),index:t,name:e,externalId:`prj_${(0,h.g)(28,n,"project",e)}`,host:y(e),createdAt:(0,m.$)(i,r.int(95,400)*m.h-r.int(0,23)*m.w)}));return await t.insert(a.resources).values(u.map(e=>({id:e.id,accountId:d,kind:"app",externalId:e.externalId,name:e.name,monitored:!0,firstSeenAt:e.createdAt,lastSeenAt:c,createdAt:e.createdAt,updatedAt:c,meta:{teamId:o.id,teamSlug:o.slug,teamName:o.name,framework:r.pick(v),productionBranch:"main",createdAt:e.createdAt.toISOString(),repo:`example-org/${e.name}`,repoType:"github",functionRegions:[r.pick(_)]}}))),await t.insert(a.deployments).values(function(e,t){let{seed:a,now:n}=e,i=(0,h.k)(a,"deployments"),r=i.pick(t).id,s=i.pick(t).id,o=[];for(let e of t){let t=(t,r,s,d,l)=>{let c=(0,m.$)(n,s),u=new Date(c.getTime()+1e3*i.int(3,12)),p="ready"===d?new Date(u.getTime()+1e3*i.int(25,160)):null,g="production"===r?"main":i.pick($);o.push({id:(0,h.T)(a,"deployment",e.name,t),resourceId:e.id,externalId:`dpl_${(0,h.g)(24,a,"deployment",e.name,t)}`,state:d,target:r,branch:g,commitSha:(0,h.p)(40,a,"commit",e.name,t),commitMessage:l??i.pick(b),source:"git",url:y(`${e.name}-git-${g.replace(/[^a-z0-9]+/g,"-")}-${(0,h.g)(9,a,"deployment-url",e.name,t).toLowerCase()}`),buildingAt:u,readyAt:p,createdAtProvider:c,isCurrent:!1,isPreviousProduction:!1,createdAt:c,updatedAt:p??u})},d=e.id===r,l=i.int(2,5);for(let e=0;e<l;e++){let a=0===e?Math.max(d?5*m.w:0,i.int(1,96)*m.w-i.int(0,40)*m.E):i.int(4+4*e,6+6*e)*m.h+i.int(0,23)*m.w;t(e,"production",a,"ready")}let c=i.int(0,3);for(let e=0;e<c;e++)t(10+e,"preview",i.int(2,240)*m.w+i.int(0,59)*m.E,"ready");d&&t(20,"production",i.int(30,240)*m.E,"error","Refactor the checkout form"),e.id===s&&t(21,"preview",i.int(1,6)*m.E,"building")}for(let e of t){let t=o.filter(t=>t.resourceId===e.id&&"production"===t.target&&"ready"===t.state).map(e=>({id:e.externalId,createdAt:e.createdAtProvider})),{currentId:a,previousId:n}=(0,w.a)(t,null);for(let t of o)t.resourceId===e.id&&(t.isCurrent=t.externalId===a,t.isPreviousProduction=t.externalId===n)}return o}(e,u)),{accountId:d,team:o,apps:u}}async function M(e,t,n){let{db:i,seed:r,now:s}=e,o=(0,h.k)(r,"snapshots"),d=(0,m.$)(s,1e3*o.int(5,40));await i.insert(a.snapshots).values(t.apps.map(e=>{var t,a;let i,r,l,c,u,p=n.filter(t=>t.appId===e.id),h=(0,A.V)({monitors:p.map(e=>e.state),building:!1,dbPaused:!1}),g=p.find(e=>"err"===e.state)??p.find(e=>"warn"===e.state),f=g?.stateSince??new Date(Math.max(...p.map(e=>e.stateSince.getTime())));return{resourceId:e.id,state:h,stateSince:f,collectedAt:d,data:{code:g?.lastStatus??null,latencyMs:p[0]?.lastLatencyMs??null,dbPaused:!1,pageviews:(t=o,a=s,r=Math.floor((i=(0,m.$)(a,t.int(2,25)*m.E)).getTime()/m.w)*m.w,l=t.int(20,400),{enabled:!0,total24h:u=(c=Array.from({length:24},(e,a)=>{let n=r-(23-a)*m.w,i=.15+.85*Math.max(0,Math.sin(((new Date(n).getUTCHours()+7)%24-6)/24*2*Math.PI));return[new Date(n).toISOString(),Math.round(l*i*(.7+.6*t.next()))]})).reduce((e,[,t])=>e+t,0),visitors24h:Math.round(u*(.3+.2*t.next())),hourly:c,readAt:i.toISOString()})}}}))}var E=e.i(295017),O=e.i(887103),C=e.i(516464),P=e.i(725321);let z="demo",R={supabase:"Access token",neon:"API key",firebase:"Service account",turso:"Platform API token",upstash:"Developer API key",cloudflare:"API token"};async function j(e,t){let{db:n,seed:i,now:r}=e,s=(0,h.k)(i,"databases"),o=t.team,d=e=>(0,h.T)(i,"account",e),l=(0,m.$)(r,s.int(4,40)*m.E);await n.insert(a.accounts).values(["supabase","neon","firebase","turso","upstash","cloudflare"].map(e=>{let t=(0,m.$)(r,s.int(60,280)*m.h);return{id:d(e),provider:e,label:"firebase"===e?`${o.slug}-firebase`:o.name,credentialCiphertext:z,credentialIv:z,credentialKind:R[e],status:"ok",lastTestAt:l,lastSyncAt:l,createdAt:t,updatedAt:l}}));let c=(0,h.p)(32,i,"cloudflare-account"),u=[{kind:"supabase_project",provider:"supabase",externalId:(0,h.g)(20,i,"supabase-ref").toLowerCase().replace(/[0-9]/g,"x")},{kind:"neon_project",provider:"neon",externalId:`${s.pick(["silent","quiet","misty","bold","calm"])}-${s.pick(["river","meadow","forest","harbor","dune"])}-${(0,h.p)(8,i,"neon-id")}`},{kind:"firestore",provider:"firebase",externalId:`${o.slug.split("-")[0]}-notes-${(0,h.p)(5,i,"firebase-id")}`},{kind:"turso_database",provider:"turso",externalId:(0,h.T)(i,"turso-db")},{kind:"upstash_redis",provider:"upstash",externalId:(0,h.T)(i,"upstash-db")},{kind:"d1_database",provider:"cloudflare",externalId:(0,h.T)(i,"d1-db")}].map(({kind:e,provider:t,externalId:a})=>{let n=s.pick(S[e]),l=(0,m.$)(r,s.int(40,300)*m.h),u="supabase_project"===e?{orgSlug:o.slug,region:"ap-southeast-1",pgVersion:"17.4.1.054",createdAt:l.toISOString(),status:"ACTIVE_HEALTHY"}:"neon_project"===e?{orgId:`org-${(0,h.p)(8,i,"neon-org")}`,region:"aws-ap-southeast-1",pgVersion:17,createdAt:l.toISOString()}:"firestore"===e?{projectId:a}:"turso_database"===e?{org:o.slug,group:"default",region:"sin"}:"upstash_redis"===e?{region:"ap-southeast-1",type:"free"}:{accountId:c,createdAt:l.toISOString()};return{id:(0,h.T)(i,"db",e),kind:e,name:n,externalId:a,accountId:d(t),meta:u,createdAt:l}});await n.insert(a.resources).values(u.map(e=>({id:e.id,accountId:e.accountId,kind:e.kind,externalId:e.externalId,name:e.name,monitored:!0,meta:e.meta,firstSeenAt:e.createdAt,lastSeenAt:l,createdAt:e.createdAt,updatedAt:l})));let p=e=>u.find(t=>t.kind===e),g=e=>(0,m.$)(r,e*m.E+1e3*s.int(0,50)),f=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),1)),w=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth()+1,1)),A=(r.getTime()-f.getTime())/(w.getTime()-f.getTime()),y=[{id:`ep-${(0,h.g)(12,i,"neon-ep").toLowerCase()}`,branchId:`br-${(0,h.g)(12,i,"neon-br-main").toLowerCase()}`,state:"idle",pendingState:null,disabled:!1,minCu:.25,maxCu:2,lastActive:(0,m.$)(r,s.int(20,300)*m.E).toISOString()}],k=Math.round((8+50*A+s.int(0,10))*3600),I=(0,C.p)({endpoints:y,computeSeconds:k}),v=[{id:p("supabase_project").id,state:"ok",since:(0,m.$)(r,s.int(20,90)*m.h),at:g(1),data:{status:"ACTIVE_HEALTHY",region:"ap-southeast-1",pgVersion:"17.4.1.054",orgSlug:o.slug,freeOrg:!0,lastTrafficAt:(0,m.$)(r,s.int(3,50)*m.E).toISOString(),trafficAt:(0,m.$)(r,s.int(1,4)*m.E).toISOString(),health:[{name:"db",status:"ACTIVE_HEALTHY"},{name:"auth",status:"ACTIVE_HEALTHY"},{name:"rest",status:"ACTIVE_HEALTHY"},{name:"storage",status:"ACTIVE_HEALTHY"}],healthAt:(0,m.$)(r,s.int(1,4)*m.E).toISOString(),sizeBytes:1048576*s.int(38,140)+s.int(0,1048576),sizeAt:(0,m.$)(r,s.int(4,20)*m.w).toISOString(),lastGoodState:"ok"}},{id:p("neon_project").id,state:"ok"===I.state?"ok":"idle",since:(0,m.$)(r,s.int(20,300)*m.E),at:g(s.int(2,9)),data:{region:"aws-ap-southeast-1",pgVersion:17,orgId:p("neon_project").meta.orgId,computeSeconds:k,transferBytes:Math.round((.2+1.6*A)*0x40000000),periodStart:f.toISOString(),periodEnd:w.toISOString(),activeSeconds:Math.round(k/1.4),endpoints:y,branches:[{id:y[0].branchId,name:"main",isDefault:!0,logicalSize:1048576*s.int(120,380)},{id:`br-${(0,h.g)(12,i,"neon-br-preview").toLowerCase()}`,name:"preview/reporting",isDefault:!1,logicalSize:1048576*s.int(60,160)}],lastGoodState:"ok"===I.state?"ok":"idle"}},{id:p("firestore").id,state:"ok",since:(0,m.$)(r,s.int(10,60)*m.h),at:g(1),data:{displayName:p("firestore").name,latencyMs:s.int(70,190),reads:s.int(4e3,22e3),writes:s.int(800,6e3),deletes:s.int(20,400),opsAt:(0,m.$)(r,s.int(10,50)*m.E).toISOString(),authUsers:s.int(80,2400),authAt:(0,m.$)(r,s.int(2,20)*m.w).toISOString(),lastGoodState:"ok"}},{id:p("turso_database").id,state:"ok",since:(0,m.$)(r,s.int(10,60)*m.h),at:g(s.int(5,50)),data:{org:o.slug,group:"default",primaryRegion:"sin",plan:"free",blockReads:!1,blockWrites:!1,rowsRead:Math.round((20+140*A)*1e6),rowsWritten:Math.round((.2+2.2*A)*1e6),storageBytes:1048576*s.int(40,600),orgRowsRead:Math.round((25+160*A)*1e6),orgRowsWritten:Math.round((.3+2.6*A)*1e6),orgStorageBytes:1048576*s.int(700,1400),orgDatabases:3,usageAt:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),lastGoodState:"ok"}},{id:p("upstash_redis").id,state:"ok",since:(0,m.$)(r,s.int(10,60)*m.h),at:g(s.int(5,50)),data:{region:"ap-southeast-1",status:"active",type:"free",dailyCommands:s.int(2e3,9e3),monthlyRequests:Math.round((20+180*A)*1e3)+s.int(0,999),storageBytes:1048576*s.int(6,90),monthlyBandwidthBytes:Math.round((.1+2.4*A)*0x40000000),statsAt:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),lastGoodState:"ok"}},{id:p("d1_database").id,state:"ok",since:(0,m.$)(r,s.int(10,60)*m.h),at:g(s.int(5,50)),data:{accountId:c,createdAt:p("d1_database").createdAt.toISOString(),sizeBytes:1048576*s.int(4,120),numTables:s.int(4,12),readReplication:"disabled",detailsAt:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),rowsRead:s.int(4e4,9e5),rowsWritten:s.int(1e3,3e4),readQueries:s.int(4e3,6e4),writeQueries:s.int(300,6e3),accountRowsRead:s.int(9e5,18e5),accountRowsWritten:s.int(3e4,55e3),accountSizeBytes:1048576*s.int(200,900),accountDatabases:2,usageDay:r.toISOString().slice(0,10),usageAt:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),lastGoodState:"ok"}}];await n.insert(a.snapshots).values(v.map(e=>({resourceId:e.id,state:e.state,stateSince:e.since,collectedAt:e.at,data:e.data}))),await n.insert(a.settings).values({key:P.f,value:{[d("cloudflare")]:{d1:"ok",analytics:"ok",at:(0,m.$)(r,s.int(5,50)*m.E).toISOString(),note:null}},createdAt:(0,m.$)(r,30*m.h),updatedAt:r});let _=["supabase_project","neon_project","turso_database","upstash_redis","firestore","d1_database","supabase_project","neon_project"],$=t.apps.slice(0,Math.max(4,t.apps.length-1));return await n.insert(a.links).values($.map((e,t)=>({id:(0,h.T)(i,"link",e.name),fromResourceId:e.id,toResourceId:p(_[t]).id,kind:"uses_db",source:"manual",createdAt:(0,m.$)(r,s.int(20,90)*m.h),updatedAt:(0,m.$)(r,s.int(1,19)*m.h)}))),await B(e,p("supabase_project").id),await n.insert(a.keepActive).values({resourceId:p("supabase_project").id,keep:!0,autoRestore:!1,lastKeepAliveAt:(0,m.$)(r,s.int(2,20)*m.w),updatedAt:(0,m.$)(r,12*m.h)}),{dbs:u.map(({id:e,kind:t,name:a,externalId:n,accountId:i})=>({id:e,kind:t,name:a,externalId:n,accountId:i})),cloudflare:{accountId:d("cloudflare"),cfAccountId:c,label:o.name}}}async function B(e,t){let{db:a,seed:n,now:i}=e,r=(0,h.k)(n,"compute"),s=(0,m.$)(i,r.int(1,4)*m.E),o=Array.from({length:24},(e,a)=>{let n=new Date((0,O.b)(i).getTime()-a*m.w),s=Math.round((6+18*r.next())*10)/10,o=Math.round((34+14*r.next())*10)/10,d=Math.round((58+14*r.next())*10)/10;return{resourceId:t,hour:n,samples:0===a?Math.max(1,Math.floor((i.getTime()-n.getTime())/(5*m.E))):12,cpuSamples:0===a?1:11,cpuAvg:s,cpuMax:Math.round(10*Math.min(70,s*(1.4+r.next())))/10,memAvg:o,memMax:Math.round(10*Math.min(85,o+6*r.next()))/10,diskPct:9.8,connUsed:r.int(8,22),connMax:60,memTotalB:0x40000000,memUsedB:Math.round(0x40000000*o/100),memCacheB:Math.round(0x40000000*(.28+.06*r.next())),swapB:Math.round((60+50*r.next())*1048576),commitPct:d,commitMax:Math.round(10*Math.min(84,d+5*r.next()))/10}}),d={cpuPct:o[0].cpuAvg,memPct:o[0].memAvg,diskPct:9.8,connUsed:o[0].connUsed,connMax:60,at:s.toISOString(),prev:null,mem:{totalB:0x40000000,usedB:o[0].memUsedB,cacheB:o[0].memCacheB,swapB:o[0].swapB},commit:{usedB:Math.round(1503238553.6*o[0].commitPct/100),limitB:0x5999999a,pct:o[0].commitPct},recent:Array.from({length:6},(e,t)=>({at:(0,m.$)(s,(5-t)*5*m.E).toISOString(),cpu:Math.round((6+18*r.next())*10)/10}))};await a.insert(E.A).values({resourceId:t,keyCiphertext:z,keyIv:z,latest:d,lastTryAt:s,lastOkAt:s,createdAt:(0,m.$)(i,21*m.h),updatedAt:s}),await a.insert(E.l).values(o.filter(e=>e.hour.getTime()<=i.getTime()))}var N=e.i(728335),U=e.i(108935);let F=7*m.h;async function H(e,t,n,i,r,s){let{db:o,seed:c,now:u}=e,g=(0,h.k)(c,"events"),f=[],w=(e,t)=>f.push({id:(0,h.T)(c,"event",e),count:1,...t});for(let e of(0,l.f)(await o.execute(d.sql`select external_id, resource_id, state, branch, commit_sha, building_at, ready_at, created_at_provider from ops.deployments
2
+ where created_at_provider > ${new Date(u.getTime()-F).toISOString()}::timestamptz`))){let t=`${e.branch??"unknown branch"} \xb7 ${e.commit_sha?e.commit_sha.slice(0,7):"no commit"}`,a=new Date(e.created_at_provider),n=e.building_at?new Date(e.building_at):a;w(`${e.external_id}:start`,{at:n,resourceId:e.resource_id,type:"deployment",kind:"build",message:"Deployment started",detail:t,reason:"DeployStarted"}),"ready"===e.state&&e.ready_at&&w(`${e.external_id}:ready`,{at:new Date(e.ready_at),resourceId:e.resource_id,type:"deployment",kind:"ok",message:"Deployment ready",detail:t,reason:"DeployReady"}),"error"===e.state&&w(`${e.external_id}:failed`,{at:new Date(n.getTime()+1e3*g.int(40,110)),resourceId:e.resource_id,type:"deployment",kind:"fail",message:"Deployment failed",detail:t,reason:"DeployFailed"})}let A=n.outage,y=n.monitors.find(e=>e.id===A.monitorId),k=(e,t,a,n,i,r,s)=>w(e,{at:t,resourceId:a,type:"monitor",kind:n,message:i,detail:r,reason:s});k("outage:warn",A.startedAt,A.appId,"warn","Monitor degraded","HTTP 503","MonitorDegraded"),k("outage:err",new Date(A.startedAt.getTime()+10*m.E),A.appId,"err","Monitor down","HTTP 503 on 3 checks in a row","MonitorDown"),k("outage:ok",A.recoveredAt,A.appId,"ok","Monitor recovered",`${y.path} answers again`,"MonitorRecovered"),n.degraded&&k("degraded:warn",n.degraded.since,n.degraded.appId,"warn","Monitor degraded","No answer within 5 s","MonitorDegraded");let I=r.certSoon,v=r.zoneSoon,_=new Date(I.notAfter.getTime()-14*m.h+g.int(5,50)*m.E),$=new Date(v.expiresAt.getTime()-30*m.h+g.int(5,50)*m.E);w("net:cert",{at:_,resourceId:I.id,type:"system",kind:"warn",message:`${I.name} needs attention`,detail:"Certificate expires in 13 days",reason:"NetworkAttention"}),w("net:zone",{at:$,resourceId:v.id,type:"system",kind:"warn",message:`${v.name} needs attention`,detail:"Domain expires in 29 days",reason:"NetworkAttention"});let b=new Date(u);b.setUTCHours(20,0,0,0),b.getTime()>u.getTime()-5*m.E&&b.setTime(b.getTime()-m.h);for(let e=0;e<7;e++){let t=new Date(b.getTime()-e*m.h+1e3*g.int(20,90));w(`daily:${e}`,{at:t,resourceId:null,type:"system",kind:"ok",message:"Daily jobs finished",detail:"Rollups, retention, certificates and domain expiry",reason:"DailyFinished"})}let S=(0,U.demoUserId)(c),T=(e,t,a,n,i=null)=>w(`action:${e}`,{at:(0,m.$)(u,t*m.h+g.int(1,10)*m.w+g.int(0,59)*m.E),resourceId:n,type:"action",kind:"ok",message:a,detail:i,actorUserId:S,reason:"Action"}),x=n.monitors.find(e=>"/api/health"===e.path)??n.monitors[0],D=t.apps[0],M=i.dbs.find(e=>"supabase_project"===e.kind);T("monitor-added",6,`Monitor added: ${(0,p.F)(x.url)}`,x.appId),T("db-link",5,`Database link: ${D.name} → ${M.name}`,D.id),T("keep-active",5,`Keep active on: ${M.name}`,M.id),T("rule",4,"Alert rule edited: HighLatency",null,"threshold 1,500 ms"),T("maintenance",3,"Maintenance window added",null,`Sundays 02:00 ${(0,N.zoneName)()}, 30 min`),T("check-now",1,`Check now: ${(0,p.F)(y.url)}`,y.appId);let E=s.resolved.credential;w("action:credential",{at:new Date(E.resolvedAt.getTime()-g.int(2,9)*m.E),resourceId:null,type:"action",kind:"ok",message:`Credential replaced: ${E.title}`,detail:"Tested and stored; it no longer expires soon",actorUserId:S,reason:"Action"}),w("action:auto-recheck",{at:new Date(A.startedAt.getTime()+11*m.E+3e3),resourceId:y.appId,type:"action",kind:"err",message:`Auto-actions: Check now: ${(0,p.F)(y.url)}`,detail:null,actorUserId:null,reason:"Action"}),await o.insert(a.events).values(f.sort((e,t)=>e.at.getTime()-t.at.getTime()))}let L="76.76.21.21";async function q(e,t,n){let{db:i,seed:r,now:s}=e,o=(0,h.k)(r,"network"),d=e=>(0,m.$)(s,o.int(10,60*e)*m.E).toISOString(),l=n.cloudflare,c=o.shuffle(T).slice(0,2).map((e,t)=>({id:(0,h.T)(r,"zone",e),name:y(e),expiresAt:new Date(1===t?s.getTime()+o.int(12,24)*m.h+o.int(1,20)*m.w:s.getTime()+o.int(200,600)*m.h)})),p=e=>e.split("-").slice(1).join("-")||e,g=t.apps,f=[{name:c[0].name,app:g[0]},...[0,1,2].map(e=>({name:`${p(g[e].name)}.${c[0].name}`,app:g[e]})),...[3,4].map(e=>({name:`${p(g[e%g.length].name)}.${c[1].name}`,app:g[e%g.length]}))],w=o.int(1,3),A=f.map((e,t)=>({id:(0,h.T)(r,"domain",e.name),name:e.name,appId:e.app.id,notAfter:new Date(t===w?s.getTime()+o.int(4,9)*m.h+o.int(1,20)*m.w:s.getTime()+o.int(30,85)*m.h)})),k=(e,t,a,n,i,s=null)=>({id:(0,h.p)(32,r,"dns",e,t,a),type:t,name:a,content:n,proxied:i,ttl:i?1:300,comment:s}),I=c.map(e=>{let t=[...A.filter(t=>t.name===e.name||t.name.endsWith(`.${e.name}`)).map(t=>k(e.name,"A",t.name,L,!1,"Vercel")),k(e.name,"MX",e.name,y("mx1.mail"),!1),k(e.name,"TXT",e.name,`v=spf1 include:_spf.${y("mail")} ~all`,!1),k(e.name,"A",`legacy.${e.name}`,`192.0.2.${o.int(10,200)}`,!0,"Old server, kept for redirects")],a={expiresAt:e.expiresAt.toISOString(),registrar:"Example Registrar, Inc.",error:null,checkedAt:d(20)},n={status:"active",paused:!1,nameServers:[y("ada.ns"),y("bob.ns")],accountId:l.cfAccountId,checkedAt:d(1)},i=(0,u.G)({status:n.status,paused:n.paused,rdap:a},s),r={zone:n,ssl:{mode:"strict",error:null},records:t,recordsTruncated:!1,cfErrors:[],certs:[{type:"universal",status:"active",hosts:[e.name,`*.${e.name}`],expiresOn:new Date(s.getTime()+o.int(40,80)*m.h).toISOString()}],rdap:a,reasons:i.reasons};return{z:e,records:t,rdap:a,state:i.state,data:r}}),v=(0,m.$)(s,o.int(150,380)*m.h),_=(0,m.$)(s,o.int(5,50)*m.E);await i.insert(a.resources).values(c.map(e=>({id:e.id,accountId:l.accountId,kind:"zone",externalId:(0,h.p)(32,r,"zone-id",e.name),name:e.name,monitored:!0,meta:{status:"active",accountId:l.cfAccountId,accountName:l.label},firstSeenAt:v,lastSeenAt:_,createdAt:v,updatedAt:_}))),await i.insert(a.resources).values(A.map(e=>{let a=g.find(t=>t.id===e.appId);return{id:e.id,accountId:t.accountId,kind:"domain",externalId:e.name,name:e.name,parentId:e.appId,monitored:!0,meta:{redirect:null,verified:!0,projectId:a.externalId},firstSeenAt:v,lastSeenAt:_,createdAt:v,updatedAt:_}}));let $=["Let's Encrypt","Google Trust Services"];await i.insert(a.snapshots).values([...I.map(e=>({resourceId:e.z.id,state:e.state,stateSince:"ok"===e.state?v:new Date(e.z.expiresAt.getTime()-30*m.h),data:e.data,collectedAt:_})),...A.map(e=>{let t=I.find(t=>e.name===t.z.name||e.name.endsWith(`.${t.z.name}`)),a={notAfter:e.notAfter.toISOString(),issuer:o.pick($),authorized:!0,error:null,checkedAt:d(19)},n={misconfigured:!1,configuredBy:"A",recommendedIps:[L],checkedAt:d(6)},i=(0,u.k)({host:e.name,tls:a,vercel:n,records:(0,u.Q)(e.name,t.records),zoneRdap:t.rdap},s),r="ok"===i.state?v:new Date(Math.min(e.notAfter.getTime()-14*m.h,t.z.expiresAt.getTime()-30*m.h));return{resourceId:e.id,state:i.state,stateSince:r,data:{tls:a,vercel:n,reasons:i.reasons},collectedAt:_}})]);let b=I[0].records.find(e=>"A"===e.type&&e.name===c[0].name&&e.content===L);return{zones:c,domains:A,certSoon:A[w],zoneSoon:c[1],vercelRecord:{id:b.id,name:b.name,zoneId:c[0].id}}}let K=["vercel","supabase","neon","cloudflare","firebase","gcp"];async function V(e,t){let{db:n,seed:i,now:r}=e,s=(0,h.k)(i,"logs"),o=(0,l.f)(await n.execute(d.sql`select resource_id, external_id from ops.deployments where is_current`)),c=s.shuffle(t.apps).slice(0,3).flatMap((e,t)=>Array.from({length:s.int(4,8)},(a,n)=>{let d=s.pick(x);return{id:(0,h.T)(i,"log",e.name,n),resourceId:e.id,deploymentId:o.find(t=>t.resource_id===e.id)?.external_id??`dpl_${(0,h.g)(24,i,"log-dpl",t)}`,rowId:`${(0,h.g)(10,i,"log-row",e.name,n).toLowerCase()}-${n}`,at:(0,m.$)(r,s.int(3,2760)*m.E+1e3*s.int(0,59)),level:d.level,message:d.message,requestMethod:d.method,requestPath:d.path,statusCode:d.status,source:"serverless"}}));await n.insert(a.storedLogs).values(c)}async function W(e){let{db:t,seed:n,now:i}=e,r=(0,h.k)(n,"provider-status"),s=(0,m.$)(i,r.int(1,4)*m.E);await t.insert(a.providerStatus).values(K.map(e=>"cloudflare"===e?{provider:e,state:"info",indicator:"maintenance",description:"Scheduled maintenance",checkedAt:s,lastOkAt:s,error:null,incidents:[{name:"Scheduled maintenance in one Asia-Pacific data center",impact:"maintenance",startedAt:(0,m.$)(i,r.int(1,3)*m.w).toISOString(),url:null}]}:{provider:e,state:"ok",indicator:"none",description:"All Systems Operational",incidents:[],checkedAt:s,lastOkAt:s,error:null}))}async function G(e){let{db:t,seed:a,now:n}=e,i=(0,h.k)(a,"ai-usage"),r=(0,h.T)(a,"ai-agent","console"),s=i.int(70,140),o=[],l=[],c=[],u=[],p=[],g=[];for(let e=0;e<s;e++){o.push(n.getTime()-i.int(2,10080)*m.E);let e=i.chance(.04);p.push(e?429:200),l.push(e?0:i.int(600,4200)),c.push(e?0:i.int(80,700)),u.push(e?i.int(80,300):i.int(700,4800)),g.push(i.int(1,2))}let f=e=>e.reduce((e,t)=>e+t,0),w=new Date(Math.max(...o));await t.execute(d.sql`
3
3
  insert into ops.ai_agents (id, key_id, client_name, client_version, via, user_agent, first_seen_at, last_seen_at, requests, tokens_in, tokens_out, recent)
4
- values (${r}::uuid, null, 'Watchbell console', '', 'console', 'Watchbell console (ask-ai)', ${(0,m.$)(i,720*m.w).toISOString()}::timestamptz,
4
+ values (${r}::uuid, null, 'Watchbell console', '', 'console', 'Watchbell console (ask-ai)', ${(0,m.$)(n,720*m.w).toISOString()}::timestamptz,
5
5
  ${w.toISOString()}::timestamptz, ${s}, ${f(l)}, ${f(c)}, ${Y(["gemini/gemini-2.5-flash","workers-ai/gemma-3-12b-it"])}::text[])`),await t.execute(d.sql`
6
6
  insert into ops.ai_usage (at, key_id, agent_id, provider_id, model, kind, tool, tokens_in, tokens_out, latency_ms, status, error_class, stream)
7
7
  select to_timestamp(t.at / 1000.0), null, ${r}::uuid, null, (array['gemini/gemini-2.5-flash', 'workers-ai/gemma-3-12b-it'])[t.m], 'console', null,
@@ -9,20 +9,20 @@ module.exports=[907897,e=>{"use strict";var t=e.i(519137),a=e.i(530298),i=e.i(10
9
9
  case when t.s = 429 then 'rate_limited · upstream_429' else null end, false
10
10
  from unnest(${(0,m._)(o)}::bigint[], ${(0,m._)(g)}::int[], ${(0,m._)(l)}::int[], ${(0,m._)(c)}::int[], ${(0,m._)(u)}::int[],
11
11
  ${(0,m._)(p)}::int[]) as t(at, m, ti, tout, l, s)
12
- order by t.at`)}let Y=e=>`{${e.join(",")}}`,Q=2*m.w;async function X(e,t,a,i){let{db:n,seed:r,now:s}=e,o=(0,h.k)(r,"proposals"),l=e=>(0,h.T)(r,"proposal",e),c=a.certSoon,u=t.failedDeploy,g=i.monitors.find(e=>e.id===i.outage.monitorId),f=new Date(i.outage.startedAt.getTime()+11*m.E),w=t.resolved.oldDeploy,A=new Date(w.startedAt.getTime()+o.int(2,6)*m.E),y=new Date(A.getTime()+o.int(3,15)*m.E),k=(0,m.$)(s,o.int(20,55)*m.E),I=(0,m.$)(s,o.int(8,19)*m.E);for(let e of[{id:l("pending-safe"),alertId:t.firing.cert,ruleKey:"CertExpiringSoon",room:"network",action:"domain_recheck",risk:"safe",title:`Re-check the certificate of ${c.name}`,reason:"The TLS certificate expires within 14 days; a fresh read shows whether it was already renewed.",resourceKind:"domain",resourceId:c.id,resourceName:c.name,targetRef:c.id,proposedBy:"Network",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:k,decidedAt:null,expiresAt:new Date(k.getTime()+Q),claimedAt:null,finishedAt:null},{id:l("pending-risky"),alertId:t.firing.deploy,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_redeploy",risk:"risky",title:`Redeploy production ${u.appName}`,reason:`Production deployment ${u.sha} failed; the previous build is still live.`,resourceKind:"app",resourceId:u.appId,resourceName:u.appName,targetRef:u.currentExternalId,proposedBy:"Workloads",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:I,decidedAt:null,expiresAt:new Date(I.getTime()+Q),claimedAt:null,finishedAt:null},{id:l("done-auto"),alertId:t.resolved.outage,ruleKey:"MonitorDown",room:"workloads",action:"recheck",risk:"safe",title:`Check ${(0,p.F)(g.url)} again now`,reason:"It returned HTTP 503 on 3 consecutive checks.",resourceKind:"app",resourceId:g.appId,resourceName:(0,p.F)(g.url),targetRef:g.id,proposedBy:"Workloads",status:"done",auto:!0,result:"Failed: HTTP 503.",decidedBy:null,createdAt:f,decidedAt:f,expiresAt:new Date(f.getTime()+Q),claimedAt:new Date(f.getTime()+2e3),finishedAt:new Date(f.getTime()+2e3+o.int(300,1500))},{id:l("rejected"),alertId:w.id,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_rollback",risk:"risky",title:`Roll back ${w.appName} to the previous deployment`,reason:"The newest production build failed.",resourceKind:"app",resourceId:w.appId,resourceName:w.appName,targetRef:w.previousExternalId,proposedBy:"Workloads",status:"rejected",auto:!1,result:null,decidedBy:(0,F.memberRowId)(r),createdAt:A,decidedAt:y,expiresAt:new Date(A.getTime()+Q),claimedAt:null,finishedAt:null}]){let t=e=>e?e.toISOString():null;await n.execute(d.sql`
12
+ order by t.at`)}let Y=e=>`{${e.join(",")}}`,Q=2*m.w;async function X(e,t,a,n){let{db:i,seed:r,now:s}=e,o=(0,h.k)(r,"proposals"),l=e=>(0,h.T)(r,"proposal",e),c=a.certSoon,u=t.failedDeploy,g=n.monitors.find(e=>e.id===n.outage.monitorId),f=new Date(n.outage.startedAt.getTime()+11*m.E),w=t.resolved.oldDeploy,A=new Date(w.startedAt.getTime()+o.int(2,6)*m.E),y=new Date(A.getTime()+o.int(3,15)*m.E),k=(0,m.$)(s,o.int(20,55)*m.E),I=(0,m.$)(s,o.int(8,19)*m.E);for(let e of[{id:l("pending-safe"),alertId:t.firing.cert,ruleKey:"CertExpiringSoon",room:"network",action:"domain_recheck",risk:"safe",title:`Re-check the certificate of ${c.name}`,reason:"The TLS certificate expires within 14 days; a fresh read shows whether it was already renewed.",resourceKind:"domain",resourceId:c.id,resourceName:c.name,targetRef:c.id,proposedBy:"Network",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:k,decidedAt:null,expiresAt:new Date(k.getTime()+Q),claimedAt:null,finishedAt:null},{id:l("pending-risky"),alertId:t.firing.deploy,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_redeploy",risk:"risky",title:`Redeploy production ${u.appName}`,reason:`Production deployment ${u.sha} failed; the previous build is still live.`,resourceKind:"app",resourceId:u.appId,resourceName:u.appName,targetRef:u.currentExternalId,proposedBy:"Workloads",status:"pending",auto:!1,result:null,decidedBy:null,createdAt:I,decidedAt:null,expiresAt:new Date(I.getTime()+Q),claimedAt:null,finishedAt:null},{id:l("done-auto"),alertId:t.resolved.outage,ruleKey:"MonitorDown",room:"workloads",action:"recheck",risk:"safe",title:`Check ${(0,p.F)(g.url)} again now`,reason:"It returned HTTP 503 on 3 consecutive checks.",resourceKind:"app",resourceId:g.appId,resourceName:(0,p.F)(g.url),targetRef:g.id,proposedBy:"Workloads",status:"done",auto:!0,result:"Failed: HTTP 503.",decidedBy:null,createdAt:f,decidedAt:f,expiresAt:new Date(f.getTime()+Q),claimedAt:new Date(f.getTime()+2e3),finishedAt:new Date(f.getTime()+2e3+o.int(300,1500))},{id:l("rejected"),alertId:w.id,ruleKey:"DeploymentFailed",room:"workloads",action:"vercel_rollback",risk:"risky",title:`Roll back ${w.appName} to the previous deployment`,reason:"The newest production build failed.",resourceKind:"app",resourceId:w.appId,resourceName:w.appName,targetRef:w.previousExternalId,proposedBy:"Workloads",status:"rejected",auto:!1,result:null,decidedBy:(0,U.memberRowId)(r),createdAt:A,decidedAt:y,expiresAt:new Date(A.getTime()+Q),claimedAt:null,finishedAt:null}]){let t=e=>e?e.toISOString():null;await i.execute(d.sql`
13
13
  insert into ops.action_proposals (id, alert_id, rule_key, room, action, risk, title, reason, resource_kind, resource_id, resource_name, target_ref,
14
14
  proposed_by, status, auto, result, decided_by, created_at, decided_at, expires_at, claimed_at, finished_at)
15
15
  values (${e.id}::uuid, ${e.alertId}::uuid, ${e.ruleKey}, ${e.room}, ${e.action}, ${e.risk}, ${e.title}, ${e.reason}, ${e.resourceKind},
16
16
  ${e.resourceId}::uuid, ${e.resourceName}, ${e.targetRef}, ${e.proposedBy}, ${e.status}, ${e.auto}, ${e.result}, ${e.decidedBy}::uuid,
17
- ${t(e.createdAt)}::timestamptz, ${t(e.decidedAt)}::timestamptz, ${t(e.expiresAt)}::timestamptz, ${t(e.claimedAt)}::timestamptz, ${t(e.finishedAt)}::timestamptz)`)}}var J=e.i(649297),Z=e.i(369179);let ee=5*m.E,et=m.h/ee,ea=Z.f.checks*et,ei=Z.f.rollupsHourly*et,en="No answer within 5 s";async function er(e,t){var i;let n,{db:r,seed:s,now:o}=e,d=(0,h.k)(s,"monitors"),l=[];for(let e of t.apps)for(let[t,a]of(d.chance(.6)?["/","/api/health"]:["/"]).entries())l.push({id:(0,h.T)(s,"monitor",e.name,a),appId:e.id,index:l.length,url:`https://${e.host}${a}`,path:a,createdAt:new Date(e.createdAt.getTime()+t*d.int(1,3)*m.h+d.int(2,50)*m.E)});let c=Math.floor((o.getTime()-1e4)/ee)*ee,u=(e,t)=>c-t*ee+2e3+300*e.index,p=l.map(e=>(function(e,t){let a=(0,h.k)(e,"checks",t.id),i={ok:new Uint8Array(ei),status:new Int16Array(ei),latency:new Int32Array(ei)},n=a.int(70,380)*("/"===t.path?1:.55);for(let e=0;e<ei;e++){let t=Math.round(n*(.75+.5*a.next())*(a.chance(.02)?1.8+2*a.next():1));if(e>=3&&a.chance(3e-4)){let t=a.int(0,3);es(i,e,3===t?{ok:!1,status:0,latency:-1}:{ok:!1,status:[500,502,503][t],latency:a.int(30,300)})}else es(i,e,{ok:!0,status:200,latency:t})}return i})(s,e)),g=(0,h.k)(s,"outage"),f=l.filter(e=>"/"===e.path),w=g.pick(f),y=g.int(96,240),k=g.int(4,7),I=p[w.index];for(let e=y-3;e<y+k+3;e++)es(I,e,{ok:!0,status:200,latency:I.latency[e]>0?I.latency[e]:180});for(let e=y;e<y+k;e++)es(I,e,{ok:!1,status:e===y+k-1?502:503,latency:g.int(30,140)});let v={monitorId:w.id,appId:w.appId,startedAt:new Date(u(w,y+k-1)),endedAt:new Date(u(w,y)),recoveredAt:new Date(u(w,y-1)),failedChecks:k},_=l.filter(e=>e.appId!==w.appId),$=_.length?g.pick(_):null;$&&es(p[$.index],0,{ok:!1,status:0,latency:-1});let b=(0,h.k)(s,"slow-windows"),S=l.filter(e=>e.id!==w.id),T=(e,t,a,i)=>{let n=p[e.index],r=t*et+b.int(12,144),s=b.int(a,i),o=[];for(let e=r;e>r-s;e--){let t=b.int(1600,2900);es(n,e,{ok:!0,status:200,latency:t}),o.length<2&&o.push({ok:!0,statusCode:200,latencyMs:t})}let d=r-s;return(!n.ok[d]||n.latency[d]>=1500)&&es(n,d,{ok:!0,status:200,latency:180}),{monitorId:e.id,appId:e.appId,firedAt:new Date(u(e,r-1)),resolvedAt:new Date(u(e,d)),p95:(0,J.z)(o).p95Ms}},x=S[0]??w,D=S[S.length-1]??w,E=[T(x,2,4,8),T(D,5,3,6)],M=l.map(e=>(function(e,t,a){let i="unknown",n=0,r=e.createdAt;for(let e=t.ok.length-1;e>=0;e--){let s=(0,A.G)(n,{ok:1===t.ok[e],statusCode:eo(t,e),latencyMs:ed(t,e),error:el(t,e)});s.state!==i&&(r=a(e)),i=s.state,n=s.failStreak}return{id:e.id,appId:e.appId,url:e.url,path:e.path,state:i,stateSince:r,failStreak:n,lastCheckedAt:a(0),lastStatus:eo(t,0),lastLatencyMs:ed(t,0),createdAt:e.createdAt}})(e,p[e.index],t=>new Date(u(e,t))));await r.insert(a.monitors).values(M.map((e,t)=>({id:e.id,resourceId:e.appId,url:e.url,kind:"http",expectedStatus:200,timeoutMs:5e3,intervalS:ee/1e3,state:e.state,stateSince:e.stateSince,failStreak:e.failStreak,lastCheckedAt:e.lastCheckedAt,lastStatus:e.lastStatus,lastLatencyMs:e.lastLatencyMs,lastError:el(p[t],0),createdAt:e.createdAt,updatedAt:e.lastCheckedAt})));let O=((n=new Date(i=o)).setUTCHours(20,0,0,0),n.getTime()>i.getTime()-5*m.E&&n.setTime(n.getTime()-m.h),n.getTime());for(let t of l)await ec(e,t,p[t.index],new Date(u(t,0))),await eu(e,t,p[t.index],e=>u(t,e),O);return await ep(e,l.length),{monitors:M,outage:v,degraded:$?{monitorId:$.id,appId:$.appId,since:new Date(u($,0))}:null,slow:E}}function es(e,t,a){t<0||t>=e.ok.length||(e.ok[t]=+!!a.ok,e.status[t]=a.status,e.latency[t]=a.latency)}let eo=(e,t)=>0===e.status[t]?null:e.status[t],ed=(e,t)=>e.latency[t]<0?null:e.latency[t],el=(e,t)=>e.ok[t]?null:e.status[t]?`HTTP ${e.status[t]}`:en;async function ec(e,t,a,i){let n=Array.from({length:ea},(e,t)=>t);await e.db.execute(d.sql`
17
+ ${t(e.createdAt)}::timestamptz, ${t(e.decidedAt)}::timestamptz, ${t(e.expiresAt)}::timestamptz, ${t(e.claimedAt)}::timestamptz, ${t(e.finishedAt)}::timestamptz)`)}}var J=e.i(649297),Z=e.i(369179);let ee=5*m.E,et=m.h/ee,ea=Z.f.checks*et,en=Z.f.rollupsHourly*et,ei="No answer within 5 s";async function er(e,t){var n;let i,{db:r,seed:s,now:o}=e,d=(0,h.k)(s,"monitors"),l=[];for(let e of t.apps)for(let[t,a]of(d.chance(.6)?["/","/api/health"]:["/"]).entries())l.push({id:(0,h.T)(s,"monitor",e.name,a),appId:e.id,index:l.length,url:`https://${e.host}${a}`,path:a,createdAt:new Date(e.createdAt.getTime()+t*d.int(1,3)*m.h+d.int(2,50)*m.E)});let c=Math.floor((o.getTime()-1e4)/ee)*ee,u=(e,t)=>c-t*ee+2e3+300*e.index,p=l.map(e=>(function(e,t){let a=(0,h.k)(e,"checks",t.id),n={ok:new Uint8Array(en),status:new Int16Array(en),latency:new Int32Array(en)},i=a.int(70,380)*("/"===t.path?1:.55);for(let e=0;e<en;e++){let t=Math.round(i*(.75+.5*a.next())*(a.chance(.02)?1.8+2*a.next():1));if(e>=3&&a.chance(3e-4)){let t=a.int(0,3);es(n,e,3===t?{ok:!1,status:0,latency:-1}:{ok:!1,status:[500,502,503][t],latency:a.int(30,300)})}else es(n,e,{ok:!0,status:200,latency:t})}return n})(s,e)),g=(0,h.k)(s,"outage"),f=l.filter(e=>"/"===e.path),w=g.pick(f),y=g.int(96,240),k=g.int(4,7),I=p[w.index];for(let e=y-3;e<y+k+3;e++)es(I,e,{ok:!0,status:200,latency:I.latency[e]>0?I.latency[e]:180});for(let e=y;e<y+k;e++)es(I,e,{ok:!1,status:e===y+k-1?502:503,latency:g.int(30,140)});let v={monitorId:w.id,appId:w.appId,startedAt:new Date(u(w,y+k-1)),endedAt:new Date(u(w,y)),recoveredAt:new Date(u(w,y-1)),failedChecks:k},_=l.filter(e=>e.appId!==w.appId),$=_.length?g.pick(_):null;$&&es(p[$.index],0,{ok:!1,status:0,latency:-1});let b=(0,h.k)(s,"slow-windows"),S=l.filter(e=>e.id!==w.id),T=(e,t,a,n)=>{let i=p[e.index],r=t*et+b.int(12,144),s=b.int(a,n),o=[];for(let e=r;e>r-s;e--){let t=b.int(1600,2900);es(i,e,{ok:!0,status:200,latency:t}),o.length<2&&o.push({ok:!0,statusCode:200,latencyMs:t})}let d=r-s;return(!i.ok[d]||i.latency[d]>=1500)&&es(i,d,{ok:!0,status:200,latency:180}),{monitorId:e.id,appId:e.appId,firedAt:new Date(u(e,r-1)),resolvedAt:new Date(u(e,d)),p95:(0,J.z)(o).p95Ms}},x=S[0]??w,D=S[S.length-1]??w,M=[T(x,2,4,8),T(D,5,3,6)],E=l.map(e=>(function(e,t,a){let n="unknown",i=0,r=e.createdAt;for(let e=t.ok.length-1;e>=0;e--){let s=(0,A.G)(i,{ok:1===t.ok[e],statusCode:eo(t,e),latencyMs:ed(t,e),error:el(t,e)});s.state!==n&&(r=a(e)),n=s.state,i=s.failStreak}return{id:e.id,appId:e.appId,url:e.url,path:e.path,state:n,stateSince:r,failStreak:i,lastCheckedAt:a(0),lastStatus:eo(t,0),lastLatencyMs:ed(t,0),createdAt:e.createdAt}})(e,p[e.index],t=>new Date(u(e,t))));await r.insert(a.monitors).values(E.map((e,t)=>({id:e.id,resourceId:e.appId,url:e.url,kind:"http",expectedStatus:200,timeoutMs:5e3,intervalS:ee/1e3,state:e.state,stateSince:e.stateSince,failStreak:e.failStreak,lastCheckedAt:e.lastCheckedAt,lastStatus:e.lastStatus,lastLatencyMs:e.lastLatencyMs,lastError:el(p[t],0),createdAt:e.createdAt,updatedAt:e.lastCheckedAt})));let O=((i=new Date(n=o)).setUTCHours(20,0,0,0),i.getTime()>n.getTime()-5*m.E&&i.setTime(i.getTime()-m.h),i.getTime());for(let t of l)await ec(e,t,p[t.index],new Date(u(t,0))),await eu(e,t,p[t.index],e=>u(t,e),O);return await ep(e,l.length),{monitors:E,outage:v,degraded:$?{monitorId:$.id,appId:$.appId,since:new Date(u($,0))}:null,slow:M}}function es(e,t,a){t<0||t>=e.ok.length||(e.ok[t]=+!!a.ok,e.status[t]=a.status,e.latency[t]=a.latency)}let eo=(e,t)=>0===e.status[t]?null:e.status[t],ed=(e,t)=>e.latency[t]<0?null:e.latency[t],el=(e,t)=>e.ok[t]?null:e.status[t]?`HTTP ${e.status[t]}`:ei;async function ec(e,t,a,n){let i=Array.from({length:ea},(e,t)=>t);await e.db.execute(d.sql`
18
18
  insert into ops.checks (id, monitor_id, at, ok, status_code, latency_ms, error, in_maintenance)
19
- select md5(${`${e.seed}:${t.id}:`} || t.k)::uuid, ${t.id}::uuid, ${i.toISOString()}::timestamptz - t.k * interval '5 minutes',
20
- t.ok, t.s, t.l, case when t.ok then null when t.s is null then ${en} else 'HTTP ' || t.s end, false
21
- from unnest(${(0,m._)(n)}::int[], ${(0,m._)(n.map(e=>1===a.ok[e]))}::bool[], ${(0,m._)(n.map(e=>eo(a,e)))}::int[],
22
- ${(0,m._)(n.map(e=>ed(a,e)))}::int[]) as t(k, ok, s, l)`)}async function eu(e,t,a,i,n){let r=Math.ceil(i(a.ok.length-1)/m.w)*m.w,s=[],o=[],l=[],c=[],u=[],p=[],h=[],g=-1,f=[],w=()=>{if(g<0||!f.length)return;let e=(0,J.z)(f);s.push(g/1e3),o.push(e.checks),l.push(e.failures),c.push(e.p50Ms),u.push(e.p95Ms),p.push(e.maxMs),h.push(e.status5xx)};for(let e=0;e<a.ok.length;e++){let t=Math.floor(i(e)/m.w)*m.w;if(!(t>=n)){if(t<r)break;t!==g&&(w(),g=t,f=[]),f.push({ok:1===a.ok[e],statusCode:eo(a,e),latencyMs:ed(a,e)})}}w(),s.length&&await e.db.execute(d.sql`
19
+ select md5(${`${e.seed}:${t.id}:`} || t.k)::uuid, ${t.id}::uuid, ${n.toISOString()}::timestamptz - t.k * interval '5 minutes',
20
+ t.ok, t.s, t.l, case when t.ok then null when t.s is null then ${ei} else 'HTTP ' || t.s end, false
21
+ from unnest(${(0,m._)(i)}::int[], ${(0,m._)(i.map(e=>1===a.ok[e]))}::bool[], ${(0,m._)(i.map(e=>eo(a,e)))}::int[],
22
+ ${(0,m._)(i.map(e=>ed(a,e)))}::int[]) as t(k, ok, s, l)`)}async function eu(e,t,a,n,i){let r=Math.ceil(n(a.ok.length-1)/m.w)*m.w,s=[],o=[],l=[],c=[],u=[],p=[],h=[],g=-1,f=[],w=()=>{if(g<0||!f.length)return;let e=(0,J.z)(f);s.push(g/1e3),o.push(e.checks),l.push(e.failures),c.push(e.p50Ms),u.push(e.p95Ms),p.push(e.maxMs),h.push(e.status5xx)};for(let e=0;e<a.ok.length;e++){let t=Math.floor(n(e)/m.w)*m.w;if(!(t>=i)){if(t<r)break;t!==g&&(w(),g=t,f=[]),f.push({ok:1===a.ok[e],statusCode:eo(a,e),latencyMs:ed(a,e)})}}w(),s.length&&await e.db.execute(d.sql`
23
23
  insert into ops.rollups_hourly (monitor_id, hour, checks, failures, p50_ms, p95_ms, max_ms, status_5xx, maintenance)
24
24
  select ${t.id}::uuid, to_timestamp(t.h), t.c, t.f, t.p50, t.p95, t.mx, t.s5, 0
25
25
  from unnest(${(0,m._)(s)}::bigint[], ${(0,m._)(o)}::int[], ${(0,m._)(l)}::int[], ${(0,m._)(c)}::int[],
26
- ${(0,m._)(u)}::int[], ${(0,m._)(p)}::int[], ${(0,m._)(h)}::int[]) as t(h, c, f, p50, p95, mx, s5)`)}async function ep(e,t){let{seed:i,now:n}=e,r=(0,h.k)(i,"collector-runs"),s=Math.floor((n.getTime()-1e4)/m.E)*m.E;await e.db.insert(a.collectorRuns).values(Array.from({length:60},(e,a)=>{let n=s-a*m.E,o=n%ee==0,d=(o?2e3+300*t:600)+r.int(200,1400);return{id:(0,h.T)(i,"collector-run",a),startedAt:new Date(n+1e3),finishedAt:new Date(n+1e3+d),trigger:"manual",tasks:o?["heartbeats","checks","vercel","alerts"]:["heartbeats","vercel","alerts"],ok:!0,durationMs:d,checks:o?t:0}}))}async function em(e,t,a,i,{foreignKeyChecks:n=!1}={}){await e.transaction(async e=>{n||await e.execute(d.sql`set local session_replication_role = replica`);let r={db:e,seed:t,now:a,email:i};await (0,F.seedMember)(r);let s=await D(r),o=await er(r,s);await E(r,s,o.monitors);let l=await j(r,s),c=await q(r,s,l),u=await f(r,s,o,l,c);await X(r,u,c,o),await L(r,s,o,l,c,u),await V(r,s),await W(r),await G(r)})}var eh=e.i(271622),eg=e.i(666680),ef=e.i(902157),ew=e.i(750227),eA=e.i(727028),ey=e.i(372874),ek=e.i(43178),eI=e.i(369455);let ev=globalThis;async function e_(e){let a=await ey.f.create();try{return await (0,ek.f)((0,t.f)({client:a}),{migrationsFolder:e}),{blob:await a.dumpDataDir("none"),from:"process"}}finally{await a.close()}}function e$(e){return ev.__watchbellDemoTemplate=e,e.catch(()=>{ev.__watchbellDemoTemplate===e&&delete ev.__watchbellDemoTemplate}),e}function eb(){if(ev.__watchbellDemoTemplate)return ev.__watchbellDemoTemplate;let e=performance.now(),t=(0,eI.selfhostMigrationsFolder)(),a=function(e){let t=function(e=process.env){return(0,ew.resolve)((0,i.d)(e,"DEMO_SNAPSHOT_DIR")||"demo-snapshot")}();try{if(JSON.parse((0,ef.readFileSync)((0,ew.join)(t,"migrated.json"),"utf8")).migrations!==function(e){let t=(0,eg.createHash)("sha256");for(let a of["meta/_journal.json",...(0,ef.readdirSync)(e).filter(e=>e.endsWith(".sql")).sort()])t.update(`${a}\0`).update((0,ef.readFileSync)((0,ew.join)(e,a))).update("\0");return t.digest("hex")}(e))return null;return{blob:new Blob([(0,eA.gunzipSync)((0,ef.readFileSync)((0,ew.join)(t,"migrated.tar.gz")))],{type:"application/x-tar"}),from:"build"}}catch{return null}}(t),n=e$(a?Promise.resolve(a):e_(t));return n.then(t=>console.info(`demo: schema template ${"build"===t.from?"read from the build's snapshot":"migrated in this process"} in ${Math.round(performance.now()-e)} ms`),()=>void 0),n}async function eS(){let e=eb(),t=await e;try{return await ey.f.create({loadDataDir:t.blob})}catch(a){if("build"!==t.from)throw a;return ev.__watchbellDemoTemplate===e&&(console.warn(`demo: the build's migrated snapshot didn't load (${a instanceof Error?a.message:String(a)}); migrating instead`),e$(e_((0,eI.selfhostMigrationsFolder)()))),ey.f.create({loadDataDir:(await eb()).blob})}}var eT=e.i(484817);let ex=0,eD=()=>Date.now()+ex;function eE(e=process.env){let t=Number(((0,i.d)(e,"DEMO_POOL_MAX")??"").trim());return Number.isInteger(t)&&t>=1?t:3}let eM=globalThis.__watchpostDemoPool??={entries:new Map,live:new Set,waiters:new Set,creating:0,creationQueue:[]};function eO(){let e=[...eM.waiters];for(let t of(eM.waiters.clear(),e))t()}function eC(e){!e.evicted||e.leases>0||e.closing||(e.closing=e.pglite.then(e=>e.close()).catch(()=>void 0).finally(()=>{eM.live.delete(e),eO()}))}function eP(e){eM.entries.get(e.seed)===e&&eM.entries.delete(e.seed),e.evicted=!0,0===eM.entries.size&&eM.sweeper&&(clearInterval(eM.sweeper),eM.sweeper=void 0),eC(e),eO()}let ez=e=>e.created&&0===e.leases&&!e.evicted,eR=(e,t)=>ez(e)&&t-e.lastUsed>=6e4;function ej(e=eD()){for(let t of[...eM.entries.values()])ez(t)&&e-t.lastUsed>12e5&&eP(t)}async function eN(e){let t=eD()+5e3;for(;;){if(e.evicted)throw Error("The demo database was closed. Reload the page.");if(eM.live.size<eE())return void eM.live.add(e);let a=eD(),i=[...eM.entries.values()].find(e=>eR(e,a));if(i){eP(i),await i.closing;continue}let r=t-a;if(r<=0)throw o(n);await function(e){return new Promise(t=>{let a=setTimeout(i,e);function i(){clearTimeout(a),eM.waiters.delete(i),t()}eM.waiters.add(i)})}(Math.min(r,function(e){let t=1/0;for(let a of eM.entries.values())ez(a)&&(t=Math.min(t,a.lastUsed+6e4-e));return Math.max(0,t)}(a)+1))}}async function eU(){eM.creating<2?eM.creating++:await new Promise(e=>eM.creationQueue.push(e))}async function eF(e,i){let n=performance.now();if(!eT.k.take(await (0,eh.R)(),e.seed))throw o(r);await eN(e);try{let r=i??await (0,eh._)();await eU();try{let i=performance.now(),s=await eS(),o=performance.now();try{let i=(0,t.f)({client:s,schema:a});await em(i,e.seed,new Date,r)}catch(e){throw await s.close().catch(()=>void 0),e}e.created=!0;let d=(e,t)=>Math.round(t-e),l=performance.now();return console.info(`demo: visitor database ready in ${d(n,l)} ms (waited ${d(n,i)}, schema ${d(i,o)}, seed ${d(o,l)})`),s}finally{let e;(e=eM.creationQueue.shift())?e():eM.creating--}}catch(t){throw eM.live.delete(e),t}finally{eO()}}function eH(e,t){if(!e)throw Error("Demo seed missing");ej();let a=eM.entries.get(e);if(a)eM.entries.delete(e);else{let i={seed:e,created:!1,lastUsed:0,leases:0,evicted:!1};i.pglite=eF(i,t),i.pglite.catch(()=>{eM.entries.get(e)===i&&eM.entries.delete(e)}),a=i}return a.lastUsed=eD(),eM.entries.set(e,a),eM.sweeper||(eM.sweeper=setInterval(()=>ej(),6e4),eM.sweeper.unref?.()),a}async function eL(e,t,a){let i=eH(e,a);i.leases++;try{return await t(await i.pglite)}finally{i.leases--,i.lastUsed=eD(),eC(i),eO()}}async function eB(){for(let e of[...eM.entries.values()])eP(e);await Promise.all([...eM.live].map(e=>e.closing))}e.s(["BUSY_WAIT_MS",0,5e3,"DEFAULT_POOL_MAX",0,3,"DEMO_BUSY",0,n,"DEMO_TOO_MANY",0,r,"IDLE_MS",0,12e5,"MAX_CREATING",0,2,"RECENT_MS",0,6e4,"closeDemoPool",0,eB,"demoDbFor",0,function(e,t){return eH(e,t).pglite},"demoPoolMax",0,eE,"setDemoPoolClockOffsetForTests",0,function(e){if(!process.env.VITEST)throw Error("setDemoPoolClockOffsetForTests is for tests only");ex=e,eO()},"sweepIdleDemoDbs",0,ej,"withDemoDb",0,eL],907897)}];
26
+ ${(0,m._)(u)}::int[], ${(0,m._)(p)}::int[], ${(0,m._)(h)}::int[]) as t(h, c, f, p50, p95, mx, s5)`)}async function ep(e,t){let{seed:n,now:i}=e,r=(0,h.k)(n,"collector-runs"),s=Math.floor((i.getTime()-1e4)/m.E)*m.E;await e.db.insert(a.collectorRuns).values(Array.from({length:60},(e,a)=>{let i=s-a*m.E,o=i%ee==0,d=(o?2e3+300*t:600)+r.int(200,1400);return{id:(0,h.T)(n,"collector-run",a),startedAt:new Date(i+1e3),finishedAt:new Date(i+1e3+d),trigger:"manual",tasks:o?["heartbeats","checks","vercel","alerts"]:["heartbeats","vercel","alerts"],ok:!0,durationMs:d,checks:o?t:0}}))}async function em(e,t,a,n,{foreignKeyChecks:i=!1}={}){await e.transaction(async e=>{i||await e.execute(d.sql`set local session_replication_role = replica`);let r={db:e,seed:t,now:a,email:n};await (0,U.seedMember)(r);let s=await D(r),o=await er(r,s);await M(r,s,o.monitors);let l=await j(r,s),c=await q(r,s,l),u=await f(r,s,o,l,c);await X(r,u,c,o),await H(r,s,o,l,c,u),await V(r,s),await W(r),await G(r)})}var eh=e.i(271622),eg=e.i(666680),ef=e.i(902157),ew=e.i(750227),eA=e.i(727028),ey=e.i(372874),ek=e.i(43178),eI=e.i(369455);let ev=globalThis;async function e_(e){let a=await ey.f.create();try{return await (0,ek.f)((0,t.f)({client:a}),{migrationsFolder:e}),{blob:await a.dumpDataDir("none"),from:"process"}}finally{await a.close()}}function e$(e){return ev.__watchbellDemoTemplate=e,e.catch(()=>{ev.__watchbellDemoTemplate===e&&delete ev.__watchbellDemoTemplate}),e}function eb(){if(ev.__watchbellDemoTemplate)return ev.__watchbellDemoTemplate;let e=performance.now(),t=(0,eI.selfhostMigrationsFolder)(),a=function(e){let t=function(e=process.env){return(0,ew.resolve)((0,n.d)(e,"DEMO_SNAPSHOT_DIR")||"demo-snapshot")}();try{if(JSON.parse((0,ef.readFileSync)((0,ew.join)(t,"migrated.json"),"utf8")).migrations!==function(e){let t=(0,eg.createHash)("sha256");for(let a of["meta/_journal.json",...(0,ef.readdirSync)(e).filter(e=>e.endsWith(".sql")).sort()])t.update(`${a}\0`).update((0,ef.readFileSync)((0,ew.join)(e,a))).update("\0");return t.digest("hex")}(e))return null;return{blob:new Blob([(0,eA.gunzipSync)((0,ef.readFileSync)((0,ew.join)(t,"migrated.tar.gz")))],{type:"application/x-tar"}),from:"build"}}catch{return null}}(t),i=e$(a?Promise.resolve(a):e_(t));return i.then(t=>console.info(`demo: schema template ${"build"===t.from?"read from the build's snapshot":"migrated in this process"} in ${Math.round(performance.now()-e)} ms`),()=>void 0),i}async function eS(){let e=eb(),t=await e;try{return await ey.f.create({loadDataDir:t.blob})}catch(a){if("build"!==t.from)throw a;return ev.__watchbellDemoTemplate===e&&(console.warn(`demo: the build's migrated snapshot didn't load (${a instanceof Error?a.message:String(a)}); migrating instead`),e$(e_((0,eI.selfhostMigrationsFolder)()))),ey.f.create({loadDataDir:(await eb()).blob})}}var eT=e.i(484817);let ex=0,eD=()=>Date.now()+ex;function eM(e=process.env){let t=Number(((0,n.d)(e,"DEMO_POOL_MAX")??"").trim());return Number.isInteger(t)&&t>=1?t:3}let eE=globalThis.__watchpostDemoPool??={entries:new Map,live:new Set,waiters:new Set,creating:0,creationQueue:[]};function eO(){let e=[...eE.waiters];for(let t of(eE.waiters.clear(),e))t()}function eC(e){!e.evicted||e.leases>0||e.closing||(e.closing=e.pglite.then(e=>e.close()).catch(()=>void 0).finally(()=>{eE.live.delete(e),eO()}))}function eP(e){eE.entries.get(e.seed)===e&&eE.entries.delete(e.seed),e.evicted=!0,0===eE.entries.size&&eE.sweeper&&(clearInterval(eE.sweeper),eE.sweeper=void 0),eC(e),eO()}let ez=e=>e.created&&0===e.leases&&!e.evicted,eR=(e,t)=>ez(e)&&t-e.lastUsed>=6e4;function ej(e=eD()){for(let t of[...eE.entries.values()])ez(t)&&e-t.lastUsed>12e5&&eP(t)}async function eB(e){let t=eD()+5e3;for(;;){if(e.evicted)throw Error("The demo database was closed. Reload the page.");if(eE.live.size<eM())return void eE.live.add(e);let a=eD(),n=[...eE.entries.values()].find(e=>eR(e,a));if(n){eP(n),await n.closing;continue}let r=t-a;if(r<=0)throw o(i);await function(e){return new Promise(t=>{let a=setTimeout(n,e);function n(){clearTimeout(a),eE.waiters.delete(n),t()}eE.waiters.add(n)})}(Math.min(r,function(e){let t=1/0;for(let a of eE.entries.values())ez(a)&&(t=Math.min(t,a.lastUsed+6e4-e));return Math.max(0,t)}(a)+1))}}async function eN(){eE.creating<2?eE.creating++:await new Promise(e=>eE.creationQueue.push(e))}async function eU(e,n){let i=performance.now();if(!eT.k.take(await (0,eh.R)(),e.seed))throw o(r);await eB(e);try{let r=n??await (0,eh._)();await eN();try{let n=performance.now(),s=await eS(),o=performance.now();try{let n=(0,t.f)({client:s,schema:a});await em(n,e.seed,new Date,r)}catch(e){throw await s.close().catch(()=>void 0),e}e.created=!0;let d=(e,t)=>Math.round(t-e),l=performance.now();return console.info(`demo: visitor database ready in ${d(i,l)} ms (waited ${d(i,n)}, schema ${d(n,o)}, seed ${d(o,l)})`),s}finally{let e;(e=eE.creationQueue.shift())?e():eE.creating--}}catch(t){throw eE.live.delete(e),t}finally{eO()}}function eF(e,t){if(!e)throw Error("Demo seed missing");ej();let a=eE.entries.get(e);if(a)eE.entries.delete(e);else{let n={seed:e,created:!1,lastUsed:0,leases:0,evicted:!1};n.pglite=eU(n,t),n.pglite.catch(()=>{eE.entries.get(e)===n&&eE.entries.delete(e)}),a=n}return a.lastUsed=eD(),eE.entries.set(e,a),eE.sweeper||(eE.sweeper=setInterval(()=>ej(),6e4),eE.sweeper.unref?.()),a}async function eH(e,t,a){let n=eF(e,a);n.leases++;try{return await t(await n.pglite)}finally{n.leases--,n.lastUsed=eD(),eC(n),eO()}}async function eL(){for(let e of[...eE.entries.values()])eP(e);await Promise.all([...eE.live].map(e=>e.closing))}e.s(["BUSY_WAIT_MS",0,5e3,"DEFAULT_POOL_MAX",0,3,"DEMO_BUSY",0,i,"DEMO_TOO_MANY",0,r,"IDLE_MS",0,12e5,"MAX_CREATING",0,2,"RECENT_MS",0,6e4,"closeDemoPool",0,eL,"demoDbFor",0,function(e,t){return eF(e,t).pglite},"demoPoolMax",0,eM,"setDemoPoolClockOffsetForTests",0,function(e){if(!process.env.VITEST)throw Error("setDemoPoolClockOffsetForTests is for tests only");ex=e,eO()},"sweepIdleDemoDbs",0,ej,"withDemoDb",0,eH],907897)}];
27
27
 
28
28
  //# sourceMappingURL=src_lib_demo_pool_ts_210g_on8zx_-n._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[751263,n=>{"use strict";var t=n.i(760417);function r(n,r){return"string"==typeof n&&n!==r&&(0,t.c)(n)?n:null}let e=/^[0-9a-f]{7,40}$/i;function i(n){if(!n||"object"!=typeof n||Array.isArray(n))return null;let r="string"==typeof n.ref&&(0,t.c)(n.ref)?n.ref:null;if("string"==typeof n.ref&&!r)return null;let i="string"==typeof n.sha&&e.test(n.sha)?n.sha:null,l="string"==typeof n.at&&Number.isFinite(Date.parse(n.at))?n.at:null,o="string"==typeof n.id&&/^[A-Za-z0-9_-]{1,80}$/.test(n.id)?n.id:null,u={...i?{sha:i}:{},...l?{at:l}:{},...o?{id:o}:{}};return"git"===n.kind&&r?{kind:"git",ref:r,...u}:"cli"===n.kind?{kind:"cli",...r?{ref:r}:{},...u}:null}function l(n,e){let l=i(n?.productionSource);return l?.kind==="git"?l.ref:r(n?.productionBranch,e)??e??("string"==typeof n?.productionBranch&&(0,t.c)(n.productionBranch)?n.productionBranch:null)}function o(n,t,r){let e=i(n);if(!e)return null;let l=t??"a stale branch";return!e.at||r.getTime()-Date.parse(e.at)>18e5?`Watchbell can't confirm what production is built from (no reading in the last 30 minutes). Merging this PR could deploy ${l} to production and replace what is live.`:"cli"===e.kind?`Production was deployed from the CLI${t?`, not built from ${t}`:""}. Merging this PR would deploy ${l} to production and replace what is live.`:t&&e.ref!==t?`Production was built from ${e.ref}, not ${t}. Merging this PR would deploy ${t} to production and replace what is live.`:null}function u(n){let t=i(n?.productionSource);return t?.kind==="git"?t.ref:n?.productionBranch}n.s(["u",0,6e5,"a",0,function(n,r){let e=i(n?.productionSource),l=[];for(let i of[e?.kind==="git"?e.ref:null,n?.productionBranch,r])if(!("string"!=typeof i||!(0,t.c)(i)||l.includes(i))&&(l.push(i),i===r))break;return l},"q",0,l,"K",0,function(n){let t=i(n?.productionSource);return t?{productionSource:t}:{}},"i",0,r,"B",0,o,"g",0,function(n,t,r){let e=i(n);if(!e)return null;let u=o(n,l({productionSource:n,productionBranch:t},null),r);return{text:"git"===e.kind?`${e.ref} (git)`:e.ref?`CLI deploy (from ${e.ref})`:"CLI deploy",warning:u?`${u} Update PRs open as drafts for your approval and are never merged automatically.`:null}},"s",0,function(n){let r=n.branch&&(0,t.c)(n.branch)?n.branch:null,i=n.sha&&e.test(n.sha)?n.sha:null;return"cli"===n.source||!0===n.gitDirty||"cli"===n.branchFrom&&"git"!==n.source?{kind:"cli",...r?{ref:r}:{},...r&&i?{sha:i}:{}}:r?{kind:"git",ref:r,...i?{sha:i}:{}}:null},"O",0,i,"v",0,(n,t)=>(n?.kind??null)===(t?.kind??null)&&(n?.ref??null)===(t?.ref??null)&&(n?.sha??null)===(t?.sha??null)&&(n?.id??null)===(t?.id??null),"V",0,u,"w",0,function(n){let r=u(n),e=n?.productionBranch;return"string"==typeof e&&e!==r&&(0,t.c)(e)?e:null},"y",0,function(n,r,e=null){if(!n||"br"===e)return null;let i=/^br:([^:]+):/.exec(n);return i?(0,t.c)(i[1])?i[1]:null:r}])}];
2
+
3
+ //# sourceMappingURL=src_lib_deps_branch_ts_06dz9-7a66n24._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[852539,e=>{"use strict";var t=e.i(84877);let n=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),r=e=>Array.isArray(e)?e:[],l=e=>"string"==typeof e&&e?e:null,i=e=>/^[A-Za-z0-9][A-Za-z0-9._:-]{1,63}$/.test(e),s={CRITICAL:"critical",HIGH:"high",MODERATE:"moderate",MEDIUM:"moderate",LOW:"low"};function a(e){let t,n=/^CVSS:3\.[01]\/(.+)$/.exec(e.trim());if(!n)return null;let r={};for(let e of n[1].split("/")){let[t,n]=e.split(":");t&&n&&(r[t]=n)}let l={N:.85,A:.62,L:.55,P:.2},i={L:.77,H:.44},s={N:.85,R:.62},a={H:.56,L:.22,N:0},u="C"===r.S,o=u?{N:.85,L:.68,H:.5}:{N:.85,L:.62,H:.27};if(![l[r.AV],i[r.AC],o[r.PR],s[r.UI],a[r.C],a[r.I],a[r.A]].every(e=>"number"==typeof e)||"U"!==r.S&&"C"!==r.S)return null;let f=1-(1-a[r.C])*(1-a[r.I])*(1-a[r.A]),c=u?7.52*(f-.029)-3.25*(f-.02)**15:6.42*f,p=8.22*l[r.AV]*i[r.AC]*o[r.PR]*s[r.UI];return c<=0?0:(t=Math.round(1e5*Math.min(u?1.08*(c+p):c+p,10)))%1e4==0?t/1e5:(Math.floor(t/1e4)+1)/10}let u=e=>e>=9?"critical":e>=7?"high":e>=4?"moderate":e>0?"low":"unknown",o=(e,t)=>n(e.package)&&e.package.name===t&&"npm"===e.package.ecosystem;e.s(["S",0,20,"n",0,"https://api.osv.dev/v1/querybatch","W",0,"https://api.osv.dev/v1/vulns/","h",0,200,"f",0,function(e){let t=[];for(let n=0;n<e.length;n+=1e3)t.push({queries:e.slice(n,n+1e3).map(e=>({package:{name:e.name,ecosystem:"npm"},version:e.version}))});return t},"m",0,e=>e.find(e=>/^CVE-\d{4}-\d+$/.test(e))??null,"v",0,a,"i",0,function(e,i,s,a=new Map){let u=[];return e.forEach((e,f)=>{for(let c of i[f]??[]){let i=a.get(`${e.name}@${e.version}|${c}`);if(i){u.push({...i,dev:e.dev});continue}let f=s.get(c);f&&!f.withdrawn&&u.push({package:e.name,installedVersion:e.version,vulnId:f.id,aliases:f.aliases,severity:f.severity,fixedVersion:function(e,i,s){let a=null;for(let u of r(e))if(n(u)&&o(u,i))for(let e of r(u.ranges)){if(!n(e)||"SEMVER"!==e.type&&"ECOSYSTEM"!==e.type)continue;let i=null;for(let u of r(e.events)){if(!n(u))continue;let e=l(u.introduced),r=l(u.fixed);e?i=e:r&&null!==i?((0,t.f)(s,i)>=0&&0>(0,t.f)(s,r)&&(null===a||0>(0,t.f)(r,a))&&(a=r),i=null):(l(u.last_affected)||l(u.limit))&&(i=null)}}return a}(f.affected,e.name,e.version),summary:f.summary,dev:e.dev,source:"osv"})}}),u},"G",0,i,"O",0,function(e){if(!n(e))return null;let t=l(e.id);return t&&i(t)?{id:t,aliases:[...new Set(r(e.aliases).map(l).filter(e=>!!e&&i(e)))].slice(0,20),summary:(l(e.summary)??l(e.details)?.split(/\n/)[0]??"").replace(/\s+/g," ").trim().slice(0,200),severity:function(e){let t=n(e.database_specific)?l(e.database_specific.severity)?.toUpperCase():null;if(t&&s[t])return s[t];for(let t of r(e.severity)){if(!n(t)||"CVSS_V3"!==t.type&&"CVSS_V31"!==t.type)continue;let e=l(t.score)?a(l(t.score)):null;if(null!==e)return u(e)}return(l(e.id)??"").startsWith("MAL-")?"critical":"unknown"}(e),withdrawn:!!l(e.withdrawn),affected:e.affected}:null},"j",0,function(e,t){return n(e)&&Array.isArray(e.results)&&e.results.length===t?e.results.map(e=>n(e)?r(e.vulns).map(e=>n(e)?l(e.id):null).filter(e=>!!e&&i(e)):[]):null}])}];
2
+
3
+ //# sourceMappingURL=src_lib_deps_osv_ts_0c-lbj4hsmojx._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[120213,679662,852539,e=>{"use strict";var t=e.i(84877);let n=/^(?:@[a-z0-9][a-z0-9._~-]*\/)?[a-z0-9._~-][a-z0-9._~-]*$/i,i=/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$/,r=e=>e.length<=214&&n.test(e),s=e=>e.length<=100&&i.test(e),l=e=>"object"==typeof e&&null!==e&&!Array.isArray(e);function a(e){let t=new Map;for(let n of e){if(!r(n.name)||!s(n.version))continue;let e=`${n.name}@${n.version}`,i=t.get(e);if(i?i.dev=i.dev&&n.dev:t.set(e,{...n}),t.size>=1e4)break}return[...t.values()].sort((e,t)=>e.name===t.name?e.version<t.version?-1:1:e.name<t.name?-1:1)}function o(e){try{return JSON.parse(e)}catch{return null}}let u=e=>{let t=e.lastIndexOf("node_modules/");return t<0?null:e.slice(t+13)||null},c=e=>e.trim().replace(/^['"]|['"]$/g,""),d=e=>l(e)?Object.fromEntries(Object.entries(e).filter(e=>"string"==typeof e[1])):{};function f(e){let t=/^\s*(?:\^|~|>=|=|v)?\s*v?(\d+)(?:\.(\d+|x|\*))?(?:\.(\d+|x|\*))?(-[0-9A-Za-z.-]+)?\s*$/.exec(e);if(!t)return null;let n=e=>e&&/^\d+$/.test(e)?e:"0";return`${t[1]}.${n(t[2])}.${n(t[3])}${t[4]??""}`}e.s(["a",0,[{path:"package-lock.json",kind:"npm"},{path:"npm-shrinkwrap.json",kind:"npm"},{path:"pnpm-lock.yaml",kind:"pnpm"},{path:"yarn.lock",kind:"yarn"},{path:"bun.lock",kind:"bun"}],"e",0,function(e){let t=[],n=(e,n)=>{for(let[i,r]of Object.entries(e)){let e=f(r);e&&t.push({name:i,version:e,dev:n})}};return n(e.dependencies,!1),n(e.optionalDependencies,!1),n(e.devDependencies,!0),a(t)},"K",0,function(e){return e?new Set([...Object.keys(e.dependencies),...Object.keys(e.devDependencies),...Object.keys(e.optionalDependencies)]):new Set},"L",0,r,"C",0,s,"Y",0,f,"D",0,function(e,t){switch(e){case"npm":let n=o(t);if(!l(n))return null;let i=[];if(l(n.packages)){for(let[e,t]of Object.entries(n.packages)){if(!e||!l(t)||!0===t.link||"string"!=typeof t.version)continue;let n="string"==typeof t.name&&e.includes("node_modules/")?t.name:u(e);n&&i.push({name:n,version:t.version,dev:!0===t.dev})}return a(i)}if(l(n.dependencies)){let e=(t,n)=>{if(!(n>40))for(let[r,s]of Object.entries(t))l(s)&&("string"==typeof s.version&&i.push({name:r,version:s.version,dev:!0===s.dev}),l(s.dependencies)&&e(s.dependencies,n+1))};return e(n.dependencies,0),a(i)}return null;case"pnpm":return function(e){let t=e.split(/\r?\n/);if(!t.some(e=>/^lockfileVersion:/.test(e)))return null;let n=[],i=!1,s=null;for(let e of t){if(/^\S/.test(e)){i=/^packages:\s*$/.test(e),s=null;continue}if(!i)continue;let t=/^ {2}(\S.*?):\s*$/.exec(e);if(t){let e=function(e){let t=c(e).replace(/^\//,""),n=t.indexOf("(");n>0&&(t=t.slice(0,n));let i=t.lastIndexOf("@");if(i>0&&!t.slice(i+1).includes("/")&&r(t.slice(0,i)))return{name:t.slice(0,i),version:t.slice(i+1).split("_")[0]};let s=t.lastIndexOf("/");return s<=0?null:{name:t.slice(0,s),version:t.slice(s+1).split("_")[0]}}(t[1]);(s=e?{...e,dev:!1}:null)&&n.push(s);continue}s&&/^ {4}dev: true\s*$/.test(e)&&(s.dev=!0)}return a(n)}(t);case"yarn":return function(e){let t=e.split(/\r?\n/),n=[],i=null,r=!1;for(let e of t){if(!e.trim()||e.trimStart().startsWith("#"))continue;if(/^\S/.test(e)){let t=e.replace(/:\s*$/,"");i=t.startsWith("__metadata")||/@(?:workspace|link|portal|file):/.test(t)?null:function(e){let t=c(e),n=t.indexOf("@",+!!t.startsWith("@"));return n>0?t.slice(0,n):null}(t.split(/,\s*/)[0]),r=!0;continue}let t=/^ {2}version:?\s+"?([^"\s]+)"?\s*$/.exec(e);t&&i&&(n.push({name:i,version:t[1],dev:!1}),i=null)}return r?a(n):null}(t);case"bun":let s=o(t.replace(/,(\s*[}\]])/g,"$1"));if(!l(s)||!l(s.packages))return null;let d=[];for(let e of Object.values(s.packages)){if(!Array.isArray(e)||"string"!=typeof e[0])continue;let t=e[0],n=t.lastIndexOf("@");n<=0||d.push({name:t.slice(0,n),version:t.slice(n+1),dev:!1})}return a(d)}},"b",0,function(e){let t=o(e);return l(t)?{dependencies:d(t.dependencies),devDependencies:d(t.devDependencies),optionalDependencies:d(t.optionalDependencies)}:null}],679662);let p=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),v=e=>Array.isArray(e)?e:[],m=e=>"string"==typeof e&&e?e:null,y=e=>/^[A-Za-z0-9][A-Za-z0-9._:-]{1,63}$/.test(e),g={CRITICAL:"critical",HIGH:"high",MODERATE:"moderate",MEDIUM:"moderate",LOW:"low"},h=e=>e>=9?"critical":e>=7?"high":e>=4?"moderate":e>0?"low":"unknown",k=(e,t)=>p(e.package)&&e.package.name===t&&"npm"===e.package.ecosystem;e.s(["S",0,20,"n",0,"https://api.osv.dev/v1/querybatch","W",0,"https://api.osv.dev/v1/vulns/","h",0,200,"f",0,function(e){let t=[];for(let n=0;n<e.length;n+=1e3)t.push({queries:e.slice(n,n+1e3).map(e=>({package:{name:e.name,ecosystem:"npm"},version:e.version}))});return t},"m",0,e=>e.find(e=>/^CVE-\d{4}-\d+$/.test(e))??null,"i",0,function(e,n,i,r=new Map){let s=[];return e.forEach((e,l)=>{for(let a of n[l]??[]){let n=r.get(`${e.name}@${e.version}|${a}`);if(n){s.push({...n,dev:e.dev});continue}let l=i.get(a);l&&!l.withdrawn&&s.push({package:e.name,installedVersion:e.version,vulnId:l.id,aliases:l.aliases,severity:l.severity,fixedVersion:function(e,n,i){let r=null;for(let s of v(e))if(p(s)&&k(s,n))for(let e of v(s.ranges)){if(!p(e)||"SEMVER"!==e.type&&"ECOSYSTEM"!==e.type)continue;let n=null;for(let s of v(e.events)){if(!p(s))continue;let e=m(s.introduced),l=m(s.fixed);e?n=e:l&&null!==n?((0,t.f)(i,n)>=0&&0>(0,t.f)(i,l)&&(null===r||0>(0,t.f)(l,r))&&(r=l),n=null):(m(s.last_affected)||m(s.limit))&&(n=null)}}return r}(l.affected,e.name,e.version),summary:l.summary,dev:e.dev,source:"osv"})}}),s},"G",0,y,"O",0,function(e){if(!p(e))return null;let t=m(e.id);return t&&y(t)?{id:t,aliases:[...new Set(v(e.aliases).map(m).filter(e=>!!e&&y(e)))].slice(0,20),summary:(m(e.summary)??m(e.details)?.split(/\n/)[0]??"").replace(/\s+/g," ").trim().slice(0,200),severity:function(e){let t=p(e.database_specific)?m(e.database_specific.severity)?.toUpperCase():null;if(t&&g[t])return g[t];for(let t of v(e.severity)){if(!p(t)||"CVSS_V3"!==t.type&&"CVSS_V31"!==t.type)continue;let e=m(t.score)?function(e){let t,n=/^CVSS:3\.[01]\/(.+)$/.exec(e.trim());if(!n)return null;let i={};for(let e of n[1].split("/")){let[t,n]=e.split(":");t&&n&&(i[t]=n)}let r={N:.85,A:.62,L:.55,P:.2},s={L:.77,H:.44},l={N:.85,R:.62},a={H:.56,L:.22,N:0},o="C"===i.S,u=o?{N:.85,L:.68,H:.5}:{N:.85,L:.62,H:.27};if(![r[i.AV],s[i.AC],u[i.PR],l[i.UI],a[i.C],a[i.I],a[i.A]].every(e=>"number"==typeof e)||"U"!==i.S&&"C"!==i.S)return null;let c=1-(1-a[i.C])*(1-a[i.I])*(1-a[i.A]),d=o?7.52*(c-.029)-3.25*(c-.02)**15:6.42*c,f=8.22*r[i.AV]*s[i.AC]*u[i.PR]*l[i.UI];return d<=0?0:(t=Math.round(1e5*Math.min(o?1.08*(d+f):d+f,10)))%1e4==0?t/1e5:(Math.floor(t/1e4)+1)/10}(m(t.score)):null;if(null!==e)return h(e)}return(m(e.id)??"").startsWith("MAL-")?"critical":"unknown"}(e),withdrawn:!!m(e.withdrawn),affected:e.affected}:null},"j",0,function(e,t){return p(e)&&Array.isArray(e.results)&&e.results.length===t?e.results.map(e=>p(e)?v(e.vulns).map(e=>p(e)?m(e.id):null).filter(e=>!!e&&y(e)):[]):null}],852539);let $=["critical","high","moderate","low","unknown"],w=e=>$.indexOf(e),A=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),x=e=>"string"==typeof e&&e?e:null,V={critical:"critical",high:"high",medium:"moderate",moderate:"moderate",low:"low"},I=e=>`${e.package}@${e.installedVersion}|${e.vulnId}`;function b(e){let t={critical:0,high:0,moderate:0,low:0,unknown:0};for(let n of e)t[n.severity]++;return t}let _=e=>{let t;return!e.dev&&(w(e.severity)<=w("high")||(t=e.summary,/\bRCE\b|remote code execution/i.test(t))||"moderate"===e.severity&&!0===e.direct)};e.s(["u",0,$,"g",0,function(e){let t=e.filter(_);return t.some(e=>{let t;return"critical"===e.severity||(t=e.summary,/\bRCE\b|remote code execution/i.test(t))})?"critical":t.length?"warning":null},"L",0,function(e){let t=e.filter(_),n=[...t].sort((e,t)=>w(e.severity)-w(t.severity)||(e.package<t.package?-1:1)),i=[];for(let e of n){let t=`${e.package} ${e.installedVersion}${e.fixedVersion?` → ${e.fixedVersion}`:" (no fix yet)"}`;i.includes(t)||i.push(t)}let r=new Set(t.map(e=>e.package)).size,s=b(t),l=["critical","high","moderate","low","unknown"].filter(e=>s[e]>0).map(e=>`${s[e]} ${e}`).join(", "),a=`${r} vulnerable package${1===r?"":"s"} (${l}): ${i.slice(0,4).join(", ")}${i.length>4?`, +${i.length-4} more`:""}.`;return a.length>300?`${a.slice(0,299)}…`:a},"Z",0,b,"z",0,function(e,t,n){let i=new Set;return e.forEach((e,r)=>{for(let s of t[r]??[])n.has(`${e.name}@${e.version}|${s}`)||i.add(s)}),[...i]},"A",0,function(e,t){let n=new Map;if(t)return n;for(let t of e)t.fixedVersion&&"dependabot"!==t.source&&n.set(I(t),{package:t.package,installedVersion:t.installedVersion,vulnId:t.vulnId,aliases:t.aliases,severity:t.severity,fixedVersion:t.fixedVersion,summary:t.summary,dev:t.dev,source:"osv"});return n},"R",0,function(e,n,i){let r=[...e];for(let e of n)if(!r.some(t=>t.package===e.package&&(t.vulnId===e.ghsaId||t.aliases.includes(e.ghsaId)||null!==e.cveId&&t.aliases.includes(e.cveId)))&&e.range)for(let n of i)n.name===e.package&&function(e,n){let i=n.split(",").map(e=>e.trim()).filter(Boolean);return!!i.length&&i.every(n=>{let i=/^(<=|>=|<|>|=)\s*v?(\S+)$/.exec(n);if(!i)return!1;let r=(0,t.f)(e,i[2]);return"<"===i[1]?r<0:"<="===i[1]?r<=0:">"===i[1]?r>0:">="===i[1]?r>=0:0===r})}(n.version,e.range)&&r.push({package:e.package,installedVersion:n.version,vulnId:e.ghsaId,aliases:e.cveId?[e.cveId]:[],severity:e.severity,fixedVersion:e.fixed,summary:e.summary,dev:e.dev||n.dev,source:"dependabot"});return r},"E",0,function(e){if(!Array.isArray(e))return null;let t=[];for(let n of e){if(!A(n)||"open"!==n.state||!A(n.dependency)||!A(n.security_advisory))continue;let e=A(n.dependency.package)&&"npm"===n.dependency.package.ecosystem?x(n.dependency.package.name):null,i=x(n.security_advisory.ghsa_id);if(!e||!r(e)||!i||!y(i))continue;let s=A(n.security_vulnerability)?n.security_vulnerability:{},l=A(s.first_patched_version)?x(s.first_patched_version.identifier):null,a=x(n.security_advisory.cve_id);t.push({package:e,ghsaId:i,cveId:a&&/^CVE-\d{4}-\d+$/.test(a)?a:null,summary:(x(n.security_advisory.summary)??"").replace(/\s+/g," ").trim().slice(0,200),severity:V[(x(s.severity)??x(n.security_advisory.severity)??"").toLowerCase()]??"unknown",range:x(s.vulnerable_version_range),fixed:l&&l.length<=100?l:null,dev:"development"===n.dependency.scope})}return t},"h",0,function(e,t,n){let i=new Map(e.map(e=>[I(e),e])),r=new Set,s={insert:[],update:[],resolve:[]};for(let e of t){let t=I(e);if(r.has(t))continue;r.add(t);let l={...e,aliases:e.aliases.slice(0,20),summary:e.summary.slice(0,200),direct:n.has(e.package)},a=i.get(t);a?s.update.push({id:a.id,severity:l.severity,fixedVersion:l.fixedVersion,summary:l.summary,aliases:l.aliases,dev:l.dev,direct:l.direct}):s.insert.push(l)}return s.resolve=e.filter(e=>!r.has(I(e))).map(e=>e.id),s},"t",0,w,"U",0,function(e,t,n,i=!1){return!!i||!e||!e.scannedAt||(e.error?n.getTime()-e.scannedAt.getTime()>=72e6||e.lockfileSha!==t:e.lockfileSha!==t||!e.queriedAt||n.getTime()-e.queriedAt.getTime()>=6048e5)},"M",0,function(e){return[...e].sort((e,t)=>(e.scannedAt?.getTime()??-1)-(t.scannedAt?.getTime()??-1)||(e.id<t.id?-1:1))},"B",0,function(e){let n=new Map,i=new Set;for(let r of e){if(!r.direct||!r.fixedVersion||0>=(0,t.f)(r.fixedVersion,r.installedVersion))continue;!0!==r.dev&&i.add(r.package);let e=n.get(r.package)??{package:r.package,to:r.fixedVersion,vulnIds:[],cves:[],severity:r.severity};for(let n of((0,t.f)(r.fixedVersion,e.to)>0&&(e.to=r.fixedVersion),e.vulnIds.includes(r.vulnId)||e.vulnIds.push(r.vulnId),r.aliases))/^CVE-/.test(n)&&!e.cves.includes(n)&&e.cves.push(n);w(r.severity)<w(e.severity)&&(e.severity=r.severity),n.set(r.package,e)}for(let e of n.values())i.has(e.package)||(e.dev=!0);return[...n.values()].sort((e,t)=>w(e.severity)-w(t.severity)||(e.package<t.package?-1:1))}],120213)}];
1
+ module.exports=[120213,679662,e=>{"use strict";var n=e.i(84877);let t=/^(?:@[a-z0-9][a-z0-9._~-]*\/)?[a-z0-9._~-][a-z0-9._~-]*$/i,i=/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$/,r=e=>e.length<=214&&t.test(e),s=e=>e.length<=100&&i.test(e),l=e=>"object"==typeof e&&null!==e&&!Array.isArray(e);function a(e){let n=new Map;for(let t of e){if(!r(t.name)||!s(t.version))continue;let e=`${t.name}@${t.version}`,i=n.get(e);if(i?i.dev=i.dev&&t.dev:n.set(e,{...t}),n.size>=1e4)break}return[...n.values()].sort((e,n)=>e.name===n.name?e.version<n.version?-1:1:e.name<n.name?-1:1)}function o(e){try{return JSON.parse(e)}catch{return null}}let c=e=>{let n=e.lastIndexOf("node_modules/");return n<0?null:e.slice(n+13)||null},d=e=>e.trim().replace(/^['"]|['"]$/g,""),u=e=>l(e)?Object.fromEntries(Object.entries(e).filter(e=>"string"==typeof e[1])):{};function f(e){let n=/^\s*(?:\^|~|>=|=|v)?\s*v?(\d+)(?:\.(\d+|x|\*))?(?:\.(\d+|x|\*))?(-[0-9A-Za-z.-]+)?\s*$/.exec(e);if(!n)return null;let t=e=>e&&/^\d+$/.test(e)?e:"0";return`${n[1]}.${t(n[2])}.${t(n[3])}${n[4]??""}`}e.s(["a",0,[{path:"package-lock.json",kind:"npm"},{path:"npm-shrinkwrap.json",kind:"npm"},{path:"pnpm-lock.yaml",kind:"pnpm"},{path:"yarn.lock",kind:"yarn"},{path:"bun.lock",kind:"bun"}],"e",0,function(e){let n=[],t=(e,t)=>{for(let[i,r]of Object.entries(e)){let e=f(r);e&&n.push({name:i,version:e,dev:t})}};return t(e.dependencies,!1),t(e.optionalDependencies,!1),t(e.devDependencies,!0),a(n)},"K",0,function(e){return e?new Set([...Object.keys(e.dependencies),...Object.keys(e.devDependencies),...Object.keys(e.optionalDependencies)]):new Set},"L",0,r,"C",0,s,"Y",0,f,"D",0,function(e,n){switch(e){case"npm":let t=o(n);if(!l(t))return null;let i=[];if(l(t.packages)){for(let[e,n]of Object.entries(t.packages)){if(!e||!l(n)||!0===n.link||"string"!=typeof n.version)continue;let t="string"==typeof n.name&&e.includes("node_modules/")?n.name:c(e);t&&i.push({name:t,version:n.version,dev:!0===n.dev})}return a(i)}if(l(t.dependencies)){let e=(n,t)=>{if(!(t>40))for(let[r,s]of Object.entries(n))l(s)&&("string"==typeof s.version&&i.push({name:r,version:s.version,dev:!0===s.dev}),l(s.dependencies)&&e(s.dependencies,t+1))};return e(t.dependencies,0),a(i)}return null;case"pnpm":return function(e){let n=e.split(/\r?\n/);if(!n.some(e=>/^lockfileVersion:/.test(e)))return null;let t=[],i=!1,s=null;for(let e of n){if(/^\S/.test(e)){i=/^packages:\s*$/.test(e),s=null;continue}if(!i)continue;let n=/^ {2}(\S.*?):\s*$/.exec(e);if(n){let e=function(e){let n=d(e).replace(/^\//,""),t=n.indexOf("(");t>0&&(n=n.slice(0,t));let i=n.lastIndexOf("@");if(i>0&&!n.slice(i+1).includes("/")&&r(n.slice(0,i)))return{name:n.slice(0,i),version:n.slice(i+1).split("_")[0]};let s=n.lastIndexOf("/");return s<=0?null:{name:n.slice(0,s),version:n.slice(s+1).split("_")[0]}}(n[1]);(s=e?{...e,dev:!1}:null)&&t.push(s);continue}s&&/^ {4}dev: true\s*$/.test(e)&&(s.dev=!0)}return a(t)}(n);case"yarn":return function(e){let n=e.split(/\r?\n/),t=[],i=null,r=!1;for(let e of n){if(!e.trim()||e.trimStart().startsWith("#"))continue;if(/^\S/.test(e)){let n=e.replace(/:\s*$/,"");i=n.startsWith("__metadata")||/@(?:workspace|link|portal|file):/.test(n)?null:function(e){let n=d(e),t=n.indexOf("@",+!!n.startsWith("@"));return t>0?n.slice(0,t):null}(n.split(/,\s*/)[0]),r=!0;continue}let n=/^ {2}version:?\s+"?([^"\s]+)"?\s*$/.exec(e);n&&i&&(t.push({name:i,version:n[1],dev:!1}),i=null)}return r?a(t):null}(n);case"bun":let s=o(n.replace(/,(\s*[}\]])/g,"$1"));if(!l(s)||!l(s.packages))return null;let u=[];for(let e of Object.values(s.packages)){if(!Array.isArray(e)||"string"!=typeof e[0])continue;let n=e[0],t=n.lastIndexOf("@");t<=0||u.push({name:n.slice(0,t),version:n.slice(t+1),dev:!1})}return a(u)}},"b",0,function(e){let n=o(e);return l(n)?{dependencies:u(n.dependencies),devDependencies:u(n.devDependencies),optionalDependencies:u(n.optionalDependencies)}:null}],679662);var p=e.i(852539);let v=["critical","high","moderate","low","unknown"],m=e=>v.indexOf(e),y=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),g=e=>"string"==typeof e&&e?e:null,h={critical:"critical",high:"high",medium:"moderate",moderate:"moderate",low:"low"},k=e=>`${e.package}@${e.installedVersion}|${e.vulnId}`;function $(e){let n={critical:0,high:0,moderate:0,low:0,unknown:0};for(let t of e)n[t.severity]++;return n}let x=e=>{let n;return!e.dev&&(m(e.severity)<=m("high")||(n=e.summary,/\bRCE\b|remote code execution/i.test(n))||"moderate"===e.severity&&!0===e.direct)};e.s(["u",0,v,"g",0,function(e){let n=e.filter(x);return n.some(e=>{let n;return"critical"===e.severity||(n=e.summary,/\bRCE\b|remote code execution/i.test(n))})?"critical":n.length?"warning":null},"L",0,function(e){let n=e.filter(x),t=[...n].sort((e,n)=>m(e.severity)-m(n.severity)||(e.package<n.package?-1:1)),i=[];for(let e of t){let n=`${e.package} ${e.installedVersion}${e.fixedVersion?` → ${e.fixedVersion}`:" (no fix yet)"}`;i.includes(n)||i.push(n)}let r=new Set(n.map(e=>e.package)).size,s=$(n),l=["critical","high","moderate","low","unknown"].filter(e=>s[e]>0).map(e=>`${s[e]} ${e}`).join(", "),a=`${r} vulnerable package${1===r?"":"s"} (${l}): ${i.slice(0,4).join(", ")}${i.length>4?`, +${i.length-4} more`:""}.`;return a.length>300?`${a.slice(0,299)}…`:a},"Z",0,$,"z",0,function(e,n,t){let i=new Set;return e.forEach((e,r)=>{for(let s of n[r]??[])t.has(`${e.name}@${e.version}|${s}`)||i.add(s)}),[...i]},"A",0,function(e,n){let t=new Map;if(n)return t;for(let n of e)n.fixedVersion&&"dependabot"!==n.source&&t.set(k(n),{package:n.package,installedVersion:n.installedVersion,vulnId:n.vulnId,aliases:n.aliases,severity:n.severity,fixedVersion:n.fixedVersion,summary:n.summary,dev:n.dev,source:"osv"});return t},"R",0,function(e,t,i){let r=[...e];for(let e of t)if(!r.some(n=>n.package===e.package&&(n.vulnId===e.ghsaId||n.aliases.includes(e.ghsaId)||null!==e.cveId&&n.aliases.includes(e.cveId)))&&e.range)for(let t of i)t.name===e.package&&function(e,t){let i=t.split(",").map(e=>e.trim()).filter(Boolean);return!!i.length&&i.every(t=>{let i=/^(<=|>=|<|>|=)\s*v?(\S+)$/.exec(t);if(!i)return!1;let r=(0,n.f)(e,i[2]);return"<"===i[1]?r<0:"<="===i[1]?r<=0:">"===i[1]?r>0:">="===i[1]?r>=0:0===r})}(t.version,e.range)&&r.push({package:e.package,installedVersion:t.version,vulnId:e.ghsaId,aliases:e.cveId?[e.cveId]:[],severity:e.severity,fixedVersion:e.fixed,summary:e.summary,dev:e.dev||t.dev,source:"dependabot"});return r},"E",0,function(e){if(!Array.isArray(e))return null;let n=[];for(let t of e){if(!y(t)||"open"!==t.state||!y(t.dependency)||!y(t.security_advisory))continue;let e=y(t.dependency.package)&&"npm"===t.dependency.package.ecosystem?g(t.dependency.package.name):null,i=g(t.security_advisory.ghsa_id);if(!e||!r(e)||!i||!(0,p.G)(i))continue;let s=y(t.security_vulnerability)?t.security_vulnerability:{},l=y(s.first_patched_version)?g(s.first_patched_version.identifier):null,a=g(t.security_advisory.cve_id);n.push({package:e,ghsaId:i,cveId:a&&/^CVE-\d{4}-\d+$/.test(a)?a:null,summary:(g(t.security_advisory.summary)??"").replace(/\s+/g," ").trim().slice(0,p.h),severity:h[(g(s.severity)??g(t.security_advisory.severity)??"").toLowerCase()]??"unknown",range:g(s.vulnerable_version_range),fixed:l&&l.length<=100?l:null,dev:"development"===t.dependency.scope})}return n},"h",0,function(e,n,t){let i=new Map(e.map(e=>[k(e),e])),r=new Set,s={insert:[],update:[],resolve:[]};for(let e of n){let n=k(e);if(r.has(n))continue;r.add(n);let l={...e,aliases:e.aliases.slice(0,p.S),summary:e.summary.slice(0,p.h),direct:t.has(e.package)},a=i.get(n);a?s.update.push({id:a.id,severity:l.severity,fixedVersion:l.fixedVersion,summary:l.summary,aliases:l.aliases,dev:l.dev,direct:l.direct}):s.insert.push(l)}return s.resolve=e.filter(e=>!r.has(k(e))).map(e=>e.id),s},"t",0,m,"U",0,function(e,n,t,i=!1){return!!i||!e||!e.scannedAt||(e.error?t.getTime()-e.scannedAt.getTime()>=72e6||e.lockfileSha!==n:e.lockfileSha!==n||!e.queriedAt||t.getTime()-e.queriedAt.getTime()>=6048e5)},"M",0,function(e){return[...e].sort((e,n)=>(e.scannedAt?.getTime()??-1)-(n.scannedAt?.getTime()??-1)||(e.id<n.id?-1:1))},"B",0,function(e){let t=new Map,i=new Set;for(let r of e){if(!r.direct||!r.fixedVersion||0>=(0,n.f)(r.fixedVersion,r.installedVersion))continue;!0!==r.dev&&i.add(r.package);let e=t.get(r.package)??{package:r.package,to:r.fixedVersion,vulnIds:[],cves:[],severity:r.severity};for(let t of((0,n.f)(r.fixedVersion,e.to)>0&&(e.to=r.fixedVersion),e.vulnIds.includes(r.vulnId)||e.vulnIds.push(r.vulnId),r.aliases))/^CVE-/.test(t)&&!e.cves.includes(t)&&e.cves.push(t);m(r.severity)<m(e.severity)&&(e.severity=r.severity),t.set(r.package,e)}for(let e of t.values())i.has(e.package)||(e.dev=!0);return[...t.values()].sort((e,n)=>m(e.severity)-m(n.severity)||(e.package<n.package?-1:1))}],120213)}];
2
2
 
3
3
  //# sourceMappingURL=src_lib_deps_plan_ts_0bctf8v4qttk5._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[908480,873083,476866,e=>{"use strict";var t=e.i(336763),a=e.i(533102),n=e.i(406212),s=e.i(530298);let i=["home","hosting","database","devops","manage"],o=["hosting","database","devops"],r={vercel:"hosting",cloudflare:"hosting",supabase:"database",neon:"database",firebase:"database",turso:"database",upstash:"database",github:"devops",github_write:"devops"};function l(e){return Array.isArray(e)?i.filter(t=>"string"==typeof t&&i.includes(t)&&o.includes(t)&&e.includes(t)):[]}let u={MonitorDown:"hosting",HighLatency:"hosting",DeploymentFailed:"hosting",CertExpiringSoon:"hosting",DomainExpiringSoon:"hosting",DnsProxiedToVercel:"hosting",DatabasePaused:"database",StorageAlmostFull:"database",NeonComputeHigh:"database",FirestoreQuotaHigh:"database",AutoPauseRisk:"database",ComputeHigh:"database",DbQuotaHigh:"database",VulnerableDependency:"devops",FrameworkVulnerable:"hosting",MonitorDomainMoved:"hosting",CredentialExpiring:"account",CollectorStale:null},c=/^Log/;e.s(["D",0,r,"O",0,(e,t,a)=>{let n;if(!e.size)return!1;let s="account"===(n=u[t])?a?r[a]??null:null:void 0!==n?n:c.test(t)?"hosting":null;return null!==s&&e.has(s)},"N",0,l,"s",0,function(e){return{ruleKeys:Object.entries(u).filter(([,t])=>null!==t&&"account"!==t&&e.has(t)).map(([e])=>e),providers:Object.entries(r).filter(([,t])=>e.has(t)).map(([e])=>e)}},"I",0,e=>new Set(l(e))],873083);var d=e.i(369179);let g={checks:[3,7,14],rollupsHourly:[60,90,180],storedLogs:[3,7,14],deployments:[30,45,60,90],events:[60,90,180],alerts:[60,90,180],collectorRuns:[7,14,30],recommendationDismissals:[30,90,180]},b=Object.keys(g),h=(e,t)=>"number"==typeof t&&g[e].includes(t);async function f(e){let[a]=await (0,n.db)().select({value:s.settings.value}).from(s.settings).where((0,t.eq)(s.settings.key,e)).limit(1);return a?.value??null}let m=async()=>(function(e){let t={...d.f};if(!e||"object"!=typeof e)return t;for(let a of b){let n=e[a];h(a,n)&&(t[a]=n)}return t})(await f("retention.days")),p=()=>f("notify.language");function y(e){let t=e&&"object"==typeof e?e:null,a=t?t.lang:e,n=e=>{var n;return"string"==typeof(n=t&&e in t?t[e]:a)&&"id"===n.trim().toLowerCase()?"id":"en"};return{telegram:n("telegram"),discord:n("discord"),email:n("email")}}async function v(){try{return y(await p())}catch{return y(null)}}async function w(e="telegram"){return(await v())[e]}e.s(["l",0,p,"J",0,m,"W",0,()=>a.sql`(select ${s.settings.value} from ${s.settings} where ${s.settings.key} = ${"sections.off"})`],476866),e.s(["H",0,w,"B",0,v,"t",0,function(e,t,a){return e[t][a]}],908480)}];
1
+ module.exports=[908480,873083,476866,e=>{"use strict";var t=e.i(336763),a=e.i(533102),n=e.i(406212),s=e.i(530298);let i=["home","hosting","database","devops","manage"],o=["hosting","database","devops"],r={vercel:"hosting",cloudflare:"hosting",supabase:"database",neon:"database",firebase:"database",turso:"database",upstash:"database",github:"devops",github_write:"devops"};function l(e){return Array.isArray(e)?i.filter(t=>"string"==typeof t&&i.includes(t)&&o.includes(t)&&e.includes(t)):[]}let u={MonitorDown:"hosting",HighLatency:"hosting",DeploymentFailed:"hosting",CertExpiringSoon:"hosting",DomainExpiringSoon:"hosting",DnsProxiedToVercel:"hosting",DatabasePaused:"database",StorageAlmostFull:"database",NeonComputeHigh:"database",FirestoreQuotaHigh:"database",AutoPauseRisk:"database",ComputeHigh:"database",DbQuotaHigh:"database",VulnerableDependency:"devops",FrameworkVulnerable:"hosting",CiFailing:"devops",OsSecurityUpdate:"devops",MonitorDomainMoved:"hosting",CredentialExpiring:"account",CollectorStale:null},c=/^Log/;e.s(["D",0,r,"O",0,(e,t,a)=>{let n;if(!e.size)return!1;let s="account"===(n=u[t])?a?r[a]??null:null:void 0!==n?n:c.test(t)?"hosting":null;return null!==s&&e.has(s)},"N",0,l,"s",0,function(e){return{ruleKeys:Object.entries(u).filter(([,t])=>null!==t&&"account"!==t&&e.has(t)).map(([e])=>e),providers:Object.entries(r).filter(([,t])=>e.has(t)).map(([e])=>e)}},"I",0,e=>new Set(l(e))],873083);var d=e.i(369179);let g={checks:[3,7,14],rollupsHourly:[60,90,180],storedLogs:[3,7,14],deployments:[30,45,60,90],events:[60,90,180],alerts:[60,90,180],collectorRuns:[7,14,30],recommendationDismissals:[30,90,180]},b=Object.keys(g),h=(e,t)=>"number"==typeof t&&g[e].includes(t);async function f(e){let[a]=await (0,n.db)().select({value:s.settings.value}).from(s.settings).where((0,t.eq)(s.settings.key,e)).limit(1);return a?.value??null}let p=async()=>(function(e){let t={...d.f};if(!e||"object"!=typeof e)return t;for(let a of b){let n=e[a];h(a,n)&&(t[a]=n)}return t})(await f("retention.days")),m=()=>f("notify.language");function y(e){let t=e&&"object"==typeof e?e:null,a=t?t.lang:e,n=e=>{var n;return"string"==typeof(n=t&&e in t?t[e]:a)&&"id"===n.trim().toLowerCase()?"id":"en"};return{telegram:n("telegram"),discord:n("discord"),email:n("email")}}async function v(){try{return y(await m())}catch{return y(null)}}async function w(e="telegram"){return(await v())[e]}e.s(["l",0,m,"J",0,p,"W",0,()=>a.sql`(select ${s.settings.value} from ${s.settings} where ${s.settings.key} = ${"sections.off"})`],476866),e.s(["H",0,w,"B",0,v,"t",0,function(e,t,a){return e[t][a]}],908480)}];
2
2
 
3
3
  //# sourceMappingURL=src_lib_notify_lang_ts_1r2w02ctaky7e._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[160147,e=>{"use strict";let a=["home","hosting","database","devops","manage"],s=["hosting","database","devops"],t={vercel:"hosting",cloudflare:"hosting",supabase:"database",neon:"database",firebase:"database",turso:"database",upstash:"database",github:"devops",github_write:"devops"},o=e=>"string"==typeof e&&a.includes(e);function n(e){return Array.isArray(e)?a.filter(a=>o(a)&&s.includes(a)&&e.includes(a)):[]}let i={MonitorDown:"hosting",HighLatency:"hosting",DeploymentFailed:"hosting",CertExpiringSoon:"hosting",DomainExpiringSoon:"hosting",DnsProxiedToVercel:"hosting",DatabasePaused:"database",StorageAlmostFull:"database",NeonComputeHigh:"database",FirestoreQuotaHigh:"database",AutoPauseRisk:"database",ComputeHigh:"database",DbQuotaHigh:"database",VulnerableDependency:"devops",FrameworkVulnerable:"hosting",MonitorDomainMoved:"hosting",CredentialExpiring:"account",CollectorStale:null},r=/^Log/;e.s(["Z",0,{home:{label:"Home",holds:"Overview, Topology, Events and Provider status.",appears:"Always on."},hosting:{label:"Hosting",holds:"Applications, Deployments, Domains, DNS records, Uptime and Logs.",appears:"On from the start, so Uptime is always in the menu."},database:{label:"Database",holds:"Supabase, Neon, Firebase, Turso, Upstash Redis, Cloudflare D1, the SQL console and Free databases.",appears:"Appears when you connect Supabase, Neon, Firebase, Turso or Upstash, or once a database is watched.",keeps:"Keep active and Auto-restore keep running while it is off, so your free Supabase projects aren't paused."},devops:{label:"DevOps",holds:"Automation: GitHub repositories, their Actions runs and dependency advisories.",appears:"Appears when you connect GitHub."},manage:{label:"Manage",holds:"Connections, Alerts, Auto-actions, Sections, Settings, AI gateway, API explorer, Status page and Backups.",appears:"Always on."}},"I",0,a,"D",0,t,"b",0,{database:"Supabase, Neon, Firebase, Turso or Upstash",devops:"GitHub"},"r",0,s,"O",0,(e,a,s)=>{let o;if(!e.size)return!1;let n="account"===(o=i[a])?s?t[s]??null:null:void 0!==o?o:r.test(a)?"hosting":null;return null!==n&&e.has(n)},"N",0,n,"f",0,o,"s",0,function(e){return{ruleKeys:Object.entries(i).filter(([,a])=>null!==a&&"account"!==a&&e.has(a)).map(([e])=>e),providers:Object.entries(t).filter(([,a])=>e.has(a)).map(([e])=>e)}},"J",0,e=>new Set(n(e)),"R",0,function(e,s={}){let o=new Set(["home","hosting","manage"]);for(let a of e){let e=t[a];e&&o.add(e)}return s.databases&&o.add("database"),new Set(a.filter(e=>o.has(e)))}])}];
1
+ module.exports=[160147,e=>{"use strict";let a=["home","hosting","database","devops","manage"],s=["hosting","database","devops"],t={vercel:"hosting",cloudflare:"hosting",supabase:"database",neon:"database",firebase:"database",turso:"database",upstash:"database",github:"devops",github_write:"devops"},o=e=>"string"==typeof e&&a.includes(e);function n(e){return Array.isArray(e)?a.filter(a=>o(a)&&s.includes(a)&&e.includes(a)):[]}let i={MonitorDown:"hosting",HighLatency:"hosting",DeploymentFailed:"hosting",CertExpiringSoon:"hosting",DomainExpiringSoon:"hosting",DnsProxiedToVercel:"hosting",DatabasePaused:"database",StorageAlmostFull:"database",NeonComputeHigh:"database",FirestoreQuotaHigh:"database",AutoPauseRisk:"database",ComputeHigh:"database",DbQuotaHigh:"database",VulnerableDependency:"devops",FrameworkVulnerable:"hosting",CiFailing:"devops",OsSecurityUpdate:"devops",MonitorDomainMoved:"hosting",CredentialExpiring:"account",CollectorStale:null},r=/^Log/;e.s(["Z",0,{home:{label:"Home",holds:"Overview, Topology, Events and Provider status.",appears:"Always on."},hosting:{label:"Hosting",holds:"Applications, Deployments, Domains, DNS records, Uptime and Logs.",appears:"On from the start, so Uptime is always in the menu."},database:{label:"Database",holds:"Supabase, Neon, Firebase, Turso, Upstash Redis, Cloudflare D1, the SQL console and Free databases.",appears:"Appears when you connect Supabase, Neon, Firebase, Turso or Upstash, or once a database is watched.",keeps:"Keep active and Auto-restore keep running while it is off, so your free Supabase projects aren't paused."},devops:{label:"DevOps",holds:"Code: GitHub repositories, their Actions runs and dependency advisories. Servers and Security (self-hosted): Containers and OS vulnerabilities.",appears:"Appears when you connect GitHub; always there on a self-hosted console."},manage:{label:"Manage",holds:"Connections, Alerts, Auto-actions, Sections, Settings, AI gateway, API explorer, Status page and Backups.",appears:"Always on."}},"I",0,a,"D",0,t,"b",0,{database:"Supabase, Neon, Firebase, Turso or Upstash",devops:"GitHub"},"r",0,s,"O",0,(e,a,s)=>{let o;if(!e.size)return!1;let n="account"===(o=i[a])?s?t[s]??null:null:void 0!==o?o:r.test(a)?"hosting":null;return null!==n&&e.has(n)},"N",0,n,"f",0,o,"s",0,function(e){return{ruleKeys:Object.entries(i).filter(([,a])=>null!==a&&"account"!==a&&e.has(a)).map(([e])=>e),providers:Object.entries(t).filter(([,a])=>e.has(a)).map(([e])=>e)}},"J",0,e=>new Set(n(e)),"R",0,function(e,s={}){let o=new Set(["home","hosting","manage"]);for(let a of e){let e=t[a];e&&o.add(e)}return s.databases&&o.add("database"),s.selfhost&&o.add("devops"),new Set(a.filter(e=>o.has(e)))}])}];
2
2
 
3
3
  //# sourceMappingURL=src_lib_sections_ts_0r8u4nvlpdkgq._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[182357,84979,e=>{"use strict";var n=e.i(84877);let t={CRITICAL:4,HIGH:3,MODERATE:2,LOW:1,UNKNOWN:0};function i(e){return e.reduce((e,n)=>t[n.severity]>t[e]?n.severity:e,"UNKNOWN")}let s=e=>t[e]>=t.HIGH;function r(e){return e.reduce((e,t)=>t.fixed&&(null===e||(0,n.f)(t.fixed,e)>0)?t.fixed:e,null)}let o=e=>`${e} known vulnerabilit${1===e?"y":"ies"}`;e.s(["r",0,r,"o",0,s,"t",0,function(e,n,t){let r=new Set((n?.findings??[]).map(e=>e.id));if("vulnerable"===t.status&&t.findings.length>0){if(t.findings.every(e=>r.has(e.id)))return null;let n=i(t.findings);return{kind:s(n)?"err":"warn",message:`${e} runs Next.js ${t.version} with ${o(t.findings.length)} (${n.toLowerCase()})`,detail:t.findings.map(e=>e.id).join(", ").slice(0,1e3)}}return"ok"===t.status&&r.size>0?{kind:"ok",message:`${e} no longer has known Next.js vulnerabilities (now ${t.version})`,detail:null}:null},"I",0,function(e){return[...e].sort((e,n)=>t[n.severity]-t[e.severity]||(e.id<n.id?-1:+(e.id>n.id)))},"q",0,o,"N",0,i],84979);var l=e.i(245710);let u=e=>!!e&&e.findings.length>0,a=e=>/[.!?]$/.test(e)?e:`${e}.`;e.s(["y",0,{CRITICAL:"Critical",HIGH:"High",MODERATE:"Moderate",LOW:"Low",UNKNOWN:"Unknown"},"I",0,function(e,n){return"vulnerable"===n.status?`${e} runs Next.js ${n.version} with ${o(n.findings.length)}.`:"ok"===n.status?`No known vulnerabilities for Next.js ${n.version}.`:"unknown"===n.status?`Couldn't read the Next.js version: ${a(n.reason??"no reason given")}`:`The check failed: ${a(n.reason??"no reason given")}`},"f",0,function(e){if(!u(e))return null;let n=i(e.findings);return{label:"CVE",severe:s(n),title:`Next.js ${e.version}: ${o(e.findings.length)}, worst ${n.toLowerCase()}`}},"X",0,u,"v",0,function(e){let n=[];for(let t of e){if(t.gone||!u(t.security))continue;let e=t.security,l=i(e.findings),a=r(e.findings);n.push({key:`sec-${t.id}`,tone:s(l)?"danger":"warning",title:`${t.name} runs a vulnerable Next.js (${e.version??"unknown version"})`,body:`${o(e.findings.length)}, worst ${l.toLowerCase()}.${a?` Fixed in ${a}.`:""}`,action:{label:"Open app",href:`/apps/${t.id}`}})}return[...n.filter(e=>"danger"===e.tone),...n.filter(e=>"warning"===e.tone)]},"g",0,function(e){if(!e)return{state:"unknown",text:`Not checked yet. The daily job checks at ${(0,l.G)()}.`};if("ok"===e.status)return{state:"ok",text:`No known vulnerabilities for Next.js ${e.version}.`};let n=null!==e.version||e.findings.length>0?" Showing the result from before.":"";return"unknown"===e.status?{state:"unknown",text:`Couldn't read the Next.js version: ${a(e.reason??"no reason given")}${n}`}:"error"===e.status?{state:"warn",text:`The last check failed: ${a(e.reason??"no reason given")}${n}`}:null}],182357)}];
2
+
3
+ //# sourceMappingURL=src_lib_view_security_ts_1_c7vkcsp6y27._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[861600,294965,598513,e=>{"use strict";var r=e.i(137936),t=e.i(118558),n=e.i(600079),a=e.i(109307),o=e.i(221084),i=e.i(312573),s=e.i(323878),d=e.i(920274),u=e.i(713095);async function l(e){return(0,n.F)("owner",async r=>{if("string"!=typeof e||!(0,d.b)(e))return{ok:!1,error:"Something in that request wasn't valid."};let n=await (0,s.C)(i.t.monitorWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};let a=await (0,d.$)(e,r.userId,new Date);if(!a)return{ok:!1,error:"That note was already dismissed."};try{await (0,o.f)({kind:"ok",message:`AI note dismissed: ${a.title.slice(0,120)}`,detail:`AiNoteDismissed \xb7 from ${a.from.slice(0,60)}`,resourceId:a.appId&&(0,d.b)(a.appId)?a.appId:null,actorUserId:r.userId})}catch{console.warn("audit event failed")}return(0,t.refresh)(),{ok:!0,message:"Note dismissed."}},{requireActionMember:a.g},"local")}async function c(e){return(0,n.F)("owner",async r=>{if(!Array.isArray(e)||!e.length||e.length>d.Z||!e.every(e=>"string"==typeof e&&(0,d.b)(e)))return{ok:!1,error:"Something in that request wasn't valid."};let n=await (0,s.C)(i.t.monitorWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};let a=await (0,d.d)([...new Set(e)],r.userId,new Date);if(!a)return{ok:!1,error:"Those notes were already dismissed."};try{await (0,o.f)({kind:"ok",message:`${a} AI ${1===a?"note":"notes"} dismissed`,detail:"AiNotesDismissed",resourceId:null,actorUserId:r.userId})}catch{console.warn("audit event failed")}return(0,t.refresh)(),{ok:!0,message:1===a?"Note dismissed.":`${a} notes dismissed.`}},{requireActionMember:a.g},"local")}(0,u.ensureServerEntryExports)([l,c]),(0,r.registerServerReference)(l,"40d6e085a7dbacafe30989762d10fda9030cde91c2",null),(0,r.registerServerReference)(c,"40e1189dc743ddc755237254db535784362d085c45",null),e.s(["R",0,c,"B",0,l],861600);var f=e.i(462820),m=e.i(109336),w=e.i(86657),y=e.i(502330),g=e.i(425238);let k="That model isn't available. Pick another one or Default.";var v=e.i(918962),h=e.i(962230),p=e.i(779704);let b={ok:!1,error:"Something in that request wasn't valid."},A=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;async function I(e){return(0,n.F)("owner",async r=>{if("string"!=typeof e||!A.test(e))return b;let t=await (0,m.A)(r.id);if(t)return{ok:!1,error:t};if(!await w.f.provider())return{ok:!1,error:f.B.noProvider};let n=await w.f.appSnapshot(e,new Date);if(!n)return{ok:!1,error:"That application wasn't found."};try{let e=await w.f.complete((0,y.r)(n),{purpose:"ask-ai",maxTokens:500}),r=e.text.trim();if(!r)return{ok:!1,error:"The model returned no text. Try again."};return{ok:!0,data:{text:r,model:e.model,ms:e.ms}}}catch(e){return{ok:!1,error:(0,m.W)(e)}}},{requireActionMember:a.g},"local")}async function q(e){return(0,n.F)("owner",async r=>{if("string"!=typeof e||!A.test(e))return b;let n=await (0,m.A)(r.id);if(n)return{ok:!1,error:n};let a=new Date,i=await w.f.appSnapshot(e,a);if(!i)return{ok:!1,error:"That application wasn't found."};let s=(0,y.R)(i),d=await (0,v.c)(a);if(!d.agConnected)return d.providerReady?S({kind:"app",contextId:e,question:s,by:r.userId,askedAt:a}):{ok:!1,error:"No AI provider is connected. Connect one under AI Gateway › Bring your own key."};let u=await (0,h._)({kind:"app",contextId:e,question:s,by:r.userId,now:a});if(!u.ok)return{ok:!1,error:u.error};if(!u.reused)try{await (0,o.f)({kind:"ok",message:f.B.queuedAudit(i.id.slice(0,80)),resourceId:e,actorUserId:r.userId})}catch{console.warn("audit event failed")}return(0,t.refresh)(),{ok:!0,message:u.reused?f.B.alreadyWaiting:f.B.sentApp,data:{id:u.id,status:"pending"}}},{requireActionMember:a.g})}async function S(e){let r;try{r=await (0,v.L)(e.question,{model:e.model,now:e.askedAt})}catch(e){return console.warn("ask: provider failed:",e instanceof Error?e.name:"unknown"),{ok:!1,error:(0,m.W)(e)}}let n=await (0,h.Y)({kind:e.kind,contextId:e.contextId,question:e.question,by:e.by,askedAt:e.askedAt,answeredAt:new Date,answer:r.text,client:v.q,model:r.model});return(0,t.refresh)(),{ok:!0,message:`Answered by ${r.model} in ${(r.ms/1e3).toFixed(1)} s.`,data:{id:n.id,status:"answered",text:r.text,model:r.model,ms:r.ms}}}async function T(e,r){return(0,n.F)("owner",async n=>{let a,i=(a="string"==typeof e?e.trim():"")?a.length>2e3?{ok:!1,error:"A question can be up to 2000 characters."}:(0,g.G)(a)?{ok:!1,error:"That looks like a key or token. Remove it before sending."}:{ok:!0,question:a}:{ok:!1,error:"Type a question first."};if(!i.ok)return{ok:!1,error:i.error};let s=new Date,d=function(e,r){let t="string"==typeof e?e.trim():"";if(!t)return r.providerReady?{via:"provider"}:r.agConnected?{via:"antigravity",model:null}:{via:"none",error:"No AI provider is connected. Connect one under AI Gateway › Bring your own key."};if(t.length>200)return{via:"none",error:k};if(t.startsWith("ag/")){let e=t.slice(3);return r.agConnected&&r.agEnabled.includes(e)?{via:"antigravity",model:e}:{via:"none",error:k}}return r.agConnected&&r.agEnabled.includes(t)?{via:"antigravity",model:t}:{via:"provider",model:t}}(r,await (0,v.c)(s));if("none"===d.via)return{ok:!1,error:d.error};let u=await (0,m.A)(n.id);if(u)return{ok:!1,error:u};if("provider"===d.via)return S({kind:"general",contextId:null,question:i.question,by:n.userId,askedAt:s,model:d.model});let l=d.model,c=await (0,h._)({kind:"general",contextId:null,question:i.question,by:n.userId,now:s,model:l});if(!c.ok)return{ok:!1,error:c.error};if(!c.reused)try{await (0,o.f)({kind:"ok",message:f.B.queuedAudit("general"),resourceId:null,actorUserId:n.userId})}catch{console.warn("audit event failed")}return(0,t.refresh)(),{ok:!0,message:c.reused?f.B.alreadyWaiting:f.B.sentGeneral,data:{id:c.id,status:"pending"}}},{requireActionMember:a.g})}async function x(e){return(0,n.F)("owner",async r=>{if("string"!=typeof e||!A.test(e))return b;let t=await (0,h.F)(e,r.userId,new Date);return t?{ok:!0,data:{status:t.status,answer:t.answer,model:t.model??t.requestedModel,answeredAt:t.answeredAt?t.answeredAt.toISOString():null}}:{ok:!1,error:"That question wasn't found. It may have been cleaned up."}},{requireActionMember:a.g})}async function $(){return(0,n.F)("owner",async e=>{let r=await (0,m.A)(e.id);if(r)return{ok:!1,error:r};try{let e=await (0,p.E)(new Date,{force:!0});if("no-provider"===e.status)return{ok:!1,error:"No AI provider is connected."};if("empty"===e.status)return{ok:!1,error:"There are no recommendations to summarise."}}catch(e){return{ok:!1,error:(0,m.W)(e)}}return(0,t.refresh)(),{ok:!0,message:"Summary updated."}},{requireActionMember:a.g})}(0,u.ensureServerEntryExports)([I,q,T,x,$]),(0,r.registerServerReference)(I,"4089ec00f7455d966137fbcd1ad12114aa1937e9bf",null),(0,r.registerServerReference)(q,"40487004821d9fd78750c3cc1ac1949e8150ac442f",null),(0,r.registerServerReference)(T,"609f0e1891e6795515cf830ba0b2f89bd728db89f1",null),(0,r.registerServerReference)(x,"40bcdb3eabf879ab764bb03c210e33a976f8370caf",null),(0,r.registerServerReference)($,"00a4863b2759313b43afeff3df0a62d47e66017335",null),e.s(["G",0,q,"B",0,T,"T",0,I,"P",0,x,"E",0,$],294965);var R=e.i(94473),F=e.i(188282);let C={requireActionMember:e=>(0,a.g)(e)};async function B(e){return(0,n.F)("owner",async r=>{let n=await (0,s.C)(i.t.alertWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};try{let n=await (0,R.m)(e,r);(0,t.revalidatePath)("/settings");let a=Object.keys(e??{}),o=1===a.length&&F.H[a[0]]?.risk==="safe"?`${F.H[a[0]].label}: auto-run ${n[a[0]]?"on":"off"}.`:f.X.autoRunSaved;return{ok:!0,message:o,data:n}}catch(e){if(e instanceof R.s)return{ok:!1,error:"Something in that request wasn't valid."};throw e}},C,"local")}async function D(e){return(0,n.F)("owner",async r=>{let n=await (0,s.C)(i.t.alertWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};try{let n=await (0,R.C)(e,r);return(0,t.revalidatePath)("/settings"),{ok:!0,message:`Auto-rollback ${n.enabled?"on":"off"} \xb7 first ${n.windowMin} minutes.`,data:n}}catch(e){if(e instanceof R.s)return{ok:!1,error:"Something in that request wasn't valid."};throw e}},C,"local")}async function E(e){return(0,n.F)("owner",async r=>{let n=await (0,s.C)(i.t.alertWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};try{let n=await (0,R.o)(e,r);return(0,t.revalidatePath)("/settings"),{ok:!0,message:`Automatic security fixes ${n.enabled?"on":"off"}.`,data:n}}catch(e){if(e instanceof R.s)return{ok:!1,error:"Something in that request wasn't valid."};throw e}},C,"local")}(0,u.ensureServerEntryExports)([B,D,E]),(0,r.registerServerReference)(B,"4040c40df6935ec6abb9fc2908703979ec9501cf05",null),(0,r.registerServerReference)(D,"406da08263fcff6d3dfa6749c103f2e3991b282d4c",null),(0,r.registerServerReference)(E,"401ff14fa6430391d5b50044d749bd30ec1f181c47",null),e.s(["G",0,D,"m",0,B,"F",0,E],598513)}];
1
+ module.exports=[861600,294965,598513,e=>{"use strict";var r=e.i(137936),t=e.i(118558),n=e.i(600079),a=e.i(109307),o=e.i(221084),i=e.i(312573),s=e.i(323878),d=e.i(920274),u=e.i(713095);async function l(e){return(0,n.F)("owner",async r=>{if("string"!=typeof e||!(0,d.b)(e))return{ok:!1,error:"Something in that request wasn't valid."};let n=await (0,s.C)(i.t.monitorWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};let a=await (0,d.$)(e,r.userId,new Date);if(!a)return{ok:!1,error:"That note was already dismissed."};try{await (0,o.f)({kind:"ok",message:`AI note dismissed: ${a.title.slice(0,120)}`,detail:`AiNoteDismissed \xb7 from ${a.from.slice(0,60)}`,resourceId:a.appId&&(0,d.b)(a.appId)?a.appId:null,actorUserId:r.userId})}catch{console.warn("audit event failed")}return(0,t.refresh)(),{ok:!0,message:"Note dismissed."}},{requireActionMember:a.g},"local")}async function c(e){return(0,n.F)("owner",async r=>{if(!Array.isArray(e)||!e.length||e.length>d.Z||!e.every(e=>"string"==typeof e&&(0,d.b)(e)))return{ok:!1,error:"Something in that request wasn't valid."};let n=await (0,s.C)(i.t.monitorWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};let a=await (0,d.d)([...new Set(e)],r.userId,new Date);if(!a)return{ok:!1,error:"Those notes were already dismissed."};try{await (0,o.f)({kind:"ok",message:`${a} AI ${1===a?"note":"notes"} dismissed`,detail:"AiNotesDismissed",resourceId:null,actorUserId:r.userId})}catch{console.warn("audit event failed")}return(0,t.refresh)(),{ok:!0,message:1===a?"Note dismissed.":`${a} notes dismissed.`}},{requireActionMember:a.g},"local")}(0,u.ensureServerEntryExports)([l,c]),(0,r.registerServerReference)(l,"4035940c10c8b13b54c2e286ddbf2cb45f4a8383e9",null),(0,r.registerServerReference)(c,"4022d2901d63f206a8bd1d2ab60a96d5cd16dd97b6",null),e.s(["R",0,c,"B",0,l],861600);var f=e.i(462820),m=e.i(109336),w=e.i(86657),y=e.i(502330),g=e.i(425238);let k="That model isn't available. Pick another one or Default.";var v=e.i(918962),b=e.i(962230),h=e.i(779704);let p={ok:!1,error:"Something in that request wasn't valid."},A=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;async function I(e){return(0,n.F)("owner",async r=>{if("string"!=typeof e||!A.test(e))return p;let t=await (0,m.A)(r.id);if(t)return{ok:!1,error:t};if(!await w.f.provider())return{ok:!1,error:f.B.noProvider};let n=await w.f.appSnapshot(e,new Date);if(!n)return{ok:!1,error:"That application wasn't found."};try{let e=await w.f.complete((0,y.r)(n),{purpose:"ask-ai",maxTokens:500}),r=e.text.trim();if(!r)return{ok:!1,error:"The model returned no text. Try again."};return{ok:!0,data:{text:r,model:e.model,ms:e.ms}}}catch(e){return{ok:!1,error:(0,m.W)(e)}}},{requireActionMember:a.g},"local")}async function q(e){return(0,n.F)("owner",async r=>{if("string"!=typeof e||!A.test(e))return p;let n=await (0,m.A)(r.id);if(n)return{ok:!1,error:n};let a=new Date,i=await w.f.appSnapshot(e,a);if(!i)return{ok:!1,error:"That application wasn't found."};let s=(0,y.R)(i),d=await (0,v.c)(a);if(!d.agConnected)return d.providerReady?S({kind:"app",contextId:e,question:s,by:r.userId,askedAt:a}):{ok:!1,error:"No AI provider is connected. Connect one under AI Gateway › Bring your own key."};let u=await (0,b._)({kind:"app",contextId:e,question:s,by:r.userId,now:a});if(!u.ok)return{ok:!1,error:u.error};if(!u.reused)try{await (0,o.f)({kind:"ok",message:f.B.queuedAudit(i.id.slice(0,80)),resourceId:e,actorUserId:r.userId})}catch{console.warn("audit event failed")}return(0,t.refresh)(),{ok:!0,message:u.reused?f.B.alreadyWaiting:f.B.sentApp,data:{id:u.id,status:"pending"}}},{requireActionMember:a.g})}async function S(e){let r;try{r=await (0,v.L)(e.question,{model:e.model,now:e.askedAt})}catch(e){return console.warn("ask: provider failed:",e instanceof Error?e.name:"unknown"),{ok:!1,error:(0,m.W)(e)}}let n=await (0,b.Y)({kind:e.kind,contextId:e.contextId,question:e.question,by:e.by,askedAt:e.askedAt,answeredAt:new Date,answer:r.text,client:v.q,model:r.model});return(0,t.refresh)(),{ok:!0,message:`Answered by ${r.model} in ${(r.ms/1e3).toFixed(1)} s.`,data:{id:n.id,status:"answered",text:r.text,model:r.model,ms:r.ms}}}async function T(e,r){return(0,n.F)("owner",async n=>{let a,i=(a="string"==typeof e?e.trim():"")?a.length>2e3?{ok:!1,error:"A question can be up to 2000 characters."}:(0,g.G)(a)?{ok:!1,error:"That looks like a key or token. Remove it before sending."}:{ok:!0,question:a}:{ok:!1,error:"Type a question first."};if(!i.ok)return{ok:!1,error:i.error};let s=new Date,d=function(e,r){let t="string"==typeof e?e.trim():"";if(!t)return r.providerReady?{via:"provider"}:r.agConnected?{via:"antigravity",model:null}:{via:"none",error:"No AI provider is connected. Connect one under AI Gateway › Bring your own key."};if(t.length>200)return{via:"none",error:k};if(t.startsWith("ag/")){let e=t.slice(3);return r.agConnected&&r.agEnabled.includes(e)?{via:"antigravity",model:e}:{via:"none",error:k}}return r.agConnected&&r.agEnabled.includes(t)?{via:"antigravity",model:t}:{via:"provider",model:t}}(r,await (0,v.c)(s));if("none"===d.via)return{ok:!1,error:d.error};let u=await (0,m.A)(n.id);if(u)return{ok:!1,error:u};if("provider"===d.via)return S({kind:"general",contextId:null,question:i.question,by:n.userId,askedAt:s,model:d.model});let l=d.model,c=await (0,b._)({kind:"general",contextId:null,question:i.question,by:n.userId,now:s,model:l});if(!c.ok)return{ok:!1,error:c.error};if(!c.reused)try{await (0,o.f)({kind:"ok",message:f.B.queuedAudit("general"),resourceId:null,actorUserId:n.userId})}catch{console.warn("audit event failed")}return(0,t.refresh)(),{ok:!0,message:c.reused?f.B.alreadyWaiting:f.B.sentGeneral,data:{id:c.id,status:"pending"}}},{requireActionMember:a.g})}async function x(e){return(0,n.F)("owner",async r=>{if("string"!=typeof e||!A.test(e))return p;let t=await (0,b.F)(e,r.userId,new Date);return t?{ok:!0,data:{status:t.status,answer:t.answer,model:t.model??t.requestedModel,answeredAt:t.answeredAt?t.answeredAt.toISOString():null}}:{ok:!1,error:"That question wasn't found. It may have been cleaned up."}},{requireActionMember:a.g})}async function $(){return(0,n.F)("owner",async e=>{let r=await (0,m.A)(e.id);if(r)return{ok:!1,error:r};try{let e=await (0,h.E)(new Date,{force:!0});if("no-provider"===e.status)return{ok:!1,error:"No AI provider is connected."};if("empty"===e.status)return{ok:!1,error:"There are no recommendations to summarise."}}catch(e){return{ok:!1,error:(0,m.W)(e)}}return(0,t.refresh)(),{ok:!0,message:"Summary updated."}},{requireActionMember:a.g})}(0,u.ensureServerEntryExports)([I,q,T,x,$]),(0,r.registerServerReference)(I,"40aeebbb6a147a0a03105323f1aa07f834b2ba81ab",null),(0,r.registerServerReference)(q,"40a2b7910bf5613049d5fe66e9f1f92cf38a0c3bba",null),(0,r.registerServerReference)(T,"600730c7e8d0d7d8f8579f514dfe059c45014218db",null),(0,r.registerServerReference)(x,"400d04748bd8331f6c57be7336eeb56251f4985d24",null),(0,r.registerServerReference)($,"0036f299b84702137d0e1804d2180086625225dfa3",null),e.s(["G",0,q,"B",0,T,"T",0,I,"P",0,x,"E",0,$],294965);var R=e.i(94473),F=e.i(188282);let C={requireActionMember:e=>(0,a.g)(e)};async function B(e){return(0,n.F)("owner",async r=>{let n=await (0,s.C)(i.t.alertWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};try{let n=await (0,R.m)(e,r);(0,t.revalidatePath)("/settings");let a=Object.keys(e??{}),o=1===a.length&&F.H[a[0]]?.risk==="safe"?`${F.H[a[0]].label}: auto-run ${n[a[0]]?"on":"off"}.`:f.X.autoRunSaved;return{ok:!0,message:o,data:n}}catch(e){if(e instanceof R.s)return{ok:!1,error:"Something in that request wasn't valid."};throw e}},C,"local")}async function D(e){return(0,n.F)("owner",async r=>{let n=await (0,s.C)(i.t.alertWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};try{let n=await (0,R.C)(e,r);return(0,t.revalidatePath)("/settings"),{ok:!0,message:`Auto-rollback ${n.enabled?"on":"off"} \xb7 first ${n.windowMin} minutes.`,data:n}}catch(e){if(e instanceof R.s)return{ok:!1,error:"Something in that request wasn't valid."};throw e}},C,"local")}async function E(e){return(0,n.F)("owner",async r=>{let n=await (0,s.C)(i.t.alertWrite,r.id);if(!n.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,i.H)(n.retryAfter)}.`};try{let n=await (0,R.o)(e,r);return(0,t.revalidatePath)("/settings"),{ok:!0,message:`Automatic security fixes ${n.enabled?"on":"off"}.`,data:n}}catch(e){if(e instanceof R.s)return{ok:!1,error:"Something in that request wasn't valid."};throw e}},C,"local")}(0,u.ensureServerEntryExports)([B,D,E]),(0,r.registerServerReference)(B,"40d41e8bd8f26c3b95b08307130717fa40ca6dffc0",null),(0,r.registerServerReference)(D,"40a6c18a41155fbbf266df357786ef200b826ada93",null),(0,r.registerServerReference)(E,"409915cee1f50c660878fea67a05e33d5f1726cdfa",null),e.s(["G",0,D,"m",0,B,"F",0,E],598513)}];
2
2
 
3
3
  //# sourceMappingURL=src_private_notes_notes-actions_ts_1g63g8u965fhc._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[271997,a=>{"use strict";var b=a.i(903769),c=a.i(760937),d=a.i(861600),e=a.i(294965),f=a.i(598513),g=a.i(929941),h=a.i(137936),i=a.i(118558),j=a.i(379416),k=a.i(427221),l=a.i(600079),m=a.i(109307),n=a.i(411350),o=a.i(249431),p=a.i(713095);let q={requireActionMember:m.g},r="That agent is already gone. It reappears with its next request.";async function s(a,b){return(0,l.F)("owner",async c=>{let d=j.z.uuid().safeParse(a);if(!d.success)return{ok:!1,error:r};let e=k.z.string().trim().regex(o.p).safeParse(b);return e.success?await (0,n.o)(d.data,e.data,c.id)?((0,i.revalidatePath)("/ai/agents"),{ok:!0,message:e.data?"Agent renamed.":"Agent name reset."}):{ok:!1,error:r}:{ok:!1,error:"Check the highlighted fields.",fieldErrors:{name:"Use up to 40 letters, digits, spaces, dots, dashes or underscores."}}},q,"local")}async function t(a){return(0,l.F)("owner",async b=>{let c=j.z.uuid().safeParse(a);return c.success&&await (0,n.U)(c.data,b.id)?((0,i.revalidatePath)("/ai/agents"),{ok:!0,message:"Agent forgotten. It reappears with its next request."}):{ok:!1,error:r}},q,"local")}(0,p.ensureServerEntryExports)([s,t]),(0,h.registerServerReference)(s,"60f3def355e29e845f060f207760be662703d939f3",null),(0,h.registerServerReference)(t,"4061bd56e8a36cbbde27b714c9be7385eb33f52f3a",null),a.s(["003ab1931030324d4cb2fbd394c9db5154e22aac82",()=>c.f,"006cea3d9937b620c316d1469c81fc1117d96a8bef",()=>g.f,"00a4863b2759313b43afeff3df0a62d47e66017335",()=>e.E,"00ab4542a2cda573adf3ba39329a67751a4d7b2c2a",()=>b.f,"401ff14fa6430391d5b50044d749bd30ec1f181c47",()=>f.F,"4040c40df6935ec6abb9fc2908703979ec9501cf05",()=>f.m,"40487004821d9fd78750c3cc1ac1949e8150ac442f",()=>e.G,"4061bd56e8a36cbbde27b714c9be7385eb33f52f3a",0,t,"406da08263fcff6d3dfa6749c103f2e3991b282d4c",()=>f.G,"4089ec00f7455d966137fbcd1ad12114aa1937e9bf",()=>e.T,"40d6e085a7dbacafe30989762d10fda9030cde91c2",()=>d.B,"40e1189dc743ddc755237254db535784362d085c45",()=>d.R,"60f3def355e29e845f060f207760be662703d939f3",0,s],271997)}];
1
+ module.exports=[271997,a=>{"use strict";var b=a.i(903769),c=a.i(760937),d=a.i(861600),e=a.i(294965),f=a.i(598513),g=a.i(929941),h=a.i(137936),i=a.i(118558),j=a.i(379416),k=a.i(427221),l=a.i(600079),m=a.i(109307),n=a.i(411350),o=a.i(249431),p=a.i(713095);let q={requireActionMember:m.g},r="That agent is already gone. It reappears with its next request.";async function s(a,b){return(0,l.F)("owner",async c=>{let d=j.z.uuid().safeParse(a);if(!d.success)return{ok:!1,error:r};let e=k.z.string().trim().regex(o.p).safeParse(b);return e.success?await (0,n.o)(d.data,e.data,c.id)?((0,i.revalidatePath)("/ai/agents"),{ok:!0,message:e.data?"Agent renamed.":"Agent name reset."}):{ok:!1,error:r}:{ok:!1,error:"Check the highlighted fields.",fieldErrors:{name:"Use up to 40 letters, digits, spaces, dots, dashes or underscores."}}},q,"local")}async function t(a){return(0,l.F)("owner",async b=>{let c=j.z.uuid().safeParse(a);return c.success&&await (0,n.U)(c.data,b.id)?((0,i.revalidatePath)("/ai/agents"),{ok:!0,message:"Agent forgotten. It reappears with its next request."}):{ok:!1,error:r}},q,"local")}(0,p.ensureServerEntryExports)([s,t]),(0,h.registerServerReference)(s,"6073b7c8878702e43f5e4b501463f27c7c8b2e36f8",null),(0,h.registerServerReference)(t,"40b4be9b32132e6961d52903106b98fa986a0adba0",null),a.s(["0036f299b84702137d0e1804d2180086625225dfa3",()=>e.E,"0044f25e033351520c508c000dd193d3fac544db13",()=>g.f,"008b6dbed199d0deb40e431c4e4f3d7746a8c4835f",()=>b.f,"00cdf27638ef84151abef7867f4992c441c8a9dc0b",()=>c.f,"4022d2901d63f206a8bd1d2ab60a96d5cd16dd97b6",()=>d.R,"4035940c10c8b13b54c2e286ddbf2cb45f4a8383e9",()=>d.B,"409915cee1f50c660878fea67a05e33d5f1726cdfa",()=>f.F,"40a2b7910bf5613049d5fe66e9f1f92cf38a0c3bba",()=>e.G,"40a6c18a41155fbbf266df357786ef200b826ada93",()=>f.G,"40aeebbb6a147a0a03105323f1aa07f834b2ba81ab",()=>e.T,"40b4be9b32132e6961d52903106b98fa986a0adba0",0,t,"40d41e8bd8f26c3b95b08307130717fa40ca6dffc0",()=>f.m,"6073b7c8878702e43f5e4b501463f27c7c8b2e36f8",0,s],271997)}];
2
2
 
3
3
  //# sourceMappingURL=1oeh_server_app_%28console%29_%28private%29_ai_agents_page_actions_21atz5tidps07.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[673841,a=>{"use strict";var b=a.i(903769),c=a.i(760937),d=a.i(861600),e=a.i(294965),f=a.i(598513),g=a.i(929941),h=a.i(804224),i=a.i(137936),j=a.i(118558),k=a.i(600079),l=a.i(109307),m=a.i(221084),n=a.i(683439),o=a.i(245710),p=a.i(312573),q=a.i(323878),r=a.i(93321),s=a.i(548734),t=a.i(61017),u=a.i(142754),v=a.i(337830),w=a.i(711672),x=a.i(208683);async function y(a,b,c,d,e=Date.now){let f=Array(a.length).fill(void 0),g=0,h=async()=>{for(;;){let b=g++;if(b>=a.length)return;let h=c-e();if(h<5e3)return;f[b]=await d(a[b],h)}};return await Promise.all(Array.from({length:Math.max(1,Math.min(b,a.length))},h)),f}async function z(a,b,c,d="Watchbell console (model test)"){var e,f;let g=Date.now(),h=await (0,v.K)(a,b.upstream,Math.min(45e3,c),512),i=h.ok?{ok:!0,ms:h.ms,at:new Date().toISOString()}:{ok:!1,ms:Date.now()-g,status:h.status,error:(e=h.status,f=h.errorClass,404===e?"model not found (404)":401===e?"key rejected (401)":403===e?"refused (403)":429===e?"rate limited (429)":400===e?"bad request (400)":408===e||/timeout/i.test(f)?"timed out":0===e?"unreachable":e>=500?`server error (${e})`:`failed (${e})`),at:new Date().toISOString()};return await (0,t.h)({at:new Date(g),keyId:null,client:{...t.q,userAgent:d},providerId:a.id,model:(0,x.q)(a,b),kind:"models",tool:null,tokensIn:null,tokensOut:null,latencyMs:i.ms,status:h.ok?200:h.status||502,errorClass:h.ok?null:`test \xb7 ${h.errorClass}`.slice(0,120),stream:!1},[]).catch(()=>{console.warn("model test usage not recorded")}),i}async function A(a,b,c=Date.now()){var d;let e,f=(await (0,w.J)(c,!0)).find(b=>b.id===a);if(!f)return{ok:!1,error:"That connection no longer exists, or its key can't be read."};let g=null===b?(d=f.models.filter(a=>!a.removed),e=a=>a.lastTest?Date.parse(a.lastTest.at)||0:-1,[...d].sort((a,b)=>e(a)-e(b))):f.models.filter(a=>b.includes(a.id));if(0===g.length)return{ok:!1,error:"That model isn't on this connection's list. Refresh the models first."};let h=(await y(g,4,c+5e4,async(a,b)=>({id:a.id,test:await z(f,a,b)}))).filter(a=>!!a);if(h.length){let b=(await (0,w.J)(Date.now(),!0)).find(b=>b.id===a);if(b){let c=new Map(h.map(a=>[a.id,a.test])),d=b.models.map(a=>c.has(a.id)?{...a,lastTest:c.get(a.id)}:a);await (0,s.f)().update(u.f).set({models:d,updatedAt:new Date}).where((0,r.u)(u.f.id,a)),(0,w.t)()}}return{ok:!0,tested:h,skipped:g.length-h.length}}var B=a.i(484458),C=a.i(330863),D=a.i(263972),E=a.i(777302),F=a.i(713095);let G="Something in that request wasn't valid.",H=async(a,b)=>{try{await (0,m.f)({kind:"ok",message:a,resourceId:null,actorUserId:b})}catch{console.warn("audit event failed")}};async function I(a,b,c){return(0,k.F)("owner",async d=>{if(!(0,n.f)(a)||"string"!=typeof b||b.length<1||b.length>200||"boolean"!=typeof c)return{ok:!1,error:G};let e=await (0,q.C)(p.t.alertWrite,d.id);if(!e.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,p.H)(e.retryAfter)}.`};let f=await (0,E.V)(a,b,c);return f.ok?(await H(`AI model ${c?"enabled":"disabled"}: ${b}`,d.userId),(0,j.refresh)(),{ok:!0,message:`${b} is ${c?"on":"off"}. Takes effect on the next request.`}):{ok:!1,error:f.error}},{requireActionMember:l.g})}async function J(a){return(0,k.F)("owner",async b=>{if("string"!=typeof a||a.length>240)return{ok:!1,error:G};let c=await (0,q.C)(p.t.alertWrite,b.id);if(!c.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,p.H)(c.retryAfter)}.`};let{rows:d}=await (0,D.Y)(),e=d.find(b=>b.publicId===a);return e&&e.enabled&&e.providerEnabled?(await (0,D.z)(a,new Date),await H(`AI default model: ${a}`,b.userId),(0,j.refresh)(),{ok:!0,message:`${a} is now the default model.`}):{ok:!1,error:"Turn the model on first."}},{requireActionMember:l.g})}async function K(){return(0,k.F)("owner",async a=>{let b=await (0,q.C)(p.t.refresh,a.id);if(!b.allowed)return{ok:!1,error:`Too many refreshes. Try again in ${(0,p.H)(b.retryAfter)}.`};let{providers:c}=await (0,D.Y)(),d=c.filter(a=>a.enabled);if(0===d.length)return{ok:!1,error:"No provider is connected."};let e=0;for(let a of d)try{!(await (0,E.D)(a.id)).ok&&e++}catch{e++}return(0,j.refresh)(),e===d.length?{ok:!1,error:"No provider answered. Check the connection under Bring your own key."}:{ok:!0,message:e?`Asked ${d.length-e} of ${d.length} providers for their model list.`:`Asked ${d.length} provider${1===d.length?"":"s"} for the model list.`}},{requireActionMember:l.g})}async function L(){return(0,k.F)("owner",async a=>{let b=await (0,q.C)(p.t.credential,a.id);if(!b.allowed)return{ok:!1,error:`Too many syncs. Try again in ${(0,p.H)(b.retryAfter)}.`};let c=Date.now(),d=await (0,B.X)(new Date(c),c+5e4);if((0,j.refresh)(),!d)return{ok:!1,error:"The sync stopped with an error. Try again."};if(0===d.conns.length)return{ok:!1,error:"No custom server is connected and on."};let e=d.conns.find(a=>!a.ok);if(e&&d.conns.every(a=>!a.ok))return{ok:!1,error:`${e.name}: ${e.error??"the sync failed"}.`};let f=d.summary,g=[`${f.listed} listed`,f.added&&`${f.added} new`,f.removed&&`${f.removed} removed`,f.returned&&`${f.returned} back`,`${f.tested} tested`,f.ready&&`${f.ready} turned on`].filter(Boolean);return{ok:!0,message:`Synced: ${g.join(", ")}.${d.pending?" Some new models wait for their test; the next run comes within minutes.":""}`}},{requireActionMember:l.g})}async function M(a,b){return(0,k.F)("owner",async c=>{if(!(0,n.f)(a)||null!==b&&("string"!=typeof b||b.length<1||b.length>200))return{ok:!1,error:G};let d=await (0,q.C)(p.t.credential,c.id);if(!d.allowed)return{ok:!1,error:`Too many tests. Try again in ${(0,p.H)(d.retryAfter)}.`};let e=await A(a,null===b?null:[b]);if(!e.ok)return{ok:!1,error:e.error};(0,j.refresh)();let f=e.tested.filter(a=>a.test.ok).length,g={tested:e.tested.length,working:f,skipped:e.skipped};if(null!==b){let a=e.tested[0]?.test;return a?.ok?{ok:!0,message:`${b} works (${(a.ms/1e3).toFixed(1)} s).`,data:g}:{ok:!1,error:`${b}: ${a?.error??"not tested"}.`}}return{ok:!0,message:`${f} of ${e.tested.length} model${1===e.tested.length?"":"s"} answered.${e.skipped?` ${e.skipped} not tested yet: run Scan all again.`:""}`,data:g}},{requireActionMember:l.g})}async function N(a,b){return M(a,"string"==typeof b?b:"")}async function O(a){return M(a,null)}async function P(a,b){return(0,k.F)("owner",async c=>{if("boolean"!=typeof a||null!==b&&("string"!=typeof b||b.length<1||b.length>200))return{ok:!1,error:G};let d=await (0,q.C)(p.t.alertWrite,c.id);if(!d.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,p.H)(d.retryAfter)}.`};if(null!==b){let{rows:a}=await (0,D.Y)();if(!a.some(a=>a.publicId===b&&a.enabled&&a.providerEnabled))return{ok:!1,error:"Turn the model on first."}}return await (0,C.C)({enabled:a,model:b}),await H(`AI advisor notes ${a?"on":"off"}${b?` \xb7 ${b}`:""}`,c.userId),(0,j.refresh)(),{ok:!0,message:a?`Advisor notes are on (${b??"default model"}), at 07:00 and 19:00 ${(0,o.D)()}.`:"Advisor notes are off."}},{requireActionMember:l.g})}async function Q(){return(0,k.F)("owner",async a=>{let b=await (0,q.C)(p.t.credential,a.id);if(!b.allowed)return{ok:!1,error:`Too many runs. Try again in ${(0,p.H)(b.retryAfter)}.`};try{let a=await (0,C.K)(new Date,{force:!0,deadlineMs:45e3});if("skipped"===a.status){let b="no-provider"===a.reason?"No AI provider is connected.":"no-apps"===a.reason?"No watched app to write about.":"The model's answer had no usable note. Try again.";return{ok:!1,error:b}}return(0,j.refresh)(),{ok:!0,message:`${a.count} advisor note${1===a.count?"":"s"} written by ${a.model}.`,data:{count:a.count}}}catch(a){return{ok:!1,error:a instanceof Error&&"GatewayError"===a.name?a.message.slice(0,300):a instanceof Error&&"advisor deadline"===a.message?"The provider took too long. Try again.":"The AI provider couldn't answer. Try again."}}},{requireActionMember:l.g})}(0,F.ensureServerEntryExports)([I,J,K,L,N,O,P,Q]),(0,i.registerServerReference)(I,"706b76a40c48dfbe400b576c34157ead579c52813a",null),(0,i.registerServerReference)(J,"401a986de7c91501e4a35bb59e265a7e0ae092ada8",null),(0,i.registerServerReference)(K,"00c0a38b180ad67b40945cd431f19bb78fcef5f514",null),(0,i.registerServerReference)(L,"00e4d7163ce72a9fb17d5bfc427a5fbb89207c799f",null),(0,i.registerServerReference)(N,"600868898716bb45ac1ef2d2b2387175dba9608cda",null),(0,i.registerServerReference)(O,"40e71a770bc09dc9e8fec333dc93aef8ccc0452d95",null),(0,i.registerServerReference)(P,"604fb8af8ce70d8658b5ca10a9661a9026b58a25f1",null),(0,i.registerServerReference)(Q,"006113337c24d89ccfa334a562697648808a2e7a08",null),a.s(["003ab1931030324d4cb2fbd394c9db5154e22aac82",()=>c.f,"006113337c24d89ccfa334a562697648808a2e7a08",0,Q,"006cea3d9937b620c316d1469c81fc1117d96a8bef",()=>g.f,"00a4863b2759313b43afeff3df0a62d47e66017335",()=>e.E,"00ab4542a2cda573adf3ba39329a67751a4d7b2c2a",()=>b.f,"00c0a38b180ad67b40945cd431f19bb78fcef5f514",0,K,"00e4d7163ce72a9fb17d5bfc427a5fbb89207c799f",0,L,"401a986de7c91501e4a35bb59e265a7e0ae092ada8",0,J,"401ff14fa6430391d5b50044d749bd30ec1f181c47",()=>f.F,"4040c40df6935ec6abb9fc2908703979ec9501cf05",()=>f.m,"40487004821d9fd78750c3cc1ac1949e8150ac442f",()=>e.G,"406da08263fcff6d3dfa6749c103f2e3991b282d4c",()=>f.G,"4089ec00f7455d966137fbcd1ad12114aa1937e9bf",()=>e.T,"40d6e085a7dbacafe30989762d10fda9030cde91c2",()=>d.B,"40e1189dc743ddc755237254db535784362d085c45",()=>d.R,"40e71a770bc09dc9e8fec333dc93aef8ccc0452d95",0,O,"600868898716bb45ac1ef2d2b2387175dba9608cda",0,N,"600cf7231c126b62920c0bc45de68ff81c4dea68d6",()=>h.O,"604fb8af8ce70d8658b5ca10a9661a9026b58a25f1",0,P,"60725547a5dcc14653e3e6efb7e55f25a262dccf7c",()=>h.z,"706b76a40c48dfbe400b576c34157ead579c52813a",0,I],673841)}];
1
+ module.exports=[673841,a=>{"use strict";var b=a.i(903769),c=a.i(760937),d=a.i(861600),e=a.i(294965),f=a.i(598513),g=a.i(929941),h=a.i(804224),i=a.i(137936),j=a.i(118558),k=a.i(600079),l=a.i(109307),m=a.i(221084),n=a.i(683439),o=a.i(245710),p=a.i(312573),q=a.i(323878),r=a.i(93321),s=a.i(548734),t=a.i(61017),u=a.i(142754),v=a.i(337830),w=a.i(711672),x=a.i(208683);async function y(a,b,c,d,e=Date.now){let f=Array(a.length).fill(void 0),g=0,h=async()=>{for(;;){let b=g++;if(b>=a.length)return;let h=c-e();if(h<5e3)return;f[b]=await d(a[b],h)}};return await Promise.all(Array.from({length:Math.max(1,Math.min(b,a.length))},h)),f}async function z(a,b,c,d="Watchbell console (model test)"){var e,f;let g=Date.now(),h=await (0,v.K)(a,b.upstream,Math.min(45e3,c),512),i=h.ok?{ok:!0,ms:h.ms,at:new Date().toISOString()}:{ok:!1,ms:Date.now()-g,status:h.status,error:(e=h.status,f=h.errorClass,404===e?"model not found (404)":401===e?"key rejected (401)":403===e?"refused (403)":429===e?"rate limited (429)":400===e?"bad request (400)":408===e||/timeout/i.test(f)?"timed out":0===e?"unreachable":e>=500?`server error (${e})`:`failed (${e})`),at:new Date().toISOString()};return await (0,t.h)({at:new Date(g),keyId:null,client:{...t.q,userAgent:d},providerId:a.id,model:(0,x.q)(a,b),kind:"models",tool:null,tokensIn:null,tokensOut:null,latencyMs:i.ms,status:h.ok?200:h.status||502,errorClass:h.ok?null:`test \xb7 ${h.errorClass}`.slice(0,120),stream:!1},[]).catch(()=>{console.warn("model test usage not recorded")}),i}async function A(a,b,c=Date.now()){var d;let e,f=(await (0,w.J)(c,!0)).find(b=>b.id===a);if(!f)return{ok:!1,error:"That connection no longer exists, or its key can't be read."};let g=null===b?(d=f.models.filter(a=>!a.removed),e=a=>a.lastTest?Date.parse(a.lastTest.at)||0:-1,[...d].sort((a,b)=>e(a)-e(b))):f.models.filter(a=>b.includes(a.id));if(0===g.length)return{ok:!1,error:"That model isn't on this connection's list. Refresh the models first."};let h=(await y(g,4,c+5e4,async(a,b)=>({id:a.id,test:await z(f,a,b)}))).filter(a=>!!a);if(h.length){let b=(await (0,w.J)(Date.now(),!0)).find(b=>b.id===a);if(b){let c=new Map(h.map(a=>[a.id,a.test])),d=b.models.map(a=>c.has(a.id)?{...a,lastTest:c.get(a.id)}:a);await (0,s.f)().update(u.f).set({models:d,updatedAt:new Date}).where((0,r.u)(u.f.id,a)),(0,w.t)()}}return{ok:!0,tested:h,skipped:g.length-h.length}}var B=a.i(484458),C=a.i(330863),D=a.i(263972),E=a.i(777302),F=a.i(713095);let G="Something in that request wasn't valid.",H=async(a,b)=>{try{await (0,m.f)({kind:"ok",message:a,resourceId:null,actorUserId:b})}catch{console.warn("audit event failed")}};async function I(a,b,c){return(0,k.F)("owner",async d=>{if(!(0,n.f)(a)||"string"!=typeof b||b.length<1||b.length>200||"boolean"!=typeof c)return{ok:!1,error:G};let e=await (0,q.C)(p.t.alertWrite,d.id);if(!e.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,p.H)(e.retryAfter)}.`};let f=await (0,E.V)(a,b,c);return f.ok?(await H(`AI model ${c?"enabled":"disabled"}: ${b}`,d.userId),(0,j.refresh)(),{ok:!0,message:`${b} is ${c?"on":"off"}. Takes effect on the next request.`}):{ok:!1,error:f.error}},{requireActionMember:l.g})}async function J(a){return(0,k.F)("owner",async b=>{if("string"!=typeof a||a.length>240)return{ok:!1,error:G};let c=await (0,q.C)(p.t.alertWrite,b.id);if(!c.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,p.H)(c.retryAfter)}.`};let{rows:d}=await (0,D.Y)(),e=d.find(b=>b.publicId===a);return e&&e.enabled&&e.providerEnabled?(await (0,D.z)(a,new Date),await H(`AI default model: ${a}`,b.userId),(0,j.refresh)(),{ok:!0,message:`${a} is now the default model.`}):{ok:!1,error:"Turn the model on first."}},{requireActionMember:l.g})}async function K(){return(0,k.F)("owner",async a=>{let b=await (0,q.C)(p.t.refresh,a.id);if(!b.allowed)return{ok:!1,error:`Too many refreshes. Try again in ${(0,p.H)(b.retryAfter)}.`};let{providers:c}=await (0,D.Y)(),d=c.filter(a=>a.enabled);if(0===d.length)return{ok:!1,error:"No provider is connected."};let e=0;for(let a of d)try{!(await (0,E.D)(a.id)).ok&&e++}catch{e++}return(0,j.refresh)(),e===d.length?{ok:!1,error:"No provider answered. Check the connection under Bring your own key."}:{ok:!0,message:e?`Asked ${d.length-e} of ${d.length} providers for their model list.`:`Asked ${d.length} provider${1===d.length?"":"s"} for the model list.`}},{requireActionMember:l.g})}async function L(){return(0,k.F)("owner",async a=>{let b=await (0,q.C)(p.t.credential,a.id);if(!b.allowed)return{ok:!1,error:`Too many syncs. Try again in ${(0,p.H)(b.retryAfter)}.`};let c=Date.now(),d=await (0,B.X)(new Date(c),c+5e4);if((0,j.refresh)(),!d)return{ok:!1,error:"The sync stopped with an error. Try again."};if(0===d.conns.length)return{ok:!1,error:"No custom server is connected and on."};let e=d.conns.find(a=>!a.ok);if(e&&d.conns.every(a=>!a.ok))return{ok:!1,error:`${e.name}: ${e.error??"the sync failed"}.`};let f=d.summary,g=[`${f.listed} listed`,f.added&&`${f.added} new`,f.removed&&`${f.removed} removed`,f.returned&&`${f.returned} back`,`${f.tested} tested`,f.ready&&`${f.ready} turned on`].filter(Boolean);return{ok:!0,message:`Synced: ${g.join(", ")}.${d.pending?" Some new models wait for their test; the next run comes within minutes.":""}`}},{requireActionMember:l.g})}async function M(a,b){return(0,k.F)("owner",async c=>{if(!(0,n.f)(a)||null!==b&&("string"!=typeof b||b.length<1||b.length>200))return{ok:!1,error:G};let d=await (0,q.C)(p.t.credential,c.id);if(!d.allowed)return{ok:!1,error:`Too many tests. Try again in ${(0,p.H)(d.retryAfter)}.`};let e=await A(a,null===b?null:[b]);if(!e.ok)return{ok:!1,error:e.error};(0,j.refresh)();let f=e.tested.filter(a=>a.test.ok).length,g={tested:e.tested.length,working:f,skipped:e.skipped};if(null!==b){let a=e.tested[0]?.test;return a?.ok?{ok:!0,message:`${b} works (${(a.ms/1e3).toFixed(1)} s).`,data:g}:{ok:!1,error:`${b}: ${a?.error??"not tested"}.`}}return{ok:!0,message:`${f} of ${e.tested.length} model${1===e.tested.length?"":"s"} answered.${e.skipped?` ${e.skipped} not tested yet: run Scan all again.`:""}`,data:g}},{requireActionMember:l.g})}async function N(a,b){return M(a,"string"==typeof b?b:"")}async function O(a){return M(a,null)}async function P(a,b){return(0,k.F)("owner",async c=>{if("boolean"!=typeof a||null!==b&&("string"!=typeof b||b.length<1||b.length>200))return{ok:!1,error:G};let d=await (0,q.C)(p.t.alertWrite,c.id);if(!d.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,p.H)(d.retryAfter)}.`};if(null!==b){let{rows:a}=await (0,D.Y)();if(!a.some(a=>a.publicId===b&&a.enabled&&a.providerEnabled))return{ok:!1,error:"Turn the model on first."}}return await (0,C.C)({enabled:a,model:b}),await H(`AI advisor notes ${a?"on":"off"}${b?` \xb7 ${b}`:""}`,c.userId),(0,j.refresh)(),{ok:!0,message:a?`Advisor notes are on (${b??"default model"}), at 07:00 and 19:00 ${(0,o.D)()}.`:"Advisor notes are off."}},{requireActionMember:l.g})}async function Q(){return(0,k.F)("owner",async a=>{let b=await (0,q.C)(p.t.credential,a.id);if(!b.allowed)return{ok:!1,error:`Too many runs. Try again in ${(0,p.H)(b.retryAfter)}.`};try{let a=await (0,C.K)(new Date,{force:!0,deadlineMs:45e3});if("skipped"===a.status){let b="no-provider"===a.reason?"No AI provider is connected.":"no-apps"===a.reason?"No watched app to write about.":"The model's answer had no usable note. Try again.";return{ok:!1,error:b}}return(0,j.refresh)(),{ok:!0,message:`${a.count} advisor note${1===a.count?"":"s"} written by ${a.model}.`,data:{count:a.count}}}catch(a){return{ok:!1,error:a instanceof Error&&"GatewayError"===a.name?a.message.slice(0,300):a instanceof Error&&"advisor deadline"===a.message?"The provider took too long. Try again.":"The AI provider couldn't answer. Try again."}}},{requireActionMember:l.g})}(0,F.ensureServerEntryExports)([I,J,K,L,N,O,P,Q]),(0,i.registerServerReference)(I,"709640a8790a9cc1e35f90e3122ced4f280f79a0d9",null),(0,i.registerServerReference)(J,"40c76e86a4210c6222a456c57ff2b7d90ea958c433",null),(0,i.registerServerReference)(K,"0036f566fe6997d2949dc9eaabfa6cc15527a4b8b5",null),(0,i.registerServerReference)(L,"00604a04fcd340e41b5d29f6e0416cc1a551a0b397",null),(0,i.registerServerReference)(N,"60e6f8c2c033489d242efc49167b66d5f2659d31ba",null),(0,i.registerServerReference)(O,"40f211ded89c86c1d716312297213659de4499c664",null),(0,i.registerServerReference)(P,"608430afb64717bc5f5dee57b7801a50dae4e5f2e0",null),(0,i.registerServerReference)(Q,"000a4ba1871757b2d612f09500d2dc11df36f6f80c",null),a.s(["000a4ba1871757b2d612f09500d2dc11df36f6f80c",0,Q,"0036f299b84702137d0e1804d2180086625225dfa3",()=>e.E,"0036f566fe6997d2949dc9eaabfa6cc15527a4b8b5",0,K,"0044f25e033351520c508c000dd193d3fac544db13",()=>g.f,"00604a04fcd340e41b5d29f6e0416cc1a551a0b397",0,L,"008b6dbed199d0deb40e431c4e4f3d7746a8c4835f",()=>b.f,"00cdf27638ef84151abef7867f4992c441c8a9dc0b",()=>c.f,"4022d2901d63f206a8bd1d2ab60a96d5cd16dd97b6",()=>d.R,"4035940c10c8b13b54c2e286ddbf2cb45f4a8383e9",()=>d.B,"409915cee1f50c660878fea67a05e33d5f1726cdfa",()=>f.F,"40a2b7910bf5613049d5fe66e9f1f92cf38a0c3bba",()=>e.G,"40a6c18a41155fbbf266df357786ef200b826ada93",()=>f.G,"40aeebbb6a147a0a03105323f1aa07f834b2ba81ab",()=>e.T,"40c76e86a4210c6222a456c57ff2b7d90ea958c433",0,J,"40d41e8bd8f26c3b95b08307130717fa40ca6dffc0",()=>f.m,"40f211ded89c86c1d716312297213659de4499c664",0,O,"60067768b1ef2514683aca72c85cdc195cd5dd6d5a",()=>h.O,"601b40ad39b59c8c6d925d861413c235df7e778d08",()=>h.z,"608430afb64717bc5f5dee57b7801a50dae4e5f2e0",0,P,"60e6f8c2c033489d242efc49167b66d5f2659d31ba",0,N,"709640a8790a9cc1e35f90e3122ced4f280f79a0d9",0,I],673841)}];
2
2
 
3
3
  //# sourceMappingURL=1oeh_server_app_%28console%29_%28private%29_ai_models_page_actions_0rvlzfa8rjyz_.js.map
@@ -1,4 +1,4 @@
1
1
  module.exports=[652820,a=>{"use strict";var b=a.i(903769),c=a.i(760937),d=a.i(861600),e=a.i(294965),f=a.i(598513),g=a.i(929941),h=a.i(137936),i=a.i(600079),j=a.i(109307),k=a.i(312573),l=a.i(323878),m=a.i(263972),n=a.i(777302);let o={name:"playground",max:30,windowSeconds:600},p=a=>({ok:!1,error:a});async function q(a){return(0,i.F)("owner",async b=>{let c=function(a){if(!a||"object"!=typeof a)return p("Something in that request wasn't valid.");let b="console"===a.mode?"console":"plain"===a.mode?"plain":null;if(!b)return p("Pick Plain model or Ask the console.");let c="string"==typeof a.model?a.model.trim():"";if(c.length>200)return p("Something in that request wasn't valid.");let d="number"==typeof a.temperature?a.temperature:Number(a.temperature);if(!Number.isFinite(d)||d<0||d>2)return p("Temperature is a number from 0 to 2.");let e="number"==typeof a.maxTokens?a.maxTokens:Number(a.maxTokens);if(!Number.isInteger(e)||e<16||e>8192)return p(`Max output tokens is a whole number from 16 to ${8192..toLocaleString("en-US")}.`);let f="string"==typeof a.system?a.system:"";if(f.length>4e3)return p(`The system prompt is at most ${4e3.toLocaleString("en-US")} characters.`);if(!Array.isArray(a.messages)||a.messages.length<1||a.messages.length>20)return p("A conversation is 1 to 20 messages. Clear it to start over.");let g=[],h=0;for(let b of a.messages){let a=b??{};if("user"!==a.role&&"assistant"!==a.role||"string"!=typeof a.content||!a.content.trim())return p("Something in that request wasn't valid.");if(a.content.length>8e3)return p(`A message is at most ${8e3.toLocaleString("en-US")} characters.`);h+=a.content.length,g.push({role:a.role,content:a.content})}return h>4e4?p("The conversation is too long. Clear it to start over."):"user"!==g[g.length-1].role?p("The last message must be yours."):{ok:!0,value:{model:c,mode:b,temperature:d,maxTokens:e,system:f,messages:g}}}(a);if(!c.ok)return{ok:!1,error:c.error};let d=c.value,e=await (0,l.C)(o,b.id);if(!e.allowed)return{ok:!1,error:`Too many messages. Try again in ${(0,k.H)(e.retryAfter)}.`};let{rows:f,defaultModel:g}=await (0,m.Y)(),h=f.filter(a=>a.enabled&&a.providerEnabled);if(0===h.length)return{ok:!1,error:"No model is on. Connect a provider and turn a model on first."};let i=d.model||(h.some(a=>a.publicId===g)?g:null)||h[0].publicId;if(!h.some(a=>a.publicId===i))return{ok:!1,error:"That model isn't on. Pick another."};let j=[{role:"system",content:d.system.trim()||"You are Watchbell's assistant. Answer from the console data you are given. Say when the data doesn't cover the question."}];"console"===d.mode&&j.push({role:"system",content:`Console data (JSON, names aliased):
2
- ${await (0,n.u)(new Date)}`});try{let a=await (0,n.t)([...j,...d.messages],{model:i,maxTokens:d.maxTokens,temperature:d.temperature,purpose:"playground"});return{ok:!0,data:{text:a.text,model:a.model,tokensIn:a.usage.in,tokensOut:a.usage.out,ms:a.ms,grounded:"console"===d.mode}}}catch(b){let a;return console.warn("playground call failed:",b instanceof Error?b.name:"unknown"),{ok:!1,error:!(a=b instanceof Error?b.message.trim():"")||a.length>220||/w[bp]_|AIza|AQ\.|Bearer|sk-|gsk_|postgres|:\/\/|@/.test(a)?"The provider didn't answer. Check the connection under Bring your own key.":a}}},{requireActionMember:j.g})}(0,a.i(713095).ensureServerEntryExports)([q]),(0,h.registerServerReference)(q,"40ea030dcaf48d6e58fa61a319e7943226d7b1dc8d",null),a.s(["003ab1931030324d4cb2fbd394c9db5154e22aac82",()=>c.f,"006cea3d9937b620c316d1469c81fc1117d96a8bef",()=>g.f,"00a4863b2759313b43afeff3df0a62d47e66017335",()=>e.E,"00ab4542a2cda573adf3ba39329a67751a4d7b2c2a",()=>b.f,"401ff14fa6430391d5b50044d749bd30ec1f181c47",()=>f.F,"4040c40df6935ec6abb9fc2908703979ec9501cf05",()=>f.m,"40487004821d9fd78750c3cc1ac1949e8150ac442f",()=>e.G,"406da08263fcff6d3dfa6749c103f2e3991b282d4c",()=>f.G,"4089ec00f7455d966137fbcd1ad12114aa1937e9bf",()=>e.T,"40bcdb3eabf879ab764bb03c210e33a976f8370caf",()=>e.P,"40d6e085a7dbacafe30989762d10fda9030cde91c2",()=>d.B,"40e1189dc743ddc755237254db535784362d085c45",()=>d.R,"40ea030dcaf48d6e58fa61a319e7943226d7b1dc8d",0,q,"609f0e1891e6795515cf830ba0b2f89bd728db89f1",()=>e.B],652820)}];
2
+ ${await (0,n.u)(new Date)}`});try{let a=await (0,n.t)([...j,...d.messages],{model:i,maxTokens:d.maxTokens,temperature:d.temperature,purpose:"playground"});return{ok:!0,data:{text:a.text,model:a.model,tokensIn:a.usage.in,tokensOut:a.usage.out,ms:a.ms,grounded:"console"===d.mode}}}catch(b){let a;return console.warn("playground call failed:",b instanceof Error?b.name:"unknown"),{ok:!1,error:!(a=b instanceof Error?b.message.trim():"")||a.length>220||/w[bp]_|AIza|AQ\.|Bearer|sk-|gsk_|postgres|:\/\/|@/.test(a)?"The provider didn't answer. Check the connection under Bring your own key.":a}}},{requireActionMember:j.g})}(0,a.i(713095).ensureServerEntryExports)([q]),(0,h.registerServerReference)(q,"4062015f7a5163df338c2bd8ecaccada60e07e5200",null),a.s(["0036f299b84702137d0e1804d2180086625225dfa3",()=>e.E,"0044f25e033351520c508c000dd193d3fac544db13",()=>g.f,"008b6dbed199d0deb40e431c4e4f3d7746a8c4835f",()=>b.f,"00cdf27638ef84151abef7867f4992c441c8a9dc0b",()=>c.f,"400d04748bd8331f6c57be7336eeb56251f4985d24",()=>e.P,"4022d2901d63f206a8bd1d2ab60a96d5cd16dd97b6",()=>d.R,"4035940c10c8b13b54c2e286ddbf2cb45f4a8383e9",()=>d.B,"4062015f7a5163df338c2bd8ecaccada60e07e5200",0,q,"409915cee1f50c660878fea67a05e33d5f1726cdfa",()=>f.F,"40a2b7910bf5613049d5fe66e9f1f92cf38a0c3bba",()=>e.G,"40a6c18a41155fbbf266df357786ef200b826ada93",()=>f.G,"40aeebbb6a147a0a03105323f1aa07f834b2ba81ab",()=>e.T,"40d41e8bd8f26c3b95b08307130717fa40ca6dffc0",()=>f.m,"600730c7e8d0d7d8f8579f514dfe059c45014218db",()=>e.B],652820)}];
3
3
 
4
4
  //# sourceMappingURL=1oeh_server_app_%28console%29_%28private%29_ai_playground_page_actions_01ejc1xilpuh4.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[821814,a=>{"use strict";var b=a.i(903769),c=a.i(760937),d=a.i(861600),e=a.i(294965),f=a.i(598513),g=a.i(929941),h=a.i(137936),i=a.i(118558),j=a.i(600079),k=a.i(109307),l=a.i(221084),m=a.i(683439),n=a.i(312573),o=a.i(323878),p=a.i(777302);let q=["requests","tokens"],r=["minute","day","week"],s=/^[A-Za-z0-9._:-]{1,80}$/;async function t(a,b){return(0,j.F)("owner",async c=>{if(!(0,m.f)(a))return{ok:!1,error:"Something in that request wasn't valid."};let d=function(a){if(!Array.isArray(a))return{ok:!1,error:"Something in that request wasn't valid."};if(a.length>10)return{ok:!1,error:"At most 10 limits per connection."};let b=[],c=new Set;for(let d of a){let a=d??{},e=q.find(b=>b===a.metric),f=r.find(b=>b===a.window),g="string"==typeof a.scope&&a.scope.trim()?a.scope.trim():"all",h="string"==typeof a.limit?Number(a.limit.replace(/[,_\s]/g,"")):a.limit;if(!e||!f)return{ok:!1,error:"Pick requests or tokens and a window for every limit."};if(!s.test(g))return{ok:!1,error:"A model name may only use letters, digits and . _ : -."};if("number"!=typeof h||!Number.isInteger(h)||h<1||h>2e9)return{ok:!1,error:"A limit is a whole number from 1 to 2,000,000,000."};let i=`${e}|${g}|${f}`;if(c.has(i))return{ok:!1,error:"Two limits are the same metric, model and window."};c.add(i),b.push({metric:e,scope:g,limit:h,window:f})}return{ok:!0,value:b}}(b);if(!d.ok)return{ok:!1,error:d.error};let e=await (0,o.C)(n.t.credential,c.id);if(!e.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,n.H)(e.retryAfter)}.`};let f=await (0,p.F)(a,d.value);if(!f.ok)return{ok:!1,error:f.error};try{await (0,l.f)({kind:"ok",message:"AI provider limits changed",detail:`${d.value.length} limit${1===d.value.length?"":"s"}`,resourceId:null,actorUserId:c.userId})}catch{console.warn("audit event failed")}return(0,i.refresh)(),{ok:!0,message:"Limits saved."}},{requireActionMember:k.g})}(0,a.i(713095).ensureServerEntryExports)([t]),(0,h.registerServerReference)(t,"606956c3f7a75b9830aa63cc4b4cc4ef0868e4fb4b",null),a.s(["003ab1931030324d4cb2fbd394c9db5154e22aac82",()=>c.f,"006cea3d9937b620c316d1469c81fc1117d96a8bef",()=>g.f,"00a4863b2759313b43afeff3df0a62d47e66017335",()=>e.E,"00ab4542a2cda573adf3ba39329a67751a4d7b2c2a",()=>b.f,"401ff14fa6430391d5b50044d749bd30ec1f181c47",()=>f.F,"4040c40df6935ec6abb9fc2908703979ec9501cf05",()=>f.m,"40487004821d9fd78750c3cc1ac1949e8150ac442f",()=>e.G,"406da08263fcff6d3dfa6749c103f2e3991b282d4c",()=>f.G,"4089ec00f7455d966137fbcd1ad12114aa1937e9bf",()=>e.T,"40d6e085a7dbacafe30989762d10fda9030cde91c2",()=>d.B,"40e1189dc743ddc755237254db535784362d085c45",()=>d.R,"606956c3f7a75b9830aa63cc4b4cc4ef0868e4fb4b",0,t],821814)}];
1
+ module.exports=[821814,a=>{"use strict";var b=a.i(903769),c=a.i(760937),d=a.i(861600),e=a.i(294965),f=a.i(598513),g=a.i(929941),h=a.i(137936),i=a.i(118558),j=a.i(600079),k=a.i(109307),l=a.i(221084),m=a.i(683439),n=a.i(312573),o=a.i(323878),p=a.i(777302);let q=["requests","tokens"],r=["minute","day","week"],s=/^[A-Za-z0-9._:-]{1,80}$/;async function t(a,b){return(0,j.F)("owner",async c=>{if(!(0,m.f)(a))return{ok:!1,error:"Something in that request wasn't valid."};let d=function(a){if(!Array.isArray(a))return{ok:!1,error:"Something in that request wasn't valid."};if(a.length>10)return{ok:!1,error:"At most 10 limits per connection."};let b=[],c=new Set;for(let d of a){let a=d??{},e=q.find(b=>b===a.metric),f=r.find(b=>b===a.window),g="string"==typeof a.scope&&a.scope.trim()?a.scope.trim():"all",h="string"==typeof a.limit?Number(a.limit.replace(/[,_\s]/g,"")):a.limit;if(!e||!f)return{ok:!1,error:"Pick requests or tokens and a window for every limit."};if(!s.test(g))return{ok:!1,error:"A model name may only use letters, digits and . _ : -."};if("number"!=typeof h||!Number.isInteger(h)||h<1||h>2e9)return{ok:!1,error:"A limit is a whole number from 1 to 2,000,000,000."};let i=`${e}|${g}|${f}`;if(c.has(i))return{ok:!1,error:"Two limits are the same metric, model and window."};c.add(i),b.push({metric:e,scope:g,limit:h,window:f})}return{ok:!0,value:b}}(b);if(!d.ok)return{ok:!1,error:d.error};let e=await (0,o.C)(n.t.credential,c.id);if(!e.allowed)return{ok:!1,error:`Too many changes. Try again in ${(0,n.H)(e.retryAfter)}.`};let f=await (0,p.F)(a,d.value);if(!f.ok)return{ok:!1,error:f.error};try{await (0,l.f)({kind:"ok",message:"AI provider limits changed",detail:`${d.value.length} limit${1===d.value.length?"":"s"}`,resourceId:null,actorUserId:c.userId})}catch{console.warn("audit event failed")}return(0,i.refresh)(),{ok:!0,message:"Limits saved."}},{requireActionMember:k.g})}(0,a.i(713095).ensureServerEntryExports)([t]),(0,h.registerServerReference)(t,"604d3bb4e93c06b5ff9ad74e7ec77ff377fbb22459",null),a.s(["0036f299b84702137d0e1804d2180086625225dfa3",()=>e.E,"0044f25e033351520c508c000dd193d3fac544db13",()=>g.f,"008b6dbed199d0deb40e431c4e4f3d7746a8c4835f",()=>b.f,"00cdf27638ef84151abef7867f4992c441c8a9dc0b",()=>c.f,"4022d2901d63f206a8bd1d2ab60a96d5cd16dd97b6",()=>d.R,"4035940c10c8b13b54c2e286ddbf2cb45f4a8383e9",()=>d.B,"409915cee1f50c660878fea67a05e33d5f1726cdfa",()=>f.F,"40a2b7910bf5613049d5fe66e9f1f92cf38a0c3bba",()=>e.G,"40a6c18a41155fbbf266df357786ef200b826ada93",()=>f.G,"40aeebbb6a147a0a03105323f1aa07f834b2ba81ab",()=>e.T,"40d41e8bd8f26c3b95b08307130717fa40ca6dffc0",()=>f.m,"604d3bb4e93c06b5ff9ad74e7ec77ff377fbb22459",0,t],821814)}];
2
2
 
3
3
  //# sourceMappingURL=1oeh_server_app_%28console%29_%28private%29_ai_quota_page_actions_0iki29gyi8cwa.js.map