@effect-auth/core 0.1.0-alpha.16 → 0.1.0-alpha.19

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 (637) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +307 -133
  3. package/dist/AbuseProtection.d.ts +100 -0
  4. package/dist/AbuseProtection.d.ts.map +1 -0
  5. package/dist/AbuseProtection.js +71 -0
  6. package/dist/AbuseProtection.js.map +1 -0
  7. package/dist/AccessGrant.d.ts +344 -0
  8. package/dist/AccessGrant.d.ts.map +1 -0
  9. package/dist/AccessGrant.js +687 -0
  10. package/dist/AccessGrant.js.map +1 -0
  11. package/dist/ApiKey.d.ts +0 -12
  12. package/dist/ApiKey.d.ts.map +1 -1
  13. package/dist/ApiKey.js +36 -27
  14. package/dist/ApiKey.js.map +1 -1
  15. package/dist/Assurance.d.ts +415 -0
  16. package/dist/Assurance.d.ts.map +1 -0
  17. package/dist/Assurance.js +764 -0
  18. package/dist/Assurance.js.map +1 -0
  19. package/dist/AtomicPlanExecutor.d.ts +28 -0
  20. package/dist/AtomicPlanExecutor.d.ts.map +1 -0
  21. package/dist/AtomicPlanExecutor.js +5 -0
  22. package/dist/AtomicPlanExecutor.js.map +1 -0
  23. package/dist/AuditLog.d.ts +2314 -52
  24. package/dist/AuditLog.d.ts.map +1 -1
  25. package/dist/AuditLog.js +511 -33
  26. package/dist/AuditLog.js.map +1 -1
  27. package/dist/AuthFlow.d.ts +128 -38
  28. package/dist/AuthFlow.d.ts.map +1 -1
  29. package/dist/AuthFlow.js +611 -263
  30. package/dist/AuthFlow.js.map +1 -1
  31. package/dist/AuthRateLimit.d.ts +96 -0
  32. package/dist/AuthRateLimit.d.ts.map +1 -0
  33. package/dist/AuthRateLimit.js +212 -0
  34. package/dist/AuthRateLimit.js.map +1 -0
  35. package/dist/Challenge.d.ts +0 -3
  36. package/dist/Challenge.d.ts.map +1 -1
  37. package/dist/Challenge.js +1 -4
  38. package/dist/Challenge.js.map +1 -1
  39. package/dist/Client.d.ts +205 -10
  40. package/dist/Client.d.ts.map +1 -1
  41. package/dist/Client.js +397 -16
  42. package/dist/Client.js.map +1 -1
  43. package/dist/CloudflareTurnstile.d.ts +28 -0
  44. package/dist/CloudflareTurnstile.d.ts.map +1 -0
  45. package/dist/CloudflareTurnstile.js +205 -0
  46. package/dist/CloudflareTurnstile.js.map +1 -0
  47. package/dist/Crypto.d.ts +0 -3
  48. package/dist/Crypto.d.ts.map +1 -1
  49. package/dist/Crypto.js +1 -4
  50. package/dist/Crypto.js.map +1 -1
  51. package/dist/DelegatedAccessStorageMigrations.d.ts +7 -0
  52. package/dist/DelegatedAccessStorageMigrations.d.ts.map +1 -0
  53. package/dist/DelegatedAccessStorageMigrations.js +159 -0
  54. package/dist/DelegatedAccessStorageMigrations.js.map +1 -0
  55. package/dist/DevEmail.d.ts +44 -0
  56. package/dist/DevEmail.d.ts.map +1 -0
  57. package/dist/DevEmail.js +115 -0
  58. package/dist/DevEmail.js.map +1 -0
  59. package/dist/DevelopmentSeed.d.ts +47 -0
  60. package/dist/DevelopmentSeed.d.ts.map +1 -0
  61. package/dist/DevelopmentSeed.js +337 -0
  62. package/dist/DevelopmentSeed.js.map +1 -0
  63. package/dist/DisposableEmailDomains.d.ts +19 -0
  64. package/dist/DisposableEmailDomains.d.ts.map +1 -0
  65. package/dist/DisposableEmailDomains.js +85 -0
  66. package/dist/DisposableEmailDomains.js.map +1 -0
  67. package/dist/DomainVerification.d.ts +0 -9
  68. package/dist/DomainVerification.d.ts.map +1 -1
  69. package/dist/DomainVerification.js +36 -22
  70. package/dist/DomainVerification.js.map +1 -1
  71. package/dist/DrizzleBunSqliteStorage.d.ts +18 -0
  72. package/dist/DrizzleBunSqliteStorage.d.ts.map +1 -0
  73. package/dist/DrizzleBunSqliteStorage.js +11 -0
  74. package/dist/DrizzleBunSqliteStorage.js.map +1 -0
  75. package/dist/DrizzleD1SqliteStorage.d.ts +4 -4
  76. package/dist/DrizzleD1SqliteStorage.d.ts.map +1 -1
  77. package/dist/DrizzleD1SqliteStorage.js +5 -5
  78. package/dist/DrizzleD1SqliteStorage.js.map +1 -1
  79. package/dist/DrizzleEffectSqliteStorage.d.ts +13 -4
  80. package/dist/DrizzleEffectSqliteStorage.d.ts.map +1 -1
  81. package/dist/DrizzleEffectSqliteStorage.js +71 -4
  82. package/dist/DrizzleEffectSqliteStorage.js.map +1 -1
  83. package/dist/DrizzleNodeSqliteStorage.d.ts +18 -0
  84. package/dist/DrizzleNodeSqliteStorage.d.ts.map +1 -0
  85. package/dist/DrizzleNodeSqliteStorage.js +11 -0
  86. package/dist/DrizzleNodeSqliteStorage.js.map +1 -0
  87. package/dist/DrizzlePostgresStorage.d.ts +26 -0
  88. package/dist/DrizzlePostgresStorage.d.ts.map +1 -0
  89. package/dist/DrizzlePostgresStorage.js +14 -0
  90. package/dist/DrizzlePostgresStorage.js.map +1 -0
  91. package/dist/EffectQbPostgresDelegatedAccessStorage.d.ts +34 -0
  92. package/dist/EffectQbPostgresDelegatedAccessStorage.d.ts.map +1 -0
  93. package/dist/EffectQbPostgresDelegatedAccessStorage.js +499 -0
  94. package/dist/EffectQbPostgresDelegatedAccessStorage.js.map +1 -0
  95. package/dist/EffectQbPostgresStorage.d.ts +178 -0
  96. package/dist/EffectQbPostgresStorage.d.ts.map +1 -0
  97. package/dist/EffectQbPostgresStorage.js +4637 -0
  98. package/dist/EffectQbPostgresStorage.js.map +1 -0
  99. package/dist/EffectQbSqliteDelegatedAccessStorage.d.ts +112 -0
  100. package/dist/EffectQbSqliteDelegatedAccessStorage.d.ts.map +1 -0
  101. package/dist/EffectQbSqliteDelegatedAccessStorage.js +602 -0
  102. package/dist/EffectQbSqliteDelegatedAccessStorage.js.map +1 -0
  103. package/dist/EffectQbSqliteStorage.d.ts +221 -23
  104. package/dist/EffectQbSqliteStorage.d.ts.map +1 -1
  105. package/dist/EffectQbSqliteStorage.js +2064 -135
  106. package/dist/EffectQbSqliteStorage.js.map +1 -1
  107. package/dist/EmailAuth.d.ts +65 -0
  108. package/dist/EmailAuth.d.ts.map +1 -0
  109. package/dist/EmailAuth.js +171 -0
  110. package/dist/EmailAuth.js.map +1 -0
  111. package/dist/EmailIdentityAuth.d.ts +30 -0
  112. package/dist/EmailIdentityAuth.d.ts.map +1 -0
  113. package/dist/EmailIdentityAuth.js +142 -0
  114. package/dist/EmailIdentityAuth.js.map +1 -0
  115. package/dist/EmailOtp.d.ts +10 -11
  116. package/dist/EmailOtp.d.ts.map +1 -1
  117. package/dist/EmailOtp.js +44 -81
  118. package/dist/EmailOtp.js.map +1 -1
  119. package/dist/EmailRisk.d.ts +48 -0
  120. package/dist/EmailRisk.d.ts.map +1 -0
  121. package/dist/EmailRisk.js +33 -0
  122. package/dist/EmailRisk.js.map +1 -0
  123. package/dist/EmailVerification.d.ts +10 -16
  124. package/dist/EmailVerification.d.ts.map +1 -1
  125. package/dist/EmailVerification.js +85 -42
  126. package/dist/EmailVerification.js.map +1 -1
  127. package/dist/Guard.d.ts +11 -0
  128. package/dist/Guard.d.ts.map +1 -0
  129. package/dist/Guard.js +11 -0
  130. package/dist/Guard.js.map +1 -0
  131. package/dist/HibpPwnedPasswords.d.ts +56 -0
  132. package/dist/HibpPwnedPasswords.d.ts.map +1 -0
  133. package/dist/HibpPwnedPasswords.js +232 -0
  134. package/dist/HibpPwnedPasswords.js.map +1 -0
  135. package/dist/HttpApi/AdminPermissionDefinition.d.ts +4 -0
  136. package/dist/HttpApi/AdminPermissionDefinition.d.ts.map +1 -0
  137. package/dist/HttpApi/AdminPermissionDefinition.js +4 -0
  138. package/dist/HttpApi/AdminPermissionDefinition.js.map +1 -0
  139. package/dist/HttpApi/AdminSecurityTimeline.d.ts +4 -0
  140. package/dist/HttpApi/AdminSecurityTimeline.d.ts.map +1 -0
  141. package/dist/HttpApi/AdminSecurityTimeline.js +4 -0
  142. package/dist/HttpApi/AdminSecurityTimeline.js.map +1 -0
  143. package/dist/HttpApi/AdminSession.d.ts +4 -0
  144. package/dist/HttpApi/AdminSession.d.ts.map +1 -0
  145. package/dist/HttpApi/AdminSession.js +4 -0
  146. package/dist/HttpApi/AdminSession.js.map +1 -0
  147. package/dist/HttpApi/AdminTrustedDevice.d.ts +4 -0
  148. package/dist/HttpApi/AdminTrustedDevice.d.ts.map +1 -0
  149. package/dist/HttpApi/AdminTrustedDevice.js +4 -0
  150. package/dist/HttpApi/AdminTrustedDevice.js.map +1 -0
  151. package/dist/HttpApi/Api.d.ts +939 -884
  152. package/dist/HttpApi/Api.d.ts.map +1 -1
  153. package/dist/HttpApi/Api.js +2254 -940
  154. package/dist/HttpApi/Api.js.map +1 -1
  155. package/dist/HttpApi/ApiKey.d.ts +4 -0
  156. package/dist/HttpApi/ApiKey.d.ts.map +1 -0
  157. package/dist/HttpApi/ApiKey.js +4 -0
  158. package/dist/HttpApi/ApiKey.js.map +1 -0
  159. package/dist/HttpApi/Audit.d.ts +6 -0
  160. package/dist/HttpApi/Audit.d.ts.map +1 -0
  161. package/dist/HttpApi/Audit.js +10 -0
  162. package/dist/HttpApi/Audit.js.map +1 -0
  163. package/dist/HttpApi/ClientApi.d.ts +917 -0
  164. package/dist/HttpApi/ClientApi.d.ts.map +1 -0
  165. package/dist/HttpApi/ClientApi.js +101 -0
  166. package/dist/HttpApi/ClientApi.js.map +1 -0
  167. package/dist/HttpApi/EmailAuth.d.ts +6 -0
  168. package/dist/HttpApi/EmailAuth.d.ts.map +1 -0
  169. package/dist/HttpApi/EmailAuth.js +6 -0
  170. package/dist/HttpApi/EmailAuth.js.map +1 -0
  171. package/dist/HttpApi/EmailGuards.d.ts +115 -0
  172. package/dist/HttpApi/EmailGuards.d.ts.map +1 -0
  173. package/dist/HttpApi/EmailGuards.js +191 -0
  174. package/dist/HttpApi/EmailGuards.js.map +1 -0
  175. package/dist/HttpApi/EmailOtp.d.ts +6 -0
  176. package/dist/HttpApi/EmailOtp.d.ts.map +1 -0
  177. package/dist/HttpApi/EmailOtp.js +6 -0
  178. package/dist/HttpApi/EmailOtp.js.map +1 -0
  179. package/dist/HttpApi/EmailVerification.d.ts +6 -0
  180. package/dist/HttpApi/EmailVerification.d.ts.map +1 -0
  181. package/dist/HttpApi/EmailVerification.js +6 -0
  182. package/dist/HttpApi/EmailVerification.js.map +1 -0
  183. package/dist/HttpApi/Endpoints.d.ts +661 -301
  184. package/dist/HttpApi/Endpoints.d.ts.map +1 -1
  185. package/dist/HttpApi/Endpoints.js +207 -120
  186. package/dist/HttpApi/Endpoints.js.map +1 -1
  187. package/dist/HttpApi/Errors.d.ts +37 -10
  188. package/dist/HttpApi/Errors.d.ts.map +1 -1
  189. package/dist/HttpApi/Errors.js +42 -4
  190. package/dist/HttpApi/Errors.js.map +1 -1
  191. package/dist/HttpApi/Identity.d.ts +6 -0
  192. package/dist/HttpApi/Identity.d.ts.map +1 -0
  193. package/dist/HttpApi/Identity.js +6 -0
  194. package/dist/HttpApi/Identity.js.map +1 -0
  195. package/dist/HttpApi/IdentityGuards.d.ts +31 -0
  196. package/dist/HttpApi/IdentityGuards.d.ts.map +1 -0
  197. package/dist/HttpApi/IdentityGuards.js +33 -0
  198. package/dist/HttpApi/IdentityGuards.js.map +1 -0
  199. package/dist/HttpApi/Jwt.d.ts +4 -0
  200. package/dist/HttpApi/Jwt.d.ts.map +1 -0
  201. package/dist/HttpApi/Jwt.js +4 -0
  202. package/dist/HttpApi/Jwt.js.map +1 -0
  203. package/dist/HttpApi/JwtDiscovery.d.ts +4 -0
  204. package/dist/HttpApi/JwtDiscovery.d.ts.map +1 -0
  205. package/dist/HttpApi/JwtDiscovery.js +4 -0
  206. package/dist/HttpApi/JwtDiscovery.js.map +1 -0
  207. package/dist/HttpApi/LoginApproval.d.ts +5 -0
  208. package/dist/HttpApi/LoginApproval.d.ts.map +1 -0
  209. package/dist/HttpApi/LoginApproval.js +5 -0
  210. package/dist/HttpApi/LoginApproval.js.map +1 -0
  211. package/dist/HttpApi/LoginNotification.d.ts +5 -0
  212. package/dist/HttpApi/LoginNotification.d.ts.map +1 -0
  213. package/dist/HttpApi/LoginNotification.js +5 -0
  214. package/dist/HttpApi/LoginNotification.js.map +1 -0
  215. package/dist/HttpApi/MagicLink.d.ts +6 -0
  216. package/dist/HttpApi/MagicLink.d.ts.map +1 -0
  217. package/dist/HttpApi/MagicLink.js +6 -0
  218. package/dist/HttpApi/MagicLink.js.map +1 -0
  219. package/dist/HttpApi/Mfa.d.ts +5 -0
  220. package/dist/HttpApi/Mfa.d.ts.map +1 -0
  221. package/dist/HttpApi/Mfa.js +5 -0
  222. package/dist/HttpApi/Mfa.js.map +1 -0
  223. package/dist/HttpApi/Middleware.d.ts +26 -0
  224. package/dist/HttpApi/Middleware.d.ts.map +1 -0
  225. package/dist/HttpApi/Middleware.js +13 -0
  226. package/dist/HttpApi/Middleware.js.map +1 -0
  227. package/dist/HttpApi/OAuth.d.ts +4 -0
  228. package/dist/HttpApi/OAuth.d.ts.map +1 -0
  229. package/dist/HttpApi/OAuth.js +4 -0
  230. package/dist/HttpApi/OAuth.js.map +1 -0
  231. package/dist/HttpApi/OAuthDeviceAuthorization.d.ts +106 -0
  232. package/dist/HttpApi/OAuthDeviceAuthorization.d.ts.map +1 -0
  233. package/dist/HttpApi/OAuthDeviceAuthorization.js +415 -0
  234. package/dist/HttpApi/OAuthDeviceAuthorization.js.map +1 -0
  235. package/dist/HttpApi/OAuthProviderAuthorization.d.ts +4 -0
  236. package/dist/HttpApi/OAuthProviderAuthorization.d.ts.map +1 -0
  237. package/dist/HttpApi/OAuthProviderAuthorization.js +4 -0
  238. package/dist/HttpApi/OAuthProviderAuthorization.js.map +1 -0
  239. package/dist/HttpApi/OAuthToken.d.ts +4 -0
  240. package/dist/HttpApi/OAuthToken.d.ts.map +1 -0
  241. package/dist/HttpApi/OAuthToken.js +4 -0
  242. package/dist/HttpApi/OAuthToken.js.map +1 -0
  243. package/dist/HttpApi/OidcDiscovery.d.ts +4 -0
  244. package/dist/HttpApi/OidcDiscovery.d.ts.map +1 -0
  245. package/dist/HttpApi/OidcDiscovery.js +4 -0
  246. package/dist/HttpApi/OidcDiscovery.js.map +1 -0
  247. package/dist/HttpApi/Operations/AdminPermissionDefinition.d.ts +28 -0
  248. package/dist/HttpApi/Operations/AdminPermissionDefinition.d.ts.map +1 -0
  249. package/dist/HttpApi/Operations/AdminPermissionDefinition.js +5 -0
  250. package/dist/HttpApi/Operations/AdminPermissionDefinition.js.map +1 -0
  251. package/dist/HttpApi/Operations/AdminSession.d.ts +16 -0
  252. package/dist/HttpApi/Operations/AdminSession.d.ts.map +1 -0
  253. package/dist/HttpApi/Operations/AdminSession.js +5 -0
  254. package/dist/HttpApi/Operations/AdminSession.js.map +1 -0
  255. package/dist/HttpApi/Operations/ApiKey.d.ts +16 -0
  256. package/dist/HttpApi/Operations/ApiKey.d.ts.map +1 -0
  257. package/dist/HttpApi/Operations/ApiKey.js +5 -0
  258. package/dist/HttpApi/Operations/ApiKey.js.map +1 -0
  259. package/dist/HttpApi/Operations/Discovery.d.ts +19 -0
  260. package/dist/HttpApi/Operations/Discovery.d.ts.map +1 -0
  261. package/dist/HttpApi/Operations/Discovery.js +7 -0
  262. package/dist/HttpApi/Operations/Discovery.js.map +1 -0
  263. package/dist/HttpApi/Operations/EmailAuth.d.ts +12 -0
  264. package/dist/HttpApi/Operations/EmailAuth.d.ts.map +1 -0
  265. package/dist/HttpApi/Operations/EmailAuth.js +5 -0
  266. package/dist/HttpApi/Operations/EmailAuth.js.map +1 -0
  267. package/dist/HttpApi/Operations/EmailOtp.d.ts +14 -0
  268. package/dist/HttpApi/Operations/EmailOtp.d.ts.map +1 -0
  269. package/dist/HttpApi/Operations/EmailOtp.js +5 -0
  270. package/dist/HttpApi/Operations/EmailOtp.js.map +1 -0
  271. package/dist/HttpApi/Operations/EmailVerification.d.ts +14 -0
  272. package/dist/HttpApi/Operations/EmailVerification.d.ts.map +1 -0
  273. package/dist/HttpApi/Operations/EmailVerification.js +5 -0
  274. package/dist/HttpApi/Operations/EmailVerification.js.map +1 -0
  275. package/dist/HttpApi/Operations/HttpOperation.d.ts +4 -0
  276. package/dist/HttpApi/Operations/HttpOperation.d.ts.map +1 -0
  277. package/dist/HttpApi/Operations/HttpOperation.js +2 -0
  278. package/dist/HttpApi/Operations/HttpOperation.js.map +1 -0
  279. package/dist/HttpApi/Operations/Identity.d.ts +22 -0
  280. package/dist/HttpApi/Operations/Identity.d.ts.map +1 -0
  281. package/dist/HttpApi/Operations/Identity.js +5 -0
  282. package/dist/HttpApi/Operations/Identity.js.map +1 -0
  283. package/dist/HttpApi/Operations/Jwt.d.ts +14 -0
  284. package/dist/HttpApi/Operations/Jwt.d.ts.map +1 -0
  285. package/dist/HttpApi/Operations/Jwt.js +5 -0
  286. package/dist/HttpApi/Operations/Jwt.js.map +1 -0
  287. package/dist/HttpApi/Operations/LoginApproval.d.ts +16 -0
  288. package/dist/HttpApi/Operations/LoginApproval.d.ts.map +1 -0
  289. package/dist/HttpApi/Operations/LoginApproval.js +5 -0
  290. package/dist/HttpApi/Operations/LoginApproval.js.map +1 -0
  291. package/dist/HttpApi/Operations/MagicLink.d.ts +14 -0
  292. package/dist/HttpApi/Operations/MagicLink.d.ts.map +1 -0
  293. package/dist/HttpApi/Operations/MagicLink.js +5 -0
  294. package/dist/HttpApi/Operations/MagicLink.js.map +1 -0
  295. package/dist/HttpApi/Operations/Mfa.d.ts +24 -0
  296. package/dist/HttpApi/Operations/Mfa.d.ts.map +1 -0
  297. package/dist/HttpApi/Operations/Mfa.js +5 -0
  298. package/dist/HttpApi/Operations/Mfa.js.map +1 -0
  299. package/dist/HttpApi/Operations/OAuth.d.ts +20 -0
  300. package/dist/HttpApi/Operations/OAuth.d.ts.map +1 -0
  301. package/dist/HttpApi/Operations/OAuth.js +5 -0
  302. package/dist/HttpApi/Operations/OAuth.js.map +1 -0
  303. package/dist/HttpApi/Operations/OAuthDeviceAuthorization.d.ts +23 -0
  304. package/dist/HttpApi/Operations/OAuthDeviceAuthorization.d.ts.map +1 -0
  305. package/dist/HttpApi/Operations/OAuthDeviceAuthorization.js +7 -0
  306. package/dist/HttpApi/Operations/OAuthDeviceAuthorization.js.map +1 -0
  307. package/dist/HttpApi/Operations/OAuthProviderAuthorization.d.ts +12 -0
  308. package/dist/HttpApi/Operations/OAuthProviderAuthorization.d.ts.map +1 -0
  309. package/dist/HttpApi/Operations/OAuthProviderAuthorization.js +5 -0
  310. package/dist/HttpApi/Operations/OAuthProviderAuthorization.js.map +1 -0
  311. package/dist/HttpApi/Operations/OAuthToken.d.ts +26 -0
  312. package/dist/HttpApi/Operations/OAuthToken.d.ts.map +1 -0
  313. package/dist/HttpApi/Operations/OAuthToken.js +9 -0
  314. package/dist/HttpApi/Operations/OAuthToken.js.map +1 -0
  315. package/dist/HttpApi/Operations/Passkey.d.ts +22 -0
  316. package/dist/HttpApi/Operations/Passkey.d.ts.map +1 -0
  317. package/dist/HttpApi/Operations/Passkey.js +5 -0
  318. package/dist/HttpApi/Operations/Passkey.js.map +1 -0
  319. package/dist/HttpApi/Operations/Password.d.ts +22 -0
  320. package/dist/HttpApi/Operations/Password.d.ts.map +1 -0
  321. package/dist/HttpApi/Operations/Password.js +5 -0
  322. package/dist/HttpApi/Operations/Password.js.map +1 -0
  323. package/dist/HttpApi/Operations/RecoveryCodes.d.ts +20 -0
  324. package/dist/HttpApi/Operations/RecoveryCodes.d.ts.map +1 -0
  325. package/dist/HttpApi/Operations/RecoveryCodes.js +5 -0
  326. package/dist/HttpApi/Operations/RecoveryCodes.js.map +1 -0
  327. package/dist/HttpApi/Operations/RefreshToken.d.ts +12 -0
  328. package/dist/HttpApi/Operations/RefreshToken.d.ts.map +1 -0
  329. package/dist/HttpApi/Operations/RefreshToken.js +5 -0
  330. package/dist/HttpApi/Operations/RefreshToken.js.map +1 -0
  331. package/dist/HttpApi/Operations/Security.d.ts +12 -0
  332. package/dist/HttpApi/Operations/Security.d.ts.map +1 -0
  333. package/dist/HttpApi/Operations/Security.js +5 -0
  334. package/dist/HttpApi/Operations/Security.js.map +1 -0
  335. package/dist/HttpApi/Operations/SecurityTimeline.d.ts +19 -0
  336. package/dist/HttpApi/Operations/SecurityTimeline.d.ts.map +1 -0
  337. package/dist/HttpApi/Operations/SecurityTimeline.js +7 -0
  338. package/dist/HttpApi/Operations/SecurityTimeline.js.map +1 -0
  339. package/dist/HttpApi/Operations/Session.d.ts +22 -0
  340. package/dist/HttpApi/Operations/Session.d.ts.map +1 -0
  341. package/dist/HttpApi/Operations/Session.js +5 -0
  342. package/dist/HttpApi/Operations/Session.js.map +1 -0
  343. package/dist/HttpApi/Operations/StepUp.d.ts +22 -0
  344. package/dist/HttpApi/Operations/StepUp.d.ts.map +1 -0
  345. package/dist/HttpApi/Operations/StepUp.js +5 -0
  346. package/dist/HttpApi/Operations/StepUp.js.map +1 -0
  347. package/dist/HttpApi/Operations/Totp.d.ts +20 -0
  348. package/dist/HttpApi/Operations/Totp.d.ts.map +1 -0
  349. package/dist/HttpApi/Operations/Totp.js +5 -0
  350. package/dist/HttpApi/Operations/Totp.js.map +1 -0
  351. package/dist/HttpApi/Operations/TrustedDevice.d.ts +23 -0
  352. package/dist/HttpApi/Operations/TrustedDevice.d.ts.map +1 -0
  353. package/dist/HttpApi/Operations/TrustedDevice.js +7 -0
  354. package/dist/HttpApi/Operations/TrustedDevice.js.map +1 -0
  355. package/dist/HttpApi/Operations/index.d.ts +28 -0
  356. package/dist/HttpApi/Operations/index.d.ts.map +1 -0
  357. package/dist/HttpApi/Operations/index.js +28 -0
  358. package/dist/HttpApi/Operations/index.js.map +1 -0
  359. package/dist/HttpApi/Passkey.d.ts +5 -0
  360. package/dist/HttpApi/Passkey.d.ts.map +1 -0
  361. package/dist/HttpApi/Passkey.js +5 -0
  362. package/dist/HttpApi/Passkey.js.map +1 -0
  363. package/dist/HttpApi/Password.d.ts +220 -0
  364. package/dist/HttpApi/Password.d.ts.map +1 -0
  365. package/dist/HttpApi/Password.js +237 -0
  366. package/dist/HttpApi/Password.js.map +1 -0
  367. package/dist/HttpApi/PasswordContract.d.ts +307 -0
  368. package/dist/HttpApi/PasswordContract.d.ts.map +1 -0
  369. package/dist/HttpApi/PasswordContract.js +63 -0
  370. package/dist/HttpApi/PasswordContract.js.map +1 -0
  371. package/dist/HttpApi/PasswordGuards.d.ts +82 -0
  372. package/dist/HttpApi/PasswordGuards.d.ts.map +1 -0
  373. package/dist/HttpApi/PasswordGuards.js +179 -0
  374. package/dist/HttpApi/PasswordGuards.js.map +1 -0
  375. package/dist/HttpApi/RecoveryCodes.d.ts +5 -0
  376. package/dist/HttpApi/RecoveryCodes.d.ts.map +1 -0
  377. package/dist/HttpApi/RecoveryCodes.js +5 -0
  378. package/dist/HttpApi/RecoveryCodes.js.map +1 -0
  379. package/dist/HttpApi/RefreshToken.d.ts +4 -0
  380. package/dist/HttpApi/RefreshToken.d.ts.map +1 -0
  381. package/dist/HttpApi/RefreshToken.js +4 -0
  382. package/dist/HttpApi/RefreshToken.js.map +1 -0
  383. package/dist/HttpApi/RequestGuards.d.ts +42 -0
  384. package/dist/HttpApi/RequestGuards.d.ts.map +1 -0
  385. package/dist/HttpApi/RequestGuards.js +194 -0
  386. package/dist/HttpApi/RequestGuards.js.map +1 -0
  387. package/dist/HttpApi/Schemas.d.ts +399 -84
  388. package/dist/HttpApi/Schemas.d.ts.map +1 -1
  389. package/dist/HttpApi/Schemas.js +225 -27
  390. package/dist/HttpApi/Schemas.js.map +1 -1
  391. package/dist/HttpApi/Security.d.ts +12 -93
  392. package/dist/HttpApi/Security.d.ts.map +1 -1
  393. package/dist/HttpApi/Security.js +65 -356
  394. package/dist/HttpApi/Security.js.map +1 -1
  395. package/dist/HttpApi/SecurityTimeline.d.ts +4 -0
  396. package/dist/HttpApi/SecurityTimeline.d.ts.map +1 -0
  397. package/dist/HttpApi/SecurityTimeline.js +4 -0
  398. package/dist/HttpApi/SecurityTimeline.js.map +1 -0
  399. package/dist/HttpApi/Session.d.ts +5 -0
  400. package/dist/HttpApi/Session.d.ts.map +1 -0
  401. package/dist/HttpApi/Session.js +5 -0
  402. package/dist/HttpApi/Session.js.map +1 -0
  403. package/dist/HttpApi/SessionGuards.d.ts +15 -0
  404. package/dist/HttpApi/SessionGuards.d.ts.map +1 -0
  405. package/dist/HttpApi/SessionGuards.js +37 -0
  406. package/dist/HttpApi/SessionGuards.js.map +1 -0
  407. package/dist/HttpApi/StepUp.d.ts +5 -0
  408. package/dist/HttpApi/StepUp.d.ts.map +1 -0
  409. package/dist/HttpApi/StepUp.js +5 -0
  410. package/dist/HttpApi/StepUp.js.map +1 -0
  411. package/dist/HttpApi/Totp.d.ts +5 -0
  412. package/dist/HttpApi/Totp.d.ts.map +1 -0
  413. package/dist/HttpApi/Totp.js +5 -0
  414. package/dist/HttpApi/Totp.js.map +1 -0
  415. package/dist/HttpApi/Transport.d.ts +4 -6
  416. package/dist/HttpApi/Transport.d.ts.map +1 -1
  417. package/dist/HttpApi/Transport.js +62 -36
  418. package/dist/HttpApi/Transport.js.map +1 -1
  419. package/dist/HttpApi/TrustedDevice.d.ts +4 -0
  420. package/dist/HttpApi/TrustedDevice.d.ts.map +1 -0
  421. package/dist/HttpApi/TrustedDevice.js +4 -0
  422. package/dist/HttpApi/TrustedDevice.js.map +1 -0
  423. package/dist/HttpApi/index.d.ts +11 -3
  424. package/dist/HttpApi/index.d.ts.map +1 -1
  425. package/dist/HttpApi/index.js +10 -2
  426. package/dist/HttpApi/index.js.map +1 -1
  427. package/dist/Identity.d.ts +138 -0
  428. package/dist/Identity.d.ts.map +1 -0
  429. package/dist/Identity.js +105 -0
  430. package/dist/Identity.js.map +1 -0
  431. package/dist/IdentityManagement.d.ts +189 -0
  432. package/dist/IdentityManagement.d.ts.map +1 -0
  433. package/dist/IdentityManagement.js +317 -0
  434. package/dist/IdentityManagement.js.map +1 -0
  435. package/dist/IncidentAction.d.ts +1 -4
  436. package/dist/IncidentAction.d.ts.map +1 -1
  437. package/dist/IncidentAction.js +15 -9
  438. package/dist/IncidentAction.js.map +1 -1
  439. package/dist/Internal.d.ts +2 -0
  440. package/dist/Internal.d.ts.map +1 -1
  441. package/dist/Internal.js +30 -0
  442. package/dist/Internal.js.map +1 -1
  443. package/dist/Invitation.d.ts +362 -0
  444. package/dist/Invitation.d.ts.map +1 -0
  445. package/dist/Invitation.js +633 -0
  446. package/dist/Invitation.js.map +1 -0
  447. package/dist/IpQualityScore.d.ts +38 -0
  448. package/dist/IpQualityScore.d.ts.map +1 -0
  449. package/dist/IpQualityScore.js +215 -0
  450. package/dist/IpQualityScore.js.map +1 -0
  451. package/dist/Jwt.d.ts +8 -29
  452. package/dist/Jwt.d.ts.map +1 -1
  453. package/dist/Jwt.js +67 -56
  454. package/dist/Jwt.js.map +1 -1
  455. package/dist/LoginApproval.d.ts +15 -30
  456. package/dist/LoginApproval.d.ts.map +1 -1
  457. package/dist/LoginApproval.js +47 -41
  458. package/dist/LoginApproval.js.map +1 -1
  459. package/dist/LoginNotification.d.ts +7 -11
  460. package/dist/LoginNotification.d.ts.map +1 -1
  461. package/dist/LoginNotification.js +30 -17
  462. package/dist/LoginNotification.js.map +1 -1
  463. package/dist/LoginRisk.d.ts +11 -13
  464. package/dist/LoginRisk.d.ts.map +1 -1
  465. package/dist/LoginRisk.js +66 -26
  466. package/dist/LoginRisk.js.map +1 -1
  467. package/dist/LoginRiskEnrichment.d.ts +145 -0
  468. package/dist/LoginRiskEnrichment.d.ts.map +1 -0
  469. package/dist/LoginRiskEnrichment.js +220 -0
  470. package/dist/LoginRiskEnrichment.js.map +1 -0
  471. package/dist/MagicLink.d.ts +9 -8
  472. package/dist/MagicLink.d.ts.map +1 -1
  473. package/dist/MagicLink.js +40 -73
  474. package/dist/MagicLink.js.map +1 -1
  475. package/dist/Mailer.d.ts +19 -12
  476. package/dist/Mailer.d.ts.map +1 -1
  477. package/dist/Mailer.js +10 -12
  478. package/dist/Mailer.js.map +1 -1
  479. package/dist/OAuth.d.ts +138 -96
  480. package/dist/OAuth.d.ts.map +1 -1
  481. package/dist/OAuth.js +522 -221
  482. package/dist/OAuth.js.map +1 -1
  483. package/dist/OAuthDeviceAuthorization.d.ts +378 -0
  484. package/dist/OAuthDeviceAuthorization.d.ts.map +1 -0
  485. package/dist/OAuthDeviceAuthorization.js +860 -0
  486. package/dist/OAuthDeviceAuthorization.js.map +1 -0
  487. package/dist/OAuthDeviceClient.d.ts +76 -0
  488. package/dist/OAuthDeviceClient.d.ts.map +1 -0
  489. package/dist/OAuthDeviceClient.js +362 -0
  490. package/dist/OAuthDeviceClient.js.map +1 -0
  491. package/dist/Passkey.d.ts +15 -17
  492. package/dist/Passkey.d.ts.map +1 -1
  493. package/dist/Passkey.js +86 -39
  494. package/dist/Passkey.js.map +1 -1
  495. package/dist/PasskeyBrowser.d.ts +39 -0
  496. package/dist/PasskeyBrowser.d.ts.map +1 -0
  497. package/dist/PasskeyBrowser.js +206 -0
  498. package/dist/PasskeyBrowser.js.map +1 -0
  499. package/dist/PasskeySimpleWebAuthn.d.ts.map +1 -1
  500. package/dist/PasskeySimpleWebAuthn.js +19 -7
  501. package/dist/PasskeySimpleWebAuthn.js.map +1 -1
  502. package/dist/Password.d.ts +71 -37
  503. package/dist/Password.d.ts.map +1 -1
  504. package/dist/Password.js +295 -81
  505. package/dist/Password.js.map +1 -1
  506. package/dist/PasswordRisk.d.ts +63 -0
  507. package/dist/PasswordRisk.d.ts.map +1 -0
  508. package/dist/PasswordRisk.js +37 -0
  509. package/dist/PasswordRisk.js.map +1 -0
  510. package/dist/Permission.d.ts +308 -0
  511. package/dist/Permission.d.ts.map +1 -0
  512. package/dist/Permission.js +827 -0
  513. package/dist/Permission.js.map +1 -0
  514. package/dist/Policy.d.ts +31 -18
  515. package/dist/Policy.d.ts.map +1 -1
  516. package/dist/Policy.js +58 -14
  517. package/dist/Policy.js.map +1 -1
  518. package/dist/PostgresDelegatedAccessStorageMigrations.d.ts +7 -0
  519. package/dist/PostgresDelegatedAccessStorageMigrations.d.ts.map +1 -0
  520. package/dist/PostgresDelegatedAccessStorageMigrations.js +119 -0
  521. package/dist/PostgresDelegatedAccessStorageMigrations.js.map +1 -0
  522. package/dist/PostgresStorageMigrations.d.ts +16 -0
  523. package/dist/PostgresStorageMigrations.d.ts.map +1 -0
  524. package/dist/PostgresStorageMigrations.js +674 -0
  525. package/dist/PostgresStorageMigrations.js.map +1 -0
  526. package/dist/Privacy.d.ts +0 -3
  527. package/dist/Privacy.d.ts.map +1 -1
  528. package/dist/Privacy.js +2 -5
  529. package/dist/Privacy.js.map +1 -1
  530. package/dist/RateLimiter.d.ts +0 -3
  531. package/dist/RateLimiter.d.ts.map +1 -1
  532. package/dist/RateLimiter.js +1 -4
  533. package/dist/RateLimiter.js.map +1 -1
  534. package/dist/RecoveryCode.d.ts +83 -11
  535. package/dist/RecoveryCode.d.ts.map +1 -1
  536. package/dist/RecoveryCode.js +273 -75
  537. package/dist/RecoveryCode.js.map +1 -1
  538. package/dist/RecoveryPolicy.d.ts +81 -0
  539. package/dist/RecoveryPolicy.d.ts.map +1 -0
  540. package/dist/RecoveryPolicy.js +119 -0
  541. package/dist/RecoveryPolicy.js.map +1 -0
  542. package/dist/RefreshToken.d.ts +0 -9
  543. package/dist/RefreshToken.d.ts.map +1 -1
  544. package/dist/RefreshToken.js +31 -22
  545. package/dist/RefreshToken.js.map +1 -1
  546. package/dist/Retention.d.ts +6 -1
  547. package/dist/Retention.d.ts.map +1 -1
  548. package/dist/Retention.js +49 -12
  549. package/dist/Retention.js.map +1 -1
  550. package/dist/SecurityTimeline.d.ts +1 -4
  551. package/dist/SecurityTimeline.d.ts.map +1 -1
  552. package/dist/SecurityTimeline.js +110 -17
  553. package/dist/SecurityTimeline.js.map +1 -1
  554. package/dist/Sessions.d.ts +124 -29
  555. package/dist/Sessions.d.ts.map +1 -1
  556. package/dist/Sessions.js +626 -94
  557. package/dist/Sessions.js.map +1 -1
  558. package/dist/SqliteStorageSchemaData.d.ts +2 -0
  559. package/dist/SqliteStorageSchemaData.d.ts.map +1 -0
  560. package/dist/SqliteStorageSchemaData.js +508 -0
  561. package/dist/SqliteStorageSchemaData.js.map +1 -0
  562. package/dist/StepUp.d.ts +132 -11
  563. package/dist/StepUp.d.ts.map +1 -1
  564. package/dist/StepUp.js +387 -19
  565. package/dist/StepUp.js.map +1 -1
  566. package/dist/Storage.d.ts +89 -23
  567. package/dist/Storage.d.ts.map +1 -1
  568. package/dist/Storage.js +10 -12
  569. package/dist/Storage.js.map +1 -1
  570. package/dist/StorageMigrations.d.ts +7 -1
  571. package/dist/StorageMigrations.d.ts.map +1 -1
  572. package/dist/StorageMigrations.js +256 -0
  573. package/dist/StorageMigrations.js.map +1 -1
  574. package/dist/StorageSchemaGenerator.d.ts +544 -0
  575. package/dist/StorageSchemaGenerator.d.ts.map +1 -0
  576. package/dist/StorageSchemaGenerator.js +1418 -0
  577. package/dist/StorageSchemaGenerator.js.map +1 -0
  578. package/dist/StrongFactor.d.ts +64 -0
  579. package/dist/StrongFactor.d.ts.map +1 -0
  580. package/dist/StrongFactor.js +100 -0
  581. package/dist/StrongFactor.js.map +1 -0
  582. package/dist/Testing.js +2 -2
  583. package/dist/Testing.js.map +1 -1
  584. package/dist/Totp.d.ts +88 -13
  585. package/dist/Totp.d.ts.map +1 -1
  586. package/dist/Totp.js +192 -34
  587. package/dist/Totp.js.map +1 -1
  588. package/dist/TrustedDevice.d.ts +0 -9
  589. package/dist/TrustedDevice.d.ts.map +1 -1
  590. package/dist/TrustedDevice.js +15 -17
  591. package/dist/TrustedDevice.js.map +1 -1
  592. package/dist/WaitUntil.d.ts +0 -3
  593. package/dist/WaitUntil.d.ts.map +1 -1
  594. package/dist/WaitUntil.js +1 -4
  595. package/dist/WaitUntil.js.map +1 -1
  596. package/dist/Webhook.d.ts +42 -12
  597. package/dist/Webhook.d.ts.map +1 -1
  598. package/dist/Webhook.js +165 -26
  599. package/dist/Webhook.js.map +1 -1
  600. package/dist/alchemy/cloudflare/Email.d.ts.map +1 -1
  601. package/dist/alchemy/cloudflare/Email.js +9 -4
  602. package/dist/alchemy/cloudflare/Email.js.map +1 -1
  603. package/dist/cloudflare/Email.js +1 -1
  604. package/dist/cloudflare/Email.js.map +1 -1
  605. package/dist/cloudflare/RequestMetadata.d.ts +49 -0
  606. package/dist/cloudflare/RequestMetadata.d.ts.map +1 -0
  607. package/dist/cloudflare/RequestMetadata.js +71 -0
  608. package/dist/cloudflare/RequestMetadata.js.map +1 -0
  609. package/dist/index.d.ts +0 -35
  610. package/dist/index.d.ts.map +1 -1
  611. package/dist/index.js +0 -35
  612. package/dist/index.js.map +1 -1
  613. package/dist/internal/AuthFlowFinalizer.d.ts +31 -0
  614. package/dist/internal/AuthFlowFinalizer.d.ts.map +1 -0
  615. package/dist/internal/AuthFlowFinalizer.js +182 -0
  616. package/dist/internal/AuthFlowFinalizer.js.map +1 -0
  617. package/migrations/0001_auth_storage.sql +1 -0
  618. package/migrations/0006_auth_totp_factor.sql +1 -0
  619. package/migrations/0024_auth_permission.sql +39 -0
  620. package/migrations/0025_auth_permission_definition.sql +19 -0
  621. package/migrations/0026_auth_user_identity.sql +59 -0
  622. package/migrations/0027_auth_audit_log_storage_order.sql +46 -0
  623. package/migrations/0028_auth_oauth_client_secret_key.sql +39 -0
  624. package/migrations/0029_auth_oauth_device_authorization.sql +28 -0
  625. package/migrations/delegated-access/0001_auth_delegated_access.sql +152 -0
  626. package/migrations/postgres/0001_auth_core.sql +77 -0
  627. package/migrations/postgres/0002_auth_security_oauth.sql +65 -0
  628. package/migrations/postgres/0003_auth_credentials_tokens.sql +43 -0
  629. package/migrations/postgres/0004_auth_security_history.sql +103 -0
  630. package/migrations/postgres/0005_auth_webhooks.sql +29 -0
  631. package/migrations/postgres/0006_auth_domain_timeline.sql +50 -0
  632. package/migrations/postgres/0007_auth_oauth_clients.sql +85 -0
  633. package/migrations/postgres/0008_auth_oauth_tokens.sql +63 -0
  634. package/migrations/postgres/0009_auth_permissions.sql +66 -0
  635. package/migrations/postgres/0010_auth_oauth_device_authorization.sql +50 -0
  636. package/migrations/postgres/delegated-access/0001_auth_delegated_access.sql +112 -0
  637. package/package.json +309 -2
