fullstacked 0.12.1-1359 → 0.12.1-1364
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.
- package/fullstacked_modules/@fullstacked/ai-agent/ai-agent.js +55352 -53576
- package/fullstacked_modules/@fullstacked/ai-agent/index.ts +0 -1
- package/fullstacked_modules/@fullstacked/ai-agent/lock.json +157 -152
- package/fullstacked_modules/@fullstacked/ai-agent/package.json +13 -13
- package/fullstacked_modules/@fullstacked/ai-agent/src/providers/ollama.ts +2 -2
- package/fullstacked_modules/@fullstacked/ui/index.js +6 -1
- package/fullstacked_modules/zod/README.md +4 -4
- package/fullstacked_modules/zod/index.cjs +2 -2
- package/fullstacked_modules/zod/index.d.cts +2 -2
- package/fullstacked_modules/zod/index.d.ts +2 -2
- package/fullstacked_modules/zod/index.js +2 -2
- package/fullstacked_modules/zod/locales/index.cjs +17 -0
- package/fullstacked_modules/zod/locales/index.d.cts +1 -0
- package/fullstacked_modules/zod/locales/index.d.ts +1 -0
- package/fullstacked_modules/zod/locales/index.js +1 -0
- package/fullstacked_modules/zod/locales/package.json +6 -0
- package/fullstacked_modules/zod/mini/index.cjs +17 -0
- package/fullstacked_modules/zod/mini/index.d.cts +1 -0
- package/fullstacked_modules/zod/mini/index.d.ts +1 -0
- package/fullstacked_modules/zod/mini/index.js +1 -0
- package/fullstacked_modules/zod/mini/package.json +6 -0
- package/fullstacked_modules/zod/package.json +29 -12
- package/fullstacked_modules/zod/src/index.ts +2 -2
- package/fullstacked_modules/zod/src/locales/index.ts +1 -0
- package/fullstacked_modules/zod/src/mini/index.ts +1 -0
- package/fullstacked_modules/zod/src/v3/ZodError.ts +1 -1
- package/fullstacked_modules/zod/src/v3/tests/object.test.ts +2 -2
- package/fullstacked_modules/zod/src/v3/tests/string.test.ts +2 -2
- package/fullstacked_modules/zod/src/v3/types.ts +3 -1
- package/fullstacked_modules/zod/src/v4/classic/checks.ts +1 -0
- package/fullstacked_modules/zod/src/v4/classic/compat.ts +4 -0
- package/fullstacked_modules/zod/src/v4/classic/errors.ts +9 -2
- package/fullstacked_modules/zod/src/v4/classic/external.ts +1 -1
- package/fullstacked_modules/zod/src/v4/classic/parse.ts +49 -0
- package/fullstacked_modules/zod/src/v4/classic/schemas.ts +224 -81
- package/fullstacked_modules/zod/src/v4/classic/tests/array.test.ts +6 -6
- package/fullstacked_modules/zod/src/v4/classic/tests/catch.test.ts +29 -5
- package/fullstacked_modules/zod/src/v4/classic/tests/codec-examples.test.ts +573 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/codec.test.ts +562 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/continuability.test.ts +1 -1
- package/fullstacked_modules/zod/src/v4/classic/tests/datetime.test.ts +6 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/default.test.ts +52 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +42 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/error-utils.test.ts +70 -2
- package/fullstacked_modules/zod/src/v4/classic/tests/file.test.ts +9 -4
- package/fullstacked_modules/zod/src/v4/classic/tests/firstparty.test.ts +4 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/function.test.ts +71 -31
- package/fullstacked_modules/zod/src/v4/classic/tests/hash.test.ts +68 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/index.test.ts +15 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/literal.test.ts +25 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/nonoptional.test.ts +15 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/number.test.ts +23 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/object.test.ts +48 -2
- package/fullstacked_modules/zod/src/v4/classic/tests/optional.test.ts +13 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/partial.test.ts +193 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/pickomit.test.ts +5 -5
- package/fullstacked_modules/zod/src/v4/classic/tests/pipe.test.ts +25 -5
- package/fullstacked_modules/zod/src/v4/classic/tests/prefault.test.ts +37 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/preprocess.test.ts +5 -21
- package/fullstacked_modules/zod/src/v4/classic/tests/record.test.ts +15 -1
- package/fullstacked_modules/zod/src/v4/classic/tests/recursive-types.test.ts +226 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/refine.test.ts +78 -5
- package/fullstacked_modules/zod/src/v4/classic/tests/set.test.ts +5 -3
- package/fullstacked_modules/zod/src/v4/classic/tests/string-formats.test.ts +16 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/string.test.ts +204 -5
- package/fullstacked_modules/zod/src/v4/classic/tests/stringbool.test.ts +40 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/template-literal.test.ts +14 -9
- package/fullstacked_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +315 -7
- package/fullstacked_modules/zod/src/v4/classic/tests/transform.test.ts +111 -0
- package/fullstacked_modules/zod/src/v4/classic/tests/tuple.test.ts +2 -2
- package/fullstacked_modules/zod/src/v4/classic/tests/union.test.ts +90 -3
- package/fullstacked_modules/zod/src/v4/core/api.ts +160 -133
- package/fullstacked_modules/zod/src/v4/core/checks.ts +6 -2
- package/fullstacked_modules/zod/src/v4/core/core.ts +9 -28
- package/fullstacked_modules/zod/src/v4/core/doc.ts +2 -2
- package/fullstacked_modules/zod/src/v4/core/errors.ts +49 -60
- package/fullstacked_modules/zod/src/v4/core/index.ts +0 -1
- package/fullstacked_modules/zod/src/v4/core/json-schema.ts +7 -3
- package/fullstacked_modules/zod/src/v4/core/parse.ts +101 -0
- package/fullstacked_modules/zod/src/v4/core/regexes.ts +56 -14
- package/fullstacked_modules/zod/src/v4/core/registries.ts +5 -4
- package/fullstacked_modules/zod/src/v4/core/schemas.ts +705 -230
- package/fullstacked_modules/zod/src/v4/core/tests/extend.test.ts +18 -0
- package/fullstacked_modules/zod/src/v4/core/tests/locales/es.test.ts +181 -0
- package/fullstacked_modules/zod/src/v4/core/to-json-schema.ts +100 -33
- package/fullstacked_modules/zod/src/v4/core/util.ts +237 -102
- package/fullstacked_modules/zod/src/v4/core/versions.ts +2 -2
- package/fullstacked_modules/zod/src/v4/locales/bg.ts +136 -0
- package/fullstacked_modules/zod/src/v4/locales/da.ts +141 -0
- package/fullstacked_modules/zod/src/v4/locales/es.ts +44 -10
- package/fullstacked_modules/zod/src/v4/locales/index.ts +8 -0
- package/fullstacked_modules/zod/src/v4/locales/is.ts +127 -0
- package/fullstacked_modules/zod/src/v4/locales/ka.ts +138 -0
- package/fullstacked_modules/zod/src/v4/locales/kh.ts +3 -122
- package/fullstacked_modules/zod/src/v4/locales/km.ts +126 -0
- package/fullstacked_modules/zod/src/v4/locales/lt.ts +265 -0
- package/fullstacked_modules/zod/src/v4/locales/ua.ts +3 -122
- package/fullstacked_modules/zod/src/v4/locales/uk.ts +126 -0
- package/fullstacked_modules/zod/src/v4/locales/yo.ts +131 -0
- package/fullstacked_modules/zod/src/v4/mini/external.ts +1 -1
- package/fullstacked_modules/zod/src/v4/mini/parse.ts +14 -1
- package/fullstacked_modules/zod/src/v4/mini/schemas.ts +186 -40
- package/fullstacked_modules/zod/src/v4/mini/tests/assignability.test.ts +1 -1
- package/fullstacked_modules/zod/src/v4/mini/tests/codec.test.ts +529 -0
- package/fullstacked_modules/zod/src/v4/mini/tests/computed.test.ts +1 -1
- package/fullstacked_modules/zod/src/v4/mini/tests/error.test.ts +1 -1
- package/fullstacked_modules/zod/src/v4/mini/tests/index.test.ts +29 -1
- package/fullstacked_modules/zod/src/v4/mini/tests/number.test.ts +1 -1
- package/fullstacked_modules/zod/src/v4/mini/tests/object.test.ts +16 -1
- package/fullstacked_modules/zod/src/v4/mini/tests/prototypes.test.ts +1 -1
- package/fullstacked_modules/zod/src/v4/mini/tests/recursive-types.test.ts +1 -1
- package/fullstacked_modules/zod/src/v4/mini/tests/string.test.ts +17 -1
- package/fullstacked_modules/zod/v3/ZodError.cjs +1 -1
- package/fullstacked_modules/zod/v3/ZodError.d.cts +6 -6
- package/fullstacked_modules/zod/v3/ZodError.d.ts +6 -6
- package/fullstacked_modules/zod/v3/ZodError.js +1 -1
- package/fullstacked_modules/zod/v3/locales/en.cjs +1 -0
- package/fullstacked_modules/zod/v3/locales/en.d.cts +1 -1
- package/fullstacked_modules/zod/v3/package.json +6 -0
- package/fullstacked_modules/zod/v3/types.cjs +2 -0
- package/fullstacked_modules/zod/v3/types.d.cts +4 -1
- package/fullstacked_modules/zod/v3/types.d.ts +4 -1
- package/fullstacked_modules/zod/v3/types.js +2 -0
- package/fullstacked_modules/zod/v4/classic/checks.d.cts +1 -1
- package/fullstacked_modules/zod/v4/classic/checks.d.ts +1 -1
- package/fullstacked_modules/zod/v4/classic/compat.cjs +5 -1
- package/fullstacked_modules/zod/v4/classic/compat.d.cts +4 -0
- package/fullstacked_modules/zod/v4/classic/compat.d.ts +4 -0
- package/fullstacked_modules/zod/v4/classic/compat.js +4 -0
- package/fullstacked_modules/zod/v4/classic/errors.cjs +9 -2
- package/fullstacked_modules/zod/v4/classic/errors.js +9 -2
- package/fullstacked_modules/zod/v4/classic/external.cjs +2 -2
- package/fullstacked_modules/zod/v4/classic/external.d.cts +1 -1
- package/fullstacked_modules/zod/v4/classic/external.d.ts +1 -1
- package/fullstacked_modules/zod/v4/classic/external.js +1 -1
- package/fullstacked_modules/zod/v4/classic/package.json +6 -0
- package/fullstacked_modules/zod/v4/classic/parse.cjs +10 -1
- package/fullstacked_modules/zod/v4/classic/parse.d.cts +8 -0
- package/fullstacked_modules/zod/v4/classic/parse.d.ts +8 -0
- package/fullstacked_modules/zod/v4/classic/parse.js +9 -0
- package/fullstacked_modules/zod/v4/classic/schemas.cjs +90 -48
- package/fullstacked_modules/zod/v4/classic/schemas.d.cts +70 -27
- package/fullstacked_modules/zod/v4/classic/schemas.d.ts +70 -27
- package/fullstacked_modules/zod/v4/classic/schemas.js +81 -47
- package/fullstacked_modules/zod/v4/core/api.cjs +52 -31
- package/fullstacked_modules/zod/v4/core/api.d.cts +87 -76
- package/fullstacked_modules/zod/v4/core/api.d.ts +87 -76
- package/fullstacked_modules/zod/v4/core/api.js +50 -31
- package/fullstacked_modules/zod/v4/core/checks.cjs +4 -0
- package/fullstacked_modules/zod/v4/core/checks.d.cts +2 -2
- package/fullstacked_modules/zod/v4/core/checks.d.ts +2 -2
- package/fullstacked_modules/zod/v4/core/checks.js +4 -0
- package/fullstacked_modules/zod/v4/core/core.cjs +8 -1
- package/fullstacked_modules/zod/v4/core/core.d.cts +5 -2
- package/fullstacked_modules/zod/v4/core/core.d.ts +5 -2
- package/fullstacked_modules/zod/v4/core/core.js +6 -0
- package/fullstacked_modules/zod/v4/core/doc.d.cts +1 -1
- package/fullstacked_modules/zod/v4/core/doc.d.ts +1 -1
- package/fullstacked_modules/zod/v4/core/errors.cjs +6 -19
- package/fullstacked_modules/zod/v4/core/errors.d.cts +24 -22
- package/fullstacked_modules/zod/v4/core/errors.d.ts +24 -22
- package/fullstacked_modules/zod/v4/core/errors.js +6 -19
- package/fullstacked_modules/zod/v4/core/index.cjs +0 -1
- package/fullstacked_modules/zod/v4/core/index.d.cts +0 -1
- package/fullstacked_modules/zod/v4/core/index.d.ts +0 -1
- package/fullstacked_modules/zod/v4/core/index.js +0 -1
- package/fullstacked_modules/zod/v4/core/json-schema.d.cts +4 -3
- package/fullstacked_modules/zod/v4/core/json-schema.d.ts +4 -3
- package/fullstacked_modules/zod/v4/core/package.json +6 -0
- package/fullstacked_modules/zod/v4/core/parse.cjs +45 -1
- package/fullstacked_modules/zod/v4/core/parse.d.cts +24 -0
- package/fullstacked_modules/zod/v4/core/parse.d.ts +24 -0
- package/fullstacked_modules/zod/v4/core/parse.js +36 -0
- package/fullstacked_modules/zod/v4/core/regexes.cjs +49 -16
- package/fullstacked_modules/zod/v4/core/regexes.d.cts +18 -2
- package/fullstacked_modules/zod/v4/core/regexes.d.ts +18 -2
- package/fullstacked_modules/zod/v4/core/regexes.js +46 -14
- package/fullstacked_modules/zod/v4/core/registries.cjs +4 -3
- package/fullstacked_modules/zod/v4/core/registries.d.cts +2 -2
- package/fullstacked_modules/zod/v4/core/registries.d.ts +2 -2
- package/fullstacked_modules/zod/v4/core/registries.js +4 -3
- package/fullstacked_modules/zod/v4/core/schemas.cjs +409 -171
- package/fullstacked_modules/zod/v4/core/schemas.d.cts +88 -16
- package/fullstacked_modules/zod/v4/core/schemas.d.ts +88 -16
- package/fullstacked_modules/zod/v4/core/schemas.js +408 -170
- package/fullstacked_modules/zod/v4/core/to-json-schema.cjs +97 -31
- package/fullstacked_modules/zod/v4/core/to-json-schema.d.cts +5 -3
- package/fullstacked_modules/zod/v4/core/to-json-schema.d.ts +5 -3
- package/fullstacked_modules/zod/v4/core/to-json-schema.js +97 -31
- package/fullstacked_modules/zod/v4/core/util.cjs +220 -101
- package/fullstacked_modules/zod/v4/core/util.d.cts +14 -0
- package/fullstacked_modules/zod/v4/core/util.d.ts +14 -0
- package/fullstacked_modules/zod/v4/core/util.js +209 -101
- package/fullstacked_modules/zod/v4/core/versions.cjs +2 -2
- package/fullstacked_modules/zod/v4/core/versions.d.cts +1 -1
- package/fullstacked_modules/zod/v4/core/versions.d.ts +1 -1
- package/fullstacked_modules/zod/v4/core/versions.js +2 -2
- package/fullstacked_modules/zod/v4/locales/ar.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ar.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/az.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/az.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/be.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/be.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/bg.cjs +156 -0
- package/fullstacked_modules/zod/v4/locales/bg.d.cts +5 -0
- package/fullstacked_modules/zod/v4/locales/bg.d.ts +5 -0
- package/fullstacked_modules/zod/v4/locales/bg.js +128 -0
- package/fullstacked_modules/zod/v4/locales/ca.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ca.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/cs.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/cs.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/da.cjs +158 -0
- package/fullstacked_modules/zod/v4/locales/da.d.cts +5 -0
- package/fullstacked_modules/zod/v4/locales/da.d.ts +4 -0
- package/fullstacked_modules/zod/v4/locales/da.js +131 -0
- package/fullstacked_modules/zod/v4/locales/de.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/de.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/es.cjs +43 -10
- package/fullstacked_modules/zod/v4/locales/es.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/es.js +42 -10
- package/fullstacked_modules/zod/v4/locales/fa.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/fa.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/fi.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/fi.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/fr-CA.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/fr-CA.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/fr.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/fr.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/he.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/he.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/hu.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/hu.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/id.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/id.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/index.cjs +17 -1
- package/fullstacked_modules/zod/v4/locales/index.d.cts +8 -0
- package/fullstacked_modules/zod/v4/locales/index.d.ts +8 -0
- package/fullstacked_modules/zod/v4/locales/index.js +8 -0
- package/fullstacked_modules/zod/v4/locales/is.cjs +145 -0
- package/fullstacked_modules/zod/v4/locales/is.d.cts +5 -0
- package/fullstacked_modules/zod/v4/locales/is.d.ts +5 -0
- package/fullstacked_modules/zod/v4/locales/is.js +117 -0
- package/fullstacked_modules/zod/v4/locales/it.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/it.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/ja.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ja.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/ka.cjs +153 -0
- package/fullstacked_modules/zod/v4/locales/ka.d.cts +5 -0
- package/fullstacked_modules/zod/v4/locales/ka.d.ts +5 -0
- package/fullstacked_modules/zod/v4/locales/ka.js +125 -0
- package/fullstacked_modules/zod/v4/locales/kh.cjs +6 -137
- package/fullstacked_modules/zod/v4/locales/kh.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/kh.d.ts +1 -0
- package/fullstacked_modules/zod/v4/locales/kh.js +3 -115
- package/fullstacked_modules/zod/v4/locales/km.cjs +144 -0
- package/fullstacked_modules/zod/v4/locales/km.d.cts +5 -0
- package/fullstacked_modules/zod/v4/locales/km.d.ts +4 -0
- package/fullstacked_modules/zod/v4/locales/km.js +117 -0
- package/fullstacked_modules/zod/v4/locales/ko.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ko.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/lt.cjs +258 -0
- package/fullstacked_modules/zod/v4/locales/lt.d.cts +5 -0
- package/fullstacked_modules/zod/v4/locales/lt.d.ts +5 -0
- package/fullstacked_modules/zod/v4/locales/lt.js +230 -0
- package/fullstacked_modules/zod/v4/locales/mk.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/mk.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/ms.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ms.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/nl.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/nl.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/no.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/no.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/ota.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ota.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/package.json +6 -0
- package/fullstacked_modules/zod/v4/locales/pl.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/pl.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/ps.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ps.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/pt.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/pt.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/ru.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ru.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/sl.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/sl.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/sv.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/sv.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/ta.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ta.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/th.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/th.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/ua.cjs +6 -137
- package/fullstacked_modules/zod/v4/locales/ua.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/ua.d.ts +1 -0
- package/fullstacked_modules/zod/v4/locales/ua.js +3 -115
- package/fullstacked_modules/zod/v4/locales/uk.cjs +144 -0
- package/fullstacked_modules/zod/v4/locales/uk.d.cts +5 -0
- package/fullstacked_modules/zod/v4/locales/uk.d.ts +4 -0
- package/fullstacked_modules/zod/v4/locales/uk.js +117 -0
- package/fullstacked_modules/zod/v4/locales/ur.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/ur.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/vi.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/vi.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/yo.cjs +142 -0
- package/fullstacked_modules/zod/v4/locales/yo.d.cts +5 -0
- package/fullstacked_modules/zod/v4/locales/yo.d.ts +4 -0
- package/fullstacked_modules/zod/v4/locales/yo.js +115 -0
- package/fullstacked_modules/zod/v4/locales/zh-CN.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/zh-CN.d.cts +2 -1
- package/fullstacked_modules/zod/v4/locales/zh-TW.cjs +1 -0
- package/fullstacked_modules/zod/v4/locales/zh-TW.d.cts +2 -1
- package/fullstacked_modules/zod/v4/mini/external.cjs +2 -2
- package/fullstacked_modules/zod/v4/mini/external.d.cts +1 -1
- package/fullstacked_modules/zod/v4/mini/external.d.ts +1 -1
- package/fullstacked_modules/zod/v4/mini/external.js +1 -1
- package/fullstacked_modules/zod/v4/mini/package.json +6 -0
- package/fullstacked_modules/zod/v4/mini/parse.cjs +9 -1
- package/fullstacked_modules/zod/v4/mini/parse.d.cts +1 -1
- package/fullstacked_modules/zod/v4/mini/parse.d.ts +1 -1
- package/fullstacked_modules/zod/v4/mini/parse.js +1 -1
- package/fullstacked_modules/zod/v4/mini/schemas.cjs +77 -24
- package/fullstacked_modules/zod/v4/mini/schemas.d.cts +56 -5
- package/fullstacked_modules/zod/v4/mini/schemas.d.ts +56 -5
- package/fullstacked_modules/zod/v4/mini/schemas.js +66 -23
- package/fullstacked_modules/zod/v4/package.json +6 -0
- package/fullstacked_modules/zod/v4-mini/package.json +6 -0
- package/index.js +1 -1
- package/package.json +1 -1
- package/fullstacked_modules/@fullstacked/ai-agent/story.txt +0 -7
- package/fullstacked_modules/@fullstacked/ai-agent/summary.txt +0 -7
- package/fullstacked_modules/zod/src/v4/core/function.ts +0 -176
- package/fullstacked_modules/zod/v4/core/function.cjs +0 -102
- package/fullstacked_modules/zod/v4/core/function.d.cts +0 -52
- package/fullstacked_modules/zod/v4/core/function.d.ts +0 -52
- package/fullstacked_modules/zod/v4/core/function.js +0 -75
|
@@ -297,6 +297,7 @@ export const $ZodCheckNumberFormat: core.$constructor<$ZodCheckNumberFormat> = /
|
|
|
297
297
|
expected: origin,
|
|
298
298
|
format: def.format,
|
|
299
299
|
code: "invalid_type",
|
|
300
|
+
continue: false,
|
|
300
301
|
input,
|
|
301
302
|
inst,
|
|
302
303
|
});
|
|
@@ -469,6 +470,7 @@ export const $ZodCheckMaxSize: core.$constructor<$ZodCheckMaxSize> = /*@__PURE__
|
|
|
469
470
|
origin: util.getSizableOrigin(input),
|
|
470
471
|
code: "too_big",
|
|
471
472
|
maximum: def.maximum,
|
|
473
|
+
inclusive: true,
|
|
472
474
|
input,
|
|
473
475
|
inst,
|
|
474
476
|
continue: !def.abort,
|
|
@@ -518,6 +520,7 @@ export const $ZodCheckMinSize: core.$constructor<$ZodCheckMinSize> = /*@__PURE__
|
|
|
518
520
|
origin: util.getSizableOrigin(input),
|
|
519
521
|
code: "too_small",
|
|
520
522
|
minimum: def.minimum,
|
|
523
|
+
inclusive: true,
|
|
521
524
|
input,
|
|
522
525
|
inst,
|
|
523
526
|
continue: !def.abort,
|
|
@@ -1128,12 +1131,12 @@ export interface $ZodCheckMimeTypeDef extends $ZodCheckDef {
|
|
|
1128
1131
|
mime: util.MimeTypes[];
|
|
1129
1132
|
}
|
|
1130
1133
|
|
|
1131
|
-
export interface $ZodCheckMimeTypeInternals<T extends File = File> extends $ZodCheckInternals<T> {
|
|
1134
|
+
export interface $ZodCheckMimeTypeInternals<T extends schemas.File = schemas.File> extends $ZodCheckInternals<T> {
|
|
1132
1135
|
def: $ZodCheckMimeTypeDef;
|
|
1133
1136
|
issc: errors.$ZodIssueInvalidValue;
|
|
1134
1137
|
}
|
|
1135
1138
|
|
|
1136
|
-
export interface $ZodCheckMimeType<T extends File = File> extends $ZodCheck<T> {
|
|
1139
|
+
export interface $ZodCheckMimeType<T extends schemas.File = schemas.File> extends $ZodCheck<T> {
|
|
1137
1140
|
_zod: $ZodCheckMimeTypeInternals<T>;
|
|
1138
1141
|
}
|
|
1139
1142
|
|
|
@@ -1152,6 +1155,7 @@ export const $ZodCheckMimeType: core.$constructor<$ZodCheckMimeType> = /*@__PURE
|
|
|
1152
1155
|
values: def.mime,
|
|
1153
1156
|
input: payload.value.type,
|
|
1154
1157
|
inst,
|
|
1158
|
+
continue: !def.abort,
|
|
1155
1159
|
});
|
|
1156
1160
|
};
|
|
1157
1161
|
}
|
|
@@ -78,40 +78,21 @@ export class $ZodAsyncError extends Error {
|
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
+
export class $ZodEncodeError extends Error {
|
|
82
|
+
constructor(name: string) {
|
|
83
|
+
super(`Encountered unidirectional transform during encode: ${name}`);
|
|
84
|
+
this.name = "ZodEncodeError";
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
81
88
|
//////////////////////////// TYPE HELPERS ///////////////////////////////////
|
|
82
89
|
|
|
83
90
|
// export type input<T extends schemas.$ZodType> = T["_zod"]["input"];
|
|
84
91
|
// export type output<T extends schemas.$ZodType> = T["_zod"]["output"];
|
|
85
92
|
// export type input<T extends schemas.$ZodType> = T["_zod"]["input"];
|
|
86
93
|
// export type output<T extends schemas.$ZodType> = T["_zod"]["output"];
|
|
87
|
-
export type input<T> = T extends { _zod: { input: any } } ?
|
|
88
|
-
export type output<T> = T extends { _zod: { output: any } } ?
|
|
89
|
-
|
|
90
|
-
// Mk2
|
|
91
|
-
// export type input<T> = T extends { _zod: { "~input": any } }
|
|
92
|
-
// ? T["_zod"]["~input"]
|
|
93
|
-
// : T extends { _zod: { input: any } }
|
|
94
|
-
// ? T["_zod"]["input"]
|
|
95
|
-
// : never;
|
|
96
|
-
// export type output<T> = T extends { _zod: { "~output": any } }
|
|
97
|
-
// ? T["_zod"]["~output"]
|
|
98
|
-
// : T extends { _zod: { output: any } }
|
|
99
|
-
// ? T["_zod"]["output"]
|
|
100
|
-
// : never;
|
|
101
|
-
// Mk 3
|
|
102
|
-
// export type input<T extends schemas.$ZodType> = T["_zod"]["input"];
|
|
103
|
-
// export type output<T extends schemas.$ZodType> = T["_zod"]["output"];
|
|
104
|
-
// Mk 4
|
|
105
|
-
// export type input<T extends schemas.$ZodType> = T[] extends { _zod: { "~input": any } }
|
|
106
|
-
// ? T["_zod"]["~input"]
|
|
107
|
-
// : T extends { _zod: { input: any } }
|
|
108
|
-
// ? T["_zod"]["input"]
|
|
109
|
-
// : never;
|
|
110
|
-
// export type output<T extends schemas.$ZodType> = T extends { _zod: { "~output": any } }
|
|
111
|
-
// ? T["_zod"]["~output"]
|
|
112
|
-
// : T extends { _zod: { output: any } }
|
|
113
|
-
// ? T["_zod"]["output"]
|
|
114
|
-
// : never;
|
|
94
|
+
export type input<T> = T extends { _zod: { input: any } } ? T["_zod"]["input"] : unknown;
|
|
95
|
+
export type output<T> = T extends { _zod: { output: any } } ? T["_zod"]["output"] : unknown;
|
|
115
96
|
|
|
116
97
|
export type { output as infer };
|
|
117
98
|
|
|
@@ -33,12 +33,12 @@ export class Doc {
|
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
compile() {
|
|
36
|
+
compile(): any {
|
|
37
37
|
const F = Function;
|
|
38
38
|
const args = this?.args;
|
|
39
39
|
const content = this?.content ?? [``];
|
|
40
40
|
const lines = [...content.map((x) => ` ${x}`)];
|
|
41
41
|
// console.log(lines.join("\n"));
|
|
42
|
-
return new F(...args, lines.join("\n"));
|
|
42
|
+
return new F(...args, lines.join("\n")) as any;
|
|
43
43
|
}
|
|
44
44
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { $ZodCheck, $ZodStringFormats } from "./checks.js";
|
|
2
2
|
import { $constructor } from "./core.js";
|
|
3
3
|
import type { $ZodType } from "./schemas.js";
|
|
4
|
+
import type { StandardSchemaV1 } from "./standard-schema.js";
|
|
4
5
|
import * as util from "./util.js";
|
|
5
6
|
|
|
6
7
|
///////////////////////////
|
|
@@ -11,7 +12,6 @@ export interface $ZodIssueBase {
|
|
|
11
12
|
readonly input?: unknown;
|
|
12
13
|
readonly path: PropertyKey[];
|
|
13
14
|
readonly message: string;
|
|
14
|
-
// [k: string]: unknown;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
////////////////////////////////
|
|
@@ -20,7 +20,7 @@ export interface $ZodIssueBase {
|
|
|
20
20
|
export interface $ZodIssueInvalidType<Input = unknown> extends $ZodIssueBase {
|
|
21
21
|
readonly code: "invalid_type";
|
|
22
22
|
readonly expected: $ZodType["_zod"]["def"]["type"];
|
|
23
|
-
readonly input
|
|
23
|
+
readonly input?: Input;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
export interface $ZodIssueTooBig<Input = unknown> extends $ZodIssueBase {
|
|
@@ -29,7 +29,7 @@ export interface $ZodIssueTooBig<Input = unknown> extends $ZodIssueBase {
|
|
|
29
29
|
readonly maximum: number | bigint;
|
|
30
30
|
readonly inclusive?: boolean;
|
|
31
31
|
readonly exact?: boolean;
|
|
32
|
-
readonly input
|
|
32
|
+
readonly input?: Input;
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
export interface $ZodIssueTooSmall<Input = unknown> extends $ZodIssueBase {
|
|
@@ -40,39 +40,40 @@ export interface $ZodIssueTooSmall<Input = unknown> extends $ZodIssueBase {
|
|
|
40
40
|
readonly inclusive?: boolean;
|
|
41
41
|
/** True if the allowed value is fixed (e.g.` z.length(5)`), not a range (`z.minLength(5)`) */
|
|
42
42
|
readonly exact?: boolean;
|
|
43
|
-
readonly input
|
|
43
|
+
readonly input?: Input;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
export interface $ZodIssueInvalidStringFormat extends $ZodIssueBase {
|
|
47
47
|
readonly code: "invalid_format";
|
|
48
48
|
readonly format: $ZodStringFormats | (string & {});
|
|
49
49
|
readonly pattern?: string;
|
|
50
|
-
readonly input
|
|
50
|
+
readonly input?: string;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
export interface $ZodIssueNotMultipleOf<Input extends number | bigint = number | bigint> extends $ZodIssueBase {
|
|
54
54
|
readonly code: "not_multiple_of";
|
|
55
55
|
readonly divisor: number;
|
|
56
|
-
readonly input
|
|
56
|
+
readonly input?: Input;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
export interface $ZodIssueUnrecognizedKeys extends $ZodIssueBase {
|
|
60
60
|
readonly code: "unrecognized_keys";
|
|
61
61
|
readonly keys: string[];
|
|
62
|
-
readonly input
|
|
62
|
+
readonly input?: Record<string, unknown>;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
export interface $ZodIssueInvalidUnion extends $ZodIssueBase {
|
|
66
66
|
readonly code: "invalid_union";
|
|
67
67
|
readonly errors: $ZodIssue[][];
|
|
68
|
-
readonly input
|
|
68
|
+
readonly input?: unknown;
|
|
69
|
+
readonly discriminator?: string | undefined;
|
|
69
70
|
}
|
|
70
71
|
|
|
71
72
|
export interface $ZodIssueInvalidKey<Input = unknown> extends $ZodIssueBase {
|
|
72
73
|
readonly code: "invalid_key";
|
|
73
74
|
readonly origin: "map" | "record";
|
|
74
75
|
readonly issues: $ZodIssue[];
|
|
75
|
-
readonly input
|
|
76
|
+
readonly input?: Input;
|
|
76
77
|
}
|
|
77
78
|
|
|
78
79
|
export interface $ZodIssueInvalidElement<Input = unknown> extends $ZodIssueBase {
|
|
@@ -80,19 +81,19 @@ export interface $ZodIssueInvalidElement<Input = unknown> extends $ZodIssueBase
|
|
|
80
81
|
readonly origin: "map" | "set";
|
|
81
82
|
readonly key: unknown;
|
|
82
83
|
readonly issues: $ZodIssue[];
|
|
83
|
-
readonly input
|
|
84
|
+
readonly input?: Input;
|
|
84
85
|
}
|
|
85
86
|
|
|
86
87
|
export interface $ZodIssueInvalidValue<Input = unknown> extends $ZodIssueBase {
|
|
87
88
|
readonly code: "invalid_value";
|
|
88
89
|
readonly values: util.Primitive[];
|
|
89
|
-
readonly input
|
|
90
|
+
readonly input?: Input;
|
|
90
91
|
}
|
|
91
92
|
|
|
92
93
|
export interface $ZodIssueCustom extends $ZodIssueBase {
|
|
93
94
|
readonly code: "custom";
|
|
94
95
|
readonly params?: Record<string, any> | undefined;
|
|
95
|
-
readonly input
|
|
96
|
+
readonly input?: unknown;
|
|
96
97
|
}
|
|
97
98
|
|
|
98
99
|
////////////////////////////////////////////
|
|
@@ -155,17 +156,21 @@ export type $ZodIssue =
|
|
|
155
156
|
|
|
156
157
|
export type $ZodIssueCode = $ZodIssue["code"];
|
|
157
158
|
|
|
158
|
-
export type $
|
|
159
|
-
type RawIssue<T extends $ZodIssueBase> =
|
|
160
|
-
util.
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
159
|
+
export type $ZodInternalIssue<T extends $ZodIssueBase = $ZodIssue> = T extends any ? RawIssue<T> : never;
|
|
160
|
+
type RawIssue<T extends $ZodIssueBase> = T extends any
|
|
161
|
+
? util.Flatten<
|
|
162
|
+
util.MakePartial<T, "message" | "path"> & {
|
|
163
|
+
/** The input data */
|
|
164
|
+
readonly input: unknown;
|
|
165
|
+
/** The schema or check that originated this issue. */
|
|
166
|
+
readonly inst?: $ZodType | $ZodCheck;
|
|
167
|
+
/** If `true`, Zod will continue executing checks/refinements after this issue. */
|
|
168
|
+
readonly continue?: boolean | undefined;
|
|
169
|
+
} & Record<string, unknown>
|
|
170
|
+
>
|
|
171
|
+
: never;
|
|
172
|
+
|
|
173
|
+
export type $ZodRawIssue<T extends $ZodIssueBase = $ZodIssue> = $ZodInternalIssue<T>;
|
|
169
174
|
|
|
170
175
|
export interface $ZodErrorMap<T extends $ZodIssueBase = $ZodIssue> {
|
|
171
176
|
// biome-ignore lint:
|
|
@@ -196,13 +201,8 @@ const initializer = (inst: $ZodError, def: $ZodIssue[]): void => {
|
|
|
196
201
|
value: def,
|
|
197
202
|
enumerable: false,
|
|
198
203
|
});
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
return JSON.stringify(def, util.jsonStringifyReplacer, 2);
|
|
202
|
-
},
|
|
203
|
-
enumerable: true,
|
|
204
|
-
// configurable: false,
|
|
205
|
-
});
|
|
204
|
+
inst.message = JSON.stringify(def, util.jsonStringifyReplacer, 2);
|
|
205
|
+
|
|
206
206
|
Object.defineProperty(inst, "toString", {
|
|
207
207
|
value: () => inst.message,
|
|
208
208
|
enumerable: false,
|
|
@@ -226,9 +226,9 @@ type _FlattenedError<T, U = string> = {
|
|
|
226
226
|
|
|
227
227
|
export function flattenError<T>(error: $ZodError<T>): _FlattenedError<T>;
|
|
228
228
|
export function flattenError<T, U>(error: $ZodError<T>, mapper?: (issue: $ZodIssue) => U): _FlattenedError<T, U>;
|
|
229
|
-
export function flattenError(error: $ZodError
|
|
230
|
-
const fieldErrors: any = {};
|
|
231
|
-
const formErrors:
|
|
229
|
+
export function flattenError<T, U>(error: $ZodError<T>, mapper = (issue: $ZodIssue) => issue.message as U) {
|
|
230
|
+
const fieldErrors: Record<PropertyKey, any> = {};
|
|
231
|
+
const formErrors: U[] = [];
|
|
232
232
|
for (const sub of error.issues) {
|
|
233
233
|
if (sub.path.length > 0) {
|
|
234
234
|
fieldErrors[sub.path[0]!] = fieldErrors[sub.path[0]!] || [];
|
|
@@ -254,12 +254,7 @@ export type $ZodFormattedError<T, U = string> = {
|
|
|
254
254
|
|
|
255
255
|
export function formatError<T>(error: $ZodError<T>): $ZodFormattedError<T>;
|
|
256
256
|
export function formatError<T, U>(error: $ZodError<T>, mapper?: (issue: $ZodIssue) => U): $ZodFormattedError<T, U>;
|
|
257
|
-
export function formatError<T>(error: $ZodError
|
|
258
|
-
const mapper: (issue: $ZodIssue) => any =
|
|
259
|
-
_mapper ||
|
|
260
|
-
function (issue: $ZodIssue) {
|
|
261
|
-
return issue.message;
|
|
262
|
-
};
|
|
257
|
+
export function formatError<T, U>(error: $ZodError<T>, mapper = (issue: $ZodIssue) => issue.message as U) {
|
|
263
258
|
const fieldErrors: $ZodFormattedError<T> = { _errors: [] } as any;
|
|
264
259
|
const processError = (error: { issues: $ZodIssue[] }) => {
|
|
265
260
|
for (const issue of error.issues) {
|
|
@@ -295,23 +290,20 @@ export function formatError<T>(error: $ZodError, _mapper?: any) {
|
|
|
295
290
|
return fieldErrors;
|
|
296
291
|
}
|
|
297
292
|
|
|
298
|
-
export type $ZodErrorTree<T, U = string> = T extends
|
|
299
|
-
? { errors: U[]
|
|
300
|
-
: T extends any[]
|
|
301
|
-
? { errors: U[]; items?:
|
|
302
|
-
: T extends
|
|
303
|
-
? { errors: U[];
|
|
304
|
-
:
|
|
293
|
+
export type $ZodErrorTree<T, U = string> = T extends util.Primitive
|
|
294
|
+
? { errors: U[] }
|
|
295
|
+
: T extends [any, ...any[]]
|
|
296
|
+
? { errors: U[]; items?: { [K in keyof T]?: $ZodErrorTree<T[K], U> } }
|
|
297
|
+
: T extends any[]
|
|
298
|
+
? { errors: U[]; items?: Array<$ZodErrorTree<T[number], U>> }
|
|
299
|
+
: T extends object
|
|
300
|
+
? { errors: U[]; properties?: { [K in keyof T]?: $ZodErrorTree<T[K], U> } }
|
|
301
|
+
: { errors: U[] };
|
|
305
302
|
|
|
306
303
|
export function treeifyError<T>(error: $ZodError<T>): $ZodErrorTree<T>;
|
|
307
304
|
export function treeifyError<T, U>(error: $ZodError<T>, mapper?: (issue: $ZodIssue) => U): $ZodErrorTree<T, U>;
|
|
308
|
-
export function treeifyError<T>(error: $ZodError
|
|
309
|
-
const
|
|
310
|
-
_mapper ||
|
|
311
|
-
function (issue: $ZodIssue) {
|
|
312
|
-
return issue.message;
|
|
313
|
-
};
|
|
314
|
-
const result: $ZodErrorTree<T> = { errors: [] } as any;
|
|
305
|
+
export function treeifyError<T, U>(error: $ZodError<T>, mapper = (issue: $ZodIssue) => issue.message as U) {
|
|
306
|
+
const result: $ZodErrorTree<T, U> = { errors: [] } as any;
|
|
315
307
|
const processError = (error: { issues: $ZodIssue[] }, path: PropertyKey[] = []) => {
|
|
316
308
|
for (const issue of error.issues) {
|
|
317
309
|
if (issue.code === "invalid_union" && issue.errors.length) {
|
|
@@ -389,8 +381,9 @@ export function treeifyError<T>(error: $ZodError, _mapper?: any) {
|
|
|
389
381
|
* ✖ Invalid input: expected number
|
|
390
382
|
* ```
|
|
391
383
|
*/
|
|
392
|
-
export function toDotPath(
|
|
384
|
+
export function toDotPath(_path: readonly (string | number | symbol | StandardSchemaV1.PathSegment)[]): string {
|
|
393
385
|
const segs: string[] = [];
|
|
386
|
+
const path: PropertyKey[] = _path.map((seg: any) => (typeof seg === "object" ? seg.key : seg));
|
|
394
387
|
for (const seg of path) {
|
|
395
388
|
if (typeof seg === "number") segs.push(`[${seg}]`);
|
|
396
389
|
else if (typeof seg === "symbol") segs.push(`[${JSON.stringify(String(seg))}]`);
|
|
@@ -404,14 +397,10 @@ export function toDotPath(path: (string | number | symbol)[]): string {
|
|
|
404
397
|
return segs.join("");
|
|
405
398
|
}
|
|
406
399
|
|
|
407
|
-
|
|
408
|
-
issues: $ZodIssueBase[];
|
|
409
|
-
}
|
|
410
|
-
|
|
411
|
-
export function prettifyError(error: BaseError): string {
|
|
400
|
+
export function prettifyError(error: StandardSchemaV1.FailureResult): string {
|
|
412
401
|
const lines: string[] = [];
|
|
413
402
|
// sort by path length
|
|
414
|
-
const issues = [...error.issues].sort((a, b) => a.path.length - b.path.length);
|
|
403
|
+
const issues = [...error.issues].sort((a, b) => (a.path ?? []).length - (b.path ?? []).length);
|
|
415
404
|
|
|
416
405
|
// Process each issue
|
|
417
406
|
for (const issue of issues) {
|
|
@@ -9,7 +9,6 @@ export * as regexes from "./regexes.js";
|
|
|
9
9
|
export * as locales from "../locales/index.js";
|
|
10
10
|
export * from "./registries.js";
|
|
11
11
|
export * from "./doc.js";
|
|
12
|
-
export * from "./function.js";
|
|
13
12
|
export * from "./api.js";
|
|
14
13
|
export * from "./to-json-schema.js";
|
|
15
14
|
export * as JSONSchema from "./json-schema.js";
|
|
@@ -45,7 +45,10 @@ export type Schema =
|
|
|
45
45
|
export type _JSONSchema = boolean | JSONSchema;
|
|
46
46
|
export type JSONSchema = {
|
|
47
47
|
[k: string]: unknown;
|
|
48
|
-
$schema?:
|
|
48
|
+
$schema?:
|
|
49
|
+
| "https://json-schema.org/draft/2020-12/schema"
|
|
50
|
+
| "http://json-schema.org/draft-07/schema#"
|
|
51
|
+
| "http://json-schema.org/draft-04/schema#";
|
|
49
52
|
$id?: string;
|
|
50
53
|
$anchor?: string;
|
|
51
54
|
$ref?: string;
|
|
@@ -75,9 +78,9 @@ export type JSONSchema = {
|
|
|
75
78
|
not?: _JSONSchema;
|
|
76
79
|
multipleOf?: number;
|
|
77
80
|
maximum?: number;
|
|
78
|
-
exclusiveMaximum?: number;
|
|
81
|
+
exclusiveMaximum?: number | boolean;
|
|
79
82
|
minimum?: number;
|
|
80
|
-
exclusiveMinimum?: number;
|
|
83
|
+
exclusiveMinimum?: number | boolean;
|
|
81
84
|
maxLength?: number;
|
|
82
85
|
minLength?: number;
|
|
83
86
|
pattern?: string;
|
|
@@ -101,6 +104,7 @@ export type JSONSchema = {
|
|
|
101
104
|
deprecated?: boolean;
|
|
102
105
|
readOnly?: boolean;
|
|
103
106
|
writeOnly?: boolean;
|
|
107
|
+
nullable?: boolean;
|
|
104
108
|
examples?: unknown[];
|
|
105
109
|
format?: string;
|
|
106
110
|
contentMediaType?: string;
|
|
@@ -92,3 +92,104 @@ export const _safeParseAsync: (_Err: $ZodErrorClass) => $SafeParseAsync = (_Err)
|
|
|
92
92
|
};
|
|
93
93
|
|
|
94
94
|
export const safeParseAsync: $SafeParseAsync = /* @__PURE__*/ _safeParseAsync(errors.$ZodRealError);
|
|
95
|
+
|
|
96
|
+
// Codec functions
|
|
97
|
+
export type $Encode = <T extends schemas.$ZodType>(
|
|
98
|
+
schema: T,
|
|
99
|
+
value: core.output<T>,
|
|
100
|
+
_ctx?: schemas.ParseContext<errors.$ZodIssue>
|
|
101
|
+
) => core.input<T>;
|
|
102
|
+
|
|
103
|
+
export const _encode: (_Err: $ZodErrorClass) => $Encode = (_Err) => (schema, value, _ctx) => {
|
|
104
|
+
const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" as const }) : { direction: "backward" as const };
|
|
105
|
+
return _parse(_Err)(schema, value, ctx as any) as any;
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
export const encode: $Encode = /* @__PURE__*/ _encode(errors.$ZodRealError);
|
|
109
|
+
|
|
110
|
+
export type $Decode = <T extends schemas.$ZodType>(
|
|
111
|
+
schema: T,
|
|
112
|
+
value: core.input<T>,
|
|
113
|
+
_ctx?: schemas.ParseContext<errors.$ZodIssue>
|
|
114
|
+
) => core.output<T>;
|
|
115
|
+
|
|
116
|
+
export const _decode: (_Err: $ZodErrorClass) => $Decode = (_Err) => (schema, value, _ctx) => {
|
|
117
|
+
return _parse(_Err)(schema, value, _ctx);
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
export const decode: $Decode = /* @__PURE__*/ _decode(errors.$ZodRealError);
|
|
121
|
+
|
|
122
|
+
export type $EncodeAsync = <T extends schemas.$ZodType>(
|
|
123
|
+
schema: T,
|
|
124
|
+
value: core.output<T>,
|
|
125
|
+
_ctx?: schemas.ParseContext<errors.$ZodIssue>
|
|
126
|
+
) => Promise<core.input<T>>;
|
|
127
|
+
|
|
128
|
+
export const _encodeAsync: (_Err: $ZodErrorClass) => $EncodeAsync = (_Err) => async (schema, value, _ctx) => {
|
|
129
|
+
const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" as const }) : { direction: "backward" as const };
|
|
130
|
+
return _parseAsync(_Err)(schema, value, ctx as any) as any;
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
export const encodeAsync: $EncodeAsync = /* @__PURE__*/ _encodeAsync(errors.$ZodRealError);
|
|
134
|
+
|
|
135
|
+
export type $DecodeAsync = <T extends schemas.$ZodType>(
|
|
136
|
+
schema: T,
|
|
137
|
+
value: core.input<T>,
|
|
138
|
+
_ctx?: schemas.ParseContext<errors.$ZodIssue>
|
|
139
|
+
) => Promise<core.output<T>>;
|
|
140
|
+
|
|
141
|
+
export const _decodeAsync: (_Err: $ZodErrorClass) => $DecodeAsync = (_Err) => async (schema, value, _ctx) => {
|
|
142
|
+
return _parseAsync(_Err)(schema, value, _ctx);
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
export const decodeAsync: $DecodeAsync = /* @__PURE__*/ _decodeAsync(errors.$ZodRealError);
|
|
146
|
+
|
|
147
|
+
export type $SafeEncode = <T extends schemas.$ZodType>(
|
|
148
|
+
schema: T,
|
|
149
|
+
value: core.output<T>,
|
|
150
|
+
_ctx?: schemas.ParseContext<errors.$ZodIssue>
|
|
151
|
+
) => util.SafeParseResult<core.input<T>>;
|
|
152
|
+
|
|
153
|
+
export const _safeEncode: (_Err: $ZodErrorClass) => $SafeEncode = (_Err) => (schema, value, _ctx) => {
|
|
154
|
+
const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" as const }) : { direction: "backward" as const };
|
|
155
|
+
return _safeParse(_Err)(schema, value, ctx as any) as any;
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
export const safeEncode: $SafeEncode = /* @__PURE__*/ _safeEncode(errors.$ZodRealError);
|
|
159
|
+
|
|
160
|
+
export type $SafeDecode = <T extends schemas.$ZodType>(
|
|
161
|
+
schema: T,
|
|
162
|
+
value: core.input<T>,
|
|
163
|
+
_ctx?: schemas.ParseContext<errors.$ZodIssue>
|
|
164
|
+
) => util.SafeParseResult<core.output<T>>;
|
|
165
|
+
|
|
166
|
+
export const _safeDecode: (_Err: $ZodErrorClass) => $SafeDecode = (_Err) => (schema, value, _ctx) => {
|
|
167
|
+
return _safeParse(_Err)(schema, value, _ctx);
|
|
168
|
+
};
|
|
169
|
+
|
|
170
|
+
export const safeDecode: $SafeDecode = /* @__PURE__*/ _safeDecode(errors.$ZodRealError);
|
|
171
|
+
|
|
172
|
+
export type $SafeEncodeAsync = <T extends schemas.$ZodType>(
|
|
173
|
+
schema: T,
|
|
174
|
+
value: core.output<T>,
|
|
175
|
+
_ctx?: schemas.ParseContext<errors.$ZodIssue>
|
|
176
|
+
) => Promise<util.SafeParseResult<core.input<T>>>;
|
|
177
|
+
|
|
178
|
+
export const _safeEncodeAsync: (_Err: $ZodErrorClass) => $SafeEncodeAsync = (_Err) => async (schema, value, _ctx) => {
|
|
179
|
+
const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" as const }) : { direction: "backward" as const };
|
|
180
|
+
return _safeParseAsync(_Err)(schema, value, ctx as any) as any;
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
export const safeEncodeAsync: $SafeEncodeAsync = /* @__PURE__*/ _safeEncodeAsync(errors.$ZodRealError);
|
|
184
|
+
|
|
185
|
+
export type $SafeDecodeAsync = <T extends schemas.$ZodType>(
|
|
186
|
+
schema: T,
|
|
187
|
+
value: core.input<T>,
|
|
188
|
+
_ctx?: schemas.ParseContext<errors.$ZodIssue>
|
|
189
|
+
) => Promise<util.SafeParseResult<core.output<T>>>;
|
|
190
|
+
|
|
191
|
+
export const _safeDecodeAsync: (_Err: $ZodErrorClass) => $SafeDecodeAsync = (_Err) => async (schema, value, _ctx) => {
|
|
192
|
+
return _safeParseAsync(_Err)(schema, value, _ctx);
|
|
193
|
+
};
|
|
194
|
+
|
|
195
|
+
export const safeDecodeAsync: $SafeDecodeAsync = /* @__PURE__*/ _safeDecodeAsync(errors.$ZodRealError);
|
|
@@ -16,12 +16,12 @@ export const extendedDuration: RegExp =
|
|
|
16
16
|
/** A regex for any UUID-like identifier: 8-4-4-4-12 hex pattern */
|
|
17
17
|
export const guid: RegExp = /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/;
|
|
18
18
|
|
|
19
|
-
/** Returns a regex for validating an RFC 4122 UUID.
|
|
19
|
+
/** Returns a regex for validating an RFC 9562/4122 UUID.
|
|
20
20
|
*
|
|
21
21
|
* @param version Optionally specify a version 1-8. If no version is specified, all versions are supported. */
|
|
22
22
|
export const uuid = (version?: number | undefined): RegExp => {
|
|
23
23
|
if (!version)
|
|
24
|
-
return /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;
|
|
24
|
+
return /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;
|
|
25
25
|
return new RegExp(
|
|
26
26
|
`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${version}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`
|
|
27
27
|
);
|
|
@@ -44,12 +44,13 @@ export const rfc5322Email =
|
|
|
44
44
|
|
|
45
45
|
/** A loose regex that allows Unicode characters, enforces length limits, and that's about it. */
|
|
46
46
|
export const unicodeEmail = /^[^\s@"]{1,64}@[^\s@]{1,255}$/u;
|
|
47
|
+
export const idnEmail = unicodeEmail;
|
|
47
48
|
|
|
48
49
|
export const browserEmail: RegExp =
|
|
49
50
|
/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
|
|
50
51
|
// from https://thekevinscott.com/emojis-in-javascript/#writing-a-regular-expression
|
|
51
52
|
|
|
52
|
-
|
|
53
|
+
const _emoji: string = `^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;
|
|
53
54
|
export function emoji(): RegExp {
|
|
54
55
|
return new RegExp(_emoji, "u");
|
|
55
56
|
}
|
|
@@ -57,7 +58,7 @@ export function emoji(): RegExp {
|
|
|
57
58
|
export const ipv4: RegExp =
|
|
58
59
|
/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/;
|
|
59
60
|
export const ipv6: RegExp =
|
|
60
|
-
/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}
|
|
61
|
+
/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;
|
|
61
62
|
|
|
62
63
|
export const cidrv4: RegExp =
|
|
63
64
|
/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/;
|
|
@@ -69,9 +70,10 @@ export const base64: RegExp = /^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==
|
|
|
69
70
|
export const base64url: RegExp = /^[A-Za-z0-9_-]*$/;
|
|
70
71
|
|
|
71
72
|
// based on https://stackoverflow.com/questions/106179/regular-expression-to-match-dns-hostname-or-ip-address
|
|
72
|
-
// export const hostname: RegExp =
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
// export const hostname: RegExp = /^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;
|
|
74
|
+
export const hostname: RegExp =
|
|
75
|
+
/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/;
|
|
76
|
+
|
|
75
77
|
export const domain: RegExp = /^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/;
|
|
76
78
|
|
|
77
79
|
// https://blog.stevenlevithan.com/archives/validate-phone-number#r4-3 (regex sans spaces)
|
|
@@ -109,7 +111,8 @@ export function datetime(args: {
|
|
|
109
111
|
const time = timeSource({ precision: args.precision });
|
|
110
112
|
const opts = ["Z"];
|
|
111
113
|
if (args.local) opts.push("");
|
|
112
|
-
if (args.offset) opts.push(`([+-]\\d{2}:\\d{2})`);
|
|
114
|
+
// if (args.offset) opts.push(`([+-]\\d{2}:\\d{2})`);
|
|
115
|
+
if (args.offset) opts.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);
|
|
113
116
|
const timeRegex = `${time}(?:${opts.join("|")})`;
|
|
114
117
|
|
|
115
118
|
return new RegExp(`^${dateSource}T(?:${timeRegex})$`);
|
|
@@ -120,16 +123,55 @@ export const string = (params?: { minimum?: number | undefined; maximum?: number
|
|
|
120
123
|
return new RegExp(`^${regex}$`);
|
|
121
124
|
};
|
|
122
125
|
|
|
123
|
-
export const bigint: RegExp =
|
|
124
|
-
export const integer: RegExp =
|
|
125
|
-
export const number: RegExp = /^-?\d+(?:\.\d+)
|
|
126
|
-
export const boolean: RegExp =
|
|
127
|
-
const _null: RegExp =
|
|
126
|
+
export const bigint: RegExp = /^-?\d+n?$/;
|
|
127
|
+
export const integer: RegExp = /^-?\d+$/;
|
|
128
|
+
export const number: RegExp = /^-?\d+(?:\.\d+)?/;
|
|
129
|
+
export const boolean: RegExp = /^(?:true|false)$/i;
|
|
130
|
+
const _null: RegExp = /^null$/i;
|
|
128
131
|
export { _null as null };
|
|
129
|
-
const _undefined: RegExp =
|
|
132
|
+
const _undefined: RegExp = /^undefined$/i;
|
|
130
133
|
export { _undefined as undefined };
|
|
131
134
|
|
|
132
135
|
// regex for string with no uppercase letters
|
|
133
136
|
export const lowercase: RegExp = /^[^A-Z]*$/;
|
|
134
137
|
// regex for string with no lowercase letters
|
|
135
138
|
export const uppercase: RegExp = /^[^a-z]*$/;
|
|
139
|
+
|
|
140
|
+
// regex for hexadecimal strings (any length)
|
|
141
|
+
export const hex: RegExp = /^[0-9a-fA-F]*$/;
|
|
142
|
+
|
|
143
|
+
// Hash regexes for different algorithms and encodings
|
|
144
|
+
// Helper function to create base64 regex with exact length and padding
|
|
145
|
+
function fixedBase64(bodyLength: number, padding: "" | "=" | "=="): RegExp {
|
|
146
|
+
return new RegExp(`^[A-Za-z0-9+/]{${bodyLength}}${padding}$`);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
// Helper function to create base64url regex with exact length (no padding)
|
|
150
|
+
function fixedBase64url(length: number): RegExp {
|
|
151
|
+
return new RegExp(`^[A-Za-z0-9_-]{${length}}$`);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
// MD5 (16 bytes): base64 = 24 chars total (22 + "==")
|
|
155
|
+
export const md5_hex: RegExp = /^[0-9a-fA-F]{32}$/;
|
|
156
|
+
export const md5_base64: RegExp = /*@__PURE__*/ fixedBase64(22, "==");
|
|
157
|
+
export const md5_base64url: RegExp = /*@__PURE__*/ fixedBase64url(22);
|
|
158
|
+
|
|
159
|
+
// SHA1 (20 bytes): base64 = 28 chars total (27 + "=")
|
|
160
|
+
export const sha1_hex: RegExp = /^[0-9a-fA-F]{40}$/;
|
|
161
|
+
export const sha1_base64: RegExp = /*@__PURE__*/ fixedBase64(27, "=");
|
|
162
|
+
export const sha1_base64url: RegExp = /*@__PURE__*/ fixedBase64url(27);
|
|
163
|
+
|
|
164
|
+
// SHA256 (32 bytes): base64 = 44 chars total (43 + "=")
|
|
165
|
+
export const sha256_hex: RegExp = /^[0-9a-fA-F]{64}$/;
|
|
166
|
+
export const sha256_base64: RegExp = /*@__PURE__*/ fixedBase64(43, "=");
|
|
167
|
+
export const sha256_base64url: RegExp = /*@__PURE__*/ fixedBase64url(43);
|
|
168
|
+
|
|
169
|
+
// SHA384 (48 bytes): base64 = 64 chars total (no padding)
|
|
170
|
+
export const sha384_hex: RegExp = /^[0-9a-fA-F]{96}$/;
|
|
171
|
+
export const sha384_base64: RegExp = /*@__PURE__*/ fixedBase64(64, "");
|
|
172
|
+
export const sha384_base64url: RegExp = /*@__PURE__*/ fixedBase64url(64);
|
|
173
|
+
|
|
174
|
+
// SHA512 (64 bytes): base64 = 88 chars total (86 + "==")
|
|
175
|
+
export const sha512_hex: RegExp = /^[0-9a-fA-F]{128}$/;
|
|
176
|
+
export const sha512_base64: RegExp = /*@__PURE__*/ fixedBase64(86, "==");
|
|
177
|
+
export const sha512_base64url: RegExp = /*@__PURE__*/ fixedBase64url(86);
|
|
@@ -23,11 +23,11 @@ export type $replace<Meta, S extends $ZodType> = Meta extends $output
|
|
|
23
23
|
? { [K in keyof Meta]: $replace<Meta[K], S> }
|
|
24
24
|
: Meta;
|
|
25
25
|
|
|
26
|
-
type MetadataType =
|
|
26
|
+
type MetadataType = object | undefined;
|
|
27
27
|
export class $ZodRegistry<Meta extends MetadataType = MetadataType, Schema extends $ZodType = $ZodType> {
|
|
28
28
|
_meta!: Meta;
|
|
29
29
|
_schema!: Schema;
|
|
30
|
-
_map:
|
|
30
|
+
_map: WeakMap<Schema, $replace<Meta, Schema>> = new WeakMap();
|
|
31
31
|
_idmap: Map<string, Schema> = new Map();
|
|
32
32
|
|
|
33
33
|
add<S extends Schema>(
|
|
@@ -46,7 +46,7 @@ export class $ZodRegistry<Meta extends MetadataType = MetadataType, Schema exten
|
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
clear(): this {
|
|
49
|
-
this._map = new
|
|
49
|
+
this._map = new WeakMap();
|
|
50
50
|
this._idmap = new Map();
|
|
51
51
|
return this;
|
|
52
52
|
}
|
|
@@ -68,7 +68,8 @@ export class $ZodRegistry<Meta extends MetadataType = MetadataType, Schema exten
|
|
|
68
68
|
if (p) {
|
|
69
69
|
const pm: any = { ...(this.get(p) ?? {}) };
|
|
70
70
|
delete pm.id; // do not inherit id
|
|
71
|
-
|
|
71
|
+
const f = { ...pm, ...this._map.get(schema) } as any;
|
|
72
|
+
return Object.keys(f).length ? f : undefined;
|
|
72
73
|
}
|
|
73
74
|
return this._map.get(schema) as any;
|
|
74
75
|
}
|