@zuplo/cli 7.6.8 → 7.6.10

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 (390) hide show
  1. package/node_modules/@inquirer/checkbox/package.json +3 -3
  2. package/node_modules/@inquirer/confirm/dist/index.js +1 -1
  3. package/node_modules/@inquirer/confirm/package.json +3 -3
  4. package/node_modules/@inquirer/core/dist/lib/create-prompt.js +66 -47
  5. package/node_modules/@inquirer/core/package.json +2 -2
  6. package/node_modules/@inquirer/editor/package.json +3 -3
  7. package/node_modules/@inquirer/expand/package.json +3 -3
  8. package/node_modules/@inquirer/input/package.json +3 -3
  9. package/node_modules/@inquirer/number/package.json +3 -3
  10. package/node_modules/@inquirer/password/package.json +3 -3
  11. package/node_modules/@inquirer/rawlist/package.json +3 -3
  12. package/node_modules/@inquirer/search/package.json +3 -3
  13. package/node_modules/@inquirer/select/package.json +3 -3
  14. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/index.d.ts +1 -2
  15. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +12 -25
  16. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +18 -32
  17. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +12 -25
  18. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +24 -50
  19. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +15 -30
  20. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +29 -52
  21. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwk/embedded.d.ts +5 -8
  22. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwk/thumbprint.d.ts +7 -9
  23. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwks/local.d.ts +10 -13
  24. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwks/remote.d.ts +29 -41
  25. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/compact/sign.d.ts +8 -13
  26. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/compact/verify.d.ts +14 -26
  27. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/flattened/sign.d.ts +10 -19
  28. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/flattened/verify.d.ts +14 -26
  29. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/general/sign.d.ts +19 -33
  30. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jws/general/verify.d.ts +17 -32
  31. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/decrypt.d.ts +20 -27
  32. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/encrypt.d.ts +30 -35
  33. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/sign.d.ts +8 -13
  34. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/unsecured.d.ts +10 -19
  35. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/jwt/verify.d.ts +19 -22
  36. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/key/export.d.ts +10 -10
  37. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/key/generate_key_pair.d.ts +15 -22
  38. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/key/generate_secret.d.ts +12 -19
  39. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/key/import.d.ts +25 -31
  40. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/types.d.ts +184 -319
  41. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/util/base64url.d.ts +7 -7
  42. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/util/decode_jwt.d.ts +5 -7
  43. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/util/decode_protected_header.d.ts +6 -5
  44. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/types/util/errors.d.ts +50 -88
  45. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/index.js +70 -32
  46. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +6 -8
  47. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +25 -48
  48. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +14 -14
  49. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +34 -64
  50. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/general/decrypt.js +38 -49
  51. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwe/general/encrypt.js +100 -172
  52. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwk/embedded.js +29 -32
  53. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwk/thumbprint.js +51 -70
  54. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwks/local.js +53 -64
  55. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwks/remote.js +88 -136
  56. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/compact/sign.js +19 -21
  57. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/compact/verify.js +7 -8
  58. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/flattened/sign.js +22 -31
  59. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/flattened/verify.js +11 -24
  60. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/general/sign.js +55 -73
  61. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jws/general/verify.js +43 -69
  62. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/decrypt.js +12 -20
  63. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/encrypt.js +43 -70
  64. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/sign.js +17 -16
  65. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/unsecured.js +31 -40
  66. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/jwt/verify.js +12 -14
  67. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/key/export.js +32 -41
  68. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/key/generate_key_pair.js +32 -49
  69. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/key/generate_secret.js +35 -40
  70. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/key/import.js +48 -56
  71. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/asn1.js +128 -169
  72. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/buffer_utils.js +72 -41
  73. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/content_encryption.js +75 -119
  74. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/deflate.js +35 -47
  75. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwe_algorithms.js +102 -93
  76. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +178 -234
  77. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwe_encrypt.js +71 -138
  78. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jws_algorithms.js +62 -61
  79. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jws_sign.js +43 -82
  80. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jws_verify.js +78 -131
  81. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +123 -209
  82. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key.js +147 -139
  83. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key_algorithm.js +13 -8
  84. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key_descriptor.js +8 -6
  85. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key_management.js +169 -235
  86. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/validate.js +122 -0
  87. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/util/base64url.js +14 -37
  88. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/util/decode_jwt.js +32 -31
  89. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/util/decode_protected_header.js +18 -23
  90. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/util/errors.js +94 -84
  91. package/node_modules/@modelcontextprotocol/client/node_modules/jose/package.json +17 -81
  92. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/index.d.ts +1 -2
  93. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +12 -25
  94. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +18 -32
  95. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +12 -25
  96. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +24 -50
  97. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +15 -30
  98. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +29 -52
  99. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwk/embedded.d.ts +5 -8
  100. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwk/thumbprint.d.ts +7 -9
  101. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwks/local.d.ts +10 -13
  102. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwks/remote.d.ts +29 -41
  103. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/compact/sign.d.ts +8 -13
  104. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/compact/verify.d.ts +14 -26
  105. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/flattened/sign.d.ts +10 -19
  106. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/flattened/verify.d.ts +14 -26
  107. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/general/sign.d.ts +19 -33
  108. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jws/general/verify.d.ts +17 -32
  109. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/decrypt.d.ts +20 -27
  110. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/encrypt.d.ts +30 -35
  111. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/sign.d.ts +8 -13
  112. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/unsecured.d.ts +10 -19
  113. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/jwt/verify.d.ts +19 -22
  114. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/key/export.d.ts +10 -10
  115. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/key/generate_key_pair.d.ts +15 -22
  116. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/key/generate_secret.d.ts +12 -19
  117. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/key/import.d.ts +25 -31
  118. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/types.d.ts +184 -319
  119. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/util/base64url.d.ts +7 -7
  120. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/util/decode_jwt.d.ts +5 -7
  121. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/util/decode_protected_header.d.ts +6 -5
  122. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/types/util/errors.d.ts +50 -88
  123. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/index.js +70 -32
  124. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +6 -8
  125. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +25 -48
  126. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +14 -14
  127. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +34 -64
  128. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/general/decrypt.js +38 -49
  129. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwe/general/encrypt.js +100 -172
  130. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwk/embedded.js +29 -32
  131. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwk/thumbprint.js +51 -70
  132. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwks/local.js +53 -64
  133. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwks/remote.js +88 -136
  134. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/compact/sign.js +19 -21
  135. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/compact/verify.js +7 -8
  136. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/flattened/sign.js +22 -31
  137. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/flattened/verify.js +11 -24
  138. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/general/sign.js +55 -73
  139. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jws/general/verify.js +43 -69
  140. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/decrypt.js +12 -20
  141. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/encrypt.js +43 -70
  142. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/sign.js +17 -16
  143. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/unsecured.js +31 -40
  144. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/jwt/verify.js +12 -14
  145. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/key/export.js +32 -41
  146. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/key/generate_key_pair.js +32 -49
  147. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/key/generate_secret.js +35 -40
  148. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/key/import.js +48 -56
  149. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/asn1.js +128 -169
  150. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/buffer_utils.js +72 -41
  151. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/content_encryption.js +75 -119
  152. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/deflate.js +35 -47
  153. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwe_algorithms.js +102 -93
  154. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +178 -234
  155. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwe_encrypt.js +71 -138
  156. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jws_algorithms.js +62 -61
  157. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jws_sign.js +43 -82
  158. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jws_verify.js +78 -131
  159. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +123 -209
  160. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key.js +147 -139
  161. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key_algorithm.js +13 -8
  162. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key_descriptor.js +8 -6
  163. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key_management.js +169 -235
  164. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/validate.js +122 -0
  165. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/util/base64url.js +14 -37
  166. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/util/decode_jwt.js +32 -31
  167. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/util/decode_protected_header.js +18 -23
  168. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/util/errors.js +94 -84
  169. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/package.json +17 -81
  170. package/node_modules/@posthog/core/dist/cookie.js +17 -13
  171. package/node_modules/@posthog/core/dist/error-tracking/chunk-ids.js +15 -11
  172. package/node_modules/@posthog/core/dist/error-tracking/coercers/dom-exception-coercer.js +12 -8
  173. package/node_modules/@posthog/core/dist/error-tracking/coercers/error-coercer.js +12 -8
  174. package/node_modules/@posthog/core/dist/error-tracking/coercers/error-event-coercer.js +12 -9
  175. package/node_modules/@posthog/core/dist/error-tracking/coercers/error-event-coercer.mjs +0 -1
  176. package/node_modules/@posthog/core/dist/error-tracking/coercers/event-coercer.js +12 -8
  177. package/node_modules/@posthog/core/dist/error-tracking/coercers/index.js +51 -63
  178. package/node_modules/@posthog/core/dist/error-tracking/coercers/object-coercer.js +12 -8
  179. package/node_modules/@posthog/core/dist/error-tracking/coercers/primitive-coercer.js +12 -8
  180. package/node_modules/@posthog/core/dist/error-tracking/coercers/promise-rejection-event.js +12 -8
  181. package/node_modules/@posthog/core/dist/error-tracking/coercers/string-coercer.js +15 -11
  182. package/node_modules/@posthog/core/dist/error-tracking/coercers/utils.js +16 -12
  183. package/node_modules/@posthog/core/dist/error-tracking/error-properties-builder.js +12 -8
  184. package/node_modules/@posthog/core/dist/error-tracking/exception-steps.js +18 -14
  185. package/node_modules/@posthog/core/dist/error-tracking/exception-steps.mjs +2 -2
  186. package/node_modules/@posthog/core/dist/error-tracking/index.js +41 -49
  187. package/node_modules/@posthog/core/dist/error-tracking/parsers/base.d.ts.map +1 -1
  188. package/node_modules/@posthog/core/dist/error-tracking/parsers/base.js +13 -9
  189. package/node_modules/@posthog/core/dist/error-tracking/parsers/base.mjs +1 -1
  190. package/node_modules/@posthog/core/dist/error-tracking/parsers/chrome.js +12 -8
  191. package/node_modules/@posthog/core/dist/error-tracking/parsers/gecko.js +12 -8
  192. package/node_modules/@posthog/core/dist/error-tracking/parsers/index.js +17 -13
  193. package/node_modules/@posthog/core/dist/error-tracking/parsers/index.mjs +4 -4
  194. package/node_modules/@posthog/core/dist/error-tracking/parsers/node.js +12 -8
  195. package/node_modules/@posthog/core/dist/error-tracking/parsers/opera.js +14 -10
  196. package/node_modules/@posthog/core/dist/error-tracking/parsers/safari.js +12 -8
  197. package/node_modules/@posthog/core/dist/error-tracking/parsers/winjs.js +12 -8
  198. package/node_modules/@posthog/core/dist/error-tracking/release.js +15 -11
  199. package/node_modules/@posthog/core/dist/error-tracking/types.js +15 -11
  200. package/node_modules/@posthog/core/dist/error-tracking/utils.js +15 -11
  201. package/node_modules/@posthog/core/dist/eventemitter.js +15 -11
  202. package/node_modules/@posthog/core/dist/featureFlagLocalEvaluation.js +18 -14
  203. package/node_modules/@posthog/core/dist/featureFlagLocalEvaluation.mjs +1 -1
  204. package/node_modules/@posthog/core/dist/featureFlagUtils.js +30 -25
  205. package/node_modules/@posthog/core/dist/featureFlagUtils.mjs +2 -2
  206. package/node_modules/@posthog/core/dist/gzip.js +16 -12
  207. package/node_modules/@posthog/core/dist/index.js +302 -310
  208. package/node_modules/@posthog/core/dist/index.mjs +12 -12
  209. package/node_modules/@posthog/core/dist/logs/index.js +13 -9
  210. package/node_modules/@posthog/core/dist/logs/index.mjs +1 -1
  211. package/node_modules/@posthog/core/dist/logs/logs-utils.js +16 -12
  212. package/node_modules/@posthog/core/dist/logs/types.js +2 -2
  213. package/node_modules/@posthog/core/dist/logs/types.mjs +1 -0
  214. package/node_modules/@posthog/core/dist/metrics/config.js +15 -11
  215. package/node_modules/@posthog/core/dist/metrics/index.js +15 -11
  216. package/node_modules/@posthog/core/dist/metrics/index.mjs +2 -2
  217. package/node_modules/@posthog/core/dist/metrics/metrics-utils.js +14 -10
  218. package/node_modules/@posthog/core/dist/metrics/types.js +2 -2
  219. package/node_modules/@posthog/core/dist/metrics/types.mjs +1 -0
  220. package/node_modules/@posthog/core/dist/posthog-core-stateless.js +16 -12
  221. package/node_modules/@posthog/core/dist/posthog-core-stateless.mjs +1 -1
  222. package/node_modules/@posthog/core/dist/posthog-core.d.ts +14 -0
  223. package/node_modules/@posthog/core/dist/posthog-core.d.ts.map +1 -1
  224. package/node_modules/@posthog/core/dist/posthog-core.js +12 -8
  225. package/node_modules/@posthog/core/dist/surveys/activation.js +14 -10
  226. package/node_modules/@posthog/core/dist/surveys/events.js +14 -10
  227. package/node_modules/@posthog/core/dist/surveys/index.js +30 -26
  228. package/node_modules/@posthog/core/dist/surveys/index.mjs +6 -7
  229. package/node_modules/@posthog/core/dist/surveys/keys.js +16 -12
  230. package/node_modules/@posthog/core/dist/surveys/property-matching.js +19 -14
  231. package/node_modules/@posthog/core/dist/surveys/translations.js +16 -12
  232. package/node_modules/@posthog/core/dist/surveys/validation.js +13 -9
  233. package/node_modules/@posthog/core/dist/testing/PostHogCoreTestClient.d.ts +3 -3
  234. package/node_modules/@posthog/core/dist/testing/PostHogCoreTestClient.d.ts.map +1 -1
  235. package/node_modules/@posthog/core/dist/testing/PostHogCoreTestClient.js +15 -11
  236. package/node_modules/@posthog/core/dist/testing/PostHogCoreTestClient.mjs +3 -3
  237. package/node_modules/@posthog/core/dist/testing/index.js +21 -21
  238. package/node_modules/@posthog/core/dist/testing/test-utils.d.ts.map +1 -1
  239. package/node_modules/@posthog/core/dist/testing/test-utils.js +19 -18
  240. package/node_modules/@posthog/core/dist/testing/test-utils.mjs +7 -10
  241. package/node_modules/@posthog/core/dist/tracing-headers.js +12 -8
  242. package/node_modules/@posthog/core/dist/types.d.ts +1 -0
  243. package/node_modules/@posthog/core/dist/types.d.ts.map +1 -1
  244. package/node_modules/@posthog/core/dist/types.js +31 -26
  245. package/node_modules/@posthog/core/dist/types.mjs +1 -1
  246. package/node_modules/@posthog/core/dist/utils/bot-detection.js +16 -12
  247. package/node_modules/@posthog/core/dist/utils/browser-utils.js +12 -8
  248. package/node_modules/@posthog/core/dist/utils/bucketed-rate-limiter.js +14 -10
  249. package/node_modules/@posthog/core/dist/utils/index.d.ts +1 -0
  250. package/node_modules/@posthog/core/dist/utils/index.d.ts.map +1 -1
  251. package/node_modules/@posthog/core/dist/utils/index.js +205 -192
  252. package/node_modules/@posthog/core/dist/utils/index.mjs +4 -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/utils/webview-app-utils.d.ts +12 -0
  267. package/node_modules/@posthog/core/dist/utils/webview-app-utils.d.ts.map +1 -0
  268. package/node_modules/@posthog/core/dist/utils/webview-app-utils.js +132 -0
  269. package/node_modules/@posthog/core/dist/utils/webview-app-utils.mjs +94 -0
  270. package/node_modules/@posthog/core/dist/vendor/uuidv7.js +22 -17
  271. package/node_modules/@posthog/core/dist/vendor/uuidv7.mjs +1 -1
  272. package/node_modules/@posthog/core/package.json +8 -8
  273. package/node_modules/@posthog/core/src/error-tracking/coercers/promise-rejection-event.spec.ts +4 -4
  274. package/node_modules/@posthog/core/src/error-tracking/error-properties-builder.parse.spec.ts +1 -1
  275. package/node_modules/@posthog/core/src/error-tracking/parsers/base.spec.ts +21 -2
  276. package/node_modules/@posthog/core/src/error-tracking/parsers/base.ts +6 -2
  277. package/node_modules/@posthog/core/src/featureFlagLocalEvaluation.ts +1 -1
  278. package/node_modules/@posthog/core/src/featureFlagUtils.ts +4 -4
  279. package/node_modules/@posthog/core/src/logs/index.spec.ts +89 -89
  280. package/node_modules/@posthog/core/src/metrics/index.spec.ts +24 -24
  281. package/node_modules/@posthog/core/src/posthog-core.ts +14 -1
  282. package/node_modules/@posthog/core/src/surveys/activation.spec.ts +1 -1
  283. package/node_modules/@posthog/core/src/surveys/events.spec.ts +1 -1
  284. package/node_modules/@posthog/core/src/surveys/keys.spec.ts +1 -1
  285. package/node_modules/@posthog/core/src/surveys/translations.spec.ts +8 -8
  286. package/node_modules/@posthog/core/src/testing/PostHogCoreTestClient.ts +6 -6
  287. package/node_modules/@posthog/core/src/testing/test-utils.ts +7 -12
  288. package/node_modules/@posthog/core/src/types.ts +1 -0
  289. package/node_modules/@posthog/core/src/utils/bucketed-rate-limiter.spec.ts +13 -13
  290. package/node_modules/@posthog/core/src/utils/index.ts +1 -0
  291. package/node_modules/@posthog/core/src/utils/json-utils.spec.ts +5 -5
  292. package/node_modules/@posthog/core/src/utils/number-utils.spec.ts +20 -0
  293. package/node_modules/@posthog/core/src/utils/number-utils.ts +3 -1
  294. package/node_modules/@posthog/core/src/utils/otlp-any-value.spec.ts +4 -4
  295. package/node_modules/@posthog/core/src/utils/promise-queue.spec.ts +3 -3
  296. package/node_modules/@posthog/core/src/utils/type-utils.ts +4 -4
  297. package/node_modules/@posthog/core/src/utils/webview-app-utils.spec.ts +118 -0
  298. package/node_modules/@posthog/core/src/utils/webview-app-utils.ts +49 -0
  299. package/node_modules/@posthog/types/dist/capture-log.js +2 -2
  300. package/node_modules/@posthog/types/dist/capture-log.mjs +1 -0
  301. package/node_modules/@posthog/types/dist/capture-metric.js +15 -11
  302. package/node_modules/@posthog/types/dist/capture.js +2 -2
  303. package/node_modules/@posthog/types/dist/capture.mjs +1 -0
  304. package/node_modules/@posthog/types/dist/common.js +2 -2
  305. package/node_modules/@posthog/types/dist/common.mjs +1 -0
  306. package/node_modules/@posthog/types/dist/feature-flags.d.ts +1 -1
  307. package/node_modules/@posthog/types/dist/feature-flags.d.ts.map +1 -1
  308. package/node_modules/@posthog/types/dist/feature-flags.js +2 -2
  309. package/node_modules/@posthog/types/dist/feature-flags.mjs +1 -0
  310. package/node_modules/@posthog/types/dist/index.js +12 -8
  311. package/node_modules/@posthog/types/dist/index.mjs +1 -2
  312. package/node_modules/@posthog/types/dist/posthog-config.d.ts +15 -1
  313. package/node_modules/@posthog/types/dist/posthog-config.d.ts.map +1 -1
  314. package/node_modules/@posthog/types/dist/posthog-config.js +2 -2
  315. package/node_modules/@posthog/types/dist/posthog-config.mjs +1 -0
  316. package/node_modules/@posthog/types/dist/posthog.d.ts +2 -2
  317. package/node_modules/@posthog/types/dist/posthog.d.ts.map +1 -1
  318. package/node_modules/@posthog/types/dist/posthog.js +2 -2
  319. package/node_modules/@posthog/types/dist/posthog.mjs +1 -0
  320. package/node_modules/@posthog/types/dist/request.js +2 -2
  321. package/node_modules/@posthog/types/dist/request.mjs +1 -0
  322. package/node_modules/@posthog/types/dist/segment.js +2 -2
  323. package/node_modules/@posthog/types/dist/segment.mjs +1 -0
  324. package/node_modules/@posthog/types/dist/session-recording.js +2 -2
  325. package/node_modules/@posthog/types/dist/session-recording.mjs +1 -0
  326. package/node_modules/@posthog/types/dist/survey.js +2 -2
  327. package/node_modules/@posthog/types/dist/survey.mjs +1 -0
  328. package/node_modules/@posthog/types/dist/toolbar.js +2 -2
  329. package/node_modules/@posthog/types/dist/toolbar.mjs +1 -0
  330. package/node_modules/@posthog/types/dist/tree-shakeable.js +2 -2
  331. package/node_modules/@posthog/types/dist/tree-shakeable.mjs +1 -0
  332. package/node_modules/@posthog/types/package.json +4 -6
  333. package/node_modules/@posthog/types/src/feature-flags.ts +1 -1
  334. package/node_modules/@posthog/types/src/posthog-config.ts +16 -1
  335. package/node_modules/@posthog/types/src/posthog.ts +2 -2
  336. package/node_modules/@posthog/types/src/tree-shakeable.ts +1 -1
  337. package/node_modules/@zuplo/core/package.json +1 -1
  338. package/node_modules/@zuplo/graphql/package.json +1 -1
  339. package/node_modules/@zuplo/openapi-tools/package.json +1 -1
  340. package/node_modules/@zuplo/otel/package.json +1 -1
  341. package/node_modules/@zuplo/runtime/out/esm/{chunk-ZZCZZHOD.js → chunk-R4PTES5B.js} +104 -104
  342. package/node_modules/@zuplo/runtime/out/esm/chunk-R4PTES5B.js.map +1 -0
  343. package/node_modules/@zuplo/runtime/out/esm/index.js +1 -1
  344. package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js +1 -1
  345. package/node_modules/@zuplo/runtime/out/types/index.d.ts +59 -9
  346. package/node_modules/@zuplo/runtime/package.json +1 -1
  347. package/node_modules/hono/dist/cjs/client/client.js +4 -4
  348. package/node_modules/hono/dist/cjs/hono-base.js +7 -6
  349. package/node_modules/hono/dist/cjs/jsx/base.js +18 -1
  350. package/node_modules/hono/dist/cjs/jsx/components.js +25 -26
  351. package/node_modules/hono/dist/cjs/jsx/context.js +5 -5
  352. package/node_modules/hono/dist/cjs/jsx/dom/server.js +5 -1
  353. package/node_modules/hono/dist/cjs/jsx/intrinsic-element/components.js +2 -2
  354. package/node_modules/hono/dist/cjs/jsx/streaming.js +4 -5
  355. package/node_modules/hono/dist/client/client.js +4 -4
  356. package/node_modules/hono/dist/hono-base.js +7 -6
  357. package/node_modules/hono/dist/jsx/base.js +15 -1
  358. package/node_modules/hono/dist/jsx/components.js +26 -27
  359. package/node_modules/hono/dist/jsx/context.js +6 -6
  360. package/node_modules/hono/dist/jsx/dom/server.js +5 -1
  361. package/node_modules/hono/dist/jsx/intrinsic-element/components.js +3 -3
  362. package/node_modules/hono/dist/jsx/streaming.js +5 -6
  363. package/node_modules/hono/dist/types/context.d.ts +2 -2
  364. package/node_modules/hono/dist/types/jsx/base.d.ts +3 -0
  365. package/node_modules/hono/package.json +2 -2
  366. package/package.json +11 -11
  367. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/base64.js +0 -22
  368. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/crypto_key.js +0 -28
  369. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/helpers.js +0 -42
  370. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/invalid_key_input.js +0 -26
  371. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/is_key_like.js +0 -17
  372. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwk_metadata.js +0 -20
  373. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/jwk_to_key.js +0 -17
  374. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/key_options.js +0 -6
  375. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/options.js +0 -74
  376. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/signing.js +0 -26
  377. package/node_modules/@modelcontextprotocol/client/node_modules/jose/dist/webapi/lib/type_checks.js +0 -33
  378. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/base64.js +0 -22
  379. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/crypto_key.js +0 -28
  380. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/helpers.js +0 -42
  381. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/invalid_key_input.js +0 -26
  382. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/is_key_like.js +0 -17
  383. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwk_metadata.js +0 -20
  384. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/jwk_to_key.js +0 -17
  385. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/key_options.js +0 -6
  386. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/options.js +0 -74
  387. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/signing.js +0 -26
  388. package/node_modules/@modelcontextprotocol/sdk/node_modules/jose/dist/webapi/lib/type_checks.js +0 -33
  389. package/node_modules/@zuplo/runtime/out/esm/chunk-ZZCZZHOD.js.map +0 -1
  390. /package/node_modules/@zuplo/runtime/out/esm/{chunk-ZZCZZHOD.js.LEGAL.txt → chunk-R4PTES5B.js.LEGAL.txt} +0 -0
