valgen 5.15.0 → 5.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -1
- package/cjs/rules/format-rules/is-time.js +20 -0
- package/cjs/rules/index.js +1 -0
- package/cjs/rules/type-rules/is-array.js +1 -1
- package/cjs/rules/type-rules/is-date.js +2 -2
- package/cjs/tsconfig-build-cjs.tsbuildinfo +1 -1
- package/esm/rules/format-rules/is-time.js +16 -0
- package/esm/rules/index.js +1 -0
- package/esm/rules/type-rules/is-array.js +1 -1
- package/esm/rules/type-rules/is-date.js +2 -2
- package/esm/tsconfig-build-esm.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/types/rules/format-rules/is-time.d.ts +9 -0
- package/types/rules/index.d.ts +1 -0
- package/types/rules/type-rules/is-date.d.ts +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,20 @@
|
|
|
1
1
|
## Changelog
|
|
2
2
|
|
|
3
|
-
### [v5.15.
|
|
3
|
+
### [v5.15.1](https://github.com/panates/valgen/compare/v5.15.0...v5.15.1) -
|
|
4
|
+
|
|
5
|
+
#### 🚀 New Features
|
|
6
|
+
|
|
7
|
+
- feat: Added isTime rule @Eray Hanoğlu
|
|
8
|
+
|
|
9
|
+
#### 🪲 Fixes
|
|
10
|
+
|
|
11
|
+
- fix: Error message fix @Eray Hanoğlu
|
|
12
|
+
|
|
13
|
+
#### 🛠 Refactoring and Updates
|
|
14
|
+
|
|
15
|
+
- refactor: Removed path filter @Eray Hanoğlu
|
|
16
|
+
|
|
17
|
+
### [v5.15.0](https://github.com/panates/valgen/compare/v5.14.1...v5.15.0) - 24 April 2025
|
|
4
18
|
|
|
5
19
|
#### 🚀 New Features
|
|
6
20
|
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isTime = isTime;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const validator_1 = tslib_1.__importDefault(require("@browsery/validator"));
|
|
6
|
+
const index_js_1 = require("../../core/index.js");
|
|
7
|
+
/**
|
|
8
|
+
* Validates if value is a time formatted string
|
|
9
|
+
* @validator isTime
|
|
10
|
+
*/
|
|
11
|
+
function isTime(options) {
|
|
12
|
+
return (0, index_js_1.validator)('isURL', (input, context, _this) => {
|
|
13
|
+
if (input != null &&
|
|
14
|
+
typeof input === 'string' &&
|
|
15
|
+
validator_1.default.isTime(input, options)) {
|
|
16
|
+
return input;
|
|
17
|
+
}
|
|
18
|
+
context.fail(_this, `Value must be a valid Time`, input);
|
|
19
|
+
}, options);
|
|
20
|
+
}
|
package/cjs/rules/index.js
CHANGED
|
@@ -24,6 +24,7 @@ tslib_1.__exportStar(require("./format-rules/is-mobile-phone.js"), exports);
|
|
|
24
24
|
tslib_1.__exportStar(require("./format-rules/is-object-id.js"), exports);
|
|
25
25
|
tslib_1.__exportStar(require("./format-rules/is-passport-number.js"), exports);
|
|
26
26
|
tslib_1.__exportStar(require("./format-rules/is-port.js"), exports);
|
|
27
|
+
tslib_1.__exportStar(require("./format-rules/is-time.js"), exports);
|
|
27
28
|
tslib_1.__exportStar(require("./format-rules/is-url.js"), exports);
|
|
28
29
|
tslib_1.__exportStar(require("./format-rules/is-uuid.js"), exports);
|
|
29
30
|
tslib_1.__exportStar(require("./format-rules/is-vat-number.js"), exports);
|
|
@@ -35,7 +35,7 @@ function isArray(itemValidator, options) {
|
|
|
35
35
|
itemContext.index = i;
|
|
36
36
|
v = itemValidator(v, {
|
|
37
37
|
onFail(issue) {
|
|
38
|
-
return `Item at index [${i}] is not
|
|
38
|
+
return `Item at index [${i}] is not valid. ` + issue.message;
|
|
39
39
|
},
|
|
40
40
|
}, itemContext);
|
|
41
41
|
out.push(v);
|
|
@@ -7,8 +7,8 @@ const index_js_1 = require("../../core/index.js");
|
|
|
7
7
|
// noinspection RegExpUnnecessaryNonCapturingGroup
|
|
8
8
|
const DATE_PATTERN = /^(\d{4})(?:-(0[0-9]|1[0-2]))?(?:-([0-2][0-9]|3[0-1]))?(?:[T ](([0-1][0-9]|2[0-4]):([0-5][0-9])(?::([0-5][0-9]))?(?:\.(\d{0,3}))?)?((?:[+-](0[0-9]|1[0-2])(?::(\d{2}))?)|Z)?)?$/;
|
|
9
9
|
/**
|
|
10
|
-
* Validates if value is instance of "Date".
|
|
11
|
-
* Converts input value to Date if coerce option is set to 'true'.
|
|
10
|
+
* Validates if value is an instance of "Date".
|
|
11
|
+
* Converts input value to Date if a coerce option is set to 'true'.
|
|
12
12
|
* @validator isDate
|
|
13
13
|
*/
|
|
14
14
|
function isDate(options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../../src/constants.ts","../../src/factories.ts","../../src/index.ts","../../src/core/constants.ts","../../src/core/context.ts","../../src/core/index.ts","../../src/core/types.ts","../../src/core/utilities.ts","../../src/core/validation-error.ts","../../src/core/validator.ts","../../src/helpers/object.utils.ts","../../src/helpers/omit-undefined.ts","../../src/helpers/string.utils.ts","../../src/rules/index.ts","../../src/rules/format-rules/is-alpha.ts","../../src/rules/format-rules/is-ascii.ts","../../src/rules/format-rules/is-base64.ts","../../src/rules/format-rules/is-btc-address.ts","../../src/rules/format-rules/is-credit-card.ts","../../src/rules/format-rules/is-decimal.ts","../../src/rules/format-rules/is-ean.ts","../../src/rules/format-rules/is-email.ts","../../src/rules/format-rules/is-eth-address.ts","../../src/rules/format-rules/is-fqdn.ts","../../src/rules/format-rules/is-hash.ts","../../src/rules/format-rules/is-hex-color.ts","../../src/rules/format-rules/is-hex.ts","../../src/rules/format-rules/is-iban.ts","../../src/rules/format-rules/is-ip.ts","../../src/rules/format-rules/is-issn.ts","../../src/rules/format-rules/is-jwt.ts","../../src/rules/format-rules/is-lowercase.ts","../../src/rules/format-rules/is-mac-address.ts","../../src/rules/format-rules/is-mobile-phone.ts","../../src/rules/format-rules/is-object-id.ts","../../src/rules/format-rules/is-passport-number.ts","../../src/rules/format-rules/is-port.ts","../../src/rules/format-rules/is-url.ts","../../src/rules/format-rules/is-uuid.ts","../../src/rules/format-rules/is-vat-number.ts","../../src/rules/format-rules/matches.ts","../../src/rules/logical-rules/is-defined.ts","../../src/rules/logical-rules/is-empty.ts","../../src/rules/logical-rules/is-equal.ts","../../src/rules/logical-rules/range.ts","../../src/rules/type-rules/is-any.ts","../../src/rules/type-rules/is-array.ts","../../src/rules/type-rules/is-bigint.ts","../../src/rules/type-rules/is-boolean.ts","../../src/rules/type-rules/is-date.ts","../../src/rules/type-rules/is-enum.ts","../../src/rules/type-rules/is-integer.ts","../../src/rules/type-rules/is-null.ts","../../src/rules/type-rules/is-number.ts","../../src/rules/type-rules/is-object.ts","../../src/rules/type-rules/is-record.ts","../../src/rules/type-rules/is-string.ts","../../src/rules/type-rules/is-tuple.ts","../../src/rules/type-rules/is-undefined.ts","../../src/rules/utility-rules/all-of.ts","../../src/rules/utility-rules/exists.ts","../../src/rules/utility-rules/get-length.ts","../../src/rules/utility-rules/one-of.ts","../../src/rules/utility-rules/optional.ts","../../src/rules/utility-rules/pipe.ts","../../src/rules/utility-rules/required.ts"],"version":"5.8.3"}
|
|
1
|
+
{"root":["../../src/constants.ts","../../src/factories.ts","../../src/index.ts","../../src/core/constants.ts","../../src/core/context.ts","../../src/core/index.ts","../../src/core/types.ts","../../src/core/utilities.ts","../../src/core/validation-error.ts","../../src/core/validator.ts","../../src/helpers/object.utils.ts","../../src/helpers/omit-undefined.ts","../../src/helpers/string.utils.ts","../../src/rules/index.ts","../../src/rules/format-rules/is-alpha.ts","../../src/rules/format-rules/is-ascii.ts","../../src/rules/format-rules/is-base64.ts","../../src/rules/format-rules/is-btc-address.ts","../../src/rules/format-rules/is-credit-card.ts","../../src/rules/format-rules/is-decimal.ts","../../src/rules/format-rules/is-ean.ts","../../src/rules/format-rules/is-email.ts","../../src/rules/format-rules/is-eth-address.ts","../../src/rules/format-rules/is-fqdn.ts","../../src/rules/format-rules/is-hash.ts","../../src/rules/format-rules/is-hex-color.ts","../../src/rules/format-rules/is-hex.ts","../../src/rules/format-rules/is-iban.ts","../../src/rules/format-rules/is-ip.ts","../../src/rules/format-rules/is-issn.ts","../../src/rules/format-rules/is-jwt.ts","../../src/rules/format-rules/is-lowercase.ts","../../src/rules/format-rules/is-mac-address.ts","../../src/rules/format-rules/is-mobile-phone.ts","../../src/rules/format-rules/is-object-id.ts","../../src/rules/format-rules/is-passport-number.ts","../../src/rules/format-rules/is-port.ts","../../src/rules/format-rules/is-time.ts","../../src/rules/format-rules/is-url.ts","../../src/rules/format-rules/is-uuid.ts","../../src/rules/format-rules/is-vat-number.ts","../../src/rules/format-rules/matches.ts","../../src/rules/logical-rules/is-defined.ts","../../src/rules/logical-rules/is-empty.ts","../../src/rules/logical-rules/is-equal.ts","../../src/rules/logical-rules/range.ts","../../src/rules/type-rules/is-any.ts","../../src/rules/type-rules/is-array.ts","../../src/rules/type-rules/is-bigint.ts","../../src/rules/type-rules/is-boolean.ts","../../src/rules/type-rules/is-date.ts","../../src/rules/type-rules/is-enum.ts","../../src/rules/type-rules/is-integer.ts","../../src/rules/type-rules/is-null.ts","../../src/rules/type-rules/is-number.ts","../../src/rules/type-rules/is-object.ts","../../src/rules/type-rules/is-record.ts","../../src/rules/type-rules/is-string.ts","../../src/rules/type-rules/is-tuple.ts","../../src/rules/type-rules/is-undefined.ts","../../src/rules/utility-rules/all-of.ts","../../src/rules/utility-rules/exists.ts","../../src/rules/utility-rules/get-length.ts","../../src/rules/utility-rules/one-of.ts","../../src/rules/utility-rules/optional.ts","../../src/rules/utility-rules/pipe.ts","../../src/rules/utility-rules/required.ts"],"version":"5.8.3"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import validatorJS from '@browsery/validator';
|
|
2
|
+
import { validator, } from '../../core/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Validates if value is a time formatted string
|
|
5
|
+
* @validator isTime
|
|
6
|
+
*/
|
|
7
|
+
export function isTime(options) {
|
|
8
|
+
return validator('isURL', (input, context, _this) => {
|
|
9
|
+
if (input != null &&
|
|
10
|
+
typeof input === 'string' &&
|
|
11
|
+
validatorJS.isTime(input, options)) {
|
|
12
|
+
return input;
|
|
13
|
+
}
|
|
14
|
+
context.fail(_this, `Value must be a valid Time`, input);
|
|
15
|
+
}, options);
|
|
16
|
+
}
|
package/esm/rules/index.js
CHANGED
|
@@ -21,6 +21,7 @@ export * from './format-rules/is-mobile-phone.js';
|
|
|
21
21
|
export * from './format-rules/is-object-id.js';
|
|
22
22
|
export * from './format-rules/is-passport-number.js';
|
|
23
23
|
export * from './format-rules/is-port.js';
|
|
24
|
+
export * from './format-rules/is-time.js';
|
|
24
25
|
export * from './format-rules/is-url.js';
|
|
25
26
|
export * from './format-rules/is-uuid.js';
|
|
26
27
|
export * from './format-rules/is-vat-number.js';
|
|
@@ -32,7 +32,7 @@ export function isArray(itemValidator, options) {
|
|
|
32
32
|
itemContext.index = i;
|
|
33
33
|
v = itemValidator(v, {
|
|
34
34
|
onFail(issue) {
|
|
35
|
-
return `Item at index [${i}] is not
|
|
35
|
+
return `Item at index [${i}] is not valid. ` + issue.message;
|
|
36
36
|
},
|
|
37
37
|
}, itemContext);
|
|
38
38
|
out.push(v);
|
|
@@ -3,8 +3,8 @@ import { validator, } from '../../core/index.js';
|
|
|
3
3
|
// noinspection RegExpUnnecessaryNonCapturingGroup
|
|
4
4
|
const DATE_PATTERN = /^(\d{4})(?:-(0[0-9]|1[0-2]))?(?:-([0-2][0-9]|3[0-1]))?(?:[T ](([0-1][0-9]|2[0-4]):([0-5][0-9])(?::([0-5][0-9]))?(?:\.(\d{0,3}))?)?((?:[+-](0[0-9]|1[0-2])(?::(\d{2}))?)|Z)?)?$/;
|
|
5
5
|
/**
|
|
6
|
-
* Validates if value is instance of "Date".
|
|
7
|
-
* Converts input value to Date if coerce option is set to 'true'.
|
|
6
|
+
* Validates if value is an instance of "Date".
|
|
7
|
+
* Converts input value to Date if a coerce option is set to 'true'.
|
|
8
8
|
* @validator isDate
|
|
9
9
|
*/
|
|
10
10
|
export function isDate(options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../../src/constants.ts","../../src/factories.ts","../../src/index.ts","../../src/core/constants.ts","../../src/core/context.ts","../../src/core/index.ts","../../src/core/types.ts","../../src/core/utilities.ts","../../src/core/validation-error.ts","../../src/core/validator.ts","../../src/helpers/object.utils.ts","../../src/helpers/omit-undefined.ts","../../src/helpers/string.utils.ts","../../src/rules/index.ts","../../src/rules/format-rules/is-alpha.ts","../../src/rules/format-rules/is-ascii.ts","../../src/rules/format-rules/is-base64.ts","../../src/rules/format-rules/is-btc-address.ts","../../src/rules/format-rules/is-credit-card.ts","../../src/rules/format-rules/is-decimal.ts","../../src/rules/format-rules/is-ean.ts","../../src/rules/format-rules/is-email.ts","../../src/rules/format-rules/is-eth-address.ts","../../src/rules/format-rules/is-fqdn.ts","../../src/rules/format-rules/is-hash.ts","../../src/rules/format-rules/is-hex-color.ts","../../src/rules/format-rules/is-hex.ts","../../src/rules/format-rules/is-iban.ts","../../src/rules/format-rules/is-ip.ts","../../src/rules/format-rules/is-issn.ts","../../src/rules/format-rules/is-jwt.ts","../../src/rules/format-rules/is-lowercase.ts","../../src/rules/format-rules/is-mac-address.ts","../../src/rules/format-rules/is-mobile-phone.ts","../../src/rules/format-rules/is-object-id.ts","../../src/rules/format-rules/is-passport-number.ts","../../src/rules/format-rules/is-port.ts","../../src/rules/format-rules/is-url.ts","../../src/rules/format-rules/is-uuid.ts","../../src/rules/format-rules/is-vat-number.ts","../../src/rules/format-rules/matches.ts","../../src/rules/logical-rules/is-defined.ts","../../src/rules/logical-rules/is-empty.ts","../../src/rules/logical-rules/is-equal.ts","../../src/rules/logical-rules/range.ts","../../src/rules/type-rules/is-any.ts","../../src/rules/type-rules/is-array.ts","../../src/rules/type-rules/is-bigint.ts","../../src/rules/type-rules/is-boolean.ts","../../src/rules/type-rules/is-date.ts","../../src/rules/type-rules/is-enum.ts","../../src/rules/type-rules/is-integer.ts","../../src/rules/type-rules/is-null.ts","../../src/rules/type-rules/is-number.ts","../../src/rules/type-rules/is-object.ts","../../src/rules/type-rules/is-record.ts","../../src/rules/type-rules/is-string.ts","../../src/rules/type-rules/is-tuple.ts","../../src/rules/type-rules/is-undefined.ts","../../src/rules/utility-rules/all-of.ts","../../src/rules/utility-rules/exists.ts","../../src/rules/utility-rules/get-length.ts","../../src/rules/utility-rules/one-of.ts","../../src/rules/utility-rules/optional.ts","../../src/rules/utility-rules/pipe.ts","../../src/rules/utility-rules/required.ts"],"version":"5.8.3"}
|
|
1
|
+
{"root":["../../src/constants.ts","../../src/factories.ts","../../src/index.ts","../../src/core/constants.ts","../../src/core/context.ts","../../src/core/index.ts","../../src/core/types.ts","../../src/core/utilities.ts","../../src/core/validation-error.ts","../../src/core/validator.ts","../../src/helpers/object.utils.ts","../../src/helpers/omit-undefined.ts","../../src/helpers/string.utils.ts","../../src/rules/index.ts","../../src/rules/format-rules/is-alpha.ts","../../src/rules/format-rules/is-ascii.ts","../../src/rules/format-rules/is-base64.ts","../../src/rules/format-rules/is-btc-address.ts","../../src/rules/format-rules/is-credit-card.ts","../../src/rules/format-rules/is-decimal.ts","../../src/rules/format-rules/is-ean.ts","../../src/rules/format-rules/is-email.ts","../../src/rules/format-rules/is-eth-address.ts","../../src/rules/format-rules/is-fqdn.ts","../../src/rules/format-rules/is-hash.ts","../../src/rules/format-rules/is-hex-color.ts","../../src/rules/format-rules/is-hex.ts","../../src/rules/format-rules/is-iban.ts","../../src/rules/format-rules/is-ip.ts","../../src/rules/format-rules/is-issn.ts","../../src/rules/format-rules/is-jwt.ts","../../src/rules/format-rules/is-lowercase.ts","../../src/rules/format-rules/is-mac-address.ts","../../src/rules/format-rules/is-mobile-phone.ts","../../src/rules/format-rules/is-object-id.ts","../../src/rules/format-rules/is-passport-number.ts","../../src/rules/format-rules/is-port.ts","../../src/rules/format-rules/is-time.ts","../../src/rules/format-rules/is-url.ts","../../src/rules/format-rules/is-uuid.ts","../../src/rules/format-rules/is-vat-number.ts","../../src/rules/format-rules/matches.ts","../../src/rules/logical-rules/is-defined.ts","../../src/rules/logical-rules/is-empty.ts","../../src/rules/logical-rules/is-equal.ts","../../src/rules/logical-rules/range.ts","../../src/rules/type-rules/is-any.ts","../../src/rules/type-rules/is-array.ts","../../src/rules/type-rules/is-bigint.ts","../../src/rules/type-rules/is-boolean.ts","../../src/rules/type-rules/is-date.ts","../../src/rules/type-rules/is-enum.ts","../../src/rules/type-rules/is-integer.ts","../../src/rules/type-rules/is-null.ts","../../src/rules/type-rules/is-number.ts","../../src/rules/type-rules/is-object.ts","../../src/rules/type-rules/is-record.ts","../../src/rules/type-rules/is-string.ts","../../src/rules/type-rules/is-tuple.ts","../../src/rules/type-rules/is-undefined.ts","../../src/rules/utility-rules/all-of.ts","../../src/rules/utility-rules/exists.ts","../../src/rules/utility-rules/get-length.ts","../../src/rules/utility-rules/one-of.ts","../../src/rules/utility-rules/optional.ts","../../src/rules/utility-rules/pipe.ts","../../src/rules/utility-rules/required.ts"],"version":"5.8.3"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import validatorJS from '@browsery/validator';
|
|
2
|
+
import { type ValidationOptions } from '../../core/index.js';
|
|
3
|
+
export interface IsTimeOptions extends ValidationOptions, validatorJS.IsTimeOptions {
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Validates if value is a time formatted string
|
|
7
|
+
* @validator isTime
|
|
8
|
+
*/
|
|
9
|
+
export declare function isTime(options?: IsTimeOptions): import("../../core/validator.js").Validator<string, string, import("../../core/types.js").ExecutionOptions>;
|
package/types/rules/index.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export * from './format-rules/is-mobile-phone.js';
|
|
|
21
21
|
export * from './format-rules/is-object-id.js';
|
|
22
22
|
export * from './format-rules/is-passport-number.js';
|
|
23
23
|
export * from './format-rules/is-port.js';
|
|
24
|
+
export * from './format-rules/is-time.js';
|
|
24
25
|
export * from './format-rules/is-url.js';
|
|
25
26
|
export * from './format-rules/is-uuid.js';
|
|
26
27
|
export * from './format-rules/is-vat-number.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ValidationOptions } from '../../core/index.js';
|
|
2
2
|
/**
|
|
3
|
-
* Validates if value is instance of "Date".
|
|
4
|
-
* Converts input value to Date if coerce option is set to 'true'.
|
|
3
|
+
* Validates if value is an instance of "Date".
|
|
4
|
+
* Converts input value to Date if a coerce option is set to 'true'.
|
|
5
5
|
* @validator isDate
|
|
6
6
|
*/
|
|
7
7
|
export declare function isDate(options?: isDate.Options): import("../../core/validator.js").Validator<Date, string | number | Date, import("../../core/types.js").ExecutionOptions>;
|