@zuplo/cli 7.6.8 → 7.6.9

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 (354) hide show
  1. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +7 -16
  2. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +6 -17
  3. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +7 -16
  4. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +11 -34
  5. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +7 -16
  6. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +15 -35
  7. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwk/embedded.d.ts +3 -8
  8. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwk/thumbprint.d.ts +5 -5
  9. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwks/local.d.ts +6 -10
  10. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwks/remote.d.ts +13 -24
  11. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/compact/sign.d.ts +5 -10
  12. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/compact/verify.d.ts +9 -18
  13. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/flattened/sign.d.ts +7 -16
  14. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/flattened/verify.d.ts +9 -18
  15. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/general/sign.d.ts +11 -21
  16. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/general/verify.d.ts +9 -18
  17. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/decrypt.d.ts +10 -20
  18. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/encrypt.d.ts +6 -13
  19. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/sign.d.ts +5 -6
  20. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/unsecured.d.ts +9 -14
  21. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/verify.d.ts +9 -19
  22. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/key/export.d.ts +4 -4
  23. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/key/generate_key_pair.d.ts +6 -8
  24. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/key/generate_secret.d.ts +4 -11
  25. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/key/import.d.ts +10 -17
  26. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/types.d.ts +44 -84
  27. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/util/base64url.d.ts +2 -2
  28. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/util/decode_jwt.d.ts +3 -10
  29. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/util/decode_protected_header.d.ts +4 -4
  30. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/util/errors.d.ts +26 -53
  31. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/index.js +70 -32
  32. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +7 -8
  33. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +42 -48
  34. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +14 -14
  35. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +53 -64
  36. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/general/decrypt.js +38 -49
  37. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/general/encrypt.js +121 -169
  38. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwk/embedded.js +30 -32
  39. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwk/thumbprint.js +54 -70
  40. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwks/local.js +47 -64
  41. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwks/remote.js +88 -136
  42. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/compact/sign.js +21 -21
  43. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/compact/verify.js +7 -8
  44. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/flattened/sign.js +29 -31
  45. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/flattened/verify.js +21 -24
  46. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/general/sign.js +61 -72
  47. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/general/verify.js +45 -69
  48. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/decrypt.js +13 -20
  49. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/encrypt.js +57 -70
  50. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/sign.js +17 -16
  51. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/unsecured.js +32 -40
  52. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/verify.js +12 -14
  53. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/key/export.js +32 -37
  54. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/key/generate_key_pair.js +40 -48
  55. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/key/generate_secret.js +35 -40
  56. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/key/import.js +52 -56
  57. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/asn1.js +130 -169
  58. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/base64.js +18 -20
  59. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/buffer_utils.js +34 -38
  60. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/content_encryption.js +79 -115
  61. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/crypto_key.js +24 -25
  62. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/deflate.js +45 -47
  63. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/helpers.js +40 -37
  64. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/invalid_key_input.js +10 -24
  65. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/is_key_like.js +17 -15
  66. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwe_algorithms.js +106 -93
  67. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +207 -230
  68. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwe_encrypt.js +104 -138
  69. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwk_metadata.js +17 -18
  70. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwk_to_key.js +9 -16
  71. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jws_algorithms.js +62 -61
  72. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jws_sign.js +50 -75
  73. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jws_verify.js +80 -125
  74. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +123 -209
  75. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key.js +84 -136
  76. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key_algorithm.js +13 -8
  77. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key_descriptor.js +8 -6
  78. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key_management.js +200 -231
  79. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key_options.js +7 -5
  80. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/options.js +55 -68
  81. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/signing.js +18 -22
  82. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/type_checks.js +26 -29
  83. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/util/base64url.js +26 -35
  84. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/util/decode_jwt.js +32 -31
  85. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/util/decode_protected_header.js +18 -23
  86. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/util/errors.js +94 -84
  87. package/node_modules/@modelcontextprotocol/client/node_modules/jose/package.json +17 -81
  88. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +7 -16
  89. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +6 -17
  90. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +7 -16
  91. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +11 -34
  92. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +7 -16
  93. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +15 -35
  94. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwk/embedded.d.ts +3 -8
  95. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwk/thumbprint.d.ts +5 -5
  96. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwks/local.d.ts +6 -10
  97. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwks/remote.d.ts +13 -24
  98. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/compact/sign.d.ts +5 -10
  99. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/compact/verify.d.ts +9 -18
  100. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/flattened/sign.d.ts +7 -16
  101. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/flattened/verify.d.ts +9 -18
  102. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/general/sign.d.ts +11 -21
  103. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/general/verify.d.ts +9 -18
  104. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/decrypt.d.ts +10 -20
  105. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/encrypt.d.ts +6 -13
  106. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/sign.d.ts +5 -6
  107. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/unsecured.d.ts +9 -14
  108. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/verify.d.ts +9 -19
  109. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/key/export.d.ts +4 -4
  110. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/key/generate_key_pair.d.ts +6 -8
  111. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/key/generate_secret.d.ts +4 -11
  112. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/key/import.d.ts +10 -17
  113. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/types.d.ts +44 -84
  114. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/util/base64url.d.ts +2 -2
  115. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/util/decode_jwt.d.ts +3 -10
  116. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/util/decode_protected_header.d.ts +4 -4
  117. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/util/errors.d.ts +26 -53
  118. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/index.js +70 -32
  119. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +7 -8
  120. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +42 -48
  121. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +14 -14
  122. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +53 -64
  123. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/general/decrypt.js +38 -49
  124. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/general/encrypt.js +121 -169
  125. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwk/embedded.js +30 -32
  126. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwk/thumbprint.js +54 -70
  127. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwks/local.js +47 -64
  128. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwks/remote.js +88 -136
  129. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/compact/sign.js +21 -21
  130. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/compact/verify.js +7 -8
  131. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/flattened/sign.js +29 -31
  132. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/flattened/verify.js +21 -24
  133. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/general/sign.js +61 -72
  134. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/general/verify.js +45 -69
  135. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/decrypt.js +13 -20
  136. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/encrypt.js +57 -70
  137. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/sign.js +17 -16
  138. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/unsecured.js +32 -40
  139. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/verify.js +12 -14
  140. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/key/export.js +32 -37
  141. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/key/generate_key_pair.js +40 -48
  142. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/key/generate_secret.js +35 -40
  143. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/key/import.js +52 -56
  144. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/asn1.js +130 -169
  145. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/base64.js +18 -20
  146. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/buffer_utils.js +34 -38
  147. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/content_encryption.js +79 -115
  148. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/crypto_key.js +24 -25
  149. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/deflate.js +45 -47
  150. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/helpers.js +40 -37
  151. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/invalid_key_input.js +10 -24
  152. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/is_key_like.js +17 -15
  153. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwe_algorithms.js +106 -93
  154. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +207 -230
  155. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwe_encrypt.js +104 -138
  156. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwk_metadata.js +17 -18
  157. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwk_to_key.js +9 -16
  158. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jws_algorithms.js +62 -61
  159. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jws_sign.js +50 -75
  160. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jws_verify.js +80 -125
  161. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +123 -209
  162. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key.js +84 -136
  163. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key_algorithm.js +13 -8
  164. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key_descriptor.js +8 -6
  165. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key_management.js +200 -231
  166. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key_options.js +7 -5
  167. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/options.js +55 -68
  168. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/signing.js +18 -22
  169. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/type_checks.js +26 -29
  170. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/util/base64url.js +26 -35
  171. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/util/decode_jwt.js +32 -31
  172. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/util/decode_protected_header.js +18 -23
  173. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/util/errors.js +94 -84
  174. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/package.json +17 -81
  175. package/node_modules/@posthog/core/dist/cookie.js +17 -13
  176. package/node_modules/@posthog/core/dist/error-tracking/chunk-ids.js +15 -11
  177. package/node_modules/@posthog/core/dist/error-tracking/coercers/dom-exception-coercer.js +12 -8
  178. package/node_modules/@posthog/core/dist/error-tracking/coercers/error-coercer.js +12 -8
  179. package/node_modules/@posthog/core/dist/error-tracking/coercers/error-event-coercer.js +12 -9
  180. package/node_modules/@posthog/core/dist/error-tracking/coercers/error-event-coercer.mjs +0 -1
  181. package/node_modules/@posthog/core/dist/error-tracking/coercers/event-coercer.js +12 -8
  182. package/node_modules/@posthog/core/dist/error-tracking/coercers/index.js +51 -63
  183. package/node_modules/@posthog/core/dist/error-tracking/coercers/object-coercer.js +12 -8
  184. package/node_modules/@posthog/core/dist/error-tracking/coercers/primitive-coercer.js +12 -8
  185. package/node_modules/@posthog/core/dist/error-tracking/coercers/promise-rejection-event.js +12 -8
  186. package/node_modules/@posthog/core/dist/error-tracking/coercers/string-coercer.js +15 -11
  187. package/node_modules/@posthog/core/dist/error-tracking/coercers/utils.js +16 -12
  188. package/node_modules/@posthog/core/dist/error-tracking/error-properties-builder.js +12 -8
  189. package/node_modules/@posthog/core/dist/error-tracking/exception-steps.js +18 -14
  190. package/node_modules/@posthog/core/dist/error-tracking/exception-steps.mjs +2 -2
  191. package/node_modules/@posthog/core/dist/error-tracking/index.js +41 -49
  192. package/node_modules/@posthog/core/dist/error-tracking/parsers/base.d.ts.map +1 -1
  193. package/node_modules/@posthog/core/dist/error-tracking/parsers/base.js +13 -9
  194. package/node_modules/@posthog/core/dist/error-tracking/parsers/base.mjs +1 -1
  195. package/node_modules/@posthog/core/dist/error-tracking/parsers/chrome.js +12 -8
  196. package/node_modules/@posthog/core/dist/error-tracking/parsers/gecko.js +12 -8
  197. package/node_modules/@posthog/core/dist/error-tracking/parsers/index.js +17 -13
  198. package/node_modules/@posthog/core/dist/error-tracking/parsers/index.mjs +4 -4
  199. package/node_modules/@posthog/core/dist/error-tracking/parsers/node.js +12 -8
  200. package/node_modules/@posthog/core/dist/error-tracking/parsers/opera.js +14 -10
  201. package/node_modules/@posthog/core/dist/error-tracking/parsers/safari.js +12 -8
  202. package/node_modules/@posthog/core/dist/error-tracking/parsers/winjs.js +12 -8
  203. package/node_modules/@posthog/core/dist/error-tracking/release.js +15 -11
  204. package/node_modules/@posthog/core/dist/error-tracking/types.js +15 -11
  205. package/node_modules/@posthog/core/dist/error-tracking/utils.js +15 -11
  206. package/node_modules/@posthog/core/dist/eventemitter.js +15 -11
  207. package/node_modules/@posthog/core/dist/featureFlagLocalEvaluation.js +18 -14
  208. package/node_modules/@posthog/core/dist/featureFlagLocalEvaluation.mjs +1 -1
  209. package/node_modules/@posthog/core/dist/featureFlagUtils.js +30 -25
  210. package/node_modules/@posthog/core/dist/featureFlagUtils.mjs +2 -2
  211. package/node_modules/@posthog/core/dist/gzip.js +16 -12
  212. package/node_modules/@posthog/core/dist/index.js +302 -310
  213. package/node_modules/@posthog/core/dist/index.mjs +12 -12
  214. package/node_modules/@posthog/core/dist/logs/index.js +13 -9
  215. package/node_modules/@posthog/core/dist/logs/index.mjs +1 -1
  216. package/node_modules/@posthog/core/dist/logs/logs-utils.js +16 -12
  217. package/node_modules/@posthog/core/dist/logs/types.js +2 -2
  218. package/node_modules/@posthog/core/dist/logs/types.mjs +1 -0
  219. package/node_modules/@posthog/core/dist/metrics/config.js +15 -11
  220. package/node_modules/@posthog/core/dist/metrics/index.js +15 -11
  221. package/node_modules/@posthog/core/dist/metrics/index.mjs +2 -2
  222. package/node_modules/@posthog/core/dist/metrics/metrics-utils.js +14 -10
  223. package/node_modules/@posthog/core/dist/metrics/types.js +2 -2
  224. package/node_modules/@posthog/core/dist/metrics/types.mjs +1 -0
  225. package/node_modules/@posthog/core/dist/posthog-core-stateless.js +16 -12
  226. package/node_modules/@posthog/core/dist/posthog-core-stateless.mjs +1 -1
  227. package/node_modules/@posthog/core/dist/posthog-core.d.ts.map +1 -1
  228. package/node_modules/@posthog/core/dist/posthog-core.js +12 -8
  229. package/node_modules/@posthog/core/dist/surveys/activation.js +14 -10
  230. package/node_modules/@posthog/core/dist/surveys/events.js +14 -10
  231. package/node_modules/@posthog/core/dist/surveys/index.js +30 -26
  232. package/node_modules/@posthog/core/dist/surveys/index.mjs +6 -7
  233. package/node_modules/@posthog/core/dist/surveys/keys.js +16 -12
  234. package/node_modules/@posthog/core/dist/surveys/property-matching.js +19 -14
  235. package/node_modules/@posthog/core/dist/surveys/translations.js +16 -12
  236. package/node_modules/@posthog/core/dist/surveys/validation.js +13 -9
  237. package/node_modules/@posthog/core/dist/testing/PostHogCoreTestClient.d.ts +3 -3
  238. package/node_modules/@posthog/core/dist/testing/PostHogCoreTestClient.d.ts.map +1 -1
  239. package/node_modules/@posthog/core/dist/testing/PostHogCoreTestClient.js +15 -11
  240. package/node_modules/@posthog/core/dist/testing/PostHogCoreTestClient.mjs +3 -3
  241. package/node_modules/@posthog/core/dist/testing/index.js +21 -21
  242. package/node_modules/@posthog/core/dist/testing/test-utils.d.ts.map +1 -1
  243. package/node_modules/@posthog/core/dist/testing/test-utils.js +19 -18
  244. package/node_modules/@posthog/core/dist/testing/test-utils.mjs +7 -10
  245. package/node_modules/@posthog/core/dist/tracing-headers.js +12 -8
  246. package/node_modules/@posthog/core/dist/types.js +31 -26
  247. package/node_modules/@posthog/core/dist/types.mjs +1 -1
  248. package/node_modules/@posthog/core/dist/utils/bot-detection.js +16 -12
  249. package/node_modules/@posthog/core/dist/utils/browser-utils.js +12 -8
  250. package/node_modules/@posthog/core/dist/utils/bucketed-rate-limiter.js +14 -10
  251. package/node_modules/@posthog/core/dist/utils/index.js +181 -194
  252. package/node_modules/@posthog/core/dist/utils/index.mjs +3 -3
  253. package/node_modules/@posthog/core/dist/utils/json-utils.js +24 -19
  254. package/node_modules/@posthog/core/dist/utils/logger.js +17 -12
  255. package/node_modules/@posthog/core/dist/utils/number-utils.d.ts.map +1 -1
  256. package/node_modules/@posthog/core/dist/utils/number-utils.js +14 -10
  257. package/node_modules/@posthog/core/dist/utils/number-utils.mjs +1 -1
  258. package/node_modules/@posthog/core/dist/utils/otlp-any-value.js +15 -11
  259. package/node_modules/@posthog/core/dist/utils/otlp-any-value.mjs +1 -1
  260. package/node_modules/@posthog/core/dist/utils/otlp-resource.js +17 -13
  261. package/node_modules/@posthog/core/dist/utils/promise-queue.js +12 -8
  262. package/node_modules/@posthog/core/dist/utils/string-utils.js +21 -16
  263. package/node_modules/@posthog/core/dist/utils/type-utils.js +31 -27
  264. package/node_modules/@posthog/core/dist/utils/type-utils.mjs +2 -2
  265. package/node_modules/@posthog/core/dist/utils/user-agent-utils.js +16 -12
  266. package/node_modules/@posthog/core/dist/vendor/uuidv7.js +22 -17
  267. package/node_modules/@posthog/core/dist/vendor/uuidv7.mjs +1 -1
  268. package/node_modules/@posthog/core/package.json +8 -8
  269. package/node_modules/@posthog/core/src/error-tracking/coercers/promise-rejection-event.spec.ts +4 -4
  270. package/node_modules/@posthog/core/src/error-tracking/error-properties-builder.parse.spec.ts +1 -1
  271. package/node_modules/@posthog/core/src/error-tracking/parsers/base.spec.ts +21 -2
  272. package/node_modules/@posthog/core/src/error-tracking/parsers/base.ts +6 -2
  273. package/node_modules/@posthog/core/src/featureFlagUtils.ts +4 -4
  274. package/node_modules/@posthog/core/src/logs/index.spec.ts +89 -89
  275. package/node_modules/@posthog/core/src/metrics/index.spec.ts +24 -24
  276. package/node_modules/@posthog/core/src/posthog-core.ts +0 -1
  277. package/node_modules/@posthog/core/src/surveys/activation.spec.ts +1 -1
  278. package/node_modules/@posthog/core/src/surveys/events.spec.ts +1 -1
  279. package/node_modules/@posthog/core/src/surveys/keys.spec.ts +1 -1
  280. package/node_modules/@posthog/core/src/surveys/translations.spec.ts +8 -8
  281. package/node_modules/@posthog/core/src/testing/PostHogCoreTestClient.ts +6 -6
  282. package/node_modules/@posthog/core/src/testing/test-utils.ts +7 -12
  283. package/node_modules/@posthog/core/src/utils/bucketed-rate-limiter.spec.ts +13 -13
  284. package/node_modules/@posthog/core/src/utils/json-utils.spec.ts +5 -5
  285. package/node_modules/@posthog/core/src/utils/number-utils.spec.ts +20 -0
  286. package/node_modules/@posthog/core/src/utils/number-utils.ts +3 -1
  287. package/node_modules/@posthog/core/src/utils/otlp-any-value.spec.ts +3 -3
  288. package/node_modules/@posthog/core/src/utils/promise-queue.spec.ts +3 -3
  289. package/node_modules/@posthog/types/dist/capture-log.js +2 -2
  290. package/node_modules/@posthog/types/dist/capture-log.mjs +1 -0
  291. package/node_modules/@posthog/types/dist/capture-metric.js +15 -11
  292. package/node_modules/@posthog/types/dist/capture.js +2 -2
  293. package/node_modules/@posthog/types/dist/capture.mjs +1 -0
  294. package/node_modules/@posthog/types/dist/common.js +2 -2
  295. package/node_modules/@posthog/types/dist/common.mjs +1 -0
  296. package/node_modules/@posthog/types/dist/feature-flags.js +2 -2
  297. package/node_modules/@posthog/types/dist/feature-flags.mjs +1 -0
  298. package/node_modules/@posthog/types/dist/index.js +12 -8
  299. package/node_modules/@posthog/types/dist/index.mjs +1 -2
  300. package/node_modules/@posthog/types/dist/posthog-config.d.ts +8 -0
  301. package/node_modules/@posthog/types/dist/posthog-config.d.ts.map +1 -1
  302. package/node_modules/@posthog/types/dist/posthog-config.js +2 -2
  303. package/node_modules/@posthog/types/dist/posthog-config.mjs +1 -0
  304. package/node_modules/@posthog/types/dist/posthog.d.ts +2 -2
  305. package/node_modules/@posthog/types/dist/posthog.d.ts.map +1 -1
  306. package/node_modules/@posthog/types/dist/posthog.js +2 -2
  307. package/node_modules/@posthog/types/dist/posthog.mjs +1 -0
  308. package/node_modules/@posthog/types/dist/request.js +2 -2
  309. package/node_modules/@posthog/types/dist/request.mjs +1 -0
  310. package/node_modules/@posthog/types/dist/segment.js +2 -2
  311. package/node_modules/@posthog/types/dist/segment.mjs +1 -0
  312. package/node_modules/@posthog/types/dist/session-recording.js +2 -2
  313. package/node_modules/@posthog/types/dist/session-recording.mjs +1 -0
  314. package/node_modules/@posthog/types/dist/survey.js +2 -2
  315. package/node_modules/@posthog/types/dist/survey.mjs +1 -0
  316. package/node_modules/@posthog/types/dist/toolbar.js +2 -2
  317. package/node_modules/@posthog/types/dist/toolbar.mjs +1 -0
  318. package/node_modules/@posthog/types/dist/tree-shakeable.js +2 -2
  319. package/node_modules/@posthog/types/dist/tree-shakeable.mjs +1 -0
  320. package/node_modules/@posthog/types/package.json +4 -6
  321. package/node_modules/@posthog/types/src/posthog-config.ts +9 -0
  322. package/node_modules/@posthog/types/src/posthog.ts +2 -2
  323. package/node_modules/@zuplo/core/package.json +1 -1
  324. package/node_modules/@zuplo/graphql/package.json +1 -1
  325. package/node_modules/@zuplo/openapi-tools/package.json +1 -1
  326. package/node_modules/@zuplo/otel/package.json +1 -1
  327. package/node_modules/@zuplo/runtime/out/esm/{chunk-ZZCZZHOD.js → chunk-Z3IKCP3N.js} +93 -93
  328. package/node_modules/@zuplo/runtime/out/esm/chunk-Z3IKCP3N.js.map +1 -0
  329. package/node_modules/@zuplo/runtime/out/esm/index.js +1 -1
  330. package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js +1 -1
  331. package/node_modules/@zuplo/runtime/out/types/index.d.ts +59 -9
  332. package/node_modules/@zuplo/runtime/package.json +1 -1
  333. package/node_modules/hono/dist/cjs/client/client.js +4 -4
  334. package/node_modules/hono/dist/cjs/hono-base.js +7 -6
  335. package/node_modules/hono/dist/cjs/jsx/base.js +18 -1
  336. package/node_modules/hono/dist/cjs/jsx/components.js +25 -26
  337. package/node_modules/hono/dist/cjs/jsx/context.js +5 -5
  338. package/node_modules/hono/dist/cjs/jsx/dom/server.js +5 -1
  339. package/node_modules/hono/dist/cjs/jsx/intrinsic-element/components.js +2 -2
  340. package/node_modules/hono/dist/cjs/jsx/streaming.js +4 -5
  341. package/node_modules/hono/dist/client/client.js +4 -4
  342. package/node_modules/hono/dist/hono-base.js +7 -6
  343. package/node_modules/hono/dist/jsx/base.js +15 -1
  344. package/node_modules/hono/dist/jsx/components.js +26 -27
  345. package/node_modules/hono/dist/jsx/context.js +6 -6
  346. package/node_modules/hono/dist/jsx/dom/server.js +5 -1
  347. package/node_modules/hono/dist/jsx/intrinsic-element/components.js +3 -3
  348. package/node_modules/hono/dist/jsx/streaming.js +5 -6
  349. package/node_modules/hono/dist/types/context.d.ts +2 -2
  350. package/node_modules/hono/dist/types/jsx/base.d.ts +3 -0
  351. package/node_modules/hono/package.json +2 -2
  352. package/package.json +11 -11
  353. package/node_modules/@zuplo/runtime/out/esm/chunk-ZZCZZHOD.js.map +0 -1
  354. /package/node_modules/@zuplo/runtime/out/esm/{chunk-ZZCZZHOD.js.LEGAL.txt → chunk-Z3IKCP3N.js.LEGAL.txt} +0 -0
