@wecode-ai/weibo-openclaw-plugin 2.2.3 → 2.2.5

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 (195) hide show
  1. package/node_modules/tar/dist/commonjs/index.min.js +3 -3
  2. package/node_modules/tar/dist/commonjs/index.min.js.map +3 -3
  3. package/node_modules/tar/dist/commonjs/pack.d.ts +4 -1
  4. package/node_modules/tar/dist/commonjs/pack.d.ts.map +1 -1
  5. package/node_modules/tar/dist/commonjs/pack.js +41 -7
  6. package/node_modules/tar/dist/commonjs/pack.js.map +1 -1
  7. package/node_modules/tar/dist/esm/index.min.js +3 -3
  8. package/node_modules/tar/dist/esm/index.min.js.map +3 -3
  9. package/node_modules/tar/dist/esm/pack.d.ts +4 -1
  10. package/node_modules/tar/dist/esm/pack.d.ts.map +1 -1
  11. package/node_modules/tar/dist/esm/pack.js +41 -7
  12. package/node_modules/tar/dist/esm/pack.js.map +1 -1
  13. package/node_modules/tar/package.json +4 -4
  14. package/node_modules/zod/README.md +1 -18
  15. package/node_modules/zod/locales/package.json +2 -1
  16. package/node_modules/zod/mini/package.json +2 -1
  17. package/node_modules/zod/package.json +1 -1
  18. package/node_modules/zod/src/v3/tests/all-errors.test.ts +3 -3
  19. package/node_modules/zod/src/v3/tests/object.test.ts +5 -5
  20. package/node_modules/zod/src/v3/tests/partials.test.ts +3 -3
  21. package/node_modules/zod/src/v4/classic/errors.ts +2 -2
  22. package/node_modules/zod/src/v4/classic/external.ts +1 -0
  23. package/node_modules/zod/src/v4/classic/from-json-schema.ts +39 -23
  24. package/node_modules/zod/src/v4/classic/parse.ts +6 -6
  25. package/node_modules/zod/src/v4/classic/schemas.ts +414 -151
  26. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +6 -0
  27. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +50 -0
  28. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +142 -1
  29. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +1 -1
  30. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +1 -1
  31. package/node_modules/zod/src/v4/classic/tests/default.test.ts +44 -0
  32. package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +197 -0
  33. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +34 -1
  34. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +214 -2
  35. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +161 -0
  36. package/node_modules/zod/src/v4/classic/tests/function.test.ts +6 -6
  37. package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +39 -0
  38. package/node_modules/zod/src/v4/classic/tests/index.test.ts +2 -2
  39. package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +46 -0
  40. package/node_modules/zod/src/v4/classic/tests/locales_ka.test.ts +29 -0
  41. package/node_modules/zod/src/v4/classic/tests/locales_ro.test.ts +24 -0
  42. package/node_modules/zod/src/v4/classic/tests/number.test.ts +55 -0
  43. package/node_modules/zod/src/v4/classic/tests/object.test.ts +83 -6
  44. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +114 -4
  45. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +24 -1
  46. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +1 -1
  47. package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +26 -0
  48. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +69 -0
  49. package/node_modules/zod/src/v4/classic/tests/record.test.ts +85 -0
  50. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +49 -0
  51. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +63 -0
  52. package/node_modules/zod/src/v4/classic/tests/string.test.ts +50 -1
  53. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +4 -4
  54. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +150 -15
  55. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +17 -0
  56. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +315 -2
  57. package/node_modules/zod/src/v4/classic/tests/union.test.ts +54 -0
  58. package/node_modules/zod/src/v4/core/api.ts +31 -6
  59. package/node_modules/zod/src/v4/core/checks.ts +1 -1
  60. package/node_modules/zod/src/v4/core/core.ts +17 -2
  61. package/node_modules/zod/src/v4/core/errors.ts +31 -24
  62. package/node_modules/zod/src/v4/core/json-schema-processors.ts +17 -18
  63. package/node_modules/zod/src/v4/core/parse.ts +7 -7
  64. package/node_modules/zod/src/v4/core/regexes.ts +8 -1
  65. package/node_modules/zod/src/v4/core/schemas.ts +263 -71
  66. package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +215 -0
  67. package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +72 -0
  68. package/node_modules/zod/src/v4/core/tests/locales/hr.test.ts +163 -0
  69. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +22 -0
  70. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +58 -0
  71. package/node_modules/zod/src/v4/core/to-json-schema.ts +10 -1
  72. package/node_modules/zod/src/v4/core/util.ts +52 -35
  73. package/node_modules/zod/src/v4/core/versions.ts +2 -2
  74. package/node_modules/zod/src/v4/locales/el.ts +121 -0
  75. package/node_modules/zod/src/v4/locales/en.ts +4 -0
  76. package/node_modules/zod/src/v4/locales/fr.ts +24 -8
  77. package/node_modules/zod/src/v4/locales/hr.ts +131 -0
  78. package/node_modules/zod/src/v4/locales/index.ts +3 -0
  79. package/node_modules/zod/src/v4/locales/it.ts +1 -1
  80. package/node_modules/zod/src/v4/locales/ka.ts +8 -8
  81. package/node_modules/zod/src/v4/locales/ro.ts +129 -0
  82. package/node_modules/zod/src/v4/locales/uz.ts +1 -0
  83. package/node_modules/zod/src/v4/mini/external.ts +1 -0
  84. package/node_modules/zod/src/v4/mini/schemas.ts +56 -25
  85. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +19 -0
  86. package/node_modules/zod/src/v4/mini/tests/index.test.ts +32 -2
  87. package/node_modules/zod/src/v4/mini/tests/object.test.ts +9 -9
  88. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +51 -1
  89. package/node_modules/zod/src/v4/mini/tests/string.test.ts +5 -0
  90. package/node_modules/zod/v3/package.json +2 -1
  91. package/node_modules/zod/v4/classic/errors.js +2 -2
  92. package/node_modules/zod/v4/classic/external.d.cts +1 -0
  93. package/node_modules/zod/v4/classic/external.d.ts +1 -0
  94. package/node_modules/zod/v4/classic/from-json-schema.cjs +31 -16
  95. package/node_modules/zod/v4/classic/from-json-schema.js +31 -16
  96. package/node_modules/zod/v4/classic/package.json +2 -1
  97. package/node_modules/zod/v4/classic/schemas.cjs +358 -119
  98. package/node_modules/zod/v4/classic/schemas.d.cts +42 -14
  99. package/node_modules/zod/v4/classic/schemas.d.ts +42 -14
  100. package/node_modules/zod/v4/classic/schemas.js +356 -118
  101. package/node_modules/zod/v4/core/api.cjs +7 -2
  102. package/node_modules/zod/v4/core/api.d.cts +26 -5
  103. package/node_modules/zod/v4/core/api.d.ts +26 -5
  104. package/node_modules/zod/v4/core/api.js +7 -2
  105. package/node_modules/zod/v4/core/checks.d.cts +1 -1
  106. package/node_modules/zod/v4/core/checks.d.ts +1 -1
  107. package/node_modules/zod/v4/core/core.cjs +3 -1
  108. package/node_modules/zod/v4/core/core.js +4 -2
  109. package/node_modules/zod/v4/core/errors.cjs +26 -23
  110. package/node_modules/zod/v4/core/errors.d.cts +1 -0
  111. package/node_modules/zod/v4/core/errors.d.ts +1 -0
  112. package/node_modules/zod/v4/core/errors.js +26 -23
  113. package/node_modules/zod/v4/core/json-schema-processors.cjs +16 -20
  114. package/node_modules/zod/v4/core/json-schema-processors.js +16 -20
  115. package/node_modules/zod/v4/core/package.json +2 -1
  116. package/node_modules/zod/v4/core/parse.cjs +7 -7
  117. package/node_modules/zod/v4/core/parse.js +7 -7
  118. package/node_modules/zod/v4/core/regexes.cjs +9 -3
  119. package/node_modules/zod/v4/core/regexes.d.cts +6 -0
  120. package/node_modules/zod/v4/core/regexes.d.ts +6 -0
  121. package/node_modules/zod/v4/core/regexes.js +7 -1
  122. package/node_modules/zod/v4/core/schemas.cjs +211 -65
  123. package/node_modules/zod/v4/core/schemas.d.cts +39 -1
  124. package/node_modules/zod/v4/core/schemas.d.ts +39 -1
  125. package/node_modules/zod/v4/core/schemas.js +210 -64
  126. package/node_modules/zod/v4/core/to-json-schema.cjs +12 -1
  127. package/node_modules/zod/v4/core/to-json-schema.js +12 -1
  128. package/node_modules/zod/v4/core/util.cjs +54 -30
  129. package/node_modules/zod/v4/core/util.d.cts +1 -0
  130. package/node_modules/zod/v4/core/util.d.ts +1 -0
  131. package/node_modules/zod/v4/core/util.js +55 -32
  132. package/node_modules/zod/v4/core/versions.cjs +2 -2
  133. package/node_modules/zod/v4/core/versions.d.cts +1 -1
  134. package/node_modules/zod/v4/core/versions.d.ts +1 -1
  135. package/node_modules/zod/v4/core/versions.js +2 -2
  136. package/node_modules/zod/v4/locales/el.cjs +136 -0
  137. package/node_modules/zod/v4/locales/el.d.cts +5 -0
  138. package/node_modules/zod/v4/locales/el.d.ts +4 -0
  139. package/node_modules/zod/v4/locales/el.js +109 -0
  140. package/node_modules/zod/v4/locales/en.cjs +4 -0
  141. package/node_modules/zod/v4/locales/en.js +4 -0
  142. package/node_modules/zod/v4/locales/fr.cjs +24 -7
  143. package/node_modules/zod/v4/locales/fr.js +24 -7
  144. package/node_modules/zod/v4/locales/hr.cjs +149 -0
  145. package/node_modules/zod/v4/locales/hr.d.cts +5 -0
  146. package/node_modules/zod/v4/locales/hr.d.ts +4 -0
  147. package/node_modules/zod/v4/locales/hr.js +122 -0
  148. package/node_modules/zod/v4/locales/index.cjs +8 -1
  149. package/node_modules/zod/v4/locales/index.d.cts +3 -0
  150. package/node_modules/zod/v4/locales/index.d.ts +3 -0
  151. package/node_modules/zod/v4/locales/index.js +3 -0
  152. package/node_modules/zod/v4/locales/it.cjs +1 -1
  153. package/node_modules/zod/v4/locales/it.js +1 -1
  154. package/node_modules/zod/v4/locales/ka.cjs +8 -8
  155. package/node_modules/zod/v4/locales/ka.js +8 -8
  156. package/node_modules/zod/v4/locales/package.json +2 -1
  157. package/node_modules/zod/v4/locales/ro.cjs +146 -0
  158. package/node_modules/zod/v4/locales/ro.d.cts +5 -0
  159. package/node_modules/zod/v4/locales/ro.d.ts +4 -0
  160. package/node_modules/zod/v4/locales/ro.js +119 -0
  161. package/node_modules/zod/v4/locales/uz.cjs +1 -0
  162. package/node_modules/zod/v4/locales/uz.js +1 -0
  163. package/node_modules/zod/v4/mini/external.d.cts +1 -0
  164. package/node_modules/zod/v4/mini/external.d.ts +1 -0
  165. package/node_modules/zod/v4/mini/package.json +2 -1
  166. package/node_modules/zod/v4/mini/schemas.cjs +41 -4
  167. package/node_modules/zod/v4/mini/schemas.d.cts +28 -10
  168. package/node_modules/zod/v4/mini/schemas.d.ts +28 -10
  169. package/node_modules/zod/v4/mini/schemas.js +40 -4
  170. package/node_modules/zod/v4/package.json +2 -1
  171. package/node_modules/zod/v4-mini/package.json +2 -1
  172. package/package.json +2 -1
  173. package/skills/manifest.json +3 -2
  174. package/skills/weibo-creator/SKILL.md +296 -0
  175. package/skills/weibo-creator/references/creator-v-upgrade.md +27 -0
  176. package/skills/weibo-creator/scripts/weibo-creator.js +212 -0
  177. package/skills/weibo-cron/SKILL.md +1 -1
  178. package/skills/weibo-cron/references/HEARTBEAT-PROCESS.md +1 -1
  179. package/skills/weibo-crowd/SKILL.md +1 -1
  180. package/skills/weibo-crowd/references/SILICON-TEAHOUSE-RULES.md +3 -2
  181. package/src/accounts.js +1 -1
  182. package/src/accounts.js.map +1 -1
  183. package/src/channel.js +1 -1
  184. package/src/channel.js.map +1 -1
  185. package/src/outbound.d.ts.map +1 -1
  186. package/src/outbound.js +82 -4
  187. package/src/outbound.js.map +1 -1
  188. package/src/send.d.ts +23 -0
  189. package/src/send.d.ts.map +1 -1
  190. package/src/send.js +54 -2
  191. package/src/send.js.map +1 -1
  192. package/src/token.d.ts +8 -0
  193. package/src/token.d.ts.map +1 -1
  194. package/src/token.js +16 -1
  195. package/src/token.js.map +1 -1