package/dist/Retention.js CHANGED
@@ -4,6 +4,7 @@ import { UnixMillis } from "./Identifiers.js";
4
4
  import { currentUnixMillis } from "./Internal.js";
5
5
  import { LoginRiskHistory } from "./LoginRisk.js";
6
6
  import { OAuthConsentStore, OAuthProviderModeTokenStore } from "./OAuth.js";
7
+ import { OAuthDeviceAuthorizationStore } from "./OAuthDeviceAuthorization.js";
7
8
  import { SecurityTimelineStore } from "./SecurityTimeline.js";
8
9
  import { WebhookOutboxStore, WebhookReplayStore } from "./Webhook.js";
9
10
  export class AuthRetentionCleanupError extends Data.TaggedError("AuthRetentionCleanupError") {
@@ -35,6 +36,7 @@ const summary = (input) => ({
35
36
  input.securityTimelineDeleted +
36
37
  input.loginRiskHistoryDeleted +
37
38
  input.oauthConsentsDeleted +
39
+ input.oauthDeviceAuthorizationsDeleted +
38
40
  input.oauthProviderModeTokensDeleted +
39
41
  input.webhookOutboxDeleted +
40
42
  input.webhookReplayDeleted,
@@ -48,10 +50,12 @@ const cleanupAuditLog = (input, now) => {
48
50
  if (Option.isNone(store)) {
49
51
  return yield* Effect.fail(missingServiceError("auditLog"));
50
52
  }
51
- return yield* store.value.deleteBefore({
53
+ return yield* store.value
54
+ .deleteBefore({
52
55
  beforeOccurredAt: occurredAtCutoff(input, now),
53
56
  ...(input.userId === undefined ? {} : { userId: input.userId }),
54
- }).pipe(Effect.mapError((cause) => cleanupError("auditLog", cause)));
57
+ })
58
+ .pipe(Effect.mapError((cause) => cleanupError("auditLog", cause)));
55
59
  });
56
60
  };
57
61
  const cleanupSecurityTimeline = (input, now) => {
@@ -63,10 +67,12 @@ const cleanupSecurityTimeline = (input, now) => {
63
67
  if (Option.isNone(store)) {
64
68
  return yield* Effect.fail(missingServiceError("securityTimeline"));
65
69
  }
66
- return yield* store.value.deleteBefore({
70
+ return yield* store.value
71
+ .deleteBefore({
67
72
  beforeOccurredAt: occurredAtCutoff(input, now),
68
73
  ...(input.userId === undefined ? {} : { userId: input.userId }),
69
- }).pipe(Effect.mapError((cause) => cleanupError("securityTimeline", cause)));
74
+ })
75
+ .pipe(Effect.mapError((cause) => cleanupError("securityTimeline", cause)));
70
76
  });
71
77
  };