@@ -34,20 +34,20 @@ const createMockInstance = (overrides: Record<string, any> = {}): any => {
34
34
  const store: Record<string, any> = {}
35
35
  const instance: any = {
36
36
  optedOut: false,
37
- getDistinctId: jest.fn(() => 'user-123'),
38
- getSessionId: jest.fn(() => 'sess-456'),
39
- getLibraryId: jest.fn(() => 'posthog-core-tests'),
40
- getLibraryVersion: jest.fn(() => '0.0.0-test'),
41
- getPersistedProperty: jest.fn((key: string) => store[key]),
42
- setPersistedProperty: jest.fn((key: string, value: any) => {
37
+ getDistinctId: vi.fn(() => 'user-123'),
38
+ getSessionId: vi.fn(() => 'sess-456'),
39
+ getLibraryId: vi.fn(() => 'posthog-core-tests'),
40
+ getLibraryVersion: vi.fn(() => '0.0.0-test'),
41
+ getPersistedProperty: vi.fn((key: string) => store[key]),
42
+ setPersistedProperty: vi.fn((key: string, value: any) => {
43
43
  if (value === null || value === undefined) {
44
44
  delete store[key]
45
45
  } else {
46
46
  store[key] = value
47
47
  }
48
48
  }),
49
- _sendLogsBatch: jest.fn(() => Promise.resolve({ kind: 'ok' })),
50
- addPendingPromise: jest.fn(<T>(promise: Promise<T>) => promise),
49
+ _sendLogsBatch: vi.fn(() => Promise.resolve({ kind: 'ok' })),
50
+ addPendingPromise: vi.fn(<T>(promise: Promise<T>) => promise),
51
51
  _store: store,
52
52
  ...overrides,
53
53
  }
@@ -60,13 +60,13 @@ const immediateOnReady = (fn: () => void): void => fn()
60
60
 
61
61
  const createMockLogger = (): Logger => {
62
62
  const logger: any = {
63
- debug: jest.fn(),
64
- info: jest.fn(),
65
- warn: jest.fn(),
66
- error: jest.fn(),
67
- critical: jest.fn(),
63
+ debug: vi.fn(),
64
+ info: vi.fn(),
65
+ warn: vi.fn(),
66
+ error: vi.fn(),
67
+ critical: vi.fn(),
68
68
  }
69
- logger.createLogger = jest.fn(() => logger)
69
+ logger.createLogger = vi.fn(() => logger)
70
70
  return logger as Logger
71
71
  }
72
72
 
@@ -117,7 +117,7 @@ describe('PostHogLogs over the core sender', () => {
117
117
  })
118
118
 
119
119
  it('retains and resends records after transport retries are exhausted', async () => {
120
- jest.useRealTimers()
120
+ vi.useRealTimers()
121
121
  const [client, mocks] = createTestClient('TEST_API_KEY', {
122
122
  fetchRetryCount: 2,
123
123
  fetchRetryDelay: 1,
@@ -175,7 +175,7 @@ describe('PostHogLogs', () => {
175
175
  it('does not let an in-flight batch drop records captured after the clear', async () => {
176
176
  let releaseSend: (v: any) => void = () => {}
177
177
  const mockInstance = createMockInstance({
178
- _sendLogsBatch: jest.fn(() => new Promise((resolve) => (releaseSend = resolve))),
178
+ _sendLogsBatch: vi.fn(() => new Promise((resolve) => (releaseSend = resolve))),
179
179
  })
180
180
  const logs = new PostHogLogs(
181
181
  mockInstance,
@@ -202,7 +202,7 @@ describe('PostHogLogs', () => {
202
202
  const sentBodies: string[][] = []
203
203
  let releaseSend: (v: any) => void = () => {}
204
204
  const mockInstance = createMockInstance({
205
- _sendLogsBatch: jest.fn((payload: any) => {
205
+ _sendLogsBatch: vi.fn((payload: any) => {
206
206
  sentBodies.push(payload.resourceLogs[0].scopeLogs[0].logRecords.map((r: any) => r.body.stringValue))
207
207
  // Only the first send is held open; any retry resolves at once so a
208
208
  // regression fails on the assertion rather than by hanging the test.
@@ -236,7 +236,7 @@ describe('PostHogLogs', () => {
236
236
  const sent: string[][] = []
237
237
  let releasePersist: (() => void) | null = null
238
238
  const mockInstance = createMockInstance({
239
- _sendLogsBatch: jest.fn((payload: any) => {
239
+ _sendLogsBatch: vi.fn((payload: any) => {
240
240
  sent.push(payload.resourceLogs[0].scopeLogs[0].logRecords.map((r: any) => r.body.stringValue))
241
241
  return Promise.resolve({ kind: 'ok' })
242
242
  }),
@@ -280,7 +280,7 @@ describe('PostHogLogs', () => {
280
280
  it('does not let an in-flight batch drop records captured after the reset', async () => {
281
281
  let releaseSend: (v: any) => void = () => {}
282
282
  const mockInstance = createMockInstance({
283
- _sendLogsBatch: jest.fn(() => new Promise((resolve) => (releaseSend = resolve))),
283
+ _sendLogsBatch: vi.fn(() => new Promise((resolve) => (releaseSend = resolve))),
284
284
  })
285
285
  const logs = new PostHogLogs(
286
286
  mockInstance,
@@ -305,7 +305,7 @@ describe('PostHogLogs', () => {
305
305
  it('does not let a flush started after the reset run alongside the in-flight one', async () => {
306
306
  let releaseSend: (v: any) => void = () => {}
307
307
  const mockInstance = createMockInstance({
308
- _sendLogsBatch: jest.fn(() => new Promise((resolve) => (releaseSend = resolve))),
308
+ _sendLogsBatch: vi.fn(() => new Promise((resolve) => (releaseSend = resolve))),
309
309
  })
310
310
  const logs = new PostHogLogs(
311
311
  mockInstance,
@@ -624,7 +624,7 @@ describe('PostHogLogs', () => {
624
624
  })
625
625
 
626
626
  it('silently drops captures when onReady never invokes fn (rejected init)', () => {
627
- const neverReady = jest.fn(() => {
627
+ const neverReady = vi.fn(() => {
628
628
  /* simulate rejected init: fn is never called */
629
629
  })
630
630
  const logs = new PostHogLogs(mockInstance, resolveForTest(), logger, getContextFor(mockInstance), neverReady)
@@ -642,13 +642,13 @@ describe('PostHogLogs', () => {
642
642
  pending.push(fn)
643
643
  }
644
644
  const instance = createMockInstance({
645
- getDistinctId: jest.fn().mockReturnValue('user-A'),
645
+ getDistinctId: vi.fn().mockReturnValue('user-A'),
646
646
  })
647
647
 
648
648
  const logs = new PostHogLogs(instance, resolveForTest(), logger, getContextFor(instance), defer)
649
649
  logs.captureLog({ body: 'captured-as-user-A' })
650
650
 
651
- instance.getDistinctId = jest.fn().mockReturnValue('user-B')
651
+ instance.getDistinctId = vi.fn().mockReturnValue('user-B')
652
652
 
653
653
  pending.forEach((fn) => fn())
654
654
 
@@ -718,7 +718,7 @@ describe('PostHogLogs', () => {
718
718
  })
719
719
 
720
720
  it('uses the scopeName constructor param as the OTLP scope name', async () => {
721
- jest.useFakeTimers()
721
+ vi.useFakeTimers()
722
722
  const logs = new PostHogLogs(
723
723
  mockInstance,
724
724
  resolveForTest(),
@@ -740,7 +740,7 @@ describe('PostHogLogs', () => {
740
740
  payload.resourceLogs[0].resource.attributes.map((a: any) => [a.key, a.value])
741
741
  )
742
742
  expect(resourceAttrs['telemetry.sdk.name']).toEqual({ stringValue: 'posthog-core-tests' })
743
- jest.useRealTimers()
743
+ vi.useRealTimers()
744
744
  })
745
745
 
746
746
  it('defaults service.name to "unknown_service" when not configured', async () => {
@@ -800,7 +800,7 @@ describe('PostHogLogs', () => {
800
800
  it('splits a large queue into multiple batches of maxBatchRecordsPerPost and persists after each', async () => {
801
801
  const sendOrder: number[] = []
802
802
  let persistCallsBeforeSecondSend = 0
803
- mockInstance._sendLogsBatch = jest.fn(async (payload: any) => {
803
+ mockInstance._sendLogsBatch = vi.fn(async (payload: any) => {
804
804
  // Record the persist count *at the start of* send #2. The first send
805
805
  // must have already persisted its queue advance by then — otherwise a
806
806
  // crash between sends could double-send the first batch.
@@ -833,7 +833,7 @@ describe('PostHogLogs', () => {
833
833
 
834
834
  it('halves maxBatchRecordsPerPost and retries the same records on too-large outcome', async () => {
835
835
  const sendSizes: number[] = []
836
- mockInstance._sendLogsBatch = jest.fn(async (payload: any) => {
836
+ mockInstance._sendLogsBatch = vi.fn(async (payload: any) => {
837
837
  const size = payload.resourceLogs[0].scopeLogs[0].logRecords.length
838
838
  sendSizes.push(size)
839
839
  if (sendSizes.length === 1) {
@@ -865,7 +865,7 @@ describe('PostHogLogs', () => {
865
865
  // cap, each healthy send grows it back by 1 until the configured
866
866
  // maximum is reached.
867
867
  const sendSizes: number[] = []
868
- mockInstance._sendLogsBatch = jest.fn(async (payload: any) => {
868
+ mockInstance._sendLogsBatch = vi.fn(async (payload: any) => {
869
869
  const size = payload.resourceLogs[0].scopeLogs[0].logRecords.length
870
870
  sendSizes.push(size)
871
871
  // First POST is rejected as too-large; everything else succeeds.
@@ -897,7 +897,7 @@ describe('PostHogLogs', () => {
897
897
  })
898
898
 
899
899
  it('drops the only record when too-large arrives on a batch of size 1', async () => {
900
- mockInstance._sendLogsBatch = jest.fn(() => Promise.resolve({ kind: 'too-large' }))
900
+ mockInstance._sendLogsBatch = vi.fn(() => Promise.resolve({ kind: 'too-large' }))
901
901
  const logs = new PostHogLogs(
902
902
  mockInstance,
903
903
  resolveForTest({ maxBatchRecordsPerPost: 1 }),
@@ -915,7 +915,7 @@ describe('PostHogLogs', () => {
915
915
  })
916
916
 
917
917
  it('warns explicitly when dropping a size-1 413 (visibility for the lost record)', async () => {
918
- mockInstance._sendLogsBatch = jest.fn(() => Promise.resolve({ kind: 'too-large' }))
918
+ mockInstance._sendLogsBatch = vi.fn(() => Promise.resolve({ kind: 'too-large' }))
919
919
  const logs = new PostHogLogs(
920
920
  mockInstance,
921
921
  resolveForTest({ maxBatchRecordsPerPost: 1 }),
@@ -935,7 +935,7 @@ describe('PostHogLogs', () => {
935
935
  // First record returns too-large with size 1 (drops and warns), then
936
936
  // the rest of the queue should continue flushing normally.
937
937
  let callCount = 0
938
- mockInstance._sendLogsBatch = jest.fn(() => {
938
+ mockInstance._sendLogsBatch = vi.fn(() => {
939
939
  callCount++
940
940
  return Promise.resolve(callCount === 1 ? { kind: 'too-large' } : { kind: 'ok' })
941
941
  })
@@ -962,7 +962,7 @@ describe('PostHogLogs', () => {
962
962
  // then 413 on size 1 is the permanent drop. Verifies the cap actually
963
963
  // shrinks all the way down before the size-1 drop fires.
964
964
  const sendSizes: number[] = []
965
- mockInstance._sendLogsBatch = jest.fn(async (payload: any) => {
965
+ mockInstance._sendLogsBatch = vi.fn(async (payload: any) => {
966
966
  const size = payload.resourceLogs[0].scopeLogs[0].logRecords.length
967
967
  sendSizes.push(size)
968
968
  return { kind: 'too-large' }
@@ -991,7 +991,7 @@ describe('PostHogLogs', () => {
991
991
 
992
992
  it('keeps records in the queue on retry-later outcome and re-throws the carried error', async () => {
993
993
  const netErr = new Error('offline')
994
- mockInstance._sendLogsBatch = jest.fn(() => Promise.resolve({ kind: 'retry-later', error: netErr }))
994
+ mockInstance._sendLogsBatch = vi.fn(() => Promise.resolve({ kind: 'retry-later', error: netErr }))
995
995
  const logs = new PostHogLogs(
996
996
  mockInstance,
997
997
  resolveForTest(),
@@ -1008,7 +1008,7 @@ describe('PostHogLogs', () => {
1008
1008
 
1009
1009
  it('drops the batch on fatal outcome and re-throws the carried error', async () => {
1010
1010
  const bogus = new Error('malformed')
1011
- mockInstance._sendLogsBatch = jest.fn(() => Promise.resolve({ kind: 'fatal', error: bogus }))
1011
+ mockInstance._sendLogsBatch = vi.fn(() => Promise.resolve({ kind: 'fatal', error: bogus }))
1012
1012
  const logs = new PostHogLogs(
1013
1013
  mockInstance,
1014
1014
  resolveForTest(),
@@ -1025,11 +1025,11 @@ describe('PostHogLogs', () => {
1025
1025
 
1026
1026
  it('awaits _waitForStoragePersist between batches so a crash can’t replay records', async () => {
1027
1027
  const sequence: string[] = []
1028
- mockInstance._sendLogsBatch = jest.fn(async (payload: any) => {
1028
+ mockInstance._sendLogsBatch = vi.fn(async (payload: any) => {
1029
1029
  sequence.push(`send:${payload.resourceLogs[0].scopeLogs[0].logRecords.length}`)
1030
1030
  return { kind: 'ok' }
1031
1031
  })
1032
- const waitForStoragePersist = jest.fn(async () => {
1032
+ const waitForStoragePersist = vi.fn(async () => {
1033
1033
  sequence.push('waitForPersist')
1034
1034
  })
1035
1035
  const logs = new PostHogLogs(
@@ -1055,7 +1055,7 @@ describe('PostHogLogs', () => {
1055
1055
 
1056
1056
  it('serializes concurrent flush calls rather than racing them', async () => {
1057
1057
  let resolveFirst: (v: any) => void = () => {}
1058
- mockInstance._sendLogsBatch = jest.fn(
1058
+ mockInstance._sendLogsBatch = vi.fn(
1059
1059
  () =>
1060
1060
  new Promise((r) => {
1061
1061
  resolveFirst = r
@@ -1081,8 +1081,8 @@ describe('PostHogLogs', () => {
1081
1081
  })
1082
1082
 
1083
1083
  describe('flush triggers', () => {
1084
- beforeEach(() => jest.useFakeTimers())
1085
- afterEach(() => jest.useRealTimers())
1084
+ beforeEach(() => vi.useFakeTimers())
1085
+ afterEach(() => vi.useRealTimers())
1086
1086
 
1087
1087
  it('fires a flush when the buffer hits maxBufferSize', () => {
1088
1088
  const logs = new PostHogLogs(
@@ -1117,9 +1117,9 @@ describe('PostHogLogs', () => {
1117
1117
  // Only one timer armed, not three — subsequent enqueues inside the
1118
1118
  // window must not push the flush out.
1119
1119
  expect(mockInstance._sendLogsBatch).not.toHaveBeenCalled()
1120
- jest.advanceTimersByTime(4999)
1120
+ vi.advanceTimersByTime(4999)
1121
1121
  expect(mockInstance._sendLogsBatch).not.toHaveBeenCalled()
1122
- jest.advanceTimersByTime(1)
1122
+ vi.advanceTimersByTime(1)
1123
1123
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1124
1124
  })
1125
1125
 
@@ -1135,13 +1135,13 @@ describe('PostHogLogs', () => {
1135
1135
  logs.captureLog({ body: 'b' })
1136
1136
  // Threshold path flushed already; advancing time must not trigger a second send.
1137
1137
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1138
- jest.advanceTimersByTime(5000)
1138
+ vi.advanceTimersByTime(5000)
1139
1139
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1140
1140
  })
1141
1141
 
1142
1142
  it('re-arms the timer after a failed flush so a retry happens without a new capture', async () => {
1143
1143
  // First flush fails (retry-later keeps the records); the second succeeds.
1144
- mockInstance._sendLogsBatch = jest
1144
+ mockInstance._sendLogsBatch = vi
1145
1145
  .fn()
1146
1146
  .mockResolvedValueOnce({ kind: 'retry-later', error: new Error('net') })
1147
1147
  .mockResolvedValueOnce({ kind: 'ok' })
@@ -1156,12 +1156,12 @@ describe('PostHogLogs', () => {
1156
1156
  logs.captureLog({ body: 'retry-me' })
1157
1157
 
1158
1158
  // First timer fires → flush #1 → retry-later → record retained, timer re-armed.
1159
- await jest.advanceTimersByTimeAsync(5000)
1159
+ await vi.advanceTimersByTimeAsync(5000)
1160
1160
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1161
1161
  expect(readQueue(mockInstance)).toHaveLength(1)
1162
1162
 
1163
1163
  // No new capture: the re-armed timer alone fires the retry, which drains.
1164
- await jest.advanceTimersByTimeAsync(5000)
1164
+ await vi.advanceTimersByTimeAsync(5000)
1165
1165
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(2)
1166
1166
  expect(readQueue(mockInstance)).toHaveLength(0)
1167
1167
  })
@@ -1176,19 +1176,19 @@ describe('PostHogLogs', () => {
1176
1176
  )
1177
1177
  logs.captureLog({ body: 'one' })
1178
1178
 
1179
- await jest.advanceTimersByTimeAsync(5000)
1179
+ await vi.advanceTimersByTimeAsync(5000)
1180
1180
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1181
1181
  expect(readQueue(mockInstance)).toHaveLength(0)
1182
1182
 
1183
1183
  // Successful drain leaves nothing queued, so no further timer should fire.
1184
- await jest.advanceTimersByTimeAsync(20000)
1184
+ await vi.advanceTimersByTimeAsync(20000)
1185
1185
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1186
1186
  })
1187
1187
 
1188
1188
  it('backs off exponentially across consecutive failed flushes', async () => {
1189
1189
  // Every flush fails, so the record stays queued and the retry interval grows:
1190
1190
  // base (initial), base (1st retry), 2x, 4x, ...
1191
- mockInstance._sendLogsBatch = jest.fn(() => Promise.resolve({ kind: 'retry-later', error: new Error('down') }))
1191
+ mockInstance._sendLogsBatch = vi.fn(() => Promise.resolve({ kind: 'retry-later', error: new Error('down') }))
1192
1192
  const base = 1000
1193
1193
  const logs = new PostHogLogs(
1194
1194
  mockInstance,
@@ -1199,27 +1199,27 @@ describe('PostHogLogs', () => {
1199
1199
  )
1200
1200
  logs.captureLog({ body: 'x' })
1201
1201
 
1202
- await jest.advanceTimersByTimeAsync(base) // initial timer → attempt #1
1202
+ await vi.advanceTimersByTimeAsync(base) // initial timer → attempt #1
1203
1203
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1204
- await jest.advanceTimersByTimeAsync(base) // 1st retry still at base → attempt #2
1204
+ await vi.advanceTimersByTimeAsync(base) // 1st retry still at base → attempt #2
1205
1205
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(2)
1206
1206
 
1207
1207
  // Now backoff: next retry is 2x base — base alone must not fire it.
1208
- await jest.advanceTimersByTimeAsync(base)
1208
+ await vi.advanceTimersByTimeAsync(base)
1209
1209
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(2)
1210
- await jest.advanceTimersByTimeAsync(base) // 2x base elapsed → attempt #3
1210
+ await vi.advanceTimersByTimeAsync(base) // 2x base elapsed → attempt #3
1211
1211
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(3)
1212
1212
 
1213
1213
  // Next retry is 4x base.
1214
- await jest.advanceTimersByTimeAsync(2 * base)
1214
+ await vi.advanceTimersByTimeAsync(2 * base)
1215
1215
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(3)
1216
- await jest.advanceTimersByTimeAsync(2 * base) // 4x base elapsed → attempt #4
1216
+ await vi.advanceTimersByTimeAsync(2 * base) // 4x base elapsed → attempt #4
1217
1217
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(4)
1218
1218
  })
1219
1219
 
1220
1220
  it('resets the backoff after a successful flush', async () => {
1221
1221
  let shouldFail = true
1222
- mockInstance._sendLogsBatch = jest.fn(() =>
1222
+ mockInstance._sendLogsBatch = vi.fn(() =>
1223
1223
  Promise.resolve(shouldFail ? { kind: 'retry-later', error: new Error('down') } : { kind: 'ok' })
1224
1224
  )
1225
1225
  const base = 1000
@@ -1232,23 +1232,23 @@ describe('PostHogLogs', () => {
1232
1232
  )
1233
1233
  logs.captureLog({ body: 'a' })
1234
1234
 
1235
- await jest.advanceTimersByTimeAsync(base) // attempt #1 fail (failures→1)
1236
- await jest.advanceTimersByTimeAsync(base) // attempt #2 fail (failures→2, next 2x)
1237
- await jest.advanceTimersByTimeAsync(2 * base) // attempt #3 fail (failures→3, next 4x)
1235
+ await vi.advanceTimersByTimeAsync(base) // attempt #1 fail (failures→1)
1236
+ await vi.advanceTimersByTimeAsync(base) // attempt #2 fail (failures→2, next 2x)
1237
+ await vi.advanceTimersByTimeAsync(2 * base) // attempt #3 fail (failures→3, next 4x)
1238
1238
  shouldFail = false
1239
- await jest.advanceTimersByTimeAsync(4 * base) // attempt #4 succeeds → drains + resets
1239
+ await vi.advanceTimersByTimeAsync(4 * base) // attempt #4 succeeds → drains + resets
1240
1240
  expect(readQueue(mockInstance)).toHaveLength(0)
1241
1241
 
1242
1242
  // A new capture flushes at the base interval again, not the backed-off one.
1243
- ;(mockInstance._sendLogsBatch as jest.Mock).mockClear()
1243
+ ;(mockInstance._sendLogsBatch as vi.Mock).mockClear()
1244
1244
  logs.captureLog({ body: 'b' })
1245
- await jest.advanceTimersByTimeAsync(base)
1245
+ await vi.advanceTimersByTimeAsync(base)
1246
1246
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1247
1247
  })
1248
1248
 
1249
1249
  it('onReconnect flushes immediately without waiting out the backoff', async () => {
1250
1250
  let shouldFail = true
1251
- mockInstance._sendLogsBatch = jest.fn(() =>
1251
+ mockInstance._sendLogsBatch = vi.fn(() =>
1252
1252
  Promise.resolve(shouldFail ? { kind: 'retry-later', error: new Error('down') } : { kind: 'ok' })
1253
1253
  )
1254
1254
  const base = 1000
@@ -1261,22 +1261,22 @@ describe('PostHogLogs', () => {
1261
1261
  )
1262
1262
  logs.captureLog({ body: 'x' })
1263
1263
 
1264
- await jest.advanceTimersByTimeAsync(base) // attempt #1 fails → record retained, backoff armed
1264
+ await vi.advanceTimersByTimeAsync(base) // attempt #1 fails → record retained, backoff armed
1265
1265
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1266
1266
  expect(readQueue(mockInstance)).toHaveLength(1)
1267
1267
 
1268
1268
  // Reconnect drains now — no timer advance needed.
1269
1269
  shouldFail = false
1270
1270
  logs.onReconnect()
1271
- await jest.advanceTimersByTimeAsync(0)
1271
+ await vi.advanceTimersByTimeAsync(0)
1272
1272
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(2)
1273
1273
  expect(readQueue(mockInstance)).toHaveLength(0)
1274
1274
  })
1275
1275
  })
1276
1276
 
1277
1277
  describe('flushWithTimeout', () => {
1278
- beforeEach(() => jest.useFakeTimers())
1279
- afterEach(() => jest.useRealTimers())
1278
+ beforeEach(() => vi.useFakeTimers())
1279
+ afterEach(() => vi.useRealTimers())
1280
1280
 
1281
1281
  it('clears the timeout timer when the flush finishes first', async () => {
1282
1282
  const logs = new PostHogLogs(
@@ -1292,13 +1292,13 @@ describe('PostHogLogs', () => {
1292
1292
 
1293
1293
  await logs.flushWithTimeout(5000)
1294
1294
 
1295
- expect(jest.getTimerCount()).toBe(0)
1295
+ expect(vi.getTimerCount()).toBe(0)
1296
1296
  })
1297
1297
  })
1298
1298
 
1299
1299
  describe('shutdown', () => {
1300
- beforeEach(() => jest.useFakeTimers())
1301
- afterEach(() => jest.useRealTimers())
1300
+ beforeEach(() => vi.useFakeTimers())
1301
+ afterEach(() => vi.useRealTimers())
1302
1302
 
1303
1303
  it('drains the queue and clears any armed flush timer', async () => {
1304
1304
  const logs = new PostHogLogs(
@@ -1316,7 +1316,7 @@ describe('PostHogLogs', () => {
1316
1316
 
1317
1317
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1318
1318
  // Advancing past the original interval must not produce a second flush.
1319
- jest.advanceTimersByTime(10000)
1319
+ vi.advanceTimersByTime(10000)
1320
1320
  expect(mockInstance._sendLogsBatch).toHaveBeenCalledTimes(1)
1321
1321
  })
1322
1322
 
@@ -1332,11 +1332,11 @@ describe('PostHogLogs', () => {
1332
1332
 
1333
1333
  await logs.shutdown(5000)
1334
1334
 
1335
- expect(jest.getTimerCount()).toBe(0)
1335
+ expect(vi.getTimerCount()).toBe(0)
1336
1336
  })
1337
1337
 
1338
1338
  it('swallows flush errors so shutdown can complete', async () => {
1339
- mockInstance._sendLogsBatch = jest.fn(() => Promise.resolve({ kind: 'fatal', error: new Error('boom') }))
1339
+ mockInstance._sendLogsBatch = vi.fn(() => Promise.resolve({ kind: 'fatal', error: new Error('boom') }))
1340
1340
  const logs = new PostHogLogs(
1341
1341
  mockInstance,
1342
1342
  resolveForTest(),
@@ -1380,7 +1380,7 @@ describe('PostHogLogs', () => {
1380
1380
 
1381
1381
  it('while a flush is in flight, the shared promise coordinates a single drain', async () => {
1382
1382
  let resolveFirst: (v: any) => void = () => {}
1383
- mockInstance._sendLogsBatch = jest.fn(
1383
+ mockInstance._sendLogsBatch = vi.fn(
1384
1384
  () =>
1385
1385
  new Promise((r) => {
1386
1386
  resolveFirst = r
@@ -1396,8 +1396,8 @@ describe('PostHogLogs', () => {
1396
1396
  logs.captureLog({ body: 'a' })
1397
1397
 
1398
1398
  // Real timers only here — shutdown(timeoutMs) path uses safeSetTimeout,
1399
- // which is incompatible with the default `jest.useFakeTimers()`.
1400
- jest.useRealTimers()
1399
+ // which is incompatible with the default `vi.useFakeTimers()`.
1400
+ vi.useRealTimers()
1401
1401
 
1402
1402
  const flushP = logs.flush()
1403
1403
  const shutdownP = logs.shutdown()
@@ -1410,9 +1410,9 @@ describe('PostHogLogs', () => {
1410
1410
  })
1411
1411
 
1412
1412
  it('races the final flush against timeoutMs so a stalled send does not hang shutdown', async () => {
1413
- jest.useRealTimers()
1413
+ vi.useRealTimers()
1414
1414
  // _sendLogsBatch never resolves — the budget must force shutdown to return.
1415
- mockInstance._sendLogsBatch = jest.fn(() => new Promise(() => {}))
1415
+ mockInstance._sendLogsBatch = vi.fn(() => new Promise(() => {}))
1416
1416
  const logs = new PostHogLogs(
1417
1417
  mockInstance,
1418
1418
  resolveForTest(),
@@ -1539,10 +1539,10 @@ describe('PostHogLogs', () => {
1539
1539
  })
1540
1540
 
1541
1541
  it('never crashes the caller when a fn throws — drops the record (fail closed) and logs', () => {
1542
- const thrower = jest.fn(() => {
1542
+ const thrower = vi.fn(() => {
1543
1543
  throw new Error('bad filter')
1544
1544
  })
1545
- const after = jest.fn((r: any) => ({ ...r, body: `${r.body}!` }))
1545
+ const after = vi.fn((r: any) => ({ ...r, body: `${r.body}!` }))
1546
1546
  const logs = new PostHogLogs(
1547
1547
  mockInstance,
1548
1548
  resolveForTest({ beforeSend: [thrower, after] }),
@@ -1562,8 +1562,8 @@ describe('PostHogLogs', () => {
1562
1562
  })
1563
1563
 
1564
1564
  describe('rate limiting', () => {
1565
- beforeEach(() => jest.useFakeTimers({ now: 0 }))
1566
- afterEach(() => jest.useRealTimers())
1565
+ beforeEach(() => vi.useFakeTimers({ now: 0 }))
1566
+ afterEach(() => vi.useRealTimers())
1567
1567
 
1568
1568
  // Tabular form for the simple in-window cap cases. Bespoke ones
1569
1569
  // (warn-once, window-roll reset, clock-jump backward, beforeSend
@@ -1632,7 +1632,7 @@ describe('PostHogLogs', () => {
1632
1632
  expect(readQueue(mockInstance)).toHaveLength(1)
1633
1633
  expect(logger.warn).toHaveBeenCalledTimes(1)
1634
1634
 
1635
- jest.setSystemTime(1001)
1635
+ vi.setSystemTime(1001)
1636
1636
  logs.captureLog({ body: 'window-2-kept' })
1637
1637
  logs.captureLog({ body: 'window-2-dropped' })
1638
1638
  expect(readQueue(mockInstance)).toHaveLength(2)
@@ -1648,7 +1648,7 @@ describe('PostHogLogs', () => {
1648
1648
  immediateOnReady
1649
1649
  )
1650
1650
  // Seed the window at t=5000, fill the budget.
1651
- jest.setSystemTime(5000)
1651
+ vi.setSystemTime(5000)
1652
1652
  logs.captureLog({ body: 'a' })
1653
1653
  logs.captureLog({ body: 'b' })
1654
1654
  logs.captureLog({ body: 'dropped-pre-jump' })
@@ -1658,7 +1658,7 @@ describe('PostHogLogs', () => {
1658
1658
  // Without the `elapsed < 0` guard, the rate cap would stay "stuck"
1659
1659
  // until `now` exceeds the old window-start again — potentially
1660
1660
  // dropping every log for the duration of the backward jump.
1661
- jest.setSystemTime(5000 - 60 * 60 * 1000)
1661
+ vi.setSystemTime(5000 - 60 * 60 * 1000)
1662
1662
  logs.captureLog({ body: 'accepted-post-jump' })
1663
1663
 
1664
1664
  expect(readQueue(mockInstance)).toHaveLength(3)
@@ -1669,7 +1669,7 @@ describe('PostHogLogs', () => {
1669
1669
  // beforeSend drops the first record; rate cap is 1 per window. The
1670
1670
  // SECOND capture should still succeed — if beforeSend consumed the
1671
1671
  // budget, it'd be dropped.
1672
- const beforeSend = jest
1672
+ const beforeSend = vi
1673
1673
  .fn()
1674
1674
  .mockReturnValueOnce(null)
1675
1675
  .mockImplementation((r: any) => r)
@@ -1693,7 +1693,7 @@ describe('PostHogLogs', () => {
1693
1693
  let resolveSend: (v: any) => void = () => {}
1694
1694
  let captureDuringSend: (() => void) | null = null
1695
1695
 
1696
- mockInstance._sendLogsBatch = jest.fn(
1696
+ mockInstance._sendLogsBatch = vi.fn(
1697
1697
  () =>
1698
1698
  new Promise((r) => {
1699
1699
  if (captureDuringSend) {
@@ -1747,7 +1747,7 @@ describe('PostHogLogs', () => {
1747
1747
  const sendGate = new Promise((r) => {
1748
1748
  resolveSend = r
1749
1749
  })
1750
- mockInstance._sendLogsBatch = jest.fn(() => sendGate)
1750
+ mockInstance._sendLogsBatch = vi.fn(() => sendGate)
1751
1751
 
1752
1752
  const logs = new PostHogLogs(
1753
1753
  mockInstance,
@@ -1781,11 +1781,11 @@ describe('PostHogLogs', () => {
1781
1781
  // batch's advance — under-dropping and re-sending an already-sent record.
1782
1782
  const entry = (body: string): any => ({ record: { body: { stringValue: body } } })
1783
1783
  mockInstance._store[PostHogPersistedProperty.LogsQueue] = [entry('a'), entry('b'), entry('c'), entry('d')]
1784
- mockInstance._sendLogsBatch = jest.fn(() => Promise.resolve({ kind: 'ok' }))
1784
+ mockInstance._sendLogsBatch = vi.fn(() => Promise.resolve({ kind: 'ok' }))
1785
1785
 
1786
1786
  let persistCalls = 0
1787
+ // oxlint-disable-next-line prefer-const
1787
1788
  let logs: PostHogLogs
1788
- // eslint-disable-next-line prefer-const
1789
1789
  logs = new PostHogLogs(
1790
1790
  mockInstance,
1791
1791
  resolveForTest({ maxBufferSize: 4, maxQueueSize: 4, maxBatchRecordsPerPost: 2 }),