@@ -49,8 +49,23 @@ export declare function _emoji<T extends schemas.$ZodEmoji>(Class: util.SchemaCl
49
49
  export type $ZodNanoIDParams = StringFormatParams<schemas.$ZodNanoID, "when">;
50
50
  export type $ZodCheckNanoIDParams = CheckStringFormatParams<schemas.$ZodNanoID, "when">;
51
51
  export declare function _nanoid<T extends schemas.$ZodNanoID>(Class: util.SchemaClass<T>, params?: string | $ZodNanoIDParams | $ZodCheckNanoIDParams): T;
52
+ /**
53
+ * @deprecated CUID v1 is deprecated by its authors due to information leakage
54
+ * (timestamps embedded in the id). Use {@link _cuid2} instead.
55
+ * See https://github.com/paralleldrive/cuid.
56
+ */
52
57
  export type $ZodCUIDParams = StringFormatParams<schemas.$ZodCUID, "when">;
58
+ /**
59
+ * @deprecated CUID v1 is deprecated by its authors due to information leakage
60
+ * (timestamps embedded in the id). Use {@link _cuid2} instead.
61
+ * See https://github.com/paralleldrive/cuid.
62
+ */
53
63
  export type $ZodCheckCUIDParams = CheckStringFormatParams<schemas.$ZodCUID, "when">;
64
+ /**
65
+ * @deprecated CUID v1 is deprecated by its authors due to information leakage
66
+ * (timestamps embedded in the id). Use {@link _cuid2} instead.
67
+ * See https://github.com/paralleldrive/cuid.
68
+ */
54
69
  export declare function _cuid<T extends schemas.$ZodCUID>(Class: util.SchemaClass<T>, params?: string | $ZodCUIDParams | $ZodCheckCUIDParams): T;
55
70
  export type $ZodCUID2Params = StringFormatParams<schemas.$ZodCUID2, "when">;
56
71
  export type $ZodCheckCUID2Params = CheckStringFormatParams<schemas.$ZodCUID2, "when">;
@@ -210,14 +225,16 @@ export type $ZodUnionParams = TypeParams<schemas.$ZodUnion, "options">;
210
225
  export declare function _union<const T extends readonly schemas.$ZodObject[]>(Class: util.SchemaClass<schemas.$ZodUnion>, options: T, params?: string | $ZodUnionParams): schemas.$ZodUnion<T>;
211
226
  export type $ZodXorParams = TypeParams<schemas.$ZodXor, "options">;
212
227
  export declare function _xor<const T extends readonly schemas.$ZodObject[]>(Class: util.SchemaClass<schemas.$ZodXor>, options: T, params?: string | $ZodXorParams): schemas.$ZodXor<T>;
213
- export interface $ZodTypeDiscriminableInternals extends schemas.$ZodTypeInternals {
228
+ export interface $ZodTypeDiscriminableInternals<Disc extends string = string> extends schemas.$ZodTypeInternals<unknown, {
229
+ [K in Disc]?: unknown;
230
+ }> {
214
231
  propValues: util.PropValues;
215
232
  }
216
- export interface $ZodTypeDiscriminable extends schemas.$ZodType {
217
- _zod: $ZodTypeDiscriminableInternals;
233
+ export interface $ZodTypeDiscriminable<Disc extends string = string> extends schemas.$ZodType {
234
+ _zod: $ZodTypeDiscriminableInternals<Disc>;
218
235
  }
219
236
  export type $ZodDiscriminatedUnionParams = TypeParams<schemas.$ZodDiscriminatedUnion, "options" | "discriminator">;
220
- export declare function _discriminatedUnion<Types extends [$ZodTypeDiscriminable, ...$ZodTypeDiscriminable[]], Disc extends string>(Class: util.SchemaClass<schemas.$ZodDiscriminatedUnion>, discriminator: Disc, options: Types, params?: string | $ZodDiscriminatedUnionParams): schemas.$ZodDiscriminatedUnion<Types, Disc>;
237
+ export declare function _discriminatedUnion<Types extends [$ZodTypeDiscriminable<Disc>, ...$ZodTypeDiscriminable<Disc>[]], Disc extends string>(Class: util.SchemaClass<schemas.$ZodDiscriminatedUnion>, discriminator: Disc, options: Types, params?: string | $ZodDiscriminatedUnionParams): schemas.$ZodDiscriminatedUnion<Types, Disc>;
221
238
  export type $ZodIntersectionParams = TypeParams<schemas.$ZodIntersection, "left" | "right">;
222
239
  export declare function _intersection<T extends schemas.$ZodObject, U extends schemas.$ZodObject>(Class: util.SchemaClass<schemas.$ZodIntersection>, left: T, right: U): schemas.$ZodIntersection<T, U>;
223
240
  export type $ZodTupleParams = TypeParams<schemas.$ZodTuple, "items" | "rest">;
@@ -282,7 +299,11 @@ type RawIssue<T extends errors.$ZodIssueBase> = T extends any ? util.Flatten<uti
282
299
  export interface $RefinementCtx<T = unknown> extends schemas.ParsePayload<T> {
283
300
  addIssue(arg: string | $ZodSuperRefineIssue): void;
284
301
  }
285
- export declare function _superRefine<T>(fn: (arg: T, payload: $RefinementCtx<T>) => void | Promise<void>): checks.$ZodCheck<T>;
302
+ export interface $ZodSuperRefineParams {
303
+ /** If provided, the refinement runs only when this returns `true`. By default, it is skipped if prior parsing produced aborting issues. */
304
+ when?: ((payload: schemas.ParsePayload) => boolean) | undefined;
305
+ }
306
+ export declare function _superRefine<T>(fn: (arg: T, payload: $RefinementCtx<T>) => void | Promise<void>, params?: $ZodSuperRefineParams): checks.$ZodCheck<T>;
286
307
  export declare function _check<O = unknown>(fn: schemas.CheckFn<O>, params?: string | $ZodCustomParams): checks.$ZodCheck<O>;
287
308
  export declare function describe<T>(description: string): checks.$ZodCheck<T>;
288
309
  export declare function meta<T>(metadata: registries.GlobalMeta): checks.$ZodCheck<T>;
@@ -49,8 +49,23 @@ export declare function _emoji<T extends schemas.$ZodEmoji>(Class: util.SchemaCl
49
49
  export type $ZodNanoIDParams = StringFormatParams<schemas.$ZodNanoID, "when">;
50
50
  export type $ZodCheckNanoIDParams = CheckStringFormatParams<schemas.$ZodNanoID, "when">;
51
51
  export declare function _nanoid<T extends schemas.$ZodNanoID>(Class: util.SchemaClass<T>, params?: string | $ZodNanoIDParams | $ZodCheckNanoIDParams): T;
52
+ /**
53
+ * @deprecated CUID v1 is deprecated by its authors due to information leakage
54
+ * (timestamps embedded in the id). Use {@link _cuid2} instead.
55
+ * See https://github.com/paralleldrive/cuid.
56
+ */
52
57
  export type $ZodCUIDParams = StringFormatParams<schemas.$ZodCUID, "when">;
58
+ /**
59
+ * @deprecated CUID v1 is deprecated by its authors due to information leakage
60
+ * (timestamps embedded in the id). Use {@link _cuid2} instead.
61
+ * See https://github.com/paralleldrive/cuid.
62
+ */
53
63
  export type $ZodCheckCUIDParams = CheckStringFormatParams<schemas.$ZodCUID, "when">;
64
+ /**
65
+ * @deprecated CUID v1 is deprecated by its authors due to information leakage
66
+ * (timestamps embedded in the id). Use {@link _cuid2} instead.
67
+ * See https://github.com/paralleldrive/cuid.
68
+ */
54
69
  export declare function _cuid<T extends schemas.$ZodCUID>(Class: util.SchemaClass<T>, params?: string | $ZodCUIDParams | $ZodCheckCUIDParams): T;
55
70
  export type $ZodCUID2Params = StringFormatParams<schemas.$ZodCUID2, "when">;
56
71
  export type $ZodCheckCUID2Params = CheckStringFormatParams<schemas.$ZodCUID2, "when">;
@@ -210,14 +225,16 @@ export type $ZodUnionParams = TypeParams<schemas.$ZodUnion, "options">;
210
225
  export declare function _union<const T extends readonly schemas.$ZodObject[]>(Class: util.SchemaClass<schemas.$ZodUnion>, options: T, params?: string | $ZodUnionParams): schemas.$ZodUnion<T>;
211
226
  export type $ZodXorParams = TypeParams<schemas.$ZodXor, "options">;
212
227
  export declare function _xor<const T extends readonly schemas.$ZodObject[]>(Class: util.SchemaClass<schemas.$ZodXor>, options: T, params?: string | $ZodXorParams): schemas.$ZodXor<T>;
213
- export interface $ZodTypeDiscriminableInternals extends schemas.$ZodTypeInternals {
228
+ export interface $ZodTypeDiscriminableInternals<Disc extends string = string> extends schemas.$ZodTypeInternals<unknown, {
229
+ [K in Disc]?: unknown;
230
+ }> {
214
231
  propValues: util.PropValues;
215
232
  }
216
- export interface $ZodTypeDiscriminable extends schemas.$ZodType {
217
- _zod: $ZodTypeDiscriminableInternals;
233
+ export interface $ZodTypeDiscriminable<Disc extends string = string> extends schemas.$ZodType {
234
+ _zod: $ZodTypeDiscriminableInternals<Disc>;
218
235
  }
219
236
  export type $ZodDiscriminatedUnionParams = TypeParams<schemas.$ZodDiscriminatedUnion, "options" | "discriminator">;
220
- export declare function _discriminatedUnion<Types extends [$ZodTypeDiscriminable, ...$ZodTypeDiscriminable[]], Disc extends string>(Class: util.SchemaClass<schemas.$ZodDiscriminatedUnion>, discriminator: Disc, options: Types, params?: string | $ZodDiscriminatedUnionParams): schemas.$ZodDiscriminatedUnion<Types, Disc>;
237
+ export declare function _discriminatedUnion<Types extends [$ZodTypeDiscriminable<Disc>, ...$ZodTypeDiscriminable<Disc>[]], Disc extends string>(Class: util.SchemaClass<schemas.$ZodDiscriminatedUnion>, discriminator: Disc, options: Types, params?: string | $ZodDiscriminatedUnionParams): schemas.$ZodDiscriminatedUnion<Types, Disc>;
221
238
  export type $ZodIntersectionParams = TypeParams<schemas.$ZodIntersection, "left" | "right">;
222
239
  export declare function _intersection<T extends schemas.$ZodObject, U extends schemas.$ZodObject>(Class: util.SchemaClass<schemas.$ZodIntersection>, left: T, right: U): schemas.$ZodIntersection<T, U>;
223
240
  export type $ZodTupleParams = TypeParams<schemas.$ZodTuple, "items" | "rest">;
@@ -282,7 +299,11 @@ type RawIssue<T extends errors.$ZodIssueBase> = T extends any ? util.Flatten<uti
282
299
  export interface $RefinementCtx<T = unknown> extends schemas.ParsePayload<T> {
283
300
  addIssue(arg: string | $ZodSuperRefineIssue): void;
284
301
  }
285
- export declare function _superRefine<T>(fn: (arg: T, payload: $RefinementCtx<T>) => void | Promise<void>): checks.$ZodCheck<T>;
302
+ export interface $ZodSuperRefineParams {
303
+ /** If provided, the refinement runs only when this returns `true`. By default, it is skipped if prior parsing produced aborting issues. */
304
+ when?: ((payload: schemas.ParsePayload) => boolean) | undefined;
305
+ }
306
+ export declare function _superRefine<T>(fn: (arg: T, payload: $RefinementCtx<T>) => void | Promise<void>, params?: $ZodSuperRefineParams): checks.$ZodCheck<T>;
286
307
  export declare function _check<O = unknown>(fn: schemas.CheckFn<O>, params?: string | $ZodCustomParams): checks.$ZodCheck<O>;
287
308
  export declare function describe<T>(description: string): checks.$ZodCheck<T>;
288
309
  export declare function meta<T>(metadata: registries.GlobalMeta): checks.$ZodCheck<T>;
@@ -110,6 +110,11 @@ export function _nanoid(Class, params) {
110
110
  ...util.normalizeParams(params),
111
111
  });
112
112
  }
113
+ /**
114
+ * @deprecated CUID v1 is deprecated by its authors due to information leakage
115
+ * (timestamps embedded in the id). Use {@link _cuid2} instead.
116
+ * See https://github.com/paralleldrive/cuid.
117
+ */
113
118
  // @__NO_SIDE_EFFECTS__
114
119
  export function _cuid(Class, params) {
115
120
  return new Class({
@@ -954,7 +959,7 @@ export function _refine(Class, fn, _params) {
954
959
  return schema;
955
960
  }
956
961
  // @__NO_SIDE_EFFECTS__
957
- export function _superRefine(fn) {
962
+ export function _superRefine(fn, params) {
958
963
  const ch = _check((payload) => {
959
964
  payload.addIssue = (issue) => {
960
965
  if (typeof issue === "string") {
@@ -973,7 +978,7 @@ export function _superRefine(fn) {
973
978
  }
974
979
  };
975
980
  return fn(payload.value, payload);
976
- });
981
+ }, params);
977
982
  return ch;
978
983
  }
979
984
  // @__NO_SIDE_EFFECTS__
@@ -7,7 +7,7 @@ export interface $ZodCheckDef {
7
7
  error?: errors.$ZodErrorMap<never> | undefined;
8
8
  /** If true, no later checks will be executed if this check fails. Default `false`. */
9
9
  abort?: boolean | undefined;
10
- /** If provided, this check will only be executed if the function returns `true`. Defaults to `payload => z.util.isAborted(payload)`. */
10
+ /** If provided, the check runs only when this returns `true`. By default, it is skipped if prior parsing produced aborting issues. */
11
11
  when?: ((payload: schemas.ParsePayload) => boolean) | undefined;
12
12
  }
13
13
  export interface $ZodCheckInternals<T> {
@@ -7,7 +7,7 @@ export interface $ZodCheckDef {
7
7
  error?: errors.$ZodErrorMap<never> | undefined;
8
8
  /** If true, no later checks will be executed if this check fails. Default `false`. */
9
9
  abort?: boolean | undefined;
10
- /** If provided, this check will only be executed if the function returns `true`. Defaults to `payload => z.util.isAborted(payload)`. */
10
+ /** If provided, the check runs only when this returns `true`. By default, it is skipped if prior parsing produced aborting issues. */
11
11
  when?: ((payload: schemas.ParsePayload) => boolean) | undefined;
12
12
  }
13
13
  export interface $ZodCheckInternals<T> {
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ var _a;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.globalConfig = exports.$ZodEncodeError = exports.$ZodAsyncError = exports.$brand = exports.NEVER = void 0;
4
5
  exports.$constructor = $constructor;
@@ -75,7 +76,8 @@ class $ZodEncodeError extends Error {
75
76
  }
76
77
  }
77
78
  exports.$ZodEncodeError = $ZodEncodeError;
78
- exports.globalConfig = {};
79
+ (_a = globalThis).__zod_globalConfig ?? (_a.__zod_globalConfig = {});
80
+ exports.globalConfig = globalThis.__zod_globalConfig;
79
81
  function config(newConfig) {
80
82
  if (newConfig)
81
83
  Object.assign(exports.globalConfig, newConfig);
@@ -1,5 +1,6 @@
1
+ var _a;
1
2
  /** A special constant with type `never` */
2
- export const NEVER = Object.freeze({
3
+ export const NEVER = /*@__PURE__*/ Object.freeze({
3
4
  status: "aborted",
4
5
  });
5
6
  export /*@__NO_SIDE_EFFECTS__*/ function $constructor(name, initializer, params) {
@@ -68,7 +69,8 @@ export class $ZodEncodeError extends Error {
68
69
  this.name = "ZodEncodeError";
69
70
  }
70
71
  }
71
- export const globalConfig = {};
72
+ (_a = globalThis).__zod_globalConfig ?? (_a.__zod_globalConfig = {});
73
+ export const globalConfig = globalThis.__zod_globalConfig;
72
74
  export function config(newConfig) {
73
75
  if (newConfig)
74
76
  Object.assign(globalConfig, newConfig);
@@ -65,35 +65,38 @@ function flattenError(error, mapper = (issue) => issue.message) {
65
65
  }
66
66
  function formatError(error, mapper = (issue) => issue.message) {
67
67
  const fieldErrors = { _errors: [] };
68
- const processError = (error) => {
68
+ const processError = (error, path = []) => {
69
69
  for (const issue of error.issues) {
70
70
  if (issue.code === "invalid_union" && issue.errors.length) {
71
- issue.errors.map((issues) => processError({ issues }));
71
+ issue.errors.map((issues) => processError({ issues }, [...path, ...issue.path]));
72
72
  }
73
73
  else if (issue.code === "invalid_key") {
74
- processError({ issues: issue.issues });
74
+ processError({ issues: issue.issues }, [...path, ...issue.path]);
75
75
  }
76
76
  else if (issue.code === "invalid_element") {
77
- processError({ issues: issue.issues });
78
- }
79
- else if (issue.path.length === 0) {
80
- fieldErrors._errors.push(mapper(issue));
77
+ processError({ issues: issue.issues }, [...path, ...issue.path]);
81
78
  }
82
79
  else {
83
- let curr = fieldErrors;
84
- let i = 0;
85
- while (i < issue.path.length) {
86
- const el = issue.path[i];
87
- const terminal = i === issue.path.length - 1;
88
- if (!terminal) {
89
- curr[el] = curr[el] || { _errors: [] };
90
- }
91
- else {
92
- curr[el] = curr[el] || { _errors: [] };
93
- curr[el]._errors.push(mapper(issue));
80
+ const fullpath = [...path, ...issue.path];
81
+ if (fullpath.length === 0) {
82
+ fieldErrors._errors.push(mapper(issue));
83
+ }
84
+ else {
85
+ let curr = fieldErrors;
86
+ let i = 0;
87
+ while (i < fullpath.length) {
88
+ const el = fullpath[i];
89
+ const terminal = i === fullpath.length - 1;
90
+ if (!terminal) {
91
+ curr[el] = curr[el] || { _errors: [] };
92
+ }
93
+ else {
94
+ curr[el] = curr[el] || { _errors: [] };
95
+ curr[el]._errors.push(mapper(issue));
96
+ }
97
+ curr = curr[el];
98
+ i++;
94
99
  }
95
- curr = curr[el];
96
- i++;
97
100
  }
98
101
  }
99
102
  }
@@ -108,13 +111,13 @@ function treeifyError(error, mapper = (issue) => issue.message) {
108
111
  for (const issue of error.issues) {
109
112
  if (issue.code === "invalid_union" && issue.errors.length) {
110
113
  // regular union error
111
- issue.errors.map((issues) => processError({ issues }, issue.path));
114
+ issue.errors.map((issues) => processError({ issues }, [...path, ...issue.path]));
112
115
  }
113
116
  else if (issue.code === "invalid_key") {
114
- processError({ issues: issue.issues }, issue.path);
117
+ processError({ issues: issue.issues }, [...path, ...issue.path]);
115
118
  }
116
119
  else if (issue.code === "invalid_element") {
117
- processError({ issues: issue.issues }, issue.path);
120
+ processError({ issues: issue.issues }, [...path, ...issue.path]);
118
121
  }
119
122
  else {
120
123
  const fullpath = [...path, ...issue.path];
@@ -54,6 +54,7 @@ interface $ZodIssueInvalidUnionNoMatch extends $ZodIssueBase {
54
54
  readonly errors: $ZodIssue[][];
55
55
  readonly input?: unknown;
56
56
  readonly discriminator?: string | undefined;
57
+ readonly options?: util.Primitive[];
57
58
  readonly inclusive?: true;
58
59
  }
59
60
  interface $ZodIssueInvalidUnionMultipleMatch extends $ZodIssueBase {
@@ -54,6 +54,7 @@ interface $ZodIssueInvalidUnionNoMatch extends $ZodIssueBase {
54
54
  readonly errors: $ZodIssue[][];
55
55
  readonly input?: unknown;
56
56
  readonly discriminator?: string | undefined;
57
+ readonly options?: util.Primitive[];
57
58
  readonly inclusive?: true;
58
59
  }
59
60
  interface $ZodIssueInvalidUnionMultipleMatch extends $ZodIssueBase {
@@ -34,35 +34,38 @@ export function flattenError(error, mapper = (issue) => issue.message) {
34
34
  }
35
35
  export function formatError(error, mapper = (issue) => issue.message) {
36
36
  const fieldErrors = { _errors: [] };
37
- const processError = (error) => {
37
+ const processError = (error, path = []) => {
38
38
  for (const issue of error.issues) {
39
39
  if (issue.code === "invalid_union" && issue.errors.length) {
40
- issue.errors.map((issues) => processError({ issues }));
40
+ issue.errors.map((issues) => processError({ issues }, [...path, ...issue.path]));
41
41
  }
42
42
  else if (issue.code === "invalid_key") {
43
- processError({ issues: issue.issues });
43
+ processError({ issues: issue.issues }, [...path, ...issue.path]);
44
44
  }
45
45
  else if (issue.code === "invalid_element") {
46
- processError({ issues: issue.issues });
47
- }
48
- else if (issue.path.length === 0) {
49
- fieldErrors._errors.push(mapper(issue));
46
+ processError({ issues: issue.issues }, [...path, ...issue.path]);
50
47
  }
51
48
  else {
52
- let curr = fieldErrors;
53
- let i = 0;
54
- while (i < issue.path.length) {
55
- const el = issue.path[i];
56
- const terminal = i === issue.path.length - 1;
57
- if (!terminal) {
58
- curr[el] = curr[el] || { _errors: [] };
59
- }
60
- else {
61
- curr[el] = curr[el] || { _errors: [] };
62
- curr[el]._errors.push(mapper(issue));
49
+ const fullpath = [...path, ...issue.path];
50
+ if (fullpath.length === 0) {
51
+ fieldErrors._errors.push(mapper(issue));
52
+ }
53
+ else {
54
+ let curr = fieldErrors;
55
+ let i = 0;
56
+ while (i < fullpath.length) {
57
+ const el = fullpath[i];
58
+ const terminal = i === fullpath.length - 1;
59
+ if (!terminal) {
60
+ curr[el] = curr[el] || { _errors: [] };
61
+ }
62
+ else {
63
+ curr[el] = curr[el] || { _errors: [] };
64
+ curr[el]._errors.push(mapper(issue));
65
+ }
66
+ curr = curr[el];
67
+ i++;
63
68
  }
64
- curr = curr[el];
65
- i++;
66
69
  }
67
70
  }
68
71
  }
@@ -77,13 +80,13 @@ export function treeifyError(error, mapper = (issue) => issue.message) {
77
80
  for (const issue of error.issues) {
78
81
  if (issue.code === "invalid_union" && issue.errors.length) {
79
82
  // regular union error
80
- issue.errors.map((issues) => processError({ issues }, issue.path));
83
+ issue.errors.map((issues) => processError({ issues }, [...path, ...issue.path]));
81
84
  }
82
85
  else if (issue.code === "invalid_key") {
83
- processError({ issues: issue.issues }, issue.path);
86
+ processError({ issues: issue.issues }, [...path, ...issue.path]);
84
87
  }
85
88
  else if (issue.code === "invalid_element") {
86
- processError({ issues: issue.issues }, issue.path);
89
+ processError({ issues: issue.issues }, [...path, ...issue.path]);
87
90
  }
88
91
  else {
89
92
  const fullpath = [...path, ...issue.path];
@@ -58,8 +58,12 @@ const numberProcessor = (schema, ctx, _json, _params) => {
58
58
  json.type = "integer";
59
59
  else
60
60
  json.type = "number";
61
- if (typeof exclusiveMinimum === "number") {
62
- if (ctx.target === "draft-04" || ctx.target === "openapi-3.0") {
61
+ // when both minimum and exclusiveMinimum exist, pick the more restrictive one
62
+ const exMin = typeof exclusiveMinimum === "number" && exclusiveMinimum >= (minimum ?? Number.NEGATIVE_INFINITY);
63
+ const exMax = typeof exclusiveMaximum === "number" && exclusiveMaximum <= (maximum ?? Number.POSITIVE_INFINITY);
64
+ const legacy = ctx.target === "draft-04" || ctx.target === "openapi-3.0";
65
+ if (exMin) {
66
+ if (legacy) {
63
67
  json.minimum = exclusiveMinimum;
64
68
  json.exclusiveMinimum = true;
65
69
  }
@@ -67,17 +71,11 @@ const numberProcessor = (schema, ctx, _json, _params) => {
67
71
  json.exclusiveMinimum = exclusiveMinimum;
68
72
  }
69
73
  }
70
- if (typeof minimum === "number") {
74
+ else if (typeof minimum === "number") {
71
75
  json.minimum = minimum;
72
- if (typeof exclusiveMinimum === "number" && ctx.target !== "draft-04") {
73
- if (exclusiveMinimum >= minimum)
74
- delete json.minimum;
75
- else
76
- delete json.exclusiveMinimum;
77
- }
78
76
  }
79
- if (typeof exclusiveMaximum === "number") {
80
- if (ctx.target === "draft-04" || ctx.target === "openapi-3.0") {
77
+ if (exMax) {
78
+ if (legacy) {
81
79
  json.maximum = exclusiveMaximum;
82
80
  json.exclusiveMaximum = true;
83
81
  }
@@ -85,14 +83,8 @@ const numberProcessor = (schema, ctx, _json, _params) => {
85
83
  json.exclusiveMaximum = exclusiveMaximum;
86
84
  }
87
85
  }
88
- if (typeof maximum === "number") {
86
+ else if (typeof maximum === "number") {
89
87
  json.maximum = maximum;
90
- if (typeof exclusiveMaximum === "number" && ctx.target !== "draft-04") {
91
- if (exclusiveMaximum <= maximum)
92
- delete json.maximum;
93
- else
94
- delete json.exclusiveMaximum;
95
- }
96
88
  }
97
89
  if (typeof multipleOf === "number")
98
90
  json.multipleOf = multipleOf;
@@ -302,7 +294,10 @@ const arrayProcessor = (schema, ctx, _json, params) => {
302
294
  if (typeof maximum === "number")
303
295
  json.maxItems = maximum;
304
296
  json.type = "array";
305
- json.items = (0, to_json_schema_js_1.process)(def.element, ctx, { ...params, path: [...params.path, "items"] });
297
+ json.items = (0, to_json_schema_js_1.process)(def.element, ctx, {
298
+ ...params,
299
+ path: [...params.path, "items"],
300
+ });
306
301
  };
307
302
  exports.arrayProcessor = arrayProcessor;
308
303
  const objectProcessor = (schema, ctx, _json, params) => {
@@ -530,7 +525,8 @@ const catchProcessor = (schema, ctx, json, params) => {
530
525
  exports.catchProcessor = catchProcessor;
531
526
  const pipeProcessor = (schema, ctx, _json, params) => {
532
527
  const def = schema._zod.def;
533
- const innerType = ctx.io === "input" ? (def.in._zod.def.type === "transform" ? def.out : def.in) : def.out;
528
+ const inIsTransform = def.in._zod.traits.has("$ZodTransform");
529
+ const innerType = ctx.io === "input" ? (inIsTransform ? def.out : def.in) : def.out;
534
530
  (0, to_json_schema_js_1.process)(innerType, ctx, params);
535
531
  const seen = ctx.seen.get(schema);
536
532
  seen.ref = innerType;
@@ -53,8 +53,12 @@ export const numberProcessor = (schema, ctx, _json, _params) => {
53
53
  json.type = "integer";
54
54
  else
55
55
  json.type = "number";
56
- if (typeof exclusiveMinimum === "number") {
57
- if (ctx.target === "draft-04" || ctx.target === "openapi-3.0") {
56
+ // when both minimum and exclusiveMinimum exist, pick the more restrictive one
57
+ const exMin = typeof exclusiveMinimum === "number" && exclusiveMinimum >= (minimum ?? Number.NEGATIVE_INFINITY);
58
+ const exMax = typeof exclusiveMaximum === "number" && exclusiveMaximum <= (maximum ?? Number.POSITIVE_INFINITY);
59
+ const legacy = ctx.target === "draft-04" || ctx.target === "openapi-3.0";
60
+ if (exMin) {
61
+ if (legacy) {
58
62
  json.minimum = exclusiveMinimum;
59
63
  json.exclusiveMinimum = true;
60
64
  }
@@ -62,17 +66,11 @@ export const numberProcessor = (schema, ctx, _json, _params) => {
62
66
  json.exclusiveMinimum = exclusiveMinimum;
63
67
  }
64
68
  }
65
- if (typeof minimum === "number") {
69
+ else if (typeof minimum === "number") {
66
70
  json.minimum = minimum;
67
- if (typeof exclusiveMinimum === "number" && ctx.target !== "draft-04") {
68
- if (exclusiveMinimum >= minimum)
69
- delete json.minimum;
70
- else
71
- delete json.exclusiveMinimum;
72
- }
73
71
  }
74
- if (typeof exclusiveMaximum === "number") {
75
- if (ctx.target === "draft-04" || ctx.target === "openapi-3.0") {
72
+ if (exMax) {
73
+ if (legacy) {
76
74
  json.maximum = exclusiveMaximum;
77
75
  json.exclusiveMaximum = true;
78
76
  }
@@ -80,14 +78,8 @@ export const numberProcessor = (schema, ctx, _json, _params) => {
80
78
  json.exclusiveMaximum = exclusiveMaximum;
81
79
  }
82
80
  }
83
- if (typeof maximum === "number") {
81
+ else if (typeof maximum === "number") {
84
82
  json.maximum = maximum;
85
- if (typeof exclusiveMaximum === "number" && ctx.target !== "draft-04") {
86
- if (exclusiveMaximum <= maximum)
87
- delete json.maximum;
88
- else
89
- delete json.exclusiveMaximum;
90
- }
91
83
  }
92
84
  if (typeof multipleOf === "number")
93
85
  json.multipleOf = multipleOf;
@@ -275,7 +267,10 @@ export const arrayProcessor = (schema, ctx, _json, params) => {
275
267
  if (typeof maximum === "number")
276
268
  json.maxItems = maximum;
277
269
  json.type = "array";
278
- json.items = process(def.element, ctx, { ...params, path: [...params.path, "items"] });
270
+ json.items = process(def.element, ctx, {
271
+ ...params,
272
+ path: [...params.path, "items"],
273
+ });
279
274
  };
280
275
  export const objectProcessor = (schema, ctx, _json, params) => {
281
276
  const json = _json;
@@ -492,7 +487,8 @@ export const catchProcessor = (schema, ctx, json, params) => {
492
487
  };
493
488
  export const pipeProcessor = (schema, ctx, _json, params) => {
494
489
  const def = schema._zod.def;
495
- const innerType = ctx.io === "input" ? (def.in._zod.def.type === "transform" ? def.out : def.in) : def.out;
490
+ const inIsTransform = def.in._zod.traits.has("$ZodTransform");
491
+ const innerType = ctx.io === "input" ? (inIsTransform ? def.out : def.in) : def.out;
496
492
  process(innerType, ctx, params);
497
493
  const seen = ctx.seen.get(schema);
498
494
  seen.ref = innerType;
@@ -2,5 +2,6 @@
2
2
  "type": "module",
3
3
  "main": "./index.cjs",
4
4
  "module": "./index.js",
5
- "types": "./index.d.cts"
5
+ "types": "./index.d.cts",
6
+ "sideEffects": false
6
7
  }
@@ -28,7 +28,7 @@ const core = __importStar(require("./core.cjs"));
28
28
  const errors = __importStar(require("./errors.cjs"));
29
29
  const util = __importStar(require("./util.cjs"));
30
30
  const _parse = (_Err) => (schema, value, _ctx, _params) => {
31
- const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
31
+ const ctx = _ctx ? { ..._ctx, async: false } : { async: false };
32
32
  const result = schema._zod.run({ value, issues: [] }, ctx);
33
33
  if (result instanceof Promise) {
34
34
  throw new core.$ZodAsyncError();
@@ -43,7 +43,7 @@ const _parse = (_Err) => (schema, value, _ctx, _params) => {
43
43
  exports._parse = _parse;
44
44
  exports.parse = (0, exports._parse)(errors.$ZodRealError);
45
45
  const _parseAsync = (_Err) => async (schema, value, _ctx, params) => {
46
- const ctx = _ctx ? Object.assign(_ctx, { async: true }) : { async: true };
46
+ const ctx = _ctx ? { ..._ctx, async: true } : { async: true };
47
47
  let result = schema._zod.run({ value, issues: [] }, ctx);
48
48
  if (result instanceof Promise)
49
49
  result = await result;
@@ -72,7 +72,7 @@ const _safeParse = (_Err) => (schema, value, _ctx) => {
72
72
  exports._safeParse = _safeParse;
73
73
  exports.safeParse = (0, exports._safeParse)(errors.$ZodRealError);
74
74
  const _safeParseAsync = (_Err) => async (schema, value, _ctx) => {
75
- const ctx = _ctx ? Object.assign(_ctx, { async: true }) : { async: true };
75
+ const ctx = _ctx ? { ..._ctx, async: true } : { async: true };
76
76
  let result = schema._zod.run({ value, issues: [] }, ctx);
77
77
  if (result instanceof Promise)
78
78
  result = await result;
@@ -86,7 +86,7 @@ const _safeParseAsync = (_Err) => async (schema, value, _ctx) => {
86
86
  exports._safeParseAsync = _safeParseAsync;
87
87
  exports.safeParseAsync = (0, exports._safeParseAsync)(errors.$ZodRealError);
88
88
  const _encode = (_Err) => (schema, value, _ctx) => {
89
- const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" }) : { direction: "backward" };
89
+ const ctx = _ctx ? { ..._ctx, direction: "backward" } : { direction: "backward" };
90
90
  return (0, exports._parse)(_Err)(schema, value, ctx);
91
91
  };
92
92
  exports._encode = _encode;
@@ -97,7 +97,7 @@ const _decode = (_Err) => (schema, value, _ctx) => {
97
97
  exports._decode = _decode;
98
98
  exports.decode = (0, exports._decode)(errors.$ZodRealError);
99
99
  const _encodeAsync = (_Err) => async (schema, value, _ctx) => {
100
- const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" }) : { direction: "backward" };
100
+ const ctx = _ctx ? { ..._ctx, direction: "backward" } : { direction: "backward" };
101
101
  return (0, exports._parseAsync)(_Err)(schema, value, ctx);
102
102
  };
103
103
  exports._encodeAsync = _encodeAsync;
@@ -108,7 +108,7 @@ const _decodeAsync = (_Err) => async (schema, value, _ctx) => {
108
108
  exports._decodeAsync = _decodeAsync;
109
109
  exports.decodeAsync = (0, exports._decodeAsync)(errors.$ZodRealError);
110
110
  const _safeEncode = (_Err) => (schema, value, _ctx) => {
111
- const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" }) : { direction: "backward" };
111
+ const ctx = _ctx ? { ..._ctx, direction: "backward" } : { direction: "backward" };
112
112
  return (0, exports._safeParse)(_Err)(schema, value, ctx);
113
113
  };
114
114
  exports._safeEncode = _safeEncode;
@@ -119,7 +119,7 @@ const _safeDecode = (_Err) => (schema, value, _ctx) => {
119
119
  exports._safeDecode = _safeDecode;
120
120
  exports.safeDecode = (0, exports._safeDecode)(errors.$ZodRealError);
121
121
  const _safeEncodeAsync = (_Err) => async (schema, value, _ctx) => {
122
- const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" }) : { direction: "backward" };
122
+ const ctx = _ctx ? { ..._ctx, direction: "backward" } : { direction: "backward" };
123
123
  return (0, exports._safeParseAsync)(_Err)(schema, value, ctx);
124
124
  };
125
125
  exports._safeEncodeAsync = _safeEncodeAsync;