@@ -1302,7 +1302,14 @@ export declare type AiRequestBody =
1302
1302
  }
1303
1303
  | {
1304
1304
  format: "anthropic-messages";
1305
- body: AnthropicMessagesRequest;
1305
+ /**
1306
+ * `/v1/messages` bodies carry a required `max_tokens`;
1307
+ * `/v1/messages/count_tokens` bodies never do, and both classify as
1308
+ * `anthropic-messages` because they are the same schema dialect. The union
1309
+ * keeps a policy from reading `max_tokens` as if it were always present —
1310
+ * narrow on it (or on `getFormat`'s endpoint) before relying on it.
1311
+ */
1312
+ body: AnthropicMessagesRequest | AnthropicCountTokensRequest;
1306
1313
  };
1307
1314
 
1308
1315
  /**
@@ -1749,6 +1756,19 @@ declare interface AndRule {
1749
1756
  and: [NestedRule, ...NestedRule[]];
1750
1757
  }
1751
1758
 
1759
+ /**
1760
+ * A request to Anthropic's token-counting operation
1761
+ * (`/v1/messages/count_tokens`).
1762
+ *
1763
+ * The request uses the Messages body shape but does not require `max_tokens`.
1764
+ * The index signature preserves evolving Anthropic fields verbatim.
1765
+ */
1766
+ declare interface AnthropicCountTokensRequest {
1767
+ model: string;
1768
+ messages: AnthropicMessage[];
1769
+ [key: string]: unknown;
1770
+ }
1771
+
1752
1772
  declare interface AnthropicMessage {
1753
1773
  role: "user" | "assistant";
1754
1774
  content:
@@ -2439,7 +2459,7 @@ export declare interface Auth0JwtInboundPolicyOptions {
2439
2459
  */
2440
2460
  allowUnauthenticatedRequests?: boolean;
2441
2461
  /**
2442
- * Flag that determines whether OAuth protected resource metadata is enabled.
2462
+ * Enables OAuth 2.0 Protected Resource Metadata discovery (RFC 9728). When `true`, requests without a bearer token receive a 401 whose `WWW-Authenticate` header points `resource_metadata` at the `/.well-known/oauth-protected-resource` document for the request path and, when the `OAuthProtectedResourcePlugin` declares `scopesSupported`, lists those scopes in `scope`. Requires the `OAuthProtectedResourcePlugin` in `zuplo.runtime.ts` or a user-defined route at that path.
2443
2463
  */
2444
2464
  oAuthResourceMetadataEnabled?: boolean;
2445
2465
  }
@@ -3849,7 +3869,7 @@ export declare interface ClerkJwtInboundPolicyOptions {
3849
3869
  */
3850
3870
  allowUnauthenticatedRequests?: boolean;
3851
3871
  /**
3852
- * Flag that determines whether OAuth protected resource metadata is enabled.
3872
+ * Enables OAuth 2.0 Protected Resource Metadata discovery (RFC 9728). When `true`, requests without a bearer token receive a 401 whose `WWW-Authenticate` header points `resource_metadata` at the `/.well-known/oauth-protected-resource` document for the request path and, when the `OAuthProtectedResourcePlugin` declares `scopesSupported`, lists those scopes in `scope`. Requires the `OAuthProtectedResourcePlugin` in `zuplo.runtime.ts` or a user-defined route at that path.
3853
3873
  */
3854
3874
  oAuthResourceMetadataEnabled?: boolean;
3855
3875
  }
@@ -3934,7 +3954,7 @@ export declare interface CognitoJwtInboundPolicyOptions {
3934
3954
  */
3935
3955
  allowUnauthenticatedRequests?: boolean;
3936
3956
  /**
3937
- * Flag that determines whether OAuth protected resource metadata is enabled.
3957
+ * Enables OAuth 2.0 Protected Resource Metadata discovery (RFC 9728). When `true`, requests without a bearer token receive a 401 whose `WWW-Authenticate` header points `resource_metadata` at the `/.well-known/oauth-protected-resource` document for the request path and, when the `OAuthProtectedResourcePlugin` declares `scopesSupported`, lists those scopes in `scope`. Requires the `OAuthProtectedResourcePlugin` in `zuplo.runtime.ts` or a user-defined route at that path.
3938
3958
  */
3939
3959
  oAuthResourceMetadataEnabled?: boolean;
3940
3960
  }
@@ -5462,7 +5482,7 @@ export declare interface FirebaseJwtInboundPolicyOptions {
5462
5482
  */
5463
5483
  allowUnauthenticatedRequests?: boolean;
5464
5484
  /**
5465
- * Flag that determines whether OAuth protected resource metadata is enabled.
5485
+ * Enables OAuth 2.0 Protected Resource Metadata discovery (RFC 9728). When `true`, requests without a bearer token receive a 401 whose `WWW-Authenticate` header points `resource_metadata` at the `/.well-known/oauth-protected-resource` document for the request path and, when the `OAuthProtectedResourcePlugin` declares `scopesSupported`, lists those scopes in `scope`. Requires the `OAuthProtectedResourcePlugin` in `zuplo.runtime.ts` or a user-defined route at that path.
5466
5486
  */
5467
5487
  oAuthResourceMetadataEnabled?: boolean;
5468
5488
  }
@@ -10981,7 +11001,14 @@ declare type OAuthClientCredentialsLocation = "body" | "header";
10981
11001
  */
10982
11002
  export declare class OAuthProtectedResourcePlugin extends OAuthProtectedResourceBasePlugin {
10983
11003
  private options;
11004
+ private readonly scopes;
10984
11005
  constructor(options: OAuthProtectedResourcePluginOptions);
11006
+ /**
11007
+ * The scope values configured through `scopesSupported`, or `undefined` when
11008
+ * the option was not set. OAuth policies read this to populate the `scope`
11009
+ * parameter of their `WWW-Authenticate` challenge.
11010
+ */
11011
+ get scopesSupported(): readonly string[] | undefined;
10985
11012
  protected getMetadataOptions(
10986
11013
  _request: ZuploRequest,
10987
11014
  _context: ZuploContext
@@ -11005,6 +11032,29 @@ export declare interface OAuthProtectedResourcePluginOptions {
11005
11032
  * This field is recommended by RFC 9728.
11006
11033
  */
11007
11034
  resourceName?: string;
11035
+ /**
11036
+ * Scope values that clients should request when obtaining an access token for
11037
+ * this protected resource. Emitted as `scopes_supported` in the metadata
11038
+ * document (RFC 9728) and, when an OAuth policy on the route has
11039
+ * `oAuthResourceMetadataEnabled` set, as the `scope` parameter of the
11040
+ * `WWW-Authenticate` challenge on 401 responses. MCP clients use these values
11041
+ * to build their authorization request instead of asking for every scope the
11042
+ * authorization server advertises.
11043
+ *
11044
+ * Each entry must be a single OAuth scope token (RFC 6749 §3.3): printable
11045
+ * ASCII with no spaces, double quotes, or backslashes. The list must not be
11046
+ * empty; omit the option to advertise no scopes.
11047
+ *
11048
+ * @example
11049
+ * ```ts
11050
+ * new OAuthProtectedResourcePlugin({
11051
+ * authorizationServers: ["https://acme.okta.com/oauth2/aus1a2b3c"],
11052
+ * resourceName: "Acme MCP",
11053
+ * scopesSupported: ["mcp:access", "openid", "offline_access"],
11054
+ * });
11055
+ * ```
11056
+ */
11057
+ scopesSupported?: string[];
11008
11058
  }
11009
11059
 
11010
11060
  /**
@@ -11091,7 +11141,7 @@ export declare interface OktaJwtInboundPolicyOptions {
11091
11141
  */
11092
11142
  allowUnauthenticatedRequests?: boolean;
11093
11143
  /**
11094
- * Flag that determines whether OAuth protected resource metadata is enabled.
11144
+ * Enables OAuth 2.0 Protected Resource Metadata discovery (RFC 9728). When `true`, requests without a bearer token receive a 401 whose `WWW-Authenticate` header points `resource_metadata` at the `/.well-known/oauth-protected-resource` document for the request path and, when the `OAuthProtectedResourcePlugin` declares `scopesSupported`, lists those scopes in `scope`. Requires the `OAuthProtectedResourcePlugin` in `zuplo.runtime.ts` or a user-defined route at that path.
11095
11145
  */
11096
11146
  oAuthResourceMetadataEnabled?: boolean;
11097
11147
  }
@@ -11897,7 +11947,7 @@ export declare interface OpenIdJwtInboundPolicyOptions {
11897
11947
  [k: string]: string;
11898
11948
  };
11899
11949
  /**
11900
- * Flag that determines whether OAuth protected resource metadata is enabled.
11950
+ * Enables OAuth 2.0 Protected Resource Metadata discovery (RFC 9728). When `true`, requests without a bearer token receive a 401 whose `WWW-Authenticate` header points `resource_metadata` at the `/.well-known/oauth-protected-resource` document for the request path and, when the `OAuthProtectedResourcePlugin` declares `scopesSupported`, lists those scopes in `scope`. Requires the `OAuthProtectedResourcePlugin` in `zuplo.runtime.ts` or a user-defined route at that path.
11901
11951
  */
11902
11952
  oAuthResourceMetadataEnabled?: boolean;
11903
11953
  }
@@ -12482,7 +12532,7 @@ export declare interface PropelAuthJwtInboundPolicyOptions {
12482
12532
  */
12483
12533
  allowUnauthenticatedRequests?: boolean;
12484
12534
  /**
12485
- * Flag that determines whether OAuth protected resource metadata is enabled.
12535
+ * Enables OAuth 2.0 Protected Resource Metadata discovery (RFC 9728). When `true`, requests without a bearer token receive a 401 whose `WWW-Authenticate` header points `resource_metadata` at the `/.well-known/oauth-protected-resource` document for the request path and, when the `OAuthProtectedResourcePlugin` declares `scopesSupported`, lists those scopes in `scope`. Requires the `OAuthProtectedResourcePlugin` in `zuplo.runtime.ts` or a user-defined route at that path.
12486
12536
  */
12487
12537
  oAuthResourceMetadataEnabled?: boolean;
12488
12538
  }
@@ -14442,7 +14492,7 @@ export declare interface SupabaseJwtInboundPolicyOptions {
14442
14492
  */
14443
14493
  allowUnauthenticatedRequests?: boolean;
14444
14494
  /**
14445
- * Flag that determines whether OAuth protected resource metadata is enabled.
14495
+ * Enables OAuth 2.0 Protected Resource Metadata discovery (RFC 9728). When `true`, requests without a bearer token receive a 401 whose `WWW-Authenticate` header points `resource_metadata` at the `/.well-known/oauth-protected-resource` document for the request path and, when the `OAuthProtectedResourcePlugin` declares `scopesSupported`, lists those scopes in `scope`. Requires the `OAuthProtectedResourcePlugin` in `zuplo.runtime.ts` or a user-defined route at that path.
14446
14496
  */
14447
14497
  oAuthResourceMetadataEnabled?: boolean;
14448
14498
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@zuplo/runtime",
3
3
  "type": "module",
4
- "version": "7.6.8",
4
+ "version": "7.6.10",
5
5
  "repository": "https://github.com/zuplo/zuplo",
6
6
  "author": "Zuplo, Inc.",
7
7
  "exports": {
@@ -157,24 +157,24 @@ const hc = (baseUrl, options) => createProxy(function proxyCallback(opts) {
157
157
  const path = parts.join("/");
158
158
  const url = (0, import_utils.mergePath)(baseUrl, path);
159
159
  if (method === "url" || method === "path") {
160
- let result = url;
160
+ let result = (0, import_utils.removeIndexString)(url);
161
161
  if (opts.args[0]) {
162
162
  if (opts.args[0].param) {
163
- result = (0, import_utils.replaceUrlParam)(url, opts.args[0].param);
163
+ result = (0, import_utils.replaceUrlParam)(result, opts.args[0].param);
164
164
  }
165
165
  if (opts.args[0].query) {
166
166
  result = appendQueryParams(result, buildSearchParamsOption(opts.args[0].query));
167
167
  }
168
168
  }
169
- result = (0, import_utils.removeIndexString)(result);
170
169
  if (method === "url") {
171
170
  return new URL(result);
172
171
  }
173
172
  return result.slice(baseUrl.replace(/\/+$/, "").length).replace(/^\/?/, "/");
174
173
  }
175
174
  if (method === "ws") {
175
+ const normalizedUrl = (0, import_utils.removeIndexString)(url);
176
176
  const webSocketUrl = (0, import_utils.replaceUrlProtocol)(
177
- opts.args[0]?.param ? (0, import_utils.replaceUrlParam)(url, opts.args[0].param) : url,
177
+ opts.args[0]?.param ? (0, import_utils.replaceUrlParam)(normalizedUrl, opts.args[0].param) : normalizedUrl,
178
178
  "ws"
179
179
  );
180
180
  const targetUrl = new URL(webSocketUrl);
@@ -61,13 +61,14 @@ class Hono {
61
61
  const allMethods = [...import_router.METHODS, import_router.METHOD_NAME_ALL_LOWERCASE];
62
62
  allMethods.forEach((method) => {
63
63
  this[method] = (args1, ...args) => {
64
+ const methodName = method.toUpperCase();
64
65
  if (typeof args1 === "string") {
65
66
  this.#path = args1;
66
67
  } else {
67
- this.#addRoute(method, this.#path, args1);
68
+ this.#addRoute(methodName, this.#path, args1);
68
69
  }
69
70
  args.forEach((handler) => {
70
- this.#addRoute(method, this.#path, handler);
71
+ this.#addRoute(methodName, this.#path, handler);
71
72
  });
72
73
  return this;
73
74
  };
@@ -76,9 +77,10 @@ class Hono {
76
77
  for (const p of [path].flat()) {
77
78
  this.#path = p;
78
79
  for (const m of [method].flat()) {
79
- handlers.map((handler) => {
80
- this.#addRoute(m.toUpperCase(), this.#path, handler);
81
- });
80
+ const methodName = m.toUpperCase();
81
+ for (const handler of handlers) {
82
+ this.#addRoute(methodName, this.#path, handler);
83
+ }
82
84
  }
83
85
  }
84
86
  return this;
@@ -279,7 +281,6 @@ class Hono {
279
281
  return this;
280
282
  }
281
283
  #addRoute(method, path, handler, baseRoutePath) {
282
- method = method.toUpperCase();
283
284
  path = (0, import_url.mergePath)(this._basePath, path);
284
285
  const r = {
285
286
  basePath: baseRoutePath !== void 0 ? (0, import_url.mergePath)(this._basePath, baseRoutePath) : this._basePath,
@@ -33,11 +33,14 @@ __export(base_exports, {
33
33
  booleanAttributes: () => booleanAttributes,
34
34
  cloneElement: () => cloneElement,
35
35
  getNameSpaceContext: () => getNameSpaceContext,
36
+ isUntrustedObject: () => isUntrustedObject,
36
37
  isValidElement: () => isValidElement,
37
38
  jsx: () => jsx,
38
39
  jsxFn: () => jsxFn,
39
40
  memo: () => memo,
40
41
  reactAPICompatVersion: () => reactAPICompatVersion,
42
+ renderChildren: () => renderChildren,
43
+ renderUntrustedObject: () => renderUntrustedObject,
41
44
  shallowEqual: () => shallowEqual
42
45
  });
43
46
  module.exports = __toCommonJS(base_exports);
@@ -101,7 +104,7 @@ const booleanAttributes = [
101
104
  "selected"
102
105
  ];
103
106
  const resolveFunctionComponentResult = (result, suspendedContext) => result.then((resolved) => {
104
- if (!Array.isArray(resolved) && !(resolved instanceof JSXNode)) {
107
+ if (typeof resolved !== "string" && !Array.isArray(resolved) && !(resolved instanceof JSXNode)) {
105
108
  return resolved;
106
109
  }
107
110
  const children = Array.isArray(resolved) ? resolved : [resolved];
@@ -139,6 +142,17 @@ const childrenToStringToBuffer = (children, buffer) => {
139
142
  }
140
143
  }
141
144
  };
145
+ const renderChildren = (children) => (0, import_context.runWithRenderContext)(() => {
146
+ const buffer = [""];
147
+ childrenToStringToBuffer(children, buffer);
148
+ return buffer.length === 1 ? (0, import_html.raw)(buffer[0], buffer.callbacks) : (0, import_html2.stringBufferToString)(buffer, buffer.callbacks);
149
+ });
150
+ const isUntrustedObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value) && !(value instanceof JSXNode) && !(value instanceof Promise) && !value.isEscaped && typeof value.toString === "function";
151
+ const renderUntrustedObject = (value) => {
152
+ const stringified = value.toString();
153
+ const escape = (result) => renderChildren([String(result)]);
154
+ return stringified instanceof Promise ? stringified.then(escape) : escape(stringified);
155
+ };
142
156
  class JSXNode {
143
157
  tag;
144
158
  props;
@@ -369,10 +383,13 @@ const reactAPICompatVersion = "19.0.0-hono-jsx";
369
383
  booleanAttributes,
370
384
  cloneElement,
371
385
  getNameSpaceContext,
386
+ isUntrustedObject,
372
387
  isValidElement,
373
388
  jsx,
374
389
  jsxFn,
375
390
  memo,
376
391
  reactAPICompatVersion,
392
+ renderChildren,
393
+ renderUntrustedObject,
377
394
  shallowEqual
378
395
  });
@@ -31,7 +31,7 @@ var import_streaming = require("./streaming");
31
31
  let errorBoundaryCounter = 0;
32
32
  const childrenToString = async (children) => {
33
33
  try {
34
- return children.flat().map((c) => c == null || typeof c === "boolean" ? "" : c.toString());
34
+ return children.flat().map(resolveChildEarly);
35
35
  } catch (e) {
36
36
  if (e instanceof Promise) {
37
37
  const resume = (0, import_context.captureRenderContext)();
@@ -42,18 +42,16 @@ const childrenToString = async (children) => {
42
42
  }
43
43
  }
44
44
  };
45
- const resolveChildEarly = (c) => {
46
- if (c == null || typeof c === "boolean") {
45
+ const resolveChildEarly = (child) => {
46
+ if (child == null || typeof child === "boolean") {
47
47
  return "";
48
- } else if (typeof c === "string") {
49
- return c;
48
+ } else if (typeof child === "string" || Array.isArray(child)) {
49
+ return (0, import_base.renderChildren)([child]);
50
+ } else if ((0, import_base.isUntrustedObject)(child)) {
51
+ return (0, import_base.renderUntrustedObject)(child);
50
52
  } else {
51
- const str = c.toString();
52
- if (!(str instanceof Promise)) {
53
- return (0, import_html.raw)(str);
54
- } else {
55
- return str;
56
- }
53
+ const str = child.toString();
54
+ return str instanceof Promise ? str : (0, import_html.raw)(str);
57
55
  }
58
56
  };
59
57
  const ErrorBoundary = async ({ children, fallback, fallbackRender, onError }) => {
@@ -69,26 +67,27 @@ const ErrorBoundary = async ({ children, fallback, fallbackRender, onError }) =>
69
67
  let fallbackStrPromise;
70
68
  const resolveFallbackStr = () => fallbackStrPromise ||= (async () => {
71
69
  const awaitedFallback = await fallback;
72
- if (typeof awaitedFallback === "string") {
73
- return awaitedFallback;
74
- } else {
75
- const fallbackResult = await getResume()(() => awaitedFallback?.toString());
76
- if (typeof fallbackResult === "string") {
77
- return (0, import_html.raw)(
78
- fallbackResult,
79
- fallbackResult.callbacks || awaitedFallback?.callbacks
80
- );
81
- }
70
+ if (awaitedFallback === null || awaitedFallback === void 0) {
71
+ return;
72
+ }
73
+ if (typeof awaitedFallback === "string" || Array.isArray(awaitedFallback)) {
74
+ return getResume()(() => (0, import_base.renderChildren)([awaitedFallback]));
75
+ }
76
+ if ((0, import_base.isUntrustedObject)(awaitedFallback)) {
77
+ return getResume()(() => (0, import_base.renderUntrustedObject)(awaitedFallback));
82
78
  }
79
+ const fallbackResult = await getResume()(() => awaitedFallback.toString());
80
+ return (0, import_html.raw)(
81
+ fallbackResult,
82
+ fallbackResult.callbacks || awaitedFallback.callbacks
83
+ );
83
84
  })();
84
85
  const renderFallback = async (error) => {
85
86
  const fallbackStr = await resolveFallbackStr();
86
87
  return getResume()(async () => {
87
88
  onError?.(error);
88
89
  const fallbackRes = fallbackStr !== void 0 ? fallbackStr : fallbackRender && (0, import_base.jsx)(import_base.Fragment, {}, fallbackRender(error)) || "";
89
- const fallbackResString = await (0, import_base.Fragment)({
90
- children: fallbackRes
91
- }).toString();
90
+ const fallbackResString = await (0, import_base.Fragment)({ children: fallbackRes }).toString();
92
91
  return (0, import_html.raw)(
93
92
  fallbackResString,
94
93
  fallbackResString.callbacks || fallbackRes.callbacks
@@ -121,7 +120,7 @@ const ErrorBoundary = async ({ children, fallback, fallbackRender, onError }) =>
121
120
  const fallbackResString = await renderFallback(error2);
122
121
  const fallbackCallbacks = fallbackResString.callbacks;
123
122
  if (buffer) {
124
- buffer[0] = buffer[0].replace(replaceRe, fallbackResString);
123
+ buffer[0] = buffer[0].replace(replaceRe, () => fallbackResString);
125
124
  return fallbackCallbacks?.length ? (0, import_html.raw)("", fallbackCallbacks) : "";
126
125
  }
127
126
  return (0, import_html.raw)(
@@ -160,7 +159,7 @@ d.parentElement.insertBefore(c.content,d.nextSibling)
160
159
  </script>`;
161
160
  if (htmlArray.every((html2) => !html2.callbacks?.length)) {
162
161
  if (buffer) {
163
- buffer[0] = buffer[0].replace(replaceRe, content);
162
+ buffer[0] = buffer[0].replace(replaceRe, () => content);
164
163
  }
165
164
  return html;
166
165
  }
@@ -155,18 +155,18 @@ const createContext = (defaultValue) => {
155
155
  const context = ((props) => {
156
156
  const contextValues = getContextValuesIn(getCurrentStore(), context);
157
157
  contextValues.push(props.value);
158
- let string;
158
+ let rendered;
159
159
  try {
160
- string = props.children ? (Array.isArray(props.children) ? new import_base.JSXFragmentNode("", {}, props.children) : props.children).toString() : "";
160
+ rendered = typeof props.children === "string" ? (0, import_base.renderChildren)([props.children]) : (0, import_base.isUntrustedObject)(props.children) ? (0, import_base.renderUntrustedObject)(props.children) : props.children ? (Array.isArray(props.children) ? new import_base.JSXFragmentNode("", {}, props.children) : props.children).toString() : (0, import_html.raw)("");
161
161
  } catch (e) {
162
162
  contextValues.pop();
163
163
  throw e;
164
164
  }
165
- if (string instanceof Promise) {
166
- return string.finally(() => contextValues.pop()).then((resString) => (0, import_html.raw)(resString, resString.callbacks));
165
+ if (rendered instanceof Promise) {
166
+ return rendered.finally(() => contextValues.pop()).then((resString) => (0, import_html.raw)(resString, resString.callbacks));
167
167
  } else {
168
168
  contextValues.pop();
169
- return (0, import_html.raw)(string);
169
+ return (0, import_html.raw)(rendered);
170
170
  }
171
171
  });
172
172
  context.values = values;
@@ -33,13 +33,16 @@ __export(server_exports, {
33
33
  version: () => import__.default
34
34
  });
35
35
  module.exports = __toCommonJS(server_exports);
36
+ var import_base = require("../base");
36
37
  var import_streaming = require("../streaming");
37
38
  var import__ = __toESM(require("./"), 1);
39
+ const prepareRoot = (element) => typeof element === "string" || Array.isArray(element) ? (0, import_base.renderChildren)([element]) : element;
38
40
  const renderToString = (element, options = {}) => {
39
41
  if (Object.keys(options).length > 0) {
40
42
  console.warn("options are not supported yet");
41
43
  }
42
- const res = element?.toString() ?? "";
44
+ element = prepareRoot(element);
45
+ const res = element instanceof Promise ? element : element?.toString() ?? "";
43
46
  if (typeof res !== "string") {
44
47
  throw new Error("Async component is not supported in renderToString");
45
48
  }
@@ -49,6 +52,7 @@ const renderToReadableStream = async (element, options = {}) => {
49
52
  if (Object.keys(options).some((key) => key !== "onError")) {
50
53
  console.warn("options are not supported yet, except onError");
51
54
  }
55
+ element = prepareRoot(element);
52
56
  if (!element || typeof element !== "object") {
53
57
  element = element?.toString() ?? "";
54
58
  }
@@ -85,10 +85,10 @@ const insertIntoHead = (tagName, tag, props, precedence) => ({ buffer, context }
85
85
  insertTags.forEach((tag2) => {
86
86
  buffer[0] = buffer[0].replaceAll(tag2, "");
87
87
  });
88
- buffer[0] = buffer[0].replace(/(?=<\/head>)/, insertTags.join(""));
88
+ buffer[0] = buffer[0].replace(/(?=<\/head>)/, () => insertTags.join(""));
89
89
  }
90
90
  };
91
- const returnWithoutSpecialBehavior = (tag, children, props) => (0, import_html.raw)(new import_base.JSXNode(tag, props, (0, import_children.toArray)(children ?? [])).toString());
91
+ const returnWithoutSpecialBehavior = (tag, children, props) => (0, import_base.renderChildren)([new import_base.JSXNode(tag, props, (0, import_children.toArray)(children ?? []))]);
92
92
  const documentMetadataTag = (tag, children, props, sort) => {
93
93
  if ("itemProp" in props) {
94
94
  return returnWithoutSpecialBehavior(tag, children, props);
@@ -32,6 +32,7 @@ var import_components2 = require("./dom/components");
32
32
  var import_render = require("./dom/render");
33
33
  const StreamingContext = (0, import_context.createContext)(null);
34
34
  let suspenseCounter = 0;
35
+ const serializeBoundaryChild = (child) => typeof child === "string" || Array.isArray(child) ? (0, import_base.renderChildren)([child]) : child == null || typeof child === "boolean" ? "" : (0, import_base.isUntrustedObject)(child) ? (0, import_base.renderUntrustedObject)(child) : child.toString();
35
36
  const Suspense = async ({
36
37
  children,
37
38
  fallback
@@ -48,9 +49,7 @@ const Suspense = async ({
48
49
  try {
49
50
  stackNode[import_constants.DOM_STASH][0] = 0;
50
51
  import_render.buildDataStack.push([[], stackNode]);
51
- resArray = children.map(
52
- (c) => c == null || typeof c === "boolean" ? "" : c.toString()
53
- );
52
+ resArray = children.map(serializeBoundaryChild);
54
53
  } catch (e) {
55
54
  if (e instanceof Promise) {
56
55
  const resume = (0, import_context.captureRenderContext)();
@@ -71,7 +70,7 @@ const Suspense = async ({
71
70
  }
72
71
  if (resArray.some((res) => res instanceof Promise)) {
73
72
  const index = suspenseCounter++;
74
- const fallbackStr = await fallback.toString();
73
+ const fallbackStr = await (typeof fallback === "string" || Array.isArray(fallback) ? (0, import_base.renderChildren)([fallback]) : (0, import_base.isUntrustedObject)(fallback) ? (0, import_base.renderUntrustedObject)(fallback) : fallback.toString());
75
74
  return (0, import_html.raw)(`<template id="H:${index}"></template>${fallbackStr}<!--/$-->`, [
76
75
  ...fallbackStr.callbacks || [],
77
76
  ({ phase, buffer, context }) => {
@@ -84,7 +83,7 @@ const Suspense = async ({
84
83
  if (buffer) {
85
84
  buffer[0] = buffer[0].replace(
86
85
  new RegExp(`<template id="H:${index}"></template>.*?<!--/\\$-->`),
87
- content
86
+ () => content
88
87
  );
89
88
  }
90
89
  let html = buffer ? "" : `<template data-hono-target="H:${index}">${content}</template><script${nonce ? ` nonce="${nonce}"` : ""}>
@@ -143,24 +143,24 @@ var hc = (baseUrl, options) => createProxy(function proxyCallback(opts) {
143
143
  const path = parts.join("/");
144
144
  const url = mergePath(baseUrl, path);
145
145
  if (method === "url" || method === "path") {
146
- let result = url;
146
+ let result = removeIndexString(url);
147
147
  if (opts.args[0]) {
148
148
  if (opts.args[0].param) {
149
- result = replaceUrlParam(url, opts.args[0].param);
149
+ result = replaceUrlParam(result, opts.args[0].param);
150
150
  }
151
151
  if (opts.args[0].query) {
152
152
  result = appendQueryParams(result, buildSearchParamsOption(opts.args[0].query));
153
153
  }
154
154
  }
155
- result = removeIndexString(result);
156
155
  if (method === "url") {
157
156
  return new URL(result);
158
157
  }
159
158
  return result.slice(baseUrl.replace(/\/+$/, "").length).replace(/^\/?/, "/");
160
159
  }
161
160
  if (method === "ws") {
161
+ const normalizedUrl = removeIndexString(url);
162
162
  const webSocketUrl = replaceUrlProtocol(
163
- opts.args[0]?.param ? replaceUrlParam(url, opts.args[0].param) : url,
163
+ opts.args[0]?.param ? replaceUrlParam(normalizedUrl, opts.args[0].param) : normalizedUrl,
164
164
  "ws"
165
165
  );
166
166
  const targetUrl = new URL(webSocketUrl);
@@ -40,13 +40,14 @@ var Hono = class _Hono {
40
40
  const allMethods = [...METHODS, METHOD_NAME_ALL_LOWERCASE];
41
41
  allMethods.forEach((method) => {
42
42
  this[method] = (args1, ...args) => {
43
+ const methodName = method.toUpperCase();
43
44
  if (typeof args1 === "string") {
44
45
  this.#path = args1;
45
46
  } else {
46
- this.#addRoute(method, this.#path, args1);
47
+ this.#addRoute(methodName, this.#path, args1);
47
48
  }
48
49
  args.forEach((handler) => {
49
- this.#addRoute(method, this.#path, handler);
50
+ this.#addRoute(methodName, this.#path, handler);
50
51
  });
51
52
  return this;
52
53
  };
@@ -55,9 +56,10 @@ var Hono = class _Hono {
55
56
  for (const p of [path].flat()) {
56
57
  this.#path = p;
57
58
  for (const m of [method].flat()) {
58
- handlers.map((handler) => {
59
- this.#addRoute(m.toUpperCase(), this.#path, handler);
60
- });
59
+ const methodName = m.toUpperCase();
60
+ for (const handler of handlers) {
61
+ this.#addRoute(methodName, this.#path, handler);
62
+ }
61
63
  }
62
64
  }
63
65
  return this;
@@ -258,7 +260,6 @@ var Hono = class _Hono {
258
260
  return this;
259
261
  }
260
262
  #addRoute(method, path, handler, baseRoutePath) {
261
- method = method.toUpperCase();
262
263
  path = mergePath(this._basePath, path);
263
264
  const r = {
264
265
  basePath: baseRoutePath !== void 0 ? mergePath(this._basePath, baseRoutePath) : this._basePath,
@@ -70,7 +70,7 @@ var booleanAttributes = [
70
70
  "selected"
71
71
  ];
72
72
  var resolveFunctionComponentResult = (result, suspendedContext) => result.then((resolved) => {
73
- if (!Array.isArray(resolved) && !(resolved instanceof JSXNode)) {
73
+ if (typeof resolved !== "string" && !Array.isArray(resolved) && !(resolved instanceof JSXNode)) {
74
74
  return resolved;
75
75
  }
76
76
  const children = Array.isArray(resolved) ? resolved : [resolved];
@@ -108,6 +108,17 @@ var childrenToStringToBuffer = (children, buffer) => {
108
108
  }
109
109
  }
110
110
  };
111
+ var renderChildren = (children) => runWithRenderContext(() => {
112
+ const buffer = [""];
113
+ childrenToStringToBuffer(children, buffer);
114
+ return buffer.length === 1 ? raw(buffer[0], buffer.callbacks) : stringBufferToString(buffer, buffer.callbacks);
115
+ });
116
+ var isUntrustedObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value) && !(value instanceof JSXNode) && !(value instanceof Promise) && !value.isEscaped && typeof value.toString === "function";
117
+ var renderUntrustedObject = (value) => {
118
+ const stringified = value.toString();
119
+ const escape = (result) => renderChildren([String(result)]);
120
+ return stringified instanceof Promise ? stringified.then(escape) : escape(stringified);
121
+ };
111
122
  var JSXNode = class {
112
123
  tag;
113
124
  props;
@@ -337,10 +348,13 @@ export {
337
348
  booleanAttributes,
338
349
  cloneElement,
339
350
  getNameSpaceContext,
351
+ isUntrustedObject,
340
352
  isValidElement,
341
353
  jsx,
342
354
  jsxFn,
343
355
  memo,
344
356
  reactAPICompatVersion,
357
+ renderChildren,
358
+ renderUntrustedObject,
345
359
  shallowEqual
346
360
  };