@wizeworks/lens-cloud 0.3.0-alpha.3 → 0.3.0-alpha.5

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 (514) hide show
  1. package/README.md +3 -0
  2. package/dist/alerts/evaluate.d.ts +6 -5
  3. package/dist/alerts/evaluate.d.ts.map +1 -1
  4. package/dist/alerts/evaluate.js +59 -26
  5. package/dist/alerts/evaluate.js.map +1 -1
  6. package/dist/alerts/problem-link.d.ts +12 -0
  7. package/dist/alerts/problem-link.d.ts.map +1 -0
  8. package/dist/alerts/problem-link.js +31 -0
  9. package/dist/alerts/problem-link.js.map +1 -0
  10. package/dist/app.d.ts +9 -0
  11. package/dist/app.d.ts.map +1 -1
  12. package/dist/auth/auth.d.ts +8 -2
  13. package/dist/auth/auth.d.ts.map +1 -1
  14. package/dist/auth/auth.js +25 -2
  15. package/dist/auth/auth.js.map +1 -1
  16. package/dist/auth/billing-hooks.d.ts +9 -0
  17. package/dist/auth/billing-hooks.d.ts.map +1 -0
  18. package/dist/auth/billing-hooks.js +49 -0
  19. package/dist/auth/billing-hooks.js.map +1 -0
  20. package/dist/auth/bridge.js +2 -2
  21. package/dist/auth/bridge.js.map +1 -1
  22. package/dist/auth/crypto.d.ts +2 -0
  23. package/dist/auth/crypto.d.ts.map +1 -1
  24. package/dist/auth/crypto.js +2 -2
  25. package/dist/auth/crypto.js.map +1 -1
  26. package/dist/auth/deps.d.ts +7 -0
  27. package/dist/auth/deps.d.ts.map +1 -1
  28. package/dist/auth/deps.js.map +1 -1
  29. package/dist/auth/hooks.d.ts.map +1 -1
  30. package/dist/auth/hooks.js +8 -1
  31. package/dist/auth/hooks.js.map +1 -1
  32. package/dist/auth/join-scope.d.ts +1 -1
  33. package/dist/auth/join-scope.d.ts.map +1 -1
  34. package/dist/auth/join-scope.js +8 -4
  35. package/dist/auth/join-scope.js.map +1 -1
  36. package/dist/auth/oauth-access.d.ts +8 -0
  37. package/dist/auth/oauth-access.d.ts.map +1 -0
  38. package/dist/auth/oauth-access.js +31 -0
  39. package/dist/auth/oauth-access.js.map +1 -0
  40. package/dist/auth/oauth-grant.d.ts +5 -0
  41. package/dist/auth/oauth-grant.d.ts.map +1 -0
  42. package/dist/auth/oauth-grant.js +79 -0
  43. package/dist/auth/oauth-grant.js.map +1 -0
  44. package/dist/auth/oauth-names.d.ts +104 -0
  45. package/dist/auth/oauth-names.d.ts.map +1 -0
  46. package/dist/auth/oauth-names.js +72 -0
  47. package/dist/auth/oauth-names.js.map +1 -0
  48. package/dist/auth/oauth.d.ts +17 -0
  49. package/dist/auth/oauth.d.ts.map +1 -0
  50. package/dist/auth/oauth.js +47 -0
  51. package/dist/auth/oauth.js.map +1 -0
  52. package/dist/auth/options.d.ts.map +1 -1
  53. package/dist/auth/options.js +2 -0
  54. package/dist/auth/options.js.map +1 -1
  55. package/dist/auth/plugins.d.ts.map +1 -1
  56. package/dist/auth/plugins.js +15 -1
  57. package/dist/auth/plugins.js.map +1 -1
  58. package/dist/auth/principal.d.ts +10 -1
  59. package/dist/auth/principal.d.ts.map +1 -1
  60. package/dist/auth/principal.js +8 -7
  61. package/dist/auth/principal.js.map +1 -1
  62. package/dist/auth/roles.d.ts +5 -2
  63. package/dist/auth/roles.d.ts.map +1 -1
  64. package/dist/auth/roles.js +1 -0
  65. package/dist/auth/roles.js.map +1 -1
  66. package/dist/auth/schema-names.d.ts +33 -0
  67. package/dist/auth/schema-names.d.ts.map +1 -1
  68. package/dist/auth/schema-names.js +23 -0
  69. package/dist/auth/schema-names.js.map +1 -1
  70. package/dist/auth/scim.d.ts +6 -0
  71. package/dist/auth/scim.d.ts.map +1 -0
  72. package/dist/auth/scim.js +56 -0
  73. package/dist/auth/scim.js.map +1 -0
  74. package/dist/auth/signup.d.ts.map +1 -1
  75. package/dist/auth/signup.js +5 -2
  76. package/dist/auth/signup.js.map +1 -1
  77. package/dist/auth/wire.d.ts +2 -1
  78. package/dist/auth/wire.d.ts.map +1 -1
  79. package/dist/auth/wire.js +4 -1
  80. package/dist/auth/wire.js.map +1 -1
  81. package/dist/billing/cli.d.ts +6 -0
  82. package/dist/billing/cli.d.ts.map +1 -0
  83. package/dist/billing/cli.js +54 -0
  84. package/dist/billing/cli.js.map +1 -0
  85. package/dist/billing/gate.d.ts +13 -0
  86. package/dist/billing/gate.d.ts.map +1 -0
  87. package/dist/billing/gate.js +27 -0
  88. package/dist/billing/gate.js.map +1 -0
  89. package/dist/billing/limits.d.ts +29 -0
  90. package/dist/billing/limits.d.ts.map +1 -0
  91. package/dist/billing/limits.js +69 -0
  92. package/dist/billing/limits.js.map +1 -0
  93. package/dist/billing/notices.d.ts +4 -0
  94. package/dist/billing/notices.d.ts.map +1 -0
  95. package/dist/billing/notices.js +40 -0
  96. package/dist/billing/notices.js.map +1 -0
  97. package/dist/billing/options.d.ts +37 -0
  98. package/dist/billing/options.d.ts.map +1 -0
  99. package/dist/billing/options.js +33 -0
  100. package/dist/billing/options.js.map +1 -0
  101. package/dist/billing/plans.d.ts +50 -0
  102. package/dist/billing/plans.d.ts.map +1 -0
  103. package/dist/billing/plans.js +47 -0
  104. package/dist/billing/plans.js.map +1 -0
  105. package/dist/billing/report.d.ts +26 -0
  106. package/dist/billing/report.d.ts.map +1 -0
  107. package/dist/billing/report.js +53 -0
  108. package/dist/billing/report.js.map +1 -0
  109. package/dist/billing/service.d.ts +20 -0
  110. package/dist/billing/service.d.ts.map +1 -0
  111. package/dist/billing/service.js +29 -0
  112. package/dist/billing/service.js.map +1 -0
  113. package/dist/billing/stripe-plugin.d.ts +14 -0
  114. package/dist/billing/stripe-plugin.d.ts.map +1 -0
  115. package/dist/billing/stripe-plugin.js +39 -0
  116. package/dist/billing/stripe-plugin.js.map +1 -0
  117. package/dist/billing/stripe-setup.d.ts +15 -0
  118. package/dist/billing/stripe-setup.d.ts.map +1 -0
  119. package/dist/billing/stripe-setup.js +73 -0
  120. package/dist/billing/stripe-setup.js.map +1 -0
  121. package/dist/billing/summary.d.ts +59 -0
  122. package/dist/billing/summary.d.ts.map +1 -0
  123. package/dist/billing/summary.js +50 -0
  124. package/dist/billing/summary.js.map +1 -0
  125. package/dist/billing/sync.d.ts +5 -0
  126. package/dist/billing/sync.d.ts.map +1 -0
  127. package/dist/billing/sync.js +35 -0
  128. package/dist/billing/sync.js.map +1 -0
  129. package/dist/billing/usage-sub.d.ts +17 -0
  130. package/dist/billing/usage-sub.d.ts.map +1 -0
  131. package/dist/billing/usage-sub.js +47 -0
  132. package/dist/billing/usage-sub.js.map +1 -0
  133. package/dist/billing/usage.d.ts +28 -0
  134. package/dist/billing/usage.d.ts.map +1 -0
  135. package/dist/billing/usage.js +80 -0
  136. package/dist/billing/usage.js.map +1 -0
  137. package/dist/billing/webhook.d.ts +6 -0
  138. package/dist/billing/webhook.d.ts.map +1 -0
  139. package/dist/billing/webhook.js +41 -0
  140. package/dist/billing/webhook.js.map +1 -0
  141. package/dist/cli-args.d.ts +1 -1
  142. package/dist/cli-args.d.ts.map +1 -1
  143. package/dist/cli-args.js +33 -2
  144. package/dist/cli-args.js.map +1 -1
  145. package/dist/cli.js +6 -0
  146. package/dist/cli.js.map +1 -1
  147. package/dist/config.d.ts +15 -3
  148. package/dist/config.d.ts.map +1 -1
  149. package/dist/config.js +19 -1
  150. package/dist/config.js.map +1 -1
  151. package/dist/db/schema-alerts.d.ts +2 -0
  152. package/dist/db/schema-alerts.d.ts.map +1 -0
  153. package/dist/db/schema-alerts.js +15 -0
  154. package/dist/db/schema-alerts.js.map +1 -0
  155. package/dist/db/schema-billing.d.ts +2 -0
  156. package/dist/db/schema-billing.d.ts.map +1 -0
  157. package/dist/db/schema-billing.js +38 -0
  158. package/dist/db/schema-billing.js.map +1 -0
  159. package/dist/db/schema-issues.d.ts +2 -0
  160. package/dist/db/schema-issues.d.ts.map +1 -0
  161. package/dist/db/schema-issues.js +9 -0
  162. package/dist/db/schema-issues.js.map +1 -0
  163. package/dist/db/schema-logs.d.ts +2 -0
  164. package/dist/db/schema-logs.d.ts.map +1 -0
  165. package/dist/db/schema-logs.js +13 -0
  166. package/dist/db/schema-logs.js.map +1 -0
  167. package/dist/db/schema-oauth.d.ts +2 -0
  168. package/dist/db/schema-oauth.d.ts.map +1 -0
  169. package/dist/db/schema-oauth.js +69 -0
  170. package/dist/db/schema-oauth.js.map +1 -0
  171. package/dist/db/schema-saved-move.d.ts +2 -0
  172. package/dist/db/schema-saved-move.d.ts.map +1 -0
  173. package/dist/db/schema-saved-move.js +13 -0
  174. package/dist/db/schema-saved-move.js.map +1 -0
  175. package/dist/db/schema-saved.d.ts +2 -0
  176. package/dist/db/schema-saved.d.ts.map +1 -0
  177. package/dist/db/schema-saved.js +13 -0
  178. package/dist/db/schema-saved.js.map +1 -0
  179. package/dist/db/schema-scim.d.ts +2 -0
  180. package/dist/db/schema-scim.d.ts.map +1 -0
  181. package/dist/db/schema-scim.js +28 -0
  182. package/dist/db/schema-scim.js.map +1 -0
  183. package/dist/db/schema-slos.d.ts +2 -0
  184. package/dist/db/schema-slos.d.ts.map +1 -0
  185. package/dist/db/schema-slos.js +12 -0
  186. package/dist/db/schema-slos.js.map +1 -0
  187. package/dist/db/schema-sourcemaps.d.ts +2 -0
  188. package/dist/db/schema-sourcemaps.d.ts.map +1 -0
  189. package/dist/db/schema-sourcemaps.js +9 -0
  190. package/dist/db/schema-sourcemaps.js.map +1 -0
  191. package/dist/db/schema-tags.d.ts +2 -0
  192. package/dist/db/schema-tags.d.ts.map +1 -0
  193. package/dist/db/schema-tags.js +12 -0
  194. package/dist/db/schema-tags.js.map +1 -0
  195. package/dist/db/schema-team.d.ts +2 -0
  196. package/dist/db/schema-team.d.ts.map +1 -0
  197. package/dist/db/schema-team.js +15 -0
  198. package/dist/db/schema-team.js.map +1 -0
  199. package/dist/db/schema-uptime.d.ts +2 -0
  200. package/dist/db/schema-uptime.d.ts.map +1 -0
  201. package/dist/db/schema-uptime.js +22 -0
  202. package/dist/db/schema-uptime.js.map +1 -0
  203. package/dist/db/schema.d.ts.map +1 -1
  204. package/dist/db/schema.js +30 -0
  205. package/dist/db/schema.js.map +1 -1
  206. package/dist/http/http.d.ts +5 -1
  207. package/dist/http/http.d.ts.map +1 -1
  208. package/dist/http/http.js +5 -1
  209. package/dist/http/http.js.map +1 -1
  210. package/dist/jobs.d.ts +1 -1
  211. package/dist/jobs.d.ts.map +1 -1
  212. package/dist/jobs.js +15 -2
  213. package/dist/jobs.js.map +1 -1
  214. package/dist/mail/emails-billing.d.ts +17 -0
  215. package/dist/mail/emails-billing.d.ts.map +1 -0
  216. package/dist/mail/emails-billing.js +36 -0
  217. package/dist/mail/emails-billing.js.map +1 -0
  218. package/dist/mail/emails.d.ts +1 -1
  219. package/dist/mail/emails.d.ts.map +1 -1
  220. package/dist/mail/emails.js +7 -4
  221. package/dist/mail/emails.js.map +1 -1
  222. package/dist/mail/mailer.d.ts +1 -1
  223. package/dist/mail/mailer.d.ts.map +1 -1
  224. package/dist/mail/samples.d.ts.map +1 -1
  225. package/dist/mail/samples.js +17 -0
  226. package/dist/mail/samples.js.map +1 -1
  227. package/dist/mail/templates.d.ts +1 -1
  228. package/dist/mail/templates.d.ts.map +1 -1
  229. package/dist/notify/digest-data.d.ts.map +1 -1
  230. package/dist/notify/digest-data.js +2 -2
  231. package/dist/notify/digest-data.js.map +1 -1
  232. package/dist/notify/digest.d.ts.map +1 -1
  233. package/dist/notify/digest.js +4 -1
  234. package/dist/notify/digest.js.map +1 -1
  235. package/dist/notify/team-describe.d.ts.map +1 -1
  236. package/dist/notify/team-describe.js +14 -0
  237. package/dist/notify/team-describe.js.map +1 -1
  238. package/dist/repo/alert-events.d.ts +38 -0
  239. package/dist/repo/alert-events.d.ts.map +1 -0
  240. package/dist/repo/alert-events.js +29 -0
  241. package/dist/repo/alert-events.js.map +1 -0
  242. package/dist/repo/alerts.d.ts +14 -44
  243. package/dist/repo/alerts.d.ts.map +1 -1
  244. package/dist/repo/alerts.js +35 -13
  245. package/dist/repo/alerts.js.map +1 -1
  246. package/dist/repo/audit.d.ts +19 -1
  247. package/dist/repo/audit.d.ts.map +1 -1
  248. package/dist/repo/audit.js +24 -2
  249. package/dist/repo/audit.js.map +1 -1
  250. package/dist/repo/auth-prune.d.ts +1 -1
  251. package/dist/repo/auth-prune.d.ts.map +1 -1
  252. package/dist/repo/auth-prune.js +13 -1
  253. package/dist/repo/auth-prune.js.map +1 -1
  254. package/dist/repo/billing.d.ts +30 -0
  255. package/dist/repo/billing.d.ts.map +1 -0
  256. package/dist/repo/billing.js +47 -0
  257. package/dist/repo/billing.js.map +1 -0
  258. package/dist/repo/grants.d.ts +30 -0
  259. package/dist/repo/grants.d.ts.map +1 -0
  260. package/dist/repo/grants.js +57 -0
  261. package/dist/repo/grants.js.map +1 -0
  262. package/dist/repo/issues.d.ts +15 -0
  263. package/dist/repo/issues.d.ts.map +1 -0
  264. package/dist/repo/issues.js +31 -0
  265. package/dist/repo/issues.js.map +1 -0
  266. package/dist/repo/keys.d.ts +51 -0
  267. package/dist/repo/keys.d.ts.map +1 -0
  268. package/dist/repo/keys.js +58 -0
  269. package/dist/repo/keys.js.map +1 -0
  270. package/dist/repo/log-retention.d.ts +8 -0
  271. package/dist/repo/log-retention.d.ts.map +1 -0
  272. package/dist/repo/log-retention.js +20 -0
  273. package/dist/repo/log-retention.js.map +1 -0
  274. package/dist/repo/metric-read.d.ts +2 -0
  275. package/dist/repo/metric-read.d.ts.map +1 -1
  276. package/dist/repo/metric-read.js +5 -1
  277. package/dist/repo/metric-read.js.map +1 -1
  278. package/dist/repo/metric-write.d.ts.map +1 -1
  279. package/dist/repo/metric-write.js +3 -2
  280. package/dist/repo/metric-write.js.map +1 -1
  281. package/dist/repo/orgs.d.ts +2 -0
  282. package/dist/repo/orgs.d.ts.map +1 -1
  283. package/dist/repo/orgs.js +5 -1
  284. package/dist/repo/orgs.js.map +1 -1
  285. package/dist/repo/project-roles.d.ts +28 -0
  286. package/dist/repo/project-roles.d.ts.map +1 -0
  287. package/dist/repo/project-roles.js +39 -0
  288. package/dist/repo/project-roles.js.map +1 -0
  289. package/dist/repo/projects.d.ts +3 -22
  290. package/dist/repo/projects.d.ts.map +1 -1
  291. package/dist/repo/projects.js +4 -29
  292. package/dist/repo/projects.js.map +1 -1
  293. package/dist/repo/saved.d.ts +9 -0
  294. package/dist/repo/saved.d.ts.map +1 -0
  295. package/dist/repo/saved.js +29 -0
  296. package/dist/repo/saved.js.map +1 -0
  297. package/dist/repo/scim-tokens.d.ts +20 -0
  298. package/dist/repo/scim-tokens.d.ts.map +1 -0
  299. package/dist/repo/scim-tokens.js +32 -0
  300. package/dist/repo/scim-tokens.js.map +1 -0
  301. package/dist/repo/services.d.ts.map +1 -1
  302. package/dist/repo/services.js +2 -1
  303. package/dist/repo/services.js.map +1 -1
  304. package/dist/repo/settings.d.ts +30 -0
  305. package/dist/repo/settings.d.ts.map +1 -0
  306. package/dist/repo/settings.js +55 -0
  307. package/dist/repo/settings.js.map +1 -0
  308. package/dist/repo/slos.d.ts +10 -0
  309. package/dist/repo/slos.d.ts.map +1 -0
  310. package/dist/repo/slos.js +27 -0
  311. package/dist/repo/slos.js.map +1 -0
  312. package/dist/repo/sourcemaps.d.ts +9 -0
  313. package/dist/repo/sourcemaps.d.ts.map +1 -0
  314. package/dist/repo/sourcemaps.js +34 -0
  315. package/dist/repo/sourcemaps.js.map +1 -0
  316. package/dist/repo/tags.d.ts +11 -0
  317. package/dist/repo/tags.d.ts.map +1 -0
  318. package/dist/repo/tags.js +33 -0
  319. package/dist/repo/tags.js.map +1 -0
  320. package/dist/repo/trace-read.d.ts.map +1 -1
  321. package/dist/repo/trace-read.js +3 -1
  322. package/dist/repo/trace-read.js.map +1 -1
  323. package/dist/repo/trace-write.d.ts +1 -1
  324. package/dist/repo/trace-write.d.ts.map +1 -1
  325. package/dist/repo/trace-write.js +11 -5
  326. package/dist/repo/trace-write.js.map +1 -1
  327. package/dist/repo/uptime.d.ts +21 -0
  328. package/dist/repo/uptime.d.ts.map +1 -0
  329. package/dist/repo/uptime.js +53 -0
  330. package/dist/repo/uptime.js.map +1 -0
  331. package/dist/routes/alerts.d.ts.map +1 -1
  332. package/dist/routes/alerts.js +65 -66
  333. package/dist/routes/alerts.js.map +1 -1
  334. package/dist/routes/apps.d.ts +20 -0
  335. package/dist/routes/apps.d.ts.map +1 -0
  336. package/dist/routes/apps.js +53 -0
  337. package/dist/routes/apps.js.map +1 -0
  338. package/dist/routes/billing.d.ts +4 -0
  339. package/dist/routes/billing.d.ts.map +1 -0
  340. package/dist/routes/billing.js +51 -0
  341. package/dist/routes/billing.js.map +1 -0
  342. package/dist/routes/data.d.ts.map +1 -1
  343. package/dist/routes/data.js +16 -7
  344. package/dist/routes/data.js.map +1 -1
  345. package/dist/routes/index.d.ts.map +1 -1
  346. package/dist/routes/index.js +24 -0
  347. package/dist/routes/index.js.map +1 -1
  348. package/dist/routes/ingest.d.ts +3 -1
  349. package/dist/routes/ingest.d.ts.map +1 -1
  350. package/dist/routes/ingest.js +55 -14
  351. package/dist/routes/ingest.js.map +1 -1
  352. package/dist/routes/issues.d.ts +4 -0
  353. package/dist/routes/issues.d.ts.map +1 -0
  354. package/dist/routes/issues.js +34 -0
  355. package/dist/routes/issues.js.map +1 -0
  356. package/dist/routes/keys.d.ts +4 -0
  357. package/dist/routes/keys.d.ts.map +1 -0
  358. package/dist/routes/keys.js +70 -0
  359. package/dist/routes/keys.js.map +1 -0
  360. package/dist/routes/mcp.d.ts.map +1 -1
  361. package/dist/routes/mcp.js +60 -23
  362. package/dist/routes/mcp.js.map +1 -1
  363. package/dist/routes/me.d.ts.map +1 -1
  364. package/dist/routes/me.js +15 -5
  365. package/dist/routes/me.js.map +1 -1
  366. package/dist/routes/metrics.js +1 -1
  367. package/dist/routes/metrics.js.map +1 -1
  368. package/dist/routes/models.d.ts +7 -1
  369. package/dist/routes/models.d.ts.map +1 -1
  370. package/dist/routes/models.js +55 -19
  371. package/dist/routes/models.js.map +1 -1
  372. package/dist/routes/notify.d.ts.map +1 -1
  373. package/dist/routes/notify.js +3 -1
  374. package/dist/routes/notify.js.map +1 -1
  375. package/dist/routes/oauth-meta.d.ts +7 -0
  376. package/dist/routes/oauth-meta.d.ts.map +1 -0
  377. package/dist/routes/oauth-meta.js +52 -0
  378. package/dist/routes/oauth-meta.js.map +1 -0
  379. package/dist/routes/orgs.d.ts.map +1 -1
  380. package/dist/routes/orgs.js +23 -7
  381. package/dist/routes/orgs.js.map +1 -1
  382. package/dist/routes/projects.d.ts.map +1 -1
  383. package/dist/routes/projects.js +31 -22
  384. package/dist/routes/projects.js.map +1 -1
  385. package/dist/routes/saved.d.ts +4 -0
  386. package/dist/routes/saved.d.ts.map +1 -0
  387. package/dist/routes/saved.js +56 -0
  388. package/dist/routes/saved.js.map +1 -0
  389. package/dist/routes/scim.d.ts +4 -0
  390. package/dist/routes/scim.d.ts.map +1 -0
  391. package/dist/routes/scim.js +37 -0
  392. package/dist/routes/scim.js.map +1 -0
  393. package/dist/routes/search.d.ts.map +1 -1
  394. package/dist/routes/search.js +8 -5
  395. package/dist/routes/search.js.map +1 -1
  396. package/dist/routes/settings.d.ts +4 -0
  397. package/dist/routes/settings.d.ts.map +1 -0
  398. package/dist/routes/settings.js +39 -0
  399. package/dist/routes/settings.js.map +1 -0
  400. package/dist/routes/shares.d.ts +3 -0
  401. package/dist/routes/shares.d.ts.map +1 -1
  402. package/dist/routes/shares.js +28 -15
  403. package/dist/routes/shares.js.map +1 -1
  404. package/dist/routes/slos.d.ts +4 -0
  405. package/dist/routes/slos.d.ts.map +1 -0
  406. package/dist/routes/slos.js +76 -0
  407. package/dist/routes/slos.js.map +1 -0
  408. package/dist/routes/sourcemaps.d.ts +9 -0
  409. package/dist/routes/sourcemaps.d.ts.map +1 -0
  410. package/dist/routes/sourcemaps.js +54 -0
  411. package/dist/routes/sourcemaps.js.map +1 -0
  412. package/dist/routes/status.d.ts +4 -0
  413. package/dist/routes/status.d.ts.map +1 -0
  414. package/dist/routes/status.js +60 -0
  415. package/dist/routes/status.js.map +1 -0
  416. package/dist/routes/tags.d.ts +4 -0
  417. package/dist/routes/tags.d.ts.map +1 -0
  418. package/dist/routes/tags.js +81 -0
  419. package/dist/routes/tags.js.map +1 -0
  420. package/dist/routes/uptime.d.ts +4 -0
  421. package/dist/routes/uptime.d.ts.map +1 -0
  422. package/dist/routes/uptime.js +71 -0
  423. package/dist/routes/uptime.js.map +1 -0
  424. package/dist/scale-exec.d.ts +3 -2
  425. package/dist/scale-exec.d.ts.map +1 -1
  426. package/dist/scale-exec.js +5 -4
  427. package/dist/scale-exec.js.map +1 -1
  428. package/dist/server.d.ts.map +1 -1
  429. package/dist/server.js +30 -7
  430. package/dist/server.js.map +1 -1
  431. package/dist/settle.d.ts +6 -3
  432. package/dist/settle.d.ts.map +1 -1
  433. package/dist/settle.js +11 -8
  434. package/dist/settle.js.map +1 -1
  435. package/dist/telemetry/ch/admin.d.ts +8 -4
  436. package/dist/telemetry/ch/admin.d.ts.map +1 -1
  437. package/dist/telemetry/ch/admin.js +33 -16
  438. package/dist/telemetry/ch/admin.js.map +1 -1
  439. package/dist/telemetry/ch/queue.d.ts +6 -4
  440. package/dist/telemetry/ch/queue.d.ts.map +1 -1
  441. package/dist/telemetry/ch/queue.js +13 -9
  442. package/dist/telemetry/ch/queue.js.map +1 -1
  443. package/dist/telemetry/ch/read.d.ts.map +1 -1
  444. package/dist/telemetry/ch/read.js +3 -1
  445. package/dist/telemetry/ch/read.js.map +1 -1
  446. package/dist/telemetry/ch/rebuild.d.ts +23 -0
  447. package/dist/telemetry/ch/rebuild.d.ts.map +1 -0
  448. package/dist/telemetry/ch/rebuild.js +65 -0
  449. package/dist/telemetry/ch/rebuild.js.map +1 -0
  450. package/dist/telemetry/ch/schema-facts.d.ts +1 -1
  451. package/dist/telemetry/ch/schema-facts.d.ts.map +1 -1
  452. package/dist/telemetry/ch/schema-facts.js +8 -2
  453. package/dist/telemetry/ch/schema-facts.js.map +1 -1
  454. package/dist/telemetry/ch/schema-raw.d.ts +2 -0
  455. package/dist/telemetry/ch/schema-raw.d.ts.map +1 -1
  456. package/dist/telemetry/ch/schema-raw.js +2 -0
  457. package/dist/telemetry/ch/schema-raw.js.map +1 -1
  458. package/dist/telemetry/ch/schema.d.ts.map +1 -1
  459. package/dist/telemetry/ch/schema.js +2 -2
  460. package/dist/telemetry/ch/schema.js.map +1 -1
  461. package/dist/telemetry/ch/settle-pool.d.ts +24 -0
  462. package/dist/telemetry/ch/settle-pool.d.ts.map +1 -0
  463. package/dist/telemetry/ch/settle-pool.js +58 -0
  464. package/dist/telemetry/ch/settle-pool.js.map +1 -0
  465. package/dist/telemetry/ch/settle-rows.d.ts +7 -4
  466. package/dist/telemetry/ch/settle-rows.d.ts.map +1 -1
  467. package/dist/telemetry/ch/settle-rows.js +15 -8
  468. package/dist/telemetry/ch/settle-rows.js.map +1 -1
  469. package/dist/telemetry/ch/settle-work.d.ts +21 -0
  470. package/dist/telemetry/ch/settle-work.d.ts.map +1 -0
  471. package/dist/telemetry/ch/settle-work.js +52 -0
  472. package/dist/telemetry/ch/settle-work.js.map +1 -0
  473. package/dist/telemetry/ch/settle-worker.d.ts +2 -0
  474. package/dist/telemetry/ch/settle-worker.d.ts.map +1 -0
  475. package/dist/telemetry/ch/settle-worker.js +10 -0
  476. package/dist/telemetry/ch/settle-worker.js.map +1 -0
  477. package/dist/telemetry/ch/settle.d.ts +17 -3
  478. package/dist/telemetry/ch/settle.d.ts.map +1 -1
  479. package/dist/telemetry/ch/settle.js +15 -56
  480. package/dist/telemetry/ch/settle.js.map +1 -1
  481. package/dist/telemetry/ch/store.d.ts +12 -1
  482. package/dist/telemetry/ch/store.d.ts.map +1 -1
  483. package/dist/telemetry/ch/store.js +37 -8
  484. package/dist/telemetry/ch/store.js.map +1 -1
  485. package/dist/telemetry/ch/util.d.ts +7 -0
  486. package/dist/telemetry/ch/util.d.ts.map +1 -1
  487. package/dist/telemetry/ch/util.js +4 -0
  488. package/dist/telemetry/ch/util.js.map +1 -1
  489. package/dist/telemetry/ch/write.d.ts +2 -1
  490. package/dist/telemetry/ch/write.d.ts.map +1 -1
  491. package/dist/telemetry/ch/write.js +10 -10
  492. package/dist/telemetry/ch/write.js.map +1 -1
  493. package/dist/telemetry/index.d.ts +4 -1
  494. package/dist/telemetry/index.d.ts.map +1 -1
  495. package/dist/telemetry/index.js +8 -3
  496. package/dist/telemetry/index.js.map +1 -1
  497. package/dist/telemetry/pg-store.d.ts.map +1 -1
  498. package/dist/telemetry/pg-store.js +13 -8
  499. package/dist/telemetry/pg-store.js.map +1 -1
  500. package/dist/telemetry/store.d.ts +13 -2
  501. package/dist/telemetry/store.d.ts.map +1 -1
  502. package/dist/uptime/headers.d.ts +6 -0
  503. package/dist/uptime/headers.d.ts.map +1 -0
  504. package/dist/uptime/headers.js +25 -0
  505. package/dist/uptime/headers.js.map +1 -0
  506. package/dist/uptime/run.d.ts +9 -0
  507. package/dist/uptime/run.d.ts.map +1 -0
  508. package/dist/uptime/run.js +40 -0
  509. package/dist/uptime/run.js.map +1 -0
  510. package/package.json +9 -5
  511. package/dist/alerts/notify.d.ts +0 -28
  512. package/dist/alerts/notify.d.ts.map +0 -1
  513. package/dist/alerts/notify.js +0 -52
  514. package/dist/alerts/notify.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import type { Executor, MetricAlertData, MetricData, SearchPage, SearchQuery, Suggestion, SuggestRequest, TimeRange, TimeWindow, Trace } from "@wizeworks/lens-core";
