├── .github ├── FUNDING.yml ├── actions │ └── environment │ │ └── action.yml └── workflows │ ├── ci.yml │ └── publish.yml ├── .gitignore ├── .grit ├── .gitignore ├── grit.yaml └── patterns │ └── migrate_to_v0_31_0.md ├── .prettierignore ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── SECURITY.md ├── brand ├── valibot-icon.png ├── valibot-icon.svg ├── valibot-logo-dark.png ├── valibot-logo-dark.svg ├── valibot-logo-light.png └── valibot-logo-light.svg ├── codemod ├── README.md └── migrate-to-v0.31.0 │ ├── .codemodrc.json │ ├── .gitignore │ ├── LICENSE │ ├── README.md │ ├── __testfixtures__ │ ├── fixture1.input.ts │ ├── fixture1.output.ts │ ├── fixture10.input.ts │ ├── fixture10.output.ts │ ├── fixture11.input.ts │ ├── fixture11.output.ts │ ├── fixture12.input.ts │ ├── fixture12.output.ts │ ├── fixture13.input.ts │ ├── fixture13.output.ts │ ├── fixture14.input.ts │ ├── fixture14.output.ts │ ├── fixture15.input.ts │ ├── fixture15.output.ts │ ├── fixture16.input.ts │ ├── fixture16.output.ts │ ├── fixture17.input.ts │ ├── fixture17.output.ts │ ├── fixture2.input.ts │ ├── fixture2.output.ts │ ├── fixture3.input.ts │ ├── fixture3.output.ts │ ├── fixture4.input.ts │ ├── fixture4.output.ts │ ├── fixture5.input.ts │ ├── fixture5.output.ts │ ├── fixture6.input.ts │ ├── fixture6.output.ts │ ├── fixture7.input.ts │ ├── fixture7.output.ts │ ├── fixture8.input.ts │ ├── fixture8.output.ts │ ├── fixture9.input.ts │ └── fixture9.output.ts │ ├── package.json │ ├── src │ └── index.ts │ └── tsconfig.json ├── library ├── CHANGELOG.md ├── LICENSE.md ├── README.md ├── eslint.config.js ├── jsr.json ├── mod.ts ├── package.json ├── playground.ts ├── src │ ├── actions │ │ ├── args │ │ │ ├── args.test-d.ts │ │ │ ├── args.test.ts │ │ │ ├── args.ts │ │ │ ├── argsAsync.test-d.ts │ │ │ ├── argsAsync.test.ts │ │ │ ├── argsAsync.ts │ │ │ └── index.ts │ │ ├── await │ │ │ ├── awaitAsync.test-d.ts │ │ │ ├── awaitAsync.test.ts │ │ │ ├── awaitAsync.ts │ │ │ └── index.ts │ │ ├── base64 │ │ │ ├── base64.test-d.ts │ │ │ ├── base64.test.ts │ │ │ ├── base64.ts │ │ │ └── index.ts │ │ ├── bic │ │ │ ├── bic.test-d.ts │ │ │ ├── bic.test.ts │ │ │ ├── bic.ts │ │ │ └── index.ts │ │ ├── brand │ │ │ ├── brand.test-d.ts │ │ │ ├── brand.test.ts │ │ │ ├── brand.ts │ │ │ └── index.ts │ │ ├── bytes │ │ │ ├── bytes.test-d.ts │ │ │ ├── bytes.test.ts │ │ │ ├── bytes.ts │ │ │ └── index.ts │ │ ├── check │ │ │ ├── check.test-d.ts │ │ │ ├── check.test.ts │ │ │ ├── check.ts │ │ │ ├── checkAsync.test-d.ts │ │ │ ├── checkAsync.test.ts │ │ │ ├── checkAsync.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── checkItems │ │ │ ├── checkItems.test-d.ts │ │ │ ├── checkItems.test.ts │ │ │ ├── checkItems.ts │ │ │ ├── checkItemsAsync.test-d.ts │ │ │ ├── checkItemsAsync.test.ts │ │ │ ├── checkItemsAsync.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── creditCard │ │ │ ├── creditCard.test-d.ts │ │ │ ├── creditCard.test.ts │ │ │ ├── creditCard.ts │ │ │ └── index.ts │ │ ├── cuid2 │ │ │ ├── cuid2.test-d.ts │ │ │ ├── cuid2.test.ts │ │ │ ├── cuid2.ts │ │ │ └── index.ts │ │ ├── decimal │ │ │ ├── decimal.test-d.ts │ │ │ ├── decimal.test.ts │ │ │ ├── decimal.ts │ │ │ └── index.ts │ │ ├── description │ │ │ ├── description.test-d.ts │ │ │ ├── description.test.ts │ │ │ ├── description.ts │ │ │ └── index.ts │ │ ├── digits │ │ │ ├── digits.test-d.ts │ │ │ ├── digits.test.ts │ │ │ ├── digits.ts │ │ │ └── index.ts │ │ ├── email │ │ │ ├── email.test-d.ts │ │ │ ├── email.test.ts │ │ │ ├── email.ts │ │ │ └── index.ts │ │ ├── emoji │ │ │ ├── emoji.test-d.ts │ │ │ ├── emoji.test.ts │ │ │ ├── emoji.ts │ │ │ └── index.ts │ │ ├── empty │ │ │ ├── empty.test-d.ts │ │ │ ├── empty.test.ts │ │ │ ├── empty.ts │ │ │ └── index.ts │ │ ├── endsWith │ │ │ ├── endsWith.test-d.ts │ │ │ ├── endsWith.test.ts │ │ │ ├── endsWith.ts │ │ │ └── index.ts │ │ ├── entries │ │ │ ├── entries.test-d.ts │ │ │ ├── entries.test.ts │ │ │ ├── entries.ts │ │ │ └── index.ts │ │ ├── everyItem │ │ │ ├── everyItem.test-d.ts │ │ │ ├── everyItem.test.ts │ │ │ ├── everyItem.ts │ │ │ └── index.ts │ │ ├── excludes │ │ │ ├── excludes.test-d.ts │ │ │ ├── excludes.test.ts │ │ │ ├── excludes.ts │ │ │ └── index.ts │ │ ├── filterItems │ │ │ ├── filterItems.test-d.ts │ │ │ ├── filterItems.test.ts │ │ │ ├── filterItems.ts │ │ │ └── index.ts │ │ ├── findItem │ │ │ ├── findItem.test-d.ts │ │ │ ├── findItem.test.ts │ │ │ ├── findItem.ts │ │ │ └── index.ts │ │ ├── finite │ │ │ ├── finite.test-d.ts │ │ │ ├── finite.test.ts │ │ │ ├── finite.ts │ │ │ └── index.ts │ │ ├── flavor │ │ │ ├── flavor.test-d.ts │ │ │ ├── flavor.test.ts │ │ │ ├── flavor.ts │ │ │ └── index.ts │ │ ├── graphemes │ │ │ ├── graphemes.test-d.ts │ │ │ ├── graphemes.test.ts │ │ │ ├── graphemes.ts │ │ │ └── index.ts │ │ ├── gtValue │ │ │ ├── gtValue.test.ts │ │ │ ├── gtValue.ts │ │ │ ├── gtValues.test-d.ts │ │ │ └── index.ts │ │ ├── hash │ │ │ ├── hash.test-d.ts │ │ │ ├── hash.test.ts │ │ │ ├── hash.ts │ │ │ └── index.ts │ │ ├── hexColor │ │ │ ├── hexColor.test-d.ts │ │ │ ├── hexColor.test.ts │ │ │ ├── hexColor.ts │ │ │ └── index.ts │ │ ├── hexadecimal │ │ │ ├── hexadecimal.test-d.ts │ │ │ ├── hexadecimal.test.ts │ │ │ ├── hexadecimal.ts │ │ │ └── index.ts │ │ ├── imei │ │ │ ├── imei.test-d.ts │ │ │ ├── imei.test.ts │ │ │ ├── imei.ts │ │ │ └── index.ts │ │ ├── includes │ │ │ ├── includes.test-d.ts │ │ │ ├── includes.test.ts │ │ │ ├── includes.ts │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── integer │ │ │ ├── index.ts │ │ │ ├── integer.test-d.ts │ │ │ ├── integer.test.ts │ │ │ └── integer.ts │ │ ├── ip │ │ │ ├── index.ts │ │ │ ├── ip.test-d.ts │ │ │ ├── ip.test.ts │ │ │ └── ip.ts │ │ ├── ipv4 │ │ │ ├── index.ts │ │ │ ├── ipv4.test-d.ts │ │ │ ├── ipv4.test.ts │ │ │ └── ipv4.ts │ │ ├── ipv6 │ │ │ ├── index.ts │ │ │ ├── ipv6.test-d.ts │ │ │ ├── ipv6.test.ts │ │ │ └── ipv6.ts │ │ ├── isoDate │ │ │ ├── index.ts │ │ │ ├── isoDate.test-d.ts │ │ │ ├── isoDate.test.ts │ │ │ └── isoDate.ts │ │ ├── isoDateTime │ │ │ ├── index.ts │ │ │ ├── isoDateTime.test-d.ts │ │ │ ├── isoDateTime.test.ts │ │ │ └── isoDateTime.ts │ │ ├── isoTime │ │ │ ├── index.ts │ │ │ ├── isoTime.test-d.ts │ │ │ ├── isoTime.test.ts │ │ │ └── isoTime.ts │ │ ├── isoTimeSecond │ │ │ ├── index.ts │ │ │ ├── isoTimeSecond.test-d.ts │ │ │ ├── isoTimeSecond.test.ts │ │ │ └── isoTimeSecond.ts │ │ ├── isoTimestamp │ │ │ ├── index.ts │ │ │ ├── isoTimestamp.test-d.ts │ │ │ ├── isoTimestamp.test.ts │ │ │ └── isoTimestamp.ts │ │ ├── isoWeek │ │ │ ├── index.ts │ │ │ ├── isoWeek.test-d.ts │ │ │ ├── isoWeek.test.ts │ │ │ └── isoWeek.ts │ │ ├── length │ │ │ ├── index.ts │ │ │ ├── length.test-d.ts │ │ │ ├── length.test.ts │ │ │ └── length.ts │ │ ├── ltValue │ │ │ ├── index.ts │ │ │ ├── ltValue.test-d.ts │ │ │ ├── ltValue.test.ts │ │ │ └── ltValue.ts │ │ ├── mac │ │ │ ├── index.ts │ │ │ ├── mac.test-d.ts │ │ │ ├── mac.test.ts │ │ │ └── mac.ts │ │ ├── mac48 │ │ │ ├── index.ts │ │ │ ├── mac48.test-d.ts │ │ │ ├── mac48.test.ts │ │ │ └── mac48.ts │ │ ├── mac64 │ │ │ ├── index.ts │ │ │ ├── mac64.test-d.ts │ │ │ ├── mac64.test.ts │ │ │ └── mac64.ts │ │ ├── mapItems │ │ │ ├── index.ts │ │ │ ├── mapItems.test-d.ts │ │ │ ├── mapItems.test.ts │ │ │ └── mapItems.ts │ │ ├── maxBytes │ │ │ ├── index.ts │ │ │ ├── maxBytes.test-d.ts │ │ │ ├── maxBytes.test.ts │ │ │ └── maxBytes.ts │ │ ├── maxEntries │ │ │ ├── index.ts │ │ │ ├── maxEntries.test-d.ts │ │ │ ├── maxEntries.test.ts │ │ │ └── maxEntries.ts │ │ ├── maxGraphemes │ │ │ ├── index.ts │ │ │ ├── maxGraphemes.test-d.ts │ │ │ ├── maxGraphemes.test.ts │ │ │ └── maxGraphemes.ts │ │ ├── maxLength │ │ │ ├── index.ts │ │ │ ├── maxLength.test-d.ts │ │ │ ├── maxLength.test.ts │ │ │ └── maxLength.ts │ │ ├── maxSize │ │ │ ├── index.ts │ │ │ ├── maxSize.test-d.ts │ │ │ ├── maxSize.test.ts │ │ │ └── maxSize.ts │ │ ├── maxValue │ │ │ ├── index.ts │ │ │ ├── maxValue.test-d.ts │ │ │ ├── maxValue.test.ts │ │ │ └── maxValue.ts │ │ ├── maxWords │ │ │ ├── index.ts │ │ │ ├── maxWords.test-d.ts │ │ │ ├── maxWords.test.ts │ │ │ └── maxWords.ts │ │ ├── metadata │ │ │ ├── index.ts │ │ │ ├── metadata.test-d.ts │ │ │ ├── metadata.test.ts │ │ │ └── metadata.ts │ │ ├── mimeType │ │ │ ├── index.ts │ │ │ ├── mimeType.test-d.ts │ │ │ ├── mimeType.test.ts │ │ │ └── mimeType.ts │ │ ├── minBytes │ │ │ ├── index.ts │ │ │ ├── minBytes.test-d.ts │ │ │ ├── minBytes.test.ts │ │ │ └── minBytes.ts │ │ ├── minEntries │ │ │ ├── index.ts │ │ │ ├── minEntries.test-d.ts │ │ │ ├── minEntries.test.ts │ │ │ └── minEntries.ts │ │ ├── minGraphemes │ │ │ ├── index.ts │ │ │ ├── minGraphemes.test-d.ts │ │ │ ├── minGraphemes.test.ts │ │ │ └── minGraphemes.ts │ │ ├── minLength │ │ │ ├── index.ts │ │ │ ├── minLength.test-d.ts │ │ │ ├── minLength.test.ts │ │ │ └── minLength.ts │ │ ├── minSize │ │ │ ├── index.ts │ │ │ ├── minSize.test-d.ts │ │ │ ├── minSize.test.ts │ │ │ └── minSize.ts │ │ ├── minValue │ │ │ ├── index.ts │ │ │ ├── minValue.test-d.ts │ │ │ ├── minValue.test.ts │ │ │ └── minValue.ts │ │ ├── minWords │ │ │ ├── index.ts │ │ │ ├── minWords.test-d.ts │ │ │ ├── minWords.test.ts │ │ │ └── minWords.ts │ │ ├── multipleOf │ │ │ ├── index.ts │ │ │ ├── multipleOf.test-d.ts │ │ │ ├── multipleOf.test.ts │ │ │ └── multipleOf.ts │ │ ├── nanoid │ │ │ ├── index.ts │ │ │ ├── nanoid.test-d.ts │ │ │ ├── nanoid.test.ts │ │ │ └── nanoid.ts │ │ ├── nonEmpty │ │ │ ├── index.ts │ │ │ ├── nonEmpty.test-d.ts │ │ │ ├── nonEmpty.test.ts │ │ │ └── nonEmpty.ts │ │ ├── normalize │ │ │ ├── index.ts │ │ │ ├── normalize.test-d.ts │ │ │ ├── normalize.test.ts │ │ │ └── normalize.ts │ │ ├── notBytes │ │ │ ├── index.ts │ │ │ ├── notBytes.test-d.ts │ │ │ ├── notBytes.test.ts │ │ │ └── notBytes.ts │ │ ├── notEntries │ │ │ ├── index.ts │ │ │ ├── notEntries.test-d.ts │ │ │ ├── notEntries.test.ts │ │ │ └── notEntries.ts │ │ ├── notGraphemes │ │ │ ├── index.ts │ │ │ ├── notGraphemes.test-d.ts │ │ │ ├── notGraphemes.test.ts │ │ │ └── notGraphemes.ts │ │ ├── notLength │ │ │ ├── index.ts │ │ │ ├── notLength.test-d.ts │ │ │ ├── notLength.test.ts │ │ │ └── notLength.ts │ │ ├── notSize │ │ │ ├── index.ts │ │ │ ├── notSize.test-d.ts │ │ │ ├── notSize.test.ts │ │ │ └── notSize.ts │ │ ├── notValue │ │ │ ├── index.ts │ │ │ ├── notValue.test-d.ts │ │ │ ├── notValue.test.ts │ │ │ └── notValue.ts │ │ ├── notValues │ │ │ ├── index.ts │ │ │ ├── notValues.test-d.ts │ │ │ ├── notValues.test.ts │ │ │ └── notValues.ts │ │ ├── notWords │ │ │ ├── index.ts │ │ │ ├── notWords.test-d.ts │ │ │ ├── notWords.test.ts │ │ │ └── notWords.ts │ │ ├── octal │ │ │ ├── index.ts │ │ │ ├── octal.test-d.ts │ │ │ ├── octal.test.ts │ │ │ └── octal.ts │ │ ├── parseJson │ │ │ ├── index.ts │ │ │ ├── parseJson.test-d.ts │ │ │ ├── parseJson.test.ts │ │ │ └── parseJson.ts │ │ ├── partialCheck │ │ │ ├── index.ts │ │ │ ├── partialCheck.test-d.ts │ │ │ ├── partialCheck.test.ts │ │ │ ├── partialCheck.ts │ │ │ ├── partialCheckAsync.test-d.ts │ │ │ ├── partialCheckAsync.test.ts │ │ │ ├── partialCheckAsync.ts │ │ │ ├── types.ts │ │ │ └── utils │ │ │ │ ├── _isPartiallyTyped │ │ │ │ ├── _isPartiallyTyped.test.ts │ │ │ │ ├── _isPartiallyTyped.ts │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ ├── rawCheck │ │ │ ├── index.ts │ │ │ ├── rawCheck.test-d.ts │ │ │ ├── rawCheck.test.ts │ │ │ ├── rawCheck.ts │ │ │ ├── rawCheckAsync.test-d.ts │ │ │ ├── rawCheckAsync.test.ts │ │ │ ├── rawCheckAsync.ts │ │ │ └── types.ts │ │ ├── rawTransform │ │ │ ├── index.ts │ │ │ ├── rawTransform.test-d.ts │ │ │ ├── rawTransform.test.ts │ │ │ ├── rawTransform.ts │ │ │ ├── rawTransformAsync.test-d.ts │ │ │ ├── rawTransformAsync.test.ts │ │ │ ├── rawTransformAsync.ts │ │ │ └── types.ts │ │ ├── readonly │ │ │ ├── index.ts │ │ │ ├── readonly.test-d.ts │ │ │ ├── readonly.test.ts │ │ │ └── readonly.ts │ │ ├── reduceItems │ │ │ ├── index.ts │ │ │ ├── reduceItems.test-d.ts │ │ │ ├── reduceItems.test.ts │ │ │ └── reduceItems.ts │ │ ├── regex │ │ │ ├── index.ts │ │ │ ├── regex.test-d.ts │ │ │ ├── regex.test.ts │ │ │ └── regex.ts │ │ ├── returns │ │ │ ├── index.ts │ │ │ ├── returns.test-d.ts │ │ │ ├── returns.test.ts │ │ │ ├── returns.ts │ │ │ ├── returnsAsync.test-d.ts │ │ │ ├── returnsAsync.test.ts │ │ │ └── returnsAsync.ts │ │ ├── rfcEmail │ │ │ ├── index.ts │ │ │ ├── rfcEmail.test-d.ts │ │ │ ├── rfcEmail.test.ts │ │ │ └── rfcEmail.ts │ │ ├── safeInteger │ │ │ ├── index.ts │ │ │ ├── safeInteger.test-d.ts │ │ │ ├── safeInteger.test.ts │ │ │ └── safeInteger.ts │ │ ├── size │ │ │ ├── index.ts │ │ │ ├── size.test-d.ts │ │ │ ├── size.test.ts │ │ │ └── size.ts │ │ ├── slug │ │ │ ├── index.ts │ │ │ ├── slug.test-d.ts │ │ │ ├── slug.test.ts │ │ │ └── slug.ts │ │ ├── someItem │ │ │ ├── index.ts │ │ │ ├── someItem.test-d.ts │ │ │ ├── someItem.test.ts │ │ │ └── someItem.ts │ │ ├── sortItems │ │ │ ├── index.ts │ │ │ ├── sortItems.test-d.ts │ │ │ ├── sortItems.test.ts │ │ │ └── sortItems.ts │ │ ├── startsWith │ │ │ ├── index.ts │ │ │ ├── startsWith.test-d.ts │ │ │ ├── startsWith.test.ts │ │ │ └── startsWith.ts │ │ ├── stringifyJson │ │ │ ├── index.ts │ │ │ ├── stringifyJson.test-d.ts │ │ │ ├── stringifyJson.test.ts │ │ │ └── stringifyJson.ts │ │ ├── title │ │ │ ├── index.ts │ │ │ ├── title.test-d.ts │ │ │ ├── title.test.ts │ │ │ └── title.ts │ │ ├── toLowerCase │ │ │ ├── index.ts │ │ │ ├── toLowerCase.test-d.ts │ │ │ ├── toLowerCase.test.ts │ │ │ └── toLowerCase.ts │ │ ├── toMaxValue │ │ │ ├── index.ts │ │ │ ├── toMaxValue.test-d.ts │ │ │ ├── toMaxValue.test.ts │ │ │ └── toMaxValue.ts │ │ ├── toMinValue │ │ │ ├── index.ts │ │ │ ├── toMinValue.test-d.ts │ │ │ ├── toMinValue.test.ts │ │ │ └── toMinValue.ts │ │ ├── toUpperCase │ │ │ ├── index.ts │ │ │ ├── toUpperCase.test-d.ts │ │ │ ├── toUpperCase.test.ts │ │ │ └── toUpperCase.ts │ │ ├── transform │ │ │ ├── index.ts │ │ │ ├── transform.test-d.ts │ │ │ ├── transform.test.ts │ │ │ ├── transform.ts │ │ │ ├── transformAsync.test-d.ts │ │ │ ├── transformAsync.test.ts │ │ │ └── transformAsync.ts │ │ ├── trim │ │ │ ├── index.ts │ │ │ ├── trim.test-d.ts │ │ │ ├── trim.test.ts │ │ │ └── trim.ts │ │ ├── trimEnd │ │ │ ├── index.ts │ │ │ ├── trimEnd.test-d.ts │ │ │ ├── trimEnd.test.ts │ │ │ └── trimEnd.ts │ │ ├── trimStart │ │ │ ├── index.ts │ │ │ ├── trimStart.test-d.ts │ │ │ ├── trimStart.test.ts │ │ │ └── trimStart.ts │ │ ├── types.ts │ │ ├── ulid │ │ │ ├── index.ts │ │ │ ├── ulid.test-d.ts │ │ │ ├── ulid.test.ts │ │ │ └── ulid.ts │ │ ├── url │ │ │ ├── index.ts │ │ │ ├── url.test-d.ts │ │ │ ├── url.test.ts │ │ │ └── url.ts │ │ ├── uuid │ │ │ ├── index.ts │ │ │ ├── uuid.test-d.ts │ │ │ ├── uuid.test.ts │ │ │ └── uuid.ts │ │ ├── value │ │ │ ├── index.ts │ │ │ ├── value.test-d.ts │ │ │ ├── value.test.ts │ │ │ └── value.ts │ │ ├── values │ │ │ ├── index.ts │ │ │ ├── values.test-d.ts │ │ │ ├── values.test.ts │ │ │ └── values.ts │ │ └── words │ │ │ ├── index.ts │ │ │ ├── words.test-d.ts │ │ │ ├── words.test.ts │ │ │ └── words.ts │ ├── index.ts │ ├── methods │ │ ├── assert │ │ │ ├── assert.test-d.ts │ │ │ ├── assert.test.ts │ │ │ ├── assert.ts │ │ │ └── index.ts │ │ ├── config │ │ │ ├── config.test-d.ts │ │ │ ├── config.test.ts │ │ │ ├── config.ts │ │ │ └── index.ts │ │ ├── fallback │ │ │ ├── fallback.test-d.ts │ │ │ ├── fallback.test.ts │ │ │ ├── fallback.ts │ │ │ ├── fallbackAsync.test-d.ts │ │ │ ├── fallbackAsync.test.ts │ │ │ ├── fallbackAsync.ts │ │ │ └── index.ts │ │ ├── flatten │ │ │ ├── flatten.test-d.ts │ │ │ ├── flatten.test.ts │ │ │ ├── flatten.ts │ │ │ └── index.ts │ │ ├── forward │ │ │ ├── forward.test-d.ts │ │ │ ├── forward.test.ts │ │ │ ├── forward.ts │ │ │ ├── forwardAsync.test-d.ts │ │ │ ├── forwardAsync.test.ts │ │ │ ├── forwardAsync.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── getDefault │ │ │ ├── getDefault.test-d.ts │ │ │ ├── getDefault.test.ts │ │ │ ├── getDefault.ts │ │ │ └── index.ts │ │ ├── getDefaults │ │ │ ├── getDefaults.test-d.ts │ │ │ ├── getDefaults.test.ts │ │ │ ├── getDefaults.ts │ │ │ ├── getDefaultsAsync.test-d.ts │ │ │ ├── getDefaultsAsync.test.ts │ │ │ ├── getDefaultsAsync.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── getDescription │ │ │ ├── getDescription.test.ts │ │ │ ├── getDescription.ts │ │ │ └── index.ts │ │ ├── getFallback │ │ │ ├── getFallback.test-d.ts │ │ │ ├── getFallback.test.ts │ │ │ ├── getFallback.ts │ │ │ └── index.ts │ │ ├── getFallbacks │ │ │ ├── getFallbacks.test-d.ts │ │ │ ├── getFallbacks.test.ts │ │ │ ├── getFallbacks.ts │ │ │ ├── getFallbacksAsync.test-d.ts │ │ │ ├── getFallbacksAsync.test.ts │ │ │ ├── getFallbacksAsync.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── getMetadata │ │ │ ├── getMetadata.test-d.ts │ │ │ ├── getMetadata.test.ts │ │ │ ├── getMetadata.ts │ │ │ └── index.ts │ │ ├── getTitle │ │ │ ├── getTitle.test.ts │ │ │ ├── getTitle.ts │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── is │ │ │ ├── index.ts │ │ │ ├── is.test-d.ts │ │ │ ├── is.test.ts │ │ │ └── is.ts │ │ ├── keyof │ │ │ ├── index.ts │ │ │ ├── keyof.test-d.ts │ │ │ ├── keyof.test.ts │ │ │ └── keyof.ts │ │ ├── message │ │ │ ├── index.ts │ │ │ ├── message.test-d.ts │ │ │ ├── message.test.ts │ │ │ └── message.ts │ │ ├── omit │ │ │ ├── index.ts │ │ │ ├── omit.test-d.ts │ │ │ ├── omit.test.ts │ │ │ └── omit.ts │ │ ├── parse │ │ │ ├── index.ts │ │ │ ├── parse.test-d.ts │ │ │ ├── parse.test.ts │ │ │ ├── parse.ts │ │ │ ├── parseAsync.test-d.ts │ │ │ ├── parseAsync.test.ts │ │ │ └── parseAsync.ts │ │ ├── parser │ │ │ ├── index.ts │ │ │ ├── parser.test-d.ts │ │ │ ├── parser.test.ts │ │ │ ├── parser.ts │ │ │ ├── parserAsync.test-d.ts │ │ │ ├── parserAsync.test.ts │ │ │ └── parserAsync.ts │ │ ├── partial │ │ │ ├── index.ts │ │ │ ├── partial.test-d.ts │ │ │ ├── partial.test.ts │ │ │ ├── partial.ts │ │ │ ├── partialAsync.test-d.ts │ │ │ ├── partialAsync.test.ts │ │ │ └── partialAsync.ts │ │ ├── pick │ │ │ ├── index.ts │ │ │ ├── pick.test-d.ts │ │ │ ├── pick.test.ts │ │ │ └── pick.ts │ │ ├── pipe │ │ │ ├── index.ts │ │ │ ├── pipe.test-d.ts │ │ │ ├── pipe.test.ts │ │ │ ├── pipe.ts │ │ │ ├── pipeAsync.test-d.ts │ │ │ ├── pipeAsync.test.ts │ │ │ └── pipeAsync.ts │ │ ├── required │ │ │ ├── index.ts │ │ │ ├── required.test-d.ts │ │ │ ├── required.test.ts │ │ │ ├── required.ts │ │ │ ├── requiredAsync.test-d.ts │ │ │ ├── requiredAsync.test.ts │ │ │ └── requiredAsync.ts │ │ ├── safeParse │ │ │ ├── index.ts │ │ │ ├── safeParse.test-d.ts │ │ │ ├── safeParse.test.ts │ │ │ ├── safeParse.ts │ │ │ ├── safeParseAsync.test-d.ts │ │ │ ├── safeParseAsync.test.ts │ │ │ ├── safeParseAsync.ts │ │ │ └── types.ts │ │ ├── safeParser │ │ │ ├── index.ts │ │ │ ├── safeParser.test-d.ts │ │ │ ├── safeParser.test.ts │ │ │ ├── safeParser.ts │ │ │ ├── safeParserAsync.test-d.ts │ │ │ ├── safeParserAsync.test.ts │ │ │ └── safeParserAsync.ts │ │ ├── summarize │ │ │ ├── index.ts │ │ │ ├── summarize.test.ts │ │ │ └── summarize.ts │ │ └── unwrap │ │ │ ├── index.ts │ │ │ ├── unwrap.test-d.ts │ │ │ ├── unwrap.test.ts │ │ │ └── unwrap.ts │ ├── regex.ts │ ├── schemas │ │ ├── any │ │ │ ├── any.test-d.ts │ │ │ ├── any.test.ts │ │ │ ├── any.ts │ │ │ └── index.ts │ │ ├── array │ │ │ ├── array.test-d.ts │ │ │ ├── array.test.ts │ │ │ ├── array.ts │ │ │ ├── arrayAsync.test-d.ts │ │ │ ├── arrayAsync.test.ts │ │ │ ├── arrayAsync.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── bigint │ │ │ ├── bigint.test-d.ts │ │ │ ├── bigint.test.ts │ │ │ ├── bigint.ts │ │ │ └── index.ts │ │ ├── blob │ │ │ ├── blob.test-d.ts │ │ │ ├── blob.test.ts │ │ │ ├── blob.ts │ │ │ └── index.ts │ │ ├── boolean │ │ │ ├── boolean.test-d.ts │ │ │ ├── boolean.test.ts │ │ │ ├── boolean.ts │ │ │ └── index.ts │ │ ├── custom │ │ │ ├── custom.test-d.ts │ │ │ ├── custom.test.ts │ │ │ ├── custom.ts │ │ │ ├── customAsync.test-d.ts │ │ │ ├── customAsync.test.ts │ │ │ ├── customAsync.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── date │ │ │ ├── date.test-d.ts │ │ │ ├── date.test.ts │ │ │ ├── date.ts │ │ │ └── index.ts │ │ ├── enum │ │ │ ├── enum.test-d.ts │ │ │ ├── enum.test.ts │ │ │ ├── enum.ts │ │ │ └── index.ts │ │ ├── exactOptional │ │ │ ├── exactOptional.test-d.ts │ │ │ ├── exactOptional.test.ts │ │ │ ├── exactOptional.ts │ │ │ ├── exactOptionalAsync.test-d.ts │ │ │ ├── exactOptionalAsync.test.ts │ │ │ ├── exactOptionalAsync.ts │ │ │ └── index.ts │ │ ├── file │ │ │ ├── file.test-d.ts │ │ │ ├── file.test.ts │ │ │ ├── file.ts │ │ │ └── index.ts │ │ ├── function │ │ │ ├── function.test-d.ts │ │ │ ├── function.test.ts │ │ │ ├── function.ts │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── instance │ │ │ ├── index.ts │ │ │ ├── instance.test-d.ts │ │ │ ├── instance.test.ts │ │ │ └── instance.ts │ │ ├── intersect │ │ │ ├── index.ts │ │ │ ├── intersect.test-d.ts │ │ │ ├── intersect.test.ts │ │ │ ├── intersect.ts │ │ │ ├── intersectAsync.test-d.ts │ │ │ ├── intersectAsync.test.ts │ │ │ ├── intersectAsync.ts │ │ │ ├── types.ts │ │ │ └── utils │ │ │ │ ├── _merge │ │ │ │ ├── _merge.test.ts │ │ │ │ ├── _merge.ts │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ ├── lazy │ │ │ ├── index.ts │ │ │ ├── lazy.test-d.ts │ │ │ ├── lazy.test.ts │ │ │ ├── lazy.ts │ │ │ ├── lazyAsync.test-d.ts │ │ │ ├── lazyAsync.test.ts │ │ │ └── lazyAsync.ts │ │ ├── literal │ │ │ ├── index.ts │ │ │ ├── literal.test-d.ts │ │ │ ├── literal.test.ts │ │ │ └── literal.ts │ │ ├── looseObject │ │ │ ├── index.ts │ │ │ ├── looseObject.test-d.ts │ │ │ ├── looseObject.test.ts │ │ │ ├── looseObject.ts │ │ │ ├── looseObjectAsync.test-d.ts │ │ │ ├── looseObjectAsync.test.ts │ │ │ ├── looseObjectAsync.ts │ │ │ └── types.ts │ │ ├── looseTuple │ │ │ ├── index.ts │ │ │ ├── looseTuple.test-d.ts │ │ │ ├── looseTuple.test.ts │ │ │ ├── looseTuple.ts │ │ │ ├── looseTupleAsync.test-d.ts │ │ │ ├── looseTupleAsync.test.ts │ │ │ ├── looseTupleAsync.ts │ │ │ └── types.ts │ │ ├── map │ │ │ ├── index.ts │ │ │ ├── map.test-d.ts │ │ │ ├── map.test.ts │ │ │ ├── map.ts │ │ │ ├── mapAsync.test-d.ts │ │ │ ├── mapAsync.test.ts │ │ │ ├── mapAsync.ts │ │ │ └── types.ts │ │ ├── nan │ │ │ ├── index.ts │ │ │ ├── nan.test-d.ts │ │ │ ├── nan.test.ts │ │ │ └── nan.ts │ │ ├── never │ │ │ ├── index.ts │ │ │ ├── never.test-d.ts │ │ │ ├── never.test.ts │ │ │ └── never.ts │ │ ├── nonNullable │ │ │ ├── index.ts │ │ │ ├── nonNullable.test-d.ts │ │ │ ├── nonNullable.test.ts │ │ │ ├── nonNullable.ts │ │ │ ├── nonNullableAsync.test-d.ts │ │ │ ├── nonNullableAsync.test.ts │ │ │ ├── nonNullableAsync.ts │ │ │ └── types.ts │ │ ├── nonNullish │ │ │ ├── index.ts │ │ │ ├── nonNullish.test-d.ts │ │ │ ├── nonNullish.test.ts │ │ │ ├── nonNullish.ts │ │ │ ├── nonNullishAsync.test-d.ts │ │ │ ├── nonNullishAsync.test.ts │ │ │ ├── nonNullishAsync.ts │ │ │ └── types.ts │ │ ├── nonOptional │ │ │ ├── index.ts │ │ │ ├── nonOptional.test-d.ts │ │ │ ├── nonOptional.test.ts │ │ │ ├── nonOptional.ts │ │ │ ├── nonOptionalAsync.test-d.ts │ │ │ ├── nonOptionalAsync.test.ts │ │ │ ├── nonOptionalAsync.ts │ │ │ └── types.ts │ │ ├── null │ │ │ ├── index.ts │ │ │ ├── null.test-d.ts │ │ │ ├── null.test.ts │ │ │ └── null.ts │ │ ├── nullable │ │ │ ├── index.ts │ │ │ ├── nullable.test-d.ts │ │ │ ├── nullable.test.ts │ │ │ ├── nullable.ts │ │ │ ├── nullableAsync.test-d.ts │ │ │ ├── nullableAsync.test.ts │ │ │ ├── nullableAsync.ts │ │ │ └── types.ts │ │ ├── nullish │ │ │ ├── index.ts │ │ │ ├── nullish.test-d.ts │ │ │ ├── nullish.test.ts │ │ │ ├── nullish.ts │ │ │ ├── nullishAsync.test-d.ts │ │ │ ├── nullishAsync.test.ts │ │ │ ├── nullishAsync.ts │ │ │ └── types.ts │ │ ├── number │ │ │ ├── index.ts │ │ │ ├── number.test-d.ts │ │ │ ├── number.test.ts │ │ │ └── number.ts │ │ ├── object │ │ │ ├── index.ts │ │ │ ├── object.test-d.ts │ │ │ ├── object.test.ts │ │ │ ├── object.ts │ │ │ ├── objectAsync.test-d.ts │ │ │ ├── objectAsync.test.ts │ │ │ ├── objectAsync.ts │ │ │ └── types.ts │ │ ├── objectWithRest │ │ │ ├── index.ts │ │ │ ├── objectWithRest.test-d.ts │ │ │ ├── objectWithRest.test.ts │ │ │ ├── objectWithRest.ts │ │ │ ├── objectWithRestAsync.test-d.ts │ │ │ ├── objectWithRestAsync.test.ts │ │ │ ├── objectWithRestAsync.ts │ │ │ └── types.ts │ │ ├── optional │ │ │ ├── index.ts │ │ │ ├── optional.test-d.ts │ │ │ ├── optional.test.ts │ │ │ ├── optional.ts │ │ │ ├── optionalAsync.test-d.ts │ │ │ ├── optionalAsync.test.ts │ │ │ ├── optionalAsync.ts │ │ │ └── types.ts │ │ ├── picklist │ │ │ ├── index.ts │ │ │ ├── picklist.test-d.ts │ │ │ ├── picklist.test.ts │ │ │ └── picklist.ts │ │ ├── promise │ │ │ ├── index.ts │ │ │ ├── promise.test-d.ts │ │ │ ├── promise.test.ts │ │ │ └── promise.ts │ │ ├── record │ │ │ ├── index.ts │ │ │ ├── record.test-d.ts │ │ │ ├── record.test.ts │ │ │ ├── record.ts │ │ │ ├── recordAsync.test-d.ts │ │ │ ├── recordAsync.test.ts │ │ │ ├── recordAsync.ts │ │ │ └── types.ts │ │ ├── set │ │ │ ├── index.ts │ │ │ ├── set.test-d.ts │ │ │ ├── set.test.ts │ │ │ ├── set.ts │ │ │ ├── setAsync.test-d.ts │ │ │ ├── setAsync.test.ts │ │ │ ├── setAsync.ts │ │ │ └── types.ts │ │ ├── strictObject │ │ │ ├── index.ts │ │ │ ├── strictObject.test-d.ts │ │ │ ├── strictObject.test.ts │ │ │ ├── strictObject.ts │ │ │ ├── strictObjectAsync.test-d.ts │ │ │ ├── strictObjectAsync.test.ts │ │ │ ├── strictObjectAsync.ts │ │ │ └── types.ts │ │ ├── strictTuple │ │ │ ├── index.ts │ │ │ ├── strictTuple.test-d.ts │ │ │ ├── strictTuple.test.ts │ │ │ ├── strictTuple.ts │ │ │ ├── strictTupleAsync.test-d.ts │ │ │ ├── strictTupleAsync.test.ts │ │ │ ├── strictTupleAsync.ts │ │ │ └── types.ts │ │ ├── string │ │ │ ├── index.ts │ │ │ ├── string.test-d.ts │ │ │ ├── string.test.ts │ │ │ └── string.ts │ │ ├── symbol │ │ │ ├── index.ts │ │ │ ├── symbol.test-d.ts │ │ │ ├── symbol.test.ts │ │ │ └── symbol.ts │ │ ├── tuple │ │ │ ├── index.ts │ │ │ ├── tuple.test-d.ts │ │ │ ├── tuple.test.ts │ │ │ ├── tuple.ts │ │ │ ├── tupleAsync.test-d.ts │ │ │ ├── tupleAsync.test.ts │ │ │ ├── tupleAsync.ts │ │ │ └── types.ts │ │ ├── tupleWithRest │ │ │ ├── index.ts │ │ │ ├── tupleWithRest.test-d.ts │ │ │ ├── tupleWithRest.test.ts │ │ │ ├── tupleWithRest.ts │ │ │ ├── tupleWithRestAsync.test-d.ts │ │ │ ├── tupleWithRestAsync.test.ts │ │ │ ├── tupleWithRestAsync.ts │ │ │ └── types.ts │ │ ├── undefined │ │ │ ├── index.ts │ │ │ ├── undefined.test-d.ts │ │ │ ├── undefined.test.ts │ │ │ └── undefined.ts │ │ ├── undefinedable │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ ├── undefinedable.test-d.ts │ │ │ ├── undefinedable.test.ts │ │ │ ├── undefinedable.ts │ │ │ ├── undefinedableAsync.test-d.ts │ │ │ ├── undefinedableAsync.test.ts │ │ │ └── undefinedableAsync.ts │ │ ├── union │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ ├── union.test-d.ts │ │ │ ├── union.test.ts │ │ │ ├── union.ts │ │ │ ├── unionAsync.test-d.ts │ │ │ ├── unionAsync.test.ts │ │ │ ├── unionAsync.ts │ │ │ └── utils │ │ │ │ ├── _subIssues │ │ │ │ ├── _subIssues.test.ts │ │ │ │ ├── _subIssues.ts │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ ├── unknown │ │ │ ├── index.ts │ │ │ ├── unknown.test-d.ts │ │ │ ├── unknown.test.ts │ │ │ └── unknown.ts │ │ ├── variant │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ ├── variant.test-d.ts │ │ │ ├── variant.test.ts │ │ │ ├── variant.ts │ │ │ ├── variantAsync.test-d.ts │ │ │ ├── variantAsync.test.ts │ │ │ └── variantAsync.ts │ │ └── void │ │ │ ├── index.ts │ │ │ ├── void.test-d.ts │ │ │ ├── void.test.ts │ │ │ └── void.ts │ ├── storages │ │ ├── globalConfig │ │ │ ├── globalConfig.test.ts │ │ │ ├── globalConfig.ts │ │ │ └── index.ts │ │ ├── globalMessage │ │ │ ├── globalMessage.test.ts │ │ │ ├── globalMessage.ts │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── schemaMessage │ │ │ ├── index.ts │ │ │ ├── schemaMessage.test.ts │ │ │ └── schemaMessage.ts │ │ └── specificMessage │ │ │ ├── index.ts │ │ │ ├── specificMessage.test.ts │ │ │ └── specificMessage.ts │ ├── types │ │ ├── config.ts │ │ ├── dataset.ts │ │ ├── index.ts │ │ ├── infer.ts │ │ ├── issue.ts │ │ ├── metadata.ts │ │ ├── object.ts │ │ ├── other.ts │ │ ├── pipe.ts │ │ ├── schema.ts │ │ ├── standard.ts │ │ ├── transformation.ts │ │ ├── tuple.ts │ │ ├── utils.ts │ │ └── validation.ts │ ├── utils │ │ ├── ValiError │ │ │ ├── ValiError.test-d.ts │ │ │ ├── ValiError.test.ts │ │ │ ├── ValiError.ts │ │ │ └── index.ts │ │ ├── _addIssue │ │ │ ├── _addIssue.test.ts │ │ │ ├── _addIssue.ts │ │ │ └── index.ts │ │ ├── _getByteCount │ │ │ ├── _getByteCount.test.ts │ │ │ ├── _getByteCount.ts │ │ │ └── index.ts │ │ ├── _getGraphemeCount │ │ │ ├── _getGraphemeCount.test.ts │ │ │ ├── _getGraphemeCount.ts │ │ │ └── index.ts │ │ ├── _getLastMetadata │ │ │ ├── _getLastMetadata.test.ts │ │ │ ├── _getLastMetadata.ts │ │ │ └── index.ts │ │ ├── _getStandardProps │ │ │ ├── _getStandardProps.test-d.ts │ │ │ ├── _getStandardProps.test.ts │ │ │ ├── _getStandardProps.ts │ │ │ └── index.ts │ │ ├── _getWordCount │ │ │ ├── _getWordCount.test.ts │ │ │ ├── _getWordCount.ts │ │ │ └── index.ts │ │ ├── _isLuhnAlgo │ │ │ ├── _isLuhnAlgo.test.ts │ │ │ ├── _isLuhnAlgo.ts │ │ │ └── index.ts │ │ ├── _isValidObjectKey │ │ │ ├── _isValidObjectKey.test.ts │ │ │ ├── _isValidObjectKey.ts │ │ │ └── index.ts │ │ ├── _joinExpects │ │ │ ├── _joinExpects.test.ts │ │ │ ├── _joinExpects.ts │ │ │ └── index.ts │ │ ├── _stringify │ │ │ ├── _stringify.test.ts │ │ │ ├── _stringify.ts │ │ │ └── index.ts │ │ ├── entriesFromList │ │ │ ├── entriesFromList.test-d.ts │ │ │ ├── entriesFromList.test.ts │ │ │ ├── entriesFromList.ts │ │ │ └── index.ts │ │ ├── entriesFromObjects │ │ │ ├── entriesFromObjects.test-d.ts │ │ │ ├── entriesFromObjects.test.ts │ │ │ ├── entriesFromObjects.ts │ │ │ └── index.ts │ │ ├── getDotPath │ │ │ ├── getDotPath.test-d.ts │ │ │ ├── getDotPath.test.ts │ │ │ ├── getDotPath.ts │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── isOfKind │ │ │ ├── index.ts │ │ │ ├── isOfKind.test.ts │ │ │ └── isOfKind.ts │ │ ├── isOfType │ │ │ ├── index.ts │ │ │ ├── isOfType.test.ts │ │ │ └── isOfType.ts │ │ └── isValiError │ │ │ ├── index.ts │ │ │ ├── isValiError.test.ts │ │ │ └── isValiError.ts │ └── vitest │ │ ├── expectActionIssue.ts │ │ ├── expectActionIssueAsync.ts │ │ ├── expectNoActionIssue.ts │ │ ├── expectNoActionIssueAsync.ts │ │ ├── expectNoSchemaIssue.ts │ │ ├── expectNoSchemaIssueAsync.ts │ │ ├── expectSchemaIssue.ts │ │ ├── expectSchemaIssueAsync.ts │ │ └── index.ts ├── tsconfig.json ├── tsdown.config.ts └── vitest.config.ts ├── package.json ├── packages ├── i18n │ ├── .gitignore │ ├── CHANGELOG.md │ ├── LICENSE.md │ ├── README.md │ ├── jsr.json │ ├── package.json │ ├── scripts │ │ ├── build-jsr.ts │ │ └── build-npm.ts │ ├── src │ │ ├── ar.ts │ │ ├── ca.ts │ │ ├── cs.ts │ │ ├── de.ts │ │ ├── en.ts │ │ ├── es.ts │ │ ├── fa.ts │ │ ├── fr.ts │ │ ├── hu.ts │ │ ├── id.ts │ │ ├── it.ts │ │ ├── ja.ts │ │ ├── kr.ts │ │ ├── nb.ts │ │ ├── nl.ts │ │ ├── pl.ts │ │ ├── pt.ts │ │ ├── ro.ts │ │ ├── ru.ts │ │ ├── sl.ts │ │ ├── sv.ts │ │ ├── tr.ts │ │ ├── types.ts │ │ ├── uk.ts │ │ ├── vi.ts │ │ ├── zh-CN.ts │ │ └── zh-TW.ts │ └── tsconfig.json └── to-json-schema │ ├── CHANGELOG.md │ ├── LICENSE.md │ ├── README.md │ ├── eslint.config.js │ ├── jsr.json │ ├── package.json │ ├── src │ ├── converters │ │ ├── convertAction │ │ │ ├── convertAction.test.ts │ │ │ ├── convertAction.ts │ │ │ └── index.ts │ │ ├── convertSchema │ │ │ ├── convertSchema.test.ts │ │ │ ├── convertSchema.ts │ │ │ └── index.ts │ │ └── index.ts │ ├── functions │ │ ├── index.ts │ │ ├── toJsonSchema │ │ │ ├── index.ts │ │ │ ├── toJsonSchema.test.ts │ │ │ └── toJsonSchema.ts │ │ └── toJsonSchemaDefs │ │ │ ├── index.ts │ │ │ ├── toJsonSchemaDefs.test.ts │ │ │ └── toJsonSchemaDefs.ts │ ├── index.ts │ ├── storages │ │ ├── globalDefs │ │ │ ├── globalDefs.ts │ │ │ └── index.ts │ │ └── index.ts │ ├── type.ts │ ├── utils │ │ ├── addError.ts │ │ ├── handleError.ts │ │ └── index.ts │ └── vitest │ │ ├── createContext.ts │ │ └── index.ts │ ├── tsconfig.json │ ├── tsdown.config.ts │ └── vitest.config.ts ├── pnpm-lock.yaml ├── pnpm-workspace.yaml ├── prettier.config.cjs ├── valibot.jpg └── website ├── .env ├── .eslintignore ├── .eslintrc.cjs ├── .gitignore ├── .node-version ├── .prettierignore ├── README.md ├── adapters └── vercel-edge │ └── vite.config.ts ├── package.json ├── postcss.config.cjs ├── public ├── favicon.ico ├── fonts │ ├── lexend-400.ttf │ ├── lexend-400.woff2 │ ├── lexend-500.ttf │ ├── lexend-500.woff2 │ ├── lexend-exa-500.ttf │ └── lexend-exa-500.woff2 ├── icon-16px.png ├── icon-180px.jpg ├── icon-192px.jpeg ├── icon-192px.png ├── icon-32px.png ├── icon-512px.jpeg ├── icon-512px.png ├── manifest.json ├── robots.txt └── thesis.pdf ├── scripts ├── contributors.ts ├── sitemap.ts ├── sources.ts └── utils │ ├── findNestedFiles.ts │ └── index.ts ├── src ├── components │ ├── ActionButton.tsx │ ├── ApiList.tsx │ ├── ButtonGroup.tsx │ ├── Chapters.tsx │ ├── CodeEditor.tsx │ ├── Credits.tsx │ ├── DiscordIconLink.tsx │ ├── DocSearch.tsx │ ├── DocsLayout.tsx │ ├── Expandable.tsx │ ├── Footer.tsx │ ├── GitHubIconLink.tsx │ ├── Head.tsx │ ├── Header.tsx │ ├── IconButton.tsx │ ├── MainMenuToggle.tsx │ ├── Navigation.tsx │ ├── PostCover.tsx │ ├── PostMeta.tsx │ ├── Property.tsx │ ├── RoutingIndicator.tsx │ ├── SearchToggle.tsx │ ├── SideBar.tsx │ ├── SpeedInsights.tsx │ ├── Spinner.tsx │ ├── SystemIcon.tsx │ ├── TextLink.tsx │ ├── ThemeToggle.tsx │ ├── UnstyledButton.tsx │ └── index.ts ├── entry.dev.tsx ├── entry.preview.tsx ├── entry.ssr.tsx ├── entry.vercel-edge.tsx ├── hooks │ ├── index.ts │ ├── useFocusTrap.ts │ ├── useMDXComponents.tsx │ ├── useResetSignal.ts │ └── useStorageSignal.ts ├── icons │ ├── AngleRightIcon.tsx │ ├── AngleUpIcon.tsx │ ├── ArrowLeftIcon.tsx │ ├── ArrowRrightIcon.tsx │ ├── BinIcon.tsx │ ├── CheckIcon.tsx │ ├── CloseIcon.tsx │ ├── CopyIcon.tsx │ ├── DiscordIcon.tsx │ ├── GitHubIcon.tsx │ ├── HashtagIcon.tsx │ ├── LogoIcon.tsx │ ├── MenuIcon.tsx │ ├── NightIcon.tsx │ ├── PageIcon.tsx │ ├── PenIcon.tsx │ ├── PlayIcon.tsx │ ├── PlusIcon.tsx │ ├── SearchIcon.tsx │ ├── ShareIcon.tsx │ ├── SunIcon.tsx │ └── index.ts ├── images │ ├── index.ts │ ├── stainless-icon.webp │ ├── valibot-talk-dark.webp │ └── valibot-talk-light.webp ├── json │ └── TypeScript.tmLanguage.json ├── logos │ ├── AlgoliaLogo.tsx │ ├── BoltLogo.tsx │ ├── BuilderLogo.tsx │ ├── DailyDevLogo.tsx │ ├── DigitalOceanLogo.tsx │ ├── HdmLogo.tsx │ ├── MotionLogo.tsx │ ├── NetlifyLogo.tsx │ ├── PaceLogo.tsx │ ├── StainlessLogo.tsx │ ├── VercelLogo.tsx │ └── index.ts ├── root.tsx ├── routes │ ├── (legal) │ │ ├── contact │ │ │ └── index.mdx │ │ ├── layout.tsx │ │ └── privacy │ │ │ └── index.mdx │ ├── 404.tsx │ ├── api │ │ ├── (actions) │ │ │ ├── args │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── base64 │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── bic │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── brand │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── bytes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── check │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── checkItems │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── creditCard │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── cuid2 │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── decimal │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── description │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── digits │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── email │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── emoji │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── empty │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── endsWith │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── entries │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── everyItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── excludes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── filterItems │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── findItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── finite │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── flavor │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── graphemes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── gtValue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── hash │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── hexColor │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── hexadecimal │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── imei │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── includes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── integer │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ip │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ipv4 │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ipv6 │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── isoDate │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── isoDateTime │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── isoTime │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── isoTimeSecond │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── isoTimestamp │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── isoWeek │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── length │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ltValue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── mac │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── mac48 │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── mac64 │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── mapItems │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── maxBytes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── maxEntries │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── maxGraphemes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── maxLength │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── maxSize │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── maxValue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── maxWords │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── metadata │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── mimeType │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── minBytes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── minEntries │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── minGraphemes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── minLength │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── minSize │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── minValue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── minWords │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── multipleOf │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nanoid │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nonEmpty │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── normalize │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── notBytes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── notEntries │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── notGraphemes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── notLength │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── notSize │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── notValue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── notValues │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── notWords │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── octal │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── parseJson │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── partialCheck │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── rawCheck │ │ │ │ ├── AddIssue │ │ │ │ │ ├── index.mdx │ │ │ │ │ └── properties.ts │ │ │ │ ├── Context │ │ │ │ │ ├── index.mdx │ │ │ │ │ └── properties.ts │ │ │ │ ├── IssueInfo │ │ │ │ │ ├── index.mdx │ │ │ │ │ └── properties.ts │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── rawTransform │ │ │ │ ├── AddIssue │ │ │ │ │ ├── index.mdx │ │ │ │ │ └── properties.ts │ │ │ │ ├── Context │ │ │ │ │ ├── index.mdx │ │ │ │ │ └── properties.ts │ │ │ │ ├── IssueInfo │ │ │ │ │ ├── index.mdx │ │ │ │ │ └── properties.ts │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── readonly │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── reduceItems │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── regex │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── returns │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── rfcEmail │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── safeInteger │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── size │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── slug │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── someItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── sortItems │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── startsWith │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── stringifyJson │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── title │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── toLowerCase │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── toMaxValue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── toMinValue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── toUpperCase │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── transform │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── trim │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── trimEnd │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── trimStart │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ulid │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── url │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── uuid │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── value │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── values │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ └── words │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ ├── (async) │ │ │ ├── argsAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── arrayAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── awaitAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── checkAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── checkItemsAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── customAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── exactOptionalAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── fallbackAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── forwardAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getDefaultsAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getFallbacksAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── intersectAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── lazyAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── looseObjectAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── looseTupleAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── mapAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nonNullableAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nonNullishAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nonOptionalAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nullableAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nullishAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── objectAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── objectWithRestAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── optionalAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── parseAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── parserAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── partialAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── partialCheckAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── pipeAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── rawCheckAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── rawTransformAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── recordAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── requiredAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── returnsAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── safeParseAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── safeParserAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── setAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── strictObjectAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── strictTupleAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── transformAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── tupleAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── tupleWithRestAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── undefinedableAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── unionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ └── variantAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ ├── (methods) │ │ │ ├── assert │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── config │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── fallback │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── flatten │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── forward │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getDefault │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getDefaults │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getDescription │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getFallback │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getFallbacks │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getMetadata │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getTitle │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── is │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── keyof │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── message │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── omit │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── parse │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── parser │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── partial │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── pick │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── pipe │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── required │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── safeParse │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── safeParser │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── summarize │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ └── unwrap │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ ├── (schemas) │ │ │ ├── any │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── array │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── bigint │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── blob │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── boolean │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── custom │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── date │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── enum │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── exactOptional │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── file │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── function │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── instance │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── intersect │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── lazy │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── literal │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── looseObject │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── looseTuple │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── map │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nan │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── never │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nonNullable │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nonNullish │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nonOptional │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── null │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nullable │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── nullish │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── number │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── object │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── objectWithRest │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── optional │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── picklist │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── promise │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── record │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── set │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── strictObject │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── strictTuple │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── string │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── symbol │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── tuple │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── tupleWithRest │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── undefined │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── undefinedable │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── union │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── unknown │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── variant │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ └── void │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ ├── (storages) │ │ │ ├── deleteGlobalConfig │ │ │ │ └── index.mdx │ │ │ ├── deleteGlobalMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── deleteSchemaMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── deleteSpecificMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getGlobalConfig │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getGlobalMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getSchemaMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getSpecificMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── setGlobalConfig │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── setGlobalMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── setSchemaMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ └── setSpecificMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ ├── (types) │ │ │ ├── AnySchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ArgsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ArgsActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ArrayInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ArrayIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ArrayPathItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ArrayRequirement │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ArrayRequirementAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ArraySchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ArraySchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── AwaitActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Base64Action │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Base64Issue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BaseIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BaseMetadata │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BaseSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BaseSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BaseTransformation │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BaseTransformationAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BaseValidation │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BaseValidationAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BicAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BicIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BigintIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BigintSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BlobIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BlobSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BooleanIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BooleanSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Brand │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BrandAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BrandName │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BytesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── BytesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CheckAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CheckActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CheckIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CheckItemsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CheckItemsActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CheckItemsIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Class │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Config │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ContentInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ContentRequirement │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CreditCardAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CreditCardIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Cuid2Action │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Cuid2Issue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CustomIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CustomSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── CustomSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DateIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DateSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DecimalAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DecimalIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DeepPickN │ │ │ │ └── index.mdx │ │ │ ├── Default │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DefaultAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DefaultValue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DescriptionAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DigitsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── DigitsIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EmailAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EmailIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EmojiAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EmojiIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EmptyAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EmptyIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EndsWithAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EndsWithIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EntriesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EntriesInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EntriesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Enum │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EnumIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EnumSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ErrorMessage │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EveryItemAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── EveryItemIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ExactOptionalSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ExactOptionalSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ExcludesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ExcludesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FailureDataset │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Fallback │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FallbackAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FileIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FileSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FilterItemsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FindItemAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FiniteAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FiniteIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FirstTupleItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FlatErrors │ │ │ │ └── index.mdx │ │ │ ├── Flavor │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FlavorAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FlavorName │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FunctionIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── FunctionSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericMetadata │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericPipeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericPipeActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericPipeItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericPipeItemAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericTransformation │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericTransformationAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericValidation │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GenericValidationAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GlobalConfig │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GraphemesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GraphemesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GtValueAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── GtValueIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── HashAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── HashIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── HashType │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── HexColorAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── HexColorIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── HexadecimalAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── HexadecimalIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ImeiAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ImeiIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IncludesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IncludesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferDefault │ │ │ │ └── index.mdx │ │ │ ├── InferDefaults │ │ │ │ └── index.mdx │ │ │ ├── InferFallback │ │ │ │ └── index.mdx │ │ │ ├── InferFallbacks │ │ │ │ └── index.mdx │ │ │ ├── InferInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferIntersectInput │ │ │ │ └── index.mdx │ │ │ ├── InferIntersectOutput │ │ │ │ └── index.mdx │ │ │ ├── InferIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferMapInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferMapOutput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferMetadata │ │ │ │ └── index.mdx │ │ │ ├── InferNonNullableInput │ │ │ │ └── index.mdx │ │ │ ├── InferNonNullableIssue │ │ │ │ └── index.mdx │ │ │ ├── InferNonNullableOutput │ │ │ │ └── index.mdx │ │ │ ├── InferNonNullishInput │ │ │ │ └── index.mdx │ │ │ ├── InferNonNullishIssue │ │ │ │ └── index.mdx │ │ │ ├── InferNonNullishOutput │ │ │ │ └── index.mdx │ │ │ ├── InferNonOptionalInput │ │ │ │ └── index.mdx │ │ │ ├── InferNonOptionalIssue │ │ │ │ └── index.mdx │ │ │ ├── InferNonOptionalOutput │ │ │ │ └── index.mdx │ │ │ ├── InferNullableOutput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferNullishOutput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferObjectInput │ │ │ │ └── index.mdx │ │ │ ├── InferObjectIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferObjectOutput │ │ │ │ └── index.mdx │ │ │ ├── InferOptionalOutput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferOutput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferRecordInput │ │ │ │ └── index.mdx │ │ │ ├── InferRecordOutput │ │ │ │ └── index.mdx │ │ │ ├── InferSetInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferSetOutput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferTupleInput │ │ │ │ └── index.mdx │ │ │ ├── InferTupleIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InferTupleOutput │ │ │ │ └── index.mdx │ │ │ ├── InferVariantIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InstanceIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── InstanceSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IntegerAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IntegerIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IntersectIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IntersectOptions │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IntersectOptionsAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IntersectSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IntersectSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IpAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IpIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Ipv4Action │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Ipv4Issue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Ipv6Action │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Ipv6Issue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoDateAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoDateIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoDateTimeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoDateTimeIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoTimeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoTimeIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoTimeSecondAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoTimeSecondIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoTimestampAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoTimestampIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoWeekAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IsoWeekIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── IssueDotPath │ │ │ │ └── index.mdx │ │ │ ├── IssuePathItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LastTupleItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LazySchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LazySchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LengthAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LengthInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LengthIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Literal │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LiteralIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LiteralSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LooseObjectIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LooseObjectSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LooseObjectSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LooseTupleIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LooseTupleSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LooseTupleSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LtValueAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── LtValueIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Mac48Action │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Mac48Issue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Mac64Action │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Mac64Issue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MacAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MacIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MapIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MapItemsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MapPathItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MapSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MapSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxBytesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxBytesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxEntriesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxEntriesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxGraphemesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxGraphemesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxLengthAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxLengthIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxSizeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxSizeIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxValueAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxValueIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxWordsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaxWordsIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaybePromise │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MaybeReadonly │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MetadataAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MimeTypeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MimeTypeIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinBytesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinBytesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinEntriesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinEntriesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinGraphemesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinGraphemesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinLengthAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinLengthIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinSizeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinSizeIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinValueAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinValueIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinWordsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MinWordsIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MultipleOfAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── MultipleOfIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NanIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NanSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NeverIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NeverSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonEmptyAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonEmptyIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonNullable │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonNullableIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonNullableSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonNullableSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonNullish │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonNullishIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonNullishSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonNullishSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonOptional │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonOptionalIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonOptionalSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NonOptionalSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NormalizeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NormalizeForm │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotBytesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotBytesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotEntriesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotEntriesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotGraphemesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotGraphemesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotLengthAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotLengthIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotSizeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotSizeIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotValueAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotValueIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotValuesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotValuesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotWordsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NotWordsIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NullIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NullSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NullableSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NullableSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NullishSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NullishSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NumberIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── NumberSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectEntries │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectEntriesAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectKeys │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectPathItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectWithRestIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectWithRestSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ObjectWithRestSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── OctalAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── OctalIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── OptionalSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── OptionalSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── OutputDataset │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ParseJsonAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ParseJsonConfig │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ParseJsonIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Parser │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ParserAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PartialCheckAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PartialCheckActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PartialCheckIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PartialDataset │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PartialInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PicklistIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PicklistOptions │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PicklistSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PipeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PipeActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PipeItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PipeItemAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PromiseIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── PromiseSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RawCheckAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RawCheckActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RawCheckIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RawTransformAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RawTransformActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RawTransformIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ReadonlyAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RecordIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RecordSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RecordSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ReduceItemsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── Reference │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RegexAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RegexIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ReturnsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ReturnsActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RfcEmailAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── RfcEmailIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SafeIntegerAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SafeIntegerIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SafeParseResult │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SafeParser │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SafeParserAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SchemaWithFallback │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SchemaWithFallbackAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SchemaWithPartial │ │ │ │ └── index.mdx │ │ │ ├── SchemaWithPartialAsync │ │ │ │ └── index.mdx │ │ │ ├── SchemaWithPipe │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SchemaWithPipeAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SchemaWithRequired │ │ │ │ └── index.mdx │ │ │ ├── SchemaWithRequiredAsync │ │ │ │ └── index.mdx │ │ │ ├── SchemaWithoutPipe │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SetIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SetPathItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SetSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SetSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SizeAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SizeInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SizeIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SlugAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SlugIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SomeItemAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SomeItemIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SortItemsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StandardFailureResult │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StandardIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StandardPathItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StandardProps │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StandardResult │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StandardSuccessResult │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StandardTypes │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StartsWithAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StartsWithIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StrictObjectIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StrictObjectSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StrictObjectSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StrictTupleIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StrictTupleSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StrictTupleSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StringIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StringSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StringifyJsonAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StringifyJsonConfig │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── StringifyJsonIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SuccessDataset │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SymbolIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── SymbolSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TitleAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ToLowerCaseAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ToMaxValueAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ToMinValueAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ToUpperCaseAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TransformAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TransformActionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TrimAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TrimEndAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TrimStartAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TupleIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TupleItems │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TupleItemsAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TupleSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TupleSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TupleWithRestIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TupleWithRestSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── TupleWithRestSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UlidAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UlidIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UndefinedIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UndefinedSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UndefinedableSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UndefinedableSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UnionIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UnionOptions │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UnionOptionsAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UnionSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UnionSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UnknownDataset │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UnknownPathItem │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UnknownSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UrlAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UrlIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UuidAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── UuidIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ValueAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ValueInput │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ValueIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ValuesAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── ValuesIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── VariantIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── VariantOption │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── VariantOptionAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── VariantOptions │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── VariantOptionsAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── VariantSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── VariantSchemaAsync │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── VoidIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── VoidSchema │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── WordsAction │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ └── WordsIssue │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ ├── (utils) │ │ │ ├── ValiError │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── entriesFromList │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── entriesFromObjects │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── getDotPath │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── isOfKind │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ ├── isOfType │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ │ └── isValiError │ │ │ │ ├── index.mdx │ │ │ │ └── properties.ts │ │ ├── index.tsx │ │ ├── layout.tsx │ │ └── menu.md │ ├── blog │ │ ├── (posts) │ │ │ ├── first-draft-of-the-new-pipe-function │ │ │ │ ├── index.mdx │ │ │ │ └── type-safe-issues.jpg │ │ │ ├── how-valibot-has-evolved-this-year │ │ │ │ ├── index.mdx │ │ │ │ ├── monthly-downloads.jpg │ │ │ │ ├── playground-dark.jpg │ │ │ │ └── playground-light.jpg │ │ │ ├── layout.tsx │ │ │ ├── should-we-change-the-object-schema │ │ │ │ └── index.mdx │ │ │ ├── should-we-change-valibots-api │ │ │ │ ├── index.mdx │ │ │ │ └── npm-downloads.jpg │ │ │ ├── valibot-v0.31.0-is-finally-available │ │ │ │ ├── index.mdx │ │ │ │ ├── issue-type-dark.jpg │ │ │ │ ├── issue-type-light.jpg │ │ │ │ ├── mental-model-dark.jpg │ │ │ │ ├── mental-model-light.jpg │ │ │ │ ├── string-size-dark.jpg │ │ │ │ └── string-size-light.jpg │ │ │ ├── valibot-v1-rc-is-available │ │ │ │ ├── chapter-nav-dark.jpg │ │ │ │ ├── chapter-nav-light.jpg │ │ │ │ ├── index.mdx │ │ │ │ ├── mental-model-dark.jpg │ │ │ │ ├── mental-model-light.jpg │ │ │ │ ├── monthly-downloads.webp │ │ │ │ ├── object-fix-dark.jpg │ │ │ │ └── object-fix-light.jpg │ │ │ ├── valibot-v1-the-1-kb-schema-library │ │ │ │ ├── index.mdx │ │ │ │ └── valibot-talk.webp │ │ │ └── valibot-v1.1-release-notes │ │ │ │ └── index.mdx │ │ └── index.tsx │ ├── guides │ │ ├── (advanced) │ │ │ ├── async-validation │ │ │ │ └── index.mdx │ │ │ ├── internationalization │ │ │ │ └── index.mdx │ │ │ ├── json-schema │ │ │ │ └── index.mdx │ │ │ └── naming-convention │ │ │ │ └── index.mdx │ │ ├── (get-started) │ │ │ ├── comparison │ │ │ │ └── index.mdx │ │ │ ├── ecosystem │ │ │ │ └── index.mdx │ │ │ ├── installation │ │ │ │ └── index.mdx │ │ │ ├── introduction │ │ │ │ └── index.mdx │ │ │ ├── quick-start │ │ │ │ └── index.mdx │ │ │ └── use-cases │ │ │ │ └── index.mdx │ │ ├── (main-concepts) │ │ │ ├── errors │ │ │ │ └── index.tsx │ │ │ ├── infer-types │ │ │ │ └── index.mdx │ │ │ ├── issues │ │ │ │ └── index.mdx │ │ │ ├── mental-model │ │ │ │ ├── index.mdx │ │ │ │ ├── mental-model-dark.jpg │ │ │ │ └── mental-model-light.jpg │ │ │ ├── methods │ │ │ │ └── index.mdx │ │ │ ├── parse-data │ │ │ │ └── index.mdx │ │ │ ├── pipelines │ │ │ │ └── index.mdx │ │ │ └── schemas │ │ │ │ └── index.mdx │ │ ├── (migration) │ │ │ ├── migrate-from-ajv │ │ │ │ └── index.mdx │ │ │ ├── migrate-from-joi │ │ │ │ └── index.mdx │ │ │ ├── migrate-from-v0.30.0 │ │ │ │ └── index.ts │ │ │ ├── migrate-from-yup │ │ │ │ └── index.mdx │ │ │ ├── migrate-from-zod │ │ │ │ └── index.mdx │ │ │ └── migrate-to-v0.31.0 │ │ │ │ └── index.mdx │ │ ├── (schemas) │ │ │ ├── arrays │ │ │ │ └── index.mdx │ │ │ ├── enums │ │ │ │ └── index.mdx │ │ │ ├── intersections │ │ │ │ └── index.mdx │ │ │ ├── objects │ │ │ │ └── index.mdx │ │ │ ├── optionals │ │ │ │ └── index.mdx │ │ │ ├── other │ │ │ │ └── index.mdx │ │ │ └── unions │ │ │ │ └── index.mdx │ │ ├── index.tsx │ │ ├── layout.tsx │ │ └── menu.md │ ├── index.tsx │ ├── layout.tsx │ ├── og-image │ │ └── index.ts │ ├── playground │ │ ├── editorCode.ts │ │ ├── iframeCode.js │ │ └── index.tsx │ ├── plugin@chapters.ts │ ├── plugin@theme.ts │ └── service-worker.ts ├── styles │ ├── pace.css │ └── root.css └── utils │ ├── disableTransitions.ts │ ├── index.ts │ └── trackEvent.ts ├── tailwind.config.cjs ├── tsconfig.json ├── vercel.json └── vite.config.ts /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [fabian-hiller, EltonLobo07, Bilboramix] 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Dependencies 2 | node_modules 3 | 4 | # Production 5 | dist 6 | build 7 | server 8 | 9 | # Tests 10 | coverage 11 | 12 | # Backups 13 | backups 14 | 15 | # Services 16 | .vscode 17 | .netlify 18 | .vercel 19 | 20 | # Others 21 | logs 22 | *.log 23 | .cache 24 | temp 25 | tmp 26 | 27 | # Local env files 28 | .env*.local 29 | 30 | # IDEs and editors 31 | .idea 32 | .project 33 | .classpath 34 | *.launch 35 | .settings 36 | 37 | # System files 38 | .DS_Store 39 | Thumbs.db 40 | *.pem 41 | -------------------------------------------------------------------------------- /.grit/.gitignore: -------------------------------------------------------------------------------- 1 | .gritmodules* 2 | *.log 3 | -------------------------------------------------------------------------------- /.grit/grit.yaml: -------------------------------------------------------------------------------- 1 | version: 0.1.0 2 | patterns: 3 | - name: github.com/getgrit/stdlib#* 4 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | **/*.log 2 | **/.DS_Store 3 | *. 4 | .vscode/settings.json 5 | .history 6 | .yarn 7 | bazel-* 8 | bazel-bin 9 | bazel-out 10 | bazel-qwik 11 | bazel-testlogs 12 | dist 13 | dist-dev 14 | lib 15 | lib-types 16 | etc 17 | external 18 | node_modules 19 | temp 20 | tsc-out 21 | tsdoc-metadata.json 22 | target 23 | output 24 | build 25 | .cache 26 | .vscode 27 | .rollup.cache 28 | tsconfig.tsbuildinfo 29 | *.spec.tsx 30 | *.spec.ts 31 | .netlify 32 | pnpm-lock.yaml 33 | package-lock.json 34 | yarn.lock 35 | server 36 | .grit/patterns 37 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ./library/README.md -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | # Reporting Security Issues 2 | 3 | To report a vulnerability, please contact us via hello@fabianhiller.com. 4 | 5 | We recommend that you use the latest versions of the library to ensure that your application remains as secure as possible. 6 | -------------------------------------------------------------------------------- /brand/valibot-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/brand/valibot-icon.png -------------------------------------------------------------------------------- /brand/valibot-logo-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/brand/valibot-logo-dark.png -------------------------------------------------------------------------------- /brand/valibot-logo-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/brand/valibot-logo-light.png -------------------------------------------------------------------------------- /codemod/README.md: -------------------------------------------------------------------------------- 1 | # Codemod 2 | 3 | ## Run options 4 | 5 | The preferred way to run these codemods is via the [codemod registry](https://codemod.com/registry), but as a fallback you can also run them from the source file by running the following command. 6 | 7 | ```bash 8 | npx codemod@latest path-to-source-file.ts --engine=workflow 9 | ``` 10 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/.codemodrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://codemod-utils.s3.us-west-1.amazonaws.com/configuration_schema.json", 3 | "version": "0.2.2", 4 | "private": false, 5 | "name": "valibot/migrate-to-v0.31.0", 6 | "engine": "workflow", 7 | "meta": { 8 | "tags": ["valibot", "v0.31.0", "pipeline", "pipe"], 9 | "git": "https://github.com/fabian-hiller/valibot/tree/main/codemod/migrate-to-v0.31.0" 10 | }, 11 | "applicability": { 12 | "from": [["valibot", "<=", "0.30.0"]] 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture1.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | import { email } from 'valibot'; 3 | 4 | const Schema1 = v.string([email()]); 5 | 6 | const Schema2 = v.string('asd', [email()]); 7 | 8 | const Schema3 = v.string('asd', '123', [email()]); 9 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture1.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | import { email } from 'valibot'; 3 | 4 | const Schema1 = v.pipe(v.string(), email()); 5 | 6 | const Schema2 = v.pipe(v.string('asd'), email()); 7 | 8 | const Schema3 = v.pipe(v.string('asd', '123'), email()); 9 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture10.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.transform( 4 | v.brand(v.string(), 'Name'), 5 | (input) => input.length 6 | ); 7 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture10.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.pipe( 4 | v.string(), 5 | v.brand('Name'), 6 | v.transform((input) => input.length) 7 | ); 8 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture11.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.object( 4 | { 5 | name: v.string(), 6 | age: v.number(), 7 | }, 8 | [ 9 | v.forward( 10 | v.custom((i) => i.age > 18, 'You must be over 18'), 11 | ['age'] 12 | ), 13 | ] 14 | ); 15 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture11.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.pipe( 4 | v.object({ 5 | name: v.string(), 6 | age: v.number(), 7 | }), 8 | v.forward( 9 | v.check((i) => i.age > 18, 'You must be over 18'), 10 | ['age'] 11 | ) 12 | ); 13 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture12.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.brand(v.string([v.url()]), 'foo'); 4 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture12.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.pipe(v.string(), v.url(), v.brand('foo')); 4 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture13.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema1 = v.map( 4 | v.number(), 5 | v.string([v.url(), v.endsWith('@example.com')]), 6 | [v.maxSize(10)] 7 | ); 8 | 9 | const Schema2 = v.object( 10 | { 11 | list: v.array(v.string([v.minLength(3)]), [ 12 | v.minLength(3), 13 | v.includes('foo'), 14 | ]), 15 | length: v.number([v.integer()]), 16 | }, 17 | [v.custom((input) => input.list.length === input.length)] 18 | ); 19 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture13.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema1 = v.pipe( 4 | v.map(v.number(), v.pipe(v.string(), v.url(), v.endsWith('@example.com'))), 5 | v.maxSize(10) 6 | ); 7 | 8 | const Schema2 = v.pipe( 9 | v.object({ 10 | list: v.pipe( 11 | v.array(v.pipe(v.string(), v.minLength(3))), 12 | v.minLength(3), 13 | v.includes('foo') 14 | ), 15 | length: v.pipe(v.number(), v.integer()), 16 | }), 17 | v.check((input) => input.list.length === input.length) 18 | ); 19 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture15.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.coerce(v.date(), (input) => new Date(input)); 4 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture15.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.pipe( 4 | v.unknown(), 5 | v.transform((input) => new Date(input)) 6 | ); 7 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture16.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const flatErrors1 = v.flatten(error); 4 | const flatErrors2 = v.flatten([issue]); 5 | const flatErrors3 = v.flatten(result.issues); 6 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture16.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const flatErrors1 = v.flatten(error.issues); 4 | const flatErrors2 = v.flatten([issue]); 5 | const flatErrors3 = v.flatten(result.issues); 6 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture17.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema1 = v.union([v.string(), v.number()], [v.minValue(123)]); 4 | const Schema2 = v.union([v.string(), v.number()], 'error', [v.minValue(123)]); 5 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture17.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema1 = v.pipe(v.union([v.string(), v.number()]), v.minValue(123)); 4 | const Schema2 = v.pipe( 5 | v.union([v.string(), v.number()], 'error'), 6 | v.minValue(123) 7 | ); 8 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture2.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | import { type BaseSchema, toCustom } from 'valibot'; 3 | 4 | v.custom(); 5 | BaseSchema(); 6 | v.Input(); 7 | v.Output(); 8 | v.special(); 9 | toCustom(); 10 | toTrimmed(); 11 | v.toTrimmedEnd(); 12 | v.toTrimmedStart(); 13 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture2.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | import { type GenericSchema, transform } from 'valibot'; 3 | 4 | v.check(); 5 | GenericSchema(); 6 | v.InferInput(); 7 | v.InferOutput(); 8 | v.custom(); 9 | transform(); 10 | toTrimmed(); 11 | v.trimEnd(); 12 | v.trimStart(); 13 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture3.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | v.object({ 4 | email: v.string([v.email(), v.endsWith('@gmail.com')]), 5 | password: v.string([v.minLength(8)]), 6 | other: v.union([v.string([v.decimal()]), v.number()]), 7 | }); 8 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture3.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | v.object({ 4 | email: v.pipe(v.string(), v.email(), v.endsWith('@gmail.com')), 5 | password: v.pipe(v.string(), v.minLength(8)), 6 | other: v.union([v.pipe(v.string(), v.decimal()), v.number()]), 7 | }); 8 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture4.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | import { object, tuple } from 'valibot'; 3 | 4 | const ObjectSchema = object({ key: v.string() }, v.null_()); 5 | const TupleSchema = tuple([v.string()], v.null_()); 6 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture4.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | import { objectWithRest, tupleWithRest } from 'valibot'; 3 | 4 | const ObjectSchema = objectWithRest({ key: v.string() }, v.null_()); 5 | const TupleSchema = tupleWithRest([v.string()], v.null_()); 6 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture5.input.ts: -------------------------------------------------------------------------------- 1 | import { never, object, string, tuple, unknown } from 'valibot'; 2 | 3 | const LooseObjectSchema = object({ key: string() }, unknown()); 4 | const LooseTupleSchema = tuple([string()], unknown()); 5 | const StrictObjectSchema = object({ key: string() }, never()); 6 | const StrictTupleSchema = tuple([string()], never()); 7 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture5.output.ts: -------------------------------------------------------------------------------- 1 | import { 2 | looseObject, 3 | looseTuple, 4 | never, 5 | object, 6 | strictObject, 7 | strictTuple, 8 | string, 9 | tuple, 10 | unknown, 11 | } from 'valibot'; 12 | 13 | const LooseObjectSchema = looseObject({ key: string() }); 14 | const LooseTupleSchema = looseTuple([string()]); 15 | const StrictObjectSchema = strictObject({ key: string() }); 16 | const StrictTupleSchema = strictTuple([string()]); 17 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture6.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const ObjectSchema1 = v.object({ foo: v.string() }); 4 | const ObjectSchema2 = v.object({ bar: v.number() }); 5 | 6 | const MergedObject = v.merge([ObjectSchema1, ObjectSchema2]); 7 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture6.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const ObjectSchema1 = v.object({ foo: v.string() }); 4 | const ObjectSchema2 = v.object({ bar: v.number() }); 5 | 6 | const MergedObject = v.object({ 7 | ...ObjectSchema1.entries, 8 | ...ObjectSchema2.entries, 9 | }); 10 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture7.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const BrandedSchema = v.brand(v.string(), 'foo'); 4 | const TransformedSchema = v.transform(v.string(), (input) => input.length); 5 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture7.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const BrandedSchema = v.pipe(v.string(), v.brand('foo')); 4 | const TransformedSchema = v.pipe( 5 | v.string(), 6 | v.transform((input) => input.length) 7 | ); 8 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture8.input.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.string([v.toTrimmed(), v.url()]); 4 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture8.output.ts: -------------------------------------------------------------------------------- 1 | import * as v from 'valibot'; 2 | 3 | const Schema = v.pipe(v.string(), v.trim(), v.url()); 4 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture9.input.ts: -------------------------------------------------------------------------------- 1 | import { string, url } from 'valibot'; 2 | 3 | const Schema = string([url()]); 4 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/__testfixtures__/fixture9.output.ts: -------------------------------------------------------------------------------- 1 | import { pipe, string, url } from 'valibot'; 2 | 3 | const Schema = pipe(string(), url()); 4 | -------------------------------------------------------------------------------- /codemod/migrate-to-v0.31.0/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "migrate-to-v0.31.0", 3 | "license": "MIT", 4 | "author": "Codemod, Inc.", 5 | "type": "module", 6 | "files": [ 7 | "README.md", 8 | ".codemodrc.json", 9 | "./dist/index.cjs" 10 | ], 11 | "devDependencies": { 12 | "@codemod.com/workflow": "^0.0.31", 13 | "@types/node": "^22.13.5", 14 | "typescript": "^5.7.3" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /library/jsr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@valibot/valibot", 3 | "version": "1.1.0", 4 | "exports": "./src/index.ts", 5 | "publish": { 6 | "include": ["src/**/*.ts", "README.md"], 7 | "exclude": ["src/**/*.test.ts", "src/**/*.test-d.ts", "src/vitest/**/*.ts"] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /library/mod.ts: -------------------------------------------------------------------------------- 1 | export * from './src/index.ts'; 2 | -------------------------------------------------------------------------------- /library/playground.ts: -------------------------------------------------------------------------------- 1 | // eslint-disable-next-line @typescript-eslint/no-unused-vars 2 | import * as v from './dist/index.js'; 3 | -------------------------------------------------------------------------------- /library/src/actions/args/index.ts: -------------------------------------------------------------------------------- 1 | export * from './args.ts'; 2 | export * from './argsAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/actions/await/index.ts: -------------------------------------------------------------------------------- 1 | export * from './awaitAsync.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/base64/index.ts: -------------------------------------------------------------------------------- 1 | export * from './base64.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/bic/index.ts: -------------------------------------------------------------------------------- 1 | export * from './bic.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/brand/index.ts: -------------------------------------------------------------------------------- 1 | export * from './brand.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/bytes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './bytes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/check/index.ts: -------------------------------------------------------------------------------- 1 | export * from './check.ts'; 2 | export * from './checkAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/actions/check/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue, MaybePromise } from '../../types/index.ts'; 2 | 3 | /** 4 | * Check issue interface. 5 | */ 6 | export interface CheckIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'validation'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'check'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: null; 19 | /** 20 | * The validation function. 21 | */ 22 | readonly requirement: (input: TInput) => MaybePromise; 23 | } 24 | -------------------------------------------------------------------------------- /library/src/actions/checkItems/index.ts: -------------------------------------------------------------------------------- 1 | export * from './checkItems.ts'; 2 | export * from './checkItemsAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/actions/creditCard/index.ts: -------------------------------------------------------------------------------- 1 | export * from './creditCard.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/cuid2/index.ts: -------------------------------------------------------------------------------- 1 | export * from './cuid2.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/decimal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './decimal.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/description/description.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, expect, test } from 'vitest'; 2 | import { description, type DescriptionAction } from './description.ts'; 3 | 4 | describe('description', () => { 5 | test('should return action object', () => { 6 | expect(description('text')).toStrictEqual({ 7 | kind: 'metadata', 8 | type: 'description', 9 | reference: description, 10 | description: 'text', 11 | } satisfies DescriptionAction); 12 | }); 13 | }); 14 | -------------------------------------------------------------------------------- /library/src/actions/description/index.ts: -------------------------------------------------------------------------------- 1 | export * from './description.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/digits/index.ts: -------------------------------------------------------------------------------- 1 | export * from './digits.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/email/index.ts: -------------------------------------------------------------------------------- 1 | export * from './email.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/emoji/index.ts: -------------------------------------------------------------------------------- 1 | export * from './emoji.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/empty/index.ts: -------------------------------------------------------------------------------- 1 | export * from './empty.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/endsWith/index.ts: -------------------------------------------------------------------------------- 1 | export * from './endsWith.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/entries/index.ts: -------------------------------------------------------------------------------- 1 | export * from './entries.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/everyItem/index.ts: -------------------------------------------------------------------------------- 1 | export * from './everyItem.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/excludes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './excludes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/filterItems/index.ts: -------------------------------------------------------------------------------- 1 | export * from './filterItems.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/findItem/index.ts: -------------------------------------------------------------------------------- 1 | export * from './findItem.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/finite/index.ts: -------------------------------------------------------------------------------- 1 | export * from './finite.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/flavor/index.ts: -------------------------------------------------------------------------------- 1 | export * from './flavor.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/graphemes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './graphemes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/gtValue/index.ts: -------------------------------------------------------------------------------- 1 | export * from './gtValue.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/hash/index.ts: -------------------------------------------------------------------------------- 1 | export * from './hash.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/hexColor/index.ts: -------------------------------------------------------------------------------- 1 | export * from './hexColor.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/hexadecimal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './hexadecimal.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/imei/index.ts: -------------------------------------------------------------------------------- 1 | export * from './imei.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/includes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './includes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/integer/index.ts: -------------------------------------------------------------------------------- 1 | export * from './integer.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/ip/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ip.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/ipv4/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ipv4.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/ipv6/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ipv6.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/isoDate/index.ts: -------------------------------------------------------------------------------- 1 | export * from './isoDate.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/isoDateTime/index.ts: -------------------------------------------------------------------------------- 1 | export * from './isoDateTime.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/isoTime/index.ts: -------------------------------------------------------------------------------- 1 | export * from './isoTime.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/isoTimeSecond/index.ts: -------------------------------------------------------------------------------- 1 | export * from './isoTimeSecond.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/isoTimestamp/index.ts: -------------------------------------------------------------------------------- 1 | export * from './isoTimestamp.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/isoWeek/index.ts: -------------------------------------------------------------------------------- 1 | export * from './isoWeek.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/length/index.ts: -------------------------------------------------------------------------------- 1 | export * from './length.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/ltValue/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ltValue.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/mac/index.ts: -------------------------------------------------------------------------------- 1 | export * from './mac.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/mac48/index.ts: -------------------------------------------------------------------------------- 1 | export * from './mac48.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/mac64/index.ts: -------------------------------------------------------------------------------- 1 | export * from './mac64.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/mapItems/index.ts: -------------------------------------------------------------------------------- 1 | export * from './mapItems.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/maxBytes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './maxBytes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/maxEntries/index.ts: -------------------------------------------------------------------------------- 1 | export * from './maxEntries.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/maxGraphemes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './maxGraphemes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/maxLength/index.ts: -------------------------------------------------------------------------------- 1 | export * from './maxLength.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/maxSize/index.ts: -------------------------------------------------------------------------------- 1 | export * from './maxSize.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/maxValue/index.ts: -------------------------------------------------------------------------------- 1 | export * from './maxValue.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/maxWords/index.ts: -------------------------------------------------------------------------------- 1 | export * from './maxWords.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/metadata/index.ts: -------------------------------------------------------------------------------- 1 | export * from './metadata.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/metadata/metadata.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, expect, test } from 'vitest'; 2 | import { metadata, type MetadataAction } from './metadata.ts'; 3 | 4 | describe('metadata', () => { 5 | test('should return action object', () => { 6 | expect(metadata({ key: 'foo' })).toStrictEqual({ 7 | kind: 'metadata', 8 | type: 'metadata', 9 | reference: metadata, 10 | metadata: { key: 'foo' }, 11 | } satisfies MetadataAction); 12 | }); 13 | }); 14 | -------------------------------------------------------------------------------- /library/src/actions/mimeType/index.ts: -------------------------------------------------------------------------------- 1 | export * from './mimeType.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/minBytes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './minBytes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/minEntries/index.ts: -------------------------------------------------------------------------------- 1 | export * from './minEntries.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/minGraphemes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './minGraphemes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/minLength/index.ts: -------------------------------------------------------------------------------- 1 | export * from './minLength.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/minSize/index.ts: -------------------------------------------------------------------------------- 1 | export * from './minSize.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/minValue/index.ts: -------------------------------------------------------------------------------- 1 | export * from './minValue.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/minWords/index.ts: -------------------------------------------------------------------------------- 1 | export * from './minWords.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/multipleOf/index.ts: -------------------------------------------------------------------------------- 1 | export * from './multipleOf.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/nanoid/index.ts: -------------------------------------------------------------------------------- 1 | export * from './nanoid.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/nonEmpty/index.ts: -------------------------------------------------------------------------------- 1 | export * from './nonEmpty.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/normalize/index.ts: -------------------------------------------------------------------------------- 1 | export * from './normalize.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/notBytes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './notBytes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/notEntries/index.ts: -------------------------------------------------------------------------------- 1 | export * from './notEntries.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/notGraphemes/index.ts: -------------------------------------------------------------------------------- 1 | export * from './notGraphemes.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/notLength/index.ts: -------------------------------------------------------------------------------- 1 | export * from './notLength.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/notSize/index.ts: -------------------------------------------------------------------------------- 1 | export * from './notSize.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/notValue/index.ts: -------------------------------------------------------------------------------- 1 | export * from './notValue.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/notValues/index.ts: -------------------------------------------------------------------------------- 1 | export * from './notValues.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/notWords/index.ts: -------------------------------------------------------------------------------- 1 | export * from './notWords.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/octal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './octal.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/parseJson/index.ts: -------------------------------------------------------------------------------- 1 | export * from './parseJson.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/partialCheck/index.ts: -------------------------------------------------------------------------------- 1 | export * from './partialCheck.ts'; 2 | export * from './partialCheckAsync.ts'; 3 | export type { PartialCheckIssue } from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/actions/partialCheck/utils/_isPartiallyTyped/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_isPartiallyTyped.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/partialCheck/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_isPartiallyTyped/index.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/rawCheck/index.ts: -------------------------------------------------------------------------------- 1 | export * from './rawCheck.ts'; 2 | export * from './rawCheckAsync.ts'; 3 | export type { RawCheckIssue } from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/actions/rawTransform/index.ts: -------------------------------------------------------------------------------- 1 | export * from './rawTransform.ts'; 2 | export * from './rawTransformAsync.ts'; 3 | export type { RawTransformIssue } from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/actions/readonly/index.ts: -------------------------------------------------------------------------------- 1 | export * from './readonly.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/reduceItems/index.ts: -------------------------------------------------------------------------------- 1 | export * from './reduceItems.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/regex/index.ts: -------------------------------------------------------------------------------- 1 | export * from './regex.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/returns/index.ts: -------------------------------------------------------------------------------- 1 | export * from './returns.ts'; 2 | export * from './returnsAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/actions/rfcEmail/index.ts: -------------------------------------------------------------------------------- 1 | export * from './rfcEmail.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/safeInteger/index.ts: -------------------------------------------------------------------------------- 1 | export * from './safeInteger.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/size/index.ts: -------------------------------------------------------------------------------- 1 | export * from './size.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/slug/index.ts: -------------------------------------------------------------------------------- 1 | export * from './slug.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/someItem/index.ts: -------------------------------------------------------------------------------- 1 | export * from './someItem.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/sortItems/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sortItems.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/startsWith/index.ts: -------------------------------------------------------------------------------- 1 | export * from './startsWith.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/stringifyJson/index.ts: -------------------------------------------------------------------------------- 1 | export * from './stringifyJson.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/title/index.ts: -------------------------------------------------------------------------------- 1 | export * from './title.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/title/title.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, expect, test } from 'vitest'; 2 | import { title, type TitleAction } from './title.ts'; 3 | 4 | describe('title', () => { 5 | test('should return action object', () => { 6 | expect(title('text')).toStrictEqual({ 7 | kind: 'metadata', 8 | type: 'title', 9 | reference: title, 10 | title: 'text', 11 | } satisfies TitleAction); 12 | }); 13 | }); 14 | -------------------------------------------------------------------------------- /library/src/actions/toLowerCase/index.ts: -------------------------------------------------------------------------------- 1 | export * from './toLowerCase.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/toMaxValue/index.ts: -------------------------------------------------------------------------------- 1 | export * from './toMaxValue.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/toMinValue/index.ts: -------------------------------------------------------------------------------- 1 | export * from './toMinValue.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/toUpperCase/index.ts: -------------------------------------------------------------------------------- 1 | export * from './toUpperCase.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/transform/index.ts: -------------------------------------------------------------------------------- 1 | export * from './transform.ts'; 2 | export * from './transformAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/actions/trim/index.ts: -------------------------------------------------------------------------------- 1 | export * from './trim.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/trimEnd/index.ts: -------------------------------------------------------------------------------- 1 | export * from './trimEnd.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/trimStart/index.ts: -------------------------------------------------------------------------------- 1 | export * from './trimStart.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/ulid/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ulid.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/url/index.ts: -------------------------------------------------------------------------------- 1 | export * from './url.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/uuid/index.ts: -------------------------------------------------------------------------------- 1 | export * from './uuid.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/value/index.ts: -------------------------------------------------------------------------------- 1 | export * from './value.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/values/index.ts: -------------------------------------------------------------------------------- 1 | export * from './values.ts'; 2 | -------------------------------------------------------------------------------- /library/src/actions/words/index.ts: -------------------------------------------------------------------------------- 1 | export * from './words.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/assert/index.ts: -------------------------------------------------------------------------------- 1 | export * from './assert.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/config/index.ts: -------------------------------------------------------------------------------- 1 | export * from './config.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/fallback/index.ts: -------------------------------------------------------------------------------- 1 | export * from './fallback.ts'; 2 | export * from './fallbackAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/methods/flatten/index.ts: -------------------------------------------------------------------------------- 1 | export * from './flatten.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/forward/index.ts: -------------------------------------------------------------------------------- 1 | export * from './forward.ts'; 2 | export * from './forwardAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/methods/getDefault/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getDefault.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/getDefaults/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getDefaults.ts'; 2 | export * from './getDefaultsAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/methods/getDescription/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getDescription.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/getFallback/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getFallback.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/getFallbacks/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getFallbacks.ts'; 2 | export * from './getFallbacksAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/methods/getMetadata/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getMetadata.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/getTitle/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getTitle.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/is/index.ts: -------------------------------------------------------------------------------- 1 | export * from './is.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/keyof/index.ts: -------------------------------------------------------------------------------- 1 | export * from './keyof.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/message/index.ts: -------------------------------------------------------------------------------- 1 | export * from './message.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/omit/index.ts: -------------------------------------------------------------------------------- 1 | export * from './omit.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/parse/index.ts: -------------------------------------------------------------------------------- 1 | export * from './parse.ts'; 2 | export * from './parseAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/methods/parser/index.ts: -------------------------------------------------------------------------------- 1 | export * from './parser.ts'; 2 | export * from './parserAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/methods/partial/index.ts: -------------------------------------------------------------------------------- 1 | export * from './partial.ts'; 2 | export * from './partialAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/methods/pick/index.ts: -------------------------------------------------------------------------------- 1 | export * from './pick.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/pipe/index.ts: -------------------------------------------------------------------------------- 1 | export * from './pipe.ts'; 2 | export * from './pipeAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/methods/required/index.ts: -------------------------------------------------------------------------------- 1 | export * from './required.ts'; 2 | export * from './requiredAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/methods/safeParse/index.ts: -------------------------------------------------------------------------------- 1 | export * from './safeParse.ts'; 2 | export * from './safeParseAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/methods/safeParser/index.ts: -------------------------------------------------------------------------------- 1 | export * from './safeParser.ts'; 2 | export * from './safeParserAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/methods/summarize/index.ts: -------------------------------------------------------------------------------- 1 | export * from './summarize.ts'; 2 | -------------------------------------------------------------------------------- /library/src/methods/unwrap/index.ts: -------------------------------------------------------------------------------- 1 | export * from './unwrap.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/any/index.ts: -------------------------------------------------------------------------------- 1 | export * from './any.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/array/index.ts: -------------------------------------------------------------------------------- 1 | export * from './array.ts'; 2 | export * from './arrayAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/array/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Array issue interface. 5 | */ 6 | export interface ArrayIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'array'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'Array'; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/bigint/index.ts: -------------------------------------------------------------------------------- 1 | export * from './bigint.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/blob/index.ts: -------------------------------------------------------------------------------- 1 | export * from './blob.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/boolean/index.ts: -------------------------------------------------------------------------------- 1 | export * from './boolean.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/custom/index.ts: -------------------------------------------------------------------------------- 1 | export * from './custom.ts'; 2 | export * from './customAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/custom/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Custom issue interface. 5 | */ 6 | export interface CustomIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'custom'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'unknown'; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/date/index.ts: -------------------------------------------------------------------------------- 1 | export * from './date.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/enum/index.ts: -------------------------------------------------------------------------------- 1 | export * from './enum.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/exactOptional/index.ts: -------------------------------------------------------------------------------- 1 | export * from './exactOptional.ts'; 2 | export * from './exactOptionalAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/schemas/file/index.ts: -------------------------------------------------------------------------------- 1 | export * from './file.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/function/index.ts: -------------------------------------------------------------------------------- 1 | export * from './function.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/instance/index.ts: -------------------------------------------------------------------------------- 1 | export * from './instance.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/intersect/index.ts: -------------------------------------------------------------------------------- 1 | export * from './intersect.ts'; 2 | export * from './intersectAsync.ts'; 3 | export type { 4 | IntersectIssue, 5 | IntersectOptions, 6 | IntersectOptionsAsync, 7 | } from './types.ts'; 8 | -------------------------------------------------------------------------------- /library/src/schemas/intersect/utils/_merge/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_merge.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/intersect/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_merge/index.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/lazy/index.ts: -------------------------------------------------------------------------------- 1 | export * from './lazy.ts'; 2 | export * from './lazyAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/schemas/literal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './literal.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/looseObject/index.ts: -------------------------------------------------------------------------------- 1 | export * from './looseObject.ts'; 2 | export * from './looseObjectAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/looseObject/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Loose object issue interface. 5 | */ 6 | export interface LooseObjectIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'loose_object'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'Object' | `"${string}"`; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/looseTuple/index.ts: -------------------------------------------------------------------------------- 1 | export * from './looseTuple.ts'; 2 | export * from './looseTupleAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/looseTuple/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Loose tuple issue interface. 5 | */ 6 | export interface LooseTupleIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'loose_tuple'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'Array'; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/map/index.ts: -------------------------------------------------------------------------------- 1 | export * from './map.ts'; 2 | export * from './mapAsync.ts'; 3 | export type { MapIssue } from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/nan/index.ts: -------------------------------------------------------------------------------- 1 | export * from './nan.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/never/index.ts: -------------------------------------------------------------------------------- 1 | export * from './never.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/nonNullable/index.ts: -------------------------------------------------------------------------------- 1 | export * from './nonNullable.ts'; 2 | export * from './nonNullableAsync.ts'; 3 | export type { NonNullableIssue } from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/nonNullish/index.ts: -------------------------------------------------------------------------------- 1 | export * from './nonNullish.ts'; 2 | export * from './nonNullishAsync.ts'; 3 | export type { NonNullishIssue } from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/nonOptional/index.ts: -------------------------------------------------------------------------------- 1 | export * from './nonOptional.ts'; 2 | export * from './nonOptionalAsync.ts'; 3 | export type { NonOptionalIssue } from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/null/index.ts: -------------------------------------------------------------------------------- 1 | export * from './null.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/nullable/index.ts: -------------------------------------------------------------------------------- 1 | export * from './nullable.ts'; 2 | export * from './nullableAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/schemas/nullish/index.ts: -------------------------------------------------------------------------------- 1 | export * from './nullish.ts'; 2 | export * from './nullishAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/schemas/number/index.ts: -------------------------------------------------------------------------------- 1 | export * from './number.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/object/index.ts: -------------------------------------------------------------------------------- 1 | export * from './object.ts'; 2 | export * from './objectAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/object/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Object issue interface. 5 | */ 6 | export interface ObjectIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'object'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'Object' | `"${string}"`; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/objectWithRest/index.ts: -------------------------------------------------------------------------------- 1 | export * from './objectWithRest.ts'; 2 | export * from './objectWithRestAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/objectWithRest/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Object with rest issue interface. 5 | */ 6 | export interface ObjectWithRestIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'object_with_rest'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'Object' | `"${string}"`; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/optional/index.ts: -------------------------------------------------------------------------------- 1 | export * from './optional.ts'; 2 | export * from './optionalAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/schemas/picklist/index.ts: -------------------------------------------------------------------------------- 1 | export * from './picklist.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/promise/index.ts: -------------------------------------------------------------------------------- 1 | export * from './promise.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/record/index.ts: -------------------------------------------------------------------------------- 1 | export * from './record.ts'; 2 | export * from './recordAsync.ts'; 3 | export type { RecordIssue } from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/set/index.ts: -------------------------------------------------------------------------------- 1 | export * from './set.ts'; 2 | export * from './setAsync.ts'; 3 | export type { SetIssue } from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/strictObject/index.ts: -------------------------------------------------------------------------------- 1 | export * from './strictObject.ts'; 2 | export * from './strictObjectAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/strictObject/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Strict object issue interface. 5 | */ 6 | export interface StrictObjectIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'strict_object'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'Object' | `"${string}"` | 'never'; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/strictTuple/index.ts: -------------------------------------------------------------------------------- 1 | export * from './strictTuple.ts'; 2 | export * from './strictTupleAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/strictTuple/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Strict tuple issue interface. 5 | */ 6 | export interface StrictTupleIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'strict_tuple'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'Array' | 'never'; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/string/index.ts: -------------------------------------------------------------------------------- 1 | export * from './string.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/symbol/index.ts: -------------------------------------------------------------------------------- 1 | export * from './symbol.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/tuple/index.ts: -------------------------------------------------------------------------------- 1 | export * from './tuple.ts'; 2 | export * from './tupleAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/tuple/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Tuple issue interface. 5 | */ 6 | export interface TupleIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'tuple'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'Array'; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/tupleWithRest/index.ts: -------------------------------------------------------------------------------- 1 | export * from './tupleWithRest.ts'; 2 | export * from './tupleWithRestAsync.ts'; 3 | export * from './types.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/tupleWithRest/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Tuple with rest issue interface. 5 | */ 6 | export interface TupleWithRestIssue extends BaseIssue { 7 | /** 8 | * The issue kind. 9 | */ 10 | readonly kind: 'schema'; 11 | /** 12 | * The issue type. 13 | */ 14 | readonly type: 'tuple_with_rest'; 15 | /** 16 | * The expected property. 17 | */ 18 | readonly expected: 'Array'; 19 | } 20 | -------------------------------------------------------------------------------- /library/src/schemas/undefined/index.ts: -------------------------------------------------------------------------------- 1 | export * from './undefined.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/undefinedable/index.ts: -------------------------------------------------------------------------------- 1 | export * from './undefinedable.ts'; 2 | export * from './undefinedableAsync.ts'; 3 | -------------------------------------------------------------------------------- /library/src/schemas/union/index.ts: -------------------------------------------------------------------------------- 1 | export * from './types.ts'; 2 | export * from './union.ts'; 3 | export * from './unionAsync.ts'; 4 | -------------------------------------------------------------------------------- /library/src/schemas/union/types.ts: -------------------------------------------------------------------------------- 1 | import type { BaseIssue } from '../../types/index.ts'; 2 | 3 | /** 4 | * Union issue interface. 5 | */ 6 | export interface UnionIssue> 7 | extends BaseIssue { 8 | /** 9 | * The issue kind. 10 | */ 11 | readonly kind: 'schema'; 12 | /** 13 | * The issue type. 14 | */ 15 | readonly type: 'union'; 16 | /** 17 | * The expected property. 18 | */ 19 | readonly expected: string; 20 | /** 21 | * The sub issues. 22 | */ 23 | readonly issues?: [TSubIssue, ...TSubIssue[]]; 24 | } 25 | -------------------------------------------------------------------------------- /library/src/schemas/union/utils/_subIssues/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_subIssues.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/union/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_subIssues/index.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/unknown/index.ts: -------------------------------------------------------------------------------- 1 | export * from './unknown.ts'; 2 | -------------------------------------------------------------------------------- /library/src/schemas/variant/index.ts: -------------------------------------------------------------------------------- 1 | export type { 2 | VariantIssue, 3 | VariantOptions, 4 | VariantOptionsAsync, 5 | } from './types.ts'; 6 | export * from './variant.ts'; 7 | export * from './variantAsync.ts'; 8 | -------------------------------------------------------------------------------- /library/src/schemas/void/index.ts: -------------------------------------------------------------------------------- 1 | export * from './void.ts'; 2 | -------------------------------------------------------------------------------- /library/src/storages/globalConfig/index.ts: -------------------------------------------------------------------------------- 1 | export * from './globalConfig.ts'; 2 | -------------------------------------------------------------------------------- /library/src/storages/globalMessage/index.ts: -------------------------------------------------------------------------------- 1 | export * from './globalMessage.ts'; 2 | -------------------------------------------------------------------------------- /library/src/storages/index.ts: -------------------------------------------------------------------------------- 1 | export * from './globalConfig/index.ts'; 2 | export * from './globalMessage/index.ts'; 3 | export * from './schemaMessage/index.ts'; 4 | export * from './specificMessage/index.ts'; 5 | -------------------------------------------------------------------------------- /library/src/storages/schemaMessage/index.ts: -------------------------------------------------------------------------------- 1 | export * from './schemaMessage.ts'; 2 | -------------------------------------------------------------------------------- /library/src/storages/specificMessage/index.ts: -------------------------------------------------------------------------------- 1 | export * from './specificMessage.ts'; 2 | -------------------------------------------------------------------------------- /library/src/types/index.ts: -------------------------------------------------------------------------------- 1 | export * from './config.ts'; 2 | export * from './dataset.ts'; 3 | export * from './infer.ts'; 4 | export * from './issue.ts'; 5 | export * from './metadata.ts'; 6 | export * from './object.ts'; 7 | export * from './other.ts'; 8 | export * from './pipe.ts'; 9 | export * from './schema.ts'; 10 | export * from './standard.ts'; 11 | export * from './transformation.ts'; 12 | export * from './tuple.ts'; 13 | export * from './utils.ts'; 14 | export * from './validation.ts'; 15 | -------------------------------------------------------------------------------- /library/src/utils/ValiError/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ValiError.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_addIssue/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_addIssue.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_getByteCount/_getByteCount.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, expect, test } from 'vitest'; 2 | import { _getByteCount } from './_getByteCount.ts'; 3 | 4 | describe('_getByteCount', () => { 5 | test('should return byte count', () => { 6 | expect(_getByteCount('hello world')).toBe(11); 7 | expect(_getByteCount('😀')).toBe(4); 8 | expect(_getByteCount('🧑🏻‍💻')).toBe(15); 9 | expect(_getByteCount('𝄞')).toBe(4); 10 | expect(_getByteCount('สวัสดี')).toBe(18); 11 | }); 12 | }); 13 | -------------------------------------------------------------------------------- /library/src/utils/_getByteCount/_getByteCount.ts: -------------------------------------------------------------------------------- 1 | let textEncoder: TextEncoder; 2 | 3 | /** 4 | * Returns the byte count of the input. 5 | * 6 | * @param input The input to be measured. 7 | * 8 | * @returns The byte count. 9 | * 10 | * @internal 11 | */ 12 | // @__NO_SIDE_EFFECTS__ 13 | export function _getByteCount(input: string): number { 14 | if (!textEncoder) { 15 | textEncoder = new TextEncoder(); 16 | } 17 | return textEncoder.encode(input).length; 18 | } 19 | -------------------------------------------------------------------------------- /library/src/utils/_getByteCount/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_getByteCount.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_getGraphemeCount/_getGraphemeCount.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, expect, test } from 'vitest'; 2 | import { _getGraphemeCount } from './_getGraphemeCount.ts'; 3 | 4 | describe('_getGraphemeCount', () => { 5 | test('should return grapheme count', () => { 6 | expect(_getGraphemeCount('hello world')).toBe(11); 7 | expect(_getGraphemeCount('😀')).toBe(1); 8 | expect(_getGraphemeCount('🧑🏻‍💻')).toBe(1); 9 | expect(_getGraphemeCount('𝄞')).toBe(1); 10 | expect(_getGraphemeCount('สวัสดี')).toBe(4); 11 | }); 12 | }); 13 | -------------------------------------------------------------------------------- /library/src/utils/_getGraphemeCount/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_getGraphemeCount.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_getLastMetadata/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_getLastMetadata.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_getStandardProps/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_getStandardProps.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_getWordCount/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_getWordCount.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_isLuhnAlgo/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_isLuhnAlgo.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_isValidObjectKey/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_isValidObjectKey.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_joinExpects/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_joinExpects.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/_stringify/index.ts: -------------------------------------------------------------------------------- 1 | export * from './_stringify.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/entriesFromList/index.ts: -------------------------------------------------------------------------------- 1 | export * from './entriesFromList.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/entriesFromObjects/index.ts: -------------------------------------------------------------------------------- 1 | export * from './entriesFromObjects.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/getDotPath/index.ts: -------------------------------------------------------------------------------- 1 | export * from './getDotPath.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/isOfKind/index.ts: -------------------------------------------------------------------------------- 1 | export * from './isOfKind.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/isOfKind/isOfKind.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * A generic type guard to check the kind of an object. 3 | * 4 | * @param kind The kind to check for. 5 | * @param object The object to check. 6 | * 7 | * @returns Whether it matches. 8 | */ 9 | // @__NO_SIDE_EFFECTS__ 10 | export function isOfKind< 11 | const TKind extends TObject['kind'], 12 | const TObject extends { kind: string }, 13 | >(kind: TKind, object: TObject): object is Extract { 14 | return object.kind === kind; 15 | } 16 | -------------------------------------------------------------------------------- /library/src/utils/isOfType/index.ts: -------------------------------------------------------------------------------- 1 | export * from './isOfType.ts'; 2 | -------------------------------------------------------------------------------- /library/src/utils/isOfType/isOfType.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * A generic type guard to check the type of an object. 3 | * 4 | * @param type The type to check for. 5 | * @param object The object to check. 6 | * 7 | * @returns Whether it matches. 8 | */ 9 | // @__NO_SIDE_EFFECTS__ 10 | export function isOfType< 11 | const TType extends TObject['type'], 12 | const TObject extends { type: string }, 13 | >(type: TType, object: TObject): object is Extract { 14 | return object.type === type; 15 | } 16 | -------------------------------------------------------------------------------- /library/src/utils/isValiError/index.ts: -------------------------------------------------------------------------------- 1 | export * from './isValiError.ts'; 2 | -------------------------------------------------------------------------------- /library/src/vitest/index.ts: -------------------------------------------------------------------------------- 1 | export * from './expectActionIssue.ts'; 2 | export * from './expectActionIssueAsync.ts'; 3 | export * from './expectNoActionIssue.ts'; 4 | export * from './expectNoActionIssueAsync.ts'; 5 | export * from './expectNoSchemaIssue.ts'; 6 | export * from './expectNoSchemaIssueAsync.ts'; 7 | export * from './expectSchemaIssue.ts'; 8 | export * from './expectSchemaIssueAsync.ts'; 9 | -------------------------------------------------------------------------------- /library/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "allowImportingTsExtensions": true, 4 | "declaration": true, 5 | "exactOptionalPropertyTypes": true, 6 | "isolatedDeclarations": true, 7 | "lib": ["ESNext", "DOM"], 8 | "module": "ESNext", 9 | "moduleResolution": "node", 10 | "noEmit": true, 11 | "skipLibCheck": true, 12 | "strict": true, 13 | "target": "ES2020" 14 | }, 15 | "include": ["src"] 16 | } 17 | -------------------------------------------------------------------------------- /library/tsdown.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'tsdown'; 2 | 3 | export default defineConfig([ 4 | { 5 | entry: ['./src/index.ts'], 6 | clean: true, 7 | format: ['esm', 'cjs'], 8 | minify: false, 9 | dts: true, 10 | outDir: './dist', 11 | }, 12 | { 13 | entry: ['./src/index.ts'], 14 | clean: true, 15 | format: ['esm', 'cjs'], 16 | minify: true, 17 | dts: false, 18 | outDir: './dist', 19 | outExtensions: ({ format }) => ({ 20 | js: format === 'cjs' ? '.min.cjs' : '.min.js', 21 | }), 22 | }, 23 | ]); 24 | -------------------------------------------------------------------------------- /library/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config'; 2 | 3 | export default defineConfig({ 4 | test: { 5 | environment: 'jsdom', 6 | isolate: false, 7 | coverage: { 8 | include: ['src'], 9 | exclude: [ 10 | 'src/types', 11 | 'src/vitest', 12 | 'src/regex.ts', 13 | '**/index.ts', 14 | '**/types.ts', 15 | '**/*.test.ts', 16 | '**/*.test-d.ts', 17 | ], 18 | }, 19 | }, 20 | }); 21 | -------------------------------------------------------------------------------- /packages/i18n/.gitignore: -------------------------------------------------------------------------------- 1 | index.ts 2 | index.js 3 | index.cjs 4 | index.d.ts 5 | index.d.cts 6 | ar 7 | ca 8 | cs 9 | de 10 | es 11 | fa 12 | fr 13 | hu 14 | id 15 | it 16 | ja 17 | kr 18 | nb 19 | nl 20 | pl 21 | pt 22 | ro 23 | ru 24 | sl 25 | sv 26 | tr 27 | uk 28 | vi 29 | zh-CN 30 | zh-TW -------------------------------------------------------------------------------- /packages/i18n/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "strict": true, 4 | "lib": ["ESNext", "DOM"], 5 | "target": "ES2020", 6 | "module": "ESNext", 7 | "moduleResolution": "node", 8 | "allowImportingTsExtensions": true, 9 | "allowSyntheticDefaultImports": true, 10 | "resolveJsonModule": true, 11 | "skipLibCheck": true, 12 | "noEmit": true 13 | }, 14 | "include": ["scripts", "src"] 15 | } 16 | -------------------------------------------------------------------------------- /packages/to-json-schema/jsr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@valibot/to-json-schema", 3 | "version": "1.2.0", 4 | "exports": "./src/index.ts", 5 | "publish": { 6 | "include": ["src/**/*.ts", "README.md"], 7 | "exclude": ["src/**/*.test.ts", "src/vitest/**/*.ts"] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/converters/convertAction/index.ts: -------------------------------------------------------------------------------- 1 | export * from './convertAction.ts'; 2 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/converters/convertSchema/index.ts: -------------------------------------------------------------------------------- 1 | export * from './convertSchema.ts'; 2 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/converters/index.ts: -------------------------------------------------------------------------------- 1 | export * from './convertAction/index.ts'; 2 | export * from './convertSchema/index.ts'; 3 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/functions/index.ts: -------------------------------------------------------------------------------- 1 | export * from './toJsonSchema/index.ts'; 2 | export * from './toJsonSchemaDefs/index.ts'; 3 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/functions/toJsonSchema/index.ts: -------------------------------------------------------------------------------- 1 | export * from './toJsonSchema.ts'; 2 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/functions/toJsonSchemaDefs/index.ts: -------------------------------------------------------------------------------- 1 | export * from './toJsonSchemaDefs.ts'; 2 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/index.ts: -------------------------------------------------------------------------------- 1 | export type { JSONSchema7 } from 'json-schema'; 2 | export type * from './type.ts'; 3 | 4 | export * from './functions/index.ts'; 5 | export * from './storages/index.ts'; 6 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/storages/globalDefs/index.ts: -------------------------------------------------------------------------------- 1 | export * from './globalDefs.ts'; 2 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/storages/index.ts: -------------------------------------------------------------------------------- 1 | export * from './globalDefs/index.ts'; 2 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/utils/addError.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Adds an error message to the errors array. 3 | * 4 | * @param errors The array of error messages. 5 | * @param message The error message to add. 6 | * 7 | * @returns The new errors. 8 | */ 9 | export function addError( 10 | errors: [string, ...string[]] | undefined, 11 | message: string 12 | ): [string, ...string[]] { 13 | if (errors) { 14 | errors.push(message); 15 | return errors; 16 | } 17 | return [message]; 18 | } 19 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './addError.ts'; 2 | export * from './handleError.ts'; 3 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/vitest/createContext.ts: -------------------------------------------------------------------------------- 1 | import type { ConversionContext } from '../type.ts'; 2 | 3 | /** 4 | * Creates a new conversion context. 5 | * 6 | * @param initial The initial context to use. 7 | * 8 | * @returns A new conversion context. 9 | */ 10 | export function createContext( 11 | initial?: Omit 12 | ): ConversionContext { 13 | return { 14 | definitions: initial?.definitions ?? {}, 15 | referenceMap: initial?.referenceMap ?? new Map(), 16 | getterMap: new Map(), 17 | }; 18 | } 19 | -------------------------------------------------------------------------------- /packages/to-json-schema/src/vitest/index.ts: -------------------------------------------------------------------------------- 1 | export * from './createContext.ts'; 2 | -------------------------------------------------------------------------------- /packages/to-json-schema/tsdown.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'tsdown'; 2 | 3 | export default defineConfig([ 4 | { 5 | entry: ['./src/index.ts'], 6 | clean: true, 7 | format: ['esm', 'cjs'], 8 | minify: false, 9 | dts: true, 10 | outDir: './dist', 11 | }, 12 | { 13 | entry: ['./src/index.ts'], 14 | clean: true, 15 | format: ['esm', 'cjs'], 16 | minify: true, 17 | dts: false, 18 | outDir: './dist', 19 | outExtensions: ({ format }) => ({ 20 | js: format === 'cjs' ? '.min.cjs' : '.min.js', 21 | }), 22 | }, 23 | ]); 24 | -------------------------------------------------------------------------------- /packages/to-json-schema/vitest.config.ts: -------------------------------------------------------------------------------- 1 | import tsconfigPaths from 'vite-tsconfig-paths'; 2 | import { defineConfig } from 'vitest/config'; 3 | 4 | export default defineConfig({ 5 | plugins: [tsconfigPaths()], 6 | test: { 7 | isolate: false, 8 | coverage: { 9 | include: ['src'], 10 | exclude: ['**/index.ts', '**/types.ts', '**/*.test.ts'], 11 | }, 12 | }, 13 | }); 14 | -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - 'codemod/*' 3 | - 'library' 4 | - 'packages/*' 5 | - 'website' 6 | -------------------------------------------------------------------------------- /valibot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/valibot.jpg -------------------------------------------------------------------------------- /website/.env: -------------------------------------------------------------------------------- 1 | PUBLIC_WEBSITE_URL="https://valibot.dev" 2 | PUBLIC_ALGOLIA_APP_ID="B90T8F2PFG" 3 | PUBLIC_ALGOLIA_INDEX_NAME="valibot" 4 | PUBLIC_ALGOLIA_PUBLIC_API_KEY="ccdb9a38bd679cb82c879625d31d15ae" -------------------------------------------------------------------------------- /website/.eslintignore: -------------------------------------------------------------------------------- 1 | **/*.log 2 | **/.DS_Store 3 | *. 4 | .vscode/settings.json 5 | .history 6 | .yarn 7 | bazel-* 8 | bazel-bin 9 | bazel-out 10 | bazel-qwik 11 | bazel-testlogs 12 | dist 13 | dist-dev 14 | lib 15 | lib-types 16 | etc 17 | external 18 | node_modules 19 | temp 20 | tsc-out 21 | tsdoc-metadata.json 22 | target 23 | output 24 | rollup.config.js 25 | build 26 | .cache 27 | .vscode 28 | .rollup.cache 29 | dist 30 | tsconfig.tsbuildinfo 31 | vite.config.ts 32 | *.cjs 33 | *.spec.tsx 34 | *.spec.ts 35 | .netlify 36 | pnpm-lock.yaml 37 | package-lock.json 38 | yarn.lock 39 | server 40 | -------------------------------------------------------------------------------- /website/.gitignore: -------------------------------------------------------------------------------- 1 | public/sitemap.xml 2 | -------------------------------------------------------------------------------- /website/.node-version: -------------------------------------------------------------------------------- 1 | 20 2 | -------------------------------------------------------------------------------- /website/.prettierignore: -------------------------------------------------------------------------------- 1 | **/*.log 2 | **/.DS_Store 3 | *. 4 | .vscode/settings.json 5 | dist 6 | node_modules 7 | tmp 8 | server 9 | .cache 10 | .vscode 11 | *.spec.tsx 12 | *.spec.ts 13 | .netlify 14 | .vercel 15 | -------------------------------------------------------------------------------- /website/README.md: -------------------------------------------------------------------------------- 1 | # Website 2 | 3 | Our [website](https://valibot.dev/) contains guides, an API reference and a playground to quickly learn and understand Valibot. 4 | 5 | ## Getting started 6 | 7 | Step 1: Clone repository 8 | 9 | ```bash 10 | git clone git@github.com:fabian-hiller/valibot.git 11 | ``` 12 | 13 | Step 2: Install dependencies 14 | 15 | ```bash 16 | pnpm install 17 | ``` 18 | 19 | Step 3: Build library 20 | 21 | ```bash 22 | cd ./library && pnpm build 23 | ``` 24 | 25 | Step 4: Start website 26 | 27 | ```bash 28 | cd ../website && pnpm start 29 | ``` 30 | -------------------------------------------------------------------------------- /website/postcss.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /website/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/favicon.ico -------------------------------------------------------------------------------- /website/public/fonts/lexend-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/fonts/lexend-400.ttf -------------------------------------------------------------------------------- /website/public/fonts/lexend-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/fonts/lexend-400.woff2 -------------------------------------------------------------------------------- /website/public/fonts/lexend-500.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/fonts/lexend-500.ttf -------------------------------------------------------------------------------- /website/public/fonts/lexend-500.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/fonts/lexend-500.woff2 -------------------------------------------------------------------------------- /website/public/fonts/lexend-exa-500.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/fonts/lexend-exa-500.ttf -------------------------------------------------------------------------------- /website/public/fonts/lexend-exa-500.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/fonts/lexend-exa-500.woff2 -------------------------------------------------------------------------------- /website/public/icon-16px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/icon-16px.png -------------------------------------------------------------------------------- /website/public/icon-180px.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/icon-180px.jpg -------------------------------------------------------------------------------- /website/public/icon-192px.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/icon-192px.jpeg -------------------------------------------------------------------------------- /website/public/icon-192px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/icon-192px.png -------------------------------------------------------------------------------- /website/public/icon-32px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/icon-32px.png -------------------------------------------------------------------------------- /website/public/icon-512px.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/icon-512px.jpeg -------------------------------------------------------------------------------- /website/public/icon-512px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/icon-512px.png -------------------------------------------------------------------------------- /website/public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: 3 | 4 | Sitemap: https://valibot.dev/sitemap.xml -------------------------------------------------------------------------------- /website/public/thesis.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/public/thesis.pdf -------------------------------------------------------------------------------- /website/scripts/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './findNestedFiles'; 2 | -------------------------------------------------------------------------------- /website/src/components/ButtonGroup.tsx: -------------------------------------------------------------------------------- 1 | import { component$, Slot } from '@builder.io/qwik'; 2 | import clsx from 'clsx'; 3 | 4 | type ButtonGroupProps = { 5 | class?: string; 6 | }; 7 | 8 | /** 9 | * Button group displays multiple related actions side-by-side and helps with 10 | * arrangement and spacing. 11 | */ 12 | export const ButtonGroup = component$((props) => ( 13 |
14 | 15 |
16 | )); 17 | -------------------------------------------------------------------------------- /website/src/components/DiscordIconLink.tsx: -------------------------------------------------------------------------------- 1 | import { component$ } from '@builder.io/qwik'; 2 | import { DiscordIcon } from '~/icons'; 3 | import { SystemIcon } from './SystemIcon'; 4 | 5 | /** 6 | * Discord icon pointing to our community server. 7 | */ 8 | export const DiscordIconLink = component$(() => ( 9 | 15 | 16 | 17 | )); 18 | -------------------------------------------------------------------------------- /website/src/components/GitHubIconLink.tsx: -------------------------------------------------------------------------------- 1 | import { component$ } from '@builder.io/qwik'; 2 | import { GitHubIcon } from '~/icons'; 3 | import { SystemIcon } from './SystemIcon'; 4 | 5 | /** 6 | * GitHub icon pointing to our repository. 7 | */ 8 | export const GitHubIconLink = component$(() => ( 9 | 15 | 16 | 17 | )); 18 | -------------------------------------------------------------------------------- /website/src/components/Spinner.tsx: -------------------------------------------------------------------------------- 1 | import { component$ } from '@builder.io/qwik'; 2 | 3 | type SpinnerProps = { 4 | label?: string; 5 | }; 6 | 7 | /** 8 | * Spinner provide a visual cue that an action is being processed. 9 | */ 10 | export const Spinner = component$((props) => ( 11 | 15 | )); 16 | -------------------------------------------------------------------------------- /website/src/hooks/index.ts: -------------------------------------------------------------------------------- 1 | export * from './useFocusTrap'; 2 | export * from './useResetSignal'; 3 | export * from './useStorageSignal'; 4 | -------------------------------------------------------------------------------- /website/src/icons/AngleRightIcon.tsx: -------------------------------------------------------------------------------- 1 | import { component$, type HTMLAttributes } from '@builder.io/qwik'; 2 | 3 | export const AngleRightIcon = component$>( 4 | (props) => ( 5 | 16 | 17 | 18 | ) 19 | ); 20 | -------------------------------------------------------------------------------- /website/src/icons/AngleUpIcon.tsx: -------------------------------------------------------------------------------- 1 | import { component$, type HTMLAttributes } from '@builder.io/qwik'; 2 | 3 | export const AngleUpIcon = component$>( 4 | (props) => ( 5 | 16 | 17 | 18 | ) 19 | ); 20 | -------------------------------------------------------------------------------- /website/src/icons/CheckIcon.tsx: -------------------------------------------------------------------------------- 1 | import { component$, type HTMLAttributes } from '@builder.io/qwik'; 2 | 3 | export const CheckIcon = component$>((props) => ( 4 | 15 | 16 | 17 | )); 18 | -------------------------------------------------------------------------------- /website/src/icons/CloseIcon.tsx: -------------------------------------------------------------------------------- 1 | import { component$, type HTMLAttributes } from '@builder.io/qwik'; 2 | 3 | export const CloseIcon = component$>((props) => ( 4 | 14 | 15 | 16 | )); 17 | -------------------------------------------------------------------------------- /website/src/icons/HashtagIcon.tsx: -------------------------------------------------------------------------------- 1 | import { component$, type HTMLAttributes } from '@builder.io/qwik'; 2 | 3 | export const HashtagIcon = component$>( 4 | (props) => ( 5 | 15 | 16 | 17 | ) 18 | ); 19 | -------------------------------------------------------------------------------- /website/src/icons/MenuIcon.tsx: -------------------------------------------------------------------------------- 1 | import { component$, type HTMLAttributes } from '@builder.io/qwik'; 2 | 3 | export const MenuIcon = component$>((props) => ( 4 | 14 | 15 | 16 | )); 17 | -------------------------------------------------------------------------------- /website/src/icons/PlusIcon.tsx: -------------------------------------------------------------------------------- 1 | import { component$, type HTMLAttributes } from '@builder.io/qwik'; 2 | 3 | export const PlusIcon = component$>((props) => ( 4 | 14 | 15 | 16 | )); 17 | -------------------------------------------------------------------------------- /website/src/icons/SearchIcon.tsx: -------------------------------------------------------------------------------- 1 | import { component$, type HTMLAttributes } from '@builder.io/qwik'; 2 | 3 | export const SearchIcon = component$>((props) => ( 4 | 14 | 15 | 16 | )); 17 | -------------------------------------------------------------------------------- /website/src/images/index.ts: -------------------------------------------------------------------------------- 1 | export { default as stainlessIconUrl } from './stainless-icon.webp'; 2 | export { default as valibotTalkDarkUrl } from './valibot-talk-dark.webp'; 3 | export { default as valibotTalkLigthUrl } from './valibot-talk-light.webp'; 4 | -------------------------------------------------------------------------------- /website/src/images/stainless-icon.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/images/stainless-icon.webp -------------------------------------------------------------------------------- /website/src/images/valibot-talk-dark.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/images/valibot-talk-dark.webp -------------------------------------------------------------------------------- /website/src/images/valibot-talk-light.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/images/valibot-talk-light.webp -------------------------------------------------------------------------------- /website/src/logos/index.ts: -------------------------------------------------------------------------------- 1 | export * from './AlgoliaLogo'; 2 | export * from './BoltLogo'; 3 | export * from './BuilderLogo'; 4 | export * from './DailyDevLogo'; 5 | export * from './DigitalOceanLogo'; 6 | export * from './HdmLogo'; 7 | export * from './MotionLogo'; 8 | export * from './NetlifyLogo'; 9 | export * from './PaceLogo'; 10 | export * from './StainlessLogo'; 11 | export * from './VercelLogo'; 12 | -------------------------------------------------------------------------------- /website/src/routes/(legal)/layout.tsx: -------------------------------------------------------------------------------- 1 | import { component$, Slot } from '@builder.io/qwik'; 2 | 3 | export default component$(() => ( 4 |
5 | 6 |
7 | )); 8 | -------------------------------------------------------------------------------- /website/src/routes/api/(actions)/rawCheck/AddIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: AddIssue (rawCheck) 3 | description: Add issue type. 4 | contributors: 5 | - EltonLobo07 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # AddIssue 12 | 13 | Add issue type. 14 | 15 | ## Generics 16 | 17 | - `TInput` 18 | 19 | ## Definition 20 | 21 | - `AddIssue` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(actions)/rawTransform/AddIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: AddIssue (rawTransform) 3 | description: Add issue type. 4 | contributors: 5 | - EltonLobo07 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # AddIssue 12 | 13 | Add issue type. 14 | 15 | ## Generics 16 | 17 | - `TInput` 18 | 19 | ## Definition 20 | 21 | - `AddIssue` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(actions)/readonly/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | TInput: { 5 | modifier: 'extends', 6 | type: 'any', 7 | }, 8 | Action: { 9 | type: { 10 | type: 'custom', 11 | name: 'ReadonlyAction', 12 | href: '../ReadonlyAction/', 13 | generics: [ 14 | { 15 | type: 'custom', 16 | name: 'TInput', 17 | }, 18 | ], 19 | }, 20 | }, 21 | }; 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(actions)/toLowerCase/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Action: { 5 | type: { 6 | type: 'custom', 7 | name: 'ToLowerCaseAction', 8 | href: '../ToLowerCaseAction/', 9 | }, 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /website/src/routes/api/(actions)/toUpperCase/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Action: { 5 | type: { 6 | type: 'custom', 7 | name: 'ToUpperCaseAction', 8 | href: '../ToUpperCaseAction/', 9 | }, 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /website/src/routes/api/(actions)/trim/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Action: { 5 | type: { 6 | type: 'custom', 7 | name: 'TrimAction', 8 | href: '../TrimAction/', 9 | }, 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /website/src/routes/api/(actions)/trimEnd/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Action: { 5 | type: { 6 | type: 'custom', 7 | name: 'TrimEndAction', 8 | href: '../TrimEndAction/', 9 | }, 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /website/src/routes/api/(actions)/trimStart/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Action: { 5 | type: { 6 | type: 'custom', 7 | name: 'TrimStartAction', 8 | href: '../TrimStartAction/', 9 | }, 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /website/src/routes/api/(schemas)/any/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Schema: { 5 | type: { 6 | type: 'custom', 7 | name: 'AnySchema', 8 | href: '../AnySchema/', 9 | }, 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /website/src/routes/api/(schemas)/unknown/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Schema: { 5 | type: { 6 | type: 'custom', 7 | name: 'UnknownSchema', 8 | href: '../UnknownSchema/', 9 | }, 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /website/src/routes/api/(storages)/deleteGlobalConfig/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: deleteGlobalConfig 3 | description: Deletes the global configuration. 4 | source: /storages/globalConfig/globalConfig.ts 5 | contributors: 6 | - fabian-hiller 7 | --- 8 | 9 | # deleteGlobalConfig 10 | 11 | Deletes the global configuration. 12 | 13 | ```ts 14 | v.deleteGlobalConfig(); 15 | ``` 16 | -------------------------------------------------------------------------------- /website/src/routes/api/(storages)/deleteGlobalMessage/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: deleteGlobalMessage 3 | description: Deletes a global error message. 4 | source: /storages/globalMessage/globalMessage.ts 5 | contributors: 6 | - fabian-hiller 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # deleteGlobalMessage 13 | 14 | Deletes a global error message. 15 | 16 | ```ts 17 | v.deleteGlobalMessage(lang); 18 | ``` 19 | 20 | ## Parameters 21 | 22 | - `lang` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(storages)/deleteGlobalMessage/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | lang: { 5 | type: { 6 | type: 'union', 7 | options: ['string', 'undefined'], 8 | }, 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /website/src/routes/api/(storages)/deleteSchemaMessage/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: deleteSchemaMessage 3 | description: Deletes a schema error message. 4 | source: /storages/schemaMessage/schemaMessage.ts 5 | contributors: 6 | - fabian-hiller 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # deleteSchemaMessage 13 | 14 | Deletes a schema error message. 15 | 16 | ```ts 17 | v.deleteSchemaMessage(lang); 18 | ``` 19 | 20 | ## Parameters 21 | 22 | - `lang` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(storages)/deleteSchemaMessage/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | lang: { 5 | type: { 6 | type: 'union', 7 | options: ['string', 'undefined'], 8 | }, 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /website/src/routes/api/(storages)/deleteSpecificMessage/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | reference: { 5 | type: { 6 | type: 'custom', 7 | name: 'Reference', 8 | href: '../Reference/', 9 | }, 10 | }, 11 | lang: { 12 | type: { 13 | type: 'union', 14 | options: ['string', 'undefined'], 15 | }, 16 | }, 17 | }; 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(storages)/setGlobalConfig/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | config: { 5 | type: { 6 | type: 'custom', 7 | name: 'GlobalConfig', 8 | href: '../GlobalConfig/', 9 | }, 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/AnySchema/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: AnySchema 3 | description: Any schema interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # AnySchema 12 | 13 | Any schema interface. 14 | 15 | ## Definition 16 | 17 | - `AnySchema` 18 | - `type` 19 | - `reference` 20 | - `expects` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ArrayInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ArrayInput 3 | description: Array input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ArrayInput 12 | 13 | Array input type. 14 | 15 | ## Definition 16 | 17 | - `ArrayInput` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ArrayInput/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | ArrayInput: { 5 | type: { 6 | type: 'custom', 7 | name: 'MaybeReadonly', 8 | href: '../MaybeReadonly/', 9 | generics: [ 10 | { 11 | type: 'array', 12 | item: 'unknown', 13 | }, 14 | ], 15 | }, 16 | }, 17 | }; 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ArrayIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ArrayIssue 3 | description: Array issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ArrayIssue 12 | 13 | Array issue interface. 14 | 15 | ## Definition 16 | 17 | - `ArrayIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ArrayRequirement/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ArrayRequirement 3 | description: Array requirement type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ArrayRequirement 12 | 13 | Array requirement type. 14 | 15 | ## Generics 16 | 17 | - `TInput` 18 | 19 | ## Definition 20 | 21 | - `ArrayRequirement` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ArrayRequirementAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ArrayRequirementAsync 3 | description: Array requirement async type. 4 | contributors: 5 | - EltonLobo07 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ArrayRequirementAsync 12 | 13 | Array requirement async type. 14 | 15 | ## Generics 16 | 17 | - `TInput` 18 | 19 | ## Definition 20 | 21 | - `ArrayRequirementAsync` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/BigintIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: BigintIssue 3 | description: Bigint issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # BigintIssue 12 | 13 | Bigint issue interface. 14 | 15 | ## Definition 16 | 17 | - `BigintIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/BlobIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: BlobIssue 3 | description: Blob issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # BlobIssue 12 | 13 | Blob issue interface. 14 | 15 | ## Definition 16 | 17 | - `BlobIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/BooleanIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: BooleanIssue 3 | description: Boolean issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # BooleanIssue 12 | 13 | Boolean issue interface. 14 | 15 | ## Definition 16 | 17 | - `BooleanIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Brand/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Brand 3 | description: Brand interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # Brand 12 | 13 | Brand interface. 14 | 15 | ## Generics 16 | 17 | - `TName` 18 | 19 | ## Definition 20 | 21 | - `Brand` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/BrandName/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: BrandName 3 | description: Brand name type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # BrandName 12 | 13 | Brand name type. 14 | 15 | ## Definition 16 | 17 | - `BrandName` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/BrandName/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | BrandName: { 5 | type: { 6 | type: 'union', 7 | options: ['string', 'number', 'symbol'], 8 | }, 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Class/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Class 3 | description: Class type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # Class 12 | 13 | Class type. 14 | 15 | ## Definition 16 | 17 | - `Class` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Class/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Class: { 5 | modifier: 'new', 6 | type: { 7 | type: 'function', 8 | params: [ 9 | { 10 | spread: true, 11 | name: 'args', 12 | type: { 13 | type: 'array', 14 | item: 'any', 15 | }, 16 | }, 17 | ], 18 | return: 'any', 19 | }, 20 | }, 21 | }; 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ContentInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ContentInput 3 | description: Content input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ContentInput 12 | 13 | Content input type. 14 | 15 | ## Definition 16 | 17 | - `ContentInput` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ContentRequirement/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ContentRequirement 3 | description: Content requirement type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ContentRequirement 12 | 13 | Content requirement type. 14 | 15 | ## Generics 16 | 17 | - `TInput` 18 | 19 | ## Definition 20 | 21 | - `ContentRequirement` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/CustomIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: CustomIssue 3 | description: Custom issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # CustomIssue 12 | 13 | Custom issue interface. 14 | 15 | ## Definition 16 | 17 | - `CustomIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/DateIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: DateIssue 3 | description: Date issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # DateIssue 12 | 13 | Date issue interface. 14 | 15 | ## Definition 16 | 17 | - `DateIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/DeepPickN/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: DeepPickN 3 | description: Deeply picks N specific keys. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # DeepPickN 9 | 10 | Deeply picks N specific keys. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/types/utils.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Default/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Default 3 | description: Default type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # Default 12 | 13 | Default type. 14 | 15 | ## Generics 16 | 17 | - `TWrapped` 18 | - `TInput` 19 | 20 | ## Definition 21 | 22 | - `Default` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/DefaultAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: DefaultAsync 3 | description: Default async type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # DefaultAsync 12 | 13 | Default async type. 14 | 15 | ## Generics 16 | 17 | - `TWrapped` 18 | - `TInput` 19 | 20 | ## Definition 21 | 22 | - `DefaultAsync` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/DefaultValue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: DefaultValue 3 | description: Default value type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # DefaultValue 12 | 13 | Default value type. 14 | 15 | ## Generics 16 | 17 | - `TDefault` 18 | 19 | ## Definition 20 | 21 | - `DefaultValue` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/EntriesInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: EntriesInput 3 | description: Entries input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # EntriesInput 12 | 13 | Entries input type. 14 | 15 | ## Definition 16 | 17 | - `EntriesInput` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/EntriesInput/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | EntriesInput: { 5 | type: { 6 | type: 'custom', 7 | name: 'Record', 8 | generics: [{ type: 'union', options: ['string', 'number'] }, 'unknown'], 9 | }, 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Enum/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Enum 3 | description: Enum interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # Enum 12 | 13 | Enum interface. 14 | 15 | ## Definition 16 | 17 | - `Enum` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Enum/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Enum: { 5 | type: { 6 | type: 'object', 7 | entries: [ 8 | { 9 | key: { name: 'key', type: 'string' }, 10 | value: { 11 | type: 'union', 12 | options: ['string', 'number'], 13 | }, 14 | }, 15 | ], 16 | }, 17 | }, 18 | }; 19 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/EnumIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: EnumIssue 3 | description: Enum issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # EnumIssue 12 | 13 | Enum issue interface. 14 | 15 | ## Definition 16 | 17 | - `EnumIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ErrorMessage/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ErrorMessage 3 | description: Error message type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ErrorMessage 12 | 13 | Error message type. 14 | 15 | ## Generics 16 | 17 | - `TIssue` 18 | 19 | ## Definition 20 | 21 | - `ErrorMessage` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Fallback/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Fallback 3 | description: Fallback type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # Fallback 12 | 13 | Fallback type. 14 | 15 | ## Generics 16 | 17 | - `TSchema` 18 | 19 | ## Definition 20 | 21 | - `Fallback` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/FallbackAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: FallbackAsync 3 | description: Fallback async type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # FallbackAsync 12 | 13 | Fallback async type. 14 | 15 | ## Generics 16 | 17 | - `TSchema` 18 | 19 | ## Definition 20 | 21 | - `FallbackAsync` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/FileIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: FileIssue 3 | description: File issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # FileIssue 12 | 13 | File issue interface. 14 | 15 | ## Definition 16 | 17 | - `FileIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/FirstTupleItem/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: FirstTupleItem 3 | description: Extracts first tuple item. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # FirstTupleItem 12 | 13 | Extracts first tuple item. 14 | 15 | ## Generics 16 | 17 | - `TTuple` 18 | 19 | ## Definition 20 | 21 | - `FirstTupleItem` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/FlatErrors/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: FlatErrors 3 | description: Flat errors type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # FlatErrors 9 | 10 | Flat errors type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/flatten/flatten.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Flavor/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Flavor 3 | description: Flavor interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # Flavor 12 | 13 | Flavor interface. 14 | 15 | ## Generics 16 | 17 | - `TName` 18 | 19 | ## Definition 20 | 21 | - `Flavor` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/FlavorName/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: FlavorName 3 | description: Flavor name type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # FlavorName 12 | 13 | Flavor name type. 14 | 15 | ## Definition 16 | 17 | - `FlavorName` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/FlavorName/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | FlavorName: { 5 | type: { 6 | type: 'union', 7 | options: ['string', 'number', 'symbol'], 8 | }, 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/FunctionIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: FunctionIssue 3 | description: Function issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # FunctionIssue 12 | 13 | Function issue interface. 14 | 15 | ## Definition 16 | 17 | - `FunctionIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/GenericIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: GenericIssue 3 | description: Generic issue type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # GenericIssue 12 | 13 | Generic issue type. 14 | 15 | ## Generics 16 | 17 | - `TInput` 18 | 19 | ## Definition 20 | 21 | - `GenericIssue` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/GenericIssue/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | TInput: { 5 | modifier: 'extends', 6 | type: 'any', 7 | default: 'unknown', 8 | }, 9 | BaseIssue: { 10 | modifier: 'extends', 11 | type: { 12 | type: 'custom', 13 | name: 'BaseIssue', 14 | href: '../BaseIssue/', 15 | generics: [ 16 | { 17 | type: 'custom', 18 | name: 'TInput', 19 | }, 20 | ], 21 | }, 22 | }, 23 | }; 24 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/GenericMetadata/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: GenericMetadata 3 | description: Generic metadata type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # GenericMetadata 12 | 13 | Generic metadata type. 14 | 15 | ## Generics 16 | 17 | - `TInput` 18 | 19 | ## Definition 20 | 21 | - `GenericMetadata` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/GenericMetadata/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | TInput: { 5 | modifier: 'extends', 6 | type: 'any', 7 | default: 'any', 8 | }, 9 | BaseMetadata: { 10 | modifier: 'extends', 11 | type: { 12 | type: 'custom', 13 | name: 'BaseMetadata', 14 | href: '../BaseMetadata/', 15 | generics: [ 16 | { 17 | type: 'custom', 18 | name: 'TInput', 19 | }, 20 | ], 21 | }, 22 | }, 23 | }; 24 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/GlobalConfig/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: GlobalConfig 3 | description: The global config type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # GlobalConfig 12 | 13 | The global config type. 14 | 15 | ## Definition 16 | 17 | - `GlobalConfig` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/GlobalConfig/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | GlobalConfig: { 5 | type: { 6 | type: 'custom', 7 | name: 'Omit', 8 | generics: [ 9 | { 10 | type: 'custom', 11 | name: 'Config', 12 | href: '../Config/', 13 | generics: ['never'], 14 | }, 15 | { 16 | type: 'string', 17 | value: 'message', 18 | }, 19 | ], 20 | }, 21 | }, 22 | }; 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/HashType/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: HashType 3 | description: Hash type type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # HashType 12 | 13 | Hash type type. 14 | 15 | ## Definition 16 | 17 | - `HashType` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferDefault/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferDefault 3 | description: Infer default type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferDefault 9 | 10 | Infer default type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/getDefault/getDefault.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferDefaults/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferDefaults 3 | description: Infer defaults type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferDefaults 9 | 10 | Infer defaults type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/getDefaults/types.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferFallback/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferFallback 3 | description: Infer fallback type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferFallback 9 | 10 | Infer fallback type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/getFallback/getFallback.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferFallbacks/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferFallbacks 3 | description: Infer fallbacks type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferFallbacks 9 | 10 | Infer fallbacks type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/getFallbacks/types.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferIssue 3 | description: Infer issue type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # InferIssue 12 | 13 | Infer issue type. 14 | 15 | ## Generics 16 | 17 | - `TItem` 18 | 19 | ## Definition 20 | 21 | - `InferIssue` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferMapInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferMapInput 3 | description: Infer map input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # InferMapInput 12 | 13 | Infer map input type. 14 | 15 | ## Generics 16 | 17 | - `TKey` 18 | - `TValue` 19 | 20 | ## Definition 21 | 22 | - `InferMapInput` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferMapOutput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferMapOutput 3 | description: Infer map output type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # InferMapOutput 12 | 13 | Infer map output type. 14 | 15 | ## Generics 16 | 17 | - `TKey` 18 | - `TValue` 19 | 20 | ## Definition 21 | 22 | - `InferMapOutput` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferMetadata/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferMetadata 3 | description: Infer metadata type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferMetadata 9 | 10 | Infer fallbacks type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/getMetadata/getMetadata.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferNonNullableIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferNonNullableIssue 3 | description: Infer non nullable issue type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferNonNullableIssue 9 | 10 | Infer non nullable issue type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/schemas/nonNullable/types.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferNonNullishIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferNonNullishIssue 3 | description: Infer non nullish issue type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferNonNullishIssue 9 | 10 | Infer non nullish issue type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/schemas/nonNullish/types.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferNonOptionalIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferNonOptionalIssue 3 | description: Infer non optional issue type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferNonOptionalIssue 9 | 10 | Infer non optional issue type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/schemas/nonOptional/types.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferNullishOutput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferNullishOutput 3 | description: Infer nullish output type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # InferNullishOutput 12 | 13 | Infer nullish output type. 14 | 15 | ## Generics 16 | 17 | - `TWrapped` 18 | - `TDefault` 19 | 20 | ## Definition 21 | 22 | - `InferNullishOutput` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferObjectInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferObjectInput 3 | description: Infer object input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferObjectInput 9 | 10 | Infer object input type. 11 | 12 | ```ts 13 | // Create object entries 14 | const entries = { 15 | key: v.pipe( 16 | v.string(), 17 | v.transform((input) => input.length) 18 | ), 19 | }; 20 | 21 | // Infer entries input type 22 | type EntriesInput = v.InferObjectInput; // { key: string } 23 | ``` 24 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferObjectIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferObjectIssue 3 | description: Infer object issue type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # InferObjectIssue 12 | 13 | Infer object issue type. 14 | 15 | ## Generics 16 | 17 | - `TEntries` 18 | 19 | ## Definition 20 | 21 | - `InferObjectIssue` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferObjectOutput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferObjectOutput 3 | description: Infer object output type. 4 | contributors: 5 | - fabian-hiller 6 | - kazizi55 7 | --- 8 | 9 | # InferObjectOutput 10 | 11 | Infer object output type. 12 | 13 | ```ts 14 | // Create object entries 15 | const entries = { 16 | key: v.pipe( 17 | v.string(), 18 | v.transform((input) => input.length) 19 | ), 20 | }; 21 | 22 | // Infer entries output type 23 | type EntriesOutput = v.InferObjectOutput; // { key: number } 24 | ``` 25 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferRecordInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferRecordInput 3 | description: Infer record input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferRecordInput 9 | 10 | Infer record input type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/schemas/record/types.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferRecordOutput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferRecordOutput 3 | description: Infer record output type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferRecordOutput 9 | 10 | Infer record output type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/schemas/record/types.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferSetInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferSetInput 3 | description: Infer set input type. 4 | contributors: 5 | - fabian-hiller 6 | - EltonLobo07 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # InferSetInput 13 | 14 | Infer set input type. 15 | 16 | ## Generics 17 | 18 | - `TValue` 19 | 20 | ## Definition 21 | 22 | - `InferSetInput` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferSetOutput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferSetOutput 3 | description: Infer set output type. 4 | contributors: 5 | - fabian-hiller 6 | - EltonLobo07 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # InferSetOutput 13 | 14 | Infer set output type. 15 | 16 | ## Generics 17 | 18 | - `TValue` 19 | 20 | ## Definition 21 | 22 | - `InferSetOutput` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferTupleInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferTupleInput 3 | description: Infer tuple output type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferTupleInput 9 | 10 | Infer tuple output type. 11 | 12 | ```ts 13 | // Create tuple items 14 | const items = [ 15 | v.pipe( 16 | v.string(), 17 | v.transform((input) => input.length) 18 | ), 19 | ]; 20 | 21 | // Infer items input type 22 | type ItemsInput = v.InferTupleInput; // [string] 23 | ``` 24 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferTupleIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferTupleIssue 3 | description: Infer tuple issue type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # InferTupleIssue 12 | 13 | Infer tuple issue type. 14 | 15 | ## Generics 16 | 17 | - `TItems` 18 | 19 | ## Definition 20 | 21 | - `InferTupleIssue` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferTupleOutput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferTupleOutput 3 | description: Infer tuple issue type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # InferTupleOutput 9 | 10 | Infer tuple issue type. 11 | 12 | ```ts 13 | const items = [ 14 | v.pipe( 15 | v.string(), 16 | v.transform((input) => input.length) 17 | ), 18 | ]; 19 | 20 | // Infer items output type 21 | type ItemsOutput = v.InferTupleOutput; // [number] 22 | ``` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InferVariantIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InferVariantIssue 3 | description: Infer variant issue type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # InferVariantIssue 12 | 13 | Infer variant issue type. 14 | 15 | ## Generics 16 | 17 | - `TOptions` 18 | 19 | ## Definition 20 | 21 | - `InferVariantIssue` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/InstanceIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: InstanceIssue 3 | description: Instance issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # InstanceIssue 12 | 13 | Instance issue interface. 14 | 15 | ## Definition 16 | 17 | - `InstanceIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/IntersectIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: IntersectIssue 3 | description: Intersect issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # IntersectIssue 12 | 13 | Intersect issue interface. 14 | 15 | ## Definition 16 | 17 | - `IntersectIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/IntersectOptions/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: IntersectOptions 3 | description: Intersect options type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # IntersectOptions 12 | 13 | Intersect options type. 14 | 15 | ## Definition 16 | 17 | - `IntersectOptions` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/IntersectOptionsAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: IntersectOptionsAsync 3 | description: Intersect options async type. 4 | contributors: 5 | - EltonLobo07 6 | - fabian-hiller 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # IntersectOptionsAsync 13 | 14 | Intersect options async type. 15 | 16 | ## Definition 17 | 18 | - `IntersectOptionsAsync` 19 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/IssueDotPath/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: IssueDotPath 3 | description: Issue dot path type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # IssueDotPath 9 | 10 | Issue dot path type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/types/issue.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/IssuePathItem/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: IssuePathItem 3 | description: Path item type. 4 | contributors: 5 | - fabian-hiller 6 | - kazizi55 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # IssuePathItem 13 | 14 | Path item type. 15 | 16 | ## Definition 17 | 18 | - `IssuePathItem` 19 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/LastTupleItem/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: LastTupleItem 3 | description: Extracts last tuple item. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # LastTupleItem 12 | 13 | Extracts last tuple item. 14 | 15 | ## Generics 16 | 17 | - `TTuple` 18 | 19 | ## Definition 20 | 21 | - `LastTupleItem` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/LengthInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: LengthInput 3 | description: Length input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # LengthInput 12 | 13 | Length input type. 14 | 15 | ## Definition 16 | 17 | - `LengthInput` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/LengthInput/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | LengthInput: { 5 | type: { 6 | type: 'union', 7 | options: [ 8 | 'string', 9 | { 10 | type: 'custom', 11 | name: 'ArrayLike', 12 | generics: ['unknown'], 13 | }, 14 | ], 15 | }, 16 | }, 17 | }; 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Literal/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Literal 3 | description: Literal type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # Literal 12 | 13 | Literal type. 14 | 15 | ## Definition 16 | 17 | - `Literal` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Literal/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | Literal: { 5 | type: { 6 | type: 'union', 7 | options: ['bigint', 'boolean', 'number', 'string', 'symbol'], 8 | }, 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/LiteralIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: LiteralIssue 3 | description: Literal issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # LiteralIssue 12 | 13 | Literal issue interface. 14 | 15 | ## Definition 16 | 17 | - `LiteralIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/LooseTupleIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: LooseTupleIssue 3 | description: Loose tuple issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # LooseTupleIssue 12 | 13 | Loose tuple issue interface. 14 | 15 | ## Definition 16 | 17 | - `LooseTupleIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/MapIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: MapIssue 3 | description: Map issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # MapIssue 12 | 13 | Map issue interface. 14 | 15 | ## Definition 16 | 17 | - `MapIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/MaybePromise/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: MaybePromise 3 | description: Maybe promise type. 4 | contributors: 5 | - EltonLobo07 6 | - fabian-hiller 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # MaybePromise 13 | 14 | Maybe promise type. 15 | 16 | ## Generics 17 | 18 | - `TValue` 19 | 20 | ## Definition 21 | 22 | - `MaybePromise` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/MaybeReadonly/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: MaybeReadonly 3 | description: Maybe readonly type. 4 | contributors: 5 | - fabian-hiller 6 | - sqmasep 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # MaybeReadonly 13 | 14 | Maybe readonly type. 15 | 16 | ## Generics 17 | 18 | - `TValue` 19 | 20 | ## Definition 21 | 22 | - `MaybeReadonly` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/NanIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: NanIssue 3 | description: NaN issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # NanIssue 12 | 13 | NaN issue interface. 14 | 15 | ## Definition 16 | 17 | - `NanIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/NeverIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: NeverIssue 3 | description: Never issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # NeverIssue 12 | 13 | Never issue interface. 14 | 15 | ## Definition 16 | 17 | - `NeverIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/NonNullable/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: NonNullable 3 | description: Extracts `null` from a type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # NonNullable 12 | 13 | Extracts `null` from a type. 14 | 15 | ## Generics 16 | 17 | - `TValue` 18 | 19 | ## Definition 20 | 21 | - `NonNullable` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/NonNullish/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: NonNullish 3 | description: Extracts `null` and `undefined` from a type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # NonNullish 12 | 13 | Extracts `null` and `undefined` from a type. 14 | 15 | ## Generics 16 | 17 | - `TValue` 18 | 19 | ## Definition 20 | 21 | - `NonNullish` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/NonNullishIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: NonNullishIssue 3 | description: Non nullish issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # NonNullishIssue 12 | 13 | Non nullish issue interface. 14 | 15 | ## Definition 16 | 17 | - `NonNullishIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/NonOptional/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: NonOptional 3 | description: Extracts `undefined` from a type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # NonOptional 12 | 13 | Extracts `undefined` from a type. 14 | 15 | ## Generics 16 | 17 | - `TValue` 18 | 19 | ## Definition 20 | 21 | - `NonOptional` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/NormalizeForm/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: NormalizeForm 3 | description: Normalize form type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # NormalizeForm 12 | 13 | Normalize form type. 14 | 15 | ## Definition 16 | 17 | - `NormalizeForm` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/NullIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: NullIssue 3 | description: Null issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # NullIssue 12 | 13 | Null issue interface. 14 | 15 | ## Definition 16 | 17 | - `NullIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/NumberIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: NumberIssue 3 | description: Number issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # NumberIssue 12 | 13 | Number issue interface. 14 | 15 | ## Definition 16 | 17 | - `NumberIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ObjectEntries/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ObjectEntries 3 | description: Object entries interface. 4 | contributors: 5 | - fabian-hiller 6 | - kazizi55 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # ObjectEntries 13 | 14 | Object entries interface. 15 | 16 | ## Definition 17 | 18 | - `ObjectEntries` 19 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ObjectEntriesAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ObjectEntriesAsync 3 | description: Object entries async interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ObjectEntriesAsync 12 | 13 | Object entries async interface. 14 | 15 | ## Definition 16 | 17 | - `ObjectEntriesAsync` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ObjectIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ObjectIssue 3 | description: Object issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ObjectIssue 12 | 13 | Object issue interface. 14 | 15 | ## Definition 16 | 17 | - `ObjectIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ObjectKeys/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ObjectKeys 3 | description: Object keys type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ObjectKeys 12 | 13 | Object keys type. 14 | 15 | ## Generics 16 | 17 | - `TSchema` 18 | 19 | ## Definition 20 | 21 | - `ObjectKeys` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/OutputDataset/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: OutputDataset 3 | description: Output dataset interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # OutputDataset 12 | 13 | Output dataset interface. 14 | 15 | ## Generics 16 | 17 | - `TValue` 18 | - `TIssue` 19 | 20 | ## Definition 21 | 22 | - `OutputDataset` 23 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ParseJsonConfig/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ParseJsonConfig 3 | description: JSON parse config interface. 4 | contributors: 5 | - EskiMojo14 6 | - fabian-hiller 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # ParseJsonConfig 13 | 14 | JSON parse config interface. 15 | 16 | ## Definition 17 | 18 | - `ParseJsonConfig` 19 | - `reviver` 20 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/PartialInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: PartialInput 3 | description: Partial input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # PartialInput 12 | 13 | Partial input type. 14 | 15 | ## Definition 16 | 17 | - `PartialInput` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/PartialInput/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | PartialInput: { 5 | type: { 6 | type: 'union', 7 | options: [ 8 | { 9 | type: 'custom', 10 | name: 'Record', 11 | generics: ['string', 'unknown'], 12 | }, 13 | { 14 | type: 'custom', 15 | name: 'ArrayLike', 16 | generics: ['unknown'], 17 | }, 18 | ], 19 | }, 20 | }, 21 | }; 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/PicklistIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: PicklistIssue 3 | description: Picklist issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # PicklistIssue 12 | 13 | Picklist issue interface. 14 | 15 | ## Definition 16 | 17 | - `PicklistIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/PicklistOptions/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: PicklistOptions 3 | description: Picklist options type. 4 | contributors: 5 | - fabian-hiller 6 | - sqmasep 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # PicklistOptions 13 | 14 | Picklist options type. 15 | 16 | ## Definition 17 | 18 | - `PicklistOptions` 19 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/PicklistOptions/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | PicklistOptions: { 5 | type: { 6 | type: 'custom', 7 | name: 'MaybeReadonly', 8 | href: '../MaybeReadonly/', 9 | generics: [ 10 | { 11 | type: 'array', 12 | item: { 13 | type: 'union', 14 | options: ['string', 'number', 'bigint'], 15 | }, 16 | }, 17 | ], 18 | }, 19 | }, 20 | }; 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/PipeAction/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: PipeAction 3 | description: Pipe action interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # PipeAction 12 | 13 | Pipe action interface. 14 | 15 | ## Generics 16 | 17 | - `TInput` 18 | - `TOutput` 19 | - `TIssue` 20 | 21 | ## Definition 22 | 23 | - `PipeAction` 24 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/PipeItem/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: PipeItem 3 | description: Pipe item type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # PipeItem 12 | 13 | Pipe item type. 14 | 15 | ## Generics 16 | 17 | - `TInput` 18 | - `TOutput` 19 | - `TIssue` 20 | 21 | ## Definition 22 | 23 | - `PipeItem` 24 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/PromiseIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: PromiseIssue 3 | description: Promise issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # PromiseIssue 12 | 13 | Promise issue interface. 14 | 15 | ## Definition 16 | 17 | - `PromiseIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/RecordIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: RecordIssue 3 | description: Record issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # RecordIssue 12 | 13 | Record issue interface. 14 | 15 | ## Definition 16 | 17 | - `RecordIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/Reference/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Reference 3 | description: Reference type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # Reference 12 | 13 | Reference type. 14 | 15 | ## Definition 16 | 17 | - `Reference` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SchemaWithPartial/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: SchemaWithPartial 3 | description: Schema with partial type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # SchemaWithPartial 9 | 10 | Schema with partial type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/partial/partial.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SchemaWithPartialAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: SchemaWithPartialAsync 3 | description: Schema with partial async type. 4 | contributors: 5 | - EltonLobo07 6 | --- 7 | 8 | # SchemaWithPartialAsync 9 | 10 | Schema with partial async type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/partial/partialAsync.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SchemaWithRequired/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: SchemaWithRequired 3 | description: Schema with required type. 4 | contributors: 5 | - EltonLobo07 6 | --- 7 | 8 | # SchemaWithRequired 9 | 10 | Schema with required type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/required/required.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SchemaWithRequiredAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: SchemaWithRequiredAsync 3 | description: Schema with required async type. 4 | contributors: 5 | - EltonLobo07 6 | --- 7 | 8 | # SchemaWithRequiredAsync 9 | 10 | Schema with required async type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/methods/required/requiredAsync.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SchemaWithoutPipe/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: SchemaWithoutPipe 3 | description: Schema without pipe type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # SchemaWithoutPipe 12 | 13 | Schema without pipe type. 14 | 15 | ## Generics 16 | 17 | - `TSchema` 18 | 19 | ## Definition 20 | 21 | - `SchemaWithoutPipe` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SetIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: RecordIssue 3 | description: Record issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # RecordIssue 12 | 13 | Record issue interface. 14 | 15 | ## Definition 16 | 17 | - `RecordIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SetPathItem/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | type: { 5 | type: { 6 | type: 'string', 7 | value: 'set', 8 | }, 9 | }, 10 | origin: { 11 | type: { 12 | type: 'string', 13 | value: 'value', 14 | }, 15 | }, 16 | input: { 17 | type: { 18 | type: 'custom', 19 | name: 'Set', 20 | generics: ['unknown'], 21 | }, 22 | }, 23 | }; 24 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SizeInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: SizeInput 3 | description: Size input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # SizeInput 12 | 13 | Size input type. 14 | 15 | ## Definition 16 | 17 | - `SizeInput` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StandardFailureResult/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: StandardFailureResult 3 | description: The result interface if validation fails. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # StandardFailureResult 12 | 13 | The result interface if validation fails. 14 | 15 | ## Definition 16 | 17 | - `StandardFailureResult` 18 | - `issues` 19 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StandardFailureResult/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | issues: { 5 | type: { 6 | type: 'array', 7 | modifier: 'readonly', 8 | item: { 9 | type: 'custom', 10 | name: 'StandardIssue', 11 | href: '../StandardIssue/', 12 | }, 13 | }, 14 | }, 15 | }; 16 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StandardIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: StandardIssue 3 | description: The issue interface of the failure output. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # StandardIssue 12 | 13 | The issue interface of the failure output. 14 | 15 | ## Definition 16 | 17 | - `StandardIssue` 18 | - `message` 19 | - `path` 20 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StandardPathItem/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: StandardPathItem 3 | description: The path item interface of the issue. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # StandardPathItem 12 | 13 | The path item interface of the issue. 14 | 15 | ## Definition 16 | 17 | - `StandardPathItem` 18 | - `key` 19 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StandardPathItem/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | key: { 5 | type: { 6 | type: 'custom', 7 | name: 'PropertyKey', 8 | }, 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StandardResult/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: StandardResult 3 | description: The result interface of the validate function. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # StandardResult 12 | 13 | The result interface of the validate function. 14 | 15 | ## Generics 16 | 17 | - `TOutput` 18 | 19 | ## Definition 20 | 21 | - `StandardResult` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StandardSuccessResult/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | TOutput: { 5 | modifier: 'extends', 6 | type: 'any', 7 | }, 8 | value: { 9 | type: { 10 | type: 'custom', 11 | name: 'TOutput', 12 | }, 13 | }, 14 | issues: { 15 | type: 'undefined', 16 | }, 17 | }; 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StandardTypes/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | TInput: { 5 | modifier: 'extends', 6 | type: 'any', 7 | }, 8 | TOutput: { 9 | modifier: 'extends', 10 | type: 'any', 11 | }, 12 | input: { 13 | type: { 14 | type: 'custom', 15 | name: 'TInput', 16 | }, 17 | }, 18 | output: { 19 | type: { 20 | type: 'custom', 21 | name: 'TOutput', 22 | }, 23 | }, 24 | }; 25 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StringIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: RecordIssue 3 | description: Record issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # RecordIssue 12 | 13 | Record issue interface. 14 | 15 | ## Definition 16 | 17 | - `RecordIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/StringifyJsonConfig/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: StringifyJsonConfig 3 | description: JSON stringify config interface. 4 | contributors: 5 | - EskiMojo14 6 | - fabian-hiller 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # StringifyJsonConfig 13 | 14 | JSON stringify config interface. 15 | 16 | ## Definition 17 | 18 | - `StringifyJsonConfig` 19 | - `replacer` 20 | - `space` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SuccessDataset/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | TValue: { 5 | modifier: 'extends', 6 | type: 'any', 7 | }, 8 | typed: { 9 | type: { 10 | type: 'boolean', 11 | value: true, 12 | }, 13 | }, 14 | value: { 15 | type: { 16 | type: 'custom', 17 | name: 'TValue', 18 | }, 19 | }, 20 | issues: { 21 | type: 'undefined', 22 | }, 23 | }; 24 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/SymbolIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: SymbolIssue 3 | description: Symbol issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # SymbolIssue 12 | 13 | Symbol issue interface. 14 | 15 | ## Definition 16 | 17 | - `SymbolIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ToLowerCaseAction/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ToLowerCaseAction 3 | description: To lower case action interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ToLowerCaseAction 12 | 13 | To lower case action interface. 14 | 15 | ## Definition 16 | 17 | - `ToLowerCaseAction` 18 | - `type` 19 | - `reference` 20 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ToUpperCaseAction/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ToUpperCaseAction 3 | description: To upper case action interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ToUpperCaseAction 12 | 13 | To upper case action interface. 14 | 15 | ## Definition 16 | 17 | - `ToUpperCaseAction` 18 | - `type` 19 | - `reference` 20 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/TrimAction/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: TrimAction 3 | description: Trim action interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # TrimAction 12 | 13 | Trim action interface. 14 | 15 | ## Definition 16 | 17 | - `TrimAction` 18 | - `type` 19 | - `reference` 20 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/TrimEndAction/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: TrimEndAction 3 | description: Trim end action interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # TrimEndAction 12 | 13 | Trim end action interface. 14 | 15 | ## Definition 16 | 17 | - `TrimEndAction` 18 | - `type` 19 | - `reference` 20 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/TrimStartAction/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: TrimStartAction 3 | description: Trim start action interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # TrimStartAction 12 | 13 | Trim start action interface. 14 | 15 | ## Definition 16 | 17 | - `TrimStartAction` 18 | - `type` 19 | - `reference` 20 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/TupleIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: TupleIssue 3 | description: Tuple issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # TupleIssue 12 | 13 | Tuple issue interface. 14 | 15 | ## Definition 16 | 17 | - `TupleIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/TupleItems/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: TupleItems 3 | description: Tuple items type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # TupleItems 12 | 13 | Tuple items type. 14 | 15 | ## Definition 16 | 17 | - `TupleItems` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/TupleItemsAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: TupleItemsAsync 3 | description: Tuple items async type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # TupleItemsAsync 12 | 13 | Tuple items async type. 14 | 15 | ## Definition 16 | 17 | - `TupleItemsAsync` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/UndefinedIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: UndefinedIssue 3 | description: Undefined issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # UndefinedIssue 12 | 13 | Undefined issue interface. 14 | 15 | ## Definition 16 | 17 | - `UndefinedIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/UnionOptions/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: UnionOptions 3 | description: Union options type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # UnionOptions 12 | 13 | Union options type. 14 | 15 | ## Definition 16 | 17 | - `UnionOptions` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/UnionOptionsAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: UnionOptionsAsync 3 | description: Union options async type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # UnionOptionsAsync 12 | 13 | Union options async type. 14 | 15 | ## Definition 16 | 17 | - `UnionOptionsAsync` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/UnknownDataset/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: UnknownDataset 3 | description: Unknown dataset interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # UnknownDataset 12 | 13 | Unknown dataset interface. 14 | 15 | ## Definition 16 | 17 | - `TypedDataset` 18 | - `typed` 19 | - `value` 20 | - `issues` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/UnknownDataset/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | typed: { 5 | type: { 6 | type: 'boolean', 7 | value: false, 8 | }, 9 | }, 10 | value: { 11 | type: 'unknown', 12 | }, 13 | issues: { 14 | type: 'undefined', 15 | }, 16 | }; 17 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/UnknownPathItem/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | type: { 5 | type: { 6 | type: 'string', 7 | value: 'unknown', 8 | }, 9 | }, 10 | origin: { 11 | type: { 12 | type: 'union', 13 | options: [ 14 | { 15 | type: 'string', 16 | value: 'key', 17 | }, 18 | { 19 | type: 'string', 20 | value: 'value', 21 | }, 22 | ], 23 | }, 24 | }, 25 | }; 26 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ValueInput/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: ValueInput 3 | description: Value input type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # ValueInput 12 | 13 | Value input type. 14 | 15 | ## Definition 16 | 17 | - `ValueInput` 18 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/ValueInput/properties.ts: -------------------------------------------------------------------------------- 1 | import type { PropertyProps } from '~/components'; 2 | 3 | export const properties: Record = { 4 | ValueInput: { 5 | type: { 6 | type: 'union', 7 | options: [ 8 | 'string', 9 | 'number', 10 | 'bigint', 11 | 'boolean', 12 | { 13 | type: 'custom', 14 | name: 'Date', 15 | }, 16 | ], 17 | }, 18 | }, 19 | }; 20 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/VariantIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: VariantIssue 3 | description: Variant issue interface. 4 | contributors: 5 | - fabian-hiller 6 | - ikeyan 7 | --- 8 | 9 | import { Property } from '~/components'; 10 | import { properties } from './properties'; 11 | 12 | # VariantIssue 13 | 14 | Variant issue interface. 15 | 16 | ## Definition 17 | 18 | - `VariantIssue` 19 | - `kind` 20 | - `type` 21 | - `expected` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/VariantOption/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: VariantOption 3 | description: Variant option type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # VariantOption 9 | 10 | Variant option type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/schemas/variant/types.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/VariantOptionAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: VariantOptionAsync 3 | description: Variant option async type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | # VariantOptionAsync 9 | 10 | Variant option async type. 11 | 12 | > This type is too complex to display. Please refer to the [source code](https://github.com/fabian-hiller/valibot/blob/main/library/src/schemas/variant/types.ts). 13 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/VariantOptions/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: VariantOptions 3 | description: Variant options type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # VariantOptions 12 | 13 | Variant options type. 14 | 15 | ## Generics 16 | 17 | - `TKey` 18 | 19 | ## Definition 20 | 21 | - `VariantOptions` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/VariantOptionsAsync/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: VariantOptionsAsync 3 | description: Variant options async type. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # VariantOptionsAsync 12 | 13 | Variant options async type. 14 | 15 | ## Generics 16 | 17 | - `TKey` 18 | 19 | ## Definition 20 | 21 | - `VariantOptionsAsync` 22 | -------------------------------------------------------------------------------- /website/src/routes/api/(types)/VoidIssue/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: VoidIssue 3 | description: Void issue interface. 4 | contributors: 5 | - fabian-hiller 6 | --- 7 | 8 | import { Property } from '~/components'; 9 | import { properties } from './properties'; 10 | 11 | # VoidIssue 12 | 13 | Void issue interface. 14 | 15 | ## Definition 16 | 17 | - `VoidIssue` 18 | - `kind` 19 | - `type` 20 | - `expected` 21 | -------------------------------------------------------------------------------- /website/src/routes/api/layout.tsx: -------------------------------------------------------------------------------- 1 | import { component$, Slot } from '@builder.io/qwik'; 2 | import { DocsLayout } from '~/components'; 3 | 4 | export default component$(() => ( 5 | 6 | 7 | 8 | )); 9 | -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/first-draft-of-the-new-pipe-function/type-safe-issues.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/first-draft-of-the-new-pipe-function/type-safe-issues.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/how-valibot-has-evolved-this-year/monthly-downloads.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/how-valibot-has-evolved-this-year/monthly-downloads.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/how-valibot-has-evolved-this-year/playground-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/how-valibot-has-evolved-this-year/playground-dark.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/how-valibot-has-evolved-this-year/playground-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/how-valibot-has-evolved-this-year/playground-light.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/should-we-change-valibots-api/npm-downloads.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/should-we-change-valibots-api/npm-downloads.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/issue-type-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/issue-type-dark.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/issue-type-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/issue-type-light.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/mental-model-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/mental-model-dark.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/mental-model-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/mental-model-light.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/string-size-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/string-size-dark.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/string-size-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v0.31.0-is-finally-available/string-size-light.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v1-rc-is-available/chapter-nav-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v1-rc-is-available/chapter-nav-dark.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v1-rc-is-available/chapter-nav-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v1-rc-is-available/chapter-nav-light.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v1-rc-is-available/mental-model-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v1-rc-is-available/mental-model-dark.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v1-rc-is-available/mental-model-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v1-rc-is-available/mental-model-light.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v1-rc-is-available/monthly-downloads.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v1-rc-is-available/monthly-downloads.webp -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v1-rc-is-available/object-fix-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v1-rc-is-available/object-fix-dark.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v1-rc-is-available/object-fix-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v1-rc-is-available/object-fix-light.jpg -------------------------------------------------------------------------------- /website/src/routes/blog/(posts)/valibot-v1-the-1-kb-schema-library/valibot-talk.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/blog/(posts)/valibot-v1-the-1-kb-schema-library/valibot-talk.webp -------------------------------------------------------------------------------- /website/src/routes/guides/(main-concepts)/errors/index.tsx: -------------------------------------------------------------------------------- 1 | import { component$ } from '@builder.io/qwik'; 2 | import { routeLoader$ } from '@builder.io/qwik-city'; 3 | 4 | export const useRedirect = routeLoader$(({ redirect }) => { 5 | throw redirect(302, '/guides/issues/'); 6 | }); 7 | 8 | export default component$(() => { 9 | useRedirect(); 10 | return null; 11 | }); 12 | -------------------------------------------------------------------------------- /website/src/routes/guides/(main-concepts)/mental-model/mental-model-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/guides/(main-concepts)/mental-model/mental-model-dark.jpg -------------------------------------------------------------------------------- /website/src/routes/guides/(main-concepts)/mental-model/mental-model-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fabian-hiller/valibot/cc477c5dfbf3aa1d719de8fa47ad786e5f6e9578/website/src/routes/guides/(main-concepts)/mental-model/mental-model-light.jpg -------------------------------------------------------------------------------- /website/src/routes/guides/(migration)/migrate-from-ajv/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Migrate from Ajv 3 | contributors: 4 | - fabian-hiller 5 | --- 6 | 7 | # Migrate from Ajv 8 | 9 | > The content of this page is not yet ready. Check back in a few weeks. 10 | -------------------------------------------------------------------------------- /website/src/routes/guides/(migration)/migrate-from-joi/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Migrate from Joi 3 | contributors: 4 | - fabian-hiller 5 | --- 6 | 7 | # Migrate from Joi 8 | 9 | > The content of this page is not yet ready. Check back in a few weeks. 10 | -------------------------------------------------------------------------------- /website/src/routes/guides/(migration)/migrate-from-v0.30.0/index.ts: -------------------------------------------------------------------------------- 1 | import type { RequestEvent } from '@builder.io/qwik-city'; 2 | 3 | export const onGet = async ({ redirect }: RequestEvent) => { 4 | throw redirect(301, '/guides/migrate-to-v0.31.0/'); 5 | }; 6 | -------------------------------------------------------------------------------- /website/src/routes/guides/(migration)/migrate-from-yup/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Migrate from Yup 3 | contributors: 4 | - fabian-hiller 5 | --- 6 | 7 | # Migrate from Yup 8 | 9 | > The content of this page is not yet ready. Check back in a few weeks. 10 | -------------------------------------------------------------------------------- /website/src/routes/guides/index.tsx: -------------------------------------------------------------------------------- 1 | import { component$ } from '@builder.io/qwik'; 2 | import { routeLoader$ } from '@builder.io/qwik-city'; 3 | 4 | export const useRedirect = routeLoader$(({ redirect }) => { 5 | throw redirect(302, '/guides/introduction/'); 6 | }); 7 | 8 | export default component$(() => { 9 | useRedirect(); 10 | return null; 11 | }); 12 | -------------------------------------------------------------------------------- /website/src/routes/guides/layout.tsx: -------------------------------------------------------------------------------- 1 | import { component$, Slot } from '@builder.io/qwik'; 2 | import { DocsLayout } from '~/components'; 3 | 4 | export default component$(() => ( 5 | 6 | 7 | 8 | )); 9 | -------------------------------------------------------------------------------- /website/src/routes/layout.tsx: -------------------------------------------------------------------------------- 1 | import { component$, Slot, useSignal } from '@builder.io/qwik'; 2 | import { DocSearch, Footer, Header, RoutingIndicator } from '~/components'; 3 | 4 | export default component$(() => { 5 | // Use search open signal 6 | const searchOpen = useSignal(false); 7 | 8 | return ( 9 | <> 10 | 11 |
12 | 13 |