@openclaw/firecrawl-plugin 2026.7.2-beta.7 → 2026.8.1-beta.3

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 (728) hide show
  1. package/dist/api.js +1 -1
  2. package/dist/{firecrawl-client-DZohiNQK.js → firecrawl-client-mz7GIgb4.js} +134 -97
  3. package/dist/{firecrawl-fetch-provider-DXmd_5yB.js → firecrawl-fetch-provider-kMXMNJJw.js} +2 -2
  4. package/dist/{firecrawl-fetch-provider-shared-BhzfHFkE.js → firecrawl-fetch-provider-shared-DlD5WG_i.js} +4 -1
  5. package/dist/{firecrawl-free-search-provider-D_QqmJGK.js → firecrawl-free-search-provider-BnGTMs5x.js} +10 -6
  6. package/dist/index.js +14 -8
  7. package/dist/web-fetch-contract-api.js +1 -1
  8. package/dist/web-fetch-provider.js +1 -1
  9. package/dist/web-search-provider.js +1 -1
  10. package/node_modules/zod/LICENSE +21 -0
  11. package/node_modules/zod/README.md +191 -0
  12. package/node_modules/zod/index.cjs +33 -0
  13. package/node_modules/zod/index.d.cts +4 -0
  14. package/node_modules/zod/index.d.ts +4 -0
  15. package/node_modules/zod/index.js +4 -0
  16. package/node_modules/zod/locales/index.cjs +17 -0
  17. package/node_modules/zod/locales/index.d.cts +1 -0
  18. package/node_modules/zod/locales/index.d.ts +1 -0
  19. package/node_modules/zod/locales/index.js +1 -0
  20. package/node_modules/zod/locales/package.json +7 -0
  21. package/node_modules/zod/mini/index.cjs +32 -0
  22. package/node_modules/zod/mini/index.d.cts +3 -0
  23. package/node_modules/zod/mini/index.d.ts +3 -0
  24. package/node_modules/zod/mini/index.js +3 -0
  25. package/node_modules/zod/mini/package.json +7 -0
  26. package/node_modules/zod/package.json +135 -0
  27. package/node_modules/zod/src/index.ts +4 -0
  28. package/node_modules/zod/src/locales/index.ts +1 -0
  29. package/node_modules/zod/src/mini/index.ts +3 -0
  30. package/node_modules/zod/src/v3/ZodError.ts +330 -0
  31. package/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
  32. package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
  33. package/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
  34. package/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
  35. package/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
  36. package/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
  37. package/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
  38. package/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
  39. package/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
  40. package/node_modules/zod/src/v3/errors.ts +13 -0
  41. package/node_modules/zod/src/v3/external.ts +6 -0
  42. package/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
  43. package/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
  44. package/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
  45. package/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
  46. package/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
  47. package/node_modules/zod/src/v3/helpers/util.ts +224 -0
  48. package/node_modules/zod/src/v3/index.ts +4 -0
  49. package/node_modules/zod/src/v3/locales/en.ts +124 -0
  50. package/node_modules/zod/src/v3/standard-schema.ts +113 -0
  51. package/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
  52. package/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
  53. package/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
  54. package/node_modules/zod/src/v3/tests/array.test.ts +71 -0
  55. package/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
  56. package/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
  57. package/node_modules/zod/src/v3/tests/base.test.ts +29 -0
  58. package/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
  59. package/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
  60. package/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
  61. package/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
  62. package/node_modules/zod/src/v3/tests/complex.test.ts +70 -0
  63. package/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
  64. package/node_modules/zod/src/v3/tests/date.test.ts +32 -0
  65. package/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
  66. package/node_modules/zod/src/v3/tests/default.test.ts +112 -0
  67. package/node_modules/zod/src/v3/tests/description.test.ts +33 -0
  68. package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
  69. package/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
  70. package/node_modules/zod/src/v3/tests/error.test.ts +551 -0
  71. package/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
  72. package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
  73. package/node_modules/zod/src/v3/tests/function.test.ts +261 -0
  74. package/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
  75. package/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
  76. package/node_modules/zod/src/v3/tests/intersection.test.ts +110 -0
  77. package/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
  78. package/node_modules/zod/src/v3/tests/language-server.test.ts +207 -0
  79. package/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
  80. package/node_modules/zod/src/v3/tests/map.test.ts +110 -0
  81. package/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
  82. package/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
  83. package/node_modules/zod/src/v3/tests/nan.test.ts +24 -0
  84. package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
  85. package/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
  86. package/node_modules/zod/src/v3/tests/number.test.ts +176 -0
  87. package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
  88. package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
  89. package/node_modules/zod/src/v3/tests/object.test.ts +434 -0
  90. package/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
  91. package/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
  92. package/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
  93. package/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
  94. package/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
  95. package/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
  96. package/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
  97. package/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
  98. package/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
  99. package/node_modules/zod/src/v3/tests/readonly.test.ts +194 -0
  100. package/node_modules/zod/src/v3/tests/record.test.ts +171 -0
  101. package/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
  102. package/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
  103. package/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
  104. package/node_modules/zod/src/v3/tests/set.test.ts +142 -0
  105. package/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
  106. package/node_modules/zod/src/v3/tests/string.test.ts +916 -0
  107. package/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
  108. package/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
  109. package/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
  110. package/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
  111. package/node_modules/zod/src/v3/tests/void.test.ts +15 -0
  112. package/node_modules/zod/src/v3/types.ts +5138 -0
  113. package/node_modules/zod/src/v4/classic/checks.ts +32 -0
  114. package/node_modules/zod/src/v4/classic/coerce.ts +27 -0
  115. package/node_modules/zod/src/v4/classic/compat.ts +70 -0
  116. package/node_modules/zod/src/v4/classic/errors.ts +82 -0
  117. package/node_modules/zod/src/v4/classic/external.ts +52 -0
  118. package/node_modules/zod/src/v4/classic/from-json-schema.ts +659 -0
  119. package/node_modules/zod/src/v4/classic/index.ts +5 -0
  120. package/node_modules/zod/src/v4/classic/iso.ts +90 -0
  121. package/node_modules/zod/src/v4/classic/parse.ts +82 -0
  122. package/node_modules/zod/src/v4/classic/schemas.ts +2672 -0
  123. package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
  124. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +59 -0
  125. package/node_modules/zod/src/v4/classic/tests/array.test.ts +264 -0
  126. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +216 -0
  127. package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
  128. package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
  129. package/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
  130. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +54 -0
  131. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +106 -0
  132. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +326 -0
  133. package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
  134. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +573 -0
  135. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +703 -0
  136. package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
  137. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +374 -0
  138. package/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
  139. package/node_modules/zod/src/v4/classic/tests/date.test.ts +62 -0
  140. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +302 -0
  141. package/node_modules/zod/src/v4/classic/tests/default.test.ts +409 -0
  142. package/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +27 -0
  143. package/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
  144. package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +197 -0
  145. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +694 -0
  146. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +285 -0
  147. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +807 -0
  148. package/node_modules/zod/src/v4/classic/tests/error.test.ts +711 -0
  149. package/node_modules/zod/src/v4/classic/tests/file.test.ts +96 -0
  150. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +179 -0
  151. package/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +26 -0
  152. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +895 -0
  153. package/node_modules/zod/src/v4/classic/tests/function.test.ts +360 -0
  154. package/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
  155. package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +39 -0
  156. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +68 -0
  157. package/node_modules/zod/src/v4/classic/tests/index.test.ts +939 -0
  158. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +60 -0
  159. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +198 -0
  160. package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +46 -0
  161. package/node_modules/zod/src/v4/classic/tests/json.test.ts +109 -0
  162. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +227 -0
  163. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +117 -0
  164. package/node_modules/zod/src/v4/classic/tests/locales_ka.test.ts +29 -0
  165. package/node_modules/zod/src/v4/classic/tests/locales_ro.test.ts +24 -0
  166. package/node_modules/zod/src/v4/classic/tests/map.test.ts +330 -0
  167. package/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
  168. package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
  169. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +101 -0
  170. package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
  171. package/node_modules/zod/src/v4/classic/tests/number.test.ts +325 -0
  172. package/node_modules/zod/src/v4/classic/tests/object.test.ts +717 -0
  173. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +333 -0
  174. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +450 -0
  175. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +211 -0
  176. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +101 -0
  177. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +74 -0
  178. package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +26 -0
  179. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +351 -0
  180. package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
  181. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
  182. package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
  183. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +252 -0
  184. package/node_modules/zod/src/v4/classic/tests/record.test.ts +717 -0
  185. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +631 -0
  186. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +633 -0
  187. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +243 -0
  188. package/node_modules/zod/src/v4/classic/tests/set.test.ts +181 -0
  189. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +134 -0
  190. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +125 -0
  191. package/node_modules/zod/src/v4/classic/tests/string.test.ts +1224 -0
  192. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +106 -0
  193. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +771 -0
  194. package/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +438 -0
  195. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +3125 -0
  196. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +378 -0
  197. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +496 -0
  198. package/node_modules/zod/src/v4/classic/tests/union.test.ts +273 -0
  199. package/node_modules/zod/src/v4/classic/tests/url.test.ts +13 -0
  200. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
  201. package/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
  202. package/node_modules/zod/src/v4/core/api.ts +1823 -0
  203. package/node_modules/zod/src/v4/core/checks.ts +1293 -0
  204. package/node_modules/zod/src/v4/core/config.ts +15 -0
  205. package/node_modules/zod/src/v4/core/core.ts +153 -0
  206. package/node_modules/zod/src/v4/core/doc.ts +44 -0
  207. package/node_modules/zod/src/v4/core/errors.ts +455 -0
  208. package/node_modules/zod/src/v4/core/index.ts +16 -0
  209. package/node_modules/zod/src/v4/core/json-schema-generator.ts +126 -0
  210. package/node_modules/zod/src/v4/core/json-schema-processors.ts +666 -0
  211. package/node_modules/zod/src/v4/core/json-schema.ts +147 -0
  212. package/node_modules/zod/src/v4/core/parse.ts +195 -0
  213. package/node_modules/zod/src/v4/core/regexes.ts +190 -0
  214. package/node_modules/zod/src/v4/core/registries.ts +105 -0
  215. package/node_modules/zod/src/v4/core/schemas.ts +4730 -0
  216. package/node_modules/zod/src/v4/core/standard-schema.ts +159 -0
  217. package/node_modules/zod/src/v4/core/tests/extend.test.ts +59 -0
  218. package/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
  219. package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
  220. package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +215 -0
  221. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
  222. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +181 -0
  223. package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +72 -0
  224. package/node_modules/zod/src/v4/core/tests/locales/he.test.ts +379 -0
  225. package/node_modules/zod/src/v4/core/tests/locales/hr.test.ts +163 -0
  226. package/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +46 -0
  227. package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
  228. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
  229. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +105 -0
  230. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +125 -0
  231. package/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +45 -0
  232. package/node_modules/zod/src/v4/core/to-json-schema.ts +622 -0
  233. package/node_modules/zod/src/v4/core/util.ts +983 -0
  234. package/node_modules/zod/src/v4/core/versions.ts +5 -0
  235. package/node_modules/zod/src/v4/core/zsf.ts +323 -0
  236. package/node_modules/zod/src/v4/index.ts +4 -0
  237. package/node_modules/zod/src/v4/locales/ar.ts +115 -0
  238. package/node_modules/zod/src/v4/locales/az.ts +111 -0
  239. package/node_modules/zod/src/v4/locales/be.ts +176 -0
  240. package/node_modules/zod/src/v4/locales/bg.ts +128 -0
  241. package/node_modules/zod/src/v4/locales/ca.ts +116 -0
  242. package/node_modules/zod/src/v4/locales/cs.ts +118 -0
  243. package/node_modules/zod/src/v4/locales/da.ts +123 -0
  244. package/node_modules/zod/src/v4/locales/de.ts +116 -0
  245. package/node_modules/zod/src/v4/locales/el.ts +121 -0
  246. package/node_modules/zod/src/v4/locales/en.ts +123 -0
  247. package/node_modules/zod/src/v4/locales/eo.ts +118 -0
  248. package/node_modules/zod/src/v4/locales/es.ts +141 -0
  249. package/node_modules/zod/src/v4/locales/fa.ts +126 -0
  250. package/node_modules/zod/src/v4/locales/fi.ts +121 -0
  251. package/node_modules/zod/src/v4/locales/fr-CA.ts +116 -0
  252. package/node_modules/zod/src/v4/locales/fr.ts +132 -0
  253. package/node_modules/zod/src/v4/locales/he.ts +246 -0
  254. package/node_modules/zod/src/v4/locales/hr.ts +131 -0
  255. package/node_modules/zod/src/v4/locales/hu.ts +117 -0
  256. package/node_modules/zod/src/v4/locales/hy.ts +164 -0
  257. package/node_modules/zod/src/v4/locales/id.ts +115 -0
  258. package/node_modules/zod/src/v4/locales/index.ts +52 -0
  259. package/node_modules/zod/src/v4/locales/is.ts +119 -0
  260. package/node_modules/zod/src/v4/locales/it.ts +116 -0
  261. package/node_modules/zod/src/v4/locales/ja.ts +114 -0
  262. package/node_modules/zod/src/v4/locales/ka.ts +123 -0
  263. package/node_modules/zod/src/v4/locales/kh.ts +7 -0
  264. package/node_modules/zod/src/v4/locales/km.ts +119 -0
  265. package/node_modules/zod/src/v4/locales/ko.ts +121 -0
  266. package/node_modules/zod/src/v4/locales/lt.ts +239 -0
  267. package/node_modules/zod/src/v4/locales/mk.ts +118 -0
  268. package/node_modules/zod/src/v4/locales/ms.ts +115 -0
  269. package/node_modules/zod/src/v4/locales/nl.ts +121 -0
  270. package/node_modules/zod/src/v4/locales/no.ts +116 -0
  271. package/node_modules/zod/src/v4/locales/ota.ts +117 -0
  272. package/node_modules/zod/src/v4/locales/pl.ts +118 -0
  273. package/node_modules/zod/src/v4/locales/ps.ts +126 -0
  274. package/node_modules/zod/src/v4/locales/pt.ts +116 -0
  275. package/node_modules/zod/src/v4/locales/ro.ts +129 -0
  276. package/node_modules/zod/src/v4/locales/ru.ts +176 -0
  277. package/node_modules/zod/src/v4/locales/sl.ts +118 -0
  278. package/node_modules/zod/src/v4/locales/sv.ts +119 -0
  279. package/node_modules/zod/src/v4/locales/ta.ts +118 -0
  280. package/node_modules/zod/src/v4/locales/th.ts +119 -0
  281. package/node_modules/zod/src/v4/locales/tr.ts +111 -0
  282. package/node_modules/zod/src/v4/locales/ua.ts +7 -0
  283. package/node_modules/zod/src/v4/locales/uk.ts +117 -0
  284. package/node_modules/zod/src/v4/locales/ur.ts +119 -0
  285. package/node_modules/zod/src/v4/locales/uz.ts +117 -0
  286. package/node_modules/zod/src/v4/locales/vi.ts +117 -0
  287. package/node_modules/zod/src/v4/locales/yo.ts +124 -0
  288. package/node_modules/zod/src/v4/locales/zh-CN.ts +116 -0
  289. package/node_modules/zod/src/v4/locales/zh-TW.ts +115 -0
  290. package/node_modules/zod/src/v4/mini/checks.ts +32 -0
  291. package/node_modules/zod/src/v4/mini/coerce.ts +27 -0
  292. package/node_modules/zod/src/v4/mini/external.ts +41 -0
  293. package/node_modules/zod/src/v4/mini/index.ts +3 -0
  294. package/node_modules/zod/src/v4/mini/iso.ts +66 -0
  295. package/node_modules/zod/src/v4/mini/parse.ts +14 -0
  296. package/node_modules/zod/src/v4/mini/schemas.ts +1947 -0
  297. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +24 -0
  298. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +129 -0
  299. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +94 -0
  300. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +144 -0
  301. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +548 -0
  302. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +36 -0
  303. package/node_modules/zod/src/v4/mini/tests/error.test.ts +22 -0
  304. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +5 -0
  305. package/node_modules/zod/src/v4/mini/tests/index.test.ts +993 -0
  306. package/node_modules/zod/src/v4/mini/tests/number.test.ts +95 -0
  307. package/node_modules/zod/src/v4/mini/tests/object.test.ts +227 -0
  308. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
  309. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +325 -0
  310. package/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +50 -0
  311. package/node_modules/zod/src/v4/mini/tests/string.test.ts +352 -0
  312. package/node_modules/zod/src/v4-mini/index.ts +3 -0
  313. package/node_modules/zod/v3/ZodError.cjs +138 -0
  314. package/node_modules/zod/v3/ZodError.d.cts +164 -0
  315. package/node_modules/zod/v3/ZodError.d.ts +164 -0
  316. package/node_modules/zod/v3/ZodError.js +133 -0
  317. package/node_modules/zod/v3/errors.cjs +17 -0
  318. package/node_modules/zod/v3/errors.d.cts +5 -0
  319. package/node_modules/zod/v3/errors.d.ts +5 -0
  320. package/node_modules/zod/v3/errors.js +9 -0
  321. package/node_modules/zod/v3/external.cjs +22 -0
  322. package/node_modules/zod/v3/external.d.cts +6 -0
  323. package/node_modules/zod/v3/external.d.ts +6 -0
  324. package/node_modules/zod/v3/external.js +6 -0
  325. package/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
  326. package/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  327. package/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  328. package/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  329. package/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
  330. package/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  331. package/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  332. package/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  333. package/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
  334. package/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  335. package/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  336. package/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  337. package/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
  338. package/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  339. package/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  340. package/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  341. package/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
  342. package/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  343. package/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  344. package/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  345. package/node_modules/zod/v3/helpers/util.cjs +137 -0
  346. package/node_modules/zod/v3/helpers/util.d.cts +85 -0
  347. package/node_modules/zod/v3/helpers/util.d.ts +85 -0
  348. package/node_modules/zod/v3/helpers/util.js +133 -0
  349. package/node_modules/zod/v3/index.cjs +33 -0
  350. package/node_modules/zod/v3/index.d.cts +4 -0
  351. package/node_modules/zod/v3/index.d.ts +4 -0
  352. package/node_modules/zod/v3/index.js +4 -0
  353. package/node_modules/zod/v3/locales/en.cjs +112 -0
  354. package/node_modules/zod/v3/locales/en.d.cts +3 -0
  355. package/node_modules/zod/v3/locales/en.d.ts +3 -0
  356. package/node_modules/zod/v3/locales/en.js +109 -0
  357. package/node_modules/zod/v3/package.json +7 -0
  358. package/node_modules/zod/v3/standard-schema.cjs +2 -0
  359. package/node_modules/zod/v3/standard-schema.d.cts +102 -0
  360. package/node_modules/zod/v3/standard-schema.d.ts +102 -0
  361. package/node_modules/zod/v3/standard-schema.js +1 -0
  362. package/node_modules/zod/v3/types.cjs +3777 -0
  363. package/node_modules/zod/v3/types.d.cts +1034 -0
  364. package/node_modules/zod/v3/types.d.ts +1034 -0
  365. package/node_modules/zod/v3/types.js +3695 -0
  366. package/node_modules/zod/v4/classic/checks.cjs +33 -0
  367. package/node_modules/zod/v4/classic/checks.d.cts +1 -0
  368. package/node_modules/zod/v4/classic/checks.d.ts +1 -0
  369. package/node_modules/zod/v4/classic/checks.js +1 -0
  370. package/node_modules/zod/v4/classic/coerce.cjs +47 -0
  371. package/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  372. package/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  373. package/node_modules/zod/v4/classic/coerce.js +17 -0
  374. package/node_modules/zod/v4/classic/compat.cjs +61 -0
  375. package/node_modules/zod/v4/classic/compat.d.cts +50 -0
  376. package/node_modules/zod/v4/classic/compat.d.ts +50 -0
  377. package/node_modules/zod/v4/classic/compat.js +31 -0
  378. package/node_modules/zod/v4/classic/errors.cjs +74 -0
  379. package/node_modules/zod/v4/classic/errors.d.cts +30 -0
  380. package/node_modules/zod/v4/classic/errors.d.ts +30 -0
  381. package/node_modules/zod/v4/classic/errors.js +48 -0
  382. package/node_modules/zod/v4/classic/external.cjs +73 -0
  383. package/node_modules/zod/v4/classic/external.d.cts +16 -0
  384. package/node_modules/zod/v4/classic/external.d.ts +16 -0
  385. package/node_modules/zod/v4/classic/external.js +20 -0
  386. package/node_modules/zod/v4/classic/from-json-schema.cjs +625 -0
  387. package/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
  388. package/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
  389. package/node_modules/zod/v4/classic/from-json-schema.js +599 -0
  390. package/node_modules/zod/v4/classic/index.cjs +33 -0
  391. package/node_modules/zod/v4/classic/index.d.cts +4 -0
  392. package/node_modules/zod/v4/classic/index.d.ts +4 -0
  393. package/node_modules/zod/v4/classic/index.js +4 -0
  394. package/node_modules/zod/v4/classic/iso.cjs +60 -0
  395. package/node_modules/zod/v4/classic/iso.d.cts +22 -0
  396. package/node_modules/zod/v4/classic/iso.d.ts +22 -0
  397. package/node_modules/zod/v4/classic/iso.js +30 -0
  398. package/node_modules/zod/v4/classic/package.json +7 -0
  399. package/node_modules/zod/v4/classic/parse.cjs +41 -0
  400. package/node_modules/zod/v4/classic/parse.d.cts +31 -0
  401. package/node_modules/zod/v4/classic/parse.d.ts +31 -0
  402. package/node_modules/zod/v4/classic/parse.js +15 -0
  403. package/node_modules/zod/v4/classic/schemas.cjs +1511 -0
  404. package/node_modules/zod/v4/classic/schemas.d.cts +767 -0
  405. package/node_modules/zod/v4/classic/schemas.d.ts +767 -0
  406. package/node_modules/zod/v4/classic/schemas.js +1395 -0
  407. package/node_modules/zod/v4/core/api.cjs +1227 -0
  408. package/node_modules/zod/v4/core/api.d.cts +325 -0
  409. package/node_modules/zod/v4/core/api.d.ts +325 -0
  410. package/node_modules/zod/v4/core/api.js +1087 -0
  411. package/node_modules/zod/v4/core/checks.cjs +601 -0
  412. package/node_modules/zod/v4/core/checks.d.cts +278 -0
  413. package/node_modules/zod/v4/core/checks.d.ts +278 -0
  414. package/node_modules/zod/v4/core/checks.js +575 -0
  415. package/node_modules/zod/v4/core/core.cjs +85 -0
  416. package/node_modules/zod/v4/core/core.d.cts +70 -0
  417. package/node_modules/zod/v4/core/core.d.ts +70 -0
  418. package/node_modules/zod/v4/core/core.js +78 -0
  419. package/node_modules/zod/v4/core/doc.cjs +39 -0
  420. package/node_modules/zod/v4/core/doc.d.cts +14 -0
  421. package/node_modules/zod/v4/core/doc.d.ts +14 -0
  422. package/node_modules/zod/v4/core/doc.js +35 -0
  423. package/node_modules/zod/v4/core/errors.cjs +216 -0
  424. package/node_modules/zod/v4/core/errors.d.cts +221 -0
  425. package/node_modules/zod/v4/core/errors.d.ts +221 -0
  426. package/node_modules/zod/v4/core/errors.js +185 -0
  427. package/node_modules/zod/v4/core/index.cjs +47 -0
  428. package/node_modules/zod/v4/core/index.d.cts +16 -0
  429. package/node_modules/zod/v4/core/index.d.ts +16 -0
  430. package/node_modules/zod/v4/core/index.js +16 -0
  431. package/node_modules/zod/v4/core/json-schema-generator.cjs +99 -0
  432. package/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
  433. package/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
  434. package/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  435. package/node_modules/zod/v4/core/json-schema-processors.cjs +644 -0
  436. package/node_modules/zod/v4/core/json-schema-processors.d.cts +49 -0
  437. package/node_modules/zod/v4/core/json-schema-processors.d.ts +49 -0
  438. package/node_modules/zod/v4/core/json-schema-processors.js +601 -0
  439. package/node_modules/zod/v4/core/json-schema.cjs +2 -0
  440. package/node_modules/zod/v4/core/json-schema.d.cts +88 -0
  441. package/node_modules/zod/v4/core/json-schema.d.ts +88 -0
  442. package/node_modules/zod/v4/core/json-schema.js +1 -0
  443. package/node_modules/zod/v4/core/package.json +7 -0
  444. package/node_modules/zod/v4/core/parse.cjs +131 -0
  445. package/node_modules/zod/v4/core/parse.d.cts +49 -0
  446. package/node_modules/zod/v4/core/parse.d.ts +49 -0
  447. package/node_modules/zod/v4/core/parse.js +93 -0
  448. package/node_modules/zod/v4/core/regexes.cjs +172 -0
  449. package/node_modules/zod/v4/core/regexes.d.cts +85 -0
  450. package/node_modules/zod/v4/core/regexes.d.ts +85 -0
  451. package/node_modules/zod/v4/core/regexes.js +139 -0
  452. package/node_modules/zod/v4/core/registries.cjs +56 -0
  453. package/node_modules/zod/v4/core/registries.d.cts +35 -0
  454. package/node_modules/zod/v4/core/registries.d.ts +35 -0
  455. package/node_modules/zod/v4/core/registries.js +51 -0
  456. package/node_modules/zod/v4/core/schemas.cjs +2270 -0
  457. package/node_modules/zod/v4/core/schemas.d.cts +1184 -0
  458. package/node_modules/zod/v4/core/schemas.d.ts +1184 -0
  459. package/node_modules/zod/v4/core/schemas.js +2239 -0
  460. package/node_modules/zod/v4/core/standard-schema.cjs +2 -0
  461. package/node_modules/zod/v4/core/standard-schema.d.cts +126 -0
  462. package/node_modules/zod/v4/core/standard-schema.d.ts +126 -0
  463. package/node_modules/zod/v4/core/standard-schema.js +1 -0
  464. package/node_modules/zod/v4/core/to-json-schema.cjs +457 -0
  465. package/node_modules/zod/v4/core/to-json-schema.d.cts +114 -0
  466. package/node_modules/zod/v4/core/to-json-schema.d.ts +114 -0
  467. package/node_modules/zod/v4/core/to-json-schema.js +448 -0
  468. package/node_modules/zod/v4/core/util.cjs +734 -0
  469. package/node_modules/zod/v4/core/util.d.cts +200 -0
  470. package/node_modules/zod/v4/core/util.d.ts +200 -0
  471. package/node_modules/zod/v4/core/util.js +674 -0
  472. package/node_modules/zod/v4/core/versions.cjs +8 -0
  473. package/node_modules/zod/v4/core/versions.d.cts +5 -0
  474. package/node_modules/zod/v4/core/versions.d.ts +5 -0
  475. package/node_modules/zod/v4/core/versions.js +5 -0
  476. package/node_modules/zod/v4/index.cjs +22 -0
  477. package/node_modules/zod/v4/index.d.cts +3 -0
  478. package/node_modules/zod/v4/index.d.ts +3 -0
  479. package/node_modules/zod/v4/index.js +3 -0
  480. package/node_modules/zod/v4/locales/ar.cjs +133 -0
  481. package/node_modules/zod/v4/locales/ar.d.cts +5 -0
  482. package/node_modules/zod/v4/locales/ar.d.ts +4 -0
  483. package/node_modules/zod/v4/locales/ar.js +106 -0
  484. package/node_modules/zod/v4/locales/az.cjs +132 -0
  485. package/node_modules/zod/v4/locales/az.d.cts +5 -0
  486. package/node_modules/zod/v4/locales/az.d.ts +4 -0
  487. package/node_modules/zod/v4/locales/az.js +105 -0
  488. package/node_modules/zod/v4/locales/be.cjs +183 -0
  489. package/node_modules/zod/v4/locales/be.d.cts +5 -0
  490. package/node_modules/zod/v4/locales/be.d.ts +4 -0
  491. package/node_modules/zod/v4/locales/be.js +156 -0
  492. package/node_modules/zod/v4/locales/bg.cjs +147 -0
  493. package/node_modules/zod/v4/locales/bg.d.cts +5 -0
  494. package/node_modules/zod/v4/locales/bg.d.ts +4 -0
  495. package/node_modules/zod/v4/locales/bg.js +120 -0
  496. package/node_modules/zod/v4/locales/ca.cjs +134 -0
  497. package/node_modules/zod/v4/locales/ca.d.cts +5 -0
  498. package/node_modules/zod/v4/locales/ca.d.ts +4 -0
  499. package/node_modules/zod/v4/locales/ca.js +107 -0
  500. package/node_modules/zod/v4/locales/cs.cjs +138 -0
  501. package/node_modules/zod/v4/locales/cs.d.cts +5 -0
  502. package/node_modules/zod/v4/locales/cs.d.ts +4 -0
  503. package/node_modules/zod/v4/locales/cs.js +111 -0
  504. package/node_modules/zod/v4/locales/da.cjs +142 -0
  505. package/node_modules/zod/v4/locales/da.d.cts +5 -0
  506. package/node_modules/zod/v4/locales/da.d.ts +4 -0
  507. package/node_modules/zod/v4/locales/da.js +115 -0
  508. package/node_modules/zod/v4/locales/de.cjs +135 -0
  509. package/node_modules/zod/v4/locales/de.d.cts +5 -0
  510. package/node_modules/zod/v4/locales/de.d.ts +4 -0
  511. package/node_modules/zod/v4/locales/de.js +108 -0
  512. package/node_modules/zod/v4/locales/el.cjs +136 -0
  513. package/node_modules/zod/v4/locales/el.d.cts +5 -0
  514. package/node_modules/zod/v4/locales/el.d.ts +4 -0
  515. package/node_modules/zod/v4/locales/el.js +109 -0
  516. package/node_modules/zod/v4/locales/en.cjs +140 -0
  517. package/node_modules/zod/v4/locales/en.d.cts +5 -0
  518. package/node_modules/zod/v4/locales/en.d.ts +4 -0
  519. package/node_modules/zod/v4/locales/en.js +113 -0
  520. package/node_modules/zod/v4/locales/eo.cjs +136 -0
  521. package/node_modules/zod/v4/locales/eo.d.cts +5 -0
  522. package/node_modules/zod/v4/locales/eo.d.ts +4 -0
  523. package/node_modules/zod/v4/locales/eo.js +109 -0
  524. package/node_modules/zod/v4/locales/es.cjs +159 -0
  525. package/node_modules/zod/v4/locales/es.d.cts +5 -0
  526. package/node_modules/zod/v4/locales/es.d.ts +4 -0
  527. package/node_modules/zod/v4/locales/es.js +132 -0
  528. package/node_modules/zod/v4/locales/fa.cjs +141 -0
  529. package/node_modules/zod/v4/locales/fa.d.cts +5 -0
  530. package/node_modules/zod/v4/locales/fa.d.ts +4 -0
  531. package/node_modules/zod/v4/locales/fa.js +114 -0
  532. package/node_modules/zod/v4/locales/fi.cjs +139 -0
  533. package/node_modules/zod/v4/locales/fi.d.cts +5 -0
  534. package/node_modules/zod/v4/locales/fi.d.ts +4 -0
  535. package/node_modules/zod/v4/locales/fi.js +112 -0
  536. package/node_modules/zod/v4/locales/fr-CA.cjs +134 -0
  537. package/node_modules/zod/v4/locales/fr-CA.d.cts +5 -0
  538. package/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  539. package/node_modules/zod/v4/locales/fr-CA.js +107 -0
  540. package/node_modules/zod/v4/locales/fr.cjs +152 -0
  541. package/node_modules/zod/v4/locales/fr.d.cts +5 -0
  542. package/node_modules/zod/v4/locales/fr.d.ts +4 -0
  543. package/node_modules/zod/v4/locales/fr.js +125 -0
  544. package/node_modules/zod/v4/locales/he.cjs +241 -0
  545. package/node_modules/zod/v4/locales/he.d.cts +5 -0
  546. package/node_modules/zod/v4/locales/he.d.ts +4 -0
  547. package/node_modules/zod/v4/locales/he.js +214 -0
  548. package/node_modules/zod/v4/locales/hr.cjs +149 -0
  549. package/node_modules/zod/v4/locales/hr.d.cts +5 -0
  550. package/node_modules/zod/v4/locales/hr.d.ts +4 -0
  551. package/node_modules/zod/v4/locales/hr.js +122 -0
  552. package/node_modules/zod/v4/locales/hu.cjs +135 -0
  553. package/node_modules/zod/v4/locales/hu.d.cts +5 -0
  554. package/node_modules/zod/v4/locales/hu.d.ts +4 -0
  555. package/node_modules/zod/v4/locales/hu.js +108 -0
  556. package/node_modules/zod/v4/locales/hy.cjs +174 -0
  557. package/node_modules/zod/v4/locales/hy.d.cts +5 -0
  558. package/node_modules/zod/v4/locales/hy.d.ts +4 -0
  559. package/node_modules/zod/v4/locales/hy.js +147 -0
  560. package/node_modules/zod/v4/locales/id.cjs +133 -0
  561. package/node_modules/zod/v4/locales/id.d.cts +5 -0
  562. package/node_modules/zod/v4/locales/id.d.ts +4 -0
  563. package/node_modules/zod/v4/locales/id.js +106 -0
  564. package/node_modules/zod/v4/locales/index.cjs +111 -0
  565. package/node_modules/zod/v4/locales/index.d.cts +52 -0
  566. package/node_modules/zod/v4/locales/index.d.ts +52 -0
  567. package/node_modules/zod/v4/locales/index.js +52 -0
  568. package/node_modules/zod/v4/locales/is.cjs +136 -0
  569. package/node_modules/zod/v4/locales/is.d.cts +5 -0
  570. package/node_modules/zod/v4/locales/is.d.ts +4 -0
  571. package/node_modules/zod/v4/locales/is.js +109 -0
  572. package/node_modules/zod/v4/locales/it.cjs +135 -0
  573. package/node_modules/zod/v4/locales/it.d.cts +5 -0
  574. package/node_modules/zod/v4/locales/it.d.ts +4 -0
  575. package/node_modules/zod/v4/locales/it.js +108 -0
  576. package/node_modules/zod/v4/locales/ja.cjs +134 -0
  577. package/node_modules/zod/v4/locales/ja.d.cts +5 -0
  578. package/node_modules/zod/v4/locales/ja.d.ts +4 -0
  579. package/node_modules/zod/v4/locales/ja.js +107 -0
  580. package/node_modules/zod/v4/locales/ka.cjs +139 -0
  581. package/node_modules/zod/v4/locales/ka.d.cts +5 -0
  582. package/node_modules/zod/v4/locales/ka.d.ts +4 -0
  583. package/node_modules/zod/v4/locales/ka.js +112 -0
  584. package/node_modules/zod/v4/locales/kh.cjs +12 -0
  585. package/node_modules/zod/v4/locales/kh.d.cts +5 -0
  586. package/node_modules/zod/v4/locales/kh.d.ts +5 -0
  587. package/node_modules/zod/v4/locales/kh.js +5 -0
  588. package/node_modules/zod/v4/locales/km.cjs +137 -0
  589. package/node_modules/zod/v4/locales/km.d.cts +5 -0
  590. package/node_modules/zod/v4/locales/km.d.ts +4 -0
  591. package/node_modules/zod/v4/locales/km.js +110 -0
  592. package/node_modules/zod/v4/locales/ko.cjs +138 -0
  593. package/node_modules/zod/v4/locales/ko.d.cts +5 -0
  594. package/node_modules/zod/v4/locales/ko.d.ts +4 -0
  595. package/node_modules/zod/v4/locales/ko.js +111 -0
  596. package/node_modules/zod/v4/locales/lt.cjs +230 -0
  597. package/node_modules/zod/v4/locales/lt.d.cts +5 -0
  598. package/node_modules/zod/v4/locales/lt.d.ts +4 -0
  599. package/node_modules/zod/v4/locales/lt.js +203 -0
  600. package/node_modules/zod/v4/locales/mk.cjs +136 -0
  601. package/node_modules/zod/v4/locales/mk.d.cts +5 -0
  602. package/node_modules/zod/v4/locales/mk.d.ts +4 -0
  603. package/node_modules/zod/v4/locales/mk.js +109 -0
  604. package/node_modules/zod/v4/locales/ms.cjs +134 -0
  605. package/node_modules/zod/v4/locales/ms.d.cts +5 -0
  606. package/node_modules/zod/v4/locales/ms.d.ts +4 -0
  607. package/node_modules/zod/v4/locales/ms.js +107 -0
  608. package/node_modules/zod/v4/locales/nl.cjs +137 -0
  609. package/node_modules/zod/v4/locales/nl.d.cts +5 -0
  610. package/node_modules/zod/v4/locales/nl.d.ts +4 -0
  611. package/node_modules/zod/v4/locales/nl.js +110 -0
  612. package/node_modules/zod/v4/locales/no.cjs +135 -0
  613. package/node_modules/zod/v4/locales/no.d.cts +5 -0
  614. package/node_modules/zod/v4/locales/no.d.ts +4 -0
  615. package/node_modules/zod/v4/locales/no.js +108 -0
  616. package/node_modules/zod/v4/locales/ota.cjs +136 -0
  617. package/node_modules/zod/v4/locales/ota.d.cts +5 -0
  618. package/node_modules/zod/v4/locales/ota.d.ts +4 -0
  619. package/node_modules/zod/v4/locales/ota.js +109 -0
  620. package/node_modules/zod/v4/locales/package.json +7 -0
  621. package/node_modules/zod/v4/locales/pl.cjs +136 -0
  622. package/node_modules/zod/v4/locales/pl.d.cts +5 -0
  623. package/node_modules/zod/v4/locales/pl.d.ts +4 -0
  624. package/node_modules/zod/v4/locales/pl.js +109 -0
  625. package/node_modules/zod/v4/locales/ps.cjs +141 -0
  626. package/node_modules/zod/v4/locales/ps.d.cts +5 -0
  627. package/node_modules/zod/v4/locales/ps.d.ts +4 -0
  628. package/node_modules/zod/v4/locales/ps.js +114 -0
  629. package/node_modules/zod/v4/locales/pt.cjs +135 -0
  630. package/node_modules/zod/v4/locales/pt.d.cts +5 -0
  631. package/node_modules/zod/v4/locales/pt.d.ts +4 -0
  632. package/node_modules/zod/v4/locales/pt.js +108 -0
  633. package/node_modules/zod/v4/locales/ro.cjs +146 -0
  634. package/node_modules/zod/v4/locales/ro.d.cts +5 -0
  635. package/node_modules/zod/v4/locales/ro.d.ts +4 -0
  636. package/node_modules/zod/v4/locales/ro.js +119 -0
  637. package/node_modules/zod/v4/locales/ru.cjs +183 -0
  638. package/node_modules/zod/v4/locales/ru.d.cts +5 -0
  639. package/node_modules/zod/v4/locales/ru.d.ts +4 -0
  640. package/node_modules/zod/v4/locales/ru.js +156 -0
  641. package/node_modules/zod/v4/locales/sl.cjs +136 -0
  642. package/node_modules/zod/v4/locales/sl.d.cts +5 -0
  643. package/node_modules/zod/v4/locales/sl.d.ts +4 -0
  644. package/node_modules/zod/v4/locales/sl.js +109 -0
  645. package/node_modules/zod/v4/locales/sv.cjs +137 -0
  646. package/node_modules/zod/v4/locales/sv.d.cts +5 -0
  647. package/node_modules/zod/v4/locales/sv.d.ts +4 -0
  648. package/node_modules/zod/v4/locales/sv.js +110 -0
  649. package/node_modules/zod/v4/locales/ta.cjs +137 -0
  650. package/node_modules/zod/v4/locales/ta.d.cts +5 -0
  651. package/node_modules/zod/v4/locales/ta.d.ts +4 -0
  652. package/node_modules/zod/v4/locales/ta.js +110 -0
  653. package/node_modules/zod/v4/locales/th.cjs +137 -0
  654. package/node_modules/zod/v4/locales/th.d.cts +5 -0
  655. package/node_modules/zod/v4/locales/th.d.ts +4 -0
  656. package/node_modules/zod/v4/locales/th.js +110 -0
  657. package/node_modules/zod/v4/locales/tr.cjs +132 -0
  658. package/node_modules/zod/v4/locales/tr.d.cts +5 -0
  659. package/node_modules/zod/v4/locales/tr.d.ts +4 -0
  660. package/node_modules/zod/v4/locales/tr.js +105 -0
  661. package/node_modules/zod/v4/locales/ua.cjs +12 -0
  662. package/node_modules/zod/v4/locales/ua.d.cts +5 -0
  663. package/node_modules/zod/v4/locales/ua.d.ts +5 -0
  664. package/node_modules/zod/v4/locales/ua.js +5 -0
  665. package/node_modules/zod/v4/locales/uk.cjs +135 -0
  666. package/node_modules/zod/v4/locales/uk.d.cts +5 -0
  667. package/node_modules/zod/v4/locales/uk.d.ts +4 -0
  668. package/node_modules/zod/v4/locales/uk.js +108 -0
  669. package/node_modules/zod/v4/locales/ur.cjs +137 -0
  670. package/node_modules/zod/v4/locales/ur.d.cts +5 -0
  671. package/node_modules/zod/v4/locales/ur.d.ts +4 -0
  672. package/node_modules/zod/v4/locales/ur.js +110 -0
  673. package/node_modules/zod/v4/locales/uz.cjs +137 -0
  674. package/node_modules/zod/v4/locales/uz.d.cts +5 -0
  675. package/node_modules/zod/v4/locales/uz.d.ts +4 -0
  676. package/node_modules/zod/v4/locales/uz.js +110 -0
  677. package/node_modules/zod/v4/locales/vi.cjs +135 -0
  678. package/node_modules/zod/v4/locales/vi.d.cts +5 -0
  679. package/node_modules/zod/v4/locales/vi.d.ts +4 -0
  680. package/node_modules/zod/v4/locales/vi.js +108 -0
  681. package/node_modules/zod/v4/locales/yo.cjs +134 -0
  682. package/node_modules/zod/v4/locales/yo.d.cts +5 -0
  683. package/node_modules/zod/v4/locales/yo.d.ts +4 -0
  684. package/node_modules/zod/v4/locales/yo.js +107 -0
  685. package/node_modules/zod/v4/locales/zh-CN.cjs +136 -0
  686. package/node_modules/zod/v4/locales/zh-CN.d.cts +5 -0
  687. package/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  688. package/node_modules/zod/v4/locales/zh-CN.js +109 -0
  689. package/node_modules/zod/v4/locales/zh-TW.cjs +134 -0
  690. package/node_modules/zod/v4/locales/zh-TW.d.cts +5 -0
  691. package/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  692. package/node_modules/zod/v4/locales/zh-TW.js +107 -0
  693. package/node_modules/zod/v4/mini/checks.cjs +34 -0
  694. package/node_modules/zod/v4/mini/checks.d.cts +1 -0
  695. package/node_modules/zod/v4/mini/checks.d.ts +1 -0
  696. package/node_modules/zod/v4/mini/checks.js +1 -0
  697. package/node_modules/zod/v4/mini/coerce.cjs +52 -0
  698. package/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  699. package/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  700. package/node_modules/zod/v4/mini/coerce.js +22 -0
  701. package/node_modules/zod/v4/mini/external.cjs +63 -0
  702. package/node_modules/zod/v4/mini/external.d.cts +13 -0
  703. package/node_modules/zod/v4/mini/external.d.ts +13 -0
  704. package/node_modules/zod/v4/mini/external.js +14 -0
  705. package/node_modules/zod/v4/mini/index.cjs +32 -0
  706. package/node_modules/zod/v4/mini/index.d.cts +3 -0
  707. package/node_modules/zod/v4/mini/index.d.ts +3 -0
  708. package/node_modules/zod/v4/mini/index.js +3 -0
  709. package/node_modules/zod/v4/mini/iso.cjs +64 -0
  710. package/node_modules/zod/v4/mini/iso.d.cts +22 -0
  711. package/node_modules/zod/v4/mini/iso.d.ts +22 -0
  712. package/node_modules/zod/v4/mini/iso.js +34 -0
  713. package/node_modules/zod/v4/mini/package.json +7 -0
  714. package/node_modules/zod/v4/mini/parse.cjs +16 -0
  715. package/node_modules/zod/v4/mini/parse.d.cts +1 -0
  716. package/node_modules/zod/v4/mini/parse.d.ts +1 -0
  717. package/node_modules/zod/v4/mini/parse.js +1 -0
  718. package/node_modules/zod/v4/mini/schemas.cjs +1083 -0
  719. package/node_modules/zod/v4/mini/schemas.d.cts +445 -0
  720. package/node_modules/zod/v4/mini/schemas.d.ts +445 -0
  721. package/node_modules/zod/v4/mini/schemas.js +961 -0
  722. package/node_modules/zod/v4/package.json +7 -0
  723. package/node_modules/zod/v4-mini/index.cjs +32 -0
  724. package/node_modules/zod/v4-mini/index.d.cts +3 -0
  725. package/node_modules/zod/v4-mini/index.d.ts +3 -0
  726. package/node_modules/zod/v4-mini/index.js +3 -0
  727. package/node_modules/zod/v4-mini/package.json +7 -0
  728. package/package.json +8 -6
