@warlock.js/seal 4.0.47 → 4.0.59
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 +41 -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 +4 -0
- package/cjs/helpers/validation-helpers.d.ts.map +1 -0
- package/cjs/helpers/validation-helpers.js +48 -0
- package/cjs/helpers/validation-helpers.js.map +1 -0
- package/cjs/index.d.ts +29 -0
- package/cjs/index.d.ts.map +1 -0
- package/cjs/index.js +1 -63
- package/cjs/index.js.map +1 -1
- 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 +9 -0
- package/cjs/mutators/number-mutators.d.ts.map +1 -0
- package/cjs/mutators/number-mutators.js +23 -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 +50 -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 +68 -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 +44 -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 +55 -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 +38 -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 +34 -0
- package/cjs/rules/common/type-rules.d.ts.map +1 -0
- package/cjs/rules/common/type-rules.js +104 -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 +18 -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 +112 -0
- package/cjs/rules/conditional/forbidden-if-rules.js.map +1 -0
- package/cjs/rules/conditional/index.d.ts +10 -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 +98 -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 +20 -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 +63 -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 +63 -0
- package/cjs/rules/conditional/present-without-rules.js.map +1 -0
- package/cjs/rules/conditional/required-if-rules.d.ts +45 -0
- package/cjs/rules/conditional/required-if-rules.d.ts.map +1 -0
- package/cjs/rules/conditional/required-if-rules.js +98 -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 +20 -0
- package/cjs/rules/conditional/required-unless-rules.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 +63 -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 +63 -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 +13 -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 +78 -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 +65 -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 +90 -0
- package/cjs/rules/date/date-field-comparison-rules.js.map +1 -0
- package/cjs/rules/date/date-period-rules.d.ts +108 -0
- package/cjs/rules/date/date-period-rules.d.ts.map +1 -0
- package/cjs/rules/date/date-period-rules.js +566 -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 +57 -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 +72 -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 +279 -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 +56 -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 +48 -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 +116 -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 +234 -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 +110 -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 +110 -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 +14 -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 +13 -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 +52 -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/types/conditional-types.d.ts +15 -0
- package/cjs/types/conditional-types.d.ts.map +1 -0
- package/cjs/types/context-types.d.ts +48 -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 +27 -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 +54 -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 +7 -0
- package/cjs/validators/any-validator.d.ts.map +1 -0
- package/cjs/validators/any-validator.js +5 -0
- package/cjs/validators/any-validator.js.map +1 -0
- package/cjs/validators/array-validator.d.ts +59 -0
- package/cjs/validators/array-validator.d.ts.map +1 -0
- package/cjs/validators/array-validator.js +134 -0
- package/cjs/validators/array-validator.js.map +1 -0
- package/cjs/validators/base-validator.d.ts +610 -0
- package/cjs/validators/base-validator.d.ts.map +1 -0
- package/cjs/validators/base-validator.js +1160 -0
- package/cjs/validators/base-validator.js.map +1 -0
- package/cjs/validators/boolean-validator.d.ts +47 -0
- package/cjs/validators/boolean-validator.d.ts.map +1 -0
- package/cjs/validators/boolean-validator.js +54 -0
- package/cjs/validators/boolean-validator.js.map +1 -0
- package/cjs/validators/computed-validator.d.ts +64 -0
- package/cjs/validators/computed-validator.d.ts.map +1 -0
- package/cjs/validators/computed-validator.js +109 -0
- package/cjs/validators/computed-validator.js.map +1 -0
- package/cjs/validators/date-validator.d.ts +307 -0
- package/cjs/validators/date-validator.d.ts.map +1 -0
- package/cjs/validators/date-validator.js +645 -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 +26 -0
- package/cjs/validators/index.d.ts.map +1 -0
- package/cjs/validators/int-validator.d.ts +8 -0
- package/cjs/validators/int-validator.d.ts.map +1 -0
- package/cjs/validators/int-validator.js +9 -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/number-validator.d.ts +113 -0
- package/cjs/validators/number-validator.d.ts.map +1 -0
- package/cjs/validators/number-validator.js +192 -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 +187 -0
- package/cjs/validators/object-validator.d.ts.map +1 -0
- package/cjs/validators/object-validator.js +416 -0
- package/cjs/validators/object-validator.js.map +1 -0
- package/cjs/validators/record-validator.d.ts +33 -0
- package/cjs/validators/record-validator.d.ts.map +1 -0
- package/cjs/validators/record-validator.js +70 -0
- package/cjs/validators/record-validator.js.map +1 -0
- package/cjs/validators/scalar-validator.d.ts +82 -0
- package/cjs/validators/scalar-validator.d.ts.map +1 -0
- package/cjs/validators/scalar-validator.js +160 -0
- package/cjs/validators/scalar-validator.js.map +1 -0
- package/cjs/validators/string-validator.d.ts +191 -0
- package/cjs/validators/string-validator.d.ts.map +1 -0
- package/cjs/validators/string-validator.js +410 -0
- package/cjs/validators/string-validator.js.map +1 -0
- package/cjs/validators/tuple-validator.d.ts +34 -0
- package/cjs/validators/tuple-validator.d.ts.map +1 -0
- package/cjs/validators/tuple-validator.js +79 -0
- package/cjs/validators/tuple-validator.js.map +1 -0
- package/cjs/validators/union-validator.d.ts +42 -0
- package/cjs/validators/union-validator.d.ts.map +1 -0
- package/cjs/validators/union-validator.js +44 -0
- package/cjs/validators/union-validator.js.map +1 -0
- package/esm/config.d.ts +48 -0
- package/esm/config.d.ts.map +1 -0
- package/esm/config.js +42 -0
- package/esm/config.js.map +1 -0
- package/esm/factory/index.d.ts +3 -0
- package/esm/factory/index.d.ts.map +1 -0
- package/esm/factory/validate.d.ts +8 -0
- package/esm/factory/validate.d.ts.map +1 -0
- package/esm/factory/validate.js +23 -0
- package/esm/factory/validate.js.map +1 -0
- package/esm/factory/validators.d.ts +41 -0
- package/esm/factory/validators.d.ts.map +1 -0
- package/esm/factory/validators.js +45 -0
- package/esm/factory/validators.js.map +1 -0
- package/esm/helpers/date-helpers.d.ts +16 -0
- package/esm/helpers/date-helpers.d.ts.map +1 -0
- package/esm/helpers/date-helpers.js +20 -0
- package/esm/helpers/date-helpers.js.map +1 -0
- package/esm/helpers/file.utils.d.ts +8 -0
- package/esm/helpers/file.utils.d.ts.map +1 -0
- package/esm/helpers/file.utils.js +29 -0
- package/esm/helpers/file.utils.js.map +1 -0
- package/esm/helpers/get-field-value.d.ts +37 -0
- package/esm/helpers/get-field-value.d.ts.map +1 -0
- package/esm/helpers/get-field-value.js +40 -0
- package/esm/helpers/get-field-value.js.map +1 -0
- package/esm/helpers/index.d.ts +6 -0
- package/esm/helpers/index.d.ts.map +1 -0
- package/esm/helpers/is-empty-value.d.ts +2 -0
- package/esm/helpers/is-empty-value.d.ts.map +1 -0
- package/esm/helpers/is-empty-value.js +3 -0
- package/esm/helpers/is-empty-value.js.map +1 -0
- package/esm/helpers/path-helpers.d.ts +5 -0
- package/esm/helpers/path-helpers.d.ts.map +1 -0
- package/esm/helpers/path-helpers.js +8 -0
- package/esm/helpers/path-helpers.js.map +1 -0
- package/esm/helpers/validation-helpers.d.ts +4 -0
- package/esm/helpers/validation-helpers.d.ts.map +1 -0
- package/esm/helpers/validation-helpers.js +48 -0
- package/esm/helpers/validation-helpers.js.map +1 -0
- package/esm/index.d.ts +29 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +1 -10
- package/esm/index.js.map +1 -1
- 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 +9 -0
- package/esm/mutators/number-mutators.d.ts.map +1 -0
- package/esm/mutators/number-mutators.js +23 -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 +50 -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 +68 -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 +44 -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 +55 -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 +38 -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 +34 -0
- package/esm/rules/common/type-rules.d.ts.map +1 -0
- package/esm/rules/common/type-rules.js +104 -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 +18 -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 +112 -0
- package/esm/rules/conditional/forbidden-if-rules.js.map +1 -0
- package/esm/rules/conditional/index.d.ts +10 -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 +98 -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 +20 -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 +63 -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 +63 -0
- package/esm/rules/conditional/present-without-rules.js.map +1 -0
- package/esm/rules/conditional/required-if-rules.d.ts +45 -0
- package/esm/rules/conditional/required-if-rules.d.ts.map +1 -0
- package/esm/rules/conditional/required-if-rules.js +98 -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 +20 -0
- package/esm/rules/conditional/required-unless-rules.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 +63 -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 +63 -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 +13 -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 +78 -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 +65 -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 +90 -0
- package/esm/rules/date/date-field-comparison-rules.js.map +1 -0
- package/esm/rules/date/date-period-rules.d.ts +108 -0
- package/esm/rules/date/date-period-rules.d.ts.map +1 -0
- package/esm/rules/date/date-period-rules.js +566 -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 +57 -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 +72 -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 +279 -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 +56 -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 +48 -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 +116 -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 +234 -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 +110 -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 +110 -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 +14 -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 +13 -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 +52 -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/types/conditional-types.d.ts +15 -0
- package/esm/types/conditional-types.d.ts.map +1 -0
- package/esm/types/context-types.d.ts +48 -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 +27 -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 +54 -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 +7 -0
- package/esm/validators/any-validator.d.ts.map +1 -0
- package/esm/validators/any-validator.js +5 -0
- package/esm/validators/any-validator.js.map +1 -0
- package/esm/validators/array-validator.d.ts +59 -0
- package/esm/validators/array-validator.d.ts.map +1 -0
- package/esm/validators/array-validator.js +134 -0
- package/esm/validators/array-validator.js.map +1 -0
- package/esm/validators/base-validator.d.ts +610 -0
- package/esm/validators/base-validator.d.ts.map +1 -0
- package/esm/validators/base-validator.js +1160 -0
- package/esm/validators/base-validator.js.map +1 -0
- package/esm/validators/boolean-validator.d.ts +47 -0
- package/esm/validators/boolean-validator.d.ts.map +1 -0
- package/esm/validators/boolean-validator.js +54 -0
- package/esm/validators/boolean-validator.js.map +1 -0
- package/esm/validators/computed-validator.d.ts +64 -0
- package/esm/validators/computed-validator.d.ts.map +1 -0
- package/esm/validators/computed-validator.js +109 -0
- package/esm/validators/computed-validator.js.map +1 -0
- package/esm/validators/date-validator.d.ts +307 -0
- package/esm/validators/date-validator.d.ts.map +1 -0
- package/esm/validators/date-validator.js +645 -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 +26 -0
- package/esm/validators/index.d.ts.map +1 -0
- package/esm/validators/int-validator.d.ts +8 -0
- package/esm/validators/int-validator.d.ts.map +1 -0
- package/esm/validators/int-validator.js +9 -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/number-validator.d.ts +113 -0
- package/esm/validators/number-validator.d.ts.map +1 -0
- package/esm/validators/number-validator.js +192 -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 +187 -0
- package/esm/validators/object-validator.d.ts.map +1 -0
- package/esm/validators/object-validator.js +416 -0
- package/esm/validators/object-validator.js.map +1 -0
- package/esm/validators/record-validator.d.ts +33 -0
- package/esm/validators/record-validator.d.ts.map +1 -0
- package/esm/validators/record-validator.js +70 -0
- package/esm/validators/record-validator.js.map +1 -0
- package/esm/validators/scalar-validator.d.ts +82 -0
- package/esm/validators/scalar-validator.d.ts.map +1 -0
- package/esm/validators/scalar-validator.js +160 -0
- package/esm/validators/scalar-validator.js.map +1 -0
- package/esm/validators/string-validator.d.ts +191 -0
- package/esm/validators/string-validator.d.ts.map +1 -0
- package/esm/validators/string-validator.js +410 -0
- package/esm/validators/string-validator.js.map +1 -0
- package/esm/validators/tuple-validator.d.ts +34 -0
- package/esm/validators/tuple-validator.d.ts.map +1 -0
- package/esm/validators/tuple-validator.js +79 -0
- package/esm/validators/tuple-validator.js.map +1 -0
- package/esm/validators/union-validator.d.ts +42 -0
- package/esm/validators/union-validator.d.ts.map +1 -0
- package/esm/validators/union-validator.js +44 -0
- package/esm/validators/union-validator.js.map +1 -0
- package/package.json +47 -36
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import {isPlainObject}from'@mongez/supportive-is';import'@mongez/reinforcements';import {setKeyPath}from'../helpers/path-helpers.js';import'net';import {objectRule}from'../rules/common/type-rules.js';import {BaseValidator}from'./base-validator.js';/**
|
|
2
|
+
* Record validator class - validates objects with dynamic keys and consistent value types
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* // Translations object
|
|
7
|
+
* v.record(v.string())
|
|
8
|
+
* // Valid: { en: "Hello", ar: "مرحبا", fr: "Bonjour" }
|
|
9
|
+
*
|
|
10
|
+
* // User preferences
|
|
11
|
+
* v.record(v.union([v.string(), v.number(), v.boolean()]))
|
|
12
|
+
* // Valid: { theme: "dark", fontSize: 16, notifications: true }
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
class RecordValidator extends BaseValidator {
|
|
16
|
+
valueValidator;
|
|
17
|
+
constructor(valueValidator, errorMessage) {
|
|
18
|
+
super();
|
|
19
|
+
this.valueValidator = valueValidator;
|
|
20
|
+
this.addRule(objectRule, errorMessage);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Check if value is a plain object type
|
|
24
|
+
*/
|
|
25
|
+
matchesType(value) {
|
|
26
|
+
return isPlainObject(value);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Clone the validator
|
|
30
|
+
*/
|
|
31
|
+
clone() {
|
|
32
|
+
const cloned = super.clone();
|
|
33
|
+
cloned.valueValidator = this.valueValidator.clone();
|
|
34
|
+
return cloned;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Validate record - iterate all keys and validate each value
|
|
38
|
+
*/
|
|
39
|
+
async validate(data, context) {
|
|
40
|
+
const mutatedData = (await this.mutate(data, context)) || {};
|
|
41
|
+
const result = await super.validate(data, context);
|
|
42
|
+
if (result.isValid === false)
|
|
43
|
+
return result;
|
|
44
|
+
const errors = [];
|
|
45
|
+
const keys = Object.keys(mutatedData);
|
|
46
|
+
// Validate all values in parallel
|
|
47
|
+
const validationPromises = keys.map(async (key) => {
|
|
48
|
+
const childContext = {
|
|
49
|
+
...context,
|
|
50
|
+
parent: mutatedData,
|
|
51
|
+
value: mutatedData[key],
|
|
52
|
+
key,
|
|
53
|
+
path: setKeyPath(context.path, key),
|
|
54
|
+
};
|
|
55
|
+
const childResult = await this.valueValidator.validate(mutatedData[key], childContext);
|
|
56
|
+
// Update mutated data with validated result
|
|
57
|
+
mutatedData[key] = childResult.data;
|
|
58
|
+
// Collect errors from this value
|
|
59
|
+
if (childResult.isValid === false) {
|
|
60
|
+
errors.push(...childResult.errors);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
await Promise.all(validationPromises);
|
|
64
|
+
return {
|
|
65
|
+
isValid: errors.length === 0,
|
|
66
|
+
errors,
|
|
67
|
+
data: await this.startTransformationPipeline(mutatedData, context),
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
}export{RecordValidator};//# sourceMappingURL=record-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record-validator.js","sources":["../../src/validators/record-validator.ts"],"sourcesContent":[null],"names":[],"mappings":"wPAMA;;;;;;;;;;;;;AAaG;AACG,MAAO,eAAgB,SAAQ,aAAa,CAAA;AAEvC,IAAA,cAAA,CAAA;IADT,WACS,CAAA,cAA6B,EACpC,YAAqB,EAAA;AAErB,QAAA,KAAK,EAAE,CAAC;QAHD,IAAc,CAAA,cAAA,GAAd,cAAc,CAAe;AAIpC,QAAA,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;KACxC;AAED;;AAEG;AACI,IAAA,WAAW,CAAC,KAAU,EAAA;AAC3B,QAAA,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;KAC7B;AAED;;AAEG;IACa,KAAK,GAAA;AACnB,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;AACpD,QAAA,OAAO,MAAM,CAAC;KACf;AAED;;AAEG;AACI,IAAA,MAAM,QAAQ,CACnB,IAAS,EACT,OAAsB,EAAA;AAEtB,QAAA,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAEnD,QAAA,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK;AAAE,YAAA,OAAO,MAAM,CAAC;QAE5C,MAAM,MAAM,GAA+B,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;;QAGtC,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,OAAM,GAAG,KAAG;AAC9C,YAAA,MAAM,YAAY,GAAkB;AAClC,gBAAA,GAAG,OAAO;AACV,gBAAA,MAAM,EAAE,WAAW;AACnB,gBAAA,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;gBACvB,GAAG;gBACH,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;aACpC,CAAC;AAEF,YAAA,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CACpD,WAAW,CAAC,GAAG,CAAC,EAChB,YAAY,CACb,CAAC;;AAGF,YAAA,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC;;AAGpC,YAAA,IAAI,WAAW,CAAC,OAAO,KAAK,KAAK,EAAE;gBACjC,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AACpC,aAAA;AACH,SAAC,CAAC,CAAC;AAEH,QAAA,MAAM,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAEtC,OAAO;AACL,YAAA,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC5B,MAAM;YACN,IAAI,EAAE,MAAM,IAAI,CAAC,2BAA2B,CAAC,WAAW,EAAE,OAAO,CAAC;SACnE,CAAC;KACH;AACF"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { BaseValidator } from "./base-validator";
|
|
2
|
+
/**
|
|
3
|
+
* Scalar validator class
|
|
4
|
+
*
|
|
5
|
+
* Core validator for scalar values (string, number, boolean)
|
|
6
|
+
*
|
|
7
|
+
* Database methods (unique, exists, etc.) are injected by the framework
|
|
8
|
+
*/
|
|
9
|
+
export declare class ScalarValidator extends BaseValidator {
|
|
10
|
+
constructor(errorMessage?: string);
|
|
11
|
+
/**
|
|
12
|
+
* Add matches type
|
|
13
|
+
*/
|
|
14
|
+
matchesType(value: any): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Mutate the scalar value to be number
|
|
17
|
+
*/
|
|
18
|
+
asNumber(): this;
|
|
19
|
+
/**
|
|
20
|
+
* Accepted value
|
|
21
|
+
* The value will be valid if it equals 1 | "1" | true | "true" | "yes" | "y" | "on"
|
|
22
|
+
*/
|
|
23
|
+
accepted(errorMessage?: string): this;
|
|
24
|
+
/**
|
|
25
|
+
* Accepted value if another field's value equals to a specific value
|
|
26
|
+
*/
|
|
27
|
+
acceptedIf(field: string, value: any, errorMessage?: string): this;
|
|
28
|
+
/**
|
|
29
|
+
* Accepted value if another field's value is not equal to the given value
|
|
30
|
+
*/
|
|
31
|
+
acceptedUnless(field: string, value: any, errorMessage?: string): this;
|
|
32
|
+
/**
|
|
33
|
+
* Accepted value if another field is required
|
|
34
|
+
*/
|
|
35
|
+
acceptedIfRequired(field: string, errorMessage?: string): this;
|
|
36
|
+
/**
|
|
37
|
+
* Accepted value if another field is present
|
|
38
|
+
*/
|
|
39
|
+
acceptedIfPresent(field: string, errorMessage?: string): this;
|
|
40
|
+
/**
|
|
41
|
+
* Accepted value if another field is missing
|
|
42
|
+
*/
|
|
43
|
+
acceptedWithout(field: string, errorMessage?: string): this;
|
|
44
|
+
/**
|
|
45
|
+
* Declined value
|
|
46
|
+
* The value will be valid if it equals 0 | "0" | false | "false" | "no" | "n" | "off"
|
|
47
|
+
*/
|
|
48
|
+
declined(errorMessage?: string): this;
|
|
49
|
+
/**
|
|
50
|
+
* Declined value if another field's value equals to a specific value
|
|
51
|
+
*/
|
|
52
|
+
declinedIf(field: string, value: any, errorMessage?: string): this;
|
|
53
|
+
/**
|
|
54
|
+
* Declined value if another field's value is not equal to the given value
|
|
55
|
+
*/
|
|
56
|
+
declinedUnless(field: string, value: any, errorMessage?: string): this;
|
|
57
|
+
/**
|
|
58
|
+
* Declined value if another field is required
|
|
59
|
+
*/
|
|
60
|
+
declinedIfRequired(field: string, errorMessage?: string): this;
|
|
61
|
+
/**
|
|
62
|
+
* Declined value if another field is present
|
|
63
|
+
*/
|
|
64
|
+
declinedIfPresent(field: string, errorMessage?: string): this;
|
|
65
|
+
/**
|
|
66
|
+
* Declined value if another field is missing
|
|
67
|
+
*/
|
|
68
|
+
declinedWithout(field: string, errorMessage?: string): this;
|
|
69
|
+
/** Value must be one of the given values */
|
|
70
|
+
enum(values: any, errorMessage?: string): this;
|
|
71
|
+
/** Value must be one of the given values */
|
|
72
|
+
in(values: any[], errorMessage?: string): this;
|
|
73
|
+
/** @alias in */
|
|
74
|
+
oneOf(values: any[], errorMessage?: string): this;
|
|
75
|
+
/** Add rule to check if the value is one of the allowed values */
|
|
76
|
+
allowsOnly(values: any[], errorMessage?: string): this;
|
|
77
|
+
/** Forbid the value from being one of the given values */
|
|
78
|
+
forbids(values: any[], errorMessage?: string): this;
|
|
79
|
+
/** @alias forbids */
|
|
80
|
+
notIn(values: any[], errorMessage?: string): this;
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=scalar-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scalar-validator.d.ts","sourceRoot":"","sources":["../../src/validators/scalar-validator.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;;;;GAMG;AACH,qBAAa,eAAgB,SAAQ,aAAa;gBAC7B,YAAY,CAAC,EAAE,MAAM;IAKxC;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG;IAQ7B;;OAEG;IACI,QAAQ;IAMf;;;OAGG;IACI,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;IAKrC;;OAEG;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM;IAOlE;;OAEG;IACI,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM;IAOtE;;OAEG;IACI,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAM9D;;OAEG;IACI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAM7D;;OAEG;IACI,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAM3D;;;OAGG;IACI,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;IAKrC;;OAEG;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM;IAOlE;;OAEG;IACI,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM;IAOtE;;OAEG;IACI,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAM9D;;OAEG;IACI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAM7D;;OAEG;IACI,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAM3D,4CAA4C;IACrC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,YAAY,CAAC,EAAE,MAAM;IAM9C,4CAA4C;IACrC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAM9C,gBAAgB;IACT,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAIjD,kEAAkE;IAC3D,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAMtD,0DAA0D;IACnD,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAMnD,qBAAqB;IACd,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;CAGlD"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import'@mongez/reinforcements';import'@mongez/supportive-is';import'dayjs';import {numberMutator}from'../mutators/number-mutators.js';import'net';import {enumRule,inRule,allowedValuesRule,notAllowedValuesRule}from'../rules/common/enum.js';import {scalarRule}from'../rules/common/type-rules.js';import {acceptedRule,acceptedIfRule,acceptedUnlessRule,acceptedIfRequiredRule,acceptedIfPresentRule,acceptedWithoutRule}from'../rules/scalar/accepted-rule.js';import {declinedRule,declinedIfRule,declinedUnlessRule,declinedIfRequiredRule,declinedIfPresentRule,declinedWithoutRule}from'../rules/scalar/declined-rule.js';import {BaseValidator}from'./base-validator.js';/**
|
|
2
|
+
* Scalar validator class
|
|
3
|
+
*
|
|
4
|
+
* Core validator for scalar values (string, number, boolean)
|
|
5
|
+
*
|
|
6
|
+
* Database methods (unique, exists, etc.) are injected by the framework
|
|
7
|
+
*/
|
|
8
|
+
class ScalarValidator extends BaseValidator {
|
|
9
|
+
constructor(errorMessage) {
|
|
10
|
+
super();
|
|
11
|
+
this.addRule(scalarRule, errorMessage);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Add matches type
|
|
15
|
+
*/
|
|
16
|
+
matchesType(value) {
|
|
17
|
+
return (typeof value === "string" ||
|
|
18
|
+
typeof value === "number" ||
|
|
19
|
+
typeof value === "boolean");
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Mutate the scalar value to be number
|
|
23
|
+
*/
|
|
24
|
+
asNumber() {
|
|
25
|
+
this.addMutator(numberMutator);
|
|
26
|
+
return this;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Accepted value
|
|
30
|
+
* The value will be valid if it equals 1 | "1" | true | "true" | "yes" | "y" | "on"
|
|
31
|
+
*/
|
|
32
|
+
accepted(errorMessage) {
|
|
33
|
+
this.addRule(acceptedRule, errorMessage);
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Accepted value if another field's value equals to a specific value
|
|
38
|
+
*/
|
|
39
|
+
acceptedIf(field, value, errorMessage) {
|
|
40
|
+
const rule = this.addRule(acceptedIfRule, errorMessage);
|
|
41
|
+
rule.context.options.field = field;
|
|
42
|
+
rule.context.options.value = value;
|
|
43
|
+
return this;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Accepted value if another field's value is not equal to the given value
|
|
47
|
+
*/
|
|
48
|
+
acceptedUnless(field, value, errorMessage) {
|
|
49
|
+
const rule = this.addRule(acceptedUnlessRule, errorMessage);
|
|
50
|
+
rule.context.options.field = field;
|
|
51
|
+
rule.context.options.value = value;
|
|
52
|
+
return this;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Accepted value if another field is required
|
|
56
|
+
*/
|
|
57
|
+
acceptedIfRequired(field, errorMessage) {
|
|
58
|
+
const rule = this.addRule(acceptedIfRequiredRule, errorMessage);
|
|
59
|
+
rule.context.options.field = field;
|
|
60
|
+
return this;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Accepted value if another field is present
|
|
64
|
+
*/
|
|
65
|
+
acceptedIfPresent(field, errorMessage) {
|
|
66
|
+
const rule = this.addRule(acceptedIfPresentRule, errorMessage);
|
|
67
|
+
rule.context.options.field = field;
|
|
68
|
+
return this;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Accepted value if another field is missing
|
|
72
|
+
*/
|
|
73
|
+
acceptedWithout(field, errorMessage) {
|
|
74
|
+
const rule = this.addRule(acceptedWithoutRule, errorMessage);
|
|
75
|
+
rule.context.options.field = field;
|
|
76
|
+
return this;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Declined value
|
|
80
|
+
* The value will be valid if it equals 0 | "0" | false | "false" | "no" | "n" | "off"
|
|
81
|
+
*/
|
|
82
|
+
declined(errorMessage) {
|
|
83
|
+
this.addRule(declinedRule, errorMessage);
|
|
84
|
+
return this;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Declined value if another field's value equals to a specific value
|
|
88
|
+
*/
|
|
89
|
+
declinedIf(field, value, errorMessage) {
|
|
90
|
+
const rule = this.addRule(declinedIfRule, errorMessage);
|
|
91
|
+
rule.context.options.field = field;
|
|
92
|
+
rule.context.options.value = value;
|
|
93
|
+
return this;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Declined value if another field's value is not equal to the given value
|
|
97
|
+
*/
|
|
98
|
+
declinedUnless(field, value, errorMessage) {
|
|
99
|
+
const rule = this.addRule(declinedUnlessRule, errorMessage);
|
|
100
|
+
rule.context.options.field = field;
|
|
101
|
+
rule.context.options.value = value;
|
|
102
|
+
return this;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Declined value if another field is required
|
|
106
|
+
*/
|
|
107
|
+
declinedIfRequired(field, errorMessage) {
|
|
108
|
+
const rule = this.addRule(declinedIfRequiredRule, errorMessage);
|
|
109
|
+
rule.context.options.field = field;
|
|
110
|
+
return this;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Declined value if another field is present
|
|
114
|
+
*/
|
|
115
|
+
declinedIfPresent(field, errorMessage) {
|
|
116
|
+
const rule = this.addRule(declinedIfPresentRule, errorMessage);
|
|
117
|
+
rule.context.options.field = field;
|
|
118
|
+
return this;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Declined value if another field is missing
|
|
122
|
+
*/
|
|
123
|
+
declinedWithout(field, errorMessage) {
|
|
124
|
+
const rule = this.addRule(declinedWithoutRule, errorMessage);
|
|
125
|
+
rule.context.options.field = field;
|
|
126
|
+
return this;
|
|
127
|
+
}
|
|
128
|
+
/** Value must be one of the given values */
|
|
129
|
+
enum(values, errorMessage) {
|
|
130
|
+
const rule = this.addRule(enumRule, errorMessage);
|
|
131
|
+
rule.context.options.enum = Object.values(values);
|
|
132
|
+
return this;
|
|
133
|
+
}
|
|
134
|
+
/** Value must be one of the given values */
|
|
135
|
+
in(values, errorMessage) {
|
|
136
|
+
const rule = this.addRule(inRule, errorMessage);
|
|
137
|
+
rule.context.options.values = values;
|
|
138
|
+
return this;
|
|
139
|
+
}
|
|
140
|
+
/** @alias in */
|
|
141
|
+
oneOf(values, errorMessage) {
|
|
142
|
+
return this.in(values, errorMessage);
|
|
143
|
+
}
|
|
144
|
+
/** Add rule to check if the value is one of the allowed values */
|
|
145
|
+
allowsOnly(values, errorMessage) {
|
|
146
|
+
const rule = this.addRule(allowedValuesRule, errorMessage);
|
|
147
|
+
rule.context.options.allowedValues = values;
|
|
148
|
+
return this;
|
|
149
|
+
}
|
|
150
|
+
/** Forbid the value from being one of the given values */
|
|
151
|
+
forbids(values, errorMessage) {
|
|
152
|
+
const rule = this.addRule(notAllowedValuesRule, errorMessage);
|
|
153
|
+
rule.context.options.notAllowedValues = values;
|
|
154
|
+
return this;
|
|
155
|
+
}
|
|
156
|
+
/** @alias forbids */
|
|
157
|
+
notIn(values, errorMessage) {
|
|
158
|
+
return this.forbids(values, errorMessage);
|
|
159
|
+
}
|
|
160
|
+
}export{ScalarValidator};//# sourceMappingURL=scalar-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scalar-validator.js","sources":["../../src/validators/scalar-validator.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import { BaseValidator } from "./base-validator";
|
|
2
|
+
import { ScalarValidator } from "./scalar-validator";
|
|
3
|
+
/**
|
|
4
|
+
* String validator class
|
|
5
|
+
*/
|
|
6
|
+
export declare class StringValidator extends BaseValidator {
|
|
7
|
+
constructor(errorMessage?: string);
|
|
8
|
+
/**
|
|
9
|
+
* Check if value is a string type
|
|
10
|
+
*/
|
|
11
|
+
matchesType(value: any): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Stringify the value if not a string
|
|
14
|
+
*/
|
|
15
|
+
toString(): this;
|
|
16
|
+
/** Convert string to uppercase */
|
|
17
|
+
uppercase(): this;
|
|
18
|
+
/** Convert string to lowercase */
|
|
19
|
+
lowercase(): this;
|
|
20
|
+
/** Capitalize only the first letter of the string */
|
|
21
|
+
capitalize(): this;
|
|
22
|
+
/** Capitalize the first letter of each word (Title Case) */
|
|
23
|
+
titleCase(): this;
|
|
24
|
+
/** Convert to camelCase */
|
|
25
|
+
camelCase(): this;
|
|
26
|
+
/** Convert to PascalCase */
|
|
27
|
+
pascalCase(): this;
|
|
28
|
+
/** Convert to snake_case */
|
|
29
|
+
snakeCase(): this;
|
|
30
|
+
/** Convert to kebab-case */
|
|
31
|
+
kebabCase(): this;
|
|
32
|
+
/**
|
|
33
|
+
* Trim the given needle from the string
|
|
34
|
+
* If no needle is provided, the default is a single space
|
|
35
|
+
*/
|
|
36
|
+
trim(needle?: string): this;
|
|
37
|
+
/** Trim from the left/start */
|
|
38
|
+
ltrim(needle?: string): this;
|
|
39
|
+
/** Trim from the right/end */
|
|
40
|
+
rtrim(needle?: string): this;
|
|
41
|
+
/** Trim multiple whitespace into single space */
|
|
42
|
+
trimMultipleWhitespace(): this;
|
|
43
|
+
/** Pad string from the start to reach target length */
|
|
44
|
+
padStart(length: number, char?: string): this;
|
|
45
|
+
/** Pad string from the end to reach target length */
|
|
46
|
+
padEnd(length: number, char?: string): this;
|
|
47
|
+
/** Remove HTML tags (safe HTML) */
|
|
48
|
+
safeHtml(): this;
|
|
49
|
+
/** HTML escape special characters */
|
|
50
|
+
htmlEscape(): this;
|
|
51
|
+
/** Unescape HTML entities */
|
|
52
|
+
unescapeHtml(): this;
|
|
53
|
+
/**
|
|
54
|
+
* Remove special characters
|
|
55
|
+
* This will remove all characters that are not alphanumeric or whitespace
|
|
56
|
+
*/
|
|
57
|
+
removeSpecialCharacters(): this;
|
|
58
|
+
/** Convert to only alphabetic characters */
|
|
59
|
+
toAlpha(): this;
|
|
60
|
+
/** Convert to only alphanumeric characters */
|
|
61
|
+
toAlphanumeric(): this;
|
|
62
|
+
/** Remove all numeric characters */
|
|
63
|
+
removeNumbers(): this;
|
|
64
|
+
/** URL decode */
|
|
65
|
+
urlDecode(): this;
|
|
66
|
+
/** URL encode */
|
|
67
|
+
urlEncode(): this;
|
|
68
|
+
/** Convert to URL-friendly slug */
|
|
69
|
+
slug(): this;
|
|
70
|
+
/** Base64 encode */
|
|
71
|
+
base64Encode(): this;
|
|
72
|
+
/** Base64 decode */
|
|
73
|
+
base64Decode(): this;
|
|
74
|
+
/** Replace substring or pattern */
|
|
75
|
+
replace(search: string | RegExp, replace: string): this;
|
|
76
|
+
/** Replace all occurrences of substring or pattern */
|
|
77
|
+
replaceAll(search: string | RegExp, replace: string): this;
|
|
78
|
+
/** Append/suffix text to the end */
|
|
79
|
+
append(suffix: string): this;
|
|
80
|
+
/** Prepend/prefix text to the beginning */
|
|
81
|
+
prepend(prefix: string): this;
|
|
82
|
+
/** Reverse the string */
|
|
83
|
+
reverse(): this;
|
|
84
|
+
/** Truncate to a maximum length */
|
|
85
|
+
truncate(maxLength: number, suffix?: string): this;
|
|
86
|
+
/** Repeat string N times */
|
|
87
|
+
repeat(count: number): this;
|
|
88
|
+
/** Mask part of string */
|
|
89
|
+
mask(start: number, end?: number, char?: string): this;
|
|
90
|
+
/** Value must be a valid email */
|
|
91
|
+
email(errorMessage?: string): this;
|
|
92
|
+
/** Value must be a valid URL */
|
|
93
|
+
url(errorMessage?: string): this;
|
|
94
|
+
/** Value can not have whitespace */
|
|
95
|
+
withoutWhitespace(errorMessage?: string): this;
|
|
96
|
+
/** Value must match the given pattern */
|
|
97
|
+
pattern(pattern: RegExp, errorMessage?: string): this;
|
|
98
|
+
/**
|
|
99
|
+
* Value must be a strong password
|
|
100
|
+
* Requirements:
|
|
101
|
+
* - At least 8 characters
|
|
102
|
+
* - At least 1 uppercase letter
|
|
103
|
+
* - At least 1 lowercase letter
|
|
104
|
+
* - At least 1 number
|
|
105
|
+
* - At least 1 special character
|
|
106
|
+
*/
|
|
107
|
+
strongPassword(minLength?: number, errorMessage?: string): this;
|
|
108
|
+
/** Value must be exactly the given number of words */
|
|
109
|
+
words(words: number, errorMessage?: string): this;
|
|
110
|
+
/** Value must be at least the given number of words */
|
|
111
|
+
minWords(words: number, errorMessage?: string): this;
|
|
112
|
+
/** Value must be at most the given number of words */
|
|
113
|
+
maxWords(words: number, errorMessage?: string): this;
|
|
114
|
+
/** Value length must be greater than the given length */
|
|
115
|
+
minLength(length: number, errorMessage?: string): this;
|
|
116
|
+
/** @alias minLength */
|
|
117
|
+
min(min: number, errorMessage?: string): this;
|
|
118
|
+
/** Value length must be less than the given length */
|
|
119
|
+
maxLength(length: number, errorMessage?: string): this;
|
|
120
|
+
/** @alias maxLength */
|
|
121
|
+
max(max: number, errorMessage?: string): this;
|
|
122
|
+
/** Value must be of the given length */
|
|
123
|
+
length(length: number, errorMessage?: string): this;
|
|
124
|
+
/**
|
|
125
|
+
* String length must be between min and max (inclusive)
|
|
126
|
+
*
|
|
127
|
+
* @param min - Minimum length (inclusive)
|
|
128
|
+
* @param max - Maximum length (inclusive)
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```ts
|
|
132
|
+
* v.string().between(5, 10) // Length: 5 to 10 characters
|
|
133
|
+
* v.string().lengthBetween(8, 20) // Same using alias
|
|
134
|
+
* ```
|
|
135
|
+
*
|
|
136
|
+
* @category Validation Rule
|
|
137
|
+
*/
|
|
138
|
+
between(min: number, max: number, errorMessage?: string): this;
|
|
139
|
+
/**
|
|
140
|
+
* Alias for between() - string length between min and max
|
|
141
|
+
*/
|
|
142
|
+
lengthBetween(min: number, max: number, errorMessage?: string): this;
|
|
143
|
+
/** Allow only alphabetic characters */
|
|
144
|
+
alpha(errorMessage?: string): this;
|
|
145
|
+
/** Allow only alphanumeric characters */
|
|
146
|
+
alphanumeric(errorMessage?: string): this;
|
|
147
|
+
/** Allow only numeric characters */
|
|
148
|
+
numeric(errorMessage?: string): this;
|
|
149
|
+
/** Value must starts with the given string */
|
|
150
|
+
startsWith(value: string, errorMessage?: string): this;
|
|
151
|
+
/** Value must ends with the given string */
|
|
152
|
+
endsWith(value: string, errorMessage?: string): this;
|
|
153
|
+
/** Value must contain the given string */
|
|
154
|
+
contains(value: string, errorMessage?: string): this;
|
|
155
|
+
/** Value must not contain the given string */
|
|
156
|
+
notContains(value: string, errorMessage?: string): this;
|
|
157
|
+
/** Value must be a valid IP address */
|
|
158
|
+
ip(errorMessage?: string): this;
|
|
159
|
+
/** Value must be a valid IPv4 address */
|
|
160
|
+
ip4(errorMessage?: string): this;
|
|
161
|
+
/** Value must be a valid IPv6 address */
|
|
162
|
+
ip6(errorMessage?: string): this;
|
|
163
|
+
/** Check if the string matches a credit card number */
|
|
164
|
+
creditCard(errorMessage?: string): this;
|
|
165
|
+
/** Determine if the value is a valid color */
|
|
166
|
+
color(errorMessage?: string): this;
|
|
167
|
+
/** Determine if the value is a valid hex color */
|
|
168
|
+
hexColor(errorMessage?: string): this;
|
|
169
|
+
/** Determine if the value is a valid HSL color */
|
|
170
|
+
hslColor(errorMessage?: string): this;
|
|
171
|
+
/** Determine if the value is a valid RGB color */
|
|
172
|
+
rgbColor(errorMessage?: string): this;
|
|
173
|
+
/** Determine if the value is a valid RGBA color */
|
|
174
|
+
rgbaColor(errorMessage?: string): this;
|
|
175
|
+
/** Determine if the value is a valid light color */
|
|
176
|
+
lightColor(errorMessage?: string): this;
|
|
177
|
+
/** Determine if the value is a valid dark color */
|
|
178
|
+
darkColor(errorMessage?: string): this;
|
|
179
|
+
enum: (values: any, errorMessage?: string) => ScalarValidator;
|
|
180
|
+
/** Value must be in one of the given values */
|
|
181
|
+
in: (values: any[], errorMessage?: string) => ScalarValidator;
|
|
182
|
+
/** @alias in */
|
|
183
|
+
oneOf: (values: any[], errorMessage?: string) => ScalarValidator;
|
|
184
|
+
/** @alias oneOf */
|
|
185
|
+
allowsOnly: (values: any[], errorMessage?: string) => ScalarValidator;
|
|
186
|
+
/** Forbid the value from being one of the given values */
|
|
187
|
+
forbids: (values: any[], errorMessage?: string) => ScalarValidator;
|
|
188
|
+
/** @alias forbids */
|
|
189
|
+
notIn: (values: any[], errorMessage?: string) => ScalarValidator;
|
|
190
|
+
}
|
|
191
|
+
//# sourceMappingURL=string-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string-validator.d.ts","sourceRoot":"","sources":["../../src/validators/string-validator.ts"],"names":[],"mappings":"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"}
|