@openclaw/voice-call 2026.9.4 → 2026.9.6

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 (685) hide show
  1. package/assets/activity.svg +3 -0
  2. package/assets/icon.png +0 -0
  3. package/dist/{cli-BGdihqyA.js → .setup/cli-D6j7ppuN.mjs} +7 -7
  4. package/dist/{config-DQwvsxeV.js → .setup/config-72FnMWHb.mjs} +3 -3
  5. package/dist/{guarded-json-api-3Jy2k-eX.js → .setup/guarded-json-api-exU4Hutw.mjs} +17 -39
  6. package/dist/{mock-C57qj18W.js → .setup/mock-CcYEAUhV.mjs} +1 -1
  7. package/dist/{plivo-BsdFT1gS.js → .setup/plivo-BGJda1Uz.mjs} +2 -2
  8. package/dist/{realtime-handler-C7N4qzvf.js → .setup/realtime-handler-DlFmdSPn.mjs} +284 -135
  9. package/dist/{response-generator-DsdC88Xg.js → .setup/response-generator-hZyGIjO4.mjs} +3 -2
  10. package/dist/{runtime-entry-Ln4SWaYK.js → .setup/runtime-entry-dDRm6RgA.mjs} +457 -291
  11. package/dist/{store-path-M0GXxUfv.js → .setup/store-path-B1j1up4_.mjs} +91 -55
  12. package/dist/{telnyx-eCxGOUfA.js → .setup/telnyx-BV56PXr-.mjs} +1 -1
  13. package/dist/{twilio-DQKhnXXE.js → .setup/twilio-BMb-7cu-.mjs} +9 -23
  14. package/dist/doctor-contract-api.js +15 -33
  15. package/dist/index.js +3 -3
  16. package/dist/runtime-entry.js +1 -1
  17. package/node_modules/typebox/build/compile/validator.d.mts +1 -1
  18. package/node_modules/typebox/build/compile/validator.mjs +1 -1
  19. package/node_modules/typebox/build/format/idna/idn-hostname.mjs +7 -5
  20. package/node_modules/typebox/build/format/iri.mjs +5 -1
  21. package/node_modules/typebox/build/guard/emit.mjs +2 -4
  22. package/node_modules/typebox/build/guard/guard.mjs +6 -18
  23. package/node_modules/typebox/build/guard/string.mjs +16 -24
  24. package/node_modules/typebox/build/schema/build.mjs +2 -2
  25. package/node_modules/typebox/build/schema/check.mjs +1 -1
  26. package/node_modules/typebox/build/schema/compile.d.mts +3 -2
  27. package/node_modules/typebox/build/schema/compile.mjs +8 -8
  28. package/node_modules/typebox/build/schema/engine/_context.d.mts +6 -7
  29. package/node_modules/typebox/build/schema/engine/_context.mjs +23 -15
  30. package/node_modules/typebox/build/schema/engine/_functions.d.mts +2 -2
  31. package/node_modules/typebox/build/schema/engine/_functions.mjs +1 -1
  32. package/node_modules/typebox/build/schema/engine/_reducer.d.mts +3 -3
  33. package/node_modules/typebox/build/schema/engine/_refine.d.mts +5 -5
  34. package/node_modules/typebox/build/schema/engine/_refine.mjs +4 -7
  35. package/node_modules/typebox/build/schema/engine/_stack.d.mts +34 -16
  36. package/node_modules/typebox/build/schema/engine/_stack.mjs +148 -104
  37. package/node_modules/typebox/build/schema/engine/additionalItems.d.mts +4 -4
  38. package/node_modules/typebox/build/schema/engine/additionalProperties.d.mts +8 -8
  39. package/node_modules/typebox/build/schema/engine/additionalProperties.mjs +26 -18
  40. package/node_modules/typebox/build/schema/engine/allOf.d.mts +4 -4
  41. package/node_modules/typebox/build/schema/engine/allOf.mjs +3 -3
  42. package/node_modules/typebox/build/schema/engine/anyOf.d.mts +4 -4
  43. package/node_modules/typebox/build/schema/engine/anyOf.mjs +5 -10
  44. package/node_modules/typebox/build/schema/engine/boolean.d.mts +4 -4
  45. package/node_modules/typebox/build/schema/engine/boolean.mjs +2 -6
  46. package/node_modules/typebox/build/schema/engine/const.d.mts +4 -4
  47. package/node_modules/typebox/build/schema/engine/const.mjs +2 -6
  48. package/node_modules/typebox/build/schema/engine/contains.d.mts +4 -4
  49. package/node_modules/typebox/build/schema/engine/contains.mjs +2 -6
  50. package/node_modules/typebox/build/schema/engine/dependencies.d.mts +4 -4
  51. package/node_modules/typebox/build/schema/engine/dependencies.mjs +3 -6
  52. package/node_modules/typebox/build/schema/engine/dependentRequired.d.mts +4 -4
  53. package/node_modules/typebox/build/schema/engine/dependentRequired.mjs +2 -6
  54. package/node_modules/typebox/build/schema/engine/dependentSchemas.d.mts +4 -4
  55. package/node_modules/typebox/build/schema/engine/dynamicRef.d.mts +4 -4
  56. package/node_modules/typebox/build/schema/engine/dynamicRef.mjs +11 -7
  57. package/node_modules/typebox/build/schema/engine/enum.d.mts +4 -4
  58. package/node_modules/typebox/build/schema/engine/enum.mjs +2 -6
  59. package/node_modules/typebox/build/schema/engine/exclusiveMaximum.d.mts +4 -4
  60. package/node_modules/typebox/build/schema/engine/exclusiveMaximum.mjs +2 -6
  61. package/node_modules/typebox/build/schema/engine/exclusiveMinimum.d.mts +4 -4
  62. package/node_modules/typebox/build/schema/engine/exclusiveMinimum.mjs +2 -6
  63. package/node_modules/typebox/build/schema/engine/format.d.mts +4 -4
  64. package/node_modules/typebox/build/schema/engine/format.mjs +2 -6
  65. package/node_modules/typebox/build/schema/engine/if.d.mts +4 -4
  66. package/node_modules/typebox/build/schema/engine/if.mjs +7 -15
  67. package/node_modules/typebox/build/schema/engine/items.d.mts +4 -4
  68. package/node_modules/typebox/build/schema/engine/items.mjs +1 -1
  69. package/node_modules/typebox/build/schema/engine/maxContains.d.mts +4 -4
  70. package/node_modules/typebox/build/schema/engine/maxContains.mjs +2 -6
  71. package/node_modules/typebox/build/schema/engine/maxItems.d.mts +4 -4
  72. package/node_modules/typebox/build/schema/engine/maxItems.mjs +2 -6
  73. package/node_modules/typebox/build/schema/engine/maxLength.d.mts +4 -4
  74. package/node_modules/typebox/build/schema/engine/maxLength.mjs +2 -6
  75. package/node_modules/typebox/build/schema/engine/maxProperties.d.mts +4 -4
  76. package/node_modules/typebox/build/schema/engine/maxProperties.mjs +2 -6
  77. package/node_modules/typebox/build/schema/engine/maximum.d.mts +4 -4
  78. package/node_modules/typebox/build/schema/engine/maximum.mjs +2 -6
  79. package/node_modules/typebox/build/schema/engine/minContains.d.mts +4 -4
  80. package/node_modules/typebox/build/schema/engine/minContains.mjs +2 -6
  81. package/node_modules/typebox/build/schema/engine/minItems.d.mts +5 -5
  82. package/node_modules/typebox/build/schema/engine/minItems.mjs +2 -6
  83. package/node_modules/typebox/build/schema/engine/minLength.d.mts +4 -4
  84. package/node_modules/typebox/build/schema/engine/minLength.mjs +2 -6
  85. package/node_modules/typebox/build/schema/engine/minProperties.d.mts +4 -4
  86. package/node_modules/typebox/build/schema/engine/minProperties.mjs +2 -6
  87. package/node_modules/typebox/build/schema/engine/minimum.d.mts +4 -4
  88. package/node_modules/typebox/build/schema/engine/minimum.mjs +2 -6
  89. package/node_modules/typebox/build/schema/engine/multipleOf.d.mts +4 -4
  90. package/node_modules/typebox/build/schema/engine/multipleOf.mjs +2 -6
  91. package/node_modules/typebox/build/schema/engine/not.d.mts +4 -4
  92. package/node_modules/typebox/build/schema/engine/not.mjs +4 -8
  93. package/node_modules/typebox/build/schema/engine/oneOf.d.mts +4 -4
  94. package/node_modules/typebox/build/schema/engine/oneOf.mjs +6 -11
  95. package/node_modules/typebox/build/schema/engine/pattern.d.mts +4 -4
  96. package/node_modules/typebox/build/schema/engine/pattern.mjs +3 -7
  97. package/node_modules/typebox/build/schema/engine/patternProperties.d.mts +4 -4
  98. package/node_modules/typebox/build/schema/engine/patternProperties.mjs +1 -1
  99. package/node_modules/typebox/build/schema/engine/prefixItems.d.mts +4 -4
  100. package/node_modules/typebox/build/schema/engine/prefixItems.mjs +1 -1
  101. package/node_modules/typebox/build/schema/engine/properties.d.mts +4 -4
  102. package/node_modules/typebox/build/schema/engine/properties.mjs +1 -1
  103. package/node_modules/typebox/build/schema/engine/propertyNames.d.mts +4 -4
  104. package/node_modules/typebox/build/schema/engine/propertyNames.mjs +4 -10
  105. package/node_modules/typebox/build/schema/engine/recursiveRef.d.mts +4 -4
  106. package/node_modules/typebox/build/schema/engine/recursiveRef.mjs +11 -7
  107. package/node_modules/typebox/build/schema/engine/ref.d.mts +4 -4
  108. package/node_modules/typebox/build/schema/engine/ref.mjs +19 -15
  109. package/node_modules/typebox/build/schema/engine/required.d.mts +4 -4
  110. package/node_modules/typebox/build/schema/engine/required.mjs +2 -6
  111. package/node_modules/typebox/build/schema/engine/schema.d.mts +7 -7
  112. package/node_modules/typebox/build/schema/engine/schema.mjs +137 -133
  113. package/node_modules/typebox/build/schema/engine/type.d.mts +4 -4
  114. package/node_modules/typebox/build/schema/engine/type.mjs +2 -6
  115. package/node_modules/typebox/build/schema/engine/unevaluatedItems.d.mts +4 -4
  116. package/node_modules/typebox/build/schema/engine/unevaluatedItems.mjs +5 -9
  117. package/node_modules/typebox/build/schema/engine/unevaluatedProperties.d.mts +4 -4
  118. package/node_modules/typebox/build/schema/engine/unevaluatedProperties.mjs +5 -9
  119. package/node_modules/typebox/build/schema/engine/uniqueItems.d.mts +4 -4
  120. package/node_modules/typebox/build/schema/engine/uniqueItems.mjs +2 -6
  121. package/node_modules/typebox/build/schema/errors.d.mts +2 -2
  122. package/node_modules/typebox/build/schema/errors.mjs +8 -14
  123. package/node_modules/typebox/build/schema/intern/index.d.mts +1 -0
  124. package/node_modules/typebox/build/schema/intern/index.mjs +1 -0
  125. package/node_modules/typebox/build/schema/intern/intern.d.mts +11 -0
  126. package/node_modules/typebox/build/schema/intern/intern.mjs +293 -0
  127. package/node_modules/typebox/build/schema/meta/draft_2019_09.d.mts +2 -0
  128. package/node_modules/typebox/build/schema/meta/draft_2019_09.mjs +288 -0
  129. package/node_modules/typebox/build/schema/meta/draft_2020_12.d.mts +2 -0
  130. package/node_modules/typebox/build/schema/meta/draft_2020_12.mjs +300 -0
  131. package/node_modules/typebox/build/schema/meta/draft_3.d.mts +2 -0
  132. package/node_modules/typebox/build/schema/meta/draft_3.mjs +143 -0
  133. package/node_modules/typebox/build/schema/meta/draft_4.d.mts +2 -0
  134. package/node_modules/typebox/build/schema/meta/draft_4.mjs +149 -0
  135. package/node_modules/typebox/build/schema/meta/draft_6.d.mts +2 -0
  136. package/node_modules/typebox/build/schema/meta/draft_6.mjs +155 -0
  137. package/node_modules/typebox/build/schema/meta/draft_7.d.mts +2 -0
  138. package/node_modules/typebox/build/schema/meta/draft_7.mjs +172 -0
  139. package/node_modules/typebox/build/schema/meta/index.d.mts +2 -0
  140. package/node_modules/typebox/build/schema/meta/index.mjs +2 -0
  141. package/node_modules/typebox/build/schema/meta/meta.d.mts +9 -0
  142. package/node_modules/typebox/build/schema/meta/meta.mjs +15 -0
  143. package/node_modules/typebox/build/schema/meta/schema.d.mts +6 -0
  144. package/node_modules/typebox/build/schema/meta/schema.mjs +1 -0
  145. package/node_modules/typebox/build/schema/parse.d.mts +1 -0
  146. package/node_modules/typebox/build/schema/parse.mjs +10 -5
  147. package/node_modules/typebox/build/schema/resolve/resolve.d.mts +8 -3
  148. package/node_modules/typebox/build/schema/resolve/resolve.mjs +268 -139
  149. package/node_modules/typebox/build/schema/schema.d.mts +2 -0
  150. package/node_modules/typebox/build/schema/schema.mjs +2 -0
  151. package/node_modules/typebox/build/value/errors/errors.d.mts +2 -12
  152. package/node_modules/typebox/build/value/errors/errors.mjs +2 -7
  153. package/node_modules/typebox/package.json +1 -1
  154. package/node_modules/typebox/readme.md +59 -89
  155. package/node_modules/zod/README.md +29 -2
  156. package/node_modules/zod/compile.cjs +96 -0
  157. package/node_modules/zod/compile.d.cts +1 -0
  158. package/node_modules/zod/compile.d.ts +1 -0
  159. package/node_modules/zod/compile.js +52 -0
  160. package/node_modules/zod/index.cjs +21 -2
  161. package/node_modules/zod/index.d.cts +1 -2
  162. package/node_modules/zod/index.d.ts +1 -2
  163. package/node_modules/zod/index.js +5 -2
  164. package/node_modules/zod/locales/index.cjs +19 -0
  165. package/node_modules/zod/mini/index.cjs +19 -0
  166. package/node_modules/zod/package.json +20 -8
  167. package/node_modules/zod/src/compile.ts +56 -0
  168. package/node_modules/zod/src/index.ts +5 -2
  169. package/node_modules/zod/src/v3/ZodError.ts +22 -12
  170. package/node_modules/zod/src/v3/helpers/errorUtil.ts +1 -1
  171. package/node_modules/zod/src/v3/tests/error.test.ts +35 -0
  172. package/node_modules/zod/src/v3/tests/intersection.test.ts +18 -0
  173. package/node_modules/zod/src/v3/tests/language-server.test.ts +1 -2
  174. package/node_modules/zod/src/v3/tests/object.test.ts +3 -6
  175. package/node_modules/zod/src/v3/tests/readonly.test.ts +0 -80
  176. package/node_modules/zod/src/v3/tests/string.test.ts +6 -0
  177. package/node_modules/zod/src/v3/types.ts +5 -5
  178. package/node_modules/zod/src/v4/classic/checks.ts +1 -0
  179. package/node_modules/zod/src/v4/classic/compat.ts +26 -18
  180. package/node_modules/zod/src/v4/classic/deep-partial.ts +76 -0
  181. package/node_modules/zod/src/v4/classic/errors.ts +59 -44
  182. package/node_modules/zod/src/v4/classic/external.ts +14 -9
  183. package/node_modules/zod/src/v4/classic/from-json-schema.ts +363 -78
  184. package/node_modules/zod/src/v4/classic/in-out.ts +45 -0
  185. package/node_modules/zod/src/v4/classic/index.ts +2 -2
  186. package/node_modules/zod/src/v4/classic/iso.ts +2 -72
  187. package/node_modules/zod/src/v4/classic/parse.ts +10 -4
  188. package/node_modules/zod/src/v4/classic/schemas.ts +640 -375
  189. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +27 -0
  190. package/node_modules/zod/src/v4/classic/tests/array.test.ts +2 -2
  191. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +186 -0
  192. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +36 -1
  193. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +278 -0
  194. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +1 -2
  195. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +2 -1
  196. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +3 -3
  197. package/node_modules/zod/src/v4/classic/tests/credit-card.test.ts +76 -0
  198. package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +985 -0
  199. package/node_modules/zod/src/v4/classic/tests/date.test.ts +30 -0
  200. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +32 -18
  201. package/node_modules/zod/src/v4/classic/tests/deep-partial.test.ts +380 -0
  202. package/node_modules/zod/src/v4/classic/tests/default-locale.test.ts +32 -0
  203. package/node_modules/zod/src/v4/classic/tests/default.test.ts +46 -0
  204. package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +31 -7
  205. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +261 -13
  206. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +20 -0
  207. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +112 -2
  208. package/node_modules/zod/src/v4/classic/tests/error.test.ts +403 -6
  209. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +582 -10
  210. package/node_modules/zod/src/v4/classic/tests/function.test.ts +31 -0
  211. package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +2 -9
  212. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +1 -2
  213. package/node_modules/zod/src/v4/classic/tests/iban.test.ts +81 -0
  214. package/node_modules/zod/src/v4/classic/tests/in-out.test.ts +159 -0
  215. package/node_modules/zod/src/v4/classic/tests/index.test.ts +21 -2
  216. package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +319 -0
  217. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +67 -0
  218. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +136 -0
  219. package/node_modules/zod/src/v4/classic/tests/issue-schema.test.ts +215 -0
  220. package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +3 -10
  221. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +36 -1
  222. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +12 -1
  223. package/node_modules/zod/src/v4/classic/tests/map.test.ts +12 -0
  224. package/node_modules/zod/src/v4/classic/tests/number.test.ts +85 -9
  225. package/node_modules/zod/src/v4/classic/tests/object.test.ts +301 -12
  226. package/node_modules/zod/src/v4/classic/tests/optin-ladder.test.ts +235 -0
  227. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +49 -16
  228. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +51 -4
  229. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +70 -0
  230. package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +20 -2
  231. package/node_modules/zod/src/v4/classic/tests/properties.test.ts +141 -0
  232. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -68
  233. package/node_modules/zod/src/v4/classic/tests/record.test.ts +186 -18
  234. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +79 -3
  235. package/node_modules/zod/src/v4/classic/tests/redos.test.ts +68 -0
  236. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +60 -0
  237. package/node_modules/zod/src/v4/classic/tests/set.test.ts +9 -0
  238. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +19 -0
  239. package/node_modules/zod/src/v4/classic/tests/string.test.ts +222 -6
  240. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +18 -0
  241. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +44 -3
  242. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +1812 -204
  243. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +45 -30
  244. package/node_modules/zod/src/v4/classic/tests/union.test.ts +39 -2
  245. package/node_modules/zod/src/v4/classic/tests/validate.test.ts +645 -0
  246. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +2 -2
  247. package/node_modules/zod/src/v4/core/api.ts +87 -35
  248. package/node_modules/zod/src/v4/core/checks.ts +119 -146
  249. package/node_modules/zod/src/v4/core/compile.ts +2313 -0
  250. package/node_modules/zod/src/v4/core/core.ts +99 -22
  251. package/node_modules/zod/src/v4/core/doc.ts +17 -9
  252. package/node_modules/zod/src/v4/core/errors.ts +113 -25
  253. package/node_modules/zod/src/v4/core/index.ts +3 -0
  254. package/node_modules/zod/src/v4/core/json-schema-generator.ts +8 -3
  255. package/node_modules/zod/src/v4/core/json-schema-processors.ts +424 -156
  256. package/node_modules/zod/src/v4/core/json-schema.ts +2 -1
  257. package/node_modules/zod/src/v4/core/memoizer.ts +331 -0
  258. package/node_modules/zod/src/v4/core/parse.ts +164 -50
  259. package/node_modules/zod/src/v4/core/regexes.ts +42 -15
  260. package/node_modules/zod/src/v4/core/registries.ts +2 -2
  261. package/node_modules/zod/src/v4/core/schemas.ts +1000 -538
  262. package/node_modules/zod/src/v4/core/tests/cached.test.ts +54 -0
  263. package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +1004 -0
  264. package/node_modules/zod/src/v4/core/tests/compile-generative.test.ts +445 -0
  265. package/node_modules/zod/src/v4/core/tests/compile-global.test.ts +89 -0
  266. package/node_modules/zod/src/v4/core/tests/compile-off-by-default.test.ts +26 -0
  267. package/node_modules/zod/src/v4/core/tests/compile-stats.test.ts +34 -0
  268. package/node_modules/zod/src/v4/core/tests/compile.test.ts +2036 -0
  269. package/node_modules/zod/src/v4/core/tests/email-regex.test.ts +140 -0
  270. package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +1 -2
  271. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +1 -2
  272. package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +3 -3
  273. package/node_modules/zod/src/v4/core/tests/locales/parity.test.ts +42 -0
  274. package/node_modules/zod/src/v4/core/tests/locales/tg.test.ts +85 -0
  275. package/node_modules/zod/src/v4/core/tests/locales/tk.test.ts +69 -0
  276. package/node_modules/zod/src/v4/core/tests/polyfill-collision.test.ts +46 -0
  277. package/node_modules/zod/src/v4/core/tests/treeshake.test.ts +51 -0
  278. package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +133 -0
  279. package/node_modules/zod/src/v4/core/to-json-schema.ts +283 -48
  280. package/node_modules/zod/src/v4/core/util.ts +454 -157
  281. package/node_modules/zod/src/v4/core/versions.ts +2 -2
  282. package/node_modules/zod/src/v4/core/visit.ts +193 -0
  283. package/node_modules/zod/src/v4/index.ts +3 -3
  284. package/node_modules/zod/src/v4/locales/ar.ts +5 -0
  285. package/node_modules/zod/src/v4/locales/az.ts +5 -0
  286. package/node_modules/zod/src/v4/locales/be.ts +12 -0
  287. package/node_modules/zod/src/v4/locales/bg.ts +5 -0
  288. package/node_modules/zod/src/v4/locales/bn.ts +123 -0
  289. package/node_modules/zod/src/v4/locales/ca.ts +5 -0
  290. package/node_modules/zod/src/v4/locales/ckb.ts +140 -0
  291. package/node_modules/zod/src/v4/locales/cs.ts +5 -0
  292. package/node_modules/zod/src/v4/locales/da.ts +7 -2
  293. package/node_modules/zod/src/v4/locales/de.ts +5 -0
  294. package/node_modules/zod/src/v4/locales/el.ts +3 -0
  295. package/node_modules/zod/src/v4/locales/en.ts +17 -4
  296. package/node_modules/zod/src/v4/locales/eo.ts +5 -0
  297. package/node_modules/zod/src/v4/locales/es.ts +4 -0
  298. package/node_modules/zod/src/v4/locales/fa.ts +5 -0
  299. package/node_modules/zod/src/v4/locales/fi.ts +5 -0
  300. package/node_modules/zod/src/v4/locales/fr-CA.ts +5 -0
  301. package/node_modules/zod/src/v4/locales/fr.ts +21 -14
  302. package/node_modules/zod/src/v4/locales/gu.ts +123 -0
  303. package/node_modules/zod/src/v4/locales/he.ts +8 -1
  304. package/node_modules/zod/src/v4/locales/hi.ts +126 -0
  305. package/node_modules/zod/src/v4/locales/hr.ts +4 -0
  306. package/node_modules/zod/src/v4/locales/hu.ts +5 -0
  307. package/node_modules/zod/src/v4/locales/hy.ts +11 -0
  308. package/node_modules/zod/src/v4/locales/id.ts +5 -0
  309. package/node_modules/zod/src/v4/locales/index.ts +11 -0
  310. package/node_modules/zod/src/v4/locales/is.ts +5 -0
  311. package/node_modules/zod/src/v4/locales/it.ts +5 -0
  312. package/node_modules/zod/src/v4/locales/ja.ts +5 -0
  313. package/node_modules/zod/src/v4/locales/ka.ts +5 -0
  314. package/node_modules/zod/src/v4/locales/km.ts +5 -0
  315. package/node_modules/zod/src/v4/locales/kn.ts +126 -0
  316. package/node_modules/zod/src/v4/locales/ko.ts +5 -0
  317. package/node_modules/zod/src/v4/locales/lt.ts +4 -0
  318. package/node_modules/zod/src/v4/locales/mk.ts +5 -0
  319. package/node_modules/zod/src/v4/locales/ms.ts +5 -0
  320. package/node_modules/zod/src/v4/locales/ne.ts +128 -0
  321. package/node_modules/zod/src/v4/locales/nl.ts +5 -0
  322. package/node_modules/zod/src/v4/locales/nn.ts +121 -0
  323. package/node_modules/zod/src/v4/locales/no.ts +7 -2
  324. package/node_modules/zod/src/v4/locales/ota.ts +5 -0
  325. package/node_modules/zod/src/v4/locales/pl.ts +5 -0
  326. package/node_modules/zod/src/v4/locales/ps.ts +5 -0
  327. package/node_modules/zod/src/v4/locales/pt-BR.ts +161 -0
  328. package/node_modules/zod/src/v4/locales/pt.ts +101 -58
  329. package/node_modules/zod/src/v4/locales/ro.ts +3 -0
  330. package/node_modules/zod/src/v4/locales/ru.ts +12 -0
  331. package/node_modules/zod/src/v4/locales/sk.ts +123 -0
  332. package/node_modules/zod/src/v4/locales/sl.ts +5 -0
  333. package/node_modules/zod/src/v4/locales/sv.ts +7 -2
  334. package/node_modules/zod/src/v4/locales/ta.ts +5 -0
  335. package/node_modules/zod/src/v4/locales/tg.ts +135 -0
  336. package/node_modules/zod/src/v4/locales/th.ts +5 -0
  337. package/node_modules/zod/src/v4/locales/tk.ts +113 -0
  338. package/node_modules/zod/src/v4/locales/tr.ts +5 -0
  339. package/node_modules/zod/src/v4/locales/uk.ts +5 -0
  340. package/node_modules/zod/src/v4/locales/ur.ts +5 -0
  341. package/node_modules/zod/src/v4/locales/uz.ts +3 -0
  342. package/node_modules/zod/src/v4/locales/vi.ts +5 -0
  343. package/node_modules/zod/src/v4/locales/yo.ts +5 -0
  344. package/node_modules/zod/src/v4/locales/zh-CN.ts +5 -0
  345. package/node_modules/zod/src/v4/locales/zh-TW.ts +5 -0
  346. package/node_modules/zod/src/v4/mini/checks.ts +1 -0
  347. package/node_modules/zod/src/v4/mini/deep-partial.ts +73 -0
  348. package/node_modules/zod/src/v4/mini/external.ts +12 -1
  349. package/node_modules/zod/src/v4/mini/in-out.ts +45 -0
  350. package/node_modules/zod/src/v4/mini/parse.ts +2 -0
  351. package/node_modules/zod/src/v4/mini/schemas.ts +167 -63
  352. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +33 -0
  353. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +62 -1
  354. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +14 -0
  355. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +35 -1
  356. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +11 -17
  357. package/node_modules/zod/src/v4/mini/tests/cyclic-data.test.ts +84 -0
  358. package/node_modules/zod/src/v4/mini/tests/deep-partial.test.ts +54 -0
  359. package/node_modules/zod/src/v4/mini/tests/error.test.ts +23 -4
  360. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +9 -0
  361. package/node_modules/zod/src/v4/mini/tests/index.test.ts +158 -5
  362. package/node_modules/zod/src/v4/mini/tests/number.test.ts +14 -0
  363. package/node_modules/zod/src/v4/mini/tests/object.test.ts +65 -0
  364. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +16 -0
  365. package/node_modules/zod/src/v4/mini/tests/string.test.ts +44 -0
  366. package/node_modules/zod/v3/ZodError.cjs +41 -12
  367. package/node_modules/zod/v3/ZodError.d.cts +1 -1
  368. package/node_modules/zod/v3/ZodError.d.ts +1 -1
  369. package/node_modules/zod/v3/ZodError.js +22 -12
  370. package/node_modules/zod/v3/errors.cjs +19 -0
  371. package/node_modules/zod/v3/external.cjs +19 -0
  372. package/node_modules/zod/v3/helpers/enumUtil.cjs +19 -0
  373. package/node_modules/zod/v3/helpers/errorUtil.cjs +20 -1
  374. package/node_modules/zod/v3/helpers/errorUtil.js +1 -1
  375. package/node_modules/zod/v3/helpers/parseUtil.cjs +19 -0
  376. package/node_modules/zod/v3/helpers/partialUtil.cjs +19 -0
  377. package/node_modules/zod/v3/helpers/typeAliases.cjs +19 -0
  378. package/node_modules/zod/v3/helpers/util.cjs +19 -0
  379. package/node_modules/zod/v3/index.cjs +19 -0
  380. package/node_modules/zod/v3/standard-schema.cjs +19 -0
  381. package/node_modules/zod/v3/types.cjs +26 -5
  382. package/node_modules/zod/v3/types.js +7 -5
  383. package/node_modules/zod/v4/classic/checks.cjs +21 -1
  384. package/node_modules/zod/v4/classic/checks.d.cts +1 -1
  385. package/node_modules/zod/v4/classic/checks.d.ts +1 -1
  386. package/node_modules/zod/v4/classic/checks.js +1 -1
  387. package/node_modules/zod/v4/classic/coerce.cjs +19 -0
  388. package/node_modules/zod/v4/classic/compat.cjs +19 -0
  389. package/node_modules/zod/v4/classic/compat.d.cts +9 -11
  390. package/node_modules/zod/v4/classic/compat.d.ts +9 -11
  391. package/node_modules/zod/v4/classic/deep-partial.cjs +58 -0
  392. package/node_modules/zod/v4/classic/deep-partial.d.cts +14 -0
  393. package/node_modules/zod/v4/classic/deep-partial.d.ts +14 -0
  394. package/node_modules/zod/v4/classic/deep-partial.js +13 -0
  395. package/node_modules/zod/v4/classic/errors.cjs +62 -34
  396. package/node_modules/zod/v4/classic/errors.d.cts +3 -4
  397. package/node_modules/zod/v4/classic/errors.d.ts +3 -4
  398. package/node_modules/zod/v4/classic/errors.js +43 -34
  399. package/node_modules/zod/v4/classic/external.cjs +51 -27
  400. package/node_modules/zod/v4/classic/external.d.cts +5 -2
  401. package/node_modules/zod/v4/classic/external.d.ts +5 -2
  402. package/node_modules/zod/v4/classic/external.js +5 -8
  403. package/node_modules/zod/v4/classic/from-json-schema.cjs +376 -75
  404. package/node_modules/zod/v4/classic/from-json-schema.js +357 -75
  405. package/node_modules/zod/v4/classic/in-out.cjs +82 -0
  406. package/node_modules/zod/v4/classic/in-out.d.cts +8 -0
  407. package/node_modules/zod/v4/classic/in-out.d.ts +8 -0
  408. package/node_modules/zod/v4/classic/in-out.js +36 -0
  409. package/node_modules/zod/v4/classic/index.cjs +21 -2
  410. package/node_modules/zod/v4/classic/index.d.cts +1 -2
  411. package/node_modules/zod/v4/classic/index.d.ts +1 -2
  412. package/node_modules/zod/v4/classic/index.js +2 -2
  413. package/node_modules/zod/v4/classic/iso.cjs +30 -22
  414. package/node_modules/zod/v4/classic/iso.d.cts +2 -17
  415. package/node_modules/zod/v4/classic/iso.d.ts +2 -17
  416. package/node_modules/zod/v4/classic/iso.js +2 -17
  417. package/node_modules/zod/v4/classic/parse.cjs +23 -1
  418. package/node_modules/zod/v4/classic/parse.d.cts +17 -4
  419. package/node_modules/zod/v4/classic/parse.d.ts +17 -4
  420. package/node_modules/zod/v4/classic/parse.js +1 -0
  421. package/node_modules/zod/v4/classic/schemas.cjs +591 -426
  422. package/node_modules/zod/v4/classic/schemas.d.cts +68 -19
  423. package/node_modules/zod/v4/classic/schemas.d.ts +68 -19
  424. package/node_modules/zod/v4/classic/schemas.js +564 -424
  425. package/node_modules/zod/v4/core/api.cjs +66 -24
  426. package/node_modules/zod/v4/core/api.d.cts +22 -12
  427. package/node_modules/zod/v4/core/api.d.ts +22 -12
  428. package/node_modules/zod/v4/core/api.js +44 -24
  429. package/node_modules/zod/v4/core/checks.cjs +88 -128
  430. package/node_modules/zod/v4/core/checks.d.cts +29 -13
  431. package/node_modules/zod/v4/core/checks.d.ts +29 -13
  432. package/node_modules/zod/v4/core/checks.js +68 -127
  433. package/node_modules/zod/v4/core/compile.cjs +1908 -0
  434. package/node_modules/zod/v4/core/compile.d.cts +65 -0
  435. package/node_modules/zod/v4/core/compile.d.ts +65 -0
  436. package/node_modules/zod/v4/core/compile.js +1858 -0
  437. package/node_modules/zod/v4/core/core.cjs +101 -19
  438. package/node_modules/zod/v4/core/core.d.cts +16 -4
  439. package/node_modules/zod/v4/core/core.d.ts +16 -4
  440. package/node_modules/zod/v4/core/core.js +83 -20
  441. package/node_modules/zod/v4/core/doc.cjs +31 -9
  442. package/node_modules/zod/v4/core/doc.d.cts +3 -1
  443. package/node_modules/zod/v4/core/doc.d.ts +3 -1
  444. package/node_modules/zod/v4/core/doc.js +12 -9
  445. package/node_modules/zod/v4/core/errors.cjs +126 -25
  446. package/node_modules/zod/v4/core/errors.d.cts +4 -0
  447. package/node_modules/zod/v4/core/errors.d.ts +4 -0
  448. package/node_modules/zod/v4/core/errors.js +107 -25
  449. package/node_modules/zod/v4/core/index.cjs +24 -1
  450. package/node_modules/zod/v4/core/index.d.cts +3 -0
  451. package/node_modules/zod/v4/core/index.d.ts +3 -0
  452. package/node_modules/zod/v4/core/index.js +3 -0
  453. package/node_modules/zod/v4/core/json-schema-generator.cjs +24 -1
  454. package/node_modules/zod/v4/core/json-schema-generator.d.cts +2 -2
  455. package/node_modules/zod/v4/core/json-schema-generator.d.ts +2 -2
  456. package/node_modules/zod/v4/core/json-schema-generator.js +6 -2
  457. package/node_modules/zod/v4/core/json-schema-processors.cjs +441 -156
  458. package/node_modules/zod/v4/core/json-schema-processors.d.cts +16 -0
  459. package/node_modules/zod/v4/core/json-schema-processors.d.ts +16 -0
  460. package/node_modules/zod/v4/core/json-schema-processors.js +400 -158
  461. package/node_modules/zod/v4/core/json-schema.cjs +19 -0
  462. package/node_modules/zod/v4/core/json-schema.d.cts +2 -1
  463. package/node_modules/zod/v4/core/json-schema.d.ts +2 -1
  464. package/node_modules/zod/v4/core/memoizer.cjs +360 -0
  465. package/node_modules/zod/v4/core/memoizer.d.cts +15 -0
  466. package/node_modules/zod/v4/core/memoizer.d.ts +15 -0
  467. package/node_modules/zod/v4/core/memoizer.js +311 -0
  468. package/node_modules/zod/v4/core/parse.cjs +148 -46
  469. package/node_modules/zod/v4/core/parse.d.cts +14 -11
  470. package/node_modules/zod/v4/core/parse.d.ts +14 -11
  471. package/node_modules/zod/v4/core/parse.js +127 -45
  472. package/node_modules/zod/v4/core/regexes.cjs +54 -17
  473. package/node_modules/zod/v4/core/regexes.d.cts +5 -0
  474. package/node_modules/zod/v4/core/regexes.d.ts +5 -0
  475. package/node_modules/zod/v4/core/regexes.js +32 -15
  476. package/node_modules/zod/v4/core/registries.cjs +19 -0
  477. package/node_modules/zod/v4/core/registries.js +2 -2
  478. package/node_modules/zod/v4/core/schemas.cjs +785 -386
  479. package/node_modules/zod/v4/core/schemas.d.cts +123 -34
  480. package/node_modules/zod/v4/core/schemas.d.ts +123 -34
  481. package/node_modules/zod/v4/core/schemas.js +753 -386
  482. package/node_modules/zod/v4/core/standard-schema.cjs +19 -0
  483. package/node_modules/zod/v4/core/to-json-schema.cjs +269 -45
  484. package/node_modules/zod/v4/core/to-json-schema.d.cts +45 -5
  485. package/node_modules/zod/v4/core/to-json-schema.d.ts +45 -5
  486. package/node_modules/zod/v4/core/to-json-schema.js +247 -44
  487. package/node_modules/zod/v4/core/util.cjs +372 -157
  488. package/node_modules/zod/v4/core/util.d.cts +79 -1
  489. package/node_modules/zod/v4/core/util.d.ts +79 -1
  490. package/node_modules/zod/v4/core/util.js +341 -156
  491. package/node_modules/zod/v4/core/versions.cjs +21 -2
  492. package/node_modules/zod/v4/core/versions.d.cts +1 -1
  493. package/node_modules/zod/v4/core/versions.d.ts +1 -1
  494. package/node_modules/zod/v4/core/versions.js +2 -2
  495. package/node_modules/zod/v4/core/visit.cjs +214 -0
  496. package/node_modules/zod/v4/core/visit.d.cts +30 -0
  497. package/node_modules/zod/v4/core/visit.d.ts +30 -0
  498. package/node_modules/zod/v4/core/visit.js +169 -0
  499. package/node_modules/zod/v4/index.cjs +34 -5
  500. package/node_modules/zod/v4/index.d.cts +2 -2
  501. package/node_modules/zod/v4/index.d.ts +2 -2
  502. package/node_modules/zod/v4/index.js +3 -2
  503. package/node_modules/zod/v4/locales/ar.cjs +5 -0
  504. package/node_modules/zod/v4/locales/ar.js +5 -0
  505. package/node_modules/zod/v4/locales/az.cjs +5 -0
  506. package/node_modules/zod/v4/locales/az.js +5 -0
  507. package/node_modules/zod/v4/locales/be.cjs +12 -0
  508. package/node_modules/zod/v4/locales/be.js +12 -0
  509. package/node_modules/zod/v4/locales/bg.cjs +5 -0
  510. package/node_modules/zod/v4/locales/bg.js +5 -0
  511. package/node_modules/zod/v4/locales/bn.cjs +140 -0
  512. package/node_modules/zod/v4/locales/bn.d.cts +5 -0
  513. package/node_modules/zod/v4/locales/bn.d.ts +4 -0
  514. package/node_modules/zod/v4/locales/bn.js +113 -0
  515. package/node_modules/zod/v4/locales/ca.cjs +5 -0
  516. package/node_modules/zod/v4/locales/ca.js +5 -0
  517. package/node_modules/zod/v4/locales/ckb.cjs +160 -0
  518. package/node_modules/zod/v4/locales/ckb.d.cts +5 -0
  519. package/node_modules/zod/v4/locales/ckb.d.ts +4 -0
  520. package/node_modules/zod/v4/locales/ckb.js +133 -0
  521. package/node_modules/zod/v4/locales/cs.cjs +5 -0
  522. package/node_modules/zod/v4/locales/cs.js +5 -0
  523. package/node_modules/zod/v4/locales/da.cjs +7 -2
  524. package/node_modules/zod/v4/locales/da.js +7 -2
  525. package/node_modules/zod/v4/locales/de.cjs +5 -0
  526. package/node_modules/zod/v4/locales/de.js +5 -0
  527. package/node_modules/zod/v4/locales/el.cjs +3 -0
  528. package/node_modules/zod/v4/locales/el.js +3 -0
  529. package/node_modules/zod/v4/locales/en.cjs +16 -4
  530. package/node_modules/zod/v4/locales/en.js +16 -4
  531. package/node_modules/zod/v4/locales/eo.cjs +5 -0
  532. package/node_modules/zod/v4/locales/eo.js +5 -0
  533. package/node_modules/zod/v4/locales/es.cjs +4 -0
  534. package/node_modules/zod/v4/locales/es.js +4 -0
  535. package/node_modules/zod/v4/locales/fa.cjs +5 -0
  536. package/node_modules/zod/v4/locales/fa.js +5 -0
  537. package/node_modules/zod/v4/locales/fi.cjs +5 -0
  538. package/node_modules/zod/v4/locales/fi.js +5 -0
  539. package/node_modules/zod/v4/locales/fr-CA.cjs +5 -0
  540. package/node_modules/zod/v4/locales/fr-CA.js +5 -0
  541. package/node_modules/zod/v4/locales/fr.cjs +18 -14
  542. package/node_modules/zod/v4/locales/fr.js +18 -14
  543. package/node_modules/zod/v4/locales/gu.cjs +140 -0
  544. package/node_modules/zod/v4/locales/gu.d.cts +5 -0
  545. package/node_modules/zod/v4/locales/gu.d.ts +4 -0
  546. package/node_modules/zod/v4/locales/gu.js +113 -0
  547. package/node_modules/zod/v4/locales/he.cjs +7 -0
  548. package/node_modules/zod/v4/locales/he.js +7 -0
  549. package/node_modules/zod/v4/locales/hi.cjs +138 -0
  550. package/node_modules/zod/v4/locales/hi.d.cts +5 -0
  551. package/node_modules/zod/v4/locales/hi.d.ts +4 -0
  552. package/node_modules/zod/v4/locales/hi.js +111 -0
  553. package/node_modules/zod/v4/locales/hr.cjs +4 -0
  554. package/node_modules/zod/v4/locales/hr.js +4 -0
  555. package/node_modules/zod/v4/locales/hu.cjs +5 -0
  556. package/node_modules/zod/v4/locales/hu.js +5 -0
  557. package/node_modules/zod/v4/locales/hy.cjs +11 -0
  558. package/node_modules/zod/v4/locales/hy.js +11 -0
  559. package/node_modules/zod/v4/locales/id.cjs +5 -0
  560. package/node_modules/zod/v4/locales/id.js +5 -0
  561. package/node_modules/zod/v4/locales/index.cjs +43 -2
  562. package/node_modules/zod/v4/locales/index.d.cts +11 -0
  563. package/node_modules/zod/v4/locales/index.d.ts +11 -0
  564. package/node_modules/zod/v4/locales/index.js +11 -0
  565. package/node_modules/zod/v4/locales/is.cjs +5 -0
  566. package/node_modules/zod/v4/locales/is.js +5 -0
  567. package/node_modules/zod/v4/locales/it.cjs +5 -0
  568. package/node_modules/zod/v4/locales/it.js +5 -0
  569. package/node_modules/zod/v4/locales/ja.cjs +5 -0
  570. package/node_modules/zod/v4/locales/ja.js +5 -0
  571. package/node_modules/zod/v4/locales/ka.cjs +5 -0
  572. package/node_modules/zod/v4/locales/ka.js +5 -0
  573. package/node_modules/zod/v4/locales/km.cjs +5 -0
  574. package/node_modules/zod/v4/locales/km.js +5 -0
  575. package/node_modules/zod/v4/locales/kn.cjs +143 -0
  576. package/node_modules/zod/v4/locales/kn.d.cts +5 -0
  577. package/node_modules/zod/v4/locales/kn.d.ts +4 -0
  578. package/node_modules/zod/v4/locales/kn.js +116 -0
  579. package/node_modules/zod/v4/locales/ko.cjs +5 -0
  580. package/node_modules/zod/v4/locales/ko.js +5 -0
  581. package/node_modules/zod/v4/locales/lt.cjs +4 -0
  582. package/node_modules/zod/v4/locales/lt.js +4 -0
  583. package/node_modules/zod/v4/locales/mk.cjs +5 -0
  584. package/node_modules/zod/v4/locales/mk.js +5 -0
  585. package/node_modules/zod/v4/locales/ms.cjs +5 -0
  586. package/node_modules/zod/v4/locales/ms.js +5 -0
  587. package/node_modules/zod/v4/locales/ne.cjs +138 -0
  588. package/node_modules/zod/v4/locales/ne.d.cts +5 -0
  589. package/node_modules/zod/v4/locales/ne.d.ts +4 -0
  590. package/node_modules/zod/v4/locales/ne.js +111 -0
  591. package/node_modules/zod/v4/locales/nl.cjs +5 -0
  592. package/node_modules/zod/v4/locales/nl.js +5 -0
  593. package/node_modules/zod/v4/locales/nn.cjs +140 -0
  594. package/node_modules/zod/v4/locales/nn.d.cts +5 -0
  595. package/node_modules/zod/v4/locales/nn.d.ts +4 -0
  596. package/node_modules/zod/v4/locales/nn.js +113 -0
  597. package/node_modules/zod/v4/locales/no.cjs +7 -2
  598. package/node_modules/zod/v4/locales/no.js +7 -2
  599. package/node_modules/zod/v4/locales/ota.cjs +5 -0
  600. package/node_modules/zod/v4/locales/ota.js +5 -0
  601. package/node_modules/zod/v4/locales/pl.cjs +5 -0
  602. package/node_modules/zod/v4/locales/pl.js +5 -0
  603. package/node_modules/zod/v4/locales/ps.cjs +5 -0
  604. package/node_modules/zod/v4/locales/ps.js +5 -0
  605. package/node_modules/zod/v4/locales/pt-BR.cjs +170 -0
  606. package/node_modules/zod/v4/locales/pt-BR.d.cts +5 -0
  607. package/node_modules/zod/v4/locales/pt-BR.d.ts +4 -0
  608. package/node_modules/zod/v4/locales/pt-BR.js +143 -0
  609. package/node_modules/zod/v4/locales/pt.cjs +89 -55
  610. package/node_modules/zod/v4/locales/pt.js +89 -55
  611. package/node_modules/zod/v4/locales/ro.cjs +3 -0
  612. package/node_modules/zod/v4/locales/ro.js +3 -0
  613. package/node_modules/zod/v4/locales/ru.cjs +12 -0
  614. package/node_modules/zod/v4/locales/ru.js +12 -0
  615. package/node_modules/zod/v4/locales/sk.cjs +143 -0
  616. package/node_modules/zod/v4/locales/sk.d.cts +5 -0
  617. package/node_modules/zod/v4/locales/sk.d.ts +4 -0
  618. package/node_modules/zod/v4/locales/sk.js +116 -0
  619. package/node_modules/zod/v4/locales/sl.cjs +5 -0
  620. package/node_modules/zod/v4/locales/sl.js +5 -0
  621. package/node_modules/zod/v4/locales/sv.cjs +7 -2
  622. package/node_modules/zod/v4/locales/sv.js +7 -2
  623. package/node_modules/zod/v4/locales/ta.cjs +5 -0
  624. package/node_modules/zod/v4/locales/ta.js +5 -0
  625. package/node_modules/zod/v4/locales/tg.cjs +144 -0
  626. package/node_modules/zod/v4/locales/tg.d.cts +5 -0
  627. package/node_modules/zod/v4/locales/tg.d.ts +4 -0
  628. package/node_modules/zod/v4/locales/tg.js +117 -0
  629. package/node_modules/zod/v4/locales/th.cjs +5 -0
  630. package/node_modules/zod/v4/locales/th.js +5 -0
  631. package/node_modules/zod/v4/locales/tk.cjs +134 -0
  632. package/node_modules/zod/v4/locales/tk.d.cts +5 -0
  633. package/node_modules/zod/v4/locales/tk.d.ts +4 -0
  634. package/node_modules/zod/v4/locales/tk.js +107 -0
  635. package/node_modules/zod/v4/locales/tr.cjs +5 -0
  636. package/node_modules/zod/v4/locales/tr.js +5 -0
  637. package/node_modules/zod/v4/locales/uk.cjs +5 -0
  638. package/node_modules/zod/v4/locales/uk.js +5 -0
  639. package/node_modules/zod/v4/locales/ur.cjs +5 -0
  640. package/node_modules/zod/v4/locales/ur.js +5 -0
  641. package/node_modules/zod/v4/locales/uz.cjs +3 -0
  642. package/node_modules/zod/v4/locales/uz.js +3 -0
  643. package/node_modules/zod/v4/locales/vi.cjs +5 -0
  644. package/node_modules/zod/v4/locales/vi.js +5 -0
  645. package/node_modules/zod/v4/locales/yo.cjs +5 -0
  646. package/node_modules/zod/v4/locales/yo.js +5 -0
  647. package/node_modules/zod/v4/locales/zh-CN.cjs +5 -0
  648. package/node_modules/zod/v4/locales/zh-CN.js +5 -0
  649. package/node_modules/zod/v4/locales/zh-TW.cjs +5 -0
  650. package/node_modules/zod/v4/locales/zh-TW.js +5 -0
  651. package/node_modules/zod/v4/mini/checks.cjs +21 -1
  652. package/node_modules/zod/v4/mini/checks.d.cts +1 -1
  653. package/node_modules/zod/v4/mini/checks.d.ts +1 -1
  654. package/node_modules/zod/v4/mini/checks.js +1 -1
  655. package/node_modules/zod/v4/mini/coerce.cjs +19 -0
  656. package/node_modules/zod/v4/mini/deep-partial.cjs +58 -0
  657. package/node_modules/zod/v4/mini/deep-partial.d.cts +14 -0
  658. package/node_modules/zod/v4/mini/deep-partial.d.ts +14 -0
  659. package/node_modules/zod/v4/mini/deep-partial.js +13 -0
  660. package/node_modules/zod/v4/mini/external.cjs +33 -1
  661. package/node_modules/zod/v4/mini/external.d.cts +5 -2
  662. package/node_modules/zod/v4/mini/external.d.ts +5 -2
  663. package/node_modules/zod/v4/mini/external.js +3 -1
  664. package/node_modules/zod/v4/mini/in-out.cjs +82 -0
  665. package/node_modules/zod/v4/mini/in-out.d.cts +8 -0
  666. package/node_modules/zod/v4/mini/in-out.d.ts +8 -0
  667. package/node_modules/zod/v4/mini/in-out.js +36 -0
  668. package/node_modules/zod/v4/mini/index.cjs +19 -0
  669. package/node_modules/zod/v4/mini/iso.cjs +19 -0
  670. package/node_modules/zod/v4/mini/parse.cjs +22 -1
  671. package/node_modules/zod/v4/mini/parse.d.cts +1 -1
  672. package/node_modules/zod/v4/mini/parse.d.ts +1 -1
  673. package/node_modules/zod/v4/mini/parse.js +1 -1
  674. package/node_modules/zod/v4/mini/schemas.cjs +117 -53
  675. package/node_modules/zod/v4/mini/schemas.d.cts +49 -14
  676. package/node_modules/zod/v4/mini/schemas.d.ts +49 -14
  677. package/node_modules/zod/v4/mini/schemas.js +92 -51
  678. package/node_modules/zod/v4-mini/index.cjs +19 -0
  679. package/openclaw.plugin.json +70 -1
  680. package/package.json +9 -6
  681. package/node_modules/zod/src/v4/core/config.ts +0 -15
  682. /package/dist/{realtime-transcription.runtime-CbJAs5t_.js → .setup/realtime-transcription.runtime-CbJAs5t_.mjs} +0 -0
  683. /package/dist/{realtime-voice.runtime-vtdCOWg-.js → .setup/realtime-voice.runtime-vtdCOWg-.mjs} +0 -0
  684. /package/dist/{twilio-region-4fkgz3UG.js → .setup/twilio-region-4fkgz3UG.mjs} +0 -0
  685. /package/dist/{webhook-replay-CCQSoBNF.js → .setup/webhook-replay-CCQSoBNF.mjs} +0 -0