package/dist/api.js CHANGED
@@ -1,4 +1,4 @@
1
- import { n as runFirecrawlScrape } from "./firecrawl-client-DZohiNQK.js";
1
+ import { n as runFirecrawlScrape } from "./firecrawl-client-mz7GIgb4.js";
2
2
  import { readStringValue } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  //#region extensions/firecrawl/api.ts
4
4
  async function fetchFirecrawlContent(params) {
@@ -1,11 +1,12 @@
1
+ import { parseFiniteNumber } from "openclaw/plugin-sdk/number-runtime";
1
2
  import { readProviderJsonObjectResponse } from "openclaw/plugin-sdk/provider-http";
2
- import { DEFAULT_CACHE_TTL_MINUTES, markdownToText, normalizeCacheKey, readCache, readResponseText, resolveCacheTtlMs, resolvePositiveTimeoutSeconds, truncateText, withSelfHostedWebToolsEndpoint, withStrictWebToolsEndpoint, writeCache } from "openclaw/plugin-sdk/provider-web-fetch";
3
- import { normalizeSecretInput, resolveSecretInputString } from "openclaw/plugin-sdk/secret-input";
4
- import { wrapExternalContent, wrapWebContent } from "openclaw/plugin-sdk/security-runtime";
3
+ import { DEFAULT_CACHE_TTL_MINUTES, markdownToText, normalizeCacheKey, readCache, readResponseText, resolveCacheTtlMs, resolvePositiveTimeoutSeconds, withSelfHostedWebToolsEndpoint, withStrictWebToolsEndpoint, writeCache } from "openclaw/plugin-sdk/provider-web-fetch";
4
+ import { normalizeSecretInput } from "openclaw/plugin-sdk/secret-input";
5
+ import { truncateSanitizedExternalContent, wrapExternalContent, wrapWebContent } from "openclaw/plugin-sdk/security-runtime";
5
6
  import { SsrFBlockedError, isBlockedHostnameOrIp, isPrivateIpAddress, resolvePinnedHostnameWithPolicy } from "openclaw/plugin-sdk/ssrf-runtime";
6
7
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
7
- import { truncateUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
8
- import { canResolveEnvSecretRefInReadOnlyPath } from "openclaw/plugin-sdk/extension-shared";
8
+ import { z } from "zod";
9
+ import { resolveReadOnlyEnvSecretRef } from "openclaw/plugin-sdk/secret-ref-readonly";
9
10
  //#region \0rolldown/runtime.js
10
11
  var __defProp = Object.defineProperty;
11
12
  var __exportAll = (all, no_symbols) => {
@@ -30,33 +31,13 @@ function resolveFirecrawlFetchConfig(cfg) {
30
31
  if (pluginWebFetch && typeof pluginWebFetch === "object" && !Array.isArray(pluginWebFetch)) return pluginWebFetch;
31
32
  }
32
33
  function resolveConfiguredSecret(value, path, cfg) {
33
- const resolved = resolveSecretInputString({
34
+ return resolveReadOnlyEnvSecretRef({
34
35
  value,
35
36
  path,
36
- defaults: cfg?.secrets?.defaults,
37
- mode: "inspect"
38
- });
39
- if (resolved.status === "available") {
40
- const normalized = normalizeSecretInput(resolved.value);
41
- return normalized ? {
42
- status: "available",
43
- value: normalized
44
- } : { status: "missing" };
45
- }
46
- if (resolved.status === "missing") return { status: "missing" };
47
- if (resolved.ref.source !== "env") return { status: "blocked" };
48
- const envVarName = resolved.ref.id.trim();
49
- if (envVarName !== FIRECRAWL_API_KEY_ENV_VAR) return { status: "blocked" };
50
- if (!canResolveEnvSecretRefInReadOnlyPath({
51
37
  cfg,
52
- provider: resolved.ref.provider,
53
- id: envVarName
54
- })) return { status: "blocked" };
55
- const envValue = normalizeSecretInput(process.env[envVarName]);
56
- return envValue ? {
57
- status: "available",
58
- value: envValue
59
- } : { status: "missing" };
38
+ expectedEnvId: FIRECRAWL_API_KEY_ENV_VAR,
39
+ normalizeValue: normalizeSecretInput
40
+ });
60
41
  }
61
42
  function resolveFirecrawlApiKey(cfg) {
62
43
  const pluginConfig = cfg?.plugins?.entries?.firecrawl?.config;
@@ -103,7 +84,6 @@ function resolveFirecrawlSearchTimeoutSeconds(override) {
103
84
  //#endregion
104
85
  //#region extensions/firecrawl/src/firecrawl-client.ts
105
86
  var firecrawl_client_exports = /* @__PURE__ */ __exportAll({
106
- __testing: () => testing,
107
87
  assertFirecrawlScrapeTargetAllowed: () => assertFirecrawlScrapeTargetAllowed,
108
88
  parseFirecrawlScrapePayload: () => parseFirecrawlScrapePayload,
109
89
  runFirecrawlScrape: () => runFirecrawlScrape,
@@ -111,11 +91,15 @@ var firecrawl_client_exports = /* @__PURE__ */ __exportAll({
111
91
  testing: () => testing
112
92
  });
113
93
  const SEARCH_CACHE = /* @__PURE__ */ new Map();
114
- const SCRAPE_CACHE = /* @__PURE__ */ new Map();
115
94
  const DEFAULT_SEARCH_COUNT = 5;
95
+ const FIRECRAWL_SEARCH_MAX_RESULTS = 100;
96
+ const FIRECRAWL_SEARCH_MAX_CONTENT_CHARS = 2e4;
116
97
  const DEFAULT_SCRAPE_MAX_CHARS = 5e4;
98
+ const FIRECRAWL_SCRAPE_METADATA_MAX_CHARS = 4e3;
99
+ const FIRECRAWL_RESULT_URL_MAX_CHARS = 2048;
117
100
  const FIRECRAWL_SCRAPE_RESPONSE_MAX_BYTES = 64 * 1024 * 1024;
118
101
  const ALLOWED_FIRECRAWL_HOSTS = /* @__PURE__ */ new Set(["api.firecrawl.dev"]);
102
+ const FIRECRAWL_PUBLISHED_DATE_RE = /^\d{4}-\d{2}-\d{2}(?:[T ][\d:.+Z-]{0,20})?$/u;
119
103
  const FIRECRAWL_SELF_HOSTED_PRIVATE_ERROR = "Firecrawl custom baseUrl must target a private or internal self-hosted endpoint.";
120
104
  const FIRECRAWL_HTTP_PRIVATE_ERROR = "Firecrawl HTTP baseUrl must target a private or internal self-hosted endpoint. Use https:// for public hosts.";
121
105
  async function readFirecrawlJsonResponse(response, label, opts) {
@@ -173,9 +157,10 @@ async function resolveEndpoint(baseUrl, pathname, lookupFn) {
173
157
  }
174
158
  async function postFirecrawlJson(params, parse) {
175
159
  const apiKey = normalizeSecretInput(params.apiKey);
176
- return await ((params.mode ?? await validateFirecrawlBaseUrl(params.url)) === "selfHosted" ? withSelfHostedWebToolsEndpoint : withStrictWebToolsEndpoint)({
160
+ const result = await ((params.mode ?? await validateFirecrawlBaseUrl(params.url)) === "selfHosted" ? withSelfHostedWebToolsEndpoint : withStrictWebToolsEndpoint)({
177
161
  url: params.url,
178
162
  timeoutSeconds: params.timeoutSeconds,
163
+ ...params.signal ? { signal: params.signal } : {},
179
164
  init: {
180
165
  method: "POST",
181
166
  headers: {
@@ -204,11 +189,13 @@ async function postFirecrawlJson(params, parse) {
204
189
  const errorBody = await readResponseText(response, { maxBytes: 64e3 });
205
190
  if (errorBody.text) detail = errorBody.text;
206
191
  }
207
- const safeDetail = wrapWebContent(truncateUtf16Safe(detail, 1e3), "web_fetch");
192
+ const safeDetail = wrapWebContent(truncateSanitizedExternalContent(detail, 1e3).text, "web_fetch");
208
193
  throw new Error(`${params.errorLabel} API error (${response.status}): ${safeDetail}`);
209
194
  }
210
195
  return await parse(response);
211
196
  });
197
+ params.signal?.throwIfAborted();
198
+ return result;
212
199
  }
213
200
  function resolveSiteName(urlRaw) {
214
201
  try {
@@ -217,27 +204,72 @@ function resolveSiteName(urlRaw) {
217
204
  return;
218
205
  }
219
206
  }
207
+ function normalizeFirecrawlResultUrl(value) {
208
+ if (typeof value !== "string" || value.length > FIRECRAWL_RESULT_URL_MAX_CHARS) return;
209
+ try {
210
+ const url = new URL(value);
211
+ if (url.protocol !== "http:" && url.protocol !== "https:" || url.href.length > FIRECRAWL_RESULT_URL_MAX_CHARS) return;
212
+ return url.href === `${value}/` ? value : url.href;
213
+ } catch {
214
+ return;
215
+ }
216
+ }
217
+ const optionalFirecrawlStringSchema = z.string().optional().catch(void 0);
218
+ const invalidFirecrawlSearchItemSchema = z.unknown().transform(() => null);
219
+ const firecrawlSearchMetadataSchema = z.object({
220
+ sourceURL: optionalFirecrawlStringSchema,
221
+ title: optionalFirecrawlStringSchema,
222
+ publishedTime: optionalFirecrawlStringSchema,
223
+ publishedDate: optionalFirecrawlStringSchema
224
+ }).optional().catch(void 0);
225
+ const firecrawlSearchItemSchema = z.object({
226
+ url: optionalFirecrawlStringSchema,
227
+ sourceURL: optionalFirecrawlStringSchema,
228
+ sourceUrl: optionalFirecrawlStringSchema,
229
+ title: optionalFirecrawlStringSchema,
230
+ description: optionalFirecrawlStringSchema,
231
+ snippet: optionalFirecrawlStringSchema,
232
+ summary: optionalFirecrawlStringSchema,
233
+ markdown: optionalFirecrawlStringSchema,
234
+ content: optionalFirecrawlStringSchema,
235
+ text: optionalFirecrawlStringSchema,
236
+ publishedDate: optionalFirecrawlStringSchema,
237
+ published: optionalFirecrawlStringSchema,
238
+ metadata: firecrawlSearchMetadataSchema
239
+ });
240
+ const firecrawlSearchItemsSchema = z.array(z.union([firecrawlSearchItemSchema, invalidFirecrawlSearchItemSchema])).transform((items) => items.filter((item) => item !== null));
241
+ const firecrawlNestedSearchDataSchema = z.looseObject({
242
+ results: firecrawlSearchItemsSchema.optional().catch(void 0),
243
+ data: firecrawlSearchItemsSchema.optional().catch(void 0),
244
+ web: firecrawlSearchItemsSchema.optional().catch(void 0)
245
+ });
246
+ const firecrawlSearchPayloadSchema = z.looseObject({
247
+ data: z.union([firecrawlSearchItemsSchema, firecrawlNestedSearchDataSchema]).optional().catch(void 0),
248
+ results: firecrawlSearchItemsSchema.optional().catch(void 0),
249
+ web: z.looseObject({ results: firecrawlSearchItemsSchema.optional().catch(void 0) }).optional().catch(void 0)
250
+ });
220
251
  function resolveSearchItems(payload) {
252
+ const parsed = firecrawlSearchPayloadSchema.parse(payload);
253
+ const nestedData = Array.isArray(parsed.data) ? void 0 : parsed.data;
221
254
  const rawItems = [
222
- payload.data,
223
- payload.results,
224
- payload.data?.results,
225
- payload.data?.data,
226
- payload.data?.web,
227
- payload.web?.results
228
- ].find((candidate) => Array.isArray(candidate));
229
- if (!Array.isArray(rawItems)) return [];
255
+ Array.isArray(parsed.data) ? parsed.data : void 0,
256
+ parsed.results,
257
+ nestedData?.results,
258
+ nestedData?.data,
259
+ nestedData?.web,
260
+ parsed.web?.results
261
+ ].find((candidate) => candidate !== void 0);
262
+ if (!rawItems) return [];
230
263
  const items = [];
231
- for (const entry of rawItems) {
232
- if (!entry || typeof entry !== "object") continue;
233
- const record = entry;
234
- const metadata = record.metadata && typeof record.metadata === "object" ? record.metadata : void 0;
235
- const url = typeof record.url === "string" && record.url || typeof record.sourceURL === "string" && record.sourceURL || typeof record.sourceUrl === "string" && record.sourceUrl || typeof metadata?.sourceURL === "string" && metadata.sourceURL || "";
264
+ for (const entry of rawItems.slice(0, FIRECRAWL_SEARCH_MAX_RESULTS)) {
265
+ const metadata = entry.metadata;
266
+ const url = normalizeFirecrawlResultUrl(entry.url || entry.sourceURL || entry.sourceUrl || metadata?.sourceURL || "");
236
267
  if (!url) continue;
237
- const title = typeof record.title === "string" && record.title || typeof metadata?.title === "string" && metadata.title || "";
238
- const description = typeof record.description === "string" && record.description || typeof record.snippet === "string" && record.snippet || typeof record.summary === "string" && record.summary || void 0;
239
- const content = typeof record.markdown === "string" && record.markdown || typeof record.content === "string" && record.content || typeof record.text === "string" && record.text || void 0;
240
- const published = typeof record.publishedDate === "string" && record.publishedDate || typeof record.published === "string" && record.published || typeof metadata?.publishedTime === "string" && metadata.publishedTime || typeof metadata?.publishedDate === "string" && metadata.publishedDate || void 0;
268
+ const title = entry.title || metadata?.title || "";
269
+ const description = entry.description || entry.snippet || entry.summary || void 0;
270
+ const content = entry.markdown || entry.content || entry.text || void 0;
271
+ const rawPublished = entry.publishedDate || entry.published || metadata?.publishedTime || metadata?.publishedDate || void 0;
272
+ const published = rawPublished && FIRECRAWL_PUBLISHED_DATE_RE.test(rawPublished) ? rawPublished : void 0;
241
273
  items.push({
242
274
  title,
243
275
  url,
@@ -250,6 +282,22 @@ function resolveSearchItems(payload) {
250
282
  return items;
251
283
  }
252
284
  function buildSearchPayload(params) {
285
+ let remainingContentChars = FIRECRAWL_SEARCH_MAX_CONTENT_CHARS;
286
+ let truncated = false;
287
+ const wrapBoundedContent = (value) => {
288
+ const bounded = truncateSanitizedExternalContent(value, remainingContentChars);
289
+ truncated ||= bounded.truncated;
290
+ remainingContentChars -= bounded.text.length;
291
+ return wrapWebContent(bounded.text, "web_search");
292
+ };
293
+ const results = params.items.map((entry) => ({
294
+ title: entry.title ? wrapBoundedContent(entry.title) : "",
295
+ url: entry.url,
296
+ description: entry.description ? wrapBoundedContent(entry.description) : "",
297
+ ...entry.published ? { published: entry.published } : {},
298
+ ...entry.siteName ? { siteName: entry.siteName } : {},
299
+ ...params.scrapeResults && entry.content ? { content: wrapBoundedContent(entry.content) } : {}
300
+ }));
253
301
  return {
254
302
  query: params.query,
255
303
  provider: params.provider,
@@ -261,17 +309,12 @@ function buildSearchPayload(params) {
261
309
  provider: params.provider,
262
310
  wrapped: true
263
311
  },
264
- results: params.items.map((entry) => ({
265
- title: entry.title ? wrapWebContent(entry.title, "web_search") : "",
266
- url: entry.url,
267
- description: entry.description ? wrapWebContent(entry.description, "web_search") : "",
268
- ...entry.published ? { published: entry.published } : {},
269
- ...entry.siteName ? { siteName: entry.siteName } : {},
270
- ...params.scrapeResults && entry.content ? { content: wrapWebContent(entry.content, "web_search") } : {}
271
- }))
312
+ results,
313
+ ...truncated ? { truncated: true } : {}
272
314
  };
273
315
  }
274
316
  async function runFirecrawlSearch(params) {
317
+ params.signal?.throwIfAborted();
275
318
  const keyless = params.access === "keyless";
276
319
  const providerId = keyless ? "firecrawl-free" : "firecrawl";
277
320
  const apiKey = keyless ? void 0 : resolveFirecrawlApiKey(params.cfg);
@@ -328,19 +371,20 @@ async function runFirecrawlSearch(params) {
328
371
  timeoutSeconds,
329
372
  apiKey,
330
373
  body,
331
- errorLabel: "Firecrawl Search"
374
+ errorLabel: "Firecrawl Search",
375
+ ...params.signal ? { signal: params.signal } : {}
332
376
  }, async (response) => {
333
377
  const payloadValue = await readFirecrawlJsonResponse(response, "Firecrawl Search API error");
334
378
  if (payloadValue.success === false) {
335
- const error = typeof payloadValue.error === "string" ? payloadValue.error : typeof payloadValue.message === "string" ? payloadValue.message : "unknown error";
336
- throw new Error(`Firecrawl Search API error: ${error}`);
379
+ const safeError = wrapWebContent(truncateSanitizedExternalContent(typeof payloadValue.error === "string" ? payloadValue.error : typeof payloadValue.message === "string" ? payloadValue.message : "unknown error", 1e3).text, "web_search");
380
+ throw new Error(`Firecrawl Search API error: ${safeError}`);
337
381
  }
338
382
  return payloadValue;
339
383
  });
340
384
  const result = buildSearchPayload({
341
385
  query: params.query,
342
386
  provider: providerId,
343
- items: resolveSearchItems(payload),
387
+ items: resolveSearchItems(payload).slice(0, count),
344
388
  tookMs: Date.now() - start,
345
389
  scrapeResults
346
390
  });
@@ -355,26 +399,33 @@ function resolveScrapeData(payload) {
355
399
  function parseFirecrawlScrapePayload(params) {
356
400
  const data = resolveScrapeData(params.payload);
357
401
  const metadata = data.metadata && typeof data.metadata === "object" ? data.metadata : void 0;
402
+ const rawStatus = parseFiniteNumber(metadata?.statusCode) ?? parseFiniteNumber(data.statusCode);
403
+ const status = rawStatus === void 0 ? void 0 : Math.floor(rawStatus);
404
+ if (status !== void 0 && (status < 200 || status >= 300)) throw new Error(`Firecrawl fetch failed (${status}): target returned an unsuccessful HTTP status.`);
358
405
  const markdown = typeof data.markdown === "string" && data.markdown || typeof data.content === "string" && data.content || "";
359
406
  if (!markdown) throw new Error("Firecrawl scrape returned no content.");
360
407
  const rawText = params.extractMode === "text" ? markdownToText(markdown) : markdown;
361
- const truncated = truncateText(rawText, params.maxChars);
362
- const wrappedText = wrapExternalContent(truncated.text, {
408
+ const boundedText = truncateSanitizedExternalContent(rawText, params.maxChars);
409
+ let truncated = boundedText.truncated;
410
+ let remainingMetadataChars = FIRECRAWL_SCRAPE_METADATA_MAX_CHARS;
411
+ const wrapBoundedMetadata = (value) => {
412
+ const bounded = truncateSanitizedExternalContent(value, remainingMetadataChars);
413
+ truncated ||= bounded.truncated;
414
+ remainingMetadataChars -= bounded.text.length;
415
+ return wrapExternalContent(bounded.text, {
416
+ source: "web_fetch",
417
+ includeWarning: false
418
+ });
419
+ };
420
+ const wrappedText = wrapExternalContent(boundedText.text, {
363
421
  source: "web_fetch",
364
422
  includeWarning: false
365
423
  });
366
- const status = typeof metadata?.statusCode === "number" && metadata.statusCode || typeof data.statusCode === "number" && data.statusCode || void 0;
367
- const title = typeof metadata?.title === "string" && metadata.title ? wrapExternalContent(metadata.title, {
368
- source: "web_fetch",
369
- includeWarning: false
370
- }) : void 0;
371
- const warning = typeof params.payload.warning === "string" && params.payload.warning ? wrapExternalContent(params.payload.warning, {
372
- source: "web_fetch",
373
- includeWarning: false
374
- }) : void 0;
424
+ const title = typeof metadata?.title === "string" && metadata.title ? wrapBoundedMetadata(metadata.title) : void 0;
425
+ const warning = typeof params.payload.warning === "string" && params.payload.warning ? wrapBoundedMetadata(params.payload.warning) : void 0;
375
426
  return {
376
427
  url: params.url,
377
- finalUrl: typeof metadata?.sourceURL === "string" && metadata.sourceURL || typeof data.url === "string" && data.url || params.url,
428
+ finalUrl: normalizeFirecrawlResultUrl(metadata?.sourceURL) ?? normalizeFirecrawlResultUrl(data.url) ?? params.url,
378
429
  ...status !== void 0 ? { status } : {},
379
430
  ...title ? { title } : {},
380
431
  extractor: "firecrawl",
@@ -384,7 +435,7 @@ function parseFirecrawlScrapePayload(params) {
384
435
  source: "web_fetch",
385
436
  wrapped: true
386
437
  },
387
- truncated: truncated.truncated,
438
+ truncated,
388
439
  rawLength: rawText.length,
389
440
  length: wrappedText.length,
390
441
  text: wrappedText,
@@ -392,6 +443,7 @@ function parseFirecrawlScrapePayload(params) {
392
443
  };
393
444
  }
394
445
  async function runFirecrawlScrape(params) {
446
+ params.signal?.throwIfAborted();
395
447
  assertFirecrawlScrapeTargetAllowed(params.url);
396
448
  const apiKey = resolveFirecrawlApiKey(params.cfg);
397
449
  if (!apiKey && params.access !== "keyless") throw new Error("firecrawl_scrape needs a Firecrawl API key. Set FIRECRAWL_API_KEY in the Gateway environment, or configure plugins.entries.firecrawl.config.webFetch.apiKey.");
@@ -401,31 +453,19 @@ async function runFirecrawlScrape(params) {
401
453
  const maxAgeMs = resolveFirecrawlMaxAgeMs(params.cfg, params.maxAgeMs);
402
454
  const proxy = params.proxy ?? "auto";
403
455
  const storeInCache = params.storeInCache ?? true;
404
- const maxChars = typeof params.maxChars === "number" && Number.isFinite(params.maxChars) && params.maxChars > 0 ? Math.floor(params.maxChars) : DEFAULT_SCRAPE_MAX_CHARS;
405
- const cacheKey = normalizeCacheKey(JSON.stringify({
406
- type: "firecrawl-scrape",
407
- url: params.url,
408
- extractMode: params.extractMode,
409
- baseUrl,
410
- onlyMainContent,
411
- maxAgeMs,
412
- proxy,
413
- storeInCache,
414
- maxChars
415
- }));
416
- const cached = readCache(SCRAPE_CACHE, cacheKey);
417
- if (cached) return {
418
- ...cached.value,
419
- cached: true
420
- };
456
+ const configuredMaxCharsCap = params.cfg?.tools?.web?.fetch?.maxCharsCap;
457
+ const maxCharsCap = typeof configuredMaxCharsCap === "number" && Number.isFinite(configuredMaxCharsCap) && configuredMaxCharsCap > 0 ? Math.floor(configuredMaxCharsCap) : DEFAULT_SCRAPE_MAX_CHARS;
458
+ const requestedMaxChars = typeof params.maxChars === "number" && Number.isFinite(params.maxChars) && params.maxChars > 0 ? Math.floor(params.maxChars) : DEFAULT_SCRAPE_MAX_CHARS;
459
+ const maxChars = Math.min(requestedMaxChars, maxCharsCap);
421
460
  const endpoint = await resolveEndpoint(baseUrl, "/v2/scrape");
422
- const result = parseFirecrawlScrapePayload({
461
+ return parseFirecrawlScrapePayload({
423
462
  payload: await postFirecrawlJson({
424
463
  url: endpoint.url,
425
464
  mode: endpoint.mode,
426
465
  timeoutSeconds,
427
466
  apiKey,
428
467
  errorLabel: "Firecrawl",
468
+ ...params.signal ? { signal: params.signal } : {},
429
469
  body: {
430
470
  url: params.url,
431
471
  formats: ["markdown"],
@@ -439,7 +479,7 @@ async function runFirecrawlScrape(params) {
439
479
  const payloadLocal = await readFirecrawlJsonResponse(response, "Firecrawl fetch failed", { maxBytes: FIRECRAWL_SCRAPE_RESPONSE_MAX_BYTES });
440
480
  if (payloadLocal.success === false) {
441
481
  const detail = typeof payloadLocal.error === "string" ? payloadLocal.error : typeof payloadLocal.message === "string" ? payloadLocal.message : response.statusText;
442
- throw new Error(`Firecrawl fetch failed (${response.status}): ${wrapWebContent(detail, "web_fetch")}`.trim());
482
+ throw new Error(`Firecrawl fetch failed (${response.status}): ${wrapWebContent(truncateSanitizedExternalContent(detail, FIRECRAWL_SCRAPE_METADATA_MAX_CHARS).text, "web_fetch")}`.trim());
443
483
  }
444
484
  return payloadLocal;
445
485
  }),
@@ -447,8 +487,6 @@ async function runFirecrawlScrape(params) {
447
487
  extractMode: params.extractMode,
448
488
  maxChars
449
489
  });
450
- writeCache(SCRAPE_CACHE, cacheKey, result, resolveCacheTtlMs(void 0, DEFAULT_CACHE_TTL_MINUTES));
451
- return result;
452
490
  }
453
491
  const testing = {
454
492
  assertFirecrawlScrapeTargetAllowed,
@@ -456,7 +494,6 @@ const testing = {
456
494
  postFirecrawlJson,
457
495
  readFirecrawlJsonResponse,
458
496
  resolveEndpoint,
459
- validateFirecrawlBaseUrl,
460
497
  resolveSearchItems
461
498
  };
462
499
  //#endregion
@@ -1,10 +1,10 @@
1
- import { t as FIRECRAWL_WEB_FETCH_PROVIDER_SHARED } from "./firecrawl-fetch-provider-shared-BhzfHFkE.js";
1
+ import { t as FIRECRAWL_WEB_FETCH_PROVIDER_SHARED } from "./firecrawl-fetch-provider-shared-DlD5WG_i.js";
2
2
  import { readPositiveIntegerParam } from "openclaw/plugin-sdk/param-readers";
3
3
  import { enablePluginInConfig } from "openclaw/plugin-sdk/provider-web-fetch-contract";
4
4
  //#region extensions/firecrawl/src/firecrawl-fetch-provider.ts
5
5
  let firecrawlClientModulePromise;
6
6
  function loadFirecrawlClientModule() {
7
- firecrawlClientModulePromise ??= import("./firecrawl-client-DZohiNQK.js").then((n) => n.t);
7
+ firecrawlClientModulePromise ??= import("./firecrawl-client-mz7GIgb4.js").then((n) => n.t);
8
8
  return firecrawlClientModulePromise;
9
9
  }
10
10
  function createFirecrawlWebFetchProvider() {
@@ -39,7 +39,10 @@ const FIRECRAWL_WEB_FETCH_PROVIDER_SHARED = {
39
39
  };
40
40
  },
41
41
  setConfiguredCredentialValue: (configTarget, value) => {
42
- const webFetch = ensureRecord(ensureRecord(ensureRecord(ensureRecord(ensureRecord(configTarget, "plugins"), "entries"), "firecrawl"), "config"), "webFetch");
42
+ const plugins = configTarget.plugins ??= {};
43
+ const entries = plugins.entries ??= {};
44
+ const firecrawlEntry = entries.firecrawl ??= {};
45
+ const webFetch = ensureRecord(firecrawlEntry.config ??= {}, "webFetch");
43
46
  webFetch.apiKey = value;
44
47
  }
45
48
  };
@@ -2,7 +2,7 @@ import { buildFirecrawlFreeWebSearchProviderBase, buildFirecrawlWebSearchProvide
2
2
  import { readPositiveIntegerParam } from "openclaw/plugin-sdk/param-readers";
3
3
  import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
4
4
  //#region extensions/firecrawl/src/firecrawl-search-provider.ts
5
- const loadFirecrawlClientModule$1 = createLazyRuntimeModule(() => import("./firecrawl-client-DZohiNQK.js").then((n) => n.t));
5
+ const loadFirecrawlClientModule$1 = createLazyRuntimeModule(() => import("./firecrawl-client-mz7GIgb4.js").then((n) => n.t));
6
6
  const GenericFirecrawlSearchSchema = {
7
7
  type: "object",
8
8
  properties: {
@@ -25,7 +25,8 @@ function createFirecrawlWebSearchProvider() {
25
25
  createTool: (ctx) => ({
26
26
  description: "Search the web using Firecrawl. Returns structured results with snippets from Firecrawl Search. Use firecrawl_search for Firecrawl-specific knobs like sources or categories.",
27
27
  parameters: GenericFirecrawlSearchSchema,
28
- execute: async (args) => {
28
+ execute: async (args, executionContext) => {
29
+ executionContext?.signal?.throwIfAborted();
29
30
  const { runFirecrawlSearch } = await loadFirecrawlClientModule$1();
30
31
  return await runFirecrawlSearch({
31
32
  cfg: ctx.config,
@@ -33,7 +34,8 @@ function createFirecrawlWebSearchProvider() {
33
34
  count: readPositiveIntegerParam(args, "count", {
34
35
  message: "count must be an integer from 1 to 10",
35
36
  max: 10
36
- })
37
+ }),
38
+ ...executionContext?.signal ? { signal: executionContext.signal } : {}
37
39
  });
38
40
  }
39
41
  })
@@ -43,7 +45,7 @@ function createFirecrawlWebSearchProvider() {
43
45
  //#region extensions/firecrawl/src/firecrawl-free-search-provider.ts
44
46
  let firecrawlClientModulePromise;
45
47
  function loadFirecrawlClientModule() {
46
- firecrawlClientModulePromise ??= import("./firecrawl-client-DZohiNQK.js").then((n) => n.t);
48
+ firecrawlClientModulePromise ??= import("./firecrawl-client-mz7GIgb4.js").then((n) => n.t);
47
49
  return firecrawlClientModulePromise;
48
50
  }
49
51
  function createFirecrawlFreeWebSearchProvider() {
@@ -52,7 +54,8 @@ function createFirecrawlFreeWebSearchProvider() {
52
54
  createTool: (ctx) => ({
53
55
  description: "Search the web using Firecrawl's free hosted starter tier (no API key required). Returns structured results with snippets. Use firecrawl_search for Firecrawl-specific knobs like sources or categories.",
54
56
  parameters: GenericFirecrawlSearchSchema,
55
- execute: async (args) => {
57
+ execute: async (args, executionContext) => {
58
+ executionContext?.signal?.throwIfAborted();
56
59
  const { runFirecrawlSearch } = await loadFirecrawlClientModule();
57
60
  return await runFirecrawlSearch({
58
61
  cfg: ctx.config,
@@ -61,7 +64,8 @@ function createFirecrawlFreeWebSearchProvider() {
61
64
  message: "count must be an integer from 1 to 10",
62
65
  max: 10
63
66
  }),
64
- access: "keyless"
67
+ access: "keyless",
68
+ ...executionContext?.signal ? { signal: executionContext.signal } : {}
65
69
  });
66
70
  }
67
71
  })
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- import { n as runFirecrawlScrape, r as runFirecrawlSearch } from "./firecrawl-client-DZohiNQK.js";
2
- import { t as createFirecrawlWebFetchProvider } from "./firecrawl-fetch-provider-DXmd_5yB.js";
3
- import { n as createFirecrawlWebSearchProvider, t as createFirecrawlFreeWebSearchProvider } from "./firecrawl-free-search-provider-D_QqmJGK.js";
1
+ import { n as runFirecrawlScrape, r as runFirecrawlSearch } from "./firecrawl-client-mz7GIgb4.js";
2
+ import { t as createFirecrawlWebFetchProvider } from "./firecrawl-fetch-provider-kMXMNJJw.js";
3
+ import { n as createFirecrawlWebSearchProvider, t as createFirecrawlFreeWebSearchProvider } from "./firecrawl-free-search-provider-BnGTMs5x.js";
4
4
  import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
5
5
  import { optionalStringEnum } from "openclaw/plugin-sdk/channel-actions";
6
6
  import { jsonResult, readNonNegativeIntegerParam, readPositiveIntegerParam, readStringArrayParam, readStringParam } from "openclaw/plugin-sdk/provider-web-search";
@@ -33,9 +33,11 @@ function createFirecrawlScrapeTool(api) {
33
33
  return {
34
34
  name: "firecrawl_scrape",
35
35
  label: "Firecrawl Scrape",
36
- description: "Scrape a page using Firecrawl v2/scrape. Useful for JS-heavy or bot-protected pages where plain web_fetch is weak.",
36
+ resultContentSource: "network",
37
+ description: "Scrape a page using Firecrawl v2/scrape. Useful for JS-heavy or bot-protected pages where a plain URL fetch is weak.",
37
38
  parameters: FirecrawlScrapeToolSchema,
38
- execute: async (_toolCallId, rawParams) => {
39
+ execute: async (_toolCallId, rawParams, signal) => {
40
+ signal?.throwIfAborted();
39
41
  const url = readStringParam(rawParams, "url", { required: true });
40
42
  const extractMode = readStringParam(rawParams, "extractMode") === "text" ? "text" : "markdown";
41
43
  const maxChars = readPositiveIntegerParam(rawParams, "maxChars");
@@ -54,7 +56,8 @@ function createFirecrawlScrapeTool(api) {
54
56
  maxAgeMs,
55
57
  proxy,
56
58
  storeInCache,
57
- timeoutSeconds
59
+ timeoutSeconds,
60
+ ...signal ? { signal } : {}
58
61
  }));
59
62
  }
60
63
  };
@@ -85,9 +88,11 @@ function createFirecrawlSearchTool(api) {
85
88
  return {
86
89
  name: "firecrawl_search",
87
90
  label: "Firecrawl Search",
91
+ resultContentSource: "network",
88
92
  description: "Search the web using Firecrawl v2/search. Supports includeDomains/excludeDomains filtering and tbs time filters (day/week/month/year). Can optionally include scraped content from result pages.",
89
93
  parameters: FirecrawlSearchToolSchema,
90
- execute: async (_toolCallId, rawParams) => {
94
+ execute: async (_toolCallId, rawParams, signal) => {
95
+ signal?.throwIfAborted();
91
96
  const query = readStringParam(rawParams, "query", { required: true });
92
97
  const count = readPositiveIntegerParam(rawParams, "count", {
93
98
  max: 100,
@@ -114,7 +119,8 @@ function createFirecrawlSearchTool(api) {
114
119
  tbs,
115
120
  location,
116
121
  country,
117
- scrapeResults
122
+ scrapeResults,
123
+ ...signal ? { signal } : {}
118
124
  }));
119
125
  }
120
126
  };
@@ -1,4 +1,4 @@
1
- import { t as FIRECRAWL_WEB_FETCH_PROVIDER_SHARED } from "./firecrawl-fetch-provider-shared-BhzfHFkE.js";
1
+ import { t as FIRECRAWL_WEB_FETCH_PROVIDER_SHARED } from "./firecrawl-fetch-provider-shared-DlD5WG_i.js";
2
2
  import { enablePluginInConfig } from "openclaw/plugin-sdk/provider-web-fetch-contract";
3
3
  //#region extensions/firecrawl/web-fetch-contract-api.ts
4
4
  function createFirecrawlWebFetchProvider() {
@@ -1,2 +1,2 @@
1
- import { t as createFirecrawlWebFetchProvider } from "./firecrawl-fetch-provider-DXmd_5yB.js";
1
+ import { t as createFirecrawlWebFetchProvider } from "./firecrawl-fetch-provider-kMXMNJJw.js";
2
2
  export { createFirecrawlWebFetchProvider };
@@ -1,2 +1,2 @@
1
- import { n as createFirecrawlWebSearchProvider, t as createFirecrawlFreeWebSearchProvider } from "./firecrawl-free-search-provider-D_QqmJGK.js";
1
+ import { n as createFirecrawlWebSearchProvider, t as createFirecrawlFreeWebSearchProvider } from "./firecrawl-free-search-provider-BnGTMs5x.js";
2
2
  export { createFirecrawlFreeWebSearchProvider, createFirecrawlWebSearchProvider };
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Colin McDonnell
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.