@warlock.js/seal 4.0.162 → 4.0.164
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/config.d.ts +48 -0
- package/cjs/config.d.ts.map +1 -0
- package/cjs/config.js +42 -0
- package/cjs/config.js.map +1 -0
- package/cjs/factory/index.d.ts +3 -0
- package/cjs/factory/index.d.ts.map +1 -0
- package/cjs/factory/validate.d.ts +8 -0
- package/cjs/factory/validate.d.ts.map +1 -0
- package/cjs/factory/validate.js +23 -0
- package/cjs/factory/validate.js.map +1 -0
- package/cjs/factory/validators.d.ts +56 -0
- package/cjs/factory/validators.d.ts.map +1 -0
- package/cjs/factory/validators.js +45 -0
- package/cjs/factory/validators.js.map +1 -0
- package/cjs/helpers/date-helpers.d.ts +16 -0
- package/cjs/helpers/date-helpers.d.ts.map +1 -0
- package/cjs/helpers/date-helpers.js +20 -0
- package/cjs/helpers/date-helpers.js.map +1 -0
- package/cjs/helpers/file.utils.d.ts +8 -0
- package/cjs/helpers/file.utils.d.ts.map +1 -0
- package/cjs/helpers/file.utils.js +29 -0
- package/cjs/helpers/file.utils.js.map +1 -0
- package/cjs/helpers/get-field-value.d.ts +37 -0
- package/cjs/helpers/get-field-value.d.ts.map +1 -0
- package/cjs/helpers/get-field-value.js +40 -0
- package/cjs/helpers/get-field-value.js.map +1 -0
- package/cjs/helpers/index.d.ts +6 -0
- package/cjs/helpers/index.d.ts.map +1 -0
- package/cjs/helpers/is-empty-value.d.ts +2 -0
- package/cjs/helpers/is-empty-value.d.ts.map +1 -0
- package/cjs/helpers/is-empty-value.js +3 -0
- package/cjs/helpers/is-empty-value.js.map +1 -0
- package/cjs/helpers/path-helpers.d.ts +5 -0
- package/cjs/helpers/path-helpers.d.ts.map +1 -0
- package/cjs/helpers/path-helpers.js +8 -0
- package/cjs/helpers/path-helpers.js.map +1 -0
- package/cjs/helpers/validation-helpers.d.ts +26 -0
- package/cjs/helpers/validation-helpers.d.ts.map +1 -0
- package/cjs/helpers/validation-helpers.js +74 -0
- package/cjs/helpers/validation-helpers.js.map +1 -0
- package/cjs/index.d.ts +30 -0
- package/cjs/index.d.ts.map +1 -0
- package/cjs/index.js +1 -0
- package/cjs/index.js.map +1 -0
- package/cjs/mutators/array-mutators.d.ts +12 -0
- package/cjs/mutators/array-mutators.d.ts.map +1 -0
- package/cjs/mutators/array-mutators.js +37 -0
- package/cjs/mutators/array-mutators.js.map +1 -0
- package/cjs/mutators/date-mutators.d.ts +39 -0
- package/cjs/mutators/date-mutators.d.ts.map +1 -0
- package/cjs/mutators/date-mutators.js +120 -0
- package/cjs/mutators/date-mutators.js.map +1 -0
- package/cjs/mutators/index.d.ts +7 -0
- package/cjs/mutators/index.d.ts.map +1 -0
- package/cjs/mutators/number-mutators.d.ts +22 -0
- package/cjs/mutators/number-mutators.d.ts.map +1 -0
- package/cjs/mutators/number-mutators.js +53 -0
- package/cjs/mutators/number-mutators.js.map +1 -0
- package/cjs/mutators/object-mutators.d.ts +8 -0
- package/cjs/mutators/object-mutators.d.ts.map +1 -0
- package/cjs/mutators/object-mutators.js +48 -0
- package/cjs/mutators/object-mutators.js.map +1 -0
- package/cjs/mutators/scalar-mutators.d.ts +3 -0
- package/cjs/mutators/scalar-mutators.d.ts.map +1 -0
- package/cjs/mutators/scalar-mutators.js +6 -0
- package/cjs/mutators/scalar-mutators.js.map +1 -0
- package/cjs/mutators/string-mutators.d.ts +72 -0
- package/cjs/mutators/string-mutators.d.ts.map +1 -0
- package/cjs/mutators/string-mutators.js +193 -0
- package/cjs/mutators/string-mutators.js.map +1 -0
- package/cjs/plugins/index.d.ts +7 -0
- package/cjs/plugins/index.d.ts.map +1 -0
- package/cjs/plugins/plugin-system.d.ts +71 -0
- package/cjs/plugins/plugin-system.d.ts.map +1 -0
- package/cjs/plugins/plugin-system.js +67 -0
- package/cjs/plugins/plugin-system.js.map +1 -0
- package/cjs/rules/array/array-rules.d.ts +12 -0
- package/cjs/rules/array/array-rules.d.ts.map +1 -0
- package/cjs/rules/array/array-rules.js +45 -0
- package/cjs/rules/array/array-rules.js.map +1 -0
- package/cjs/rules/array/index.d.ts +2 -0
- package/cjs/rules/array/index.d.ts.map +1 -0
- package/cjs/rules/color/color-rules.d.ts +30 -0
- package/cjs/rules/color/color-rules.d.ts.map +1 -0
- package/cjs/rules/color/color-rules.js +120 -0
- package/cjs/rules/color/color-rules.js.map +1 -0
- package/cjs/rules/color/index.d.ts +2 -0
- package/cjs/rules/color/index.d.ts.map +1 -0
- package/cjs/rules/common/enum.d.ts +26 -0
- package/cjs/rules/common/enum.d.ts.map +1 -0
- package/cjs/rules/common/enum.js +69 -0
- package/cjs/rules/common/enum.js.map +1 -0
- package/cjs/rules/common/equals-field-rules.d.ts +18 -0
- package/cjs/rules/common/equals-field-rules.d.ts.map +1 -0
- package/cjs/rules/common/equals-field-rules.js +39 -0
- package/cjs/rules/common/equals-field-rules.js.map +1 -0
- package/cjs/rules/common/index.d.ts +5 -0
- package/cjs/rules/common/index.d.ts.map +1 -0
- package/cjs/rules/common/type-rules.d.ts +38 -0
- package/cjs/rules/common/type-rules.d.ts.map +1 -0
- package/cjs/rules/common/type-rules.js +117 -0
- package/cjs/rules/common/type-rules.js.map +1 -0
- package/cjs/rules/common/unknown-key.d.ts +9 -0
- package/cjs/rules/common/unknown-key.d.ts.map +1 -0
- package/cjs/rules/common/unknown-key.js +17 -0
- package/cjs/rules/common/unknown-key.js.map +1 -0
- package/cjs/rules/conditional/forbidden-if-rules.d.ts +54 -0
- package/cjs/rules/conditional/forbidden-if-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/forbidden-if-rules.js +118 -0
- package/cjs/rules/conditional/forbidden-if-rules.js.map +1 -0
- package/cjs/rules/conditional/index.d.ts +11 -0
- package/cjs/rules/conditional/index.d.ts.map +1 -0
- package/cjs/rules/conditional/present-if-rules.d.ts +45 -0
- package/cjs/rules/conditional/present-if-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/present-if-rules.js +100 -0
- package/cjs/rules/conditional/present-if-rules.js.map +1 -0
- package/cjs/rules/conditional/present-unless-rules.d.ts +11 -0
- package/cjs/rules/conditional/present-unless-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/present-unless-rules.js +22 -0
- package/cjs/rules/conditional/present-unless-rules.js.map +1 -0
- package/cjs/rules/conditional/present-with-rules.d.ts +26 -0
- package/cjs/rules/conditional/present-with-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/present-with-rules.js +70 -0
- package/cjs/rules/conditional/present-with-rules.js.map +1 -0
- package/cjs/rules/conditional/present-without-rules.d.ts +26 -0
- package/cjs/rules/conditional/present-without-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/present-without-rules.js +70 -0
- package/cjs/rules/conditional/present-without-rules.js.map +1 -0
- package/cjs/rules/conditional/required-if-rules.d.ts +77 -0
- package/cjs/rules/conditional/required-if-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/required-if-rules.js +205 -0
- package/cjs/rules/conditional/required-if-rules.js.map +1 -0
- package/cjs/rules/conditional/required-unless-rules.d.ts +11 -0
- package/cjs/rules/conditional/required-unless-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/required-unless-rules.js +22 -0
- package/cjs/rules/conditional/required-unless-rules.js.map +1 -0
- package/cjs/rules/conditional/required-when-rule.d.ts +18 -0
- package/cjs/rules/conditional/required-when-rule.d.ts.map +1 -0
- package/cjs/rules/conditional/required-when-rule.js +26 -0
- package/cjs/rules/conditional/required-when-rule.js.map +1 -0
- package/cjs/rules/conditional/required-with-rules.d.ts +26 -0
- package/cjs/rules/conditional/required-with-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/required-with-rules.js +64 -0
- package/cjs/rules/conditional/required-with-rules.js.map +1 -0
- package/cjs/rules/conditional/required-without-rules.d.ts +26 -0
- package/cjs/rules/conditional/required-without-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/required-without-rules.js +64 -0
- package/cjs/rules/conditional/required-without-rules.js.map +1 -0
- package/cjs/rules/core/equal.d.ts +8 -0
- package/cjs/rules/core/equal.d.ts.map +1 -0
- package/cjs/rules/core/equal.js +14 -0
- package/cjs/rules/core/equal.js.map +1 -0
- package/cjs/rules/core/forbidden.d.ts +6 -0
- package/cjs/rules/core/forbidden.d.ts.map +1 -0
- package/cjs/rules/core/forbidden.js +13 -0
- package/cjs/rules/core/forbidden.js.map +1 -0
- package/cjs/rules/core/index.d.ts +6 -0
- package/cjs/rules/core/index.d.ts.map +1 -0
- package/cjs/rules/core/required.d.ts +11 -0
- package/cjs/rules/core/required.d.ts.map +1 -0
- package/cjs/rules/core/required.js +31 -0
- package/cjs/rules/core/required.js.map +1 -0
- package/cjs/rules/core/union.d.ts +9 -0
- package/cjs/rules/core/union.d.ts.map +1 -0
- package/cjs/rules/core/union.js +40 -0
- package/cjs/rules/core/union.js.map +1 -0
- package/cjs/rules/core/when.d.ts +6 -0
- package/cjs/rules/core/when.d.ts.map +1 -0
- package/cjs/rules/core/when.js +40 -0
- package/cjs/rules/core/when.js.map +1 -0
- package/cjs/rules/date/date-comparison-rules.d.ts +25 -0
- package/cjs/rules/date/date-comparison-rules.d.ts.map +1 -0
- package/cjs/rules/date/date-comparison-rules.js +80 -0
- package/cjs/rules/date/date-comparison-rules.js.map +1 -0
- package/cjs/rules/date/date-day-rules.d.ts +21 -0
- package/cjs/rules/date/date-day-rules.d.ts.map +1 -0
- package/cjs/rules/date/date-day-rules.js +68 -0
- package/cjs/rules/date/date-day-rules.js.map +1 -0
- package/cjs/rules/date/date-field-comparison-rules.d.ts +28 -0
- package/cjs/rules/date/date-field-comparison-rules.d.ts.map +1 -0
- package/cjs/rules/date/date-field-comparison-rules.js +94 -0
- package/cjs/rules/date/date-field-comparison-rules.js.map +1 -0
- package/cjs/rules/date/date-period-rules.d.ts +124 -0
- package/cjs/rules/date/date-period-rules.d.ts.map +1 -0
- package/cjs/rules/date/date-period-rules.js +605 -0
- package/cjs/rules/date/date-period-rules.js.map +1 -0
- package/cjs/rules/date/date-relative-rules.d.ts +20 -0
- package/cjs/rules/date/date-relative-rules.d.ts.map +1 -0
- package/cjs/rules/date/date-relative-rules.js +60 -0
- package/cjs/rules/date/date-relative-rules.js.map +1 -0
- package/cjs/rules/date/date-special-rules.d.ts +20 -0
- package/cjs/rules/date/date-special-rules.d.ts.map +1 -0
- package/cjs/rules/date/date-special-rules.js +71 -0
- package/cjs/rules/date/date-special-rules.js.map +1 -0
- package/cjs/rules/date/date.d.ts +93 -0
- package/cjs/rules/date/date.d.ts.map +1 -0
- package/cjs/rules/date/date.js +288 -0
- package/cjs/rules/date/date.js.map +1 -0
- package/cjs/rules/date/index.d.ts +8 -0
- package/cjs/rules/date/index.d.ts.map +1 -0
- package/cjs/rules/file/dimensions.d.ts +26 -0
- package/cjs/rules/file/dimensions.d.ts.map +1 -0
- package/cjs/rules/file/dimensions.js +60 -0
- package/cjs/rules/file/dimensions.js.map +1 -0
- package/cjs/rules/file/file-size.d.ts +14 -0
- package/cjs/rules/file/file-size.d.ts.map +1 -0
- package/cjs/rules/file/file-size.js +30 -0
- package/cjs/rules/file/file-size.js.map +1 -0
- package/cjs/rules/file/index.d.ts +11 -0
- package/cjs/rules/file/index.d.ts.map +1 -0
- package/cjs/rules/index.d.ts +19 -0
- package/cjs/rules/index.d.ts.map +1 -0
- package/cjs/rules/length/index.d.ts +2 -0
- package/cjs/rules/length/index.d.ts.map +1 -0
- package/cjs/rules/length/length-rules.d.ts +49 -0
- package/cjs/rules/length/length-rules.d.ts.map +1 -0
- package/cjs/rules/length/length-rules.js +107 -0
- package/cjs/rules/length/length-rules.js.map +1 -0
- package/cjs/rules/number/index.d.ts +2 -0
- package/cjs/rules/number/index.d.ts.map +1 -0
- package/cjs/rules/number/number-rules.d.ts +65 -0
- package/cjs/rules/number/number-rules.d.ts.map +1 -0
- package/cjs/rules/number/number-rules.js +245 -0
- package/cjs/rules/number/number-rules.js.map +1 -0
- package/cjs/rules/scalar/accepted-rule.d.ts +39 -0
- package/cjs/rules/scalar/accepted-rule.d.ts.map +1 -0
- package/cjs/rules/scalar/accepted-rule.js +117 -0
- package/cjs/rules/scalar/accepted-rule.js.map +1 -0
- package/cjs/rules/scalar/declined-rule.d.ts +39 -0
- package/cjs/rules/scalar/declined-rule.d.ts.map +1 -0
- package/cjs/rules/scalar/declined-rule.js +117 -0
- package/cjs/rules/scalar/declined-rule.js.map +1 -0
- package/cjs/rules/scalar/index.d.ts +3 -0
- package/cjs/rules/scalar/index.d.ts.map +1 -0
- package/cjs/rules/string/alpha.d.ts +14 -0
- package/cjs/rules/string/alpha.d.ts.map +1 -0
- package/cjs/rules/string/alpha.js +39 -0
- package/cjs/rules/string/alpha.js.map +1 -0
- package/cjs/rules/string/credit-card.d.ts +6 -0
- package/cjs/rules/string/credit-card.d.ts.map +1 -0
- package/cjs/rules/string/credit-card.js +31 -0
- package/cjs/rules/string/credit-card.js.map +1 -0
- package/cjs/rules/string/email.d.ts +6 -0
- package/cjs/rules/string/email.d.ts.map +1 -0
- package/cjs/rules/string/email.js +13 -0
- package/cjs/rules/string/email.js.map +1 -0
- package/cjs/rules/string/index.d.ts +17 -0
- package/cjs/rules/string/index.d.ts.map +1 -0
- package/cjs/rules/string/ip.d.ts +14 -0
- package/cjs/rules/string/ip.d.ts.map +1 -0
- package/cjs/rules/string/ip.js +39 -0
- package/cjs/rules/string/ip.js.map +1 -0
- package/cjs/rules/string/matches.d.ts +8 -0
- package/cjs/rules/string/matches.d.ts.map +1 -0
- package/cjs/rules/string/matches.js +15 -0
- package/cjs/rules/string/matches.js.map +1 -0
- package/cjs/rules/string/pattern.d.ts +8 -0
- package/cjs/rules/string/pattern.d.ts.map +1 -0
- package/cjs/rules/string/pattern.js +14 -0
- package/cjs/rules/string/pattern.js.map +1 -0
- package/cjs/rules/string/string-comparison.d.ts +26 -0
- package/cjs/rules/string/string-comparison.d.ts.map +1 -0
- package/cjs/rules/string/string-comparison.js +56 -0
- package/cjs/rules/string/string-comparison.js.map +1 -0
- package/cjs/rules/string/strong-password-rule.d.ts +14 -0
- package/cjs/rules/string/strong-password-rule.d.ts.map +1 -0
- package/cjs/rules/string/strong-password-rule.js +38 -0
- package/cjs/rules/string/strong-password-rule.js.map +1 -0
- package/cjs/rules/string/url.d.ts +6 -0
- package/cjs/rules/string/url.d.ts.map +1 -0
- package/cjs/rules/string/url.js +16 -0
- package/cjs/rules/string/url.js.map +1 -0
- package/cjs/rules/string/without-whitespace.d.ts +6 -0
- package/cjs/rules/string/without-whitespace.d.ts.map +1 -0
- package/cjs/rules/string/without-whitespace.js +13 -0
- package/cjs/rules/string/without-whitespace.js.map +1 -0
- package/cjs/standard-schema/index.d.ts +4 -0
- package/cjs/standard-schema/index.d.ts.map +1 -0
- package/cjs/standard-schema/json-schema.d.ts +61 -0
- package/cjs/standard-schema/json-schema.d.ts.map +1 -0
- package/cjs/standard-schema/json-schema.js +85 -0
- package/cjs/standard-schema/json-schema.js.map +1 -0
- package/cjs/standard-schema/map-result.d.ts +18 -0
- package/cjs/standard-schema/map-result.d.ts.map +1 -0
- package/cjs/standard-schema/map-result.js +27 -0
- package/cjs/standard-schema/map-result.js.map +1 -0
- package/cjs/standard-schema/types.d.ts +93 -0
- package/cjs/standard-schema/types.d.ts.map +1 -0
- package/cjs/types/conditional-types.d.ts +15 -0
- package/cjs/types/conditional-types.d.ts.map +1 -0
- package/cjs/types/context-types.d.ts +47 -0
- package/cjs/types/context-types.d.ts.map +1 -0
- package/cjs/types/data-transformer-types.d.ts +25 -0
- package/cjs/types/data-transformer-types.d.ts.map +1 -0
- package/cjs/types/date-types.d.ts +9 -0
- package/cjs/types/date-types.d.ts.map +1 -0
- package/cjs/types/date-types.js +12 -0
- package/cjs/types/date-types.js.map +1 -0
- package/cjs/types/file.types.d.ts +5 -0
- package/cjs/types/file.types.d.ts.map +1 -0
- package/cjs/types/index.d.ts +11 -0
- package/cjs/types/index.d.ts.map +1 -0
- package/cjs/types/inference-types.d.ts +32 -0
- package/cjs/types/inference-types.d.ts.map +1 -0
- package/cjs/types/mutator-types.d.ts +27 -0
- package/cjs/types/mutator-types.d.ts.map +1 -0
- package/cjs/types/result-types.d.ts +19 -0
- package/cjs/types/result-types.d.ts.map +1 -0
- package/cjs/types/rule-types.d.ts +58 -0
- package/cjs/types/rule-types.d.ts.map +1 -0
- package/cjs/types/schema-types.d.ts +6 -0
- package/cjs/types/schema-types.d.ts.map +1 -0
- package/cjs/validators/any-validator.d.ts +29 -0
- package/cjs/validators/any-validator.d.ts.map +1 -0
- package/cjs/validators/any-validator.js +31 -0
- package/cjs/validators/any-validator.js.map +1 -0
- package/cjs/validators/array-validator.d.ts +72 -0
- package/cjs/validators/array-validator.d.ts.map +1 -0
- package/cjs/validators/array-validator.js +162 -0
- package/cjs/validators/array-validator.js.map +1 -0
- package/cjs/validators/base-validator.d.ts +425 -0
- package/cjs/validators/base-validator.d.ts.map +1 -0
- package/cjs/validators/base-validator.js +637 -0
- package/cjs/validators/base-validator.js.map +1 -0
- package/cjs/validators/boolean-validator.d.ts +67 -0
- package/cjs/validators/boolean-validator.d.ts.map +1 -0
- package/cjs/validators/boolean-validator.js +105 -0
- package/cjs/validators/boolean-validator.js.map +1 -0
- package/cjs/validators/computed-validator.d.ts +75 -0
- package/cjs/validators/computed-validator.d.ts.map +1 -0
- package/cjs/validators/computed-validator.js +124 -0
- package/cjs/validators/computed-validator.js.map +1 -0
- package/cjs/validators/date-validator.d.ts +330 -0
- package/cjs/validators/date-validator.d.ts.map +1 -0
- package/cjs/validators/date-validator.js +614 -0
- package/cjs/validators/date-validator.js.map +1 -0
- package/cjs/validators/float-validator.d.ts +8 -0
- package/cjs/validators/float-validator.d.ts.map +1 -0
- package/cjs/validators/float-validator.js +9 -0
- package/cjs/validators/float-validator.js.map +1 -0
- package/cjs/validators/index.d.ts +31 -0
- package/cjs/validators/index.d.ts.map +1 -0
- package/cjs/validators/int-validator.d.ts +19 -0
- package/cjs/validators/int-validator.d.ts.map +1 -0
- package/cjs/validators/int-validator.js +21 -0
- package/cjs/validators/int-validator.js.map +1 -0
- package/cjs/validators/managed-validator.d.ts +38 -0
- package/cjs/validators/managed-validator.d.ts.map +1 -0
- package/cjs/validators/managed-validator.js +34 -0
- package/cjs/validators/managed-validator.js.map +1 -0
- package/cjs/validators/methods/equality-conditional-methods.d.ts +88 -0
- package/cjs/validators/methods/equality-conditional-methods.d.ts.map +1 -0
- package/cjs/validators/methods/equality-conditional-methods.js +118 -0
- package/cjs/validators/methods/equality-conditional-methods.js.map +1 -0
- package/cjs/validators/methods/forbidden-methods.d.ts +58 -0
- package/cjs/validators/methods/forbidden-methods.d.ts.map +1 -0
- package/cjs/validators/methods/forbidden-methods.js +122 -0
- package/cjs/validators/methods/forbidden-methods.js.map +1 -0
- package/cjs/validators/methods/present-methods.d.ts +102 -0
- package/cjs/validators/methods/present-methods.d.ts.map +1 -0
- package/cjs/validators/methods/present-methods.js +229 -0
- package/cjs/validators/methods/present-methods.js.map +1 -0
- package/cjs/validators/methods/required-methods.d.ts +174 -0
- package/cjs/validators/methods/required-methods.d.ts.map +1 -0
- package/cjs/validators/methods/required-methods.js +246 -0
- package/cjs/validators/methods/required-methods.js.map +1 -0
- package/cjs/validators/number-validator.d.ts +166 -0
- package/cjs/validators/number-validator.d.ts.map +1 -0
- package/cjs/validators/number-validator.js +307 -0
- package/cjs/validators/number-validator.js.map +1 -0
- package/cjs/validators/numeric-validator.d.ts +15 -0
- package/cjs/validators/numeric-validator.d.ts.map +1 -0
- package/cjs/validators/numeric-validator.js +18 -0
- package/cjs/validators/numeric-validator.js.map +1 -0
- package/cjs/validators/object-validator.d.ts +233 -0
- package/cjs/validators/object-validator.d.ts.map +1 -0
- package/cjs/validators/object-validator.js +517 -0
- package/cjs/validators/object-validator.js.map +1 -0
- package/cjs/validators/primitive-validator.d.ts +70 -0
- package/cjs/validators/primitive-validator.d.ts.map +1 -0
- package/cjs/validators/primitive-validator.js +80 -0
- package/cjs/validators/primitive-validator.js.map +1 -0
- package/cjs/validators/record-validator.d.ts +54 -0
- package/cjs/validators/record-validator.d.ts.map +1 -0
- package/cjs/validators/record-validator.js +100 -0
- package/cjs/validators/record-validator.js.map +1 -0
- package/cjs/validators/scalar-validator.d.ts +93 -0
- package/cjs/validators/scalar-validator.d.ts.map +1 -0
- package/cjs/validators/scalar-validator.js +149 -0
- package/cjs/validators/scalar-validator.js.map +1 -0
- package/cjs/validators/string-validator.d.ts +189 -0
- package/cjs/validators/string-validator.d.ts.map +1 -0
- package/cjs/validators/string-validator.js +387 -0
- package/cjs/validators/string-validator.js.map +1 -0
- package/cjs/validators/tuple-validator.d.ts +56 -0
- package/cjs/validators/tuple-validator.d.ts.map +1 -0
- package/cjs/validators/tuple-validator.js +121 -0
- package/cjs/validators/tuple-validator.js.map +1 -0
- package/cjs/validators/union-validator.d.ts +55 -0
- package/cjs/validators/union-validator.d.ts.map +1 -0
- package/cjs/validators/union-validator.js +60 -0
- package/cjs/validators/union-validator.js.map +1 -0
- package/esm/index.d.ts +30 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +1 -0
- package/esm/index.js.map +1 -0
- package/esm/mutators/array-mutators.d.ts +12 -0
- package/esm/mutators/array-mutators.d.ts.map +1 -0
- package/esm/mutators/array-mutators.js +37 -0
- package/esm/mutators/array-mutators.js.map +1 -0
- package/esm/mutators/date-mutators.d.ts +39 -0
- package/esm/mutators/date-mutators.d.ts.map +1 -0
- package/esm/mutators/date-mutators.js +120 -0
- package/esm/mutators/date-mutators.js.map +1 -0
- package/esm/mutators/index.d.ts +7 -0
- package/esm/mutators/index.d.ts.map +1 -0
- package/esm/mutators/number-mutators.d.ts +22 -0
- package/esm/mutators/number-mutators.d.ts.map +1 -0
- package/esm/mutators/number-mutators.js +53 -0
- package/esm/mutators/number-mutators.js.map +1 -0
- package/esm/mutators/object-mutators.d.ts +8 -0
- package/esm/mutators/object-mutators.d.ts.map +1 -0
- package/esm/mutators/object-mutators.js +48 -0
- package/esm/mutators/object-mutators.js.map +1 -0
- package/esm/mutators/scalar-mutators.d.ts +3 -0
- package/esm/mutators/scalar-mutators.d.ts.map +1 -0
- package/esm/mutators/scalar-mutators.js +6 -0
- package/esm/mutators/scalar-mutators.js.map +1 -0
- package/esm/mutators/string-mutators.d.ts +72 -0
- package/esm/mutators/string-mutators.d.ts.map +1 -0
- package/esm/mutators/string-mutators.js +193 -0
- package/esm/mutators/string-mutators.js.map +1 -0
- package/esm/plugins/index.d.ts +7 -0
- package/esm/plugins/index.d.ts.map +1 -0
- package/esm/plugins/plugin-system.d.ts +71 -0
- package/esm/plugins/plugin-system.d.ts.map +1 -0
- package/esm/plugins/plugin-system.js +67 -0
- package/esm/plugins/plugin-system.js.map +1 -0
- package/esm/rules/array/array-rules.d.ts +12 -0
- package/esm/rules/array/array-rules.d.ts.map +1 -0
- package/esm/rules/array/array-rules.js +45 -0
- package/esm/rules/array/array-rules.js.map +1 -0
- package/esm/rules/array/index.d.ts +2 -0
- package/esm/rules/array/index.d.ts.map +1 -0
- package/esm/rules/color/color-rules.d.ts +30 -0
- package/esm/rules/color/color-rules.d.ts.map +1 -0
- package/esm/rules/color/color-rules.js +120 -0
- package/esm/rules/color/color-rules.js.map +1 -0
- package/esm/rules/color/index.d.ts +2 -0
- package/esm/rules/color/index.d.ts.map +1 -0
- package/esm/rules/common/enum.d.ts +26 -0
- package/esm/rules/common/enum.d.ts.map +1 -0
- package/esm/rules/common/enum.js +69 -0
- package/esm/rules/common/enum.js.map +1 -0
- package/esm/rules/common/equals-field-rules.d.ts +18 -0
- package/esm/rules/common/equals-field-rules.d.ts.map +1 -0
- package/esm/rules/common/equals-field-rules.js +39 -0
- package/esm/rules/common/equals-field-rules.js.map +1 -0
- package/esm/rules/common/index.d.ts +5 -0
- package/esm/rules/common/index.d.ts.map +1 -0
- package/esm/rules/common/type-rules.d.ts +38 -0
- package/esm/rules/common/type-rules.d.ts.map +1 -0
- package/esm/rules/common/type-rules.js +117 -0
- package/esm/rules/common/type-rules.js.map +1 -0
- package/esm/rules/common/unknown-key.d.ts +9 -0
- package/esm/rules/common/unknown-key.d.ts.map +1 -0
- package/esm/rules/common/unknown-key.js +17 -0
- package/esm/rules/common/unknown-key.js.map +1 -0
- package/esm/rules/conditional/forbidden-if-rules.d.ts +54 -0
- package/esm/rules/conditional/forbidden-if-rules.d.ts.map +1 -0
- package/esm/rules/conditional/forbidden-if-rules.js +118 -0
- package/esm/rules/conditional/forbidden-if-rules.js.map +1 -0
- package/esm/rules/conditional/index.d.ts +11 -0
- package/esm/rules/conditional/index.d.ts.map +1 -0
- package/esm/rules/conditional/present-if-rules.d.ts +45 -0
- package/esm/rules/conditional/present-if-rules.d.ts.map +1 -0
- package/esm/rules/conditional/present-if-rules.js +100 -0
- package/esm/rules/conditional/present-if-rules.js.map +1 -0
- package/esm/rules/conditional/present-unless-rules.d.ts +11 -0
- package/esm/rules/conditional/present-unless-rules.d.ts.map +1 -0
- package/esm/rules/conditional/present-unless-rules.js +22 -0
- package/esm/rules/conditional/present-unless-rules.js.map +1 -0
- package/esm/rules/conditional/present-with-rules.d.ts +26 -0
- package/esm/rules/conditional/present-with-rules.d.ts.map +1 -0
- package/esm/rules/conditional/present-with-rules.js +70 -0
- package/esm/rules/conditional/present-with-rules.js.map +1 -0
- package/esm/rules/conditional/present-without-rules.d.ts +26 -0
- package/esm/rules/conditional/present-without-rules.d.ts.map +1 -0
- package/esm/rules/conditional/present-without-rules.js +70 -0
- package/esm/rules/conditional/present-without-rules.js.map +1 -0
- package/esm/rules/conditional/required-if-rules.d.ts +77 -0
- package/esm/rules/conditional/required-if-rules.d.ts.map +1 -0
- package/esm/rules/conditional/required-if-rules.js +205 -0
- package/esm/rules/conditional/required-if-rules.js.map +1 -0
- package/esm/rules/conditional/required-unless-rules.d.ts +11 -0
- package/esm/rules/conditional/required-unless-rules.d.ts.map +1 -0
- package/esm/rules/conditional/required-unless-rules.js +22 -0
- package/esm/rules/conditional/required-unless-rules.js.map +1 -0
- package/esm/rules/conditional/required-when-rule.d.ts +18 -0
- package/esm/rules/conditional/required-when-rule.d.ts.map +1 -0
- package/esm/rules/conditional/required-when-rule.js +26 -0
- package/esm/rules/conditional/required-when-rule.js.map +1 -0
- package/esm/rules/conditional/required-with-rules.d.ts +26 -0
- package/esm/rules/conditional/required-with-rules.d.ts.map +1 -0
- package/esm/rules/conditional/required-with-rules.js +64 -0
- package/esm/rules/conditional/required-with-rules.js.map +1 -0
- package/esm/rules/conditional/required-without-rules.d.ts +26 -0
- package/esm/rules/conditional/required-without-rules.d.ts.map +1 -0
- package/esm/rules/conditional/required-without-rules.js +64 -0
- package/esm/rules/conditional/required-without-rules.js.map +1 -0
- package/esm/rules/core/equal.d.ts +8 -0
- package/esm/rules/core/equal.d.ts.map +1 -0
- package/esm/rules/core/equal.js +14 -0
- package/esm/rules/core/equal.js.map +1 -0
- package/esm/rules/core/forbidden.d.ts +6 -0
- package/esm/rules/core/forbidden.d.ts.map +1 -0
- package/esm/rules/core/forbidden.js +13 -0
- package/esm/rules/core/forbidden.js.map +1 -0
- package/esm/rules/core/index.d.ts +6 -0
- package/esm/rules/core/index.d.ts.map +1 -0
- package/esm/rules/core/required.d.ts +11 -0
- package/esm/rules/core/required.d.ts.map +1 -0
- package/esm/rules/core/required.js +31 -0
- package/esm/rules/core/required.js.map +1 -0
- package/esm/rules/core/union.d.ts +9 -0
- package/esm/rules/core/union.d.ts.map +1 -0
- package/esm/rules/core/union.js +40 -0
- package/esm/rules/core/union.js.map +1 -0
- package/esm/rules/core/when.d.ts +6 -0
- package/esm/rules/core/when.d.ts.map +1 -0
- package/esm/rules/core/when.js +40 -0
- package/esm/rules/core/when.js.map +1 -0
- package/esm/rules/date/date-comparison-rules.d.ts +25 -0
- package/esm/rules/date/date-comparison-rules.d.ts.map +1 -0
- package/esm/rules/date/date-comparison-rules.js +80 -0
- package/esm/rules/date/date-comparison-rules.js.map +1 -0
- package/esm/rules/date/date-day-rules.d.ts +21 -0
- package/esm/rules/date/date-day-rules.d.ts.map +1 -0
- package/esm/rules/date/date-day-rules.js +68 -0
- package/esm/rules/date/date-day-rules.js.map +1 -0
- package/esm/rules/date/date-field-comparison-rules.d.ts +28 -0
- package/esm/rules/date/date-field-comparison-rules.d.ts.map +1 -0
- package/esm/rules/date/date-field-comparison-rules.js +94 -0
- package/esm/rules/date/date-field-comparison-rules.js.map +1 -0
- package/esm/rules/date/date-period-rules.d.ts +124 -0
- package/esm/rules/date/date-period-rules.d.ts.map +1 -0
- package/esm/rules/date/date-period-rules.js +605 -0
- package/esm/rules/date/date-period-rules.js.map +1 -0
- package/esm/rules/date/date-relative-rules.d.ts +20 -0
- package/esm/rules/date/date-relative-rules.d.ts.map +1 -0
- package/esm/rules/date/date-relative-rules.js +60 -0
- package/esm/rules/date/date-relative-rules.js.map +1 -0
- package/esm/rules/date/date-special-rules.d.ts +20 -0
- package/esm/rules/date/date-special-rules.d.ts.map +1 -0
- package/esm/rules/date/date-special-rules.js +71 -0
- package/esm/rules/date/date-special-rules.js.map +1 -0
- package/esm/rules/date/date.d.ts +93 -0
- package/esm/rules/date/date.d.ts.map +1 -0
- package/esm/rules/date/date.js +288 -0
- package/esm/rules/date/date.js.map +1 -0
- package/esm/rules/date/index.d.ts +8 -0
- package/esm/rules/date/index.d.ts.map +1 -0
- package/esm/rules/file/dimensions.d.ts +26 -0
- package/esm/rules/file/dimensions.d.ts.map +1 -0
- package/esm/rules/file/dimensions.js +60 -0
- package/esm/rules/file/dimensions.js.map +1 -0
- package/esm/rules/file/file-size.d.ts +14 -0
- package/esm/rules/file/file-size.d.ts.map +1 -0
- package/esm/rules/file/file-size.js +30 -0
- package/esm/rules/file/file-size.js.map +1 -0
- package/esm/rules/file/index.d.ts +11 -0
- package/esm/rules/file/index.d.ts.map +1 -0
- package/esm/rules/index.d.ts +19 -0
- package/esm/rules/index.d.ts.map +1 -0
- package/esm/rules/length/index.d.ts +2 -0
- package/esm/rules/length/index.d.ts.map +1 -0
- package/esm/rules/length/length-rules.d.ts +49 -0
- package/esm/rules/length/length-rules.d.ts.map +1 -0
- package/esm/rules/length/length-rules.js +107 -0
- package/esm/rules/length/length-rules.js.map +1 -0
- package/esm/rules/number/index.d.ts +2 -0
- package/esm/rules/number/index.d.ts.map +1 -0
- package/esm/rules/number/number-rules.d.ts +65 -0
- package/esm/rules/number/number-rules.d.ts.map +1 -0
- package/esm/rules/number/number-rules.js +245 -0
- package/esm/rules/number/number-rules.js.map +1 -0
- package/esm/rules/scalar/accepted-rule.d.ts +39 -0
- package/esm/rules/scalar/accepted-rule.d.ts.map +1 -0
- package/esm/rules/scalar/accepted-rule.js +117 -0
- package/esm/rules/scalar/accepted-rule.js.map +1 -0
- package/esm/rules/scalar/declined-rule.d.ts +39 -0
- package/esm/rules/scalar/declined-rule.d.ts.map +1 -0
- package/esm/rules/scalar/declined-rule.js +117 -0
- package/esm/rules/scalar/declined-rule.js.map +1 -0
- package/esm/rules/scalar/index.d.ts +3 -0
- package/esm/rules/scalar/index.d.ts.map +1 -0
- package/esm/rules/string/alpha.d.ts +14 -0
- package/esm/rules/string/alpha.d.ts.map +1 -0
- package/esm/rules/string/alpha.js +39 -0
- package/esm/rules/string/alpha.js.map +1 -0
- package/esm/rules/string/credit-card.d.ts +6 -0
- package/esm/rules/string/credit-card.d.ts.map +1 -0
- package/esm/rules/string/credit-card.js +31 -0
- package/esm/rules/string/credit-card.js.map +1 -0
- package/esm/rules/string/email.d.ts +6 -0
- package/esm/rules/string/email.d.ts.map +1 -0
- package/esm/rules/string/email.js +13 -0
- package/esm/rules/string/email.js.map +1 -0
- package/esm/rules/string/index.d.ts +17 -0
- package/esm/rules/string/index.d.ts.map +1 -0
- package/esm/rules/string/ip.d.ts +14 -0
- package/esm/rules/string/ip.d.ts.map +1 -0
- package/esm/rules/string/ip.js +39 -0
- package/esm/rules/string/ip.js.map +1 -0
- package/esm/rules/string/matches.d.ts +8 -0
- package/esm/rules/string/matches.d.ts.map +1 -0
- package/esm/rules/string/matches.js +15 -0
- package/esm/rules/string/matches.js.map +1 -0
- package/esm/rules/string/pattern.d.ts +8 -0
- package/esm/rules/string/pattern.d.ts.map +1 -0
- package/esm/rules/string/pattern.js +14 -0
- package/esm/rules/string/pattern.js.map +1 -0
- package/esm/rules/string/string-comparison.d.ts +26 -0
- package/esm/rules/string/string-comparison.d.ts.map +1 -0
- package/esm/rules/string/string-comparison.js +56 -0
- package/esm/rules/string/string-comparison.js.map +1 -0
- package/esm/rules/string/strong-password-rule.d.ts +14 -0
- package/esm/rules/string/strong-password-rule.d.ts.map +1 -0
- package/esm/rules/string/strong-password-rule.js +38 -0
- package/esm/rules/string/strong-password-rule.js.map +1 -0
- package/esm/rules/string/url.d.ts +6 -0
- package/esm/rules/string/url.d.ts.map +1 -0
- package/esm/rules/string/url.js +16 -0
- package/esm/rules/string/url.js.map +1 -0
- package/esm/rules/string/without-whitespace.d.ts +6 -0
- package/esm/rules/string/without-whitespace.d.ts.map +1 -0
- package/esm/rules/string/without-whitespace.js +13 -0
- package/esm/rules/string/without-whitespace.js.map +1 -0
- package/esm/standard-schema/index.d.ts +4 -0
- package/esm/standard-schema/index.d.ts.map +1 -0
- package/esm/standard-schema/json-schema.d.ts +61 -0
- package/esm/standard-schema/json-schema.d.ts.map +1 -0
- package/esm/standard-schema/json-schema.js +85 -0
- package/esm/standard-schema/json-schema.js.map +1 -0
- package/esm/standard-schema/map-result.d.ts +18 -0
- package/esm/standard-schema/map-result.d.ts.map +1 -0
- package/esm/standard-schema/map-result.js +27 -0
- package/esm/standard-schema/map-result.js.map +1 -0
- package/esm/standard-schema/types.d.ts +93 -0
- package/esm/standard-schema/types.d.ts.map +1 -0
- package/esm/types/conditional-types.d.ts +15 -0
- package/esm/types/conditional-types.d.ts.map +1 -0
- package/esm/types/context-types.d.ts +47 -0
- package/esm/types/context-types.d.ts.map +1 -0
- package/esm/types/data-transformer-types.d.ts +25 -0
- package/esm/types/data-transformer-types.d.ts.map +1 -0
- package/esm/types/date-types.d.ts +9 -0
- package/esm/types/date-types.d.ts.map +1 -0
- package/esm/types/date-types.js +12 -0
- package/esm/types/date-types.js.map +1 -0
- package/esm/types/file.types.d.ts +5 -0
- package/esm/types/file.types.d.ts.map +1 -0
- package/esm/types/index.d.ts +11 -0
- package/esm/types/index.d.ts.map +1 -0
- package/esm/types/inference-types.d.ts +32 -0
- package/esm/types/inference-types.d.ts.map +1 -0
- package/esm/types/mutator-types.d.ts +27 -0
- package/esm/types/mutator-types.d.ts.map +1 -0
- package/esm/types/result-types.d.ts +19 -0
- package/esm/types/result-types.d.ts.map +1 -0
- package/esm/types/rule-types.d.ts +58 -0
- package/esm/types/rule-types.d.ts.map +1 -0
- package/esm/types/schema-types.d.ts +6 -0
- package/esm/types/schema-types.d.ts.map +1 -0
- package/esm/validators/any-validator.d.ts +29 -0
- package/esm/validators/any-validator.d.ts.map +1 -0
- package/esm/validators/any-validator.js +31 -0
- package/esm/validators/any-validator.js.map +1 -0
- package/esm/validators/array-validator.d.ts +72 -0
- package/esm/validators/array-validator.d.ts.map +1 -0
- package/esm/validators/array-validator.js +162 -0
- package/esm/validators/array-validator.js.map +1 -0
- package/esm/validators/base-validator.d.ts +425 -0
- package/esm/validators/base-validator.d.ts.map +1 -0
- package/esm/validators/base-validator.js +637 -0
- package/esm/validators/base-validator.js.map +1 -0
- package/esm/validators/boolean-validator.d.ts +67 -0
- package/esm/validators/boolean-validator.d.ts.map +1 -0
- package/esm/validators/boolean-validator.js +105 -0
- package/esm/validators/boolean-validator.js.map +1 -0
- package/esm/validators/computed-validator.d.ts +75 -0
- package/esm/validators/computed-validator.d.ts.map +1 -0
- package/esm/validators/computed-validator.js +124 -0
- package/esm/validators/computed-validator.js.map +1 -0
- package/esm/validators/date-validator.d.ts +330 -0
- package/esm/validators/date-validator.d.ts.map +1 -0
- package/esm/validators/date-validator.js +614 -0
- package/esm/validators/date-validator.js.map +1 -0
- package/esm/validators/float-validator.d.ts +8 -0
- package/esm/validators/float-validator.d.ts.map +1 -0
- package/esm/validators/float-validator.js +9 -0
- package/esm/validators/float-validator.js.map +1 -0
- package/esm/validators/index.d.ts +31 -0
- package/esm/validators/index.d.ts.map +1 -0
- package/esm/validators/int-validator.d.ts +19 -0
- package/esm/validators/int-validator.d.ts.map +1 -0
- package/esm/validators/int-validator.js +21 -0
- package/esm/validators/int-validator.js.map +1 -0
- package/esm/validators/managed-validator.d.ts +38 -0
- package/esm/validators/managed-validator.d.ts.map +1 -0
- package/esm/validators/managed-validator.js +34 -0
- package/esm/validators/managed-validator.js.map +1 -0
- package/esm/validators/methods/equality-conditional-methods.d.ts +88 -0
- package/esm/validators/methods/equality-conditional-methods.d.ts.map +1 -0
- package/esm/validators/methods/equality-conditional-methods.js +118 -0
- package/esm/validators/methods/equality-conditional-methods.js.map +1 -0
- package/esm/validators/methods/forbidden-methods.d.ts +58 -0
- package/esm/validators/methods/forbidden-methods.d.ts.map +1 -0
- package/esm/validators/methods/forbidden-methods.js +122 -0
- package/esm/validators/methods/forbidden-methods.js.map +1 -0
- package/esm/validators/methods/present-methods.d.ts +102 -0
- package/esm/validators/methods/present-methods.d.ts.map +1 -0
- package/esm/validators/methods/present-methods.js +229 -0
- package/esm/validators/methods/present-methods.js.map +1 -0
- package/esm/validators/methods/required-methods.d.ts +174 -0
- package/esm/validators/methods/required-methods.d.ts.map +1 -0
- package/esm/validators/methods/required-methods.js +246 -0
- package/esm/validators/methods/required-methods.js.map +1 -0
- package/esm/validators/number-validator.d.ts +166 -0
- package/esm/validators/number-validator.d.ts.map +1 -0
- package/esm/validators/number-validator.js +307 -0
- package/esm/validators/number-validator.js.map +1 -0
- package/esm/validators/numeric-validator.d.ts +15 -0
- package/esm/validators/numeric-validator.d.ts.map +1 -0
- package/esm/validators/numeric-validator.js +18 -0
- package/esm/validators/numeric-validator.js.map +1 -0
- package/esm/validators/object-validator.d.ts +233 -0
- package/esm/validators/object-validator.d.ts.map +1 -0
- package/esm/validators/object-validator.js +517 -0
- package/esm/validators/object-validator.js.map +1 -0
- package/esm/validators/primitive-validator.d.ts +70 -0
- package/esm/validators/primitive-validator.d.ts.map +1 -0
- package/esm/validators/primitive-validator.js +80 -0
- package/esm/validators/primitive-validator.js.map +1 -0
- package/esm/validators/record-validator.d.ts +54 -0
- package/esm/validators/record-validator.d.ts.map +1 -0
- package/esm/validators/record-validator.js +100 -0
- package/esm/validators/record-validator.js.map +1 -0
- package/esm/validators/scalar-validator.d.ts +93 -0
- package/esm/validators/scalar-validator.d.ts.map +1 -0
- package/esm/validators/scalar-validator.js +149 -0
- package/esm/validators/scalar-validator.js.map +1 -0
- package/esm/validators/string-validator.d.ts +189 -0
- package/esm/validators/string-validator.d.ts.map +1 -0
- package/esm/validators/string-validator.js +387 -0
- package/esm/validators/string-validator.js.map +1 -0
- package/esm/validators/tuple-validator.d.ts +56 -0
- package/esm/validators/tuple-validator.d.ts.map +1 -0
- package/esm/validators/tuple-validator.js +121 -0
- package/esm/validators/tuple-validator.js.map +1 -0
- package/esm/validators/union-validator.d.ts +55 -0
- package/esm/validators/union-validator.d.ts.map +1 -0
- package/esm/validators/union-validator.js +60 -0
- package/esm/validators/union-validator.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../../src/rules/string/pattern.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,UAAU,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAWvD,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
'use strict';require('@mongez/reinforcements');var validationHelpers=require('../../helpers/validation-helpers.js');/**
|
|
2
|
+
* Pattern rule - validates against regex pattern
|
|
3
|
+
*/
|
|
4
|
+
const patternRule = {
|
|
5
|
+
name: "pattern",
|
|
6
|
+
defaultErrorMessage: "The :input does not match the required pattern",
|
|
7
|
+
async validate(value, context) {
|
|
8
|
+
if (this.context.options.pattern.test(value)) {
|
|
9
|
+
return validationHelpers.VALID_RULE;
|
|
10
|
+
}
|
|
11
|
+
this.context.translationParams.pattern = this.context.options.pattern.toString();
|
|
12
|
+
return validationHelpers.invalidRule(this, context);
|
|
13
|
+
},
|
|
14
|
+
};exports.patternRule=patternRule;//# sourceMappingURL=pattern.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern.js","sources":["../../../src/rules/string/pattern.ts"],"sourcesContent":[null],"names":["VALID_RULE","invalidRule"],"mappings":"oHAGA;;AAEG;AACU,MAAA,WAAW,GAAoC;AAC1D,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,mBAAmB,EAAE,gDAAgD;AACrE,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AAC5C,YAAA,OAAOA,4BAAU,CAAC;AACnB,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;AACjF,QAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACnC;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { SchemaRule } from "../../types";
|
|
2
|
+
/**
|
|
3
|
+
* Starts with rule
|
|
4
|
+
*/
|
|
5
|
+
export declare const startsWithRule: SchemaRule<{
|
|
6
|
+
value: string;
|
|
7
|
+
}>;
|
|
8
|
+
/**
|
|
9
|
+
* Ends with rule
|
|
10
|
+
*/
|
|
11
|
+
export declare const endsWithRule: SchemaRule<{
|
|
12
|
+
value: string;
|
|
13
|
+
}>;
|
|
14
|
+
/**
|
|
15
|
+
* Contains rule
|
|
16
|
+
*/
|
|
17
|
+
export declare const containsRule: SchemaRule<{
|
|
18
|
+
value: string;
|
|
19
|
+
}>;
|
|
20
|
+
/**
|
|
21
|
+
* Not contains rule
|
|
22
|
+
*/
|
|
23
|
+
export declare const notContainsRule: SchemaRule<{
|
|
24
|
+
value: string;
|
|
25
|
+
}>;
|
|
26
|
+
//# sourceMappingURL=string-comparison.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string-comparison.d.ts","sourceRoot":"","sources":["../../../src/rules/string/string-comparison.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,UAAU,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAYxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,UAAU,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAYtD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,UAAU,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAYtD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,UAAU,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAYzD,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
'use strict';require('@mongez/reinforcements');var validationHelpers=require('../../helpers/validation-helpers.js');/**
|
|
2
|
+
* Starts with rule
|
|
3
|
+
*/
|
|
4
|
+
const startsWithRule = {
|
|
5
|
+
name: "startsWith",
|
|
6
|
+
defaultErrorMessage: "The :input must start with :value",
|
|
7
|
+
async validate(value, context) {
|
|
8
|
+
if (String(value).startsWith(this.context.options.value)) {
|
|
9
|
+
return validationHelpers.VALID_RULE;
|
|
10
|
+
}
|
|
11
|
+
this.context.translatableParams.value = this.context.options.value;
|
|
12
|
+
return validationHelpers.invalidRule(this, context);
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Ends with rule
|
|
17
|
+
*/
|
|
18
|
+
const endsWithRule = {
|
|
19
|
+
name: "endsWith",
|
|
20
|
+
defaultErrorMessage: "The :input must end with :value",
|
|
21
|
+
async validate(value, context) {
|
|
22
|
+
if (String(value).endsWith(this.context.options.value)) {
|
|
23
|
+
return validationHelpers.VALID_RULE;
|
|
24
|
+
}
|
|
25
|
+
this.context.translatableParams.value = this.context.options.value;
|
|
26
|
+
return validationHelpers.invalidRule(this, context);
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Contains rule
|
|
31
|
+
*/
|
|
32
|
+
const containsRule = {
|
|
33
|
+
name: "contains",
|
|
34
|
+
defaultErrorMessage: "The :input must contain :value",
|
|
35
|
+
async validate(value, context) {
|
|
36
|
+
if (String(value).includes(this.context.options.value)) {
|
|
37
|
+
return validationHelpers.VALID_RULE;
|
|
38
|
+
}
|
|
39
|
+
this.context.translatableParams.value = this.context.options.value;
|
|
40
|
+
return validationHelpers.invalidRule(this, context);
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Not contains rule
|
|
45
|
+
*/
|
|
46
|
+
const notContainsRule = {
|
|
47
|
+
name: "notContains",
|
|
48
|
+
defaultErrorMessage: "The :input must not contain :value",
|
|
49
|
+
async validate(value, context) {
|
|
50
|
+
if (!String(value).includes(this.context.options.value)) {
|
|
51
|
+
return validationHelpers.VALID_RULE;
|
|
52
|
+
}
|
|
53
|
+
this.context.translatableParams.value = this.context.options.value;
|
|
54
|
+
return validationHelpers.invalidRule(this, context);
|
|
55
|
+
},
|
|
56
|
+
};exports.containsRule=containsRule;exports.endsWithRule=endsWithRule;exports.notContainsRule=notContainsRule;exports.startsWithRule=startsWithRule;//# sourceMappingURL=string-comparison.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string-comparison.js","sources":["../../../src/rules/string/string-comparison.ts"],"sourcesContent":[null],"names":["VALID_RULE","invalidRule"],"mappings":"oHAGA;;AAEG;AACU,MAAA,cAAc,GAAkC;AAC3D,IAAA,IAAI,EAAE,YAAY;AAClB,IAAA,mBAAmB,EAAE,mCAAmC;AACxD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACxD,YAAA,OAAOA,4BAAU,CAAC;AACnB,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;AAEnE,QAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACnC;EACD;AAEF;;AAEG;AACU,MAAA,YAAY,GAAkC;AACzD,IAAA,IAAI,EAAE,UAAU;AAChB,IAAA,mBAAmB,EAAE,iCAAiC;AACtD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACtD,YAAA,OAAOD,4BAAU,CAAC;AACnB,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;AAEnE,QAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACnC;EACD;AAEF;;AAEG;AACU,MAAA,YAAY,GAAkC;AACzD,IAAA,IAAI,EAAE,UAAU;AAChB,IAAA,mBAAmB,EAAE,gCAAgC;AACrD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACtD,YAAA,OAAOD,4BAAU,CAAC;AACnB,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;AAEnE,QAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACnC;EACD;AAEF;;AAEG;AACU,MAAA,eAAe,GAAkC;AAC5D,IAAA,IAAI,EAAE,aAAa;AACnB,IAAA,mBAAmB,EAAE,oCAAoC;AACzD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACvD,YAAA,OAAOD,4BAAU,CAAC;AACnB,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;AAEnE,QAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACnC;"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { SchemaRule } from "../../types";
|
|
2
|
+
/**
|
|
3
|
+
* Strong Password rule - validates password strength
|
|
4
|
+
* Requirements:
|
|
5
|
+
* - At least 8 characters
|
|
6
|
+
* - At least 1 uppercase letter
|
|
7
|
+
* - At least 1 lowercase letter
|
|
8
|
+
* - At least 1 number
|
|
9
|
+
* - At least 1 special character
|
|
10
|
+
*/
|
|
11
|
+
export declare const strongPasswordRule: SchemaRule<{
|
|
12
|
+
minLength?: number;
|
|
13
|
+
}>;
|
|
14
|
+
//# sourceMappingURL=strong-password-rule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strong-password-rule.d.ts","sourceRoot":"","sources":["../../../src/rules/string/strong-password-rule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,EAAE,UAAU,CAAC;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAmCjE,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
'use strict';require('@mongez/reinforcements');var validationHelpers=require('../../helpers/validation-helpers.js');/**
|
|
2
|
+
* Strong Password rule - validates password strength
|
|
3
|
+
* Requirements:
|
|
4
|
+
* - At least 8 characters
|
|
5
|
+
* - At least 1 uppercase letter
|
|
6
|
+
* - At least 1 lowercase letter
|
|
7
|
+
* - At least 1 number
|
|
8
|
+
* - At least 1 special character
|
|
9
|
+
*/
|
|
10
|
+
const strongPasswordRule = {
|
|
11
|
+
name: "strongPassword",
|
|
12
|
+
defaultErrorMessage: "The :input must be at least 8 characters and contain at least one uppercase letter, one lowercase letter, one number, and one special character",
|
|
13
|
+
async validate(value, context) {
|
|
14
|
+
const password = String(value);
|
|
15
|
+
const minLength = this.context.options.minLength ?? 8;
|
|
16
|
+
// Check minimum length
|
|
17
|
+
if (password.length < minLength) {
|
|
18
|
+
return validationHelpers.invalidRule(this, context);
|
|
19
|
+
}
|
|
20
|
+
// Check for at least one uppercase letter
|
|
21
|
+
if (!/[A-Z]/.test(password)) {
|
|
22
|
+
return validationHelpers.invalidRule(this, context);
|
|
23
|
+
}
|
|
24
|
+
// Check for at least one lowercase letter
|
|
25
|
+
if (!/[a-z]/.test(password)) {
|
|
26
|
+
return validationHelpers.invalidRule(this, context);
|
|
27
|
+
}
|
|
28
|
+
// Check for at least one number
|
|
29
|
+
if (!/[0-9]/.test(password)) {
|
|
30
|
+
return validationHelpers.invalidRule(this, context);
|
|
31
|
+
}
|
|
32
|
+
// Check for at least one special character
|
|
33
|
+
if (!/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/.test(password)) {
|
|
34
|
+
return validationHelpers.invalidRule(this, context);
|
|
35
|
+
}
|
|
36
|
+
return validationHelpers.VALID_RULE;
|
|
37
|
+
},
|
|
38
|
+
};exports.strongPasswordRule=strongPasswordRule;//# sourceMappingURL=strong-password-rule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strong-password-rule.js","sources":["../../../src/rules/string/strong-password-rule.ts"],"sourcesContent":[null],"names":["invalidRule","VALID_RULE"],"mappings":"oHAGA;;;;;;;;AAQG;AACU,MAAA,kBAAkB,GAAuC;AACpE,IAAA,IAAI,EAAE,gBAAgB;AACtB,IAAA,mBAAmB,EACjB,iJAAiJ;AACnJ,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;;AAGtD,QAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,SAAS,EAAE;AAC/B,YAAA,OAAOA,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;;AAGD,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;AAC3B,YAAA,OAAOA,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;;AAGD,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;AAC3B,YAAA,OAAOA,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;;AAGD,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;AAC3B,YAAA,OAAOA,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;;AAGD,QAAA,IAAI,CAAC,qCAAqC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;AACzD,YAAA,OAAOA,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAOC,4BAAU,CAAC;KACnB;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/rules/string/url.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,UAWrB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use strict';require('@mongez/reinforcements');var validationHelpers=require('../../helpers/validation-helpers.js');/**
|
|
2
|
+
* URL rule - validates URL format
|
|
3
|
+
*/
|
|
4
|
+
const urlRule = {
|
|
5
|
+
name: "url",
|
|
6
|
+
defaultErrorMessage: "The :input must be a valid URL",
|
|
7
|
+
async validate(value, context) {
|
|
8
|
+
try {
|
|
9
|
+
new URL(value);
|
|
10
|
+
return validationHelpers.VALID_RULE;
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
return validationHelpers.invalidRule(this, context);
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
};exports.urlRule=urlRule;//# sourceMappingURL=url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url.js","sources":["../../../src/rules/string/url.ts"],"sourcesContent":[null],"names":["VALID_RULE","invalidRule"],"mappings":"oHAGA;;AAEG;AACU,MAAA,OAAO,GAAe;AACjC,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,mBAAmB,EAAE,gCAAgC;AACrD,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;QAChC,IAAI;AACF,YAAA,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;AACf,YAAA,OAAOA,4BAAU,CAAC;AACnB,SAAA;QAAC,MAAM;AACN,YAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACnC,SAAA;KACF;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"without-whitespace.d.ts","sourceRoot":"","sources":["../../../src/rules/string/without-whitespace.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,UASnC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';require('@mongez/reinforcements');var validationHelpers=require('../../helpers/validation-helpers.js');/**
|
|
2
|
+
* Without whitespace rule - value must not contain whitespace
|
|
3
|
+
*/
|
|
4
|
+
const withoutWhitespaceRule = {
|
|
5
|
+
name: "withoutWhitespace",
|
|
6
|
+
defaultErrorMessage: "The :input must not contain whitespace",
|
|
7
|
+
async validate(value, context) {
|
|
8
|
+
if (!/\s/.test(value)) {
|
|
9
|
+
return validationHelpers.VALID_RULE;
|
|
10
|
+
}
|
|
11
|
+
return validationHelpers.invalidRule(this, context);
|
|
12
|
+
},
|
|
13
|
+
};exports.withoutWhitespaceRule=withoutWhitespaceRule;//# sourceMappingURL=without-whitespace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"without-whitespace.js","sources":["../../../src/rules/string/without-whitespace.ts"],"sourcesContent":[null],"names":["VALID_RULE","invalidRule"],"mappings":"oHAGA;;AAEG;AACU,MAAA,qBAAqB,GAAe;AAC/C,IAAA,IAAI,EAAE,mBAAmB;AACzB,IAAA,mBAAmB,EAAE,wCAAwC;AAC7D,IAAA,MAAM,QAAQ,CAAC,KAAU,EAAE,OAAO,EAAA;AAChC,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACrB,YAAA,OAAOA,4BAAU,CAAC;AACnB,SAAA;AACD,QAAA,OAAOC,6BAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACnC;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/standard-schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { StandardJSONSchemaV1 } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Supported JSON Schema generation targets.
|
|
4
|
+
*/
|
|
5
|
+
export type JsonSchemaTarget = StandardJSONSchemaV1.Target;
|
|
6
|
+
/**
|
|
7
|
+
* The result shape for a generated JSON Schema.
|
|
8
|
+
*/
|
|
9
|
+
export type JsonSchemaResult = Record<string, unknown>;
|
|
10
|
+
/**
|
|
11
|
+
* Apply nullable to a JSON Schema object based on the target dialect.
|
|
12
|
+
*
|
|
13
|
+
* - draft-2020-12 : `type` becomes an array: `["string", "null"]`
|
|
14
|
+
* - openai-strict : same as draft-2020-12 (type array form)
|
|
15
|
+
* - draft-07 : wraps in `oneOf: [{ ...schema }, { type: "null" }]`
|
|
16
|
+
* - openapi-3.0 : adds `nullable: true` alongside the existing type
|
|
17
|
+
*
|
|
18
|
+
* Mutates the schema in-place.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```ts
|
|
22
|
+
* const schema = { type: "string" };
|
|
23
|
+
* applyNullable(schema, "draft-2020-12");
|
|
24
|
+
* // → { type: ["string", "null"] }
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare function applyNullable(schema: JsonSchemaResult, target: JsonSchemaTarget): void;
|
|
28
|
+
/**
|
|
29
|
+
* Wrap a field schema as nullable for OpenAI strict mode.
|
|
30
|
+
*
|
|
31
|
+
* OpenAI strict requires optional fields to be expressed as a nullable type
|
|
32
|
+
* rather than being omitted from the `required` array. This helper wraps a
|
|
33
|
+
* given schema into its nullable equivalent using the type-array form.
|
|
34
|
+
*
|
|
35
|
+
* Unlike `applyNullable()` (which mutates in-place), this returns a new
|
|
36
|
+
* schema object to avoid side effects when wrapping child schemas.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```ts
|
|
40
|
+
* wrapNullableStrict({ type: "string", minLength: 3 })
|
|
41
|
+
* // → { type: ["string", "null"], minLength: 3 }
|
|
42
|
+
*
|
|
43
|
+
* wrapNullableStrict({ type: "object", properties: {...} })
|
|
44
|
+
* // → { type: ["object", "null"], properties: {...} }
|
|
45
|
+
*
|
|
46
|
+
* wrapNullableStrict({ oneOf: [...] })
|
|
47
|
+
* // → { oneOf: [..., { type: "null" }] }
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
export declare function wrapNullableStrict(schema: JsonSchemaResult): JsonSchemaResult;
|
|
51
|
+
/**
|
|
52
|
+
* Find the first rule matching the given name in a rules array,
|
|
53
|
+
* and return its options bag.
|
|
54
|
+
*/
|
|
55
|
+
export declare function getRuleOptions(rules: Array<{
|
|
56
|
+
name: string;
|
|
57
|
+
context: {
|
|
58
|
+
options: Record<string, unknown>;
|
|
59
|
+
};
|
|
60
|
+
}>, ruleName: string): Record<string, unknown> | undefined;
|
|
61
|
+
//# sourceMappingURL=json-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../../src/standard-schema/json-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,MAAM,CAAC;AAE3D;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEvD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAoBtF;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAqB7E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAA;CAAE,CAAC,EAC7E,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAGrC"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
'use strict';/**
|
|
2
|
+
* Apply nullable to a JSON Schema object based on the target dialect.
|
|
3
|
+
*
|
|
4
|
+
* - draft-2020-12 : `type` becomes an array: `["string", "null"]`
|
|
5
|
+
* - openai-strict : same as draft-2020-12 (type array form)
|
|
6
|
+
* - draft-07 : wraps in `oneOf: [{ ...schema }, { type: "null" }]`
|
|
7
|
+
* - openapi-3.0 : adds `nullable: true` alongside the existing type
|
|
8
|
+
*
|
|
9
|
+
* Mutates the schema in-place.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* const schema = { type: "string" };
|
|
14
|
+
* applyNullable(schema, "draft-2020-12");
|
|
15
|
+
* // → { type: ["string", "null"] }
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
function applyNullable(schema, target) {
|
|
19
|
+
if (target === "openapi-3.0") {
|
|
20
|
+
schema.nullable = true;
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (target === "draft-2020-12" || target === "openai-strict") {
|
|
24
|
+
const baseType = schema.type;
|
|
25
|
+
schema.type = Array.isArray(baseType)
|
|
26
|
+
? [...baseType, "null"]
|
|
27
|
+
: [baseType, "null"];
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
// draft-07: oneOf wrapping
|
|
31
|
+
const copy = { ...schema };
|
|
32
|
+
for (const key of Object.keys(schema)) {
|
|
33
|
+
delete schema[key];
|
|
34
|
+
}
|
|
35
|
+
schema.oneOf = [copy, { type: "null" }];
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Wrap a field schema as nullable for OpenAI strict mode.
|
|
39
|
+
*
|
|
40
|
+
* OpenAI strict requires optional fields to be expressed as a nullable type
|
|
41
|
+
* rather than being omitted from the `required` array. This helper wraps a
|
|
42
|
+
* given schema into its nullable equivalent using the type-array form.
|
|
43
|
+
*
|
|
44
|
+
* Unlike `applyNullable()` (which mutates in-place), this returns a new
|
|
45
|
+
* schema object to avoid side effects when wrapping child schemas.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```ts
|
|
49
|
+
* wrapNullableStrict({ type: "string", minLength: 3 })
|
|
50
|
+
* // → { type: ["string", "null"], minLength: 3 }
|
|
51
|
+
*
|
|
52
|
+
* wrapNullableStrict({ type: "object", properties: {...} })
|
|
53
|
+
* // → { type: ["object", "null"], properties: {...} }
|
|
54
|
+
*
|
|
55
|
+
* wrapNullableStrict({ oneOf: [...] })
|
|
56
|
+
* // → { oneOf: [..., { type: "null" }] }
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
function wrapNullableStrict(schema) {
|
|
60
|
+
// If the schema uses oneOf/anyOf (e.g. union), append null to the list
|
|
61
|
+
if (schema.oneOf) {
|
|
62
|
+
return { ...schema, oneOf: [...schema.oneOf, { type: "null" }] };
|
|
63
|
+
}
|
|
64
|
+
if (schema.anyOf) {
|
|
65
|
+
return { ...schema, anyOf: [...schema.anyOf, { type: "null" }] };
|
|
66
|
+
}
|
|
67
|
+
// If there's no type at all (permissive `{}`), stay permissive
|
|
68
|
+
if (schema.type === undefined) {
|
|
69
|
+
return schema;
|
|
70
|
+
}
|
|
71
|
+
// Standard case: wrap type into array with null
|
|
72
|
+
const baseType = schema.type;
|
|
73
|
+
return {
|
|
74
|
+
...schema,
|
|
75
|
+
type: Array.isArray(baseType) ? [...baseType, "null"] : [baseType, "null"],
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Find the first rule matching the given name in a rules array,
|
|
80
|
+
* and return its options bag.
|
|
81
|
+
*/
|
|
82
|
+
function getRuleOptions(rules, ruleName) {
|
|
83
|
+
const rule = rules.find(r => r.name === ruleName);
|
|
84
|
+
return rule?.context?.options;
|
|
85
|
+
}exports.applyNullable=applyNullable;exports.getRuleOptions=getRuleOptions;exports.wrapNullableStrict=wrapNullableStrict;//# sourceMappingURL=json-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-schema.js","sources":["../../src/standard-schema/json-schema.ts"],"sourcesContent":[null],"names":[],"mappings":"aAYA;;;;;;;;;;;;;;;;AAgBG;AACa,SAAA,aAAa,CAAC,MAAwB,EAAE,MAAwB,EAAA;IAC9E,IAAI,MAAM,KAAK,aAAa,EAAE;AAC5B,QAAA,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,OAAO;AACR,KAAA;AAED,IAAA,IAAI,MAAM,KAAK,eAAe,IAAI,MAAM,KAAK,eAAe,EAAE;AAC5D,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAqC,CAAC;QAC9D,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;AACnC,cAAE,CAAC,GAAG,QAAQ,EAAE,MAAM,CAAC;AACvB,cAAE,CAAC,QAAkB,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO;AACR,KAAA;;AAGD,IAAA,MAAM,IAAI,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AACrC,QAAA,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;AACpB,KAAA;AACD,IAAA,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;AAqBG;AACG,SAAU,kBAAkB,CAAC,MAAwB,EAAA;;IAEzD,IAAI,MAAM,CAAC,KAAK,EAAE;AAChB,QAAA,OAAO,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC,GAAI,MAAM,CAAC,KAAmB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AACjF,KAAA;IAED,IAAI,MAAM,CAAC,KAAK,EAAE;AAChB,QAAA,OAAO,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC,GAAI,MAAM,CAAC,KAAmB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AACjF,KAAA;;AAGD,IAAA,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;AAC7B,QAAA,OAAO,MAAM,CAAC;AACf,KAAA;;AAGD,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAyB,CAAC;IAClD,OAAO;AACL,QAAA,GAAG,MAAM;QACT,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC3E,CAAC;AACJ,CAAC;AAED;;;AAGG;AACa,SAAA,cAAc,CAC5B,KAA6E,EAC7E,QAAgB,EAAA;AAEhB,IAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;AAClD,IAAA,OAAO,IAAI,EAAE,OAAO,EAAE,OAA8C,CAAC;AACvE"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ValidationResult } from "../types";
|
|
2
|
+
import type { StandardSchemaV1 } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Maps a Seal ValidationResult to a Standard Schema result shape.
|
|
5
|
+
*
|
|
6
|
+
* Seal error paths are dot-notation strings (e.g. "address.city").
|
|
7
|
+
* Standard Schema expects an array of path segments: [{ key: "address" }, { key: "city" }].
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```ts
|
|
11
|
+
* const result = await validator.validate(value, context);
|
|
12
|
+
* return mapToStandardResult(result);
|
|
13
|
+
* // Success → { value: <data> }
|
|
14
|
+
* // Failure → { issues: [{ message: "...", path: [{ key: "..." }] }] }
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare function mapToStandardResult(result: ValidationResult): StandardSchemaV1.Result<unknown>;
|
|
18
|
+
//# sourceMappingURL=map-result.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-result.d.ts","sourceRoot":"","sources":["../../src/standard-schema/map-result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,gBAAgB,GACvB,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAalC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use strict';/**
|
|
2
|
+
* Maps a Seal ValidationResult to a Standard Schema result shape.
|
|
3
|
+
*
|
|
4
|
+
* Seal error paths are dot-notation strings (e.g. "address.city").
|
|
5
|
+
* Standard Schema expects an array of path segments: [{ key: "address" }, { key: "city" }].
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const result = await validator.validate(value, context);
|
|
10
|
+
* return mapToStandardResult(result);
|
|
11
|
+
* // Success → { value: <data> }
|
|
12
|
+
* // Failure → { issues: [{ message: "...", path: [{ key: "..." }] }] }
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
function mapToStandardResult(result) {
|
|
16
|
+
if (result.isValid) {
|
|
17
|
+
return { value: result.data };
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
issues: result.errors.map(e => ({
|
|
21
|
+
message: e.error,
|
|
22
|
+
path: e.input
|
|
23
|
+
? e.input.split(".").map(key => ({ key }))
|
|
24
|
+
: undefined,
|
|
25
|
+
})),
|
|
26
|
+
};
|
|
27
|
+
}exports.mapToStandardResult=mapToStandardResult;//# sourceMappingURL=map-result.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-result.js","sources":["../../src/standard-schema/map-result.ts"],"sourcesContent":[null],"names":[],"mappings":"aAGA;;;;;;;;;;;;;AAaG;AACG,SAAU,mBAAmB,CACjC,MAAwB,EAAA;IAExB,IAAI,MAAM,CAAC,OAAO,EAAE;AAClB,QAAA,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AAC/B,KAAA;IAED,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK;YAC9B,OAAO,EAAE,CAAC,CAAC,KAAK;YAChB,IAAI,EAAE,CAAC,CAAC,KAAK;kBACT,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;AAC1C,kBAAE,SAAS;AACd,SAAA,CAAC,CAAC;KACJ,CAAC;AACJ"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Standard Schema Spec Types
|
|
3
|
+
*
|
|
4
|
+
* Copied from @standard-schema/spec to avoid a runtime dependency.
|
|
5
|
+
* Source: https://standardschema.dev
|
|
6
|
+
*
|
|
7
|
+
* Implements:
|
|
8
|
+
* - StandardSchemaV1 — for validation interop (OpenAI, LangGraph, TanStack Form, Conform, etc.)
|
|
9
|
+
* - StandardJSONSchemaV1 — for JSON Schema generation (OpenAPI, draft-07, draft-2020-12)
|
|
10
|
+
*/
|
|
11
|
+
/** The Standard Schema interface. */
|
|
12
|
+
export interface StandardSchemaV1<Input = unknown, Output = Input> {
|
|
13
|
+
readonly "~standard": StandardSchemaV1.Props<Input, Output>;
|
|
14
|
+
}
|
|
15
|
+
export declare namespace StandardSchemaV1 {
|
|
16
|
+
/** The Standard Schema properties interface. */
|
|
17
|
+
interface Props<Input = unknown, Output = Input> {
|
|
18
|
+
/** The version number of the standard. */
|
|
19
|
+
readonly version: 1;
|
|
20
|
+
/** The vendor name of the schema library. */
|
|
21
|
+
readonly vendor: string;
|
|
22
|
+
/** Inferred types associated with the schema. */
|
|
23
|
+
readonly types?: Types<Input, Output> | undefined;
|
|
24
|
+
/** Validates unknown input values. */
|
|
25
|
+
readonly validate: (value: unknown, options?: Options | undefined) => Result<Output> | Promise<Result<Output>>;
|
|
26
|
+
}
|
|
27
|
+
/** Success result. */
|
|
28
|
+
interface SuccessResult<Output> {
|
|
29
|
+
readonly value: Output;
|
|
30
|
+
readonly issues?: undefined;
|
|
31
|
+
}
|
|
32
|
+
/** Options passed to validate. */
|
|
33
|
+
interface Options {
|
|
34
|
+
readonly libraryOptions?: Record<string, unknown> | undefined;
|
|
35
|
+
}
|
|
36
|
+
/** Failure result. */
|
|
37
|
+
interface FailureResult {
|
|
38
|
+
readonly issues: ReadonlyArray<Issue>;
|
|
39
|
+
}
|
|
40
|
+
type Result<Output> = SuccessResult<Output> | FailureResult;
|
|
41
|
+
/** Issue in a failed result. */
|
|
42
|
+
interface Issue {
|
|
43
|
+
readonly message: string;
|
|
44
|
+
readonly path?: ReadonlyArray<PropertyKey | PathSegment> | undefined;
|
|
45
|
+
}
|
|
46
|
+
/** A single segment in an issue path. */
|
|
47
|
+
interface PathSegment {
|
|
48
|
+
readonly key: PropertyKey;
|
|
49
|
+
}
|
|
50
|
+
/** The Standard types interface. */
|
|
51
|
+
interface Types<Input = unknown, Output = Input> {
|
|
52
|
+
readonly input: Input;
|
|
53
|
+
readonly output: Output;
|
|
54
|
+
}
|
|
55
|
+
/** Infer the input type of a Standard Schema. */
|
|
56
|
+
type InferInput<S extends StandardSchemaV1> = NonNullable<S["~standard"]["types"]>["input"];
|
|
57
|
+
/** Infer the output type of a Standard Schema. */
|
|
58
|
+
type InferOutput<S extends StandardSchemaV1> = NonNullable<S["~standard"]["types"]>["output"];
|
|
59
|
+
}
|
|
60
|
+
/** The Standard JSON Schema interface. */
|
|
61
|
+
export interface StandardJSONSchemaV1<Input = unknown, Output = Input> {
|
|
62
|
+
readonly "~standard": StandardJSONSchemaV1.Props<Input, Output>;
|
|
63
|
+
}
|
|
64
|
+
export declare namespace StandardJSONSchemaV1 {
|
|
65
|
+
interface Props<Input = unknown, Output = Input> extends Omit<StandardSchemaV1.Props<Input, Output>, never> {
|
|
66
|
+
readonly jsonSchema: Converter;
|
|
67
|
+
}
|
|
68
|
+
/** Methods for generating JSON Schema. */
|
|
69
|
+
interface Converter {
|
|
70
|
+
/** Converts the input type to JSON Schema. */
|
|
71
|
+
readonly input: (options: Options) => Record<string, unknown>;
|
|
72
|
+
/** Converts the output type to JSON Schema. */
|
|
73
|
+
readonly output: (options: Options) => Record<string, unknown>;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Supported JSON Schema targets.
|
|
77
|
+
* Libraries should throw if a target is not supported.
|
|
78
|
+
*
|
|
79
|
+
* - `draft-2020-12` — JSON Schema 2020-12 (default, recommended)
|
|
80
|
+
* - `draft-07` — JSON Schema draft-07 (Swagger 2.0, older tooling)
|
|
81
|
+
* - `openapi-3.0` — OpenAPI 3.0 extensions (nullable: true)
|
|
82
|
+
* - `openai-strict` — OpenAI Structured Outputs strict mode.
|
|
83
|
+
* All fields listed in required; optional fields
|
|
84
|
+
* expressed as `{ type: ["T", "null"] }` instead
|
|
85
|
+
* of being omitted from required.
|
|
86
|
+
*/
|
|
87
|
+
type Target = "draft-2020-12" | "draft-07" | "openapi-3.0" | "openai-strict" | ({} & string);
|
|
88
|
+
interface Options {
|
|
89
|
+
readonly target: Target;
|
|
90
|
+
readonly libraryOptions?: Record<string, unknown> | undefined;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/standard-schema/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,qCAAqC;AACrC,MAAM,WAAW,gBAAgB,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,GAAG,KAAK;IAC/D,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;CAC7D;AAED,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC,gDAAgD;IAChD,UAAiB,KAAK,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,GAAG,KAAK;QACpD,0CAA0C;QAC1C,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACpB,6CAA6C;QAC7C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,iDAAiD;QACjD,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;QAClD,sCAAsC;QACtC,QAAQ,CAAC,QAAQ,EAAE,CACjB,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,KAC1B,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;KAC/C;IAED,sBAAsB;IACtB,UAAiB,aAAa,CAAC,MAAM;QACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;KAC7B;IAED,kCAAkC;IAClC,UAAiB,OAAO;QACtB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;KAC/D;IAED,sBAAsB;IACtB,UAAiB,aAAa;QAC5B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;KACvC;IAED,KAAY,MAAM,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC;IAEnE,gCAAgC;IAChC,UAAiB,KAAK;QACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,SAAS,CAAC;KACtE;IAED,yCAAyC;IACzC,UAAiB,WAAW;QAC1B,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;KAC3B;IAED,oCAAoC;IACpC,UAAiB,KAAK,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,GAAG,KAAK;QACpD,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB;IAED,iDAAiD;IACjD,KAAY,UAAU,CAAC,CAAC,SAAS,gBAAgB,IAAI,WAAW,CAC9D,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CACxB,CAAC,OAAO,CAAC,CAAC;IAEX,kDAAkD;IAClD,KAAY,WAAW,CAAC,CAAC,SAAS,gBAAgB,IAAI,WAAW,CAC/D,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CACxB,CAAC,QAAQ,CAAC,CAAC;CACb;AAMD,0CAA0C;AAC1C,MAAM,WAAW,oBAAoB,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,GAAG,KAAK;IACnE,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;CACjE;AAED,MAAM,CAAC,OAAO,WAAW,oBAAoB,CAAC;IAC5C,UAAiB,KAAK,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,GAAG,KAAK,CACpD,SAAQ,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC;QAC1D,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC;KAChC;IAED,0CAA0C;IAC1C,UAAiB,SAAS;QACxB,8CAA8C;QAC9C,QAAQ,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9D,+CAA+C;QAC/C,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChE;IAED;;;;;;;;;;;OAWG;IACH,KAAY,MAAM,GACd,eAAe,GACf,UAAU,GACV,aAAa,GACb,eAAe,GACf,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC;IAElB,UAAiB,OAAO;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;KAC/D;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { BaseValidator } from "../validators/base-validator";
|
|
2
|
+
/**
|
|
3
|
+
* Options for conditional when rule
|
|
4
|
+
*/
|
|
5
|
+
export type WhenRuleOptions = {
|
|
6
|
+
/** Field name to check */
|
|
7
|
+
field: string;
|
|
8
|
+
/** Map of field values to validators */
|
|
9
|
+
is: Record<string, BaseValidator>;
|
|
10
|
+
/** Fallback validator if no condition matches */
|
|
11
|
+
otherwise?: BaseValidator;
|
|
12
|
+
/** Whether to check in global context or sibling context (default: "global") */
|
|
13
|
+
scope?: "global" | "sibling";
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=conditional-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conditional-types.d.ts","sourceRoot":"","sources":["../../src/types/conditional-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAClC,iDAAiD;IACjD,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,gFAAgF;IAChF,KAAK,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC9B,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { SchemaRule } from "./rule-types";
|
|
2
|
+
import type { Schema } from "./schema-types";
|
|
3
|
+
export type RuleTranslation = {
|
|
4
|
+
rule: SchemaRule;
|
|
5
|
+
context: SchemaContext;
|
|
6
|
+
attributes: {
|
|
7
|
+
input: string;
|
|
8
|
+
path: string;
|
|
9
|
+
key: string;
|
|
10
|
+
value: any;
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export type AttributeTranslation = {
|
|
15
|
+
attribute: string;
|
|
16
|
+
context: SchemaContext;
|
|
17
|
+
rule: SchemaRule;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Validation context passed to validators and rules
|
|
21
|
+
*/
|
|
22
|
+
export type SchemaContext = {
|
|
23
|
+
/** All input values */
|
|
24
|
+
allValues: any;
|
|
25
|
+
/** Parent object if nested */
|
|
26
|
+
parent: any;
|
|
27
|
+
/** Current value being validated */
|
|
28
|
+
value: any;
|
|
29
|
+
/** Current key */
|
|
30
|
+
key: string;
|
|
31
|
+
/** Full path to the current value */
|
|
32
|
+
path: string;
|
|
33
|
+
/** Schema definition if object validator */
|
|
34
|
+
schema?: Schema;
|
|
35
|
+
/** Additional context */
|
|
36
|
+
context?: Record<string, any>;
|
|
37
|
+
/** Root context */
|
|
38
|
+
rootContext?: Record<string, any>;
|
|
39
|
+
/** Translation function for error messages */
|
|
40
|
+
translateRule: (ruleTranslation: RuleTranslation) => string;
|
|
41
|
+
translateAttribute: (attributeTranslation: AttributeTranslation) => string;
|
|
42
|
+
/** Validation configurations */
|
|
43
|
+
configurations?: {
|
|
44
|
+
firstErrorOnly?: boolean;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=context-types.d.ts.map
|