72
78
  const cleanupLoginRiskHistory = (input, now) => {
@@ -78,10 +84,12 @@ const cleanupLoginRiskHistory = (input, now) => {
78
84
  if (Option.isNone(store)) {
79
85
  return yield* Effect.fail(missingServiceError("loginRiskHistory"));
80
86
  }
81
- return yield* store.value.deleteBefore({
87
+ return yield* store.value
88
+ .deleteBefore({
82
89
  beforeOccurredAt: occurredAtCutoff(input, now),
83
90
  ...(input.userId === undefined ? {} : { userId: input.userId }),
84
- }).pipe(Effect.mapError((cause) => cleanupError("loginRiskHistory", cause)));
91
+ })
92
+ .pipe(Effect.mapError((cause) => cleanupError("loginRiskHistory", cause)));
85
93
  });
86
94
  };
87
95
  const cleanupWebhookOutbox = (input, now) => {
@@ -93,11 +101,15 @@ const cleanupWebhookOutbox = (input, now) => {
93
101
  if (Option.isNone(store)) {
94
102
  return yield* Effect.fail(missingServiceError("webhookOutbox"));
95
103
  }
96
- return yield* store.value.deleteBefore({
104
+ return yield* store.value
105
+ .deleteBefore({
97
106
  beforeUpdatedAt: updatedAtCutoff(input, now),
98
107
  statuses: input.statuses ?? defaultWebhookOutboxRetentionStatuses,
99
- ...(input.endpointKey === undefined ? {} : { endpointKey: input.endpointKey }),
100
- }).pipe(Effect.mapError((cause) => cleanupError("webhookOutbox", cause)));
108
+ ...(input.endpointKey === undefined
109
+ ? {}
110
+ : { endpointKey: input.endpointKey }),
111
+ })
112
+ .pipe(Effect.mapError((cause) => cleanupError("webhookOutbox", cause)));
101
113
  });
