justus 0.4.1 → 0.5.0
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/README.md +78 -0
- package/dist/dts-generator.cjs +36 -22
- package/dist/dts-generator.cjs.map +1 -1
- package/dist/dts-generator.d.ts +1 -1
- package/dist/dts-generator.mjs +15 -22
- package/dist/dts-generator.mjs.map +1 -1
- package/dist/errors.cjs +3 -3
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.mjs +3 -3
- package/dist/errors.mjs.map +1 -1
- package/dist/extra/arn.cjs +98 -0
- package/dist/extra/arn.cjs.map +6 -0
- package/dist/extra/arn.d.ts +71 -0
- package/dist/extra/arn.mjs +68 -0
- package/dist/extra/arn.mjs.map +6 -0
- package/dist/extra/ean13.cjs +52 -0
- package/dist/extra/ean13.cjs.map +6 -0
- package/dist/extra/ean13.d.ts +9 -0
- package/dist/extra/ean13.mjs +26 -0
- package/dist/extra/ean13.mjs.map +6 -0
- package/dist/{validators → extra}/url.cjs +10 -10
- package/dist/extra/url.cjs.map +6 -0
- package/dist/{validators → extra}/url.d.ts +4 -5
- package/dist/{validators → extra}/url.mjs +8 -9
- package/dist/{validators → extra}/url.mjs.map +3 -3
- package/dist/extra/uuid.cjs +45 -0
- package/dist/extra/uuid.cjs.map +6 -0
- package/dist/extra/uuid.d.ts +10 -0
- package/dist/extra/uuid.mjs +18 -0
- package/dist/extra/uuid.mjs.map +6 -0
- package/dist/index.cjs +0 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +18 -19
- package/dist/index.mjs +12 -15
- package/dist/index.mjs.map +1 -1
- package/dist/registry.cjs +44 -0
- package/dist/registry.cjs.map +6 -0
- package/dist/registry.d.ts +16 -0
- package/dist/registry.mjs +19 -0
- package/dist/registry.mjs.map +6 -0
- package/dist/schema.cjs +3 -5
- package/dist/schema.cjs.map +1 -1
- package/dist/schema.d.ts +6 -5
- package/dist/schema.mjs +3 -4
- package/dist/schema.mjs.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.ts +38 -12
- package/dist/types.mjs.map +1 -1
- package/dist/utilities.cjs +5 -7
- package/dist/utilities.cjs.map +1 -1
- package/dist/utilities.mjs +5 -7
- package/dist/utilities.mjs.map +1 -1
- package/dist/validators/array.cjs +4 -2
- package/dist/validators/array.cjs.map +1 -1
- package/dist/validators/array.d.ts +3 -4
- package/dist/validators/array.mjs +3 -2
- package/dist/validators/array.mjs.map +1 -1
- package/dist/validators/boolean.cjs +6 -4
- package/dist/validators/boolean.cjs.map +1 -1
- package/dist/validators/boolean.d.ts +2 -3
- package/dist/validators/boolean.mjs +4 -3
- package/dist/validators/boolean.mjs.map +1 -1
- package/dist/validators/constant.cjs +4 -5
- package/dist/validators/constant.cjs.map +1 -1
- package/dist/validators/constant.d.ts +0 -2
- package/dist/validators/constant.mjs +3 -3
- package/dist/validators/constant.mjs.map +1 -1
- package/dist/validators/date.cjs +8 -10
- package/dist/validators/date.cjs.map +1 -1
- package/dist/validators/date.d.ts +3 -4
- package/dist/validators/date.mjs +6 -9
- package/dist/validators/date.mjs.map +1 -1
- package/dist/validators/number.cjs +6 -4
- package/dist/validators/number.cjs.map +1 -1
- package/dist/validators/number.d.ts +5 -6
- package/dist/validators/number.mjs +4 -3
- package/dist/validators/number.mjs.map +1 -1
- package/dist/validators/object.cjs +7 -4
- package/dist/validators/object.cjs.map +1 -1
- package/dist/validators/object.d.ts +6 -7
- package/dist/validators/object.mjs +7 -9
- package/dist/validators/object.mjs.map +1 -1
- package/dist/validators/optional.cjs.map +1 -1
- package/dist/validators/optional.d.ts +5 -4
- package/dist/validators/optional.mjs.map +1 -1
- package/dist/validators/string.cjs +6 -4
- package/dist/validators/string.cjs.map +1 -1
- package/dist/validators/string.d.ts +5 -6
- package/dist/validators/string.mjs +4 -3
- package/dist/validators/string.mjs.map +1 -1
- package/dist/validators/tuple.cjs +3 -2
- package/dist/validators/tuple.cjs.map +1 -1
- package/dist/validators/tuple.d.ts +3 -3
- package/dist/validators/tuple.mjs +3 -2
- package/dist/validators/tuple.mjs.map +1 -1
- package/dist/validators/union.cjs.map +1 -1
- package/dist/validators/union.d.ts +9 -7
- package/dist/validators/union.mjs.map +1 -1
- package/package.json +46 -6
- package/src/dts-generator.ts +17 -27
- package/src/extra/arn.ts +151 -0
- package/src/extra/ean13.ts +31 -0
- package/src/{validators → extra}/url.ts +6 -8
- package/src/extra/uuid.ts +18 -0
- package/src/index.ts +18 -19
- package/src/registry.ts +28 -0
- package/src/schema.ts +10 -11
- package/src/types.ts +80 -11
- package/src/utilities.ts +5 -9
- package/src/validators/array.ts +3 -3
- package/src/validators/boolean.ts +2 -2
- package/src/validators/constant.ts +3 -2
- package/src/validators/date.ts +9 -9
- package/src/validators/number.ts +6 -7
- package/src/validators/object.ts +15 -14
- package/src/validators/optional.ts +9 -7
- package/src/validators/string.ts +6 -6
- package/src/validators/tuple.ts +20 -6
- package/src/validators/union.ts +35 -10
- package/dist/validators/url.cjs.map +0 -6
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
// extra/arn.ts
|
|
2
|
+
import { assertValidation } from "../errors.mjs";
|
|
3
|
+
import { AbstractValidator, makeValidatorFactory } from "../types.mjs";
|
|
4
|
+
function parse(value, service, type) {
|
|
5
|
+
assertValidation(typeof value == "string", 'Value is not a "string"');
|
|
6
|
+
const segments = value.split(":");
|
|
7
|
+
assertValidation(segments.length >= 6, "Invalid components in ARN");
|
|
8
|
+
const [pfx, prt, svc, rgn, act, ...res] = segments;
|
|
9
|
+
assertValidation(pfx === "arn", 'ARN must start with "arn:"');
|
|
10
|
+
assertValidation(!!prt, "Missing partition in ARN");
|
|
11
|
+
assertValidation(!!svc, "Missing service in ARN");
|
|
12
|
+
assertValidation(!!act, "Missing account ID in ARN");
|
|
13
|
+
assertValidation(!!res[0], "Missing resource ID in ARN");
|
|
14
|
+
if (service !== void 0) {
|
|
15
|
+
assertValidation(svc === service, `ARN Service "${svc}" mismatch (expected "${service}")`);
|
|
16
|
+
}
|
|
17
|
+
const [resArray, resString] = res[0].includes("/") ? [res[0].split("/"), res[0]] : [res, res.join(":")];
|
|
18
|
+
assertValidation(!!resArray[0], "Invalid resource ID in ARN");
|
|
19
|
+
if (type !== void 0) {
|
|
20
|
+
assertValidation(resArray[0] === type, `ARN Resource Type "${resArray[0]}" mismatch (expected "${type}")`);
|
|
21
|
+
}
|
|
22
|
+
const arn2 = `arn:${prt}:${svc}:${rgn}:${act}:${resString}`;
|
|
23
|
+
return {
|
|
24
|
+
Arn: arn2,
|
|
25
|
+
Partition: prt,
|
|
26
|
+
Service: svc,
|
|
27
|
+
Region: rgn || "",
|
|
28
|
+
Account: act,
|
|
29
|
+
Resource: resArray
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
var ParsedArnValidator = class extends AbstractValidator {
|
|
33
|
+
constructor(_service, _type) {
|
|
34
|
+
super();
|
|
35
|
+
this._service = _service;
|
|
36
|
+
this._type = _type;
|
|
37
|
+
}
|
|
38
|
+
validate(value) {
|
|
39
|
+
return parse(value, this._service, this._type);
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
var ArnValidator = class extends AbstractValidator {
|
|
43
|
+
constructor(_service, _type) {
|
|
44
|
+
super();
|
|
45
|
+
this._service = _service;
|
|
46
|
+
this._type = _type;
|
|
47
|
+
}
|
|
48
|
+
validate(value) {
|
|
49
|
+
return parse(value, this._service, this._type).Arn;
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
function parseArnFactory(service, resourceType) {
|
|
53
|
+
return new ParsedArnValidator(service, resourceType);
|
|
54
|
+
}
|
|
55
|
+
function arnFactory(service, resourceType) {
|
|
56
|
+
return new ArnValidator(service, resourceType);
|
|
57
|
+
}
|
|
58
|
+
var parseArn = makeValidatorFactory(new ParsedArnValidator(), parseArnFactory);
|
|
59
|
+
var arn = makeValidatorFactory(new ArnValidator(), arnFactory);
|
|
60
|
+
export {
|
|
61
|
+
ArnValidator,
|
|
62
|
+
ParsedArnValidator,
|
|
63
|
+
arn,
|
|
64
|
+
arnFactory,
|
|
65
|
+
parseArn,
|
|
66
|
+
parseArnFactory
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=arn.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/extra/arn.ts"],
|
|
4
|
+
"mappings": ";AAAA,SAAS,wBAAwB;AACjC,SAAS,mBAAmB,4BAA4B;AAoBxD,SAAS,MACL,OACA,SACA,MACkB;AACpB,mBAAiB,OAAO,SAAS,UAAU,yBAAyB;AAEpE,QAAM,WAAW,MAAM,MAAM,GAAG;AAEhC,mBAAiB,SAAS,UAAU,GAAG,2BAA2B;AAElE,QAAM,CAAE,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG,GAAI,IAAI;AAE5C,mBAAiB,QAAQ,OAAO,4BAA4B;AAC5D,mBAAiB,CAAC,CAAE,KAAK,0BAA0B;AACnD,mBAAiB,CAAC,CAAE,KAAK,wBAAwB;AACjD,mBAAiB,CAAC,CAAE,KAAK,2BAA2B;AACpD,mBAAiB,CAAC,CAAE,IAAI,CAAC,GAAG,4BAA4B;AAExD,MAAI,YAAY,QAAW;AACzB,qBAAiB,QAAQ,SAAS,gBAAgB,GAAG,yBAAyB,OAAO,IAAI;AAAA,EAC3F;AAEA,QAAM,CAAE,UAAU,SAAU,IAAI,IAAI,CAAC,EAAE,SAAS,GAAG,IACjD,CAAE,IAAI,CAAC,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC,CAAE,IAC5B,CAAE,KAAK,IAAI,KAAK,GAAG,CAAE;AAEvB,mBAAiB,CAAC,CAAE,SAAS,CAAC,GAAG,4BAA4B;AAE7D,MAAI,SAAS,QAAW;AACtB,qBAAiB,SAAS,CAAC,MAAM,MAAM,sBAAsB,SAAS,CAAC,CAAC,yBAAyB,IAAI,IAAI;AAAA,EAC3G;AAEA,QAAMA,OAAM,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,SAAS;AAExD,SAAO;AAAA,IACL,KAAKA;AAAA,IACL,WAAW;AAAA,IACX,SAAS;AAAA,IACT,QAAQ,OAAO;AAAA,IACf,SAAS;AAAA,IACT,UAAU;AAAA,EACZ;AACF;AAKO,IAAM,qBAAN,cACG,kBAA8C;AAAA,EAWtD,YAAoB,UAA4B,OAAgB;AAC9D,UAAM;AADY;AAA4B;AAAA,EAEhD;AAAA,EAEA,SAAS,OAAoC;AAC3C,WAAO,MAAM,OAAO,KAAK,UAAU,KAAK,KAAK;AAAA,EAC/C;AACF;AAGO,IAAM,eAAN,cACG,kBAA8C;AAAA,EAWtD,YAAoB,UAA4B,OAAgB;AAC9D,UAAM;AADY;AAA4B;AAAA,EAEhD;AAAA,EAEA,SAAS,OAAoC;AAC3C,WAAO,MAAM,OAAO,KAAK,UAAU,KAAK,KAAK,EAAE;AAAA,EACjD;AACF;AAYO,SAAS,gBACZ,SACA,cAC2B;AAC7B,SAAO,IAAI,mBAAmB,SAAS,YAAY;AACrD;AAUO,SAAS,WACZ,SACA,cACqB;AACvB,SAAO,IAAI,aAAa,SAAS,YAAY;AAC/C;AAKO,IAAM,WAAW,qBAAqB,IAAI,mBAAmB,GAAG,eAAe;AAG/E,IAAM,MAAM,qBAAqB,IAAI,aAAa,GAAG,UAAU;",
|
|
5
|
+
"names": ["arn"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// extra/ean13.ts
|
|
21
|
+
var ean13_exports = {};
|
|
22
|
+
__export(ean13_exports, {
|
|
23
|
+
EAN13Validator: () => EAN13Validator,
|
|
24
|
+
ean13: () => ean13
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(ean13_exports);
|
|
27
|
+
var import_errors = require("../errors.cjs");
|
|
28
|
+
var import_string = require("../validators/string.cjs");
|
|
29
|
+
var EAN13Validator = class extends import_string.StringValidator {
|
|
30
|
+
constructor() {
|
|
31
|
+
super({ minLength: 13, maxLength: 13, pattern: /^\d{13}$/ });
|
|
32
|
+
}
|
|
33
|
+
validate(value) {
|
|
34
|
+
if (typeof value === "number")
|
|
35
|
+
value = `${value}`;
|
|
36
|
+
const ean132 = super.validate(value).toLowerCase();
|
|
37
|
+
let sum = 0;
|
|
38
|
+
for (let i = 0, w = 1; i < 12; i++, w = i % 2 ? 3 : 1) {
|
|
39
|
+
sum += (ean132.charCodeAt(i) - 48) * w;
|
|
40
|
+
}
|
|
41
|
+
const valid = (10 - sum % 10) % 10 === ean132.charCodeAt(12) - 48;
|
|
42
|
+
(0, import_errors.assertValidation)(valid, `Invalid checksum in EAN-13 "${ean132}"`);
|
|
43
|
+
return ean132;
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
var ean13 = new EAN13Validator();
|
|
47
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
48
|
+
0 && (module.exports = {
|
|
49
|
+
EAN13Validator,
|
|
50
|
+
ean13
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=ean13.cjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/extra/ean13.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAiC;AACjC,oBAAgC;AAIzB,IAAM,iBAAN,cAA6B,8BAA8C;AAAA,EAChF,cAAc;AACZ,UAAM,EAAE,WAAW,IAAI,WAAW,IAAI,SAAS,WAAW,CAAC;AAAA,EAC7D;AAAA,EAGA,SAAS,OAAwB;AAC/B,QAAI,OAAO,UAAU;AAAU,cAAQ,GAAG,KAAK;AAC/C,UAAMA,SAAQ,MAAM,SAAS,KAAK,EAAE,YAAY;AAGhD,QAAI,MAAM;AACV,aAAS,IAAI,GAAG,IAAI,GAAG,IAAI,IAAI,KAAM,IAAI,IAAI,IAAI,IAAI,GAAG;AACtD,cAAQA,OAAM,WAAW,CAAC,IAAI,MAAQ;AAAA,IACxC;AAGA,UAAM,SAAS,KAAM,MAAM,MAAO,OAAOA,OAAM,WAAW,EAAE,IAAI;AAGhE,wCAAiB,OAAO,+BAA+BA,MAAK,GAAG;AAC/D,WAAOA;AAAA,EACT;AACF;AAEO,IAAM,QAAQ,IAAI,eAAe;",
|
|
5
|
+
"names": ["ean13"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { StringValidator } from '../validators/string';
|
|
2
|
+
export type EAN13String = string & {
|
|
3
|
+
__ean_13: never;
|
|
4
|
+
};
|
|
5
|
+
export declare class EAN13Validator extends StringValidator<EAN13String, string | number> {
|
|
6
|
+
constructor();
|
|
7
|
+
validate(value: unknown): EAN13String;
|
|
8
|
+
}
|
|
9
|
+
export declare const ean13: EAN13Validator;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// extra/ean13.ts
|
|
2
|
+
import { assertValidation } from "../errors.mjs";
|
|
3
|
+
import { StringValidator } from "../validators/string.mjs";
|
|
4
|
+
var EAN13Validator = class extends StringValidator {
|
|
5
|
+
constructor() {
|
|
6
|
+
super({ minLength: 13, maxLength: 13, pattern: /^\d{13}$/ });
|
|
7
|
+
}
|
|
8
|
+
validate(value) {
|
|
9
|
+
if (typeof value === "number")
|
|
10
|
+
value = `${value}`;
|
|
11
|
+
const ean132 = super.validate(value).toLowerCase();
|
|
12
|
+
let sum = 0;
|
|
13
|
+
for (let i = 0, w = 1; i < 12; i++, w = i % 2 ? 3 : 1) {
|
|
14
|
+
sum += (ean132.charCodeAt(i) - 48) * w;
|
|
15
|
+
}
|
|
16
|
+
const valid = (10 - sum % 10) % 10 === ean132.charCodeAt(12) - 48;
|
|
17
|
+
assertValidation(valid, `Invalid checksum in EAN-13 "${ean132}"`);
|
|
18
|
+
return ean132;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
var ean13 = new EAN13Validator();
|
|
22
|
+
export {
|
|
23
|
+
EAN13Validator,
|
|
24
|
+
ean13
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=ean13.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/extra/ean13.ts"],
|
|
4
|
+
"mappings": ";AAAA,SAAS,wBAAwB;AACjC,SAAS,uBAAuB;AAIzB,IAAM,iBAAN,cAA6B,gBAA8C;AAAA,EAChF,cAAc;AACZ,UAAM,EAAE,WAAW,IAAI,WAAW,IAAI,SAAS,WAAW,CAAC;AAAA,EAC7D;AAAA,EAGA,SAAS,OAAwB;AAC/B,QAAI,OAAO,UAAU;AAAU,cAAQ,GAAG,KAAK;AAC/C,UAAMA,SAAQ,MAAM,SAAS,KAAK,EAAE,YAAY;AAGhD,QAAI,MAAM;AACV,aAAS,IAAI,GAAG,IAAI,GAAG,IAAI,IAAI,KAAM,IAAI,IAAI,IAAI,IAAI,GAAG;AACtD,cAAQA,OAAM,WAAW,CAAC,IAAI,MAAQ;AAAA,IACxC;AAGA,UAAM,SAAS,KAAM,MAAM,MAAO,OAAOA,OAAM,WAAW,EAAE,IAAI;AAGhE,qBAAiB,OAAO,+BAA+BA,MAAK,GAAG;AAC/D,WAAOA;AAAA,EACT;AACF;AAEO,IAAM,QAAQ,IAAI,eAAe;",
|
|
5
|
+
"names": ["ean13"]
|
|
6
|
+
}
|
|
@@ -17,17 +17,18 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
|
|
20
|
-
//
|
|
20
|
+
// extra/url.ts
|
|
21
21
|
var url_exports = {};
|
|
22
22
|
__export(url_exports, {
|
|
23
23
|
URLValidator: () => URLValidator,
|
|
24
|
-
url: () => url
|
|
24
|
+
url: () => url,
|
|
25
|
+
urlFactory: () => urlFactory
|
|
25
26
|
});
|
|
26
27
|
module.exports = __toCommonJS(url_exports);
|
|
27
28
|
var import_errors = require("../errors.cjs");
|
|
28
29
|
var import_types = require("../types.cjs");
|
|
29
|
-
var import_constant = require("
|
|
30
|
-
var import_object = require("
|
|
30
|
+
var import_constant = require("../validators/constant.cjs");
|
|
31
|
+
var import_object = require("../validators/object.cjs");
|
|
31
32
|
var KEYS = [
|
|
32
33
|
"href",
|
|
33
34
|
"origin",
|
|
@@ -93,9 +94,7 @@ var URLValidator = class extends import_types.AbstractValidator {
|
|
|
93
94
|
}
|
|
94
95
|
if (this.searchParams) {
|
|
95
96
|
const parameters = {};
|
|
96
|
-
|
|
97
|
-
parameters[param] = url2.searchParams.get(param);
|
|
98
|
-
}
|
|
97
|
+
url2.searchParams.forEach((value2, key) => parameters[key] = value2);
|
|
99
98
|
try {
|
|
100
99
|
this.searchParams.validate(parameters, OPTIONS);
|
|
101
100
|
} catch (error) {
|
|
@@ -105,13 +104,14 @@ var URLValidator = class extends import_types.AbstractValidator {
|
|
|
105
104
|
return builder.assert(url2);
|
|
106
105
|
}
|
|
107
106
|
};
|
|
108
|
-
function
|
|
107
|
+
function urlFactory(constraints) {
|
|
109
108
|
return new URLValidator(constraints);
|
|
110
109
|
}
|
|
111
|
-
var url = (0, import_types.makeValidatorFactory)(new URLValidator(),
|
|
110
|
+
var url = (0, import_types.makeValidatorFactory)(new URLValidator(), urlFactory);
|
|
112
111
|
// Annotate the CommonJS export names for ESM import in node:
|
|
113
112
|
0 && (module.exports = {
|
|
114
113
|
URLValidator,
|
|
115
|
-
url
|
|
114
|
+
url,
|
|
115
|
+
urlFactory
|
|
116
116
|
});
|
|
117
117
|
//# sourceMappingURL=url.cjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/extra/url.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAwD;AACxD,mBAAwD;AACxD,sBAAkC;AAClC,oBAAgC;AAKhC,IAAM,OAAwD;AAAA,EAC5D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,IAAM,UAA6B;AAAA,EACjC,2BAA2B;AAAA,EAC3B,0BAA0B;AAAA,EAC1B,oBAAoB;AACtB;AAoCO,IAAM,eAAN,cAA2B,+BAAqC;AAAA,EAC5D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EAET,YAAY,cAA8B,CAAC,GAAG;AAC5C,UAAM;AAEN,eAAW,OAAO,MAAM;AACtB,YAAM,aAAa,YAAY,GAAG;AAClC,UAAI,OAAO,eAAe,UAAU;AAClC,aAAK,GAAG,IAAI,IAAI,kCAAkB,UAAU;AAAA,MAC9C,WAAW,YAAY;AACrB,aAAK,GAAG,IAAI;AAAA,MACd;AAAA,IACF;AAEA,QAAI,YAAY,cAAc;AAC5B,WAAK,eAAe,IAAI,8BAAgB,YAAY,YAAY;AAAA,IAClE;AAAA,EACF;AAAA,EAEA,SAAS,OAAqB;AAC5B,QAAIA;AACJ,QAAI;AACF,MAAAA,OAAM,iBAAiB,MAAM,QAAQ,IAAI,IAAI,KAAY;AAAA,IAC3D,SAAS,OAAO;AACd,YAAM,IAAI,8BAAgB,yCAAyC;AAAA,IACrE;AAEA,UAAM,UAAU,IAAI,qCAAuB;AAE3C,eAAW,OAAO,MAAM;AACtB,YAAM,YAAY,KAAK,GAAG;AAC1B,UAAI,WAAW;AACb,YAAI;AACF,oBAAU,SAASA,KAAI,GAAG,GAAG,OAAO;AAAA,QACtC,SAAS,OAAO;AACd,kBAAQ,OAAO,OAAO,GAAG;AAAA,QAC3B;AAAA,MACF;AAAA,IACF;AAEA,QAAI,KAAK,cAAc;AACrB,YAAM,aAAqC,CAAC;AAC5C,MAAAA,KAAI,aAAa,QAAQ,CAACC,QAAO,QAAQ,WAAW,GAAG,IAAIA,MAAK;AAEhE,UAAI;AACF,aAAK,aAAa,SAAS,YAAY,OAAO;AAAA,MAChD,SAAS,OAAO;AACd,gBAAQ,OAAO,OAAO,cAAc;AAAA,MACtC;AAAA,IACF;AAEA,WAAO,QAAQ,OAAOD,IAAG;AAAA,EAC3B;AACF;AAEO,SAAS,WAAW,aAA2C;AACpE,SAAO,IAAI,aAAa,WAAW;AACrC;AAGO,IAAM,UAAM,mCAAqB,IAAI,aAAa,GAAG,UAAU;",
|
|
5
|
+
"names": ["url", "value"]
|
|
6
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AbstractValidator } from '../types';
|
|
2
|
-
import { ObjectValidator } from '
|
|
2
|
+
import { ObjectValidator } from '../validators/object';
|
|
3
3
|
import type { Schema, Validator } from '../types';
|
|
4
4
|
/** Constraints to validate a `URL` with. */
|
|
5
5
|
export interface URLConstraints {
|
|
@@ -34,7 +34,7 @@ export interface URLConstraints {
|
|
|
34
34
|
searchParams?: Schema;
|
|
35
35
|
}
|
|
36
36
|
/** A `Validator` validating URLs and converting them to `URL` instances. */
|
|
37
|
-
export declare class URLValidator extends AbstractValidator<URL> {
|
|
37
|
+
export declare class URLValidator extends AbstractValidator<URL, URL | string> {
|
|
38
38
|
readonly href?: Validator<string>;
|
|
39
39
|
readonly origin?: Validator<string>;
|
|
40
40
|
readonly protocol?: Validator<string>;
|
|
@@ -50,7 +50,6 @@ export declare class URLValidator extends AbstractValidator<URL> {
|
|
|
50
50
|
constructor(constraints?: URLConstraints);
|
|
51
51
|
validate(value: unknown): URL;
|
|
52
52
|
}
|
|
53
|
-
declare function
|
|
53
|
+
export declare function urlFactory(constraints: URLConstraints): URLValidator;
|
|
54
54
|
/** Validate URLs and convert them to `URL` instances. */
|
|
55
|
-
export declare const url: typeof
|
|
56
|
-
export {};
|
|
55
|
+
export declare const url: typeof urlFactory & URLValidator;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
//
|
|
1
|
+
// extra/url.ts
|
|
2
2
|
import { ValidationError, ValidationErrorBuilder } from "../errors.mjs";
|
|
3
3
|
import { AbstractValidator, makeValidatorFactory } from "../types.mjs";
|
|
4
|
-
import { ConstantValidator } from "
|
|
5
|
-
import { ObjectValidator } from "
|
|
4
|
+
import { ConstantValidator } from "../validators/constant.mjs";
|
|
5
|
+
import { ObjectValidator } from "../validators/object.mjs";
|
|
6
6
|
var KEYS = [
|
|
7
7
|
"href",
|
|
8
8
|
"origin",
|
|
@@ -68,9 +68,7 @@ var URLValidator = class extends AbstractValidator {
|
|
|
68
68
|
}
|
|
69
69
|
if (this.searchParams) {
|
|
70
70
|
const parameters = {};
|
|
71
|
-
|
|
72
|
-
parameters[param] = url2.searchParams.get(param);
|
|
73
|
-
}
|
|
71
|
+
url2.searchParams.forEach((value2, key) => parameters[key] = value2);
|
|
74
72
|
try {
|
|
75
73
|
this.searchParams.validate(parameters, OPTIONS);
|
|
76
74
|
} catch (error) {
|
|
@@ -80,12 +78,13 @@ var URLValidator = class extends AbstractValidator {
|
|
|
80
78
|
return builder.assert(url2);
|
|
81
79
|
}
|
|
82
80
|
};
|
|
83
|
-
function
|
|
81
|
+
function urlFactory(constraints) {
|
|
84
82
|
return new URLValidator(constraints);
|
|
85
83
|
}
|
|
86
|
-
var url = makeValidatorFactory(new URLValidator(),
|
|
84
|
+
var url = makeValidatorFactory(new URLValidator(), urlFactory);
|
|
87
85
|
export {
|
|
88
86
|
URLValidator,
|
|
89
|
-
url
|
|
87
|
+
url,
|
|
88
|
+
urlFactory
|
|
90
89
|
};
|
|
91
90
|
//# sourceMappingURL=url.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/
|
|
4
|
-
"mappings": ";AAAA,SAAS,iBAAiB,8BAA8B;AACxD,SAAS,mBAAmB,4BAA4B;AACxD,SAAS,yBAAyB;AAClC,SAAS,uBAAuB;AAKhC,IAAM,OAAwD;AAAA,EAC5D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,IAAM,UAA6B;AAAA,EACjC,2BAA2B;AAAA,EAC3B,0BAA0B;AAAA,EAC1B,oBAAoB;AACtB;AAoCO,IAAM,eAAN,cAA2B,
|
|
5
|
-
"names": ["url"]
|
|
3
|
+
"sources": ["../../src/extra/url.ts"],
|
|
4
|
+
"mappings": ";AAAA,SAAS,iBAAiB,8BAA8B;AACxD,SAAS,mBAAmB,4BAA4B;AACxD,SAAS,yBAAyB;AAClC,SAAS,uBAAuB;AAKhC,IAAM,OAAwD;AAAA,EAC5D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,IAAM,UAA6B;AAAA,EACjC,2BAA2B;AAAA,EAC3B,0BAA0B;AAAA,EAC1B,oBAAoB;AACtB;AAoCO,IAAM,eAAN,cAA2B,kBAAqC;AAAA,EAC5D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EAET,YAAY,cAA8B,CAAC,GAAG;AAC5C,UAAM;AAEN,eAAW,OAAO,MAAM;AACtB,YAAM,aAAa,YAAY,GAAG;AAClC,UAAI,OAAO,eAAe,UAAU;AAClC,aAAK,GAAG,IAAI,IAAI,kBAAkB,UAAU;AAAA,MAC9C,WAAW,YAAY;AACrB,aAAK,GAAG,IAAI;AAAA,MACd;AAAA,IACF;AAEA,QAAI,YAAY,cAAc;AAC5B,WAAK,eAAe,IAAI,gBAAgB,YAAY,YAAY;AAAA,IAClE;AAAA,EACF;AAAA,EAEA,SAAS,OAAqB;AAC5B,QAAIA;AACJ,QAAI;AACF,MAAAA,OAAM,iBAAiB,MAAM,QAAQ,IAAI,IAAI,KAAY;AAAA,IAC3D,SAAS,OAAO;AACd,YAAM,IAAI,gBAAgB,yCAAyC;AAAA,IACrE;AAEA,UAAM,UAAU,IAAI,uBAAuB;AAE3C,eAAW,OAAO,MAAM;AACtB,YAAM,YAAY,KAAK,GAAG;AAC1B,UAAI,WAAW;AACb,YAAI;AACF,oBAAU,SAASA,KAAI,GAAG,GAAG,OAAO;AAAA,QACtC,SAAS,OAAO;AACd,kBAAQ,OAAO,OAAO,GAAG;AAAA,QAC3B;AAAA,MACF;AAAA,IACF;AAEA,QAAI,KAAK,cAAc;AACrB,YAAM,aAAqC,CAAC;AAC5C,MAAAA,KAAI,aAAa,QAAQ,CAACC,QAAO,QAAQ,WAAW,GAAG,IAAIA,MAAK;AAEhE,UAAI;AACF,aAAK,aAAa,SAAS,YAAY,OAAO;AAAA,MAChD,SAAS,OAAO;AACd,gBAAQ,OAAO,OAAO,cAAc;AAAA,MACtC;AAAA,IACF;AAEA,WAAO,QAAQ,OAAOD,IAAG;AAAA,EAC3B;AACF;AAEO,SAAS,WAAW,aAA2C;AACpE,SAAO,IAAI,aAAa,WAAW;AACrC;AAGO,IAAM,MAAM,qBAAqB,IAAI,aAAa,GAAG,UAAU;",
|
|
5
|
+
"names": ["url", "value"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// extra/uuid.ts
|
|
21
|
+
var uuid_exports = {};
|
|
22
|
+
__export(uuid_exports, {
|
|
23
|
+
UUIDValidator: () => UUIDValidator,
|
|
24
|
+
UUID_EXPR: () => UUID_EXPR,
|
|
25
|
+
uuid: () => uuid
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(uuid_exports);
|
|
28
|
+
var import_string = require("../validators/string.cjs");
|
|
29
|
+
var UUID_EXPR = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
30
|
+
var UUIDValidator = class extends import_string.StringValidator {
|
|
31
|
+
constructor() {
|
|
32
|
+
super({ minLength: 36, maxLength: 36, pattern: UUID_EXPR });
|
|
33
|
+
}
|
|
34
|
+
validate(value) {
|
|
35
|
+
return super.validate(value).toLowerCase();
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var uuid = new UUIDValidator();
|
|
39
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
40
|
+
0 && (module.exports = {
|
|
41
|
+
UUIDValidator,
|
|
42
|
+
UUID_EXPR,
|
|
43
|
+
uuid
|
|
44
|
+
});
|
|
45
|
+
//# sourceMappingURL=uuid.cjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/extra/uuid.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAgC;AAEzB,IAAM,YAAY;AAIlB,IAAM,gBAAN,cAA4B,8BAA4B;AAAA,EAC7D,cAAc;AACZ,UAAM,EAAE,WAAW,IAAI,WAAW,IAAI,SAAS,UAAU,CAAC;AAAA,EAC5D;AAAA,EAGA,SAAS,OAAwB;AAC/B,WAAO,MAAM,SAAS,KAAK,EAAE,YAAY;AAAA,EAC3C;AACF;AAEO,IAAM,OAAO,IAAI,cAAc;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { StringValidator } from '../validators/string';
|
|
2
|
+
export declare const UUID_EXPR: RegExp;
|
|
3
|
+
export type UUIDString = string & {
|
|
4
|
+
__uuid: never;
|
|
5
|
+
};
|
|
6
|
+
export declare class UUIDValidator extends StringValidator<UUIDString> {
|
|
7
|
+
constructor();
|
|
8
|
+
validate(value: unknown): UUIDString;
|
|
9
|
+
}
|
|
10
|
+
export declare const uuid: UUIDValidator;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// extra/uuid.ts
|
|
2
|
+
import { StringValidator } from "../validators/string.mjs";
|
|
3
|
+
var UUID_EXPR = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
4
|
+
var UUIDValidator = class extends StringValidator {
|
|
5
|
+
constructor() {
|
|
6
|
+
super({ minLength: 36, maxLength: 36, pattern: UUID_EXPR });
|
|
7
|
+
}
|
|
8
|
+
validate(value) {
|
|
9
|
+
return super.validate(value).toLowerCase();
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
var uuid = new UUIDValidator();
|
|
13
|
+
export {
|
|
14
|
+
UUIDValidator,
|
|
15
|
+
UUID_EXPR,
|
|
16
|
+
uuid
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=uuid.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/extra/uuid.ts"],
|
|
4
|
+
"mappings": ";AAAA,SAAS,uBAAuB;AAEzB,IAAM,YAAY;AAIlB,IAAM,gBAAN,cAA4B,gBAA4B;AAAA,EAC7D,cAAc;AACZ,UAAM,EAAE,WAAW,IAAI,WAAW,IAAI,SAAS,UAAU,CAAC;AAAA,EAC5D;AAAA,EAGA,SAAS,OAAwB;AAC/B,WAAO,MAAM,SAAS,KAAK,EAAE,YAAY;AAAA,EAC3C;AACF;AAEO,IAAM,OAAO,IAAI,cAAc;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/dist/index.cjs
CHANGED
|
@@ -38,7 +38,6 @@ __export(src_exports, {
|
|
|
38
38
|
OptionalValidator: () => import_optional.OptionalValidator,
|
|
39
39
|
StringValidator: () => import_string.StringValidator,
|
|
40
40
|
TupleValidator: () => import_tuple.TupleValidator,
|
|
41
|
-
URLValidator: () => import_url.URLValidator,
|
|
42
41
|
allOf: () => import_union.allOf,
|
|
43
42
|
any: () => import_any.any,
|
|
44
43
|
array: () => import_array.array,
|
|
@@ -55,7 +54,6 @@ __export(src_exports, {
|
|
|
55
54
|
string: () => import_string.string,
|
|
56
55
|
strip: () => strip,
|
|
57
56
|
tuple: () => import_tuple.tuple,
|
|
58
|
-
url: () => import_url.url,
|
|
59
57
|
validate: () => validate
|
|
60
58
|
});
|
|
61
59
|
module.exports = __toCommonJS(src_exports);
|
|
@@ -75,7 +73,6 @@ var import_optional = require("./validators/optional.cjs");
|
|
|
75
73
|
var import_string = require("./validators/string.cjs");
|
|
76
74
|
var import_tuple = require("./validators/tuple.cjs");
|
|
77
75
|
var import_union = require("./validators/union.cjs");
|
|
78
|
-
var import_url = require("./validators/url.cjs");
|
|
79
76
|
var import_types = require("./types.cjs");
|
|
80
77
|
var import_utilities = require("./utilities.cjs");
|
|
81
78
|
function validate(validation, value, options) {
|
|
@@ -110,7 +107,6 @@ function strip(validation, value, options) {
|
|
|
110
107
|
OptionalValidator,
|
|
111
108
|
StringValidator,
|
|
112
109
|
TupleValidator,
|
|
113
|
-
URLValidator,
|
|
114
110
|
allOf,
|
|
115
111
|
any,
|
|
116
112
|
array,
|
|
@@ -127,7 +123,6 @@ function strip(validation, value, options) {
|
|
|
127
123
|
string,
|
|
128
124
|
strip,
|
|
129
125
|
tuple,
|
|
130
|
-
url,
|
|
131
126
|
validate,
|
|
132
127
|
...require("./errors.cjs"),
|
|
133
128
|
...require("./schema.cjs"),
|
package/dist/index.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,wBAAc,yBALd;AAMA,wBAAc,yBANd;AAOA,wBAAc,wBAPd;AAQA,wBAAc,4BARd;AAWA,iBAAkC;AAClC,mBAAkE;AAClE,qBAA0C;AAC1C,sBAA4C;AAC5C,kBAAoC;AACpC,mBAAsC;AACtC,oBAA4D;AAC5D,oBAAsE;AACtE,sBAA4C;AAC5C,oBAA4D;AAC5D,mBAAsC;AACtC,mBAA6D;AAe7D,mBAAyC;AACzC,uBAA6B;AAUtB,SAAS,SACZ,YACA,OACA,SACkB;AACpB,QAAM,OAA0B,EAAE,GAAG,uCAA0B,GAAG,QAAQ;AAC1E,aAAO,+BAAa,UAAU,EAAE,SAAS,OAAO,IAAI;AACtD;AAgBO,SAAS,MACZ,YACA,OACA,SACkB;AACpB,QAAM,OAA0B;AAAA,IAC9B,2BAA2B;AAAA,IAC3B,0BAA0B;AAAA,IAC1B,oBAAoB;AAAA,IACpB,GAAG;AAAA,EACL;AAEA,aAAO,+BAAa,UAAU,EAAE,SAAS,OAAO,IAAI;AACtD;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,26 +2,25 @@ export * from './errors';
|
|
|
2
2
|
export * from './schema';
|
|
3
3
|
export * from './types';
|
|
4
4
|
export * from './utilities';
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
11
|
-
export { AnyNumberValidator,
|
|
12
|
-
export { AnyObjectValidator, object, objectOf
|
|
13
|
-
export {
|
|
14
|
-
export { AnyStringValidator,
|
|
15
|
-
export {
|
|
16
|
-
export {
|
|
17
|
-
export {
|
|
18
|
-
export type {
|
|
19
|
-
export type {
|
|
20
|
-
export type {
|
|
21
|
-
export type {
|
|
22
|
-
export type { BrandedStringConstraints, StringConstraints } from './validators/string';
|
|
5
|
+
export { AnyValidator, any } from './validators/any';
|
|
6
|
+
export { AnyArrayValidator, ArrayValidator, array, arrayOf } from './validators/array';
|
|
7
|
+
export { BooleanValidator, boolean } from './validators/boolean';
|
|
8
|
+
export { ConstantValidator, constant } from './validators/constant';
|
|
9
|
+
export { DateValidator, date } from './validators/date';
|
|
10
|
+
export { NeverValidator, never } from './validators/never';
|
|
11
|
+
export { AnyNumberValidator, NumberValidator, number } from './validators/number';
|
|
12
|
+
export { AnyObjectValidator, ObjectValidator, object, objectOf } from './validators/object';
|
|
13
|
+
export { OptionalValidator, optional } from './validators/optional';
|
|
14
|
+
export { AnyStringValidator, StringValidator, string } from './validators/string';
|
|
15
|
+
export { TupleValidator, tuple } from './validators/tuple';
|
|
16
|
+
export { AllOfValidator, OneOfValidator, allOf, oneOf } from './validators/union';
|
|
17
|
+
export type { ArrayConstraints, arrayFactory } from './validators/array';
|
|
18
|
+
export type { BooleanConstraints, booleanFactory } from './validators/boolean';
|
|
19
|
+
export type { DateConstraints, dateFactory } from './validators/date';
|
|
20
|
+
export type { BrandedNumberConstraints, numberFactory } from './validators/number';
|
|
21
|
+
export type { objectFactory } from './validators/object';
|
|
22
|
+
export type { BrandedStringConstraints, StringConstraints, stringFactory } from './validators/string';
|
|
23
23
|
export type { TupleMember } from './validators/tuple';
|
|
24
|
-
export type { URLConstraints } from './validators/url';
|
|
25
24
|
import type { InferValidation, Validation, ValidationOptions } from './types';
|
|
26
25
|
/**
|
|
27
26
|
* Validate a _value_ using the specified `Validation`.
|
package/dist/index.mjs
CHANGED
|
@@ -3,19 +3,18 @@ export * from "./errors.mjs";
|
|
|
3
3
|
export * from "./schema.mjs";
|
|
4
4
|
export * from "./types.mjs";
|
|
5
5
|
export * from "./utilities.mjs";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import { AnyNumberValidator,
|
|
13
|
-
import { AnyObjectValidator, object, objectOf
|
|
14
|
-
import {
|
|
15
|
-
import { AnyStringValidator,
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import { url, URLValidator } from "./validators/url.mjs";
|
|
6
|
+
import { AnyValidator, any } from "./validators/any.mjs";
|
|
7
|
+
import { AnyArrayValidator, ArrayValidator, array, arrayOf } from "./validators/array.mjs";
|
|
8
|
+
import { BooleanValidator, boolean } from "./validators/boolean.mjs";
|
|
9
|
+
import { ConstantValidator, constant } from "./validators/constant.mjs";
|
|
10
|
+
import { DateValidator, date } from "./validators/date.mjs";
|
|
11
|
+
import { NeverValidator, never } from "./validators/never.mjs";
|
|
12
|
+
import { AnyNumberValidator, NumberValidator, number } from "./validators/number.mjs";
|
|
13
|
+
import { AnyObjectValidator, ObjectValidator, object, objectOf } from "./validators/object.mjs";
|
|
14
|
+
import { OptionalValidator, optional } from "./validators/optional.mjs";
|
|
15
|
+
import { AnyStringValidator, StringValidator, string } from "./validators/string.mjs";
|
|
16
|
+
import { TupleValidator, tuple } from "./validators/tuple.mjs";
|
|
17
|
+
import { AllOfValidator, OneOfValidator, allOf, oneOf } from "./validators/union.mjs";
|
|
19
18
|
import { defaultValidationOptions } from "./types.mjs";
|
|
20
19
|
import { getValidator } from "./utilities.mjs";
|
|
21
20
|
function validate(validation, value, options) {
|
|
@@ -49,7 +48,6 @@ export {
|
|
|
49
48
|
OptionalValidator,
|
|
50
49
|
StringValidator,
|
|
51
50
|
TupleValidator,
|
|
52
|
-
URLValidator,
|
|
53
51
|
allOf,
|
|
54
52
|
any,
|
|
55
53
|
array,
|
|
@@ -66,7 +64,6 @@ export {
|
|
|
66
64
|
string,
|
|
67
65
|
strip,
|
|
68
66
|
tuple,
|
|
69
|
-
url,
|
|
70
67
|
validate
|
|
71
68
|
};
|
|
72
69
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts"],
|
|
4
|
-
"mappings": ";AAKA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAGd,SAAS,
|
|
4
|
+
"mappings": ";AAKA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAGd,SAAS,cAAc,WAAW;AAClC,SAAS,mBAAmB,gBAAgB,OAAO,eAAe;AAClE,SAAS,kBAAkB,eAAe;AAC1C,SAAS,mBAAmB,gBAAgB;AAC5C,SAAS,eAAe,YAAY;AACpC,SAAS,gBAAgB,aAAa;AACtC,SAAS,oBAAoB,iBAAiB,cAAc;AAC5D,SAAS,oBAAoB,iBAAiB,QAAQ,gBAAgB;AACtE,SAAS,mBAAmB,gBAAgB;AAC5C,SAAS,oBAAoB,iBAAiB,cAAc;AAC5D,SAAS,gBAAgB,aAAa;AACtC,SAAS,gBAAgB,gBAAgB,OAAO,aAAa;AAe7D,SAAS,gCAAgC;AACzC,SAAS,oBAAoB;AAUtB,SAAS,SACZ,YACA,OACA,SACkB;AACpB,QAAM,OAA0B,EAAE,GAAG,0BAA0B,GAAG,QAAQ;AAC1E,SAAO,aAAa,UAAU,EAAE,SAAS,OAAO,IAAI;AACtD;AAgBO,SAAS,MACZ,YACA,OACA,SACkB;AACpB,QAAM,OAA0B;AAAA,IAC9B,2BAA2B;AAAA,IAC3B,0BAA0B;AAAA,IAC1B,oBAAoB;AAAA,IACpB,GAAG;AAAA,EACL;AAEA,SAAO,aAAa,UAAU,EAAE,SAAS,OAAO,IAAI;AACtD;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// registry.ts
|
|
21
|
+
var registry_exports = {};
|
|
22
|
+
__export(registry_exports, {
|
|
23
|
+
registry: () => registry
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(registry_exports);
|
|
26
|
+
var import_errors = require("./errors.cjs");
|
|
27
|
+
var _registry = {};
|
|
28
|
+
var registry = {
|
|
29
|
+
/** Registers the specified validator constructor */
|
|
30
|
+
set(key, constructor) {
|
|
31
|
+
_registry[key] = constructor;
|
|
32
|
+
},
|
|
33
|
+
/** Retrieves the specified validator constructor */
|
|
34
|
+
get(key) {
|
|
35
|
+
const value = _registry[key];
|
|
36
|
+
(0, import_errors.assertSchema)(!!value, `No validator found for "${key}"`);
|
|
37
|
+
return value;
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
41
|
+
0 && (module.exports = {
|
|
42
|
+
registry
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=registry.cjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/registry.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA6B;AAY7B,IAAM,YAAoC,CAAC;AAGpC,IAAM,WAAW;AAAA;AAAA,EAEtB,IAAmC,KAAQ,aAAqC;AAC9E,cAAU,GAAG,IAAI;AAAA,EACnB;AAAA;AAAA,EAGA,IAAmC,KAA0B;AAC3D,UAAM,QAAQ,UAAU,GAAG;AAC3B,oCAAa,CAAC,CAAE,OAAO,2BAA2B,GAAG,GAAG;AACxD,WAAO;AAAA,EACT;AACF;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|