@@ -114,9 +114,12 @@ const CALL_RECORD_EVENT_CHUNKS_NAMESPACE = "call-record-event-chunks";
114
114
  const MAX_CALL_RECORD_EVENTS = 1e3;
115
115
  /** Extra metadata entries retained so pruning can safely trim oldest rows. */
116
116
  const CALL_RECORD_EVENT_META_MAX_ENTRIES = 1100;
117
+ /** Maximum chunks allowed for one persisted call record event. */
118
+ const MAX_CHUNKS_PER_CALL_RECORD_EVENT = 48;
117
119
  const CALL_RECORD_CHUNK_MAX_ENTRIES = 48048;
118
120
  /** Raw UTF-8 bytes stored per call record chunk before base64 encoding. */
119
121
  const RAW_CALL_RECORD_CHUNK_BYTES = 48128;
122
+ const CALL_RECORD_READ_BATCH_KEYS = 128;
120
123
  let callRecordEventSequence = 0;
121
124
  /** Return the pre-SQLite JSONL call log path for migration/compat checks. */
122
125
  function resolveVoiceCallLegacyCallLogPath(storePath) {
@@ -130,17 +133,17 @@ function resolvePluginStateEnv(storePath) {
130
133
  };
131
134
  }
132
135
  /** Open the plugin state stores when the runtime is available. */
