typia 5.4.0 → 5.4.1-dev.20240126
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/lib/IRandomGenerator.d.ts +4 -0
- package/lib/factories/MetadataCommentTagFactory.js +6 -39
- package/lib/factories/MetadataCommentTagFactory.js.map +1 -1
- package/lib/schemas/json/IJsonSchema.d.ts +1 -1
- package/lib/tags/Format.d.ts +3 -23
- package/lib/tags/internal/FormatCheatSheet.d.ts +27 -0
- package/lib/tags/internal/FormatCheatSheet.js +38 -0
- package/lib/tags/internal/FormatCheatSheet.js.map +1 -0
- package/lib/utils/RandomGenerator/RandomGenerator.d.ts +4 -0
- package/lib/utils/RandomGenerator/RandomGenerator.js +9 -1
- package/lib/utils/RandomGenerator/RandomGenerator.js.map +1 -1
- package/package.json +1 -1
- package/src/IRandomGenerator.ts +4 -0
- package/src/factories/MetadataCommentTagFactory.ts +8 -148
- package/src/schemas/json/IJsonSchema.ts +4 -0
- package/src/tags/Format.ts +3 -30
- package/src/tags/internal/FormatCheatSheet.ts +71 -0
- package/src/utils/RandomGenerator/RandomGenerator.ts +4 -0
|
@@ -38,6 +38,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.MetadataCommentTagFactory = void 0;
|
|
40
40
|
var Writable_1 = require("../typings/Writable");
|
|
41
|
+
var FormatCheatSheet_1 = require("../tags/internal/FormatCheatSheet");
|
|
41
42
|
var MetadataTypeTagFactory_1 = require("./MetadataTypeTagFactory");
|
|
42
43
|
/**
|
|
43
44
|
* Extremely hard coded, but no reason to maintain.
|
|
@@ -514,45 +515,11 @@ var parse_integer = function (report) {
|
|
|
514
515
|
};
|
|
515
516
|
};
|
|
516
517
|
};
|
|
517
|
-
var FORMATS = new Map([
|
|
518
|
-
[
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
"email",
|
|
522
|
-
"/^(([^<>()[\\]\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i.test($input)",
|
|
523
|
-
],
|
|
524
|
-
],
|
|
525
|
-
[
|
|
526
|
-
"uuid",
|
|
527
|
-
[
|
|
528
|
-
"uuid",
|
|
529
|
-
"/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i.test($input)",
|
|
530
|
-
],
|
|
531
|
-
],
|
|
532
|
-
[
|
|
533
|
-
"ipv4",
|
|
534
|
-
[
|
|
535
|
-
"ipv4",
|
|
536
|
-
"/^(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test($input)",
|
|
537
|
-
],
|
|
538
|
-
],
|
|
539
|
-
[
|
|
540
|
-
"ipv6",
|
|
541
|
-
[
|
|
542
|
-
"ipv6",
|
|
543
|
-
"/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/.test($input)",
|
|
544
|
-
],
|
|
545
|
-
],
|
|
546
|
-
[
|
|
547
|
-
"url",
|
|
548
|
-
[
|
|
549
|
-
"url",
|
|
550
|
-
"/^[a-zA-Z0-9]+:\\/\\/(?:www.)?[-a-zA-Z0-9@:%._+~#=]{1,256}.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_+.~#?&/=]*)$/.test($input)",
|
|
551
|
-
],
|
|
552
|
-
],
|
|
553
|
-
["date", ["date", "/^(\\d{4})-(\\d{2})-(\\d{2})$/.test($input)"]],
|
|
518
|
+
var FORMATS = new Map(__spreadArray(__spreadArray([], __read(Object.entries(FormatCheatSheet_1.FormatCheatSheet).map(function (_a) {
|
|
519
|
+
var _b = __read(_a, 2), key = _b[0], value = _b[1];
|
|
520
|
+
return [key, [key, value]];
|
|
521
|
+
})), false), [
|
|
554
522
|
["datetime", ["date-time", "!isNaN(new Date($input).getTime())"]],
|
|
555
|
-
["date-time", ["date-time", "!isNaN(new Date($input).getTime())"]],
|
|
556
523
|
["dateTime", ["date-time", "!isNaN(new Date($input).getTime())"]],
|
|
557
|
-
]);
|
|
524
|
+
], false));
|
|
558
525
|
//# sourceMappingURL=MetadataCommentTagFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetadataCommentTagFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataCommentTagFactory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MetadataCommentTagFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataCommentTagFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ export declare namespace IJsonSchema {
|
|
|
18
18
|
minLength?: undefined | (number & Type<"uint32">);
|
|
19
19
|
maxLength?: undefined | (number & Type<"uint32">);
|
|
20
20
|
pattern?: undefined | string;
|
|
21
|
-
format?: undefined | "byte" | "password" | "regex" | "uuid" | "email" | "hostname" | "ipv4" | "ipv6" | "uri" | "uri-reference" | "uri-template" | "url" | "date-time" | "date" | "time" | "duration" | "json-pointer" | "relative-json-pointer" | (string & {});
|
|
21
|
+
format?: undefined | "byte" | "password" | "regex" | "uuid" | "email" | "hostname" | "idn-email" | "idn-hostname" | "iri" | "iri-reference" | "ipv4" | "ipv6" | "uri" | "uri-reference" | "uri-template" | "url" | "date-time" | "date" | "time" | "duration" | "json-pointer" | "relative-json-pointer" | (string & {});
|
|
22
22
|
"x-typia-typeTags"?: undefined | IMetadataTypeTag[];
|
|
23
23
|
}
|
|
24
24
|
interface INumber extends IAtomic<"number"> {
|
package/lib/tags/Format.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { TagBase } from "./TagBase";
|
|
1
|
+
import type { TagBase } from "./TagBase";
|
|
2
|
+
import type { FormatCheatSheet } from "./internal/FormatCheatSheet";
|
|
2
3
|
export type Format<Value extends keyof Format.Validator> = TagBase<{
|
|
3
4
|
target: "string";
|
|
4
5
|
kind: "format";
|
|
@@ -7,26 +8,5 @@ export type Format<Value extends keyof Format.Validator> = TagBase<{
|
|
|
7
8
|
exclusive: ["format", "pattern"];
|
|
8
9
|
}>;
|
|
9
10
|
export declare namespace Format {
|
|
10
|
-
|
|
11
|
-
byte: RegexCall<`/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm`>;
|
|
12
|
-
password: `true`;
|
|
13
|
-
regex: `(() => { try { new RegExp($input); return true; } catch { return false; } })()`;
|
|
14
|
-
uuid: RegexCall<`/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i`>;
|
|
15
|
-
email: RegexCall<`/^[a-z0-9!#$%&'*+/=?^_\`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_\`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i`>;
|
|
16
|
-
hostname: RegexCall<`/^(?=.{1,253}\\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\\.?$/i`>;
|
|
17
|
-
ipv4: RegexCall<`/^(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)$/`>;
|
|
18
|
-
ipv6: RegexCall<`/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i`>;
|
|
19
|
-
uri: `${RegexCall<`/\\/|:/`>} && ${RegexCall<`/^(?:[a-z][a-z0-9+\\-.]*:)(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\\?(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i`>}`;
|
|
20
|
-
"uri-reference": RegexCall<`/^(?:[a-z][a-z0-9+\\-.]*:)?(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\\?(?:[a-z0-9\\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i`>;
|
|
21
|
-
"uri-template": RegexCall<`/^(?:(?:[^\\x00-\\x20"'<>%\\\\^\`{|}]|%[0-9a-f]{2})|\\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?)*\\})*$/i`>;
|
|
22
|
-
url: RegexCall<`/^(?:https?|ftp):\\/\\/(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)(?:\\.(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)*(?:\\.(?:[a-z\\u{00a1}-\\u{ffff}]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/iu`>;
|
|
23
|
-
"date-time": `!isNaN(new Date($input).getTime())`;
|
|
24
|
-
date: RegexCall<`/^(\\d{4})-(\\d{2})-(\\d{2})$/`>;
|
|
25
|
-
time: RegexCall<`/^(\\d\\d):(\\d\\d):(\\d\\d(?:\\.\\d+)?)(z|([+-])(\\d\\d)(?::?(\\d\\d))?)?$/i`>;
|
|
26
|
-
duration: RegexCall<`/^P(?!$)((\\d+Y)?(\\d+M)?(\\d+D)?(T(?=\\d)(\\d+H)?(\\d+M)?(\\d+S)?)?|(\\d+W)?)$/`>;
|
|
27
|
-
"json-pointer": RegexCall<`/^(?:\\/(?:[^~/]|~0|~1)*)*$/`>;
|
|
28
|
-
"relative-json-pointer": RegexCall<`/^(?:0|[1-9][0-9]*)(?:#|(?:\\/(?:[^~/]|~0|~1)*)*)$/`>;
|
|
29
|
-
};
|
|
30
|
-
type RegexCall<Exp extends string> = `${Exp}.test($input)`;
|
|
31
|
-
export {};
|
|
11
|
+
type Validator = typeof FormatCheatSheet;
|
|
32
12
|
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @reference https://github.dev/ajv-validator/ajv-formats/blob/master/src/formats.ts
|
|
3
|
+
*/
|
|
4
|
+
export declare const FormatCheatSheet: {
|
|
5
|
+
readonly byte: "/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm.test($input)";
|
|
6
|
+
readonly password: "true";
|
|
7
|
+
readonly regex: "(() => { try { new RegExp($input); return true; } catch { return false; } })()";
|
|
8
|
+
readonly uuid: "/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i.test($input)";
|
|
9
|
+
readonly email: "/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i.test($input)";
|
|
10
|
+
readonly hostname: "/^(?=.{1,253}\\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\\.?$/i.test($input)";
|
|
11
|
+
readonly "idn-email": "/^(([^<>()[\\]\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i.test($input)";
|
|
12
|
+
readonly "idn-hostname": "/^([a-z0-9\\u00a1-\\uffff0-9]+(-[a-z0-9\\u00a1-\\uffff0-9]+)*\\.)+[a-z\\u00a1-\\uffff]{2,}$/i.test($input)";
|
|
13
|
+
readonly iri: "/^[A-Za-z][\\d+-.A-Za-z]*:[^\\u0000-\\u0020\"<>\\\\^`{|}]*$/u.test($input)";
|
|
14
|
+
readonly "iri-reference": "/^[A-Za-z][\\d+-.A-Za-z]*:[^\\u0000-\\u0020\"<>\\\\^`{|}]*$/u.test($input)";
|
|
15
|
+
readonly ipv4: "/^(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)$/.test($input)";
|
|
16
|
+
readonly ipv6: "/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))$/i.test($input)";
|
|
17
|
+
readonly uri: "/\\/|:/.test($input) && /^(?:[a-z][a-z0-9+\\-.]*:)(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\\?(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i.test($input)";
|
|
18
|
+
readonly "uri-reference": "/^(?:[a-z][a-z0-9+\\-.]*:)?(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'\"()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\\?(?:[a-z0-9\\-._~!$&'\"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'\"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i.test($input)";
|
|
19
|
+
readonly "uri-template": "/^(?:(?:[^\\x00-\\x20\"'<>%\\\\^`{|}]|%[0-9a-f]{2})|\\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?)*\\})*$/i.test($input)";
|
|
20
|
+
readonly url: "/^(?:https?|ftp):\\/\\/(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)(?:\\.(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)*(?:\\.(?:[a-z\\u{00a1}-\\u{ffff}]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/iu.test($input)";
|
|
21
|
+
readonly "date-time": "!isNaN(new Date($input).getTime())";
|
|
22
|
+
readonly date: "/^(\\d{4})-(\\d{2})-(\\d{2})$/.test($input)";
|
|
23
|
+
readonly time: "/^(\\d\\d):(\\d\\d):(\\d\\d(?:\\.\\d+)?)(z|([+-])(\\d\\d)(?::?(\\d\\d))?)?$/i.test($input)";
|
|
24
|
+
readonly duration: "/^P(?!$)((\\d+Y)?(\\d+M)?(\\d+D)?(T(?=\\d)(\\d+H)?(\\d+M)?(\\d+S)?)?|(\\d+W)?)$/.test($input)";
|
|
25
|
+
readonly "json-pointer": "/^(?:\\/(?:[^~/]|~0|~1)*)*$/.test($input)";
|
|
26
|
+
readonly "relative-json-pointer": "/^(?:0|[1-9][0-9]*)(?:#|(?:\\/(?:[^~/]|~0|~1)*)*)$/.test($input)";
|
|
27
|
+
};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FormatCheatSheet = void 0;
|
|
4
|
+
var RegexCall = function (text) {
|
|
5
|
+
return "".concat(text, ".test($input)");
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* @reference https://github.dev/ajv-validator/ajv-formats/blob/master/src/formats.ts
|
|
9
|
+
*/
|
|
10
|
+
exports.FormatCheatSheet = {
|
|
11
|
+
// SPECIAL CHARACTERS
|
|
12
|
+
byte: RegexCall("/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm"),
|
|
13
|
+
password: "true",
|
|
14
|
+
regex: "(() => { try { new RegExp($input); return true; } catch { return false; } })()",
|
|
15
|
+
uuid: RegexCall("/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i"),
|
|
16
|
+
// ADDRESSES
|
|
17
|
+
email: RegexCall("/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i"),
|
|
18
|
+
hostname: RegexCall("/^(?=.{1,253}\\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\\.?$/i"),
|
|
19
|
+
"idn-email": RegexCall("/^(([^<>()[\\]\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i"),
|
|
20
|
+
"idn-hostname": RegexCall("/^([a-z0-9\\u00a1-\\uffff0-9]+(-[a-z0-9\\u00a1-\\uffff0-9]+)*\\.)+[a-z\\u00a1-\\uffff]{2,}$/i"),
|
|
21
|
+
iri: RegexCall("/^[A-Za-z][\\d+-.A-Za-z]*:[^\\u0000-\\u0020\"<>\\\\^`{|}]*$/u"),
|
|
22
|
+
"iri-reference": RegexCall("/^[A-Za-z][\\d+-.A-Za-z]*:[^\\u0000-\\u0020\"<>\\\\^`{|}]*$/u"),
|
|
23
|
+
ipv4: RegexCall("/^(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)$/"),
|
|
24
|
+
ipv6: RegexCall("/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]d|1dd|[1-9]?d)(.(25[0-5]|2[0-4]d|1dd|[1-9]?d)){3}))|:)))$/i"),
|
|
25
|
+
uri: "".concat(RegexCall("/\\/|:/"), " && ").concat(RegexCall("/^(?:[a-z][a-z0-9+\\-.]*:)(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\\?(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i")),
|
|
26
|
+
"uri-reference": RegexCall("/^(?:[a-z][a-z0-9+\\-.]*:)?(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'\"()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\\?(?:[a-z0-9\\-._~!$&'\"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'\"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i"),
|
|
27
|
+
"uri-template": RegexCall("/^(?:(?:[^\\x00-\\x20\"'<>%\\\\^`{|}]|%[0-9a-f]{2})|\\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?)*\\})*$/i"),
|
|
28
|
+
url: RegexCall("/^(?:https?|ftp):\\/\\/(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)(?:\\.(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)*(?:\\.(?:[a-z\\u{00a1}-\\u{ffff}]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/iu"),
|
|
29
|
+
// TIMESTAMPS
|
|
30
|
+
"date-time": "!isNaN(new Date($input).getTime())",
|
|
31
|
+
date: RegexCall("/^(\\d{4})-(\\d{2})-(\\d{2})$/"),
|
|
32
|
+
time: RegexCall("/^(\\d\\d):(\\d\\d):(\\d\\d(?:\\.\\d+)?)(z|([+-])(\\d\\d)(?::?(\\d\\d))?)?$/i"),
|
|
33
|
+
duration: RegexCall("/^P(?!$)((\\d+Y)?(\\d+M)?(\\d+D)?(T(?=\\d)(\\d+H)?(\\d+M)?(\\d+S)?)?|(\\d+W)?)$/"),
|
|
34
|
+
// POINTERS
|
|
35
|
+
"json-pointer": RegexCall("/^(?:\\/(?:[^~/]|~0|~1)*)*$/"),
|
|
36
|
+
"relative-json-pointer": RegexCall("/^(?:0|[1-9][0-9]*)(?:#|(?:\\/(?:[^~/]|~0|~1)*)*)$/"),
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=FormatCheatSheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormatCheatSheet.js","sourceRoot":"","sources":["../../../src/tags/internal/FormatCheatSheet.ts"],"names":[],"mappings":";;;AAAA,IAAM,SAAS,GAAG,UAAsB,IAAU;IAChD,OAAA,UAAG,IAAI,kBAAwB;AAA/B,CAA+B,CAAC;AAElC;;GAEG;AACU,QAAA,gBAAgB,GAAG;IAC9B,qBAAqB;IACrB,IAAI,EAAE,SAAS,CACb,sEAAsE,CACvE;IACD,QAAQ,EAAE,MAAM;IAChB,KAAK,EAAE,gFAAgF;IACvF,IAAI,EAAE,SAAS,CACb,gEAAgE,CACjE;IAED,YAAY;IACZ,KAAK,EAAE,SAAS,CACd,8IAAgJ,CACjJ;IACD,QAAQ,EAAE,SAAS,CACjB,4GAA4G,CAC7G;IACD,WAAW,EAAE,SAAS,CACpB,kJAA4I,CAC7I;IACD,cAAc,EAAE,SAAS,CACvB,+FAA+F,CAChG;IACD,GAAG,EAAE,SAAS,CACZ,+DAA+D,CAChE;IACD,eAAe,EAAE,SAAS,CACxB,+DAA+D,CAChE;IACD,IAAI,EAAE,SAAS,CACb,8FAA8F,CAC/F;IACD,IAAI,EAAE,SAAS,CACb,q7BAAo/B,CACr/B;IACD,GAAG,EAAE,UAAG,SAAS,CAAC,SAAS,CAAC,iBAAO,SAAS,CAC1C,oqCAAoqC,CACrqC,CAAE;IACH,eAAe,EAAE,SAAS,CACxB,srCAA8qC,CAC/qC;IACD,cAAc,EAAE,SAAS,CACvB,8LAA8L,CAC/L;IACD,GAAG,EAAE,SAAS,CACZ,+fAA+f,CAChgB;IAED,aAAa;IACb,WAAW,EAAE,oCAAoC;IACjD,IAAI,EAAE,SAAS,CAAC,gCAAgC,CAAC;IACjD,IAAI,EAAE,SAAS,CACb,+EAA+E,CAChF;IACD,QAAQ,EAAE,SAAS,CACjB,kFAAkF,CACnF;IAED,WAAW;IACX,cAAc,EAAE,SAAS,CAAC,8BAA8B,CAAC;IACzD,uBAAuB,EAAE,SAAS,CAChC,qDAAqD,CACtD;CACO,CAAC"}
|
|
@@ -13,6 +13,10 @@ export declare const regex: () => string;
|
|
|
13
13
|
export declare const uuid: () => string;
|
|
14
14
|
export declare const email: () => string;
|
|
15
15
|
export declare const hostname: () => string;
|
|
16
|
+
export declare const idnEmail: () => string;
|
|
17
|
+
export declare const idnHostname: () => string;
|
|
18
|
+
export declare const iri: () => string;
|
|
19
|
+
export declare const iriReference: () => string;
|
|
16
20
|
export declare const ipv4: () => string;
|
|
17
21
|
export declare const ipv6: () => string;
|
|
18
22
|
export declare const uri: () => string;
|
|
@@ -19,7 +19,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
19
19
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
20
|
};
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.relativeJsonPointer = exports.jsonPointer = exports.duration = exports.time = exports.date = exports.datetime = exports.url = exports.uriTemplate = exports.uriReference = exports.uri = exports.ipv6 = exports.ipv4 = exports.hostname = exports.email = exports.uuid = exports.regex = exports.password = exports.byte = exports.pattern = exports.length = exports.pick = exports.array = exports.string = exports.number = exports.bigint = exports.integer = exports.boolean = void 0;
|
|
22
|
+
exports.relativeJsonPointer = exports.jsonPointer = exports.duration = exports.time = exports.date = exports.datetime = exports.url = exports.uriTemplate = exports.uriReference = exports.uri = exports.ipv6 = exports.ipv4 = exports.iriReference = exports.iri = exports.idnHostname = exports.idnEmail = exports.hostname = exports.email = exports.uuid = exports.regex = exports.password = exports.byte = exports.pattern = exports.length = exports.pick = exports.array = exports.string = exports.number = exports.bigint = exports.integer = exports.boolean = void 0;
|
|
23
23
|
var randexp_1 = __importDefault(require("randexp"));
|
|
24
24
|
var ALPHABETS = "abcdefghijklmnopqrstuvwxyz";
|
|
25
25
|
/* -----------------------------------------------------------
|
|
@@ -85,6 +85,14 @@ var email = function () { return "".concat((0, exports.string)(10), "@").concat(
|
|
|
85
85
|
exports.email = email;
|
|
86
86
|
var hostname = function () { return "".concat((0, exports.string)(10), ".").concat((0, exports.string)(3)); };
|
|
87
87
|
exports.hostname = hostname;
|
|
88
|
+
var idnEmail = function () { return (0, exports.email)(); };
|
|
89
|
+
exports.idnEmail = idnEmail;
|
|
90
|
+
var idnHostname = function () { return (0, exports.hostname)(); };
|
|
91
|
+
exports.idnHostname = idnHostname;
|
|
92
|
+
var iri = function () { return (0, exports.url)(); };
|
|
93
|
+
exports.iri = iri;
|
|
94
|
+
var iriReference = function () { return (0, exports.url)(); };
|
|
95
|
+
exports.iriReference = iriReference;
|
|
88
96
|
var ipv4 = function () { return (0, exports.array)(function () { return (0, exports.integer)(0, 255); }, 4).join("."); };
|
|
89
97
|
exports.ipv4 = ipv4;
|
|
90
98
|
var ipv6 = function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RandomGenerator.js","sourceRoot":"","sources":["../../../src/utils/RandomGenerator/RandomGenerator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RandomGenerator.js","sourceRoot":"","sources":["../../../src/utils/RandomGenerator/RandomGenerator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/IRandomGenerator.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { Metadata } from "../schemas/metadata/Metadata";
|
|
|
5
5
|
|
|
6
6
|
import { Writable } from "../typings/Writable";
|
|
7
7
|
|
|
8
|
+
import { FormatCheatSheet } from "../tags/internal/FormatCheatSheet";
|
|
8
9
|
import { MetadataFactory } from "./MetadataFactory";
|
|
9
10
|
import { MetadataTypeTagFactory } from "./MetadataTypeTagFactory";
|
|
10
11
|
|
|
@@ -451,151 +452,10 @@ const parse_integer =
|
|
|
451
452
|
return value;
|
|
452
453
|
};
|
|
453
454
|
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
| IMetadataCommentTag.IMultipleOf
|
|
462
|
-
| IMetadataCommentTag.IStep
|
|
463
|
-
// STRING
|
|
464
|
-
| IMetadataCommentTag.IFormat
|
|
465
|
-
| IMetadataCommentTag.IPattern
|
|
466
|
-
| IMetadataCommentTag.ILength
|
|
467
|
-
| IMetadataCommentTag.IMinLength
|
|
468
|
-
| IMetadataCommentTag.IMaxLength
|
|
469
|
-
// ARRAY
|
|
470
|
-
| IMetadataCommentTag.IItems
|
|
471
|
-
| IMetadataCommentTag.IMinItems
|
|
472
|
-
| IMetadataCommentTag.IMaxItems;
|
|
473
|
-
|
|
474
|
-
namespace IMetadataCommentTag {
|
|
475
|
-
/* -----------------------------------------------------------
|
|
476
|
-
NUMBER
|
|
477
|
-
----------------------------------------------------------- */
|
|
478
|
-
export interface IType {
|
|
479
|
-
kind: "type";
|
|
480
|
-
value: "int" | "uint" | "int32" | "uint32" | "int64" | "uint64" | "float";
|
|
481
|
-
}
|
|
482
|
-
|
|
483
|
-
export interface IMinimum {
|
|
484
|
-
kind: "minimum";
|
|
485
|
-
value: number;
|
|
486
|
-
}
|
|
487
|
-
|
|
488
|
-
export interface IMaximum {
|
|
489
|
-
kind: "maximum";
|
|
490
|
-
value: number;
|
|
491
|
-
}
|
|
492
|
-
|
|
493
|
-
export interface IExclusiveMinimum {
|
|
494
|
-
kind: "exclusiveMinimum";
|
|
495
|
-
value: number;
|
|
496
|
-
}
|
|
497
|
-
|
|
498
|
-
export interface IExclusiveMaximum {
|
|
499
|
-
kind: "exclusiveMaximum";
|
|
500
|
-
value: number;
|
|
501
|
-
}
|
|
502
|
-
|
|
503
|
-
export interface IMultipleOf {
|
|
504
|
-
kind: "multipleOf";
|
|
505
|
-
value: number;
|
|
506
|
-
}
|
|
507
|
-
|
|
508
|
-
export interface IStep {
|
|
509
|
-
kind: "step";
|
|
510
|
-
value: number;
|
|
511
|
-
}
|
|
512
|
-
|
|
513
|
-
/* -----------------------------------------------------------
|
|
514
|
-
STRING
|
|
515
|
-
----------------------------------------------------------- */
|
|
516
|
-
export interface IFormat {
|
|
517
|
-
kind: "format";
|
|
518
|
-
value: "uuid" | "email" | "url" | "ipv4" | "ipv6" | "date" | "date-time";
|
|
519
|
-
}
|
|
520
|
-
|
|
521
|
-
export interface IPattern {
|
|
522
|
-
kind: "pattern";
|
|
523
|
-
value: string;
|
|
524
|
-
}
|
|
525
|
-
|
|
526
|
-
export interface ILength {
|
|
527
|
-
kind: "length";
|
|
528
|
-
value: number;
|
|
529
|
-
}
|
|
530
|
-
|
|
531
|
-
export interface IMinLength {
|
|
532
|
-
kind: "minLength";
|
|
533
|
-
value: number;
|
|
534
|
-
}
|
|
535
|
-
|
|
536
|
-
export interface IMaxLength {
|
|
537
|
-
kind: "maxLength";
|
|
538
|
-
value: number;
|
|
539
|
-
}
|
|
540
|
-
|
|
541
|
-
/* -----------------------------------------------------------
|
|
542
|
-
ARRAY
|
|
543
|
-
----------------------------------------------------------- */
|
|
544
|
-
export interface IItems {
|
|
545
|
-
kind: "items";
|
|
546
|
-
value: number;
|
|
547
|
-
}
|
|
548
|
-
|
|
549
|
-
export interface IMinItems {
|
|
550
|
-
kind: "minItems";
|
|
551
|
-
value: number;
|
|
552
|
-
}
|
|
553
|
-
|
|
554
|
-
export interface IMaxItems {
|
|
555
|
-
kind: "maxItems";
|
|
556
|
-
value: number;
|
|
557
|
-
}
|
|
558
|
-
}
|
|
559
|
-
|
|
560
|
-
const FORMATS: Map<string, [IMetadataCommentTag.IFormat["value"], string]> =
|
|
561
|
-
new Map([
|
|
562
|
-
[
|
|
563
|
-
"email",
|
|
564
|
-
[
|
|
565
|
-
"email",
|
|
566
|
-
`/^(([^<>()[\\]\\.,;:\\s@\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\"]+)*)|(\\".+\\"))@(([^<>()[\\]\\.,;:\\s@\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\"]{2,})$/i.test($input)`,
|
|
567
|
-
],
|
|
568
|
-
],
|
|
569
|
-
[
|
|
570
|
-
"uuid",
|
|
571
|
-
[
|
|
572
|
-
"uuid",
|
|
573
|
-
`/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i.test($input)`,
|
|
574
|
-
],
|
|
575
|
-
],
|
|
576
|
-
[
|
|
577
|
-
"ipv4",
|
|
578
|
-
[
|
|
579
|
-
"ipv4",
|
|
580
|
-
`/^(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test($input)`,
|
|
581
|
-
],
|
|
582
|
-
],
|
|
583
|
-
[
|
|
584
|
-
"ipv6",
|
|
585
|
-
[
|
|
586
|
-
"ipv6",
|
|
587
|
-
`/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/.test($input)`,
|
|
588
|
-
],
|
|
589
|
-
],
|
|
590
|
-
[
|
|
591
|
-
"url",
|
|
592
|
-
[
|
|
593
|
-
"url",
|
|
594
|
-
`/^[a-zA-Z0-9]+:\\/\\/(?:www.)?[-a-zA-Z0-9@:%._+~#=]{1,256}.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_+.~#?&/=]*)$/.test($input)`,
|
|
595
|
-
],
|
|
596
|
-
],
|
|
597
|
-
["date", ["date", `/^(\\d{4})-(\\d{2})-(\\d{2})$/.test($input)`]],
|
|
598
|
-
["datetime", ["date-time", `!isNaN(new Date($input).getTime())`]],
|
|
599
|
-
["date-time", ["date-time", `!isNaN(new Date($input).getTime())`]],
|
|
600
|
-
["dateTime", ["date-time", `!isNaN(new Date($input).getTime())`]],
|
|
601
|
-
]);
|
|
455
|
+
const FORMATS: Map<string, [string, string]> = new Map([
|
|
456
|
+
...Object.entries(FormatCheatSheet).map(
|
|
457
|
+
([key, value]) => [key, [key, value]] as any,
|
|
458
|
+
),
|
|
459
|
+
["datetime", ["date-time", `!isNaN(new Date($input).getTime())`]],
|
|
460
|
+
["dateTime", ["date-time", `!isNaN(new Date($input).getTime())`]],
|
|
461
|
+
]);
|
package/src/tags/Format.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { TagBase } from "./TagBase";
|
|
1
|
+
import type { TagBase } from "./TagBase";
|
|
2
|
+
import type { FormatCheatSheet } from "./internal/FormatCheatSheet";
|
|
2
3
|
|
|
3
4
|
export type Format<Value extends keyof Format.Validator> = TagBase<{
|
|
4
5
|
target: "string";
|
|
@@ -8,33 +9,5 @@ export type Format<Value extends keyof Format.Validator> = TagBase<{
|
|
|
8
9
|
exclusive: ["format", "pattern"];
|
|
9
10
|
}>;
|
|
10
11
|
export namespace Format {
|
|
11
|
-
|
|
12
|
-
export type Validator = {
|
|
13
|
-
// SPECIAL CHARACTERS
|
|
14
|
-
byte: RegexCall<`/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm`>;
|
|
15
|
-
password: `true`;
|
|
16
|
-
regex: `(() => { try { new RegExp($input); return true; } catch { return false; } })()`;
|
|
17
|
-
uuid: RegexCall<`/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i`>;
|
|
18
|
-
|
|
19
|
-
// ADDRESSES
|
|
20
|
-
email: RegexCall<`/^[a-z0-9!#$%&'*+/=?^_\`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_\`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i`>;
|
|
21
|
-
hostname: RegexCall<`/^(?=.{1,253}\\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\\.?$/i`>;
|
|
22
|
-
ipv4: RegexCall<`/^(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)$/`>;
|
|
23
|
-
ipv6: RegexCall<`/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i`>;
|
|
24
|
-
uri: `${RegexCall<`/\\/|:/`>} && ${RegexCall<`/^(?:[a-z][a-z0-9+\\-.]*:)(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\\?(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i`>}`;
|
|
25
|
-
"uri-reference": RegexCall<`/^(?:[a-z][a-z0-9+\\-.]*:)?(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\\?(?:[a-z0-9\\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i`>;
|
|
26
|
-
"uri-template": RegexCall<`/^(?:(?:[^\\x00-\\x20"'<>%\\\\^\`{|}]|%[0-9a-f]{2})|\\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?)*\\})*$/i`>;
|
|
27
|
-
url: RegexCall<`/^(?:https?|ftp):\\/\\/(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)(?:\\.(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)*(?:\\.(?:[a-z\\u{00a1}-\\u{ffff}]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/iu`>;
|
|
28
|
-
|
|
29
|
-
// TIMESTAMPS
|
|
30
|
-
"date-time": `!isNaN(new Date($input).getTime())`;
|
|
31
|
-
date: RegexCall<`/^(\\d{4})-(\\d{2})-(\\d{2})$/`>;
|
|
32
|
-
time: RegexCall<`/^(\\d\\d):(\\d\\d):(\\d\\d(?:\\.\\d+)?)(z|([+-])(\\d\\d)(?::?(\\d\\d))?)?$/i`>;
|
|
33
|
-
duration: RegexCall<`/^P(?!$)((\\d+Y)?(\\d+M)?(\\d+D)?(T(?=\\d)(\\d+H)?(\\d+M)?(\\d+S)?)?|(\\d+W)?)$/`>;
|
|
34
|
-
|
|
35
|
-
// POINTERS
|
|
36
|
-
"json-pointer": RegexCall<`/^(?:\\/(?:[^~/]|~0|~1)*)*$/`>;
|
|
37
|
-
"relative-json-pointer": RegexCall<`/^(?:0|[1-9][0-9]*)(?:#|(?:\\/(?:[^~/]|~0|~1)*)*)$/`>;
|
|
38
|
-
};
|
|
39
|
-
type RegexCall<Exp extends string> = `${Exp}.test($input)`;
|
|
12
|
+
export type Validator = typeof FormatCheatSheet;
|
|
40
13
|
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
const RegexCall = <Text extends string>(text: Text) =>
|
|
2
|
+
`${text}.test($input)` as const;
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @reference https://github.dev/ajv-validator/ajv-formats/blob/master/src/formats.ts
|
|
6
|
+
*/
|
|
7
|
+
export const FormatCheatSheet = {
|
|
8
|
+
// SPECIAL CHARACTERS
|
|
9
|
+
byte: RegexCall(
|
|
10
|
+
`/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm`,
|
|
11
|
+
),
|
|
12
|
+
password: `true`,
|
|
13
|
+
regex: `(() => { try { new RegExp($input); return true; } catch { return false; } })()`,
|
|
14
|
+
uuid: RegexCall(
|
|
15
|
+
`/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i`,
|
|
16
|
+
),
|
|
17
|
+
|
|
18
|
+
// ADDRESSES
|
|
19
|
+
email: RegexCall(
|
|
20
|
+
`/^[a-z0-9!#$%&'*+/=?^_\`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_\`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i`,
|
|
21
|
+
),
|
|
22
|
+
hostname: RegexCall(
|
|
23
|
+
`/^(?=.{1,253}\\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\\.?$/i`,
|
|
24
|
+
),
|
|
25
|
+
"idn-email": RegexCall(
|
|
26
|
+
`/^(([^<>()[\\]\\.,;:\\s@\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\"]+)*)|(\\".+\\"))@(([^<>()[\\]\\.,;:\\s@\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\"]{2,})$/i`,
|
|
27
|
+
),
|
|
28
|
+
"idn-hostname": RegexCall(
|
|
29
|
+
`/^([a-z0-9\\u00a1-\\uffff0-9]+(-[a-z0-9\\u00a1-\\uffff0-9]+)*\\.)+[a-z\\u00a1-\\uffff]{2,}$/i`,
|
|
30
|
+
),
|
|
31
|
+
iri: RegexCall(
|
|
32
|
+
`/^[A-Za-z][\\d+-.A-Za-z]*:[^\\u0000-\\u0020"<>\\\\^\`{|}]*$/u`,
|
|
33
|
+
),
|
|
34
|
+
"iri-reference": RegexCall(
|
|
35
|
+
`/^[A-Za-z][\\d+-.A-Za-z]*:[^\\u0000-\\u0020"<>\\\\^\`{|}]*$/u`,
|
|
36
|
+
),
|
|
37
|
+
ipv4: RegexCall(
|
|
38
|
+
`/^(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)$/`,
|
|
39
|
+
),
|
|
40
|
+
ipv6: RegexCall(
|
|
41
|
+
`/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i`,
|
|
42
|
+
),
|
|
43
|
+
uri: `${RegexCall(`/\\/|:/`)} && ${RegexCall(
|
|
44
|
+
`/^(?:[a-z][a-z0-9+\\-.]*:)(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\\?(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i`,
|
|
45
|
+
)}`,
|
|
46
|
+
"uri-reference": RegexCall(
|
|
47
|
+
`/^(?:[a-z][a-z0-9+\\-.]*:)?(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\\?(?:[a-z0-9\\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i`,
|
|
48
|
+
),
|
|
49
|
+
"uri-template": RegexCall(
|
|
50
|
+
`/^(?:(?:[^\\x00-\\x20"'<>%\\\\^\`{|}]|%[0-9a-f]{2})|\\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?)*\\})*$/i`,
|
|
51
|
+
),
|
|
52
|
+
url: RegexCall(
|
|
53
|
+
`/^(?:https?|ftp):\\/\\/(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)(?:\\.(?:[a-z0-9\\u{00a1}-\\u{ffff}]+-)*[a-z0-9\\u{00a1}-\\u{ffff}]+)*(?:\\.(?:[a-z\\u{00a1}-\\u{ffff}]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/iu`,
|
|
54
|
+
),
|
|
55
|
+
|
|
56
|
+
// TIMESTAMPS
|
|
57
|
+
"date-time": `!isNaN(new Date($input).getTime())`,
|
|
58
|
+
date: RegexCall(`/^(\\d{4})-(\\d{2})-(\\d{2})$/`),
|
|
59
|
+
time: RegexCall(
|
|
60
|
+
`/^(\\d\\d):(\\d\\d):(\\d\\d(?:\\.\\d+)?)(z|([+-])(\\d\\d)(?::?(\\d\\d))?)?$/i`,
|
|
61
|
+
),
|
|
62
|
+
duration: RegexCall(
|
|
63
|
+
`/^P(?!$)((\\d+Y)?(\\d+M)?(\\d+D)?(T(?=\\d)(\\d+H)?(\\d+M)?(\\d+S)?)?|(\\d+W)?)$/`,
|
|
64
|
+
),
|
|
65
|
+
|
|
66
|
+
// POINTERS
|
|
67
|
+
"json-pointer": RegexCall(`/^(?:\\/(?:[^~/]|~0|~1)*)*$/`),
|
|
68
|
+
"relative-json-pointer": RegexCall(
|
|
69
|
+
`/^(?:0|[1-9][0-9]*)(?:#|(?:\\/(?:[^~/]|~0|~1)*)*)$/`,
|
|
70
|
+
),
|
|
71
|
+
} as const;
|
|
@@ -48,6 +48,10 @@ export const uuid = () =>
|
|
|
48
48
|
// ADDRESSES
|
|
49
49
|
export const email = () => `${string(10)}@${string(10)}.${string(3)}`;
|
|
50
50
|
export const hostname = () => `${string(10)}.${string(3)}`;
|
|
51
|
+
export const idnEmail = () => email();
|
|
52
|
+
export const idnHostname = () => hostname();
|
|
53
|
+
export const iri = () => url();
|
|
54
|
+
export const iriReference = () => url();
|
|
51
55
|
export const ipv4 = () => array(() => integer(0, 255), 4).join(".");
|
|
52
56
|
export const ipv6 = (): string =>
|
|
53
57
|
array(() => integer(0, 65535).toString(16), 8).join(":");
|