102
114
  };
103
115
  const oauthProviderModeTokenCutoffs = (input, now) => {
@@ -137,7 +149,9 @@ const cleanupOAuthProviderModeToken = (input, now) => {
137
149
  if (cutoffs === undefined) {
138
150
  return 0;
139
151
  }
140
- return yield* store.value.deleteRetired(cutoffs).pipe(Effect.mapError((cause) => cleanupError("oauthProviderModeToken", cause)));
152
+ return yield* store.value
153
+ .deleteRetired(cutoffs)
154
+ .pipe(Effect.mapError((cause) => cleanupError("oauthProviderModeToken", cause)));
141
155
  });
142
156
  };
143
157
  const oauthConsentCutoffs = (input, now) => {
@@ -170,7 +184,26 @@ const cleanupOAuthConsent = (input, now) => {
170
184
  if (cutoffs === undefined) {
171
185
  return 0;
172
186
  }
173
- return yield* store.value.deleteInactive(cutoffs).pipe(Effect.mapError((cause) => cleanupError("oauthConsent", cause)));
187
+ return yield* store.value
188
+ .deleteInactive(cutoffs)
189
+ .pipe(Effect.mapError((cause) => cleanupError("oauthConsent", cause)));
190
+ });
191
+ };
192
+ const cleanupOAuthDeviceAuthorization = (input, now) => {
193
+ if (input === undefined) {
194
+ return Effect.succeed(0);
195
+ }
196
+ return Effect.gen(function* () {
197
+ const store = yield* Effect.serviceOption(OAuthDeviceAuthorizationStore);
198
+ if (Option.isNone(store) || store.value.deleteExpired === undefined) {
199
+ return yield* Effect.fail(missingServiceError("oauthDeviceAuthorization"));
200
+ }
201
+ const beforeExpiresAt = "beforeExpiresAt" in input
202
+ ? input.beforeExpiresAt
203
+ : cutoffFromRetentionMillis(now, input.retentionMillis);
204
+ return yield* store.value
205
+ .deleteExpired({ beforeExpiresAt })
206
+ .pipe(Effect.mapError((cause) => cleanupError("oauthDeviceAuthorization", cause)));
174
207
  });
175
208
  };