133
- function createCallRecordStateStores(storePath) {
134
- const runtime = getOptionalVoiceCallStateRuntime();
136
+ function createCallRecordStateStores(storePath, stateRuntime) {
137
+ const runtime = stateRuntime ? { state: stateRuntime } : getOptionalVoiceCallStateRuntime();
135
138
  if (!runtime) throw new Error("Voice Call state runtime not initialized");
136
139
  const env = resolvePluginStateEnv(storePath);
137
140
  return {
138
- events: runtime.state.openSyncKeyedStore({
141
+ events: runtime.state.openKeyedStore({
139
142
  namespace: CALL_RECORD_EVENTS_NAMESPACE,
140
143
  maxEntries: CALL_RECORD_EVENT_META_MAX_ENTRIES,
141
144
  env
142
145
  }),
143
- chunks: runtime.state.openSyncKeyedStore({
146
+ chunks: runtime.state.openKeyedStore({
144
147
  namespace: CALL_RECORD_EVENT_CHUNKS_NAMESPACE,
145
148
  maxEntries: CALL_RECORD_CHUNK_MAX_ENTRIES,
146
149
  env
@@ -148,9 +151,9 @@ function createCallRecordStateStores(storePath) {
148
151
  };
149
152
  }
150
153
  /** Open call stores and log failures instead of breaking restore paths. */
151
- function tryCreateCallRecordStateStores(storePath) {
154
+ function tryCreateCallRecordStateStores(storePath, stateRuntime) {
152
155
  try {
153
- return createCallRecordStateStores(storePath);
156
+ return createCallRecordStateStores(storePath, stateRuntime);
154
157
  } catch (err) {
155
158
  console.error("[voice-call] Failed to open SQLite call record store:", err);
156
159
  return null;
@@ -220,7 +223,7 @@ function prepareVoiceCallRecordForStorage(call) {
220
223
  };
221
224
  trimCallReplayKeys(boundedCall.processedEventIds);
222
225
  }
223
- if (countCallRecordChunks(boundedCall) <= 48) return boundedCall;
226
+ if (countCallRecordChunks(boundedCall) <= MAX_CHUNKS_PER_CALL_RECORD_EVENT) return boundedCall;
224
227
  const transcriptEntries = boundedCall.transcript.length;
225
228
  const metadata = {
226
229
  ...boundedCall.metadata,
@@ -252,88 +255,121 @@ function prepareVoiceCallRecordForStorage(call) {
252
255
  ...boundedCall,
253
256
  ...candidateInput
254
257
  });
255
- if (countCallRecordChunks(candidate) <= 48) return candidate;
258
+ if (countCallRecordChunks(candidate) <= MAX_CHUNKS_PER_CALL_RECORD_EVENT) return candidate;
256
259
  }
257
260
  return boundedCall;
258
261
  }
259
- /** Register a serialized call record event and its chunks, then prune old events. */
260
- function registerCallRecordEvent(stores, eventKey, call, order) {
262
+ /** Encode one bounded record; chunks are produced only when requested by the writer. */
263
+ function encodeCallRecordEvent(call) {
261
264
  const serialized = JSON.stringify(prepareVoiceCallRecordForStorage(call));
262
265
  const buffer = Buffer.from(serialized, "utf8");
263
266
  const chunkCount = Math.max(1, Math.ceil(buffer.byteLength / RAW_CALL_RECORD_CHUNK_BYTES));
264
- if (chunkCount > 48) throw new Error(`voice-call record exceeds SQLite chunk limit (${chunkCount}/48)`);
265
- for (let index = 0; index < chunkCount; index += 1) {
266
- const chunk = buffer.subarray(index * RAW_CALL_RECORD_CHUNK_BYTES, (index + 1) * RAW_CALL_RECORD_CHUNK_BYTES);
267
- stores.chunks.register(buildChunkKey(eventKey, index), {
268
- index,
269
- dataBase64: chunk.toString("base64")
270
- });
271
- }
272
- stores.events.register(eventKey, {
273
- chunkCount,
274
- byteLength: buffer.byteLength,
275
- persistedAt: order?.persistedAt,
276
- sequence: order?.sequence
267
+ if (chunkCount > MAX_CHUNKS_PER_CALL_RECORD_EVENT) throw new Error(`voice-call record exceeds SQLite chunk limit (${chunkCount}/${MAX_CHUNKS_PER_CALL_RECORD_EVENT})`);
268
+ return {
269
+ meta: {
270
+ chunkCount,
271
+ byteLength: buffer.byteLength
272
+ },
273
+ chunk(index) {
274
+ return {
275
+ index,
276
+ dataBase64: buffer.subarray(index * RAW_CALL_RECORD_CHUNK_BYTES, (index + 1) * RAW_CALL_RECORD_CHUNK_BYTES).toString("base64")
277
+ };
278
+ }
279
+ };
280
+ }
281
+ /** Register a serialized call record event and its chunks, then prune old events. */
282
+ async function registerCallRecordEvent(stores, eventKey, call, order) {
283
+ const encoded = encodeCallRecordEvent(call);
284
+ for (let index = 0; index < encoded.meta.chunkCount; index += 1) await stores.chunks.register(buildChunkKey(eventKey, index), encoded.chunk(index));
285
+ await stores.events.register(eventKey, {
286
+ ...encoded.meta,
287
+ persistedAt: order.persistedAt,
288
+ sequence: order.sequence
277
289
  });
278
- pruneCallRecordEvents(stores);
290
+ await pruneCallRecordEvents(stores);
279
291
  }
280
292
  /** Delete metadata and all chunk rows for one call record event. */
281
- function deleteCallRecordEventRows(stores, eventKey) {
282
- const meta = stores.events.lookup(eventKey);
283
- stores.events.delete(eventKey);
293
+ async function deleteCallRecordEventRows(stores, eventKey) {
294
+ const meta = await stores.events.lookup(eventKey);
295
+ await stores.events.delete(eventKey);
284
296
  if (!meta) return;
285
- for (let index = 0; index < meta.chunkCount; index += 1) stores.chunks.delete(buildChunkKey(eventKey, index));
297
+ for (let index = 0; index < meta.chunkCount; index += 1) await stores.chunks.delete(buildChunkKey(eventKey, index));
286
298
  }
287
299
  /** Keep only the newest bounded call record events. */
288
- function pruneCallRecordEvents(stores) {
289
- const rows = stores.events.entries();
300
+ async function pruneCallRecordEvents(stores) {
301
+ if (stores.events.count && await stores.events.count() <= 1e3) return;
302
+ const rows = await stores.events.entries();
290
303
  if (rows.length <= 1e3) return;
291
304
  const sorted = rows.toSorted((a, b) => a.createdAt - b.createdAt || a.key.localeCompare(b.key));
292
- for (const row of sorted.slice(0, rows.length - MAX_CALL_RECORD_EVENTS)) deleteCallRecordEventRows(stores, row.key);
305
+ for (const row of sorted.slice(0, rows.length - MAX_CALL_RECORD_EVENTS)) await deleteCallRecordEventRows(stores, row.key);
306
+ }
307
+ function isValidCallRecordChunkCount(chunkCount) {
308
+ return Number.isSafeInteger(chunkCount) && chunkCount >= 1 && chunkCount <= MAX_CHUNKS_PER_CALL_RECORD_EVENT;
293
309
  }
294
310
  /** Read and reassemble one chunked call record event. */
295
- function readCallRecordEvent(stores, eventKey, meta) {
296
- if (!Number.isSafeInteger(meta.chunkCount) || meta.chunkCount < 1 || meta.chunkCount > 48) return null;
297
- const records = stores.chunks.lookupMany?.(Array.from({ length: meta.chunkCount }, (_, index) => buildChunkKey(eventKey, index)));
311
+ async function readCallRecordEvent(stores, eventKey, meta, records) {
312
+ if (!isValidCallRecordChunkCount(meta.chunkCount)) return null;
298
313
  const chunks = [];
299
314
  for (let index = 0; index < meta.chunkCount; index += 1) {
300
315
  const result = records?.[index];
301
316
  if (result && !result.ok) throw result.error;
302
- const chunk = records ? result?.value : stores.chunks.lookup(buildChunkKey(eventKey, index));
317
+ const chunk = records ? result?.value : await stores.chunks.lookup(buildChunkKey(eventKey, index));
303
318
  if (!chunk || chunk.index !== index) return null;
304
319
  chunks.push(Buffer.from(chunk.dataBase64, "base64"));
305
320
  }
306
321
  return parseVoiceCallRecordLine(Buffer.concat(chunks, meta.byteLength).toString("utf8"))?.call ?? null;
307
322
  }
308
323
  /** Read all persisted call records in stable persisted order. */
309
- function readCallRecordEvents(stores) {
310
- return stores.events.entries().toSorted((a, b) => a.createdAt - b.createdAt || a.key.localeCompare(b.key)).map((entry) => {
311
- const call = readCallRecordEvent(stores, entry.key, entry.value);
312
- return call ? {
324
+ async function readCallRecordEvents(stores) {
325
+ const entries = (await stores.events.entries()).toSorted((a, b) => a.createdAt - b.createdAt || a.key.localeCompare(b.key));
326
+ const sqliteCalls = [];
327
+ let batchEnd = 0;
328
+ let chunkOffset = 0;
329
+ let chunkRecords;
330
+ for (const [entryIndex, entry] of entries.entries()) {
331
+ if (entryIndex >= batchEnd && stores.chunks.lookupMany) {
332
+ const keys = [];
333
+ for (let next = entryIndex;; next++) {
334
+ const row = entries[next];
335
+ if (!row) break;
336
+ const chunkCount = row.value?.chunkCount;
337
+ if (!isValidCallRecordChunkCount(chunkCount) || keys.length + chunkCount > CALL_RECORD_READ_BATCH_KEYS) break;
338
+ for (let index = 0; index < chunkCount; index++) keys.push(buildChunkKey(row.key, index));
339
+ batchEnd = next + 1;
340
+ }
341
+ chunkRecords = keys.length > 0 ? await stores.chunks.lookupMany(keys) : void 0;
342
+ chunkOffset = 0;
343
+ }
344
+ const records = chunkRecords?.slice(chunkOffset, chunkOffset + entry.value.chunkCount);
345
+ const call = await readCallRecordEvent(stores, entry.key, entry.value, records);
346
+ if (chunkRecords) chunkOffset += entry.value.chunkCount;
347
+ if (call) sqliteCalls.push({
313
348
  call,
314
349
  persistedAt: entry.value.persistedAt ?? entry.createdAt,
315
350
  sequence: entry.value.sequence ?? parseEventKeySequence(entry.key),
316
351
  orderKey: entry.key
317
- } : null;
318
- }).filter((entry) => entry !== null).toSorted((a, b) => a.persistedAt - b.persistedAt || a.sequence - b.sequence || a.orderKey.localeCompare(b.orderKey)).map((entry) => entry.call);
352
+ });
353
+ }
354
+ return sqliteCalls.toSorted((a, b) => a.persistedAt - b.persistedAt || a.sequence - b.sequence || a.orderKey.localeCompare(b.orderKey)).map((entry) => entry.call);
319
355
  }
320
356
  /** Persist one call record event to plugin state. */
321
- function persistCallRecord(storePath, call) {
357
+ async function persistCallRecord(storePath, call, stateRuntime) {
322
358
  try {
323
- const stores = createCallRecordStateStores(storePath);
359
+ const stores = createCallRecordStateStores(storePath, stateRuntime);
324
360
  const order = nextCallRecordOrder();
325
- registerCallRecordEvent(stores, buildNewEventKey(order), call, order);
361
+ await registerCallRecordEvent(stores, buildNewEventKey(order), call, order);
326
362
  } catch (err) {
327
363
  console.error("[voice-call] Failed to persist call record:", err);
328
364
  throw err;
329
365
  }
330
366
  }
331
367
  /** Restore nonterminal active calls and provider/event indexes from persisted records. */
332
- function loadActiveCallsFromStore(storePath) {
333
- const stores = tryCreateCallRecordStateStores(storePath);
368
+ async function loadActiveCallsFromStore(storePath, stateRuntime) {
369
+ const stores = tryCreateCallRecordStateStores(storePath, stateRuntime);
334
370
  let calls = [];
335
371
  try {
336
- calls = stores ? readCallRecordEvents(stores) : [];
372
+ calls = stores ? await readCallRecordEvents(stores) : [];
337
373
  } catch (err) {
338
374
  console.error("[voice-call] Failed to read SQLite call records:", err);
339
375
  }
@@ -363,25 +399,25 @@ function loadActiveCallsFromStore(storePath) {
363
399
  processedEventIds
364
400
  };
365
401
  }
366
- function readCallHistoryFromStore(storePath) {
367
- const stores = tryCreateCallRecordStateStores(storePath);
402
+ async function readCallHistoryFromStore(storePath, stateRuntime) {
403
+ const stores = tryCreateCallRecordStateStores(storePath, stateRuntime);
368
404
  if (stores) try {
369
- return readCallRecordEvents(stores);
405
+ return await readCallRecordEvents(stores);
370
406
  } catch (err) {
371
407
  console.error("[voice-call] Failed to read SQLite call history:", err);
372
408
  }
373
409
  return [];
374
410
  }
375
411
  /** Resolve an internal ID or retained provider alias to its newest logical call snapshot. */
376
- function findCallInStore(storePath, callId) {
377
- const calls = readCallRecordEvents(createCallRecordStateStores(storePath));
412
+ async function findCallInStore(storePath, callId, stateRuntime) {
413
+ const calls = await readCallRecordEvents(createCallRecordStateStores(storePath, stateRuntime));
378
414
  const match = calls.findLast((call) => call.callId === callId) ?? calls.findLast((call) => call.providerCallId === callId);
379
415
  return match ? calls.findLast((call) => call.callId === match.callId) : void 0;
380
416
  }
381
417
  /** Return the newest persisted call history rows up to the requested limit. */
382
- async function getCallHistoryFromStore(storePath, limit = 50) {
418
+ async function getCallHistoryFromStore(storePath, limit = 50, stateRuntime) {
383
419
  if (limit <= 0) return [];
384
- return readCallHistoryFromStore(storePath).slice(-limit);
420
+ return (await readCallHistoryFromStore(storePath, stateRuntime)).slice(-limit);
385
421
  }
386
422
  //#endregion
387
423
  //#region extensions/voice-call/src/store-path.ts
@@ -390,4 +426,4 @@ function resolveDefaultVoiceCallStoreDir(env = process.env) {
390
426
  return path.join(resolveStateDir(env), "voice-calls");
391
427
  }
392
428
  //#endregion
393
- export { releaseRejectedProviderCall as _, CALL_RECORD_EVENT_META_MAX_ENTRIES as a, setVoiceCallStateRuntime as b, buildVoiceCallLegacyJsonlEventKey as c, loadActiveCallsFromStore as d, parseVoiceCallRecordLine as f, appendCallReplayKey as g, resolveVoiceCallLegacyCallLogPath as h, CALL_RECORD_EVENT_CHUNKS_NAMESPACE as i, findCallInStore as l, prepareVoiceCallRecordForStorage as m, CALL_RECORD_CHUNK_MAX_ENTRIES as n, MAX_CALL_RECORD_EVENTS as o, persistCallRecord as p, CALL_RECORD_EVENTS_NAMESPACE as r, RAW_CALL_RECORD_CHUNK_BYTES as s, resolveDefaultVoiceCallStoreDir as t, getCallHistoryFromStore as u, rememberManagerReplayKey as v, TerminalStates as x, reserveRejectedProviderCall as y };
429
+ export { releaseRejectedProviderCall as _, CALL_RECORD_EVENT_META_MAX_ENTRIES as a, setVoiceCallStateRuntime as b, buildVoiceCallLegacyJsonlEventKey as c, getCallHistoryFromStore as d, loadActiveCallsFromStore as f, appendCallReplayKey as g, resolveVoiceCallLegacyCallLogPath as h, CALL_RECORD_EVENT_CHUNKS_NAMESPACE as i, encodeCallRecordEvent as l, persistCallRecord as m, CALL_RECORD_CHUNK_MAX_ENTRIES as n, MAX_CALL_RECORD_EVENTS as o, parseVoiceCallRecordLine as p, CALL_RECORD_EVENTS_NAMESPACE as r, buildChunkKey as s, resolveDefaultVoiceCallStoreDir as t, findCallInStore as u, rememberManagerReplayKey as v, TerminalStates as x, reserveRejectedProviderCall as y };
@@ -1,4 +1,4 @@
1
- import { s as verifyTelnyxWebhook, t as guardedJsonApiRequest } from "./guarded-json-api-3Jy2k-eX.js";
1
+ import { s as verifyTelnyxWebhook, t as guardedJsonApiRequest } from "./guarded-json-api-exU4Hutw.mjs";
2
2
  import crypto from "node:crypto";
3
3
  //#region extensions/voice-call/src/providers/telnyx.ts
4
4
  function normalizeTelnyxDirection(direction) {
@@ -1,8 +1,8 @@
1
- import { fetchWithSsrFGuard } from "./runtime-api.js";
2
- import "./api.js";
3
- import { n as requireSupportedTwilioApiHostname, r as resolveTwilioApiBaseUrl } from "./twilio-region-4fkgz3UG.js";
4
- import { a as normalizeProviderStatus, b as escapeXml, h as chunkAudio, i as mapProviderStatusToEndReason, l as getHeader, r as isProviderStatusTerminal, x as mapVoiceToPolly } from "./runtime-entry-Ln4SWaYK.js";
5
- import { c as verifyTwilioWebhook, i as readVoiceCallProviderJsonResponse, n as cancelProviderResponseBody, r as readProviderErrorResponseSnippet, t as guardedJsonApiRequest } from "./guarded-json-api-3Jy2k-eX.js";
1
+ import { fetchWithSsrFGuard } from "../runtime-api.js";
2
+ import "../api.js";
3
+ import { n as requireSupportedTwilioApiHostname, r as resolveTwilioApiBaseUrl } from "./twilio-region-4fkgz3UG.mjs";
4
+ import { a as normalizeProviderStatus, b as escapeXml, h as chunkAudio, i as mapProviderStatusToEndReason, l as getHeader, r as isProviderStatusTerminal, x as mapVoiceToPolly } from "./runtime-entry-dDRm6RgA.mjs";
5
+ import { c as verifyTwilioWebhook, i as readVoiceCallProviderJsonResponse, n as cancelProviderResponseBody, r as readProviderErrorResponseSnippet, t as guardedJsonApiRequest } from "./guarded-json-api-exU4Hutw.mjs";
6
6
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
7
7
  import { sleepWithAbort } from "openclaw/plugin-sdk/runtime-env";
8
8
  import crypto from "node:crypto";
@@ -99,7 +99,6 @@ function decideTwimlResponse(input) {
99
99
  kind: "stored",
100
100
  consumeStoredTwimlCallId: input.callIdFromQuery
101
101
  };
102
- if (input.isNotifyCall) return { kind: "empty" };
103
102
  if (isOutboundDirection(input.direction)) return input.canStream ? { kind: "stream" } : { kind: "pause" };
104
103
  }
105
104
  if (input.isStatusCallback) return { kind: "empty" };
@@ -160,11 +159,10 @@ var TwilioProvider = class TwilioProvider {
160
159
  * Delete stored TwiML for a given `callId`.
161
160
  *
162
161
  * We keep TwiML in-memory only long enough to satisfy the initial Twilio
163
- * webhook request (notify mode). Subsequent webhooks should not reuse it.
162
+ * webhook request before streaming. Subsequent webhooks should not reuse it.
164
163
  */
165
164
  deleteStoredTwiml(callId) {
166
165
  this.twimlStorage.delete(callId);
167
- this.notifyCalls.delete(callId);
168
166
  }
169
167
  /**
170
168
  * Release all process-local metadata owned by one Twilio call.
@@ -192,7 +190,6 @@ var TwilioProvider = class TwilioProvider {
192
190
  this.callStreamMap = /* @__PURE__ */ new Map();
193
191
  this.streamAuthTokens = /* @__PURE__ */ new Map();
194
192
  this.twimlStorage = /* @__PURE__ */ new Map();
195
- this.notifyCalls = /* @__PURE__ */ new Set();
196
193
  this.activeStreamCalls = /* @__PURE__ */ new Set();
197
194
  if (!config.accountSid) throw new Error("Twilio Account SID is required");
198
195
  if (!config.authToken) throw new Error("Twilio Auth Token is required");
@@ -414,7 +411,6 @@ var TwilioProvider = class TwilioProvider {
414
411
  const decision = decideTwimlResponse({
415
412
  ...view,
416
413
  hasStoredTwiml: Boolean(storedTwiml),
417
- isNotifyCall: view.callIdFromQuery ? this.notifyCalls.has(view.callIdFromQuery) : false,
418
414
  hasActiveStreams: this.activeStreamCalls.size > 0,
419
415
  canStream: Boolean(view.callSid && this.getStreamUrl())
420
416
  });
@@ -435,9 +431,8 @@ var TwilioProvider = class TwilioProvider {
435
431
  if (!view.callIdFromQuery || view.isStatusCallback) return null;
436
432
  const storedTwiml = this.twimlStorage.get(view.callIdFromQuery);
437
433
  if (!storedTwiml) return null;
438
- const kind = this.notifyCalls.has(view.callIdFromQuery) ? "notify" : "pre-connect";
439
434
  this.deleteStoredTwiml(view.callIdFromQuery);
440
- console.log(`[voice-call] Twilio initial TwiML consumed for call ${view.callIdFromQuery} (kind=${kind}, callSid=${view.callSid ?? "unknown"})`);
435
+ console.log(`[voice-call] Twilio initial TwiML consumed for call ${view.callIdFromQuery} (kind=pre-connect, callSid=${view.callSid ?? "unknown"})`);
441
436
  return storedTwiml;
442
437
  }
443
438
  /**
@@ -582,18 +577,9 @@ var TwilioProvider = class TwilioProvider {
582
577
  const SILENCE_CHUNK = Buffer.alloc(CHUNK_SIZE, 255);
583
578
  const handler = this.mediaStreamHandler;
584
579
  const ttsProvider = this.ttsProvider;
585
- const normalizeSendResult = (raw) => {
586
- if (!raw || typeof raw !== "object") return { sent: true };
587
- const typed = raw;
588
- return { sent: typed.sent === void 0 ? true : Boolean(typed.sent) };
589
- };
590
- const sendAudioChunk = (audio) => {
591
- const raw = handler.sendAudio(streamSid, audio);
592
- return normalizeSendResult(raw);
593
- };
594
580
  await handler.queueTts(streamSid, async (signal) => {
595
581
  const sendKeepAlive = () => {
596
- sendAudioChunk(SILENCE_CHUNK);
582
+ handler.sendAudio(streamSid, SILENCE_CHUNK);
597
583
  };
598
584
  sendKeepAlive();
599
585
  const keepAlive = setInterval(() => {
@@ -635,7 +621,7 @@ var TwilioProvider = class TwilioProvider {
635
621
  for (const chunk of chunkAudio(muLawAudio, CHUNK_SIZE)) {
636
622
  if (signal.aborted) break;
637
623
  chunkAttempts += 1;
638
- if (!sendAudioChunk(chunk).sent) {
624
+ if (!handler.sendAudio(streamSid, chunk).sent) {
639
625
  handler.clearAudio(streamSid);
640
626
  throw new Error(`Telephony stream playback failed: audio chunk ${chunkAttempts} not delivered`);
641
627
  }
@@ -1,9 +1,10 @@
1
- import { a as CALL_RECORD_EVENT_META_MAX_ENTRIES, c as buildVoiceCallLegacyJsonlEventKey, f as parseVoiceCallRecordLine, h as resolveVoiceCallLegacyCallLogPath, i as CALL_RECORD_EVENT_CHUNKS_NAMESPACE, m as prepareVoiceCallRecordForStorage, n as CALL_RECORD_CHUNK_MAX_ENTRIES, o as MAX_CALL_RECORD_EVENTS, r as CALL_RECORD_EVENTS_NAMESPACE, s as RAW_CALL_RECORD_CHUNK_BYTES, t as resolveDefaultVoiceCallStoreDir } from "./store-path-M0GXxUfv.js";
1
+ import { a as CALL_RECORD_EVENT_META_MAX_ENTRIES, c as buildVoiceCallLegacyJsonlEventKey, h as resolveVoiceCallLegacyCallLogPath, i as CALL_RECORD_EVENT_CHUNKS_NAMESPACE, l as encodeCallRecordEvent, n as CALL_RECORD_CHUNK_MAX_ENTRIES, o as MAX_CALL_RECORD_EVENTS, p as parseVoiceCallRecordLine, r as CALL_RECORD_EVENTS_NAMESPACE, s as buildChunkKey, t as resolveDefaultVoiceCallStoreDir } from "./.setup/store-path-B1j1up4_.mjs";
2
2
  import { normalizeAgentId } from "openclaw/plugin-sdk/routing";
3
3
  import { asOptionalRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
4
+ import { existsSync } from "node:fs";
4
5
  import path from "node:path";
5
6
  import os from "node:os";
6
- import fs from "node:fs/promises";
7
+ import fs$1 from "node:fs/promises";
7
8
  import { archiveLegacyStateSource } from "openclaw/plugin-sdk/runtime-doctor-migrations";
8
9
  //#region extensions/voice-call/doctor-contract-api.ts
9
10
  /** Resolve home from doctor env with OS fallback. */
@@ -70,6 +71,7 @@ function describeVoiceCallSchemaMigration(migration) {
70
71
  case "conversation-binding-targets-v15": return "conversation bindings -> exact target keys without agent/session projections";
71
72
  case "skill-workshop-directory-ownership-v16": return "Skill Workshop proposals -> per-agent Workshop directory ownership";
72
73
  case "prepared-worker-ownership-v17": return "prepared workers -> one-use capacity and fixed workspace ownership";
74
+ case "github-publication-requester-authority-v18": return "GitHub publication receipts -> original requesting authority";
73
75
  case "worker-placement-execution-mode-v8": return "cloud worker placements -> execution-mode claims";
74
76
  case "operator-approvals-system-agent": return "operator approvals -> OpenClaw system changes";
75
77
  case "session-watch-cursor-provenance-v4": return "session watch cursors -> provenance column";
@@ -77,37 +79,11 @@ function describeVoiceCallSchemaMigration(migration) {
77
79
  }
78
80
  return migration.kind;
79
81
  }
80
- /** Build the plugin state key for one migrated event chunk. */
81
- function buildChunkKey(eventKey, index) {
82
- return `${eventKey}:chunk:${String(index).padStart(4, "0")}`;
83
- }
84
- /** Chunk a prepared call record into bounded plugin state rows. */
85
- function prepareChunks(call) {
86
- const serialized = JSON.stringify(prepareVoiceCallRecordForStorage(call));
87
- const buffer = Buffer.from(serialized, "utf8");
88
- const chunkCount = Math.max(1, Math.ceil(buffer.byteLength / RAW_CALL_RECORD_CHUNK_BYTES));
89
- if (chunkCount > 48) throw new Error(`voice-call record exceeds SQLite chunk limit (${chunkCount}/48)`);
90
- const chunks = [];
91
- for (let index = 0; index < chunkCount; index += 1) {
92
- const chunk = buffer.subarray(index * RAW_CALL_RECORD_CHUNK_BYTES, (index + 1) * RAW_CALL_RECORD_CHUNK_BYTES);
93
- chunks.push({
94
- index,
95
- dataBase64: chunk.toString("base64")
96
- });
97
- }
98
- return {
99
- chunks,
100
- meta: {
101
- chunkCount,
102
- byteLength: buffer.byteLength
103
- }
104
- };
105
- }
106
82
  /** Read and prepare legacy JSONL call records, collecting line-level warnings. */
107
83
  async function readLegacyCallRecords(filePath) {
108
84
  let content;
109
85
  try {
110
- content = await fs.readFile(filePath, "utf8");
86
+ content = await fs$1.readFile(filePath, "utf8");
111
87
  } catch {
112
88
  return {
113
89
  entries: [],
@@ -125,11 +101,12 @@ async function readLegacyCallRecords(filePath) {
125
101
  continue;
126
102
  }
127
103
  try {
128
- const prepared = prepareChunks(parsed.call);
104
+ const prepared = encodeCallRecordEvent(parsed.call);
105
+ const chunks = Array.from({ length: prepared.meta.chunkCount }, (_, chunkIndex) => prepared.chunk(chunkIndex));
129
106
  entries.push({
130
107
  eventKey: buildVoiceCallLegacyJsonlEventKey(line, index),
131
108
  lineNumber: index + 1,
132
- chunks: prepared.chunks,
109
+ chunks,
133
110
  meta: {
134
111
  ...prepared.meta,
135
112
  persistedAt: parsed.persistedAt,
@@ -192,18 +169,23 @@ const stateMigrations = [{
192
169
  id: "voice-call-calls-jsonl-to-plugin-state",
193
170
  label: "Voice Call call log",
194
171
  async detectLegacyState(params) {
195
- const { detectOpenClawStateDatabaseSchemaMigrations } = await import("openclaw/plugin-sdk/doctor-repair-runtime");
196
172
  const storePath = resolveVoiceCallStorePath(params);
173
+ if (!existsSync(storePath)) return null;
174
+ const { detectOpenClawStateDatabaseSchemaMigrations } = await import("openclaw/plugin-sdk/doctor-repair-runtime");
197
175
  const { entries } = await readLegacyCallRecords(resolveVoiceCallLegacyCallLogPath(storePath));
198
176
  const schemaMigrations = detectOpenClawStateDatabaseSchemaMigrations({ env: resolveVoiceCallStateDatabaseEnv(params) });
199
177
  if (entries.length === 0 && schemaMigrations.length === 0) return null;
200
178
  return { preview: [...schemaMigrations.map((migration) => `- Voice Call SQLite schema: ${describeVoiceCallSchemaMigration(migration)}`), ...entries.length > 0 ? [`- Voice Call call log: ${entries.length} ${entries.length === 1 ? "record" : "records"} -> plugin state (${CALL_RECORD_EVENTS_NAMESPACE})`] : []] };
201
179
  },
202
180
  async migrateLegacyState(params) {
203
- const { detectOpenClawStateDatabaseSchemaMigrations, repairOpenClawStateDatabaseSchema } = await import("openclaw/plugin-sdk/doctor-repair-runtime");
204
181
  const changes = [];
205
182
  const warnings = [];
206
183
  const storePath = resolveVoiceCallStorePath(params);
184
+ if (!existsSync(storePath)) return {
185
+ changes,
186
+ warnings
187
+ };
188
+ const { detectOpenClawStateDatabaseSchemaMigrations, repairOpenClawStateDatabaseSchema } = await import("openclaw/plugin-sdk/doctor-repair-runtime");
207
189
  const filePath = resolveVoiceCallLegacyCallLogPath(storePath);
208
190
  const { entries, warnings: readWarnings } = await readLegacyCallRecords(filePath);
209
191
  warnings.push(...readWarnings);
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { definePluginEntry } from "./runtime-api.js";
2
2
  import "./api.js";
3
3
  import { VOICE_CALL_CLI_DESCRIPTOR } from "./cli-output-mode.js";
4
- import { i as resolveVoiceCallConfig, t as VoiceCallConfigSchema, u as validateProviderConfig } from "./config-DQwvsxeV.js";
5
- import { t as createVoiceCallRuntime } from "./runtime-entry-Ln4SWaYK.js";
4
+ import { i as resolveVoiceCallConfig, t as VoiceCallConfigSchema, u as validateProviderConfig } from "./.setup/config-72FnMWHb.mjs";
5
+ import { t as createVoiceCallRuntime } from "./.setup/runtime-entry-dDRm6RgA.mjs";
6
6
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
7
7
  import { ErrorCodes, errorShape } from "openclaw/plugin-sdk/gateway-runtime";
8
8
  import { resolveGlobalSingleton } from "openclaw/plugin-sdk/global-singleton";
@@ -514,7 +514,7 @@ var voice_call_default = definePluginEntry({
514
514
  }
515
515
  }));
516
516
  api.registerCli(async ({ program }) => {
517
- const { registerVoiceCallCli } = await import("./cli-BGdihqyA.js");
517
+ const { registerVoiceCallCli } = await import("./.setup/cli-D6j7ppuN.mjs");
518
518
  registerVoiceCallCli({
519
519
  program,
520
520
  config,
@@ -1,2 +1,2 @@
1
- import { t as createVoiceCallRuntime } from "./runtime-entry-Ln4SWaYK.js";
1
+ import { t as createVoiceCallRuntime } from "./.setup/runtime-entry-dDRm6RgA.mjs";
2
2
  export { createVoiceCallRuntime };
@@ -18,7 +18,7 @@ export declare class Validator<Context extends TProperties = TProperties, Type e
18
18
  Check(value: unknown): value is Encode;
19
19
  /** Validates a value and returns it. Will throw if invalid. */
20
20
  Parse(value: unknown): Encode;
21
- /** Inspects a value and returns a detailed list of validation errors. */
21
+ /** Returns an array of validation errors for the given value. */
22
22
  Errors(value: unknown): TLocalizedValidationError[];
23
23
  /** Cleans a value using the Validator type. */
24
24
  Clean(value: unknown): unknown;
@@ -53,7 +53,7 @@ export class Validator {
53
53
  return Parser(this.Context(), this.Type(), value);
54
54
  throw new ParseError(value, this.Errors(value));
55
55
  }
56
- /** Inspects a value and returns a detailed list of validation errors. */
56
+ /** Returns an array of validation errors for the given value. */
57
57
  Errors(value) {
58
58
  if (this.IsAccelerated() && this.Check(value))
59
59
  return [];
@@ -14,14 +14,16 @@ function IsLabel(value) {
14
14
  // ------------------------------------------------------------------
15
15
  // NormalizeHostname
16
16
  //
17
- // Normalizes a hostname for label validation. Normalizes for NFC
18
- // such that equivalent codepoint sequences can be uniformly
19
- // compared. It also removes codepoints that IDNA mapping ignores,
20
- // and converts full stop variants to ASCII '.' so the hostname can
21
- // be split into labels.
17
+ // Normalizes a hostname for label validation. Maps fullwidth
18
+ // codepoints to their ASCII equivalent (e.g. 'a' U+FF41 maps to
19
+ // 'a'), then normalizes for NFC such that equivalent codepoint
20
+ // sequences can be uniformly compared. It also removes codepoints
21
+ // that IDNA mapping ignores, and converts full stop variants to
22
+ // ASCII '.' so the hostname can be split into labels.
22
23
  // ------------------------------------------------------------------
23
24
  function NormalizeHostname(value) {
24
25
  return value
26
+ .replace(/[\uff01-\uff5e]/g, (char) => String.fromCharCode(char.charCodeAt(0) - 0xfee0)) // RE_FULLWIDTH_MAPPING
25
27
  .normalize('NFC')
26
28
  .replace(/[\u00ad\u034f\u180b-\u180d\u200b\ufe00-\ufe0f\u{e0100}-\u{e01ef}]/gu, '') // RE_IGNORED_MAPPING
27
29
  .replace(/[\u002E\u3002\uFF0E\uFF61]/g, '.'); // RE_FULL_STOP_MAPPING
@@ -2,6 +2,7 @@
2
2
  const IpvFutureMatchMaxLength = 2048;
3
3
  const IpvFutureMatch = /\[[vV][0-9a-fA-F]+\.[^\]]+\]/; // Guarded By IpvFutureMatchMaxLength
4
4
  const InvalidIriChars = /[\x00-\x20<>\^`{|}\\]/;
5
+ const InvalidPercentEncoding = /%(?![0-9a-fA-F]{2})/;
5
6
  // ------------------------------------------------------------------
6
7
  // NarrowIpvFuture
7
8
  //
@@ -26,6 +27,9 @@ export function IsIri(value) {
26
27
  // 1. Reject strings containing unencoded whitespace or illegal control characters.
27
28
  if (InvalidIriChars.test(value))
28
29
  return false;
29
- // 2. Delegate to the native URL parser, patching the IPvFuture edge case beforehand.
30
+ // 2. Reject malformed percent-encoding triplets.
31
+ if (InvalidPercentEncoding.test(value))
32
+ return false;
33
+ // 3. Delegate to the native URL parser, patching the IPvFuture edge case beforehand.
30
34
  return URL.canParse(NarrowIpvFuture(value));
31
35
  }
@@ -106,15 +106,13 @@ export function IsMaxLength(value, length) {
106
106
  // Array
107
107
  // --------------------------------------------------------------------------
108
108
  export function Every(value, offset, params, expression) {
109
- return G.IsEqual(offset, '0')
110
- ? `${value}.every((${params[0]}, ${params[1]}) => ${expression})`
111
- : `((value, callback) => { for(let index = ${offset}; index < value.length; index++) if (!callback(value[index], index)) return false; return true })(${value}, (${params[0]}, ${params[1]}) => ${expression})`;
109
+ return G.IsEqual(offset, '0') ? `${value}.every((${params[0]}, ${params[1]}) => (${expression}))` : `${value}.every((${params[0]}, ${params[1]}) => (${params[1]} < ${offset}) || (${expression}))`;
112
110
  }
113
111
  export function Some(value, params, expression) {
114
112
  return `${value}.some((${params[0]}, ${params[1]}) => ${expression})`;
115
113
  }
116
114
  export function SomeAll(value, params, expression) {
117
- return `((value, callback) => { let result = false; for(let index = 0; index < value.length; index++) if (callback(value[index], index)) result = true; return result })(${value}, (${params[0]}, ${params[1]}) => ${expression})`;
115
+ return `((value) => { let result = false; value.forEach((${params[0]}, ${params[1]}) => { if (${expression}) result = true }); return result })(${value})`;
118
116
  }
119
117
  export function Counted(value, params, expression) {
120
118
  return `${value}.reduce((result, ${params[0]}, ${params[1]}) => (${expression}) ? ++result : result, 0)`;
@@ -140,36 +140,24 @@ export function IsMinLength(value, length) {
140
140
  // --------------------------------------------------------------------------
141
141
  /** Returns true if every element from offset satisfies the callback, short-circuiting on the first failure */
142
142
  export function Every(value, offset, callback) {
143
- for (let index = offset; index < value.length; index++) {
144
- if (!callback(value[index], index))
145
- return false;
146
- }
147
- return true;
143
+ return value.every((item, index) => (index < offset) || callback(item, index));
148
144
  }
149
145
  /** Returns true if every element from offset satisfies the callback, using exhaustive enumeration */
150
146
  export function EveryAll(value, offset, callback) {
151
147
  let result = true;
152
- for (let index = offset; index < value.length; index++) {
153
- if (!callback(value[index], index))
154
- result = false;
155
- }
148
+ value.forEach((item, index) => { if ((index >= offset) && !callback(item, index))
149
+ result = false; });
156
150
  return result;
157
151
  }
158
152
  /** Returns true if some element satisfies the callback, short-circuiting on the first success */
159
153
  export function Some(value, callback) {
160
- for (let index = 0; index < value.length; index++) {
161
- if (callback(value[index], index))
162
- return true;
163
- }
164
- return false;
154
+ return value.some((value, index) => callback(value, index));
165
155
  }
166
156
  /** Returns true if some element satisfies the callback, using exhaustive enumeration */
167
157
  export function SomeAll(value, callback) {
168
158
  let result = false;
169
- for (let index = 0; index < value.length; index++) {
170
- if (callback(value[index], index))
171
- result = true;
172
- }
159
+ value.forEach((item, index) => { if (callback(item, index))
160
+ result = true; });
173
161
  return result;
174
162
  }
175
163
  /** Returns the count of elements that satisfy the callback */