@warlock.js/seal 4.0.174 → 4.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/index.cjs +8900 -0
- package/cjs/index.cjs.map +1 -0
- package/esm/config.d.mts +47 -0
- package/esm/config.d.mts.map +1 -0
- package/esm/config.mjs +40 -0
- package/esm/config.mjs.map +1 -0
- package/esm/factory/index.d.mts +2 -0
- package/esm/factory/index.mjs +4 -0
- package/esm/factory/validate.d.mts +16 -0
- package/esm/factory/validate.d.mts.map +1 -0
- package/esm/factory/validate.mjs +29 -0
- package/esm/factory/validate.mjs.map +1 -0
- package/esm/factory/validators.d.mts +75 -0
- package/esm/factory/validators.d.mts.map +1 -0
- package/esm/factory/validators.mjs +132 -0
- package/esm/factory/validators.mjs.map +1 -0
- package/esm/helpers/date-helpers.d.mts +19 -0
- package/esm/helpers/date-helpers.d.mts.map +1 -0
- package/esm/helpers/date-helpers.mjs +24 -0
- package/esm/helpers/date-helpers.mjs.map +1 -0
- package/esm/helpers/file.utils.d.mts +12 -0
- package/esm/helpers/file.utils.d.mts.map +1 -0
- package/esm/helpers/file.utils.mjs +33 -0
- package/esm/helpers/file.utils.mjs.map +1 -0
- package/esm/helpers/get-field-value.d.mts +42 -0
- package/esm/helpers/get-field-value.d.mts.map +1 -0
- package/esm/helpers/get-field-value.mjs +45 -0
- package/esm/helpers/get-field-value.mjs.map +1 -0
- package/esm/helpers/index.mjs +7 -0
- package/esm/helpers/is-empty-value.mjs +10 -0
- package/esm/helpers/is-empty-value.mjs.map +1 -0
- package/esm/helpers/path-helpers.d.mts +8 -0
- package/esm/helpers/path-helpers.d.mts.map +1 -0
- package/esm/helpers/path-helpers.mjs +12 -0
- package/esm/helpers/path-helpers.mjs.map +1 -0
- package/esm/helpers/validation-helpers.d.mts +36 -0
- package/esm/helpers/validation-helpers.d.mts.map +1 -0
- package/esm/helpers/validation-helpers.mjs +72 -0
- package/esm/helpers/validation-helpers.mjs.map +1 -0
- package/esm/index.d.mts +96 -0
- package/esm/index.mjs +92 -0
- package/esm/mutators/array-mutators.d.mts +16 -0
- package/esm/mutators/array-mutators.d.mts.map +1 -0
- package/esm/mutators/array-mutators.mjs +40 -0
- package/esm/mutators/array-mutators.mjs.map +1 -0
- package/esm/mutators/date-mutators.d.mts +43 -0
- package/esm/mutators/date-mutators.d.mts.map +1 -0
- package/esm/mutators/date-mutators.mjs +113 -0
- package/esm/mutators/date-mutators.mjs.map +1 -0
- package/esm/mutators/index.mjs +8 -0
- package/esm/mutators/number-mutators.d.mts +26 -0
- package/esm/mutators/number-mutators.d.mts.map +1 -0
- package/esm/mutators/number-mutators.mjs +53 -0
- package/esm/mutators/number-mutators.mjs.map +1 -0
- package/esm/mutators/object-mutators.d.mts +12 -0
- package/esm/mutators/object-mutators.d.mts.map +1 -0
- package/esm/mutators/object-mutators.mjs +37 -0
- package/esm/mutators/object-mutators.mjs.map +1 -0
- package/esm/mutators/scalar-mutators.d.mts +7 -0
- package/esm/mutators/scalar-mutators.d.mts.map +1 -0
- package/esm/mutators/scalar-mutators.mjs +9 -0
- package/esm/mutators/scalar-mutators.mjs.map +1 -0
- package/esm/mutators/string-mutators.d.mts +76 -0
- package/esm/mutators/string-mutators.d.mts.map +1 -0
- package/esm/mutators/string-mutators.mjs +169 -0
- package/esm/mutators/string-mutators.mjs.map +1 -0
- package/esm/plugins/plugin-system.d.mts +71 -0
- package/esm/plugins/plugin-system.d.mts.map +1 -0
- package/esm/plugins/plugin-system.mjs +64 -0
- package/esm/plugins/plugin-system.mjs.map +1 -0
- package/esm/rules/array/array-rules.d.mts +16 -0
- package/esm/rules/array/array-rules.d.mts.map +1 -0
- package/esm/rules/array/array-rules.mjs +41 -0
- package/esm/rules/array/array-rules.mjs.map +1 -0
- package/esm/rules/array/index.mjs +3 -0
- package/esm/rules/color/color-rules.d.mts +34 -0
- package/esm/rules/color/color-rules.d.mts.map +1 -0
- package/esm/rules/color/color-rules.mjs +104 -0
- package/esm/rules/color/color-rules.mjs.map +1 -0
- package/esm/rules/color/index.mjs +3 -0
- package/esm/rules/common/enum.d.mts +30 -0
- package/esm/rules/common/enum.d.mts.map +1 -0
- package/esm/rules/common/enum.mjs +77 -0
- package/esm/rules/common/enum.mjs.map +1 -0
- package/esm/rules/common/equals-field-rules.d.mts +22 -0
- package/esm/rules/common/equals-field-rules.d.mts.map +1 -0
- package/esm/rules/common/equals-field-rules.mjs +42 -0
- package/esm/rules/common/equals-field-rules.mjs.map +1 -0
- package/esm/rules/common/index.mjs +8 -0
- package/esm/rules/common/instanceof.d.mts +16 -0
- package/esm/rules/common/instanceof.d.mts.map +1 -0
- package/esm/rules/common/instanceof.mjs +23 -0
- package/esm/rules/common/instanceof.mjs.map +1 -0
- package/esm/rules/common/literal.d.mts +16 -0
- package/esm/rules/common/literal.d.mts.map +1 -0
- package/esm/rules/common/literal.mjs +29 -0
- package/esm/rules/common/literal.mjs.map +1 -0
- package/esm/rules/common/type-rules.d.mts +42 -0
- package/esm/rules/common/type-rules.d.mts.map +1 -0
- package/esm/rules/common/type-rules.mjs +112 -0
- package/esm/rules/common/type-rules.mjs.map +1 -0
- package/esm/rules/common/unknown-key.d.mts +14 -0
- package/esm/rules/common/unknown-key.d.mts.map +1 -0
- package/esm/rules/common/unknown-key.mjs +25 -0
- package/esm/rules/common/unknown-key.mjs.map +1 -0
- package/esm/rules/conditional/forbidden-if-rules.d.mts +58 -0
- package/esm/rules/conditional/forbidden-if-rules.d.mts.map +1 -0
- package/esm/rules/conditional/forbidden-if-rules.mjs +116 -0
- package/esm/rules/conditional/forbidden-if-rules.mjs.map +1 -0
- package/esm/rules/conditional/index.mjs +12 -0
- package/esm/rules/conditional/present-if-rules.d.mts +49 -0
- package/esm/rules/conditional/present-if-rules.d.mts.map +1 -0
- package/esm/rules/conditional/present-if-rules.mjs +97 -0
- package/esm/rules/conditional/present-if-rules.mjs.map +1 -0
- package/esm/rules/conditional/present-unless-rules.d.mts +15 -0
- package/esm/rules/conditional/present-unless-rules.d.mts.map +1 -0
- package/esm/rules/conditional/present-unless-rules.mjs +30 -0
- package/esm/rules/conditional/present-unless-rules.mjs.map +1 -0
- package/esm/rules/conditional/present-with-rules.d.mts +30 -0
- package/esm/rules/conditional/present-with-rules.d.mts.map +1 -0
- package/esm/rules/conditional/present-with-rules.mjs +75 -0
- package/esm/rules/conditional/present-with-rules.mjs.map +1 -0
- package/esm/rules/conditional/present-without-rules.d.mts +30 -0
- package/esm/rules/conditional/present-without-rules.d.mts.map +1 -0
- package/esm/rules/conditional/present-without-rules.mjs +75 -0
- package/esm/rules/conditional/present-without-rules.mjs.map +1 -0
- package/esm/rules/conditional/required-if-rules.d.mts +81 -0
- package/esm/rules/conditional/required-if-rules.d.mts.map +1 -0
- package/esm/rules/conditional/required-if-rules.mjs +203 -0
- package/esm/rules/conditional/required-if-rules.mjs.map +1 -0
- package/esm/rules/conditional/required-unless-rules.d.mts +15 -0
- package/esm/rules/conditional/required-unless-rules.d.mts.map +1 -0
- package/esm/rules/conditional/required-unless-rules.mjs +31 -0
- package/esm/rules/conditional/required-unless-rules.mjs.map +1 -0
- package/esm/rules/conditional/required-when-rule.d.mts +23 -0
- package/esm/rules/conditional/required-when-rule.d.mts.map +1 -0
- package/esm/rules/conditional/required-when-rule.mjs +32 -0
- package/esm/rules/conditional/required-when-rule.mjs.map +1 -0
- package/esm/rules/conditional/required-with-rules.d.mts +30 -0
- package/esm/rules/conditional/required-with-rules.d.mts.map +1 -0
- package/esm/rules/conditional/required-with-rules.mjs +66 -0
- package/esm/rules/conditional/required-with-rules.mjs.map +1 -0
- package/esm/rules/conditional/required-without-rules.d.mts +30 -0
- package/esm/rules/conditional/required-without-rules.d.mts.map +1 -0
- package/esm/rules/conditional/required-without-rules.mjs +66 -0
- package/esm/rules/conditional/required-without-rules.mjs.map +1 -0
- package/esm/rules/core/equal.d.mts +12 -0
- package/esm/rules/core/equal.d.mts.map +1 -0
- package/esm/rules/core/equal.mjs +22 -0
- package/esm/rules/core/equal.mjs.map +1 -0
- package/esm/rules/core/forbidden.d.mts +10 -0
- package/esm/rules/core/forbidden.d.mts.map +1 -0
- package/esm/rules/core/forbidden.mjs +20 -0
- package/esm/rules/core/forbidden.mjs.map +1 -0
- package/esm/rules/core/index.mjs +7 -0
- package/esm/rules/core/required.d.mts +15 -0
- package/esm/rules/core/required.d.mts.map +1 -0
- package/esm/rules/core/required.mjs +36 -0
- package/esm/rules/core/required.mjs.map +1 -0
- package/esm/rules/core/union.d.mts +13 -0
- package/esm/rules/core/union.d.mts.map +1 -0
- package/esm/rules/core/union.mjs +30 -0
- package/esm/rules/core/union.mjs.map +1 -0
- package/esm/rules/core/when.d.mts +11 -0
- package/esm/rules/core/when.d.mts.map +1 -0
- package/esm/rules/core/when.mjs +36 -0
- package/esm/rules/core/when.mjs.map +1 -0
- package/esm/rules/date/date-comparison-rules.d.mts +29 -0
- package/esm/rules/date/date-comparison-rules.d.mts.map +1 -0
- package/esm/rules/date/date-comparison-rules.mjs +78 -0
- package/esm/rules/date/date-comparison-rules.mjs.map +1 -0
- package/esm/rules/date/date-day-rules.d.mts +25 -0
- package/esm/rules/date/date-day-rules.d.mts.map +1 -0
- package/esm/rules/date/date-day-rules.mjs +61 -0
- package/esm/rules/date/date-day-rules.mjs.map +1 -0
- package/esm/rules/date/date-field-comparison-rules.d.mts +32 -0
- package/esm/rules/date/date-field-comparison-rules.d.mts.map +1 -0
- package/esm/rules/date/date-field-comparison-rules.mjs +81 -0
- package/esm/rules/date/date-field-comparison-rules.mjs.map +1 -0
- package/esm/rules/date/date-period-rules.d.mts +127 -0
- package/esm/rules/date/date-period-rules.d.mts.map +1 -0
- package/esm/rules/date/date-period-rules.mjs +398 -0
- package/esm/rules/date/date-period-rules.mjs.map +1 -0
- package/esm/rules/date/date-relative-rules.d.mts +24 -0
- package/esm/rules/date/date-relative-rules.d.mts.map +1 -0
- package/esm/rules/date/date-relative-rules.mjs +55 -0
- package/esm/rules/date/date-relative-rules.mjs.map +1 -0
- package/esm/rules/date/date-special-rules.d.mts +24 -0
- package/esm/rules/date/date-special-rules.d.mts.map +1 -0
- package/esm/rules/date/date-special-rules.mjs +58 -0
- package/esm/rules/date/date-special-rules.mjs.map +1 -0
- package/esm/rules/date/date.d.mts +97 -0
- package/esm/rules/date/date.d.mts.map +1 -0
- package/esm/rules/date/date.mjs +234 -0
- package/esm/rules/date/date.mjs.map +1 -0
- package/esm/rules/date/index.mjs +9 -0
- package/esm/rules/file/dimensions.d.mts +30 -0
- package/esm/rules/file/dimensions.d.mts.map +1 -0
- package/esm/rules/file/dimensions.mjs +56 -0
- package/esm/rules/file/dimensions.mjs.map +1 -0
- package/esm/rules/file/file-size.d.mts +18 -0
- package/esm/rules/file/file-size.d.mts.map +1 -0
- package/esm/rules/file/file-size.mjs +33 -0
- package/esm/rules/file/file-size.mjs.map +1 -0
- package/esm/rules/file/index.mjs +4 -0
- package/esm/rules/index.mjs +57 -0
- package/esm/rules/length/index.mjs +3 -0
- package/esm/rules/length/length-rules.d.mts +53 -0
- package/esm/rules/length/length-rules.d.mts.map +1 -0
- package/esm/rules/length/length-rules.mjs +98 -0
- package/esm/rules/length/length-rules.mjs.map +1 -0
- package/esm/rules/number/index.mjs +3 -0
- package/esm/rules/number/number-rules.d.mts +69 -0
- package/esm/rules/number/number-rules.d.mts.map +1 -0
- package/esm/rules/number/number-rules.mjs +196 -0
- package/esm/rules/number/number-rules.mjs.map +1 -0
- package/esm/rules/scalar/accepted-rule.mjs +116 -0
- package/esm/rules/scalar/accepted-rule.mjs.map +1 -0
- package/esm/rules/scalar/declined-rule.mjs +116 -0
- package/esm/rules/scalar/declined-rule.mjs.map +1 -0
- package/esm/rules/scalar/index.mjs +4 -0
- package/esm/rules/string/alpha.d.mts +18 -0
- package/esm/rules/string/alpha.d.mts.map +1 -0
- package/esm/rules/string/alpha.mjs +41 -0
- package/esm/rules/string/alpha.mjs.map +1 -0
- package/esm/rules/string/credit-card.d.mts +10 -0
- package/esm/rules/string/credit-card.d.mts.map +1 -0
- package/esm/rules/string/credit-card.mjs +32 -0
- package/esm/rules/string/credit-card.mjs.map +1 -0
- package/esm/rules/string/email.d.mts +10 -0
- package/esm/rules/string/email.d.mts.map +1 -0
- package/esm/rules/string/email.mjs +20 -0
- package/esm/rules/string/email.mjs.map +1 -0
- package/esm/rules/string/id-formats.d.mts +54 -0
- package/esm/rules/string/id-formats.d.mts.map +1 -0
- package/esm/rules/string/id-formats.mjs +104 -0
- package/esm/rules/string/id-formats.mjs.map +1 -0
- package/esm/rules/string/index.mjs +13 -0
- package/esm/rules/string/ip.d.mts +18 -0
- package/esm/rules/string/ip.d.mts.map +1 -0
- package/esm/rules/string/ip.mjs +42 -0
- package/esm/rules/string/ip.mjs.map +1 -0
- package/esm/rules/string/matches.d.mts +12 -0
- package/esm/rules/string/matches.d.mts.map +1 -0
- package/esm/rules/string/matches.mjs +21 -0
- package/esm/rules/string/matches.mjs.map +1 -0
- package/esm/rules/string/pattern.d.mts +12 -0
- package/esm/rules/string/pattern.d.mts.map +1 -0
- package/esm/rules/string/pattern.mjs +20 -0
- package/esm/rules/string/pattern.mjs.map +1 -0
- package/esm/rules/string/string-comparison.d.mts +30 -0
- package/esm/rules/string/string-comparison.d.mts.map +1 -0
- package/esm/rules/string/string-comparison.mjs +56 -0
- package/esm/rules/string/string-comparison.mjs.map +1 -0
- package/esm/rules/string/strong-password-rule.d.mts +18 -0
- package/esm/rules/string/strong-password-rule.d.mts.map +1 -0
- package/esm/rules/string/strong-password-rule.mjs +31 -0
- package/esm/rules/string/strong-password-rule.mjs.map +1 -0
- package/esm/rules/string/url.d.mts +10 -0
- package/esm/rules/string/url.d.mts.map +1 -0
- package/esm/rules/string/url.mjs +23 -0
- package/esm/rules/string/url.mjs.map +1 -0
- package/esm/rules/string/without-whitespace.d.mts +10 -0
- package/esm/rules/string/without-whitespace.d.mts.map +1 -0
- package/esm/rules/string/without-whitespace.mjs +19 -0
- package/esm/rules/string/without-whitespace.mjs.map +1 -0
- package/esm/standard-schema/json-schema.d.mts +65 -0
- package/esm/standard-schema/json-schema.d.mts.map +1 -0
- package/esm/standard-schema/json-schema.mjs +81 -0
- package/esm/standard-schema/json-schema.mjs.map +1 -0
- package/esm/standard-schema/map-result.d.mts +22 -0
- package/esm/standard-schema/map-result.d.mts.map +1 -0
- package/esm/standard-schema/map-result.mjs +26 -0
- package/esm/standard-schema/map-result.mjs.map +1 -0
- package/esm/standard-schema/types.d.mts +96 -0
- package/esm/standard-schema/types.d.mts.map +1 -0
- package/esm/types/conditional-types.d.mts +15 -0
- package/esm/types/conditional-types.d.mts.map +1 -0
- package/esm/types/context-types.d.mts +41 -0
- package/esm/types/context-types.d.mts.map +1 -0
- package/esm/types/data-transformer-types.d.mts +29 -0
- package/esm/types/data-transformer-types.d.mts.map +1 -0
- package/esm/types/date-types.d.mts +12 -0
- package/esm/types/date-types.d.mts.map +1 -0
- package/esm/types/date-types.mjs +17 -0
- package/esm/types/date-types.mjs.map +1 -0
- package/esm/types/file.types.d.mts +8 -0
- package/esm/types/file.types.d.mts.map +1 -0
- package/esm/types/inference-types.d.mts +178 -0
- package/esm/types/inference-types.d.mts.map +1 -0
- package/esm/types/mutator-types.d.mts +27 -0
- package/esm/types/mutator-types.d.mts.map +1 -0
- package/esm/types/result-types.d.mts +16 -0
- package/esm/types/result-types.d.mts.map +1 -0
- package/esm/types/rule-types.d.mts +52 -0
- package/esm/types/rule-types.d.mts.map +1 -0
- package/esm/types/schema-types.d.mts +10 -0
- package/esm/types/schema-types.d.mts.map +1 -0
- package/esm/validators/any-validator.d.mts +33 -0
- package/esm/validators/any-validator.d.mts.map +1 -0
- package/esm/validators/any-validator.mjs +35 -0
- package/esm/validators/any-validator.mjs.map +1 -0
- package/esm/validators/array-validator.d.mts +82 -0
- package/esm/validators/array-validator.d.mts.map +1 -0
- package/esm/validators/array-validator.mjs +176 -0
- package/esm/validators/array-validator.mjs.map +1 -0
- package/esm/validators/base-validator.d.mts +491 -0
- package/esm/validators/base-validator.d.mts.map +1 -0
- package/esm/validators/base-validator.mjs +656 -0
- package/esm/validators/base-validator.mjs.map +1 -0
- package/esm/validators/boolean-validator.d.mts +71 -0
- package/esm/validators/boolean-validator.d.mts.map +1 -0
- package/esm/validators/boolean-validator.mjs +126 -0
- package/esm/validators/boolean-validator.mjs.map +1 -0
- package/esm/validators/computed-validator.d.mts +80 -0
- package/esm/validators/computed-validator.d.mts.map +1 -0
- package/esm/validators/computed-validator.mjs +116 -0
- package/esm/validators/computed-validator.mjs.map +1 -0
- package/esm/validators/date-validator.d.mts +336 -0
- package/esm/validators/date-validator.d.mts.map +1 -0
- package/esm/validators/date-validator.mjs +637 -0
- package/esm/validators/date-validator.mjs.map +1 -0
- package/esm/validators/discriminated-union-validator.d.mts +67 -0
- package/esm/validators/discriminated-union-validator.d.mts.map +1 -0
- package/esm/validators/discriminated-union-validator.mjs +125 -0
- package/esm/validators/discriminated-union-validator.mjs.map +1 -0
- package/esm/validators/float-validator.d.mts +12 -0
- package/esm/validators/float-validator.d.mts.map +1 -0
- package/esm/validators/float-validator.mjs +18 -0
- package/esm/validators/float-validator.mjs.map +1 -0
- package/esm/validators/index.d.mts +22 -0
- package/esm/validators/index.mjs +28 -0
- package/esm/validators/instanceof-validator.d.mts +48 -0
- package/esm/validators/instanceof-validator.d.mts.map +1 -0
- package/esm/validators/instanceof-validator.mjs +63 -0
- package/esm/validators/instanceof-validator.mjs.map +1 -0
- package/esm/validators/int-validator.d.mts +23 -0
- package/esm/validators/int-validator.d.mts.map +1 -0
- package/esm/validators/int-validator.mjs +30 -0
- package/esm/validators/int-validator.mjs.map +1 -0
- package/esm/validators/lazy-validator.d.mts +70 -0
- package/esm/validators/lazy-validator.d.mts.map +1 -0
- package/esm/validators/lazy-validator.mjs +85 -0
- package/esm/validators/lazy-validator.mjs.map +1 -0
- package/esm/validators/literal-validator.d.mts +52 -0
- package/esm/validators/literal-validator.d.mts.map +1 -0
- package/esm/validators/literal-validator.mjs +67 -0
- package/esm/validators/literal-validator.mjs.map +1 -0
- package/esm/validators/managed-validator.d.mts +42 -0
- package/esm/validators/managed-validator.d.mts.map +1 -0
- package/esm/validators/managed-validator.mjs +39 -0
- package/esm/validators/managed-validator.mjs.map +1 -0
- package/esm/validators/methods/equality-conditional-methods.d.mts +90 -0
- package/esm/validators/methods/equality-conditional-methods.d.mts.map +1 -0
- package/esm/validators/methods/equality-conditional-methods.mjs +129 -0
- package/esm/validators/methods/equality-conditional-methods.mjs.map +1 -0
- package/esm/validators/methods/forbidden-methods.d.mts +58 -0
- package/esm/validators/methods/forbidden-methods.d.mts.map +1 -0
- package/esm/validators/methods/forbidden-methods.mjs +131 -0
- package/esm/validators/methods/forbidden-methods.mjs.map +1 -0
- package/esm/validators/methods/present-methods.d.mts +102 -0
- package/esm/validators/methods/present-methods.d.mts.map +1 -0
- package/esm/validators/methods/present-methods.mjs +235 -0
- package/esm/validators/methods/present-methods.mjs.map +1 -0
- package/esm/validators/methods/required-methods.d.mts +193 -0
- package/esm/validators/methods/required-methods.d.mts.map +1 -0
- package/esm/validators/methods/required-methods.mjs +347 -0
- package/esm/validators/methods/required-methods.mjs.map +1 -0
- package/esm/validators/number-validator.d.mts +170 -0
- package/esm/validators/number-validator.d.mts.map +1 -0
- package/esm/validators/number-validator.mjs +303 -0
- package/esm/validators/number-validator.mjs.map +1 -0
- package/esm/validators/numeric-validator.d.mts +19 -0
- package/esm/validators/numeric-validator.d.mts.map +1 -0
- package/esm/validators/numeric-validator.mjs +27 -0
- package/esm/validators/numeric-validator.mjs.map +1 -0
- package/esm/validators/object-validator.d.mts +253 -0
- package/esm/validators/object-validator.d.mts.map +1 -0
- package/esm/validators/object-validator.mjs +440 -0
- package/esm/validators/object-validator.mjs.map +1 -0
- package/esm/validators/primitive-validator.d.mts +74 -0
- package/esm/validators/primitive-validator.d.mts.map +1 -0
- package/esm/validators/primitive-validator.mjs +89 -0
- package/esm/validators/primitive-validator.mjs.map +1 -0
- package/esm/validators/record-validator.d.mts +63 -0
- package/esm/validators/record-validator.d.mts.map +1 -0
- package/esm/validators/record-validator.mjs +111 -0
- package/esm/validators/record-validator.mjs.map +1 -0
- package/esm/validators/scalar-validator.d.mts +97 -0
- package/esm/validators/scalar-validator.d.mts.map +1 -0
- package/esm/validators/scalar-validator.mjs +172 -0
- package/esm/validators/scalar-validator.mjs.map +1 -0
- package/esm/validators/string-validator.d.mts +224 -0
- package/esm/validators/string-validator.d.mts.map +1 -0
- package/esm/validators/string-validator.mjs +443 -0
- package/esm/validators/string-validator.mjs.map +1 -0
- package/esm/validators/tuple-validator.d.mts +66 -0
- package/esm/validators/tuple-validator.d.mts.map +1 -0
- package/esm/validators/tuple-validator.mjs +133 -0
- package/esm/validators/tuple-validator.mjs.map +1 -0
- package/esm/validators/union-validator.d.mts +59 -0
- package/esm/validators/union-validator.d.mts.map +1 -0
- package/esm/validators/union-validator.mjs +66 -0
- package/esm/validators/union-validator.mjs.map +1 -0
- package/llms-full.txt +2175 -0
- package/llms.txt +17 -0
- package/package.json +37 -48
- package/skills/bridge-standard-schema/SKILL.md +138 -0
- package/skills/compose-seal-modifiers/SKILL.md +271 -0
- package/skills/define-structural-shape/SKILL.md +138 -0
- package/skills/define-structural-shape/array-methods.md +78 -0
- package/skills/define-structural-shape/object-methods.md +166 -0
- package/skills/extend-seal-with-plugins/SKILL.md +178 -0
- package/skills/generate-json-schema/SKILL.md +143 -0
- package/skills/handle-seal-errors/SKILL.md +148 -0
- package/skills/overview/SKILL.md +72 -0
- package/skills/pick-seal-primitive/SKILL.md +133 -0
- package/skills/pick-seal-primitive/boolean-methods.md +71 -0
- package/skills/pick-seal-primitive/date-methods.md +175 -0
- package/skills/pick-seal-primitive/number-methods.md +123 -0
- package/skills/pick-seal-primitive/string-methods.md +169 -0
- package/skills/seal-basics/SKILL.md +106 -0
- package/cjs/config.d.ts +0 -48
- package/cjs/config.d.ts.map +0 -1
- package/cjs/config.js +0 -42
- package/cjs/config.js.map +0 -1
- package/cjs/factory/index.d.ts +0 -3
- package/cjs/factory/index.d.ts.map +0 -1
- package/cjs/factory/validate.d.ts +0 -8
- package/cjs/factory/validate.d.ts.map +0 -1
- package/cjs/factory/validate.js +0 -23
- package/cjs/factory/validate.js.map +0 -1
- package/cjs/factory/validators.d.ts +0 -56
- package/cjs/factory/validators.d.ts.map +0 -1
- package/cjs/factory/validators.js +0 -47
- package/cjs/factory/validators.js.map +0 -1
- package/cjs/helpers/date-helpers.d.ts +0 -16
- package/cjs/helpers/date-helpers.d.ts.map +0 -1
- package/cjs/helpers/date-helpers.js +0 -20
- package/cjs/helpers/date-helpers.js.map +0 -1
- package/cjs/helpers/file.utils.d.ts +0 -8
- package/cjs/helpers/file.utils.d.ts.map +0 -1
- package/cjs/helpers/file.utils.js +0 -29
- package/cjs/helpers/file.utils.js.map +0 -1
- package/cjs/helpers/get-field-value.d.ts +0 -37
- package/cjs/helpers/get-field-value.d.ts.map +0 -1
- package/cjs/helpers/get-field-value.js +0 -40
- package/cjs/helpers/get-field-value.js.map +0 -1
- package/cjs/helpers/index.d.ts +0 -6
- package/cjs/helpers/index.d.ts.map +0 -1
- package/cjs/helpers/is-empty-value.d.ts +0 -2
- package/cjs/helpers/is-empty-value.d.ts.map +0 -1
- package/cjs/helpers/is-empty-value.js +0 -3
- package/cjs/helpers/is-empty-value.js.map +0 -1
- package/cjs/helpers/path-helpers.d.ts +0 -5
- package/cjs/helpers/path-helpers.d.ts.map +0 -1
- package/cjs/helpers/path-helpers.js +0 -8
- package/cjs/helpers/path-helpers.js.map +0 -1
- package/cjs/helpers/validation-helpers.d.ts +0 -26
- package/cjs/helpers/validation-helpers.d.ts.map +0 -1
- package/cjs/helpers/validation-helpers.js +0 -74
- package/cjs/helpers/validation-helpers.js.map +0 -1
- package/cjs/index.d.ts +0 -30
- package/cjs/index.d.ts.map +0 -1
- package/cjs/index.js +0 -1
- package/cjs/index.js.map +0 -1
- package/cjs/mutators/array-mutators.d.ts +0 -12
- package/cjs/mutators/array-mutators.d.ts.map +0 -1
- package/cjs/mutators/array-mutators.js +0 -37
- package/cjs/mutators/array-mutators.js.map +0 -1
- package/cjs/mutators/date-mutators.d.ts +0 -39
- package/cjs/mutators/date-mutators.d.ts.map +0 -1
- package/cjs/mutators/date-mutators.js +0 -120
- package/cjs/mutators/date-mutators.js.map +0 -1
- package/cjs/mutators/index.d.ts +0 -7
- package/cjs/mutators/index.d.ts.map +0 -1
- package/cjs/mutators/number-mutators.d.ts +0 -22
- package/cjs/mutators/number-mutators.d.ts.map +0 -1
- package/cjs/mutators/number-mutators.js +0 -53
- package/cjs/mutators/number-mutators.js.map +0 -1
- package/cjs/mutators/object-mutators.d.ts +0 -8
- package/cjs/mutators/object-mutators.d.ts.map +0 -1
- package/cjs/mutators/object-mutators.js +0 -48
- package/cjs/mutators/object-mutators.js.map +0 -1
- package/cjs/mutators/scalar-mutators.d.ts +0 -3
- package/cjs/mutators/scalar-mutators.d.ts.map +0 -1
- package/cjs/mutators/scalar-mutators.js +0 -6
- package/cjs/mutators/scalar-mutators.js.map +0 -1
- package/cjs/mutators/string-mutators.d.ts +0 -72
- package/cjs/mutators/string-mutators.d.ts.map +0 -1
- package/cjs/mutators/string-mutators.js +0 -193
- package/cjs/mutators/string-mutators.js.map +0 -1
- package/cjs/plugins/index.d.ts +0 -7
- package/cjs/plugins/index.d.ts.map +0 -1
- package/cjs/plugins/plugin-system.d.ts +0 -71
- package/cjs/plugins/plugin-system.d.ts.map +0 -1
- package/cjs/plugins/plugin-system.js +0 -67
- package/cjs/plugins/plugin-system.js.map +0 -1
- package/cjs/rules/array/array-rules.d.ts +0 -12
- package/cjs/rules/array/array-rules.d.ts.map +0 -1
- package/cjs/rules/array/array-rules.js +0 -45
- package/cjs/rules/array/array-rules.js.map +0 -1
- package/cjs/rules/array/index.d.ts +0 -2
- package/cjs/rules/array/index.d.ts.map +0 -1
- package/cjs/rules/color/color-rules.d.ts +0 -30
- package/cjs/rules/color/color-rules.d.ts.map +0 -1
- package/cjs/rules/color/color-rules.js +0 -120
- package/cjs/rules/color/color-rules.js.map +0 -1
- package/cjs/rules/color/index.d.ts +0 -2
- package/cjs/rules/color/index.d.ts.map +0 -1
- package/cjs/rules/common/enum.d.ts +0 -26
- package/cjs/rules/common/enum.d.ts.map +0 -1
- package/cjs/rules/common/enum.js +0 -69
- package/cjs/rules/common/enum.js.map +0 -1
- package/cjs/rules/common/equals-field-rules.d.ts +0 -18
- package/cjs/rules/common/equals-field-rules.d.ts.map +0 -1
- package/cjs/rules/common/equals-field-rules.js +0 -39
- package/cjs/rules/common/equals-field-rules.js.map +0 -1
- package/cjs/rules/common/index.d.ts +0 -5
- package/cjs/rules/common/index.d.ts.map +0 -1
- package/cjs/rules/common/type-rules.d.ts +0 -38
- package/cjs/rules/common/type-rules.d.ts.map +0 -1
- package/cjs/rules/common/type-rules.js +0 -117
- package/cjs/rules/common/type-rules.js.map +0 -1
- package/cjs/rules/common/unknown-key.d.ts +0 -9
- package/cjs/rules/common/unknown-key.d.ts.map +0 -1
- package/cjs/rules/common/unknown-key.js +0 -17
- package/cjs/rules/common/unknown-key.js.map +0 -1
- package/cjs/rules/conditional/forbidden-if-rules.d.ts +0 -54
- package/cjs/rules/conditional/forbidden-if-rules.d.ts.map +0 -1
- package/cjs/rules/conditional/forbidden-if-rules.js +0 -118
- package/cjs/rules/conditional/forbidden-if-rules.js.map +0 -1
- package/cjs/rules/conditional/index.d.ts +0 -11
- package/cjs/rules/conditional/index.d.ts.map +0 -1
- package/cjs/rules/conditional/present-if-rules.d.ts +0 -45
- package/cjs/rules/conditional/present-if-rules.d.ts.map +0 -1
- package/cjs/rules/conditional/present-if-rules.js +0 -100
- package/cjs/rules/conditional/present-if-rules.js.map +0 -1
- package/cjs/rules/conditional/present-unless-rules.d.ts +0 -11
- package/cjs/rules/conditional/present-unless-rules.d.ts.map +0 -1
- package/cjs/rules/conditional/present-unless-rules.js +0 -22
- package/cjs/rules/conditional/present-unless-rules.js.map +0 -1
- package/cjs/rules/conditional/present-with-rules.d.ts +0 -26
- package/cjs/rules/conditional/present-with-rules.d.ts.map +0 -1
- package/cjs/rules/conditional/present-with-rules.js +0 -70
- package/cjs/rules/conditional/present-with-rules.js.map +0 -1
- package/cjs/rules/conditional/present-without-rules.d.ts +0 -26
- package/cjs/rules/conditional/present-without-rules.d.ts.map +0 -1
- package/cjs/rules/conditional/present-without-rules.js +0 -70
- package/cjs/rules/conditional/present-without-rules.js.map +0 -1
- package/cjs/rules/conditional/required-if-rules.d.ts +0 -77
- package/cjs/rules/conditional/required-if-rules.d.ts.map +0 -1
- package/cjs/rules/conditional/required-if-rules.js +0 -205
- package/cjs/rules/conditional/required-if-rules.js.map +0 -1
- package/cjs/rules/conditional/required-unless-rules.d.ts +0 -11
- package/cjs/rules/conditional/required-unless-rules.d.ts.map +0 -1
- package/cjs/rules/conditional/required-unless-rules.js +0 -22
- package/cjs/rules/conditional/required-unless-rules.js.map +0 -1
- package/cjs/rules/conditional/required-when-rule.d.ts +0 -18
- package/cjs/rules/conditional/required-when-rule.d.ts.map +0 -1
- package/cjs/rules/conditional/required-when-rule.js +0 -26
- package/cjs/rules/conditional/required-when-rule.js.map +0 -1
- package/cjs/rules/conditional/required-with-rules.d.ts +0 -26
- package/cjs/rules/conditional/required-with-rules.d.ts.map +0 -1
- package/cjs/rules/conditional/required-with-rules.js +0 -64
- package/cjs/rules/conditional/required-with-rules.js.map +0 -1
- package/cjs/rules/conditional/required-without-rules.d.ts +0 -26
- package/cjs/rules/conditional/required-without-rules.d.ts.map +0 -1
- package/cjs/rules/conditional/required-without-rules.js +0 -64
- package/cjs/rules/conditional/required-without-rules.js.map +0 -1
- package/cjs/rules/core/equal.d.ts +0 -8
- package/cjs/rules/core/equal.d.ts.map +0 -1
- package/cjs/rules/core/equal.js +0 -14
- package/cjs/rules/core/equal.js.map +0 -1
- package/cjs/rules/core/forbidden.d.ts +0 -6
- package/cjs/rules/core/forbidden.d.ts.map +0 -1
- package/cjs/rules/core/forbidden.js +0 -13
- package/cjs/rules/core/forbidden.js.map +0 -1
- package/cjs/rules/core/index.d.ts +0 -6
- package/cjs/rules/core/index.d.ts.map +0 -1
- package/cjs/rules/core/required.d.ts +0 -11
- package/cjs/rules/core/required.d.ts.map +0 -1
- package/cjs/rules/core/required.js +0 -31
- package/cjs/rules/core/required.js.map +0 -1
- package/cjs/rules/core/union.d.ts +0 -9
- package/cjs/rules/core/union.d.ts.map +0 -1
- package/cjs/rules/core/union.js +0 -40
- package/cjs/rules/core/union.js.map +0 -1
- package/cjs/rules/core/when.d.ts +0 -6
- package/cjs/rules/core/when.d.ts.map +0 -1
- package/cjs/rules/core/when.js +0 -40
- package/cjs/rules/core/when.js.map +0 -1
- package/cjs/rules/date/date-comparison-rules.d.ts +0 -25
- package/cjs/rules/date/date-comparison-rules.d.ts.map +0 -1
- package/cjs/rules/date/date-comparison-rules.js +0 -80
- package/cjs/rules/date/date-comparison-rules.js.map +0 -1
- package/cjs/rules/date/date-day-rules.d.ts +0 -21
- package/cjs/rules/date/date-day-rules.d.ts.map +0 -1
- package/cjs/rules/date/date-day-rules.js +0 -68
- package/cjs/rules/date/date-day-rules.js.map +0 -1
- package/cjs/rules/date/date-field-comparison-rules.d.ts +0 -28
- package/cjs/rules/date/date-field-comparison-rules.d.ts.map +0 -1
- package/cjs/rules/date/date-field-comparison-rules.js +0 -94
- package/cjs/rules/date/date-field-comparison-rules.js.map +0 -1
- package/cjs/rules/date/date-period-rules.d.ts +0 -124
- package/cjs/rules/date/date-period-rules.d.ts.map +0 -1
- package/cjs/rules/date/date-period-rules.js +0 -605
- package/cjs/rules/date/date-period-rules.js.map +0 -1
- package/cjs/rules/date/date-relative-rules.d.ts +0 -20
- package/cjs/rules/date/date-relative-rules.d.ts.map +0 -1
- package/cjs/rules/date/date-relative-rules.js +0 -60
- package/cjs/rules/date/date-relative-rules.js.map +0 -1
- package/cjs/rules/date/date-special-rules.d.ts +0 -20
- package/cjs/rules/date/date-special-rules.d.ts.map +0 -1
- package/cjs/rules/date/date-special-rules.js +0 -71
- package/cjs/rules/date/date-special-rules.js.map +0 -1
- package/cjs/rules/date/date.d.ts +0 -93
- package/cjs/rules/date/date.d.ts.map +0 -1
- package/cjs/rules/date/date.js +0 -288
- package/cjs/rules/date/date.js.map +0 -1
- package/cjs/rules/date/index.d.ts +0 -8
- package/cjs/rules/date/index.d.ts.map +0 -1
- package/cjs/rules/file/dimensions.d.ts +0 -26
- package/cjs/rules/file/dimensions.d.ts.map +0 -1
- package/cjs/rules/file/dimensions.js +0 -60
- package/cjs/rules/file/dimensions.js.map +0 -1
- package/cjs/rules/file/file-size.d.ts +0 -14
- package/cjs/rules/file/file-size.d.ts.map +0 -1
- package/cjs/rules/file/file-size.js +0 -30
- package/cjs/rules/file/file-size.js.map +0 -1
- package/cjs/rules/file/index.d.ts +0 -11
- package/cjs/rules/file/index.d.ts.map +0 -1
- package/cjs/rules/index.d.ts +0 -19
- package/cjs/rules/index.d.ts.map +0 -1
- package/cjs/rules/length/index.d.ts +0 -2
- package/cjs/rules/length/index.d.ts.map +0 -1
- package/cjs/rules/length/length-rules.d.ts +0 -49
- package/cjs/rules/length/length-rules.d.ts.map +0 -1
- package/cjs/rules/length/length-rules.js +0 -107
- package/cjs/rules/length/length-rules.js.map +0 -1
- package/cjs/rules/number/index.d.ts +0 -2
- package/cjs/rules/number/index.d.ts.map +0 -1
- package/cjs/rules/number/number-rules.d.ts +0 -65
- package/cjs/rules/number/number-rules.d.ts.map +0 -1
- package/cjs/rules/number/number-rules.js +0 -245
- package/cjs/rules/number/number-rules.js.map +0 -1
- package/cjs/rules/scalar/accepted-rule.d.ts +0 -39
- package/cjs/rules/scalar/accepted-rule.d.ts.map +0 -1
- package/cjs/rules/scalar/accepted-rule.js +0 -117
- package/cjs/rules/scalar/accepted-rule.js.map +0 -1
- package/cjs/rules/scalar/declined-rule.d.ts +0 -39
- package/cjs/rules/scalar/declined-rule.d.ts.map +0 -1
- package/cjs/rules/scalar/declined-rule.js +0 -117
- package/cjs/rules/scalar/declined-rule.js.map +0 -1
- package/cjs/rules/scalar/index.d.ts +0 -3
- package/cjs/rules/scalar/index.d.ts.map +0 -1
- package/cjs/rules/string/alpha.d.ts +0 -14
- package/cjs/rules/string/alpha.d.ts.map +0 -1
- package/cjs/rules/string/alpha.js +0 -39
- package/cjs/rules/string/alpha.js.map +0 -1
- package/cjs/rules/string/credit-card.d.ts +0 -6
- package/cjs/rules/string/credit-card.d.ts.map +0 -1
- package/cjs/rules/string/credit-card.js +0 -31
- package/cjs/rules/string/credit-card.js.map +0 -1
- package/cjs/rules/string/email.d.ts +0 -6
- package/cjs/rules/string/email.d.ts.map +0 -1
- package/cjs/rules/string/email.js +0 -13
- package/cjs/rules/string/email.js.map +0 -1
- package/cjs/rules/string/index.d.ts +0 -17
- package/cjs/rules/string/index.d.ts.map +0 -1
- package/cjs/rules/string/ip.d.ts +0 -14
- package/cjs/rules/string/ip.d.ts.map +0 -1
- package/cjs/rules/string/ip.js +0 -39
- package/cjs/rules/string/ip.js.map +0 -1
- package/cjs/rules/string/matches.d.ts +0 -8
- package/cjs/rules/string/matches.d.ts.map +0 -1
- package/cjs/rules/string/matches.js +0 -15
- package/cjs/rules/string/matches.js.map +0 -1
- package/cjs/rules/string/pattern.d.ts +0 -8
- package/cjs/rules/string/pattern.d.ts.map +0 -1
- package/cjs/rules/string/pattern.js +0 -14
- package/cjs/rules/string/pattern.js.map +0 -1
- package/cjs/rules/string/string-comparison.d.ts +0 -26
- package/cjs/rules/string/string-comparison.d.ts.map +0 -1
- package/cjs/rules/string/string-comparison.js +0 -56
- package/cjs/rules/string/string-comparison.js.map +0 -1
- package/cjs/rules/string/strong-password-rule.d.ts +0 -14
- package/cjs/rules/string/strong-password-rule.d.ts.map +0 -1
- package/cjs/rules/string/strong-password-rule.js +0 -38
- package/cjs/rules/string/strong-password-rule.js.map +0 -1
- package/cjs/rules/string/url.d.ts +0 -6
- package/cjs/rules/string/url.d.ts.map +0 -1
- package/cjs/rules/string/url.js +0 -16
- package/cjs/rules/string/url.js.map +0 -1
- package/cjs/rules/string/without-whitespace.d.ts +0 -6
- package/cjs/rules/string/without-whitespace.d.ts.map +0 -1
- package/cjs/rules/string/without-whitespace.js +0 -13
- package/cjs/rules/string/without-whitespace.js.map +0 -1
- package/cjs/standard-schema/index.d.ts +0 -4
- package/cjs/standard-schema/index.d.ts.map +0 -1
- package/cjs/standard-schema/json-schema.d.ts +0 -61
- package/cjs/standard-schema/json-schema.d.ts.map +0 -1
- package/cjs/standard-schema/json-schema.js +0 -85
- package/cjs/standard-schema/json-schema.js.map +0 -1
- package/cjs/standard-schema/map-result.d.ts +0 -18
- package/cjs/standard-schema/map-result.d.ts.map +0 -1
- package/cjs/standard-schema/map-result.js +0 -27
- package/cjs/standard-schema/map-result.js.map +0 -1
- package/cjs/standard-schema/types.d.ts +0 -93
- package/cjs/standard-schema/types.d.ts.map +0 -1
- package/cjs/types/conditional-types.d.ts +0 -15
- package/cjs/types/conditional-types.d.ts.map +0 -1
- package/cjs/types/context-types.d.ts +0 -47
- package/cjs/types/context-types.d.ts.map +0 -1
- package/cjs/types/data-transformer-types.d.ts +0 -25
- package/cjs/types/data-transformer-types.d.ts.map +0 -1
- package/cjs/types/date-types.d.ts +0 -9
- package/cjs/types/date-types.d.ts.map +0 -1
- package/cjs/types/date-types.js +0 -12
- package/cjs/types/date-types.js.map +0 -1
- package/cjs/types/file.types.d.ts +0 -5
- package/cjs/types/file.types.d.ts.map +0 -1
- package/cjs/types/index.d.ts +0 -11
- package/cjs/types/index.d.ts.map +0 -1
- package/cjs/types/inference-types.d.ts +0 -32
- package/cjs/types/inference-types.d.ts.map +0 -1
- package/cjs/types/mutator-types.d.ts +0 -27
- package/cjs/types/mutator-types.d.ts.map +0 -1
- package/cjs/types/result-types.d.ts +0 -19
- package/cjs/types/result-types.d.ts.map +0 -1
- package/cjs/types/rule-types.d.ts +0 -58
- package/cjs/types/rule-types.d.ts.map +0 -1
- package/cjs/types/schema-types.d.ts +0 -6
- package/cjs/types/schema-types.d.ts.map +0 -1
- package/cjs/validators/any-validator.d.ts +0 -29
- package/cjs/validators/any-validator.d.ts.map +0 -1
- package/cjs/validators/any-validator.js +0 -31
- package/cjs/validators/any-validator.js.map +0 -1
- package/cjs/validators/array-validator.d.ts +0 -72
- package/cjs/validators/array-validator.d.ts.map +0 -1
- package/cjs/validators/array-validator.js +0 -162
- package/cjs/validators/array-validator.js.map +0 -1
- package/cjs/validators/base-validator.d.ts +0 -425
- package/cjs/validators/base-validator.d.ts.map +0 -1
- package/cjs/validators/base-validator.js +0 -637
- package/cjs/validators/base-validator.js.map +0 -1
- package/cjs/validators/boolean-validator.d.ts +0 -67
- package/cjs/validators/boolean-validator.d.ts.map +0 -1
- package/cjs/validators/boolean-validator.js +0 -105
- package/cjs/validators/boolean-validator.js.map +0 -1
- package/cjs/validators/computed-validator.d.ts +0 -75
- package/cjs/validators/computed-validator.d.ts.map +0 -1
- package/cjs/validators/computed-validator.js +0 -124
- package/cjs/validators/computed-validator.js.map +0 -1
- package/cjs/validators/date-validator.d.ts +0 -330
- package/cjs/validators/date-validator.d.ts.map +0 -1
- package/cjs/validators/date-validator.js +0 -614
- package/cjs/validators/date-validator.js.map +0 -1
- package/cjs/validators/float-validator.d.ts +0 -8
- package/cjs/validators/float-validator.d.ts.map +0 -1
- package/cjs/validators/float-validator.js +0 -9
- package/cjs/validators/float-validator.js.map +0 -1
- package/cjs/validators/index.d.ts +0 -31
- package/cjs/validators/index.d.ts.map +0 -1
- package/cjs/validators/int-validator.d.ts +0 -19
- package/cjs/validators/int-validator.d.ts.map +0 -1
- package/cjs/validators/int-validator.js +0 -21
- package/cjs/validators/int-validator.js.map +0 -1
- package/cjs/validators/managed-validator.d.ts +0 -38
- package/cjs/validators/managed-validator.d.ts.map +0 -1
- package/cjs/validators/managed-validator.js +0 -34
- package/cjs/validators/managed-validator.js.map +0 -1
- package/cjs/validators/methods/equality-conditional-methods.d.ts +0 -88
- package/cjs/validators/methods/equality-conditional-methods.d.ts.map +0 -1
- package/cjs/validators/methods/equality-conditional-methods.js +0 -118
- package/cjs/validators/methods/equality-conditional-methods.js.map +0 -1
- package/cjs/validators/methods/forbidden-methods.d.ts +0 -58
- package/cjs/validators/methods/forbidden-methods.d.ts.map +0 -1
- package/cjs/validators/methods/forbidden-methods.js +0 -122
- package/cjs/validators/methods/forbidden-methods.js.map +0 -1
- package/cjs/validators/methods/present-methods.d.ts +0 -102
- package/cjs/validators/methods/present-methods.d.ts.map +0 -1
- package/cjs/validators/methods/present-methods.js +0 -229
- package/cjs/validators/methods/present-methods.js.map +0 -1
- package/cjs/validators/methods/required-methods.d.ts +0 -174
- package/cjs/validators/methods/required-methods.d.ts.map +0 -1
- package/cjs/validators/methods/required-methods.js +0 -246
- package/cjs/validators/methods/required-methods.js.map +0 -1
- package/cjs/validators/number-validator.d.ts +0 -166
- package/cjs/validators/number-validator.d.ts.map +0 -1
- package/cjs/validators/number-validator.js +0 -307
- package/cjs/validators/number-validator.js.map +0 -1
- package/cjs/validators/numeric-validator.d.ts +0 -15
- package/cjs/validators/numeric-validator.d.ts.map +0 -1
- package/cjs/validators/numeric-validator.js +0 -18
- package/cjs/validators/numeric-validator.js.map +0 -1
- package/cjs/validators/object-validator.d.ts +0 -233
- package/cjs/validators/object-validator.d.ts.map +0 -1
- package/cjs/validators/object-validator.js +0 -517
- package/cjs/validators/object-validator.js.map +0 -1
- package/cjs/validators/primitive-validator.d.ts +0 -70
- package/cjs/validators/primitive-validator.d.ts.map +0 -1
- package/cjs/validators/primitive-validator.js +0 -80
- package/cjs/validators/primitive-validator.js.map +0 -1
- package/cjs/validators/record-validator.d.ts +0 -54
- package/cjs/validators/record-validator.d.ts.map +0 -1
- package/cjs/validators/record-validator.js +0 -100
- package/cjs/validators/record-validator.js.map +0 -1
- package/cjs/validators/scalar-validator.d.ts +0 -93
- package/cjs/validators/scalar-validator.d.ts.map +0 -1
- package/cjs/validators/scalar-validator.js +0 -149
- package/cjs/validators/scalar-validator.js.map +0 -1
- package/cjs/validators/string-validator.d.ts +0 -189
- package/cjs/validators/string-validator.d.ts.map +0 -1
- package/cjs/validators/string-validator.js +0 -387
- package/cjs/validators/string-validator.js.map +0 -1
- package/cjs/validators/tuple-validator.d.ts +0 -56
- package/cjs/validators/tuple-validator.d.ts.map +0 -1
- package/cjs/validators/tuple-validator.js +0 -121
- package/cjs/validators/tuple-validator.js.map +0 -1
- package/cjs/validators/union-validator.d.ts +0 -55
- package/cjs/validators/union-validator.d.ts.map +0 -1
- package/cjs/validators/union-validator.js +0 -60
- package/cjs/validators/union-validator.js.map +0 -1
- package/esm/config.d.ts +0 -48
- package/esm/config.d.ts.map +0 -1
- package/esm/config.js +0 -42
- package/esm/config.js.map +0 -1
- package/esm/factory/index.d.ts +0 -3
- package/esm/factory/index.d.ts.map +0 -1
- package/esm/factory/validate.d.ts +0 -8
- package/esm/factory/validate.d.ts.map +0 -1
- package/esm/factory/validate.js +0 -23
- package/esm/factory/validate.js.map +0 -1
- package/esm/factory/validators.d.ts +0 -56
- package/esm/factory/validators.d.ts.map +0 -1
- package/esm/factory/validators.js +0 -47
- package/esm/factory/validators.js.map +0 -1
- package/esm/helpers/date-helpers.d.ts +0 -16
- package/esm/helpers/date-helpers.d.ts.map +0 -1
- package/esm/helpers/date-helpers.js +0 -20
- package/esm/helpers/date-helpers.js.map +0 -1
- package/esm/helpers/file.utils.d.ts +0 -8
- package/esm/helpers/file.utils.d.ts.map +0 -1
- package/esm/helpers/file.utils.js +0 -29
- package/esm/helpers/file.utils.js.map +0 -1
- package/esm/helpers/get-field-value.d.ts +0 -37
- package/esm/helpers/get-field-value.d.ts.map +0 -1
- package/esm/helpers/get-field-value.js +0 -40
- package/esm/helpers/get-field-value.js.map +0 -1
- package/esm/helpers/index.d.ts +0 -6
- package/esm/helpers/index.d.ts.map +0 -1
- package/esm/helpers/is-empty-value.d.ts +0 -2
- package/esm/helpers/is-empty-value.d.ts.map +0 -1
- package/esm/helpers/is-empty-value.js +0 -3
- package/esm/helpers/is-empty-value.js.map +0 -1
- package/esm/helpers/path-helpers.d.ts +0 -5
- package/esm/helpers/path-helpers.d.ts.map +0 -1
- package/esm/helpers/path-helpers.js +0 -8
- package/esm/helpers/path-helpers.js.map +0 -1
- package/esm/helpers/validation-helpers.d.ts +0 -26
- package/esm/helpers/validation-helpers.d.ts.map +0 -1
- package/esm/helpers/validation-helpers.js +0 -74
- package/esm/helpers/validation-helpers.js.map +0 -1
- package/esm/index.d.ts +0 -30
- package/esm/index.d.ts.map +0 -1
- package/esm/index.js +0 -1
- package/esm/index.js.map +0 -1
- package/esm/mutators/array-mutators.d.ts +0 -12
- package/esm/mutators/array-mutators.d.ts.map +0 -1
- package/esm/mutators/array-mutators.js +0 -37
- package/esm/mutators/array-mutators.js.map +0 -1
- package/esm/mutators/date-mutators.d.ts +0 -39
- package/esm/mutators/date-mutators.d.ts.map +0 -1
- package/esm/mutators/date-mutators.js +0 -120
- package/esm/mutators/date-mutators.js.map +0 -1
- package/esm/mutators/index.d.ts +0 -7
- package/esm/mutators/index.d.ts.map +0 -1
- package/esm/mutators/number-mutators.d.ts +0 -22
- package/esm/mutators/number-mutators.d.ts.map +0 -1
- package/esm/mutators/number-mutators.js +0 -53
- package/esm/mutators/number-mutators.js.map +0 -1
- package/esm/mutators/object-mutators.d.ts +0 -8
- package/esm/mutators/object-mutators.d.ts.map +0 -1
- package/esm/mutators/object-mutators.js +0 -48
- package/esm/mutators/object-mutators.js.map +0 -1
- package/esm/mutators/scalar-mutators.d.ts +0 -3
- package/esm/mutators/scalar-mutators.d.ts.map +0 -1
- package/esm/mutators/scalar-mutators.js +0 -6
- package/esm/mutators/scalar-mutators.js.map +0 -1
- package/esm/mutators/string-mutators.d.ts +0 -72
- package/esm/mutators/string-mutators.d.ts.map +0 -1
- package/esm/mutators/string-mutators.js +0 -193
- package/esm/mutators/string-mutators.js.map +0 -1
- package/esm/plugins/index.d.ts +0 -7
- package/esm/plugins/index.d.ts.map +0 -1
- package/esm/plugins/plugin-system.d.ts +0 -71
- package/esm/plugins/plugin-system.d.ts.map +0 -1
- package/esm/plugins/plugin-system.js +0 -67
- package/esm/plugins/plugin-system.js.map +0 -1
- package/esm/rules/array/array-rules.d.ts +0 -12
- package/esm/rules/array/array-rules.d.ts.map +0 -1
- package/esm/rules/array/array-rules.js +0 -45
- package/esm/rules/array/array-rules.js.map +0 -1
- package/esm/rules/array/index.d.ts +0 -2
- package/esm/rules/array/index.d.ts.map +0 -1
- package/esm/rules/color/color-rules.d.ts +0 -30
- package/esm/rules/color/color-rules.d.ts.map +0 -1
- package/esm/rules/color/color-rules.js +0 -120
- package/esm/rules/color/color-rules.js.map +0 -1
- package/esm/rules/color/index.d.ts +0 -2
- package/esm/rules/color/index.d.ts.map +0 -1
- package/esm/rules/common/enum.d.ts +0 -26
- package/esm/rules/common/enum.d.ts.map +0 -1
- package/esm/rules/common/enum.js +0 -69
- package/esm/rules/common/enum.js.map +0 -1
- package/esm/rules/common/equals-field-rules.d.ts +0 -18
- package/esm/rules/common/equals-field-rules.d.ts.map +0 -1
- package/esm/rules/common/equals-field-rules.js +0 -39
- package/esm/rules/common/equals-field-rules.js.map +0 -1
- package/esm/rules/common/index.d.ts +0 -5
- package/esm/rules/common/index.d.ts.map +0 -1
- package/esm/rules/common/type-rules.d.ts +0 -38
- package/esm/rules/common/type-rules.d.ts.map +0 -1
- package/esm/rules/common/type-rules.js +0 -117
- package/esm/rules/common/type-rules.js.map +0 -1
- package/esm/rules/common/unknown-key.d.ts +0 -9
- package/esm/rules/common/unknown-key.d.ts.map +0 -1
- package/esm/rules/common/unknown-key.js +0 -17
- package/esm/rules/common/unknown-key.js.map +0 -1
- package/esm/rules/conditional/forbidden-if-rules.d.ts +0 -54
- package/esm/rules/conditional/forbidden-if-rules.d.ts.map +0 -1
- package/esm/rules/conditional/forbidden-if-rules.js +0 -118
- package/esm/rules/conditional/forbidden-if-rules.js.map +0 -1
- package/esm/rules/conditional/index.d.ts +0 -11
- package/esm/rules/conditional/index.d.ts.map +0 -1
- package/esm/rules/conditional/present-if-rules.d.ts +0 -45
- package/esm/rules/conditional/present-if-rules.d.ts.map +0 -1
- package/esm/rules/conditional/present-if-rules.js +0 -100
- package/esm/rules/conditional/present-if-rules.js.map +0 -1
- package/esm/rules/conditional/present-unless-rules.d.ts +0 -11
- package/esm/rules/conditional/present-unless-rules.d.ts.map +0 -1
- package/esm/rules/conditional/present-unless-rules.js +0 -22
- package/esm/rules/conditional/present-unless-rules.js.map +0 -1
- package/esm/rules/conditional/present-with-rules.d.ts +0 -26
- package/esm/rules/conditional/present-with-rules.d.ts.map +0 -1
- package/esm/rules/conditional/present-with-rules.js +0 -70
- package/esm/rules/conditional/present-with-rules.js.map +0 -1
- package/esm/rules/conditional/present-without-rules.d.ts +0 -26
- package/esm/rules/conditional/present-without-rules.d.ts.map +0 -1
- package/esm/rules/conditional/present-without-rules.js +0 -70
- package/esm/rules/conditional/present-without-rules.js.map +0 -1
- package/esm/rules/conditional/required-if-rules.d.ts +0 -77
- package/esm/rules/conditional/required-if-rules.d.ts.map +0 -1
- package/esm/rules/conditional/required-if-rules.js +0 -205
- package/esm/rules/conditional/required-if-rules.js.map +0 -1
- package/esm/rules/conditional/required-unless-rules.d.ts +0 -11
- package/esm/rules/conditional/required-unless-rules.d.ts.map +0 -1
- package/esm/rules/conditional/required-unless-rules.js +0 -22
- package/esm/rules/conditional/required-unless-rules.js.map +0 -1
- package/esm/rules/conditional/required-when-rule.d.ts +0 -18
- package/esm/rules/conditional/required-when-rule.d.ts.map +0 -1
- package/esm/rules/conditional/required-when-rule.js +0 -26
- package/esm/rules/conditional/required-when-rule.js.map +0 -1
- package/esm/rules/conditional/required-with-rules.d.ts +0 -26
- package/esm/rules/conditional/required-with-rules.d.ts.map +0 -1
- package/esm/rules/conditional/required-with-rules.js +0 -64
- package/esm/rules/conditional/required-with-rules.js.map +0 -1
- package/esm/rules/conditional/required-without-rules.d.ts +0 -26
- package/esm/rules/conditional/required-without-rules.d.ts.map +0 -1
- package/esm/rules/conditional/required-without-rules.js +0 -64
- package/esm/rules/conditional/required-without-rules.js.map +0 -1
- package/esm/rules/core/equal.d.ts +0 -8
- package/esm/rules/core/equal.d.ts.map +0 -1
- package/esm/rules/core/equal.js +0 -14
- package/esm/rules/core/equal.js.map +0 -1
- package/esm/rules/core/forbidden.d.ts +0 -6
- package/esm/rules/core/forbidden.d.ts.map +0 -1
- package/esm/rules/core/forbidden.js +0 -13
- package/esm/rules/core/forbidden.js.map +0 -1
- package/esm/rules/core/index.d.ts +0 -6
- package/esm/rules/core/index.d.ts.map +0 -1
- package/esm/rules/core/required.d.ts +0 -11
- package/esm/rules/core/required.d.ts.map +0 -1
- package/esm/rules/core/required.js +0 -31
- package/esm/rules/core/required.js.map +0 -1
- package/esm/rules/core/union.d.ts +0 -9
- package/esm/rules/core/union.d.ts.map +0 -1
- package/esm/rules/core/union.js +0 -40
- package/esm/rules/core/union.js.map +0 -1
- package/esm/rules/core/when.d.ts +0 -6
- package/esm/rules/core/when.d.ts.map +0 -1
- package/esm/rules/core/when.js +0 -40
- package/esm/rules/core/when.js.map +0 -1
- package/esm/rules/date/date-comparison-rules.d.ts +0 -25
- package/esm/rules/date/date-comparison-rules.d.ts.map +0 -1
- package/esm/rules/date/date-comparison-rules.js +0 -80
- package/esm/rules/date/date-comparison-rules.js.map +0 -1
- package/esm/rules/date/date-day-rules.d.ts +0 -21
- package/esm/rules/date/date-day-rules.d.ts.map +0 -1
- package/esm/rules/date/date-day-rules.js +0 -68
- package/esm/rules/date/date-day-rules.js.map +0 -1
- package/esm/rules/date/date-field-comparison-rules.d.ts +0 -28
- package/esm/rules/date/date-field-comparison-rules.d.ts.map +0 -1
- package/esm/rules/date/date-field-comparison-rules.js +0 -94
- package/esm/rules/date/date-field-comparison-rules.js.map +0 -1
- package/esm/rules/date/date-period-rules.d.ts +0 -124
- package/esm/rules/date/date-period-rules.d.ts.map +0 -1
- package/esm/rules/date/date-period-rules.js +0 -605
- package/esm/rules/date/date-period-rules.js.map +0 -1
- package/esm/rules/date/date-relative-rules.d.ts +0 -20
- package/esm/rules/date/date-relative-rules.d.ts.map +0 -1
- package/esm/rules/date/date-relative-rules.js +0 -60
- package/esm/rules/date/date-relative-rules.js.map +0 -1
- package/esm/rules/date/date-special-rules.d.ts +0 -20
- package/esm/rules/date/date-special-rules.d.ts.map +0 -1
- package/esm/rules/date/date-special-rules.js +0 -71
- package/esm/rules/date/date-special-rules.js.map +0 -1
- package/esm/rules/date/date.d.ts +0 -93
- package/esm/rules/date/date.d.ts.map +0 -1
- package/esm/rules/date/date.js +0 -288
- package/esm/rules/date/date.js.map +0 -1
- package/esm/rules/date/index.d.ts +0 -8
- package/esm/rules/date/index.d.ts.map +0 -1
- package/esm/rules/file/dimensions.d.ts +0 -26
- package/esm/rules/file/dimensions.d.ts.map +0 -1
- package/esm/rules/file/dimensions.js +0 -60
- package/esm/rules/file/dimensions.js.map +0 -1
- package/esm/rules/file/file-size.d.ts +0 -14
- package/esm/rules/file/file-size.d.ts.map +0 -1
- package/esm/rules/file/file-size.js +0 -30
- package/esm/rules/file/file-size.js.map +0 -1
- package/esm/rules/file/index.d.ts +0 -11
- package/esm/rules/file/index.d.ts.map +0 -1
- package/esm/rules/index.d.ts +0 -19
- package/esm/rules/index.d.ts.map +0 -1
- package/esm/rules/length/index.d.ts +0 -2
- package/esm/rules/length/index.d.ts.map +0 -1
- package/esm/rules/length/length-rules.d.ts +0 -49
- package/esm/rules/length/length-rules.d.ts.map +0 -1
- package/esm/rules/length/length-rules.js +0 -107
- package/esm/rules/length/length-rules.js.map +0 -1
- package/esm/rules/number/index.d.ts +0 -2
- package/esm/rules/number/index.d.ts.map +0 -1
- package/esm/rules/number/number-rules.d.ts +0 -65
- package/esm/rules/number/number-rules.d.ts.map +0 -1
- package/esm/rules/number/number-rules.js +0 -245
- package/esm/rules/number/number-rules.js.map +0 -1
- package/esm/rules/scalar/accepted-rule.d.ts +0 -39
- package/esm/rules/scalar/accepted-rule.d.ts.map +0 -1
- package/esm/rules/scalar/accepted-rule.js +0 -117
- package/esm/rules/scalar/accepted-rule.js.map +0 -1
- package/esm/rules/scalar/declined-rule.d.ts +0 -39
- package/esm/rules/scalar/declined-rule.d.ts.map +0 -1
- package/esm/rules/scalar/declined-rule.js +0 -117
- package/esm/rules/scalar/declined-rule.js.map +0 -1
- package/esm/rules/scalar/index.d.ts +0 -3
- package/esm/rules/scalar/index.d.ts.map +0 -1
- package/esm/rules/string/alpha.d.ts +0 -14
- package/esm/rules/string/alpha.d.ts.map +0 -1
- package/esm/rules/string/alpha.js +0 -39
- package/esm/rules/string/alpha.js.map +0 -1
- package/esm/rules/string/credit-card.d.ts +0 -6
- package/esm/rules/string/credit-card.d.ts.map +0 -1
- package/esm/rules/string/credit-card.js +0 -31
- package/esm/rules/string/credit-card.js.map +0 -1
- package/esm/rules/string/email.d.ts +0 -6
- package/esm/rules/string/email.d.ts.map +0 -1
- package/esm/rules/string/email.js +0 -13
- package/esm/rules/string/email.js.map +0 -1
- package/esm/rules/string/index.d.ts +0 -17
- package/esm/rules/string/index.d.ts.map +0 -1
- package/esm/rules/string/ip.d.ts +0 -14
- package/esm/rules/string/ip.d.ts.map +0 -1
- package/esm/rules/string/ip.js +0 -39
- package/esm/rules/string/ip.js.map +0 -1
- package/esm/rules/string/matches.d.ts +0 -8
- package/esm/rules/string/matches.d.ts.map +0 -1
- package/esm/rules/string/matches.js +0 -15
- package/esm/rules/string/matches.js.map +0 -1
- package/esm/rules/string/pattern.d.ts +0 -8
- package/esm/rules/string/pattern.d.ts.map +0 -1
- package/esm/rules/string/pattern.js +0 -14
- package/esm/rules/string/pattern.js.map +0 -1
- package/esm/rules/string/string-comparison.d.ts +0 -26
- package/esm/rules/string/string-comparison.d.ts.map +0 -1
- package/esm/rules/string/string-comparison.js +0 -56
- package/esm/rules/string/string-comparison.js.map +0 -1
- package/esm/rules/string/strong-password-rule.d.ts +0 -14
- package/esm/rules/string/strong-password-rule.d.ts.map +0 -1
- package/esm/rules/string/strong-password-rule.js +0 -38
- package/esm/rules/string/strong-password-rule.js.map +0 -1
- package/esm/rules/string/url.d.ts +0 -6
- package/esm/rules/string/url.d.ts.map +0 -1
- package/esm/rules/string/url.js +0 -16
- package/esm/rules/string/url.js.map +0 -1
- package/esm/rules/string/without-whitespace.d.ts +0 -6
- package/esm/rules/string/without-whitespace.d.ts.map +0 -1
- package/esm/rules/string/without-whitespace.js +0 -13
- package/esm/rules/string/without-whitespace.js.map +0 -1
- package/esm/standard-schema/index.d.ts +0 -4
- package/esm/standard-schema/index.d.ts.map +0 -1
- package/esm/standard-schema/json-schema.d.ts +0 -61
- package/esm/standard-schema/json-schema.d.ts.map +0 -1
- package/esm/standard-schema/json-schema.js +0 -85
- package/esm/standard-schema/json-schema.js.map +0 -1
- package/esm/standard-schema/map-result.d.ts +0 -18
- package/esm/standard-schema/map-result.d.ts.map +0 -1
- package/esm/standard-schema/map-result.js +0 -27
- package/esm/standard-schema/map-result.js.map +0 -1
- package/esm/standard-schema/types.d.ts +0 -93
- package/esm/standard-schema/types.d.ts.map +0 -1
- package/esm/types/conditional-types.d.ts +0 -15
- package/esm/types/conditional-types.d.ts.map +0 -1
- package/esm/types/context-types.d.ts +0 -47
- package/esm/types/context-types.d.ts.map +0 -1
- package/esm/types/data-transformer-types.d.ts +0 -25
- package/esm/types/data-transformer-types.d.ts.map +0 -1
- package/esm/types/date-types.d.ts +0 -9
- package/esm/types/date-types.d.ts.map +0 -1
- package/esm/types/date-types.js +0 -12
- package/esm/types/date-types.js.map +0 -1
- package/esm/types/file.types.d.ts +0 -5
- package/esm/types/file.types.d.ts.map +0 -1
- package/esm/types/index.d.ts +0 -11
- package/esm/types/index.d.ts.map +0 -1
- package/esm/types/inference-types.d.ts +0 -32
- package/esm/types/inference-types.d.ts.map +0 -1
- package/esm/types/mutator-types.d.ts +0 -27
- package/esm/types/mutator-types.d.ts.map +0 -1
- package/esm/types/result-types.d.ts +0 -19
- package/esm/types/result-types.d.ts.map +0 -1
- package/esm/types/rule-types.d.ts +0 -58
- package/esm/types/rule-types.d.ts.map +0 -1
- package/esm/types/schema-types.d.ts +0 -6
- package/esm/types/schema-types.d.ts.map +0 -1
- package/esm/validators/any-validator.d.ts +0 -29
- package/esm/validators/any-validator.d.ts.map +0 -1
- package/esm/validators/any-validator.js +0 -31
- package/esm/validators/any-validator.js.map +0 -1
- package/esm/validators/array-validator.d.ts +0 -72
- package/esm/validators/array-validator.d.ts.map +0 -1
- package/esm/validators/array-validator.js +0 -162
- package/esm/validators/array-validator.js.map +0 -1
- package/esm/validators/base-validator.d.ts +0 -425
- package/esm/validators/base-validator.d.ts.map +0 -1
- package/esm/validators/base-validator.js +0 -637
- package/esm/validators/base-validator.js.map +0 -1
- package/esm/validators/boolean-validator.d.ts +0 -67
- package/esm/validators/boolean-validator.d.ts.map +0 -1
- package/esm/validators/boolean-validator.js +0 -105
- package/esm/validators/boolean-validator.js.map +0 -1
- package/esm/validators/computed-validator.d.ts +0 -75
- package/esm/validators/computed-validator.d.ts.map +0 -1
- package/esm/validators/computed-validator.js +0 -124
- package/esm/validators/computed-validator.js.map +0 -1
- package/esm/validators/date-validator.d.ts +0 -330
- package/esm/validators/date-validator.d.ts.map +0 -1
- package/esm/validators/date-validator.js +0 -614
- package/esm/validators/date-validator.js.map +0 -1
- package/esm/validators/float-validator.d.ts +0 -8
- package/esm/validators/float-validator.d.ts.map +0 -1
- package/esm/validators/float-validator.js +0 -9
- package/esm/validators/float-validator.js.map +0 -1
- package/esm/validators/index.d.ts +0 -31
- package/esm/validators/index.d.ts.map +0 -1
- package/esm/validators/int-validator.d.ts +0 -19
- package/esm/validators/int-validator.d.ts.map +0 -1
- package/esm/validators/int-validator.js +0 -21
- package/esm/validators/int-validator.js.map +0 -1
- package/esm/validators/managed-validator.d.ts +0 -38
- package/esm/validators/managed-validator.d.ts.map +0 -1
- package/esm/validators/managed-validator.js +0 -34
- package/esm/validators/managed-validator.js.map +0 -1
- package/esm/validators/methods/equality-conditional-methods.d.ts +0 -88
- package/esm/validators/methods/equality-conditional-methods.d.ts.map +0 -1
- package/esm/validators/methods/equality-conditional-methods.js +0 -118
- package/esm/validators/methods/equality-conditional-methods.js.map +0 -1
- package/esm/validators/methods/forbidden-methods.d.ts +0 -58
- package/esm/validators/methods/forbidden-methods.d.ts.map +0 -1
- package/esm/validators/methods/forbidden-methods.js +0 -122
- package/esm/validators/methods/forbidden-methods.js.map +0 -1
- package/esm/validators/methods/present-methods.d.ts +0 -102
- package/esm/validators/methods/present-methods.d.ts.map +0 -1
- package/esm/validators/methods/present-methods.js +0 -229
- package/esm/validators/methods/present-methods.js.map +0 -1
- package/esm/validators/methods/required-methods.d.ts +0 -174
- package/esm/validators/methods/required-methods.d.ts.map +0 -1
- package/esm/validators/methods/required-methods.js +0 -246
- package/esm/validators/methods/required-methods.js.map +0 -1
- package/esm/validators/number-validator.d.ts +0 -166
- package/esm/validators/number-validator.d.ts.map +0 -1
- package/esm/validators/number-validator.js +0 -307
- package/esm/validators/number-validator.js.map +0 -1
- package/esm/validators/numeric-validator.d.ts +0 -15
- package/esm/validators/numeric-validator.d.ts.map +0 -1
- package/esm/validators/numeric-validator.js +0 -18
- package/esm/validators/numeric-validator.js.map +0 -1
- package/esm/validators/object-validator.d.ts +0 -233
- package/esm/validators/object-validator.d.ts.map +0 -1
- package/esm/validators/object-validator.js +0 -517
- package/esm/validators/object-validator.js.map +0 -1
- package/esm/validators/primitive-validator.d.ts +0 -70
- package/esm/validators/primitive-validator.d.ts.map +0 -1
- package/esm/validators/primitive-validator.js +0 -80
- package/esm/validators/primitive-validator.js.map +0 -1
- package/esm/validators/record-validator.d.ts +0 -54
- package/esm/validators/record-validator.d.ts.map +0 -1
- package/esm/validators/record-validator.js +0 -100
- package/esm/validators/record-validator.js.map +0 -1
- package/esm/validators/scalar-validator.d.ts +0 -93
- package/esm/validators/scalar-validator.d.ts.map +0 -1
- package/esm/validators/scalar-validator.js +0 -149
- package/esm/validators/scalar-validator.js.map +0 -1
- package/esm/validators/string-validator.d.ts +0 -189
- package/esm/validators/string-validator.d.ts.map +0 -1
- package/esm/validators/string-validator.js +0 -387
- package/esm/validators/string-validator.js.map +0 -1
- package/esm/validators/tuple-validator.d.ts +0 -56
- package/esm/validators/tuple-validator.d.ts.map +0 -1
- package/esm/validators/tuple-validator.js +0 -121
- package/esm/validators/tuple-validator.js.map +0 -1
- package/esm/validators/union-validator.d.ts +0 -55
- package/esm/validators/union-validator.d.ts.map +0 -1
- package/esm/validators/union-validator.js +0 -60
- package/esm/validators/union-validator.js.map +0 -1
|
@@ -0,0 +1,443 @@
|
|
|
1
|
+
import { applyNullable, getRuleOptions } from "../standard-schema/json-schema.mjs";
|
|
2
|
+
import { alphaOnlyMutator, alphanumericOnlyMutator, appendMutator, base64DecodeMutator, base64EncodeMutator, camelCaseMutator, capitalizeMutator, htmlEscapeMutator, kebabCaseMutator, lowercaseMutator, ltrimMutator, maskMutator, padEndMutator, padStartMutator, pascalCaseMutator, prependMutator, removeNumbersMutator, removeSpecialCharactersMutator, repeatMutator, replaceAllMutator, replaceMutator, reverseMutator, rtrimMutator, safeHtmlMutator, slugMutator, snakeCaseMutator, stringifyMutator, titleCaseMutator, trimMultipleWhitespaceMutator, trimMutator, truncateMutator, unescapeHtmlMutator, uppercaseMutator, urlDecodeMutator, urlEncodeMutator } from "../mutators/string-mutators.mjs";
|
|
3
|
+
import "../mutators/index.mjs";
|
|
4
|
+
import { alphaNumericRule, alphaRule, isNumericRule } from "../rules/string/alpha.mjs";
|
|
5
|
+
import { isCreditCardRule } from "../rules/string/credit-card.mjs";
|
|
6
|
+
import { emailRule } from "../rules/string/email.mjs";
|
|
7
|
+
import { cuidRule, nanoidRule, ulidRule, uuidRule } from "../rules/string/id-formats.mjs";
|
|
8
|
+
import { ip4Rule, ip6Rule, ipRule } from "../rules/string/ip.mjs";
|
|
9
|
+
import { patternRule } from "../rules/string/pattern.mjs";
|
|
10
|
+
import { containsRule, endsWithRule, notContainsRule, startsWithRule } from "../rules/string/string-comparison.mjs";
|
|
11
|
+
import { strongPasswordRule } from "../rules/string/strong-password-rule.mjs";
|
|
12
|
+
import { urlRule } from "../rules/string/url.mjs";
|
|
13
|
+
import { withoutWhitespaceRule } from "../rules/string/without-whitespace.mjs";
|
|
14
|
+
import { betweenLengthRule, lengthRule, maxLengthRule, maxWordsRule, minLengthRule, minWordsRule, wordsRule } from "../rules/length/length-rules.mjs";
|
|
15
|
+
import { colorRule, darkColorRule, hexColorRule, hslColorRule, lightColorRule, rgbColorRule, rgbaColorRule } from "../rules/color/color-rules.mjs";
|
|
16
|
+
import { stringRule } from "../rules/common/type-rules.mjs";
|
|
17
|
+
import "../rules/index.mjs";
|
|
18
|
+
import { PrimitiveValidator } from "./primitive-validator.mjs";
|
|
19
|
+
|
|
20
|
+
//#region ../../@warlock.js/seal/src/validators/string-validator.ts
|
|
21
|
+
/**
|
|
22
|
+
* String validator class
|
|
23
|
+
*/
|
|
24
|
+
var StringValidator = class extends PrimitiveValidator {
|
|
25
|
+
constructor(errorMessage) {
|
|
26
|
+
super();
|
|
27
|
+
this.addMutableRule(stringRule, errorMessage);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Check if value is a string type
|
|
31
|
+
*/
|
|
32
|
+
matchesType(value) {
|
|
33
|
+
return typeof value === "string";
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Stringify the value if not a string
|
|
37
|
+
*/
|
|
38
|
+
toString() {
|
|
39
|
+
return this.addMutator(stringifyMutator);
|
|
40
|
+
}
|
|
41
|
+
/** Convert string to uppercase */
|
|
42
|
+
uppercase() {
|
|
43
|
+
return this.addMutator(uppercaseMutator);
|
|
44
|
+
}
|
|
45
|
+
/** Convert string to lowercase */
|
|
46
|
+
lowercase() {
|
|
47
|
+
return this.addMutator(lowercaseMutator);
|
|
48
|
+
}
|
|
49
|
+
/** Capitalize only the first letter of the string */
|
|
50
|
+
capitalize() {
|
|
51
|
+
return this.addMutator(capitalizeMutator);
|
|
52
|
+
}
|
|
53
|
+
/** Capitalize the first letter of each word (Title Case) */
|
|
54
|
+
titleCase() {
|
|
55
|
+
return this.addMutator(titleCaseMutator);
|
|
56
|
+
}
|
|
57
|
+
/** Convert to camelCase */
|
|
58
|
+
camelCase() {
|
|
59
|
+
return this.addMutator(camelCaseMutator);
|
|
60
|
+
}
|
|
61
|
+
/** Convert to PascalCase */
|
|
62
|
+
pascalCase() {
|
|
63
|
+
return this.addMutator(pascalCaseMutator);
|
|
64
|
+
}
|
|
65
|
+
/** Convert to snake_case */
|
|
66
|
+
snakeCase() {
|
|
67
|
+
return this.addMutator(snakeCaseMutator);
|
|
68
|
+
}
|
|
69
|
+
/** Convert to kebab-case */
|
|
70
|
+
kebabCase() {
|
|
71
|
+
return this.addMutator(kebabCaseMutator);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Trim the given needle from the string
|
|
75
|
+
* If no needle is provided, the default is a single space
|
|
76
|
+
*/
|
|
77
|
+
trim(needle) {
|
|
78
|
+
return this.addMutator(trimMutator, { needle });
|
|
79
|
+
}
|
|
80
|
+
/** Trim from the left/start */
|
|
81
|
+
ltrim(needle) {
|
|
82
|
+
return this.addMutator(ltrimMutator, { needle });
|
|
83
|
+
}
|
|
84
|
+
/** Trim from the right/end */
|
|
85
|
+
rtrim(needle) {
|
|
86
|
+
return this.addMutator(rtrimMutator, { needle });
|
|
87
|
+
}
|
|
88
|
+
/** Trim multiple whitespace into single space */
|
|
89
|
+
trimMultipleWhitespace() {
|
|
90
|
+
return this.addMutator(trimMultipleWhitespaceMutator);
|
|
91
|
+
}
|
|
92
|
+
/** Pad string from the start to reach target length */
|
|
93
|
+
padStart(length, char = " ") {
|
|
94
|
+
return this.addMutator(padStartMutator, {
|
|
95
|
+
length,
|
|
96
|
+
char
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
/** Pad string from the end to reach target length */
|
|
100
|
+
padEnd(length, char = " ") {
|
|
101
|
+
return this.addMutator(padEndMutator, {
|
|
102
|
+
length,
|
|
103
|
+
char
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
/** Remove HTML tags (safe HTML) */
|
|
107
|
+
safeHtml() {
|
|
108
|
+
return this.addMutator(safeHtmlMutator);
|
|
109
|
+
}
|
|
110
|
+
/** HTML escape special characters */
|
|
111
|
+
htmlEscape() {
|
|
112
|
+
return this.addMutator(htmlEscapeMutator);
|
|
113
|
+
}
|
|
114
|
+
/** Unescape HTML entities */
|
|
115
|
+
unescapeHtml() {
|
|
116
|
+
return this.addMutator(unescapeHtmlMutator);
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Remove special characters
|
|
120
|
+
* This will remove all characters that are not alphanumeric or whitespace
|
|
121
|
+
*/
|
|
122
|
+
removeSpecialCharacters() {
|
|
123
|
+
return this.addMutator(removeSpecialCharactersMutator);
|
|
124
|
+
}
|
|
125
|
+
/** Convert to only alphabetic characters */
|
|
126
|
+
toAlpha() {
|
|
127
|
+
return this.addMutator(alphaOnlyMutator);
|
|
128
|
+
}
|
|
129
|
+
/** Convert to only alphanumeric characters */
|
|
130
|
+
toAlphanumeric() {
|
|
131
|
+
return this.addMutator(alphanumericOnlyMutator);
|
|
132
|
+
}
|
|
133
|
+
/** Remove all numeric characters */
|
|
134
|
+
removeNumbers() {
|
|
135
|
+
return this.addMutator(removeNumbersMutator);
|
|
136
|
+
}
|
|
137
|
+
/** URL decode */
|
|
138
|
+
urlDecode() {
|
|
139
|
+
return this.addMutator(urlDecodeMutator);
|
|
140
|
+
}
|
|
141
|
+
/** URL encode */
|
|
142
|
+
urlEncode() {
|
|
143
|
+
return this.addMutator(urlEncodeMutator);
|
|
144
|
+
}
|
|
145
|
+
/** Convert to URL-friendly slug */
|
|
146
|
+
slug() {
|
|
147
|
+
return this.addMutator(slugMutator);
|
|
148
|
+
}
|
|
149
|
+
/** Base64 encode */
|
|
150
|
+
base64Encode() {
|
|
151
|
+
return this.addMutator(base64EncodeMutator);
|
|
152
|
+
}
|
|
153
|
+
/** Base64 decode */
|
|
154
|
+
base64Decode() {
|
|
155
|
+
return this.addMutator(base64DecodeMutator);
|
|
156
|
+
}
|
|
157
|
+
/** Replace substring or pattern */
|
|
158
|
+
replace(search, replace) {
|
|
159
|
+
return this.addMutator(replaceMutator, {
|
|
160
|
+
search,
|
|
161
|
+
replace
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
/** Replace all occurrences of substring or pattern */
|
|
165
|
+
replaceAll(search, replace) {
|
|
166
|
+
return this.addMutator(replaceAllMutator, {
|
|
167
|
+
search,
|
|
168
|
+
replace
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
/** Append/suffix text to the end */
|
|
172
|
+
append(suffix) {
|
|
173
|
+
return this.addMutator(appendMutator, { suffix });
|
|
174
|
+
}
|
|
175
|
+
/** Prepend/prefix text to the beginning */
|
|
176
|
+
prepend(prefix) {
|
|
177
|
+
return this.addMutator(prependMutator, { prefix });
|
|
178
|
+
}
|
|
179
|
+
/** Reverse the string */
|
|
180
|
+
reverse() {
|
|
181
|
+
return this.addMutator(reverseMutator);
|
|
182
|
+
}
|
|
183
|
+
/** Truncate to a maximum length */
|
|
184
|
+
truncate(maxLength, suffix = "...") {
|
|
185
|
+
return this.addMutator(truncateMutator, {
|
|
186
|
+
maxLength,
|
|
187
|
+
suffix
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
/** Repeat string N times */
|
|
191
|
+
repeat(count) {
|
|
192
|
+
return this.addMutator(repeatMutator, { count });
|
|
193
|
+
}
|
|
194
|
+
/** Mask part of string */
|
|
195
|
+
mask(start, end, char = "*") {
|
|
196
|
+
return this.addMutator(maskMutator, {
|
|
197
|
+
start,
|
|
198
|
+
end,
|
|
199
|
+
char
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
/** Value must be a valid email */
|
|
203
|
+
email(errorMessage) {
|
|
204
|
+
return this.addRule(emailRule, errorMessage);
|
|
205
|
+
}
|
|
206
|
+
/** Value must be a valid URL */
|
|
207
|
+
url(errorMessage) {
|
|
208
|
+
return this.addRule(urlRule, errorMessage);
|
|
209
|
+
}
|
|
210
|
+
/** Value can not have whitespace */
|
|
211
|
+
withoutWhitespace(errorMessage) {
|
|
212
|
+
return this.addRule(withoutWhitespaceRule, errorMessage);
|
|
213
|
+
}
|
|
214
|
+
/** Value must match the given pattern */
|
|
215
|
+
pattern(pattern, errorMessage) {
|
|
216
|
+
return this.addRule(patternRule, errorMessage, { pattern });
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Value must be a strong password
|
|
220
|
+
* Requirements:
|
|
221
|
+
* - At least 8 characters
|
|
222
|
+
* - At least 1 uppercase letter
|
|
223
|
+
* - At least 1 lowercase letter
|
|
224
|
+
* - At least 1 number
|
|
225
|
+
* - At least 1 special character
|
|
226
|
+
*/
|
|
227
|
+
strongPassword(minLength, errorMessage) {
|
|
228
|
+
return this.addRule(strongPasswordRule, errorMessage, { minLength });
|
|
229
|
+
}
|
|
230
|
+
/** Value must be exactly the given number of words */
|
|
231
|
+
words(words, errorMessage) {
|
|
232
|
+
return this.addRule(wordsRule, errorMessage, { words });
|
|
233
|
+
}
|
|
234
|
+
/** Value must be at least the given number of words */
|
|
235
|
+
minWords(words, errorMessage) {
|
|
236
|
+
return this.addRule(minWordsRule, errorMessage, { minWords: words });
|
|
237
|
+
}
|
|
238
|
+
/** Value must be at most the given number of words */
|
|
239
|
+
maxWords(words, errorMessage) {
|
|
240
|
+
return this.addRule(maxWordsRule, errorMessage, { maxWords: words });
|
|
241
|
+
}
|
|
242
|
+
/** Value length must be greater than the given length */
|
|
243
|
+
minLength(length, errorMessage) {
|
|
244
|
+
return this.addRule(minLengthRule, errorMessage, { minLength: length });
|
|
245
|
+
}
|
|
246
|
+
/** @alias minLength */
|
|
247
|
+
min(min, errorMessage) {
|
|
248
|
+
return this.minLength(min, errorMessage);
|
|
249
|
+
}
|
|
250
|
+
/** Value length must be less than the given length */
|
|
251
|
+
maxLength(length, errorMessage) {
|
|
252
|
+
return this.addRule(maxLengthRule, errorMessage, { maxLength: length });
|
|
253
|
+
}
|
|
254
|
+
/** @alias maxLength */
|
|
255
|
+
max(max, errorMessage) {
|
|
256
|
+
return this.maxLength(max, errorMessage);
|
|
257
|
+
}
|
|
258
|
+
/** Value must be of the given length */
|
|
259
|
+
length(length, errorMessage) {
|
|
260
|
+
return this.addRule(lengthRule, errorMessage, { length });
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* String length must be between min and max (inclusive)
|
|
264
|
+
*
|
|
265
|
+
* @param min - Minimum length (inclusive)
|
|
266
|
+
* @param max - Maximum length (inclusive)
|
|
267
|
+
*
|
|
268
|
+
* @example
|
|
269
|
+
* ```ts
|
|
270
|
+
* v.string().between(5, 10) // Length: 5 to 10 characters
|
|
271
|
+
* v.string().lengthBetween(8, 20) // Same using alias
|
|
272
|
+
* ```
|
|
273
|
+
*
|
|
274
|
+
* @category Validation Rule
|
|
275
|
+
*/
|
|
276
|
+
lengthBetween(min, max, errorMessage) {
|
|
277
|
+
return this.addRule(betweenLengthRule, errorMessage, {
|
|
278
|
+
minLength: min,
|
|
279
|
+
maxLength: max
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
/** Allow only alphabetic characters */
|
|
283
|
+
alpha(errorMessage) {
|
|
284
|
+
return this.addRule(alphaRule, errorMessage);
|
|
285
|
+
}
|
|
286
|
+
/** Allow only alphanumeric characters */
|
|
287
|
+
alphanumeric(errorMessage) {
|
|
288
|
+
return this.addRule(alphaNumericRule, errorMessage);
|
|
289
|
+
}
|
|
290
|
+
/** Allow only numeric characters */
|
|
291
|
+
numeric(errorMessage) {
|
|
292
|
+
return this.addRule(isNumericRule, errorMessage);
|
|
293
|
+
}
|
|
294
|
+
/** Value must starts with the given string */
|
|
295
|
+
startsWith(value, errorMessage) {
|
|
296
|
+
return this.addRule(startsWithRule, errorMessage, { value });
|
|
297
|
+
}
|
|
298
|
+
/** Value must ends with the given string */
|
|
299
|
+
endsWith(value, errorMessage) {
|
|
300
|
+
return this.addRule(endsWithRule, errorMessage, { value });
|
|
301
|
+
}
|
|
302
|
+
/** Value must contain the given string */
|
|
303
|
+
contains(value, errorMessage) {
|
|
304
|
+
return this.addRule(containsRule, errorMessage, { value });
|
|
305
|
+
}
|
|
306
|
+
/** Value must not contain the given string */
|
|
307
|
+
notContains(value, errorMessage) {
|
|
308
|
+
return this.addRule(notContainsRule, errorMessage, { value });
|
|
309
|
+
}
|
|
310
|
+
/** Value must be a valid IP address */
|
|
311
|
+
ip(errorMessage) {
|
|
312
|
+
return this.addRule(ipRule, errorMessage);
|
|
313
|
+
}
|
|
314
|
+
/** Value must be a valid IPv4 address */
|
|
315
|
+
ip4(errorMessage) {
|
|
316
|
+
return this.addRule(ip4Rule, errorMessage);
|
|
317
|
+
}
|
|
318
|
+
/** Value must be a valid IPv6 address */
|
|
319
|
+
ip6(errorMessage) {
|
|
320
|
+
return this.addRule(ip6Rule, errorMessage);
|
|
321
|
+
}
|
|
322
|
+
/** Check if the string matches a credit card number */
|
|
323
|
+
creditCard(errorMessage) {
|
|
324
|
+
return this.addRule(isCreditCardRule, errorMessage);
|
|
325
|
+
}
|
|
326
|
+
/** Determine if the value is a valid color */
|
|
327
|
+
color(errorMessage) {
|
|
328
|
+
return this.addRule(colorRule, errorMessage);
|
|
329
|
+
}
|
|
330
|
+
/** Determine if the value is a valid hex color */
|
|
331
|
+
hexColor(errorMessage) {
|
|
332
|
+
return this.addRule(hexColorRule, errorMessage);
|
|
333
|
+
}
|
|
334
|
+
/** Determine if the value is a valid HSL color */
|
|
335
|
+
hslColor(errorMessage) {
|
|
336
|
+
return this.addRule(hslColorRule, errorMessage);
|
|
337
|
+
}
|
|
338
|
+
/** Determine if the value is a valid RGB color */
|
|
339
|
+
rgbColor(errorMessage) {
|
|
340
|
+
return this.addRule(rgbColorRule, errorMessage);
|
|
341
|
+
}
|
|
342
|
+
/** Determine if the value is a valid RGBA color */
|
|
343
|
+
rgbaColor(errorMessage) {
|
|
344
|
+
return this.addRule(rgbaColorRule, errorMessage);
|
|
345
|
+
}
|
|
346
|
+
/** Determine if the value is a valid light color */
|
|
347
|
+
lightColor(errorMessage) {
|
|
348
|
+
return this.addRule(lightColorRule, errorMessage);
|
|
349
|
+
}
|
|
350
|
+
/** Determine if the value is a valid dark color */
|
|
351
|
+
darkColor(errorMessage) {
|
|
352
|
+
return this.addRule(darkColorRule, errorMessage);
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* Value must be a valid UUID. Optionally restrict to a specific version.
|
|
356
|
+
*
|
|
357
|
+
* @example
|
|
358
|
+
* v.string().uuid() // any RFC 4122 UUID
|
|
359
|
+
* v.string().uuid(4) // only v4 (random)
|
|
360
|
+
* v.string().uuid(7) // only v7 (timestamp-ordered)
|
|
361
|
+
*/
|
|
362
|
+
uuid(version, errorMessage) {
|
|
363
|
+
return this.addRule(uuidRule, errorMessage, { version });
|
|
364
|
+
}
|
|
365
|
+
/**
|
|
366
|
+
* Value must be a valid CUID. Defaults to CUID2; pass `{ version: 1 }` for legacy.
|
|
367
|
+
*
|
|
368
|
+
* @example
|
|
369
|
+
* v.string().cuid() // CUID2
|
|
370
|
+
* v.string().cuid({ version: 1 }) // legacy CUID1
|
|
371
|
+
*/
|
|
372
|
+
cuid(options) {
|
|
373
|
+
const { errorMessage, version } = options ?? {};
|
|
374
|
+
return this.addRule(cuidRule, errorMessage, { version });
|
|
375
|
+
}
|
|
376
|
+
/** Value must be a valid ULID (26 chars, Crockford base32). */
|
|
377
|
+
ulid(errorMessage) {
|
|
378
|
+
return this.addRule(ulidRule, errorMessage);
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Value must be a valid nanoid string. Default length is 21.
|
|
382
|
+
*
|
|
383
|
+
* @example
|
|
384
|
+
* v.string().nanoid() // 21 chars (default)
|
|
385
|
+
* v.string().nanoid(10) // 10 chars
|
|
386
|
+
*/
|
|
387
|
+
nanoid(length, errorMessage) {
|
|
388
|
+
return this.addRule(nanoidRule, errorMessage, { length });
|
|
389
|
+
}
|
|
390
|
+
/**
|
|
391
|
+
* @inheritdoc
|
|
392
|
+
*
|
|
393
|
+
* Maps String-specific rule options to JSON Schema keywords.
|
|
394
|
+
* Non-representable rules (cross-field, refine, color rules, etc.) are silently omitted.
|
|
395
|
+
*
|
|
396
|
+
* @example
|
|
397
|
+
* ```ts
|
|
398
|
+
* v.string().min(2).max(100).email().toJsonSchema("draft-2020-12")
|
|
399
|
+
* // → { type: "string", minLength: 2, maxLength: 100, format: "email" }
|
|
400
|
+
* ```
|
|
401
|
+
*/
|
|
402
|
+
toJsonSchema(target = "draft-2020-12") {
|
|
403
|
+
const schema = { type: "string" };
|
|
404
|
+
const minOpts = getRuleOptions(this.rules, "minLength");
|
|
405
|
+
if (minOpts?.minLength !== void 0) schema.minLength = minOpts.minLength;
|
|
406
|
+
const maxOpts = getRuleOptions(this.rules, "maxLength");
|
|
407
|
+
if (maxOpts?.maxLength !== void 0) schema.maxLength = maxOpts.maxLength;
|
|
408
|
+
const betweenOpts = getRuleOptions(this.rules, "betweenLength");
|
|
409
|
+
if (betweenOpts) {
|
|
410
|
+
if (betweenOpts.minLength !== void 0) schema.minLength = betweenOpts.minLength;
|
|
411
|
+
if (betweenOpts.maxLength !== void 0) schema.maxLength = betweenOpts.maxLength;
|
|
412
|
+
}
|
|
413
|
+
const lengthOpts = getRuleOptions(this.rules, "length");
|
|
414
|
+
if (lengthOpts?.length !== void 0) {
|
|
415
|
+
schema.minLength = lengthOpts.length;
|
|
416
|
+
schema.maxLength = lengthOpts.length;
|
|
417
|
+
}
|
|
418
|
+
const patternOpts = getRuleOptions(this.rules, "pattern");
|
|
419
|
+
if (patternOpts?.pattern instanceof RegExp) schema.pattern = patternOpts.pattern.source;
|
|
420
|
+
if (getRuleOptions(this.rules, "email") !== void 0 || this.rules.some((r) => r.name === "email")) schema.format = "email";
|
|
421
|
+
else if (this.rules.some((r) => r.name === "url")) schema.format = "uri";
|
|
422
|
+
else if (this.rules.some((r) => r.name === "ip")) schema.format = "ipv4";
|
|
423
|
+
else if (this.rules.some((r) => r.name === "ip4")) schema.format = "ipv4";
|
|
424
|
+
else if (this.rules.some((r) => r.name === "ip6")) schema.format = "ipv6";
|
|
425
|
+
else if (this.rules.some((r) => r.name === "uuid")) schema.format = "uuid";
|
|
426
|
+
else if (this.rules.some((r) => r.name === "hexColor")) schema.format = "color";
|
|
427
|
+
if (!schema.format) {
|
|
428
|
+
const cuidOpts = getRuleOptions(this.rules, "cuid");
|
|
429
|
+
if (cuidOpts) schema.pattern = cuidOpts.version === 1 ? "^c[a-z0-9]{24,}$" : "^[a-z][a-z0-9]{23}$";
|
|
430
|
+
if (this.rules.some((r) => r.name === "ulid")) schema.pattern = "^[0-9A-HJKMNP-TV-Z]{26}$";
|
|
431
|
+
const nanoidOpts = getRuleOptions(this.rules, "nanoid");
|
|
432
|
+
if (nanoidOpts) schema.pattern = `^[A-Za-z0-9_-]{${nanoidOpts.length ?? 21}}$`;
|
|
433
|
+
}
|
|
434
|
+
const inOpts = getRuleOptions(this.rules, "in");
|
|
435
|
+
if (inOpts?.values && Array.isArray(inOpts.values)) schema.enum = inOpts.values;
|
|
436
|
+
if (this.isNullable) applyNullable(schema, target);
|
|
437
|
+
return schema;
|
|
438
|
+
}
|
|
439
|
+
};
|
|
440
|
+
|
|
441
|
+
//#endregion
|
|
442
|
+
export { StringValidator };
|
|
443
|
+
//# sourceMappingURL=string-validator.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string-validator.mjs","names":[],"sources":["../../../../../../@warlock.js/seal/src/validators/string-validator.ts"],"sourcesContent":["import {\r\n alphaOnlyMutator,\r\n alphanumericOnlyMutator,\r\n appendMutator,\r\n base64DecodeMutator,\r\n base64EncodeMutator,\r\n camelCaseMutator,\r\n capitalizeMutator,\r\n htmlEscapeMutator,\r\n kebabCaseMutator,\r\n lowercaseMutator,\r\n ltrimMutator,\r\n maskMutator,\r\n padEndMutator,\r\n padStartMutator,\r\n pascalCaseMutator,\r\n prependMutator,\r\n removeNumbersMutator,\r\n removeSpecialCharactersMutator,\r\n repeatMutator,\r\n replaceAllMutator,\r\n replaceMutator,\r\n reverseMutator,\r\n rtrimMutator,\r\n safeHtmlMutator,\r\n slugMutator,\r\n snakeCaseMutator,\r\n stringifyMutator,\r\n titleCaseMutator,\r\n trimMultipleWhitespaceMutator,\r\n trimMutator,\r\n truncateMutator,\r\n unescapeHtmlMutator,\r\n uppercaseMutator,\r\n urlDecodeMutator,\r\n urlEncodeMutator,\r\n} from \"../mutators\";\r\nimport {\r\n alphaNumericRule,\r\n alphaRule,\r\n betweenLengthRule,\r\n colorRule,\r\n containsRule,\r\n cuidRule,\r\n darkColorRule,\r\n emailRule,\r\n endsWithRule,\r\n hexColorRule,\r\n hslColorRule,\r\n ip4Rule,\r\n ip6Rule,\r\n ipRule,\r\n isCreditCardRule,\r\n isNumericRule,\r\n lengthRule,\r\n lightColorRule,\r\n maxLengthRule,\r\n maxWordsRule,\r\n minLengthRule,\r\n minWordsRule,\r\n nanoidRule,\r\n notContainsRule,\r\n patternRule,\r\n rgbColorRule,\r\n rgbaColorRule,\r\n startsWithRule,\r\n stringRule,\r\n strongPasswordRule,\r\n ulidRule,\r\n urlRule,\r\n uuidRule,\r\n withoutWhitespaceRule,\r\n wordsRule,\r\n type UUIDVersion,\r\n} from \"../rules\";\r\nimport { PrimitiveValidator } from \"./primitive-validator\";\r\nimport { applyNullable, getRuleOptions } from \"../standard-schema/json-schema\";\r\nimport type { JsonSchemaResult, JsonSchemaTarget } from \"../standard-schema/json-schema\";\r\n\r\n/**\r\n * String validator class\r\n */\r\nexport class StringValidator extends PrimitiveValidator {\r\n public constructor(errorMessage?: string) {\r\n super();\r\n this.addMutableRule(stringRule, errorMessage);\r\n }\r\n\r\n /**\r\n * Check if value is a string type\r\n */\r\n public matchesType(value: any): boolean {\r\n return typeof value === \"string\";\r\n }\r\n\r\n // ==================== Mutators ====================\r\n\r\n /**\r\n * Stringify the value if not a string\r\n */\r\n public toString() {\r\n return this.addMutator(stringifyMutator);\r\n }\r\n\r\n /** Convert string to uppercase */\r\n public uppercase() {\r\n return this.addMutator(uppercaseMutator);\r\n }\r\n\r\n /** Convert string to lowercase */\r\n public lowercase() {\r\n return this.addMutator(lowercaseMutator);\r\n }\r\n\r\n /** Capitalize only the first letter of the string */\r\n public capitalize() {\r\n return this.addMutator(capitalizeMutator);\r\n }\r\n\r\n /** Capitalize the first letter of each word (Title Case) */\r\n public titleCase() {\r\n return this.addMutator(titleCaseMutator);\r\n }\r\n\r\n /** Convert to camelCase */\r\n public camelCase() {\r\n return this.addMutator(camelCaseMutator);\r\n }\r\n\r\n /** Convert to PascalCase */\r\n public pascalCase() {\r\n return this.addMutator(pascalCaseMutator);\r\n }\r\n\r\n /** Convert to snake_case */\r\n public snakeCase() {\r\n return this.addMutator(snakeCaseMutator);\r\n }\r\n\r\n /** Convert to kebab-case */\r\n public kebabCase() {\r\n return this.addMutator(kebabCaseMutator);\r\n }\r\n\r\n /**\r\n * Trim the given needle from the string\r\n * If no needle is provided, the default is a single space\r\n */\r\n public trim(needle?: string) {\r\n return this.addMutator(trimMutator, { needle });\r\n }\r\n\r\n /** Trim from the left/start */\r\n public ltrim(needle?: string) {\r\n return this.addMutator(ltrimMutator, { needle });\r\n }\r\n\r\n /** Trim from the right/end */\r\n public rtrim(needle?: string) {\r\n return this.addMutator(rtrimMutator, { needle });\r\n }\r\n\r\n /** Trim multiple whitespace into single space */\r\n public trimMultipleWhitespace() {\r\n return this.addMutator(trimMultipleWhitespaceMutator);\r\n }\r\n\r\n /** Pad string from the start to reach target length */\r\n public padStart(length: number, char = \" \") {\r\n return this.addMutator(padStartMutator, { length, char });\r\n }\r\n\r\n /** Pad string from the end to reach target length */\r\n public padEnd(length: number, char = \" \") {\r\n return this.addMutator(padEndMutator, { length, char });\r\n }\r\n\r\n /** Remove HTML tags (safe HTML) */\r\n public safeHtml() {\r\n return this.addMutator(safeHtmlMutator);\r\n }\r\n\r\n /** HTML escape special characters */\r\n public htmlEscape() {\r\n return this.addMutator(htmlEscapeMutator);\r\n }\r\n\r\n /** Unescape HTML entities */\r\n public unescapeHtml() {\r\n return this.addMutator(unescapeHtmlMutator);\r\n }\r\n\r\n /**\r\n * Remove special characters\r\n * This will remove all characters that are not alphanumeric or whitespace\r\n */\r\n public removeSpecialCharacters() {\r\n return this.addMutator(removeSpecialCharactersMutator);\r\n }\r\n\r\n /** Convert to only alphabetic characters */\r\n public toAlpha() {\r\n return this.addMutator(alphaOnlyMutator);\r\n }\r\n\r\n /** Convert to only alphanumeric characters */\r\n public toAlphanumeric() {\r\n return this.addMutator(alphanumericOnlyMutator);\r\n }\r\n\r\n /** Remove all numeric characters */\r\n public removeNumbers() {\r\n return this.addMutator(removeNumbersMutator);\r\n }\r\n\r\n /** URL decode */\r\n public urlDecode() {\r\n return this.addMutator(urlDecodeMutator);\r\n }\r\n\r\n /** URL encode */\r\n public urlEncode() {\r\n return this.addMutator(urlEncodeMutator);\r\n }\r\n\r\n /** Convert to URL-friendly slug */\r\n public slug() {\r\n return this.addMutator(slugMutator);\r\n }\r\n\r\n /** Base64 encode */\r\n public base64Encode() {\r\n return this.addMutator(base64EncodeMutator);\r\n }\r\n\r\n /** Base64 decode */\r\n public base64Decode() {\r\n return this.addMutator(base64DecodeMutator);\r\n }\r\n\r\n /** Replace substring or pattern */\r\n public replace(search: string | RegExp, replace: string) {\r\n return this.addMutator(replaceMutator, { search, replace });\r\n }\r\n\r\n /** Replace all occurrences of substring or pattern */\r\n public replaceAll(search: string | RegExp, replace: string) {\r\n return this.addMutator(replaceAllMutator, { search, replace });\r\n }\r\n\r\n /** Append/suffix text to the end */\r\n public append(suffix: string) {\r\n return this.addMutator(appendMutator, { suffix });\r\n }\r\n\r\n /** Prepend/prefix text to the beginning */\r\n public prepend(prefix: string) {\r\n return this.addMutator(prependMutator, { prefix });\r\n }\r\n\r\n /** Reverse the string */\r\n public reverse() {\r\n return this.addMutator(reverseMutator);\r\n }\r\n\r\n /** Truncate to a maximum length */\r\n public truncate(maxLength: number, suffix = \"...\") {\r\n return this.addMutator(truncateMutator, { maxLength, suffix });\r\n }\r\n\r\n /** Repeat string N times */\r\n public repeat(count: number) {\r\n return this.addMutator(repeatMutator, { count });\r\n }\r\n\r\n /** Mask part of string */\r\n public mask(start: number, end?: number, char = \"*\") {\r\n return this.addMutator(maskMutator, { start, end, char });\r\n }\r\n\r\n // ==================== Validation Rules ====================\r\n\r\n /** Value must be a valid email */\r\n public email(errorMessage?: string) {\r\n return this.addRule(emailRule, errorMessage);\r\n }\r\n\r\n /** Value must be a valid URL */\r\n public url(errorMessage?: string) {\r\n return this.addRule(urlRule, errorMessage);\r\n }\r\n\r\n /** Value can not have whitespace */\r\n public withoutWhitespace(errorMessage?: string) {\r\n return this.addRule(withoutWhitespaceRule, errorMessage);\r\n }\r\n\r\n /** Value must match the given pattern */\r\n public pattern(pattern: RegExp, errorMessage?: string) {\r\n return this.addRule(patternRule, errorMessage, { pattern });\r\n }\r\n\r\n /**\r\n * Value must be a strong password\r\n * Requirements:\r\n * - At least 8 characters\r\n * - At least 1 uppercase letter\r\n * - At least 1 lowercase letter\r\n * - At least 1 number\r\n * - At least 1 special character\r\n */\r\n public strongPassword(minLength?: number, errorMessage?: string) {\r\n return this.addRule(strongPasswordRule, errorMessage, { minLength });\r\n }\r\n\r\n /** Value must be exactly the given number of words */\r\n public words(words: number, errorMessage?: string) {\r\n return this.addRule(wordsRule, errorMessage, { words });\r\n }\r\n\r\n /** Value must be at least the given number of words */\r\n public minWords(words: number, errorMessage?: string) {\r\n return this.addRule(minWordsRule, errorMessage, { minWords: words });\r\n }\r\n\r\n /** Value must be at most the given number of words */\r\n public maxWords(words: number, errorMessage?: string) {\r\n return this.addRule(maxWordsRule, errorMessage, { maxWords: words });\r\n }\r\n\r\n /** Value length must be greater than the given length */\r\n public minLength(length: number, errorMessage?: string) {\r\n return this.addRule(minLengthRule, errorMessage, { minLength: length });\r\n }\r\n\r\n /** @alias minLength */\r\n public min(min: number, errorMessage?: string) {\r\n return this.minLength(min, errorMessage);\r\n }\r\n\r\n /** Value length must be less than the given length */\r\n public maxLength(length: number, errorMessage?: string) {\r\n return this.addRule(maxLengthRule, errorMessage, { maxLength: length });\r\n }\r\n\r\n /** @alias maxLength */\r\n public max(max: number, errorMessage?: string) {\r\n return this.maxLength(max, errorMessage);\r\n }\r\n\r\n /** Value must be of the given length */\r\n public length(length: number, errorMessage?: string) {\r\n return this.addRule(lengthRule, errorMessage, { length });\r\n }\r\n\r\n /**\r\n * String length must be between min and max (inclusive)\r\n *\r\n * @param min - Minimum length (inclusive)\r\n * @param max - Maximum length (inclusive)\r\n *\r\n * @example\r\n * ```ts\r\n * v.string().between(5, 10) // Length: 5 to 10 characters\r\n * v.string().lengthBetween(8, 20) // Same using alias\r\n * ```\r\n *\r\n * @category Validation Rule\r\n */\r\n public lengthBetween(min: number, max: number, errorMessage?: string) {\r\n return this.addRule(betweenLengthRule, errorMessage, {\r\n minLength: min,\r\n maxLength: max,\r\n });\r\n }\r\n\r\n /** Allow only alphabetic characters */\r\n public alpha(errorMessage?: string) {\r\n return this.addRule(alphaRule, errorMessage);\r\n }\r\n\r\n /** Allow only alphanumeric characters */\r\n public alphanumeric(errorMessage?: string) {\r\n return this.addRule(alphaNumericRule, errorMessage);\r\n }\r\n\r\n /** Allow only numeric characters */\r\n public numeric(errorMessage?: string) {\r\n return this.addRule(isNumericRule, errorMessage);\r\n }\r\n\r\n /** Value must starts with the given string */\r\n public startsWith(value: string, errorMessage?: string) {\r\n return this.addRule(startsWithRule, errorMessage, { value });\r\n }\r\n\r\n /** Value must ends with the given string */\r\n public endsWith(value: string, errorMessage?: string) {\r\n return this.addRule(endsWithRule, errorMessage, { value });\r\n }\r\n\r\n /** Value must contain the given string */\r\n public contains(value: string, errorMessage?: string) {\r\n return this.addRule(containsRule, errorMessage, { value });\r\n }\r\n\r\n /** Value must not contain the given string */\r\n public notContains(value: string, errorMessage?: string) {\r\n return this.addRule(notContainsRule, errorMessage, { value });\r\n }\r\n\r\n /** Value must be a valid IP address */\r\n public ip(errorMessage?: string) {\r\n return this.addRule(ipRule, errorMessage);\r\n }\r\n\r\n /** Value must be a valid IPv4 address */\r\n public ip4(errorMessage?: string) {\r\n return this.addRule(ip4Rule, errorMessage);\r\n }\r\n\r\n /** Value must be a valid IPv6 address */\r\n public ip6(errorMessage?: string) {\r\n return this.addRule(ip6Rule, errorMessage);\r\n }\r\n\r\n /** Check if the string matches a credit card number */\r\n public creditCard(errorMessage?: string) {\r\n return this.addRule(isCreditCardRule, errorMessage);\r\n }\r\n\r\n /** Determine if the value is a valid color */\r\n public color(errorMessage?: string) {\r\n return this.addRule(colorRule, errorMessage);\r\n }\r\n\r\n /** Determine if the value is a valid hex color */\r\n public hexColor(errorMessage?: string) {\r\n return this.addRule(hexColorRule, errorMessage);\r\n }\r\n\r\n /** Determine if the value is a valid HSL color */\r\n public hslColor(errorMessage?: string) {\r\n return this.addRule(hslColorRule, errorMessage);\r\n }\r\n\r\n /** Determine if the value is a valid RGB color */\r\n public rgbColor(errorMessage?: string) {\r\n return this.addRule(rgbColorRule, errorMessage);\r\n }\r\n\r\n /** Determine if the value is a valid RGBA color */\r\n public rgbaColor(errorMessage?: string) {\r\n return this.addRule(rgbaColorRule, errorMessage);\r\n }\r\n\r\n /** Determine if the value is a valid light color */\r\n public lightColor(errorMessage?: string) {\r\n return this.addRule(lightColorRule, errorMessage);\r\n }\r\n\r\n /** Determine if the value is a valid dark color */\r\n public darkColor(errorMessage?: string) {\r\n return this.addRule(darkColorRule, errorMessage);\r\n }\r\n\r\n // ==================== ID Format Rules ====================\r\n\r\n /**\r\n * Value must be a valid UUID. Optionally restrict to a specific version.\r\n *\r\n * @example\r\n * v.string().uuid() // any RFC 4122 UUID\r\n * v.string().uuid(4) // only v4 (random)\r\n * v.string().uuid(7) // only v7 (timestamp-ordered)\r\n */\r\n public uuid(version?: UUIDVersion, errorMessage?: string) {\r\n return this.addRule(uuidRule, errorMessage, { version });\r\n }\r\n\r\n /**\r\n * Value must be a valid CUID. Defaults to CUID2; pass `{ version: 1 }` for legacy.\r\n *\r\n * @example\r\n * v.string().cuid() // CUID2\r\n * v.string().cuid({ version: 1 }) // legacy CUID1\r\n */\r\n public cuid(options?: { version?: 1 | 2; errorMessage?: string }) {\r\n const { errorMessage, version } = options ?? {};\r\n return this.addRule(cuidRule, errorMessage, { version });\r\n }\r\n\r\n /** Value must be a valid ULID (26 chars, Crockford base32). */\r\n public ulid(errorMessage?: string) {\r\n return this.addRule(ulidRule, errorMessage);\r\n }\r\n\r\n /**\r\n * Value must be a valid nanoid string. Default length is 21.\r\n *\r\n * @example\r\n * v.string().nanoid() // 21 chars (default)\r\n * v.string().nanoid(10) // 10 chars\r\n */\r\n public nanoid(length?: number, errorMessage?: string) {\r\n return this.addRule(nanoidRule, errorMessage, { length });\r\n }\r\n\r\n /**\r\n * @inheritdoc\r\n *\r\n * Maps String-specific rule options to JSON Schema keywords.\r\n * Non-representable rules (cross-field, refine, color rules, etc.) are silently omitted.\r\n *\r\n * @example\r\n * ```ts\r\n * v.string().min(2).max(100).email().toJsonSchema(\"draft-2020-12\")\r\n * // → { type: \"string\", minLength: 2, maxLength: 100, format: \"email\" }\r\n * ```\r\n */\r\n public override toJsonSchema(target: JsonSchemaTarget = \"draft-2020-12\"): JsonSchemaResult {\r\n const schema: JsonSchemaResult = { type: \"string\" };\r\n\r\n // minLength / min\r\n const minOpts = getRuleOptions(this.rules, \"minLength\");\r\n if (minOpts?.minLength !== undefined) schema.minLength = minOpts.minLength;\r\n\r\n // maxLength / max\r\n const maxOpts = getRuleOptions(this.rules, \"maxLength\");\r\n if (maxOpts?.maxLength !== undefined) schema.maxLength = maxOpts.maxLength;\r\n\r\n // betweenLength covers both min and max in one rule\r\n const betweenOpts = getRuleOptions(this.rules, \"betweenLength\");\r\n if (betweenOpts) {\r\n if (betweenOpts.minLength !== undefined) schema.minLength = betweenOpts.minLength;\r\n if (betweenOpts.maxLength !== undefined) schema.maxLength = betweenOpts.maxLength;\r\n }\r\n\r\n // exact length\r\n const lengthOpts = getRuleOptions(this.rules, \"length\");\r\n if (lengthOpts?.length !== undefined) {\r\n schema.minLength = lengthOpts.length;\r\n schema.maxLength = lengthOpts.length;\r\n }\r\n\r\n // pattern (regex)\r\n const patternOpts = getRuleOptions(this.rules, \"pattern\");\r\n if (patternOpts?.pattern instanceof RegExp) {\r\n schema.pattern = patternOpts.pattern.source;\r\n }\r\n\r\n // format hints\r\n if (getRuleOptions(this.rules, \"email\") !== undefined ||\r\n this.rules.some(r => r.name === \"email\")) {\r\n schema.format = \"email\";\r\n } else if (this.rules.some(r => r.name === \"url\")) {\r\n schema.format = \"uri\";\r\n } else if (this.rules.some(r => r.name === \"ip\")) {\r\n schema.format = \"ipv4\";\r\n } else if (this.rules.some(r => r.name === \"ip4\")) {\r\n schema.format = \"ipv4\";\r\n } else if (this.rules.some(r => r.name === \"ip6\")) {\r\n schema.format = \"ipv6\";\r\n } else if (this.rules.some(r => r.name === \"uuid\")) {\r\n schema.format = \"uuid\";\r\n } else if (this.rules.some(r => r.name === \"hexColor\")) {\r\n schema.format = \"color\";\r\n }\r\n\r\n // CUID / ULID / nanoid don't have widely-supported format keywords —\r\n // fall back to pattern so JSON Schema validators still enforce shape.\r\n if (!schema.format) {\r\n const cuidOpts = getRuleOptions(this.rules, \"cuid\");\r\n if (cuidOpts) {\r\n schema.pattern = cuidOpts.version === 1 ? \"^c[a-z0-9]{24,}$\" : \"^[a-z][a-z0-9]{23}$\";\r\n }\r\n if (this.rules.some(r => r.name === \"ulid\")) {\r\n schema.pattern = \"^[0-9A-HJKMNP-TV-Z]{26}$\";\r\n }\r\n const nanoidOpts = getRuleOptions(this.rules, \"nanoid\");\r\n if (nanoidOpts) {\r\n const len = (nanoidOpts.length as number | undefined) ?? 21;\r\n schema.pattern = `^[A-Za-z0-9_-]{${len}}$`;\r\n }\r\n }\r\n\r\n // enum (from PrimitiveValidator.in / .enum)\r\n const inOpts = getRuleOptions(this.rules, \"in\");\r\n if (inOpts?.values && Array.isArray(inOpts.values)) {\r\n schema.enum = inOpts.values;\r\n }\r\n\r\n if (this.isNullable) applyNullable(schema, target);\r\n\r\n return schema;\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { JsonSchemaResult, JsonSchemaTarget } from "../standard-schema/json-schema.mjs";
|
|
2
|
+
import { SchemaContext } from "../types/context-types.mjs";
|
|
3
|
+
import { ValidationResult } from "../types/result-types.mjs";
|
|
4
|
+
import { BaseValidator } from "./base-validator.mjs";
|
|
5
|
+
|
|
6
|
+
//#region ../../@warlock.js/seal/src/validators/tuple-validator.d.ts
|
|
7
|
+
/**
|
|
8
|
+
* Tuple validator class - validates fixed-length arrays with position-specific types
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* // RGB color tuple
|
|
13
|
+
* v.tuple([v.number(), v.number(), v.number()])
|
|
14
|
+
* // Valid: [255, 128, 0]
|
|
15
|
+
* // Invalid: [255, 128] (too short)
|
|
16
|
+
*
|
|
17
|
+
* // Mixed types
|
|
18
|
+
* v.tuple([v.string(), v.int(), v.boolean()])
|
|
19
|
+
* // Valid: ["John", 25, true]
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
declare class TupleValidator extends BaseValidator {
|
|
23
|
+
validators: BaseValidator[];
|
|
24
|
+
constructor(validators: BaseValidator[], errorMessage?: string);
|
|
25
|
+
/**
|
|
26
|
+
* Check if value is an array type
|
|
27
|
+
*/
|
|
28
|
+
matchesType(value: any): boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Clone the validator
|
|
31
|
+
*/
|
|
32
|
+
clone(): this;
|
|
33
|
+
/**
|
|
34
|
+
* Validate tuple - check length then validate each position
|
|
35
|
+
*
|
|
36
|
+
* Absent input (and absent without `.default()`) propagates as `data: undefined`
|
|
37
|
+
* so the parent ObjectValidator can omit the key. Without this, optional tuple
|
|
38
|
+
* fields would silently materialise as `[]` in the validated output and then
|
|
39
|
+
* fail the length check.
|
|
40
|
+
*/
|
|
41
|
+
validate(data: any, context: SchemaContext): Promise<ValidationResult>;
|
|
42
|
+
/**
|
|
43
|
+
* @inheritdoc
|
|
44
|
+
*
|
|
45
|
+
* Tuple keyword diverges between targets:
|
|
46
|
+
* - `draft-2020-12` → `prefixItems` + `items: false` (exact length enforced)
|
|
47
|
+
* - `draft-07` → `items` as array + `additionalItems: false`
|
|
48
|
+
* - `openapi-3.0` → same as draft-07 (OpenAPI 3.0 is based on draft-07)
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```ts
|
|
52
|
+
* v.tuple([v.string(), v.int(), v.boolean()]).toJsonSchema("draft-2020-12")
|
|
53
|
+
* // → {
|
|
54
|
+
* // type: "array",
|
|
55
|
+
* // prefixItems: [{ type: "string" }, { type: "integer" }, { type: "boolean" }],
|
|
56
|
+
* // items: false,
|
|
57
|
+
* // minItems: 3,
|
|
58
|
+
* // maxItems: 3
|
|
59
|
+
* // }
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
toJsonSchema(target?: JsonSchemaTarget): JsonSchemaResult;
|
|
63
|
+
}
|
|
64
|
+
//#endregion
|
|
65
|
+
export { TupleValidator };
|
|
66
|
+
//# sourceMappingURL=tuple-validator.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tuple-validator.d.mts","names":[],"sources":["../../../../../../@warlock.js/seal/src/validators/tuple-validator.ts"],"mappings":";;;;;;;;;AAsBA;;;;;;;;;;;;cAAa,cAAA,SAAuB,aAAA;EAEzB,UAAA,EAAY,aAAA;cAAZ,UAAA,EAAY,aAAA,IACnB,YAAA;EADmB;;;EAUd,WAAA,CAAY,KAAA;EATjB;;;EAgBc,KAAA,CAAA;EAcH;;;;;;;;EAAA,QAAA,CAAS,IAAA,OAAW,OAAA,EAAS,aAAA,GAAgB,OAAA,CAAQ,gBAAA;EAgFQ;;AAAgB;;;;;;;;;;;;;;;;;;EAA1E,YAAA,CAAa,MAAA,GAAQ,gBAAA,GAAqC,gBAAA;AAAA"}
|