176
209
  const cleanupWebhookReplay = (enabled, now) => enabled === true
@@ -179,7 +212,9 @@ const cleanupWebhookReplay = (enabled, now) => enabled === true
179
212
  if (Option.isNone(store)) {
180
213
  return yield* Effect.fail(missingServiceError("webhookReplay"));
181
214
  }
182
- return yield* store.value.deleteExpired({ now }).pipe(Effect.mapError((cause) => cleanupError("webhookReplay", cause)));
215
+ return yield* store.value
216
+ .deleteExpired({ now })
217
+ .pipe(Effect.mapError((cause) => cleanupError("webhookReplay", cause)));
183
218
  })
184
219
  : Effect.succeed(0);
185
220
  export const runAuthRetentionCleanup = (input = {}) => Effect.gen(function* () {
@@ -188,6 +223,7 @@ export const runAuthRetentionCleanup = (input = {}) => Effect.gen(function* () {
188
223
  const securityTimelineDeleted = yield* cleanupSecurityTimeline(input.securityTimeline, now);
189
224
  const loginRiskHistoryDeleted = yield* cleanupLoginRiskHistory(input.loginRiskHistory, now);
190
225
  const oauthConsentsDeleted = yield* cleanupOAuthConsent(input.oauthConsent, now);
226
+ const oauthDeviceAuthorizationsDeleted = yield* cleanupOAuthDeviceAuthorization(input.oauthDeviceAuthorization, now);
191
227
  const oauthProviderModeTokensDeleted = yield* cleanupOAuthProviderModeToken(input.oauthProviderModeToken, now);
192
228
  const webhookOutboxDeleted = yield* cleanupWebhookOutbox(input.webhookOutbox, now);
193
229
  const webhookReplayDeleted = yield* cleanupWebhookReplay(input.webhookReplay, now);
@@ -196,6 +232,7 @@ export const runAuthRetentionCleanup = (input = {}) => Effect.gen(function* () {
196
232
  securityTimelineDeleted,
197
233
  loginRiskHistoryDeleted,
198
234
  oauthConsentsDeleted,
235
+ oauthDeviceAuthorizationsDeleted,
199
236
  oauthProviderModeTokensDeleted,
200
237
  webhookOutboxDeleted,
201
238
  webhookReplayDeleted,
@@ -1 +1 @@
1
- {"version":3,"file":"Retention.js","sourceRoot":"","sources":["../src/Retention.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Retention.js","sourceRoot":"","sources":["../src/Retention.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import type { UnixMillis, UserId } from "./Identifiers.js";
6
6
  export type SecurityTimelineEventId = Brand.Branded<string, "auth/SecurityTimelineEventId">;
7
7
  export declare const SecurityTimelineEventId: Brand.Constructor<SecurityTimelineEventId>;
8
8
  export type SecurityTimelineEventType = AuthAuditEvent["type"];
9
- export type SecurityTimelineEventCategory = "api_key" | "auth" | "incident" | "jwt" | "mfa" | "oauth" | "policy" | "refresh_token" | "risk" | "session";
9
+ export type SecurityTimelineEventCategory = "api_key" | "auth" | "authorization" | "incident" | "identity" | "jwt" | "mfa" | "oauth" | "policy" | "refresh_token" | "risk" | "session";
10
10
  export type SecurityTimelineEventSeverity = "info" | "warning" | "critical";
11
11
  export interface SecurityTimelineEvent {
12
12
  readonly id: SecurityTimelineEventId;
@@ -49,9 +49,6 @@ export interface SecurityTimelineStoreService {
49
49
  declare const SecurityTimelineStore_base: Context.ServiceClass<SecurityTimelineStore, "auth/SecurityTimelineStore", SecurityTimelineStoreService>;
50
50
  export declare class SecurityTimelineStore extends SecurityTimelineStore_base {
51
51
  }
52
- export declare namespace SecurityTimelineStore {
53
- const make: (service: SecurityTimelineStoreService) => SecurityTimelineStoreService;
54
- }
55
52
  export interface SecurityTimelineAuditProjectionOptions {
56
53
  readonly id?: SecurityTimelineEventId;
57
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityTimeline.d.ts","sourceRoot":"","sources":["../src/SecurityTimeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SecurityTimeline.d.ts","sourceRoot":"","sources":["../src/SecurityTimeline.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,11 @@
1
1
  import { Brand, Context, Data, Effect, Layer, Option } from "effect";
2
- import { AuditLog, AuditLogError } from "./AuditLog.js";
2
+ import { AuditLog, AuditLogError, isAuthAuditEvent } from "./AuditLog.js";
3
+ import { compareUtf8Bytes } from "./Internal.js";
3
4
  export const SecurityTimelineEventId = Brand.nominal();
4
5
  export class SecurityTimelineStoreError extends Data.TaggedError("SecurityTimelineStoreError") {
5
6
  }
6
7
  export class SecurityTimelineStore extends Context.Service()("auth/SecurityTimelineStore") {
7
8
  }
8
- (function (SecurityTimelineStore) {
9
- SecurityTimelineStore.make = (service) => SecurityTimelineStore.of(service);
10
- })(SecurityTimelineStore || (SecurityTimelineStore = {}));
11
9
  const clone = (value) => structuredClone(value);
12
10
  const omitUndefined = (record) => Object.fromEntries(Object.entries(record).filter(([, value]) => value !== undefined));
13
11
  const eventIdFromAudit = (event, options) => options.id ??
@@ -16,6 +14,7 @@ const actorUserId = (actor) => actor.type === "user" ? actor.userId : undefined;
16
14
  const subjectUserId = (subject) => subject.type === "user" ? subject.userId : undefined;
17
15
  const challengeId = (id) => id;
18
16
  const credentialId = (id) => id;
17
+ const identityId = (id) => id;
19
18
  const sessionId = (id) => id;
20
19
  const oauthAccountId = (id) => id;
21
20
  const oauthProviderId = (id) => id;
@@ -42,14 +41,31 @@ const baseEvent = (event, options, userId, category, severity, summary, metadata
42
41
  metadata,
43
42
  }));
44
43
  };
44
+ const authorizationTimelineAuditEventTypes = new Set([
45
+ "auth.permission.granted",
46
+ "auth.permission.revoked",
47
+ "auth.role.granted",
48
+ "auth.role.revoked",
49
+ ]);
45
50
  const authTimelineAuditEventTypes = new Set([
46
51
  "auth.login.failed",
47
52
  "auth.login.succeeded",
48
53
  "auth.policy.denied",
49
54
  "auth.session.revoked",
50
55
  ]);
51
- const riskTimelineAuditEventTypes = new Set([
52
- "auth.risk.assessed",
56
+ const assuranceTimelineAuditEventTypes = new Set([
57
+ "auth.session.assurance_changed",
58
+ "auth.session.step_up_completed",
59
+ "auth.session.primary_reauthenticated",
60
+ "auth.session.recovery_remediation.entered",
61
+ "auth.session.recovery_remediation.completed",
62
+ ]);
63
+ const riskTimelineAuditEventTypes = new Set(["auth.risk.assessed"]);
64
+ const identityTimelineAuditEventTypes = new Set([
65
+ "auth.identity.added",
66
+ "auth.identity.replaced",
67
+ "auth.identity.revoked",
68
+ "auth.identity.primary_changed",
53
69
  ]);
54
70
  const oauthTimelineAuditEventTypes = new Set([
55
71
  "auth.oauth.account.linked",
@@ -82,18 +98,79 @@ const refreshTokenTimelineAuditEventTypes = new Set([
82
98
  "auth.refresh_token.rotated",
83
99
  ]);
84
100
  const incidentTimelineAuditEventTypes = new Set(["auth.incident_action.executed"]);
85
- const jwtTimelineAuditEventTypes = new Set([
86
- "auth.jwt.introspected",
87
- "auth.jwt.revoked",
88
- ]);
101
+ const jwtTimelineAuditEventTypes = new Set(["auth.jwt.introspected", "auth.jwt.revoked"]);
89
102
  const isAuthTimelineAuditEvent = (event) => authTimelineAuditEventTypes.has(event.type);
103
+ const isAuthorizationTimelineAuditEvent = (event) => authorizationTimelineAuditEventTypes.has(event.type);
104
+ const isAssuranceTimelineAuditEvent = (event) => assuranceTimelineAuditEventTypes.has(event.type);
105
+ const assuranceTimelineEventFromAuditEvent = (event, options) => {
106
+ const summaries = {
107
+ "auth.session.assurance_changed": "Session assurance changed",
108
+ "auth.session.step_up_completed": "Session step-up completed",
109
+ "auth.session.primary_reauthenticated": "Primary authentication repeated",
110
+ "auth.session.recovery_remediation.entered": "Recovery remediation entered",
111
+ "auth.session.recovery_remediation.completed": "Recovery remediation completed",
112
+ };
113
+ return baseEvent(event, options, event.userId, "session", "info", summaries[event.type], {
114
+ sessionId: event.sessionId,
115
+ oldAal: event.oldAal,
116
+ newAal: event.newAal,
117
+ amr: event.amr,
118
+ method: event.method,
119
+ rotatedAt: event.rotatedAt,
120
+ requirementsEntered: event.requirementsEntered,
121
+ requirementsCleared: event.requirementsCleared,
122
+ }, event.actor, event.request);
123
+ };
90
124
  const isRiskTimelineAuditEvent = (event) => riskTimelineAuditEventTypes.has(event.type);
125
+ const isIdentityTimelineAuditEvent = (event) => identityTimelineAuditEventTypes.has(event.type);
126
+ const identityTimelineEventFromAuditEvent = (event, options) => {
127
+ const summaries = {
128
+ "auth.identity.added": "Identity added",
129
+ "auth.identity.replaced": "Identity replaced",
130
+ "auth.identity.revoked": "Identity revoked",
131
+ "auth.identity.primary_changed": "Primary identity changed",
132
+ };
133
+ return baseEvent(event, options, event.userId, "identity", "info", summaries[event.type], omitUndefined({
134
+ identityId: identityId(event.identityId),
135
+ kind: event.kind,
136
+ scope: event.scope,
137
+ replacementIdentityId: "replacementIdentityId" in event
138
+ ? identityId(event.replacementIdentityId)
139
+ : undefined,
140
+ reason: "reason" in event ? event.reason : undefined,
141
+ }), event.actor, event.request);
142
+ };
91
143
  const isOAuthTimelineAuditEvent = (event) => oauthTimelineAuditEventTypes.has(event.type);
92
144
  const isMfaTimelineAuditEvent = (event) => mfaTimelineAuditEventTypes.has(event.type);
93
145
  const isApiKeyTimelineAuditEvent = (event) => apiKeyTimelineAuditEventTypes.has(event.type);
94
146
  const isRefreshTokenTimelineAuditEvent = (event) => refreshTokenTimelineAuditEventTypes.has(event.type);
95
147
  const isIncidentTimelineAuditEvent = (event) => incidentTimelineAuditEventTypes.has(event.type);
96
148
  const isJwtTimelineAuditEvent = (event) => jwtTimelineAuditEventTypes.has(event.type);
149
+ const authorizationTimelineEventFromAuditEvent = (event, options) => {
150
+ if (event.subject.type !== "user") {
151
+ return Option.none();
152
+ }
153
+ const { userId } = event.subject;
154
+ const summaries = {
155
+ "auth.permission.granted": "Permission granted",
156
+ "auth.permission.revoked": "Permission revoked",
157
+ "auth.role.granted": "Role granted",
158
+ "auth.role.revoked": "Role revoked",
159
+ };
160
+ const metadata = event.type === "auth.permission.granted" ||
161
+ event.type === "auth.permission.revoked"
162
+ ? omitUndefined({
163
+ permissionId: event.permissionId,
164
+ scope: event.scope,
165
+ expiresAt: "expiresAt" in event ? event.expiresAt : undefined,
166
+ })
167
+ : omitUndefined({
168
+ roleId: event.roleId,
169
+ scope: event.scope,
170
+ expiresAt: "expiresAt" in event ? event.expiresAt : undefined,
171
+ });
172
+ return baseEvent(event, options, userId, "authorization", "info", summaries[event.type], metadata, event.actor, event.request);
173
+ };
97
174
  const authTimelineEventFromAuditEvent = (event, options) => {
98
175
  switch (event.type) {
99
176
  case "auth.login.succeeded": {
@@ -328,12 +405,21 @@ const jwtTimelineEventFromAuditEvent = (event, options) => {
328
405
  }
329
406
  };
330
407
  export const securityTimelineEventFromAuditEvent = (event, options = {}) => {
408
+ if (isAuthorizationTimelineAuditEvent(event)) {
409
+ return authorizationTimelineEventFromAuditEvent(event, options);
410
+ }
411
+ if (isAssuranceTimelineAuditEvent(event)) {
412
+ return assuranceTimelineEventFromAuditEvent(event, options);
413
+ }
331
414
  if (isAuthTimelineAuditEvent(event)) {
332
415
  return authTimelineEventFromAuditEvent(event, options);
333
416
  }
334
417
  if (isRiskTimelineAuditEvent(event)) {
335
418
  return riskTimelineEventFromAuditEvent(event, options);
336
419
  }
420
+ if (isIdentityTimelineAuditEvent(event)) {
421
+ return identityTimelineEventFromAuditEvent(event, options);
422
+ }
337
423
  if (isOAuthTimelineAuditEvent(event)) {
338
424
  return oauthTimelineEventFromAuditEvent(event, options);
339
425
  }
@@ -382,13 +468,17 @@ const securityTimelineProjectionError = (cause) => new AuditLogError({
382
468
  export const makeSecurityTimelineAuditLog = (dependencies) => {
383
469
  const options = dependencies.options ?? {};
384
470
  const projectionFailure = options.projectionFailure ?? "ignore";
385
- return AuditLog.make({
471
+ return AuditLog.of({
386
472
  emit: (event) => {
387
- const projection = projectAuditEventToSecurityTimeline(dependencies, event, options);
473
+ const projection = isAuthAuditEvent(event)
474
+ ? projectAuditEventToSecurityTimeline(dependencies, event, options)
475
+ : Effect.void;
388
476
  const handledProjection = projectionFailure === "fail"
389
477
  ? projection.pipe(Effect.mapError(securityTimelineProjectionError))
390
478
  : projection.pipe(Effect.catchTag("SecurityTimelineStoreError", () => Effect.void));
391
- return dependencies.auditLog.emit(event).pipe(Effect.flatMap(() => handledProjection));
479
+ return dependencies.auditLog
480
+ .emit(event)
481
+ .pipe(Effect.flatMap(() => handledProjection));
392
482
  },
393
483
  });
394
484
  };
@@ -404,7 +494,7 @@ export const SecurityTimelineAuditLogLive = (options = {}) => Layer.effect(Audit
404
494
  const compareTimelineEvents = (left, right) => {
405
495
  const occurredAt = Number(right.occurredAt) - Number(left.occurredAt);
406
496
  return occurredAt === 0
407
- ? String(right.id).localeCompare(String(left.id))
497
+ ? -compareUtf8Bytes(String(left.id), String(right.id))
408
498
  : occurredAt;
409
499
  };
410
500
  const insertSortedTimelineEvent = (events, event) => {
@@ -426,10 +516,13 @@ export const filterSecurityTimelineEvents = (events, input) => {
426
516
  const beforeOccurredAt = input.beforeOccurredAt === undefined
427
517
  ? undefined
428
518
  : Number(input.beforeOccurredAt);
429
- const limit = input.limit === undefined ? undefined : Math.max(0, Math.floor(input.limit));
519
+ const limit = input.limit === undefined
520
+ ? undefined
521
+ : Math.max(0, Math.floor(input.limit));
430
522
  const filtered = [...events]
431
523
  .filter((event) => event.userId === input.userId)
432
- .filter((event) => beforeOccurredAt === undefined || Number(event.occurredAt) < beforeOccurredAt)
524
+ .filter((event) => beforeOccurredAt === undefined ||
525
+ Number(event.occurredAt) < beforeOccurredAt)
433
526
  .filter((event) => types === undefined || types.has(event.type))
434
527
  .filter((event) => categories === undefined || categories.has(event.category));
435
528
  const sorted = sortTimelineEvents(filtered).map(clone);
@@ -437,7 +530,7 @@ export const filterSecurityTimelineEvents = (events, input) => {
437
530
  };
438
531
  export const makeSecurityTimelineStoreMemory = () => {
439
532
  const eventsById = new Map();
440
- return SecurityTimelineStore.make({
533
+ return SecurityTimelineStore.of({
441
534
  insert: (event) => Effect.sync(() => {
442
535
  eventsById.set(event.id, clone(event));
443
536
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityTimeline.js","sourceRoot":"","sources":["../src/SecurityTimeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIrE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AA2BxD,MAAM,CAAC,MAAM,uBAAuB,GAClC,KAAK,CAAC,OAAO,EAA2B,CAAC;AA8C3C,MAAM,OAAO,0BAA2B,SAAQ,IAAI,CAAC,WAAW,CAC9D,4BAA4B,CAK5B;CAAG;AAcL,MAAM,OAAO,qBAAsB,SAAQ,OAAO,CAAC,OAAO,EAGvD,CAAC,4BAA4B,CAAC;CAAG;AAEpC,WAAiB,qBAAqB;IACvB,0BAAI,GAAG,CAClB,OAAqC,EACP,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AACvE,CAAC,EAJgB,qBAAqB,KAArB,qBAAqB,QAIrC;AAeD,MAAM,KAAK,GAAG,CAAI,KAAQ,EAAK,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AAEzD,MAAM,aAAa,GAAG,CAA8C,MAAS,EAAK,EAAE,CAClF,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAC7D,CAAC;AAET,MAAM,gBAAgB,GAAG,CACvB,KAAqB,EACrB,OAA+C,EACV,EAAE,CACvC,OAAO,CAAC,EAAE;IACV,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AAE3E,MAAM,WAAW,GAAG,CAAC,KAAiB,EAAsB,EAAE,CAC5D,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAEnD,MAAM,aAAa,GAAG,CAAC,OAAqB,EAAsB,EAAE,CAClE,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAEvD,MAAM,WAAW,GAAG,CAAC,EAAe,EAAe,EAAE,CAAC,EAAE,CAAC;AACzD,MAAM,YAAY,GAAG,CAAC,EAAgB,EAAgB,EAAE,CAAC,EAAE,CAAC;AAC5D,MAAM,SAAS,GAAG,CAAC,EAAyB,EAAyB,EAAE,CAAC,EAAE,CAAC;AAC3E,MAAM,cAAc,GAAG,CAAC,EAAkB,EAAkB,EAAE,CAAC,EAAE,CAAC;AAClE,MAAM,eAAe,GAAG,CAAC,EAAmB,EAAmB,EAAE,CAAC,EAAE,CAAC;AACrE,MAAM,mBAAmB,GAAG,CAAC,EAAuB,EAAuB,EAAE,CAAC,EAAE,CAAC;AACjF,MAAM,QAAQ,GAAG,CAAC,EAAY,EAAY,EAAE,CAAC,EAAE,CAAC;AAChD,MAAM,QAAQ,GAAG,CAAC,EAAY,EAAY,EAAE,CAAC,EAAE,CAAC;AAChD,MAAM,cAAc,GAAG,CAAC,EAA8B,EAA8B,EAAE,CACpF,EAAE,CAAC;AACL,MAAM,oBAAoB,GAAG,CAC3B,EAAwB,EACF,EAAE,CAAC,EAAE,CAAC;AAE9B,MAAM,SAAS,GAAG,CAChB,KAAqB,EACrB,OAA+C,EAC/C,MAAc,EACd,QAAuC,EACvC,QAAuC,EACvC,OAAe,EACf,QAA4C,EAC5C,KAAkB,EAClB,OAAsB,EACqB,EAAE;IAC7C,MAAM,EAAE,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAE5C,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACrB,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAChB,aAAa,CAAC;QACZ,EAAE;QACF,MAAM;QACN,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ;QACR,QAAQ;QACR,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,OAAO;QACP,KAAK;QACL,OAAO;QACP,QAAQ;KACT,CAAiC,CACnC,CAAC;AACJ,CAAC,CAAC;AAwDF,MAAM,2BAA2B,GAAwC,IAAI,GAAG,CAAC;IAC/E,mBAAmB;IACnB,sBAAsB;IACtB,oBAAoB;IACpB,sBAAsB;CACvB,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAwC,IAAI,GAAG,CAAC;IAC/E,oBAAoB;CACrB,CAAC,CAAC;AAEH,MAAM,4BAA4B,GAAwC,IAAI,GAAG,CAAC;IAChF,2BAA2B;IAC3B,6BAA6B;IAC7B,wCAAwC;IACxC,sCAAsC;IACtC,qCAAqC;IACrC,mCAAmC;CACpC,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAwC,IAAI,GAAG,CAAC;IAC9E,iCAAiC;IACjC,8BAA8B;IAC9B,4BAA4B;IAC5B,6BAA6B;IAC7B,8BAA8B;IAC9B,4BAA4B;IAC5B,0BAA0B;IAC1B,2BAA2B;CAC5B,CAAC,CAAC;AAEH,MAAM,6BAA6B,GAAwC,IAAI,GAAG,CAAC;IACjF,sBAAsB;IACtB,sBAAsB;IACtB,kCAAkC;IAClC,uBAAuB;CACxB,CAAC,CAAC;AAEH,MAAM,mCAAmC,GACvC,IAAI,GAAG,CAAC;IACN,2BAA2B;IAC3B,mCAAmC;IACnC,4BAA4B;IAC5B,4BAA4B;CAC7B,CAAC,CAAC;AAEL,MAAM,+BAA+B,GACnC,IAAI,GAAG,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC;AAE7C,MAAM,0BAA0B,GAAwC,IAAI,GAAG,CAAC;IAC9E,uBAAuB;IACvB,kBAAkB;CACnB,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,CAC/B,KAAqB,EACY,EAAE,CAAC,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAElF,MAAM,wBAAwB,GAAG,CAC/B,KAAqB,EACY,EAAE,CAAC,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAElF,MAAM,yBAAyB,GAAG,CAChC,KAAqB,EACa,EAAE,CAAC,4BAA4B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAEpF,MAAM,uBAAuB,GAAG,CAC9B,KAAqB,EACW,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAEhF,MAAM,0BAA0B,GAAG,CACjC,KAAqB,EACc,EAAE,CACrC,6BAA6B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAEhD,MAAM,gCAAgC,GAAG,CACvC,KAAqB,EACoB,EAAE,CAC3C,mCAAmC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAEtD,MAAM,4BAA4B,GAAG,CACnC,KAAqB,EACgB,EAAE,CACvC,+BAA+B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAElD,MAAM,uBAAuB,GAAG,CAC9B,KAAqB,EACW,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAEhF,MAAM,+BAA+B,GAAG,CACtC,KAA6B,EAC7B,OAA+C,EACJ,EAAE;IAC7C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,sBAAsB,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAExC,OAAO,MAAM,KAAK,SAAS;gBACzB,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE;gBACf,CAAC,CAAC,SAAS,CACP,KAAK,EACL,OAAO,EACP,MAAM,EACN,MAAM,EACN,MAAM,EACN,iBAAiB,EACjB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EACxB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACR,CAAC;QACD,KAAK,mBAAmB,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE5C,OAAO,MAAM,KAAK,SAAS;gBACzB,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE;gBACf,CAAC,CAAC,SAAS,CACP,KAAK,EACL,OAAO,EACP,MAAM,EACN,MAAM,EACN,SAAS,EACT,cAAc,EACd,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAC9C,SAAS,EACT,KAAK,CAAC,OAAO,CACd,CAAC;QACR,CAAC;QACD,KAAK,sBAAsB,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAExC,OAAO,MAAM,KAAK,SAAS;gBACzB,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE;gBACf,CAAC,CAAC,SAAS,CACP,KAAK,EACL,OAAO,EACP,MAAM,EACN,SAAS,EACT,MAAM,EACN,iBAAiB,EACjB,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAC/D,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACR,CAAC;QACD,KAAK,oBAAoB,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAExC,OAAO,MAAM,KAAK,SAAS;gBACzB,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE;gBACf,CAAC,CAAC,SAAS,CACP,KAAK,EACL,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAS,EACT,wBAAwB,EACxB,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAC5D,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACR,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAC3B,UAA+B,EACA,EAAE,CACjC,UAAU,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU;IAClC,CAAC,CAAC,UAAU;IACZ,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,KAAK,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ;QACtE,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,MAAM,CAAC;AAEf,MAAM,sBAAsB,GAAG,CAC7B,UAA+B,EACI,EAAE,CACrC,aAAa,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC,MAAM;IACzB,GAAG,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC;IACxB,GAAG,EAAE,UAAU,CAAC,GAAG;IACnB,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE;IAC5C,IAAI,EAAE;QACJ,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK;QAC5B,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAC9C,aAAa,CAAC;YACZ,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CACH;KACF;IACD,QAAQ,EAAE,UAAU,CAAC,QAAQ;CAC9B,CAAC,CAAC;AAEL,MAAM,+BAA+B,GAAG,CACtC,KAA6B,EAC7B,OAA+C,EACJ,EAAE,CAC7C,SAAS,CACP,KAAK,EACL,OAAO,EACP,KAAK,CAAC,UAAU,CAAC,MAAM,EACvB,MAAM,EACN,oBAAoB,CAAC,KAAK,CAAC,UAAU,CAAC,EACtC,qBAAqB,EACrB,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,EACxC,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;AAEJ,MAAM,gCAAgC,GAAG,CACvC,KAA8B,EAC9B,OAA+C,EACJ,EAAE;IAC7C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,2BAA2B,EAAE,CAAC;YACjC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,OAAO,EACP,MAAM,EACN,sBAAsB,EACtB;gBACE,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC1C,UAAU,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC7C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;gBAC1C,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,6BAA6B,EAAE,CAAC;YACnC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,OAAO,EACP,MAAM,EACN,wBAAwB,EACxB;gBACE,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC1C,UAAU,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC7C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;gBAC1C,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,sCAAsC,EAAE,CAAC;YAC5C,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,OAAO,EACP,MAAM,EACN,iCAAiC,EACjC;gBACE,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC;gBAC3C,UAAU,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC7C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;gBAC1C,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,wCAAwC,EAAE,CAAC;YAC9C,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,OAAO,EACP,MAAM,EACN,mCAAmC,EACnC;gBACE,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC;gBAC3C,UAAU,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC7C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;gBAC1C,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,qCAAqC,EAAE,CAAC;YAC3C,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,OAAO,EACP,MAAM,EACN,gCAAgC,EAChC;gBACE,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC1C,UAAU,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC7C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;aAC3C,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,mCAAmC,EAAE,CAAC;YACzC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,OAAO,EACP,MAAM,EACN,8BAA8B,EAC9B;gBACE,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC1C,UAAU,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC7C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;gBAC1C,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,8BAA8B,GAAG,CACrC,KAA4B,EAC5B,OAA+C,EACJ,EAAE;IAC7C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,iCAAiC,EAAE,CAAC;YACvC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,EACL,MAAM,EACN,iBAAiB,EACjB;gBACE,YAAY,EAAE,mBAAmB,CAAC,KAAK,CAAC,YAAY,CAAC;gBACrD,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,8BAA8B,EAAE,CAAC;YACpC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,EACL,MAAM,EACN,yBAAyB,EACzB,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAC1C,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,4BAA4B,EAAE,CAAC;YAClC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,EACL,MAAM,EACN,uBAAuB,EACvB,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAC1C,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,2BAA2B,EAAE,CAAC;YACjC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,EACL,MAAM,EACN,sBAAsB,EACtB,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAC1C,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,0BAA0B,EAAE,CAAC;YAChC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,EACL,MAAM,EACN,qBAAqB,EACrB,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAChE,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,8BAA8B,EAAE,CAAC;YACpC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,EACL,MAAM,EACN,0BAA0B,EAC1B,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,EACtB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,6BAA6B,EAAE,CAAC;YACnC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,EACL,SAAS,EACT,oBAAoB,EACpB,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EACtC,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,4BAA4B,EAAE,CAAC;YAClC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,EACL,MAAM,EACN,uBAAuB,EACvB,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAC5D,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,iCAAiC,GAAG,CACxC,KAA+B,EAC/B,OAA+C,EACJ,EAAE;IAC7C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,sBAAsB,EAAE,CAAC;YAC5B,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,SAAS,EACT,MAAM,EACN,iBAAiB,EACjB,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EACtD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,uBAAuB,EAAE,CAAC;YAC7B,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,SAAS,EACT,MAAM,EACN,cAAc,EACd,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EACtD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,sBAAsB,EAAE,CAAC;YAC5B,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,SAAS,EACT,MAAM,EACN,iBAAiB,EACjB,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EACtD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,kCAAkC,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAExC,OAAO,MAAM,KAAK,SAAS;gBACzB,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE;gBACf,CAAC,CAAC,SAAS,CACP,KAAK,EACL,OAAO,EACP,MAAM,EACN,SAAS,EACT,SAAS,EACT,6BAA6B,EAC7B,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EACxB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACR,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,uCAAuC,GAAG,CAC9C,KAAqC,EACrC,OAA+C,EACJ,EAAE;IAC7C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,2BAA2B,EAAE,CAAC;YACjC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,eAAe,EACf,MAAM,EACN,sBAAsB,EACtB;gBACE,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC;gBACtC,QAAQ,EAAE,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC9C,SAAS,EAAE,KAAK,CAAC,SAAS;aAC3B,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,4BAA4B,EAAE,CAAC;YAClC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,eAAe,EACf,MAAM,EACN,uBAAuB,EACvB;gBACE,eAAe,EAAE,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC;gBACtD,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC;gBACtC,QAAQ,EAAE,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC9C,SAAS,EAAE,KAAK,CAAC,SAAS;aAC3B,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,mCAAmC,EAAE,CAAC;YACzC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,eAAe,EACf,UAAU,EACV,8BAA8B,EAC9B;gBACE,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC;gBACtC,QAAQ,EAAE,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC/C,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,4BAA4B,EAAE,CAAC;YAClC,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,eAAe,EACf,MAAM,EACN,uBAAuB,EACvB;gBACE,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC;gBACtC,QAAQ,EAAE,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC9C,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAC/B,MAA4B,EACT,EAAE,CAAC;IACtB,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC7D,GAAG,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;IAC1E,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC5D,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC;CACzE,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAC7B,MAA4B,EACO,EAAE,CACrC,aAAa,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC;IAC5C,QAAQ,EACN,MAAM,CAAC,QAAQ,KAAK,SAAS;QAC3B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC;YACE,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU;YACtC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY;SAC3C;IACP,cAAc,EACZ,MAAM,CAAC,cAAc,KAAK,SAAS;QACjC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE;IAChD,OAAO,EACL,MAAM,CAAC,OAAO,KAAK,SAAS;QAC1B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE;IACzC,aAAa,EACX,MAAM,CAAC,aAAa,KAAK,SAAS;QAChC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC;YACE,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,eAAe;YACrD,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,YAAY;SAChD;CACR,CAAC,CAAC;AAEL,MAAM,mCAAmC,GAAG,CAC1C,KAAiC,EACjC,OAA+C,EACJ,EAAE,CAC7C,SAAS,CACP,KAAK,EACL,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,UAAU,EACV,UAAU,EACV,0BAA0B,EAC1B,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,EACpC,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;AAEJ,MAAM,8BAA8B,GAAG,CACrC,KAA4B,EAC5B,OAA+C,EACJ,EAAE;IAC7C,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAExC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,uBAAuB,EAAE,CAAC;YAC7B,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,MAAM,EACN,KAAK,EACL,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EACjC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,0BAA0B,EAC9D;gBACE,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;QACD,KAAK,kBAAkB,EAAE,CAAC;YACxB,OAAO,SAAS,CACd,KAAK,EACL,OAAO,EACP,MAAM,EACN,KAAK,EACL,MAAM,EACN,aAAa,EACb;gBACE,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,OAAO,CACd,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mCAAmC,GAAG,CACjD,KAAqB,EACrB,OAAO,GAA2C,EAAE,EACT,EAAE;IAC7C,IAAI,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,+BAA+B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,+BAA+B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,yBAAyB,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,gCAAgC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC;QACtC,OAAO,iCAAiC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,gCAAgC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5C,OAAO,uCAAuC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,OAAO,mCAAmC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CACpB,KAA4B,EAC4C,EAAE,CAC1E,qBAAqB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAE5D,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,KAAsC,EAKtC,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AAEnE,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,KAAwC,EACkC,EAAE,CAC5E,qBAAqB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AAElE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,KAAqB,EACrB,OAAO,GAA2C,EAAE,EAKpD,EAAE;IACF,MAAM,aAAa,GAAG,mCAAmC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAE1E,OAAO,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;QACjC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF,MAAM,iCAAiC,GAAG,CACxC,KAAqB,EACrB,OAAwC,EACA,EAAE;IAC1C,MAAM,EAAE,GACN,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS;QAC7D,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;QAChC,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,mCAAmC,GAAG,CAC1C,YAEC,EACD,KAAqB,EACrB,OAAwC,EACxC,EAAE;IACF,MAAM,aAAa,GAAG,mCAAmC,CACvD,KAAK,EACL,iCAAiC,CAAC,KAAK,EAAE,OAAO,CAAC,CAClD,CAAC;IAEF,OAAO,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;QACjC,CAAC,CAAC,MAAM,CAAC,IAAI;QACb,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF,MAAM,+BAA+B,GAAG,CAAC,KAAc,EAAE,EAAE,CACzD,IAAI,aAAa,CAAC;IAChB,OAAO,EAAE,oDAAoD;IAC7D,KAAK;CACN,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,YAI5C,EAAmB,EAAE;IACpB,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC;IAC3C,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,QAAQ,CAAC;IAEhE,OAAO,QAAQ,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;YACd,MAAM,UAAU,GAAG,mCAAmC,CACpD,YAAY,EACZ,KAAK,EACL,OAAO,CACR,CAAC;YACF,MAAM,iBAAiB,GACrB,iBAAiB,KAAK,MAAM;gBAC1B,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;gBACnE,CAAC,CAAC,UAAU,CAAC,IAAI,CACb,MAAM,CAAC,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CACjE,CAAC;YAER,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAC3C,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,CACxC,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,OAAO,GAAoC,EAAE,EAC7C,EAAE,CACF,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CACpB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC;IACjC,MAAM,gBAAgB,GAAG,KAAK,CAAC,CAAC,qBAAqB,CAAC;IAEtD,OAAO,4BAA4B,CAAC;QAClC,QAAQ;QACR,gBAAgB;QAChB,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC,CACH,CAAC;AAEJ,MAAM,qBAAqB,GAAG,CAC5B,IAA2B,EAC3B,KAA4B,EACpB,EAAE;IACV,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAEtE,OAAO,UAAU,KAAK,CAAC;QACrB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAChC,MAAwC,EACxC,KAA4B,EACM,EAAE;IACpC,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAC5B,CAAC,QAAQ,EAAE,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CACzD,CAAC;IAEF,OAAO,KAAK,KAAK,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC;QACpB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CACzB,MAAuC,EACL,EAAE;IACpC,IAAI,MAAM,GAAqC,EAAE,CAAC;IAElD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,yBAAyB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,MAAuC,EACvC,KAAsC,EACJ,EAAE;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3E,MAAM,UAAU,GACd,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACzE,MAAM,gBAAgB,GACpB,KAAK,CAAC,gBAAgB,KAAK,SAAS;QAClC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACrC,MAAM,KAAK,GACT,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC;SACzB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;SAChD,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,gBAAgB,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,gBAAgB,CAChF;SACA,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC/D,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjF,MAAM,MAAM,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAEvD,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAC1C,GAAiC,EAAE;IACjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkD,CAAC;IAE7E,OAAO,qBAAqB,CAAC,IAAI,CAAC;QAChC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAChB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;YACf,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC;QACJ,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CACpB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,4BAA4B,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7E,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CACtB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;YACf,MAAM,UAAU,GAA8B,EAAE,CAAC;YAEjD,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;gBACrC,IACE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;oBACzD,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,EAC7D,CAAC;oBACD,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;YAED,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;gBAC5B,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxB,CAAC;YAED,OAAO,UAAU,CAAC,MAAM,CAAC;QAC3B,CAAC,CAAC;KACL,CAAC,CAAC;AACL,CAAC,CAAC;AAEJ,MAAM,CAAC,MAAM,+BAA+B,GAAG,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAC9E,+BAA+B,CAChC,CAAC"}
1
+ {"version":3,"file":"SecurityTimeline.js","sourceRoot":"","sources":["../src/SecurityTimeline.ts"],"names":[],"mappings":"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"}