1
+ import type { Executor, FactOptions, MetricAlertData, MetricData, SearchPage, SearchQuery, Suggestion, SuggestRequest, TimeRange, TimeWindow, Trace } from "@wizeworks/lens-core";
2
2
  import type { HubWrite } from "@wizeworks/lens-hub/kit";
3
3
  export interface TraceQuery {
4
4
  projectId: string;
@@ -10,6 +10,8 @@ export interface TraceQuery {
10
10
  from?: number;
11
11
  env?: string;
12
12
  session?: string;
13
+ /** Leave out loose batches (lines outside a request), which are not traces to list. */
14
+ noLoose?: boolean;
13
15
  limit: number;
14
16
  }
15
17
  export interface MetricQuery {
@@ -19,8 +21,15 @@ export interface MetricQuery {
19
21
  }
20
22
  /** How long each project's organization keeps data, in days; the default when a project has none. */
21
23
  export type RetentionOf = (projectIds: readonly string[]) => Promise<Map<string, number>>;
24
+ /** Which waiting traces `settling` counts: one environment, and only those last written at or before `before`. */
25
+ export interface SettlingScope {
26
+ env?: string;
27
+ before?: number;
28
+ }
22
29
  export interface SettleOptions {
23
30
  defaultRetentionDays?: number;
31
+ /** The cloud's thresholds; a project's own settings win. */
32
+ defaultFacts?: Partial<FactOptions>;
24
33
  batch?: number;
25
34
  budgetMs?: number;
26
35
  /** Called for each project whose stats a batch wrote. */
@@ -48,7 +57,7 @@ export interface TelemetryStore {
48
57
  /** Page needs from the project's stats. */
49
58
  executor(projectId: string, retentionMs: number, env?: string): Executor;
50
59
  /** Traces still waiting for their stats, or null when none. */
51
- settling(projectId: string, env?: string): Promise<number | null>;
60
+ settling(projectId: string, o?: SettlingScope): Promise<number | null>;
52
61
  search(projectId: string, q: SearchQuery): Promise<SearchPage>;
53
62
  suggest(projectId: string, r: SuggestRequest): Promise<Suggestion[]>;
54
63
  /** The slowest endpoints by p95 in a window, with at least `minCount` requests. */
@@ -59,6 +68,8 @@ export interface TelemetryStore {
59
68
  }[]>;
60
69
  metricData(m: MetricQuery, range: TimeRange, params: Readonly<Record<string, string>>, now: number): Promise<MetricData>;
61
70
  metricAlertData(m: MetricQuery, name: string, w: TimeWindow, now: number): Promise<MetricAlertData>;
71
+ /** Host and Kubernetes metric series for the Hosts and Kubernetes pages. */
72
+ infraData(m: MetricQuery, range: TimeRange, params: Readonly<Record<string, string>>, now: number): Promise<MetricData>;
62
73
  /** Build stats for quiet traces. Returns how many settled. */
63
74
  settle(now: number, o?: SettleOptions): Promise<number>;
64
75
  /** Drop traces, metrics, and rollups past each organization's retention. */
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/telemetry/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/telemetry/store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { AuthSecret } from "../auth/secret.js";
2
+ /** Headers as stored: encrypted with the newest secret, or "{}" when there are none. */
3
+ export declare function sealHeaders(secrets: readonly AuthSecret[], headers: Record<string, string>): Promise<string>;
4
+ /** Headers from storage. A secret that is no longer configured opens nothing: the check then runs without its headers. */
5
+ export declare function openHeaders(secrets: readonly AuthSecret[], stored: string): Promise<Record<string, string>>;
6
+ //# sourceMappingURL=headers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headers.d.ts","sourceRoot":"","sources":["../../src/uptime/headers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD,wFAAwF;AACxF,wBAAsB,WAAW,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAIlH;AAED,0HAA0H;AAC1H,wBAAsB,WAAW,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAUjH"}
@@ -0,0 +1,25 @@
1
+ import { symmetricDecrypt, symmetricEncrypt } from "better-auth/crypto";
2
+ // Check headers often hold tokens, so they are stored encrypted with the auth secret ("v<version>:<ciphertext>"), like 2FA secrets.
3
+ /** Headers as stored: encrypted with the newest secret, or "{}" when there are none. */
4
+ export async function sealHeaders(secrets, headers) {
5
+ if (Object.keys(headers).length === 0)
6
+ return "{}";
7
+ const s = secrets[0];
8
+ return `v${s.version}:${await symmetricEncrypt({ key: s.value, data: JSON.stringify(headers) })}`;
9
+ }
10
+ /** Headers from storage. A secret that is no longer configured opens nothing: the check then runs without its headers. */
11
+ export async function openHeaders(secrets, stored) {
12
+ const m = /^v(\d+):(.+)$/s.exec(stored);
13
+ if (!m)
14
+ return JSON.parse(stored);
15
+ const secret = secrets.find((s) => s.version === Number(m[1]));
16
+ if (!secret)
17
+ return {};
18
+ try {
19
+ return JSON.parse(await symmetricDecrypt({ key: secret.value, data: m[2] }));
20
+ }
21
+ catch {
22
+ return {};
23
+ }
24
+ }
25
+ //# sourceMappingURL=headers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headers.js","sourceRoot":"","sources":["../../src/uptime/headers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGxE,oIAAoI;AAEpI,wFAAwF;AACxF,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAA8B,EAAE,OAA+B;IAC/F,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;IACtB,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;AACpG,CAAC;AAED,0HAA0H;AAC1H,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAA8B,EAAE,MAAc;IAC9E,MAAM,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAA2B,CAAC;IAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,gBAAgB,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,EAAE,CAAC,CAA2B,CAAC;IAC1G,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { CloudApp } from "../app.js";
2
+ import { type CloudCheck } from "../repo/uptime.js";
3
+ /** A check may not point into the cloud's own network (metadata, databases), the same rule as alert webhooks. Self-hosts can allow it. */
4
+ export declare function checkUrlProblem(url: string, allowPrivate: boolean): Promise<string | null>;
5
+ /** Run one check now: keep its result, and write it as a wizelens-uptime trace through the normal write path. */
6
+ export declare function runCloudCheck(app: CloudApp, c: CloudCheck): Promise<void>;
7
+ /** Run every due check, ten at a time. Claiming moves each check's next run first, so replicas and slow runs never double up. */
8
+ export declare function runUptime(app: CloudApp): Promise<number>;
9
+ //# sourceMappingURL=run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/uptime/run.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAY,KAAK,UAAU,EAAW,MAAM,mBAAmB,CAAC;AAKvE,0IAA0I;AAC1I,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAMhG;AAED,iHAAiH;AACjH,wBAAsB,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ/E;AAED,iIAAiI;AACjI,wBAAsB,SAAS,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ9D"}
@@ -0,0 +1,40 @@
1
+ import { lookup } from "node:dns/promises";
2
+ import { isIP } from "node:net";
3
+ import { UPTIME_SERVICE, uptimeTelemetry } from "@wizeworks/lens-core";
4
+ import { isPrivateAddress, runCheck } from "@wizeworks/lens-hub/kit";
5
+ import { writeService } from "../repo/trace-write.js";
6
+ import { claimDue, saveRun } from "../repo/uptime.js";
7
+ const BATCH = 100;
8
+ const PARALLEL = 10;
9
+ /** A check may not point into the cloud's own network (metadata, databases), the same rule as alert webhooks. Self-hosts can allow it. */
10
+ export async function checkUrlProblem(url, allowPrivate) {
11
+ if (allowPrivate)
12
+ return null;
13
+ const host = new URL(url).hostname.replace(/^\[|\]$/g, "");
14
+ const addresses = isIP(host) ? [host] : (await lookup(host, { all: true }).catch(() => [])).map((a) => a.address);
15
+ if (addresses.length === 0)
16
+ return "The host name does not resolve.";
17
+ return addresses.some(isPrivateAddress) ? "Checks cannot point at private or local addresses." : null;
18
+ }
19
+ /** Run one check now: keep its result, and write it as a wizelens-uptime trace through the normal write path. */
20
+ export async function runCloudCheck(app, c) {
21
+ const r = await runCheck(c, { allowPrivate: app.config.allowPrivateWebhooks, now: app.config.now });
22
+ await saveRun(app.db, c, r);
23
+ const sender = { service: UPTIME_SERVICE, environment: c.env || undefined, runtime: `wizelens-cloud ${app.version}` };
24
+ const w = { sender, via: "uptime", ...uptimeTelemetry(c, r), remotes: [] };
25
+ const now = app.config.now();
26
+ await writeService(app.db, c.projectId, w, now);
27
+ await app.telemetry.write(c.projectId, w, now);
28
+ }
29
+ /** Run every due check, ten at a time. Claiming moves each check's next run first, so replicas and slow runs never double up. */
30
+ export async function runUptime(app) {
31
+ const due = await claimDue(app.db, app.secrets, app.config.now(), BATCH);
32
+ const queue = [...due];
33
+ const worker = async () => {
34
+ for (let c = queue.shift(); c; c = queue.shift())
35
+ await runCloudCheck(app, c).catch((err) => console.error(`[wizelens-cloud] uptime check ${c.id} failed:`, err));
36
+ };
37
+ await Promise.all(Array.from({ length: Math.min(PARALLEL, due.length) }, worker));
38
+ return due.length;
39
+ }
40
+ //# sourceMappingURL=run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/uptime/run.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wizeworks/lens-cloud",
3
- "version": "0.3.0-alpha.3",
3
+ "version": "0.3.0-alpha.5",
4
4
  "description": "The WizeLens cloud service: many organizations, accounts and teams, server-side stats, alerts, sharing, and scoped AI access, on Postgres.",
5
5
  "license": "MIT",
6
6
  "author": "WizeWorks LLC",
@@ -42,8 +42,11 @@
42
42
  "node": ">=22.13"
43
43
  },
44
44
  "dependencies": {
45
+ "@better-auth/oauth-provider": "1.7.10",
45
46
  "@better-auth/passkey": "1.7.10",
47
+ "@better-auth/scim": "1.7.10",
46
48
  "@better-auth/sso": "1.7.10",
49
+ "@better-auth/stripe": "1.7.10",
47
50
  "@electric-sql/pglite": "^0.5.10",
48
51
  "@react-email/components": "1.0.12",
49
52
  "better-auth": "1.7.10",
@@ -53,10 +56,11 @@
53
56
  "pg": "^8.23.1",
54
57
  "react": "^19.3.1",
55
58
  "react-dom": "^19.3.1",
56
- "@wizeworks/lens-core": "^0.3.0-alpha.3",
57
- "@wizeworks/lens-hub": "^0.3.0-alpha.3",
58
- "@wizeworks/lens-node": "^0.3.0-alpha.3",
59
- "@wizeworks/lens-ui": "^0.3.0-alpha.3"
59
+ "stripe": "22.6.2",
60
+ "@wizeworks/lens-core": "^0.3.0-alpha.5",
61
+ "@wizeworks/lens-ui": "^0.3.0-alpha.5",
62
+ "@wizeworks/lens-hub": "^0.3.0-alpha.5",
63
+ "@wizeworks/lens-node": "^0.3.0-alpha.5"
60
64
  },
61
65
  "devDependencies": {
62
66
  "@modelcontextprotocol/sdk": "^1.32.1",
@@ -1,28 +0,0 @@
1
- import type { Channel } from "../repo/alerts.js";
2
- export interface Notice {
3
- rule: string;
4
- project: string;
5
- state: "fired" | "resolved" | "test";
6
- message: string;
7
- value: number | null;
8
- threshold: number;
9
- timeMs: number;
10
- /** Link to the project in the dashboard. */
11
- url: string;
12
- }
13
- /** How notices leave: HTTP for webhooks and Slack, and a mail function that sends to the members still allowed and says what it did. */
14
- export interface Outbox {
15
- http: typeof fetch;
16
- allowPrivate: boolean;
17
- email: (to: readonly string[], n: Notice) => string;
18
- }
19
- /** A webhook may not point into the service's own network (cloud metadata, databases). Self-hosts can allow it. */
20
- export declare function checkTarget(url: string, allowPrivate: boolean): Promise<string | null>;
21
- /** The notice in words, for Slack and email. */
22
- export declare function noticeLines(n: Notice): {
23
- subject: string;
24
- lines: string[];
25
- };
26
- /** Send to every channel. Returns one line per channel, for the delivery note of the event. */
27
- export declare function deliver(channels: readonly Channel[], n: Notice, out: Outbox): Promise<string>;
28
- //# sourceMappingURL=notify.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notify.d.ts","sourceRoot":"","sources":["../../src/alerts/notify.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAC;CACb;AAID,wIAAwI;AACxI,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,OAAO,KAAK,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CACrD;AAKD,mHAAmH;AACnH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAY5F;AAED,gDAAgD;AAChD,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CAG3E;AAoBD,+FAA+F;AAC/F,wBAAsB,OAAO,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGnG"}
@@ -1,52 +0,0 @@
1
- import { lookup } from "node:dns/promises";
2
- import { isIP } from "node:net";
3
- const PRIVATE_V4 = [/^10\./, /^127\./, /^169\.254\./, /^172\.(1[6-9]|2\d|3[01])\./, /^192\.168\./, /^0\./, /^100\.(6[4-9]|[7-9]\d|1[01]\d|12[0-7])\./];
4
- const isPrivate = (ip) => (isIP(ip) === 6 ? /^(::1|fc|fd|fe80|::ffff:(10|127|169\.254|192\.168)\.)/i.test(ip) || ip === "::" : PRIVATE_V4.some((r) => r.test(ip)));
5
- /** A webhook may not point into the service's own network (cloud metadata, databases). Self-hosts can allow it. */
6
- export async function checkTarget(url, allowPrivate) {
7
- let u;
8
- try {
9
- u = new URL(url);
10
- }
11
- catch {
12
- return "Not a valid URL.";
13
- }
14
- if (u.protocol !== "https:" && !(allowPrivate && u.protocol === "http:"))
15
- return "Use an https:// URL.";
16
- if (allowPrivate)
17
- return null;
18
- const addresses = isIP(u.hostname) ? [u.hostname] : (await lookup(u.hostname, { all: true }).catch(() => [])).map((a) => a.address);
19
- if (addresses.length === 0)
20
- return "The host name does not resolve.";
21
- return addresses.some(isPrivate) ? "Webhooks cannot point at private or local addresses." : null;
22
- }
23
- /** The notice in words, for Slack and email. */
24
- export function noticeLines(n) {
25
- const verb = n.state === "fired" ? "Alert" : n.state === "resolved" ? "Resolved" : "Test";
26
- return { subject: `${verb}: ${n.rule} (${n.project})`, lines: [`${verb}: ${n.rule} in ${n.project}.`, n.message] };
27
- }
28
- function bodyOf(channel, n) {
29
- if (channel.kind === "webhook")
30
- return n;
31
- const icon = n.state === "fired" ? ":rotating_light:" : n.state === "resolved" ? ":white_check_mark:" : ":bell:";
32
- const { subject } = noticeLines(n);
33
- return { text: `${icon} *${subject}*\n${n.message}\n<${n.url}|Open WizeLens>` };
34
- }
35
- async function post(c, n, out) {
36
- const problem = await checkTarget(c.url, out.allowPrivate);
37
- if (problem)
38
- return `${c.kind}: ${problem}`;
39
- try {
40
- const res = await out.http(c.url, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(bodyOf(c, n)), signal: AbortSignal.timeout(5000), redirect: "error" });
41
- return `${c.kind}: ${res.ok ? "sent" : `HTTP ${res.status}`}`;
42
- }
43
- catch (err) {
44
- return `${c.kind}: ${err instanceof Error ? err.message : "failed"}`;
45
- }
46
- }
47
- /** Send to every channel. Returns one line per channel, for the delivery note of the event. */
48
- export async function deliver(channels, n, out) {
49
- const results = await Promise.all(channels.map(async (c) => (c.kind === "email" ? out.email(c.to, n) : post(c, n, out))));
50
- return results.join("; ") || "no channels";
51
- }
52
- //# sourceMappingURL=notify.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notify.js","sourceRoot":"","sources":["../../src/alerts/notify.ts"],"names":[],"mappings":"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"}