diff --git a/docs/package.json b/docs/package.json index 2967f11963..128aa228e7 100644 --- a/docs/package.json +++ b/docs/package.json @@ -26,7 +26,7 @@ "typescript": "^5.4.5", "ufo": "^1.5.3", "v-calendar": "^3.1.2", - "valibot": "^0.31.1", + "valibot": "^0.35.0", "yup": "^1.4.0", "zod": "^3.23.8" } diff --git a/package.json b/package.json index 5b98e8a721..fe7f9bb20b 100644 --- a/package.json +++ b/package.json @@ -70,7 +70,8 @@ "release-it": "^17.3.0", "typescript": "^5.4.5", "unbuild": "^2.0.0", - "valibot": "^0.31.1", + "valibot": "^0.33.0", + "valibot31": "npm:valibot@0.31.0", "valibot30": "npm:valibot@0.30.0", "vitest": "^1.6.0", "vitest-environment-nuxt": "^1.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c0e1d9001d..16306a300b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -117,11 +117,14 @@ importers: specifier: ^2.0.0 version: 2.0.0(sass@1.77.6)(typescript@5.4.5)(vue-tsc@2.0.16(typescript@5.4.5)) valibot: - specifier: ^0.31.1 - version: 0.31.1 + specifier: ^0.33.0 + version: 0.33.3 valibot30: specifier: npm:valibot@0.30.0 version: valibot@0.30.0 + valibot31: + specifier: npm:valibot@0.31.0 + version: valibot@0.31.0 vitest: specifier: ^1.6.0 version: 1.6.0(@types/node@20.14.2)(happy-dom@14.12.0)(sass@1.77.6)(terser@5.31.1) @@ -210,8 +213,8 @@ importers: specifier: ^3.1.2 version: 3.1.2(@popperjs/core@2.11.8)(vue@3.4.29(typescript@5.4.5)) valibot: - specifier: ^0.31.1 - version: 0.31.1 + specifier: ^0.35.0 + version: 0.35.0 yup: specifier: ^1.4.0 version: 1.4.0 @@ -7253,8 +7256,14 @@ packages: valibot@0.30.0: resolution: {integrity: sha512-5POBdbSkM+3nvJ6ZlyQHsggisfRtyT4tVTo1EIIShs6qCdXJnyWU5TJ68vr8iTg5zpOLjXLRiBqNx+9zwZz/rA==} - valibot@0.31.1: - resolution: {integrity: sha512-2YYIhPrnVSz/gfT2/iXVTrSj92HwchCt9Cga/6hX4B26iCz9zkIsGTS0HjDYTZfTi1Un0X6aRvhBi1cfqs/i0Q==} + valibot@0.31.0: + resolution: {integrity: sha512-bleS8aVFpRGTUgbMoXzsRJhpxJGiZ3MG1nuNSORuDvio+sI1EyT1+lQHg+77Pfnlxz+25Uj5HiwdaklcDcYdiQ==} + + valibot@0.33.3: + resolution: {integrity: sha512-/fuY1DlX8uiQ7aphlzrrI2DbG0YJk84JMgvz2qKpUIdXRNsS53varfo4voPjSrjUr5BSV2K0miSEJUOlA5fQFg==} + + valibot@0.35.0: + resolution: {integrity: sha512-+i2aCRkReTrd5KBN/dW2BrPOvFnU5LXTV2xjZnjnqUIO8YUx6P2+MgRrkwF2FhkexgyKq/NIZdPdknhHf5A/Ww==} validate-npm-package-license@3.0.4: resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} @@ -17622,7 +17631,11 @@ snapshots: valibot@0.30.0: {} - valibot@0.31.1: {} + valibot@0.31.0: {} + + valibot@0.33.3: {} + + valibot@0.35.0: {} validate-npm-package-license@3.0.4: dependencies: diff --git a/src/runtime/components/forms/Form.vue b/src/runtime/components/forms/Form.vue index 2e23d307a2..2fc1500335 100644 --- a/src/runtime/components/forms/Form.vue +++ b/src/runtime/components/forms/Form.vue @@ -11,6 +11,7 @@ import type { ZodSchema } from 'zod' import type { ValidationError as JoiError, Schema as JoiSchema } from 'joi' import type { ObjectSchema as YupObjectSchema, ValidationError as YupError } from 'yup' import type { BaseSchema as ValibotSchema30, BaseSchemaAsync as ValibotSchemaAsync30 } from 'valibot30' +import type { GenericSchema as ValibotSchema31, GenericSchemaAsync as ValibotSchemaAsync31, SafeParser as ValibotSafeParser31, SafeParserAsync as ValibotSafeParserAsync31 } from 'valibot31' import type { GenericSchema as ValibotSchema, GenericSchemaAsync as ValibotSchemaAsync, SafeParser as ValibotSafeParser, SafeParserAsync as ValibotSafeParserAsync } from 'valibot' import type { FormError, FormEvent, FormEventType, FormSubmitEvent, FormErrorEvent, Form } from '../../types/form' import { useId } from '#imports' @@ -31,6 +32,8 @@ export default defineComponent({ | PropType> | PropType | PropType + | PropType + | PropType | ValibotSafeParserAsync31> | PropType | PropType | ValibotSafeParserAsync>, default: undefined @@ -258,13 +261,13 @@ async function getJoiErrors ( } } -function isValibotSchema (schema: any): schema is ValibotSchema30 | ValibotSchemaAsync30 | ValibotSchema | ValibotSchemaAsync | ValibotSafeParser | ValibotSafeParserAsync { +function isValibotSchema (schema: any): schema is ValibotSchema30 | ValibotSchemaAsync30 | ValibotSchema31 | ValibotSchemaAsync31 | ValibotSafeParser31 | ValibotSafeParserAsync31 | ValibotSchema | ValibotSchemaAsync | ValibotSafeParser | ValibotSafeParserAsync { return '_parse' in schema || '_run' in schema || (typeof schema === 'function' && 'schema' in schema) } async function getValibotError ( state: any, - schema: ValibotSchema30 | ValibotSchemaAsync30 | ValibotSchema | ValibotSchemaAsync | ValibotSafeParser | ValibotSafeParserAsync + schema: ValibotSchema30 | ValibotSchemaAsync30 | ValibotSchema31 | ValibotSchemaAsync31 | ValibotSafeParser31 | ValibotSafeParserAsync31 | ValibotSchema | ValibotSchemaAsync | ValibotSafeParser | ValibotSafeParserAsync ): Promise { const result = await ('_parse' in schema ? schema._parse(state) : '_run' in schema ? schema._run({ typed: false, value: state }, {}) : schema(state)) return result.issues?.map((issue) => ({