@bessemer/cornerstone 0.5.98 → 0.5.101
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/dist/array.d.ts +62 -1
- package/dist/array.d.ts.map +1 -1
- package/dist/array.js +24 -11
- package/dist/array.js.map +1 -1
- package/dist/aspect-ratio.d.ts +1 -1
- package/dist/aspect-ratio.d.ts.map +1 -1
- package/dist/aspect-ratio.js +9 -5
- package/dist/aspect-ratio.js.map +1 -1
- package/dist/async-value.d.ts +7 -1
- package/dist/async-value.d.ts.map +1 -1
- package/dist/async-value.js +26 -1
- package/dist/async-value.js.map +1 -1
- package/dist/cache.js +1 -1
- package/dist/cache.js.map +1 -1
- package/dist/data-size.d.ts +2 -1
- package/dist/data-size.d.ts.map +1 -1
- package/dist/data-size.js +7 -1
- package/dist/data-size.js.map +1 -1
- package/dist/equalitor.d.ts +1 -0
- package/dist/equalitor.d.ts.map +1 -1
- package/dist/equalitor.js +3 -0
- package/dist/equalitor.js.map +1 -1
- package/dist/error/error-cause.d.ts +35 -0
- package/dist/error/error-cause.d.ts.map +1 -0
- package/dist/error/error-cause.js +97 -0
- package/dist/error/error-cause.js.map +1 -0
- package/dist/error/error-code.d.ts +17 -0
- package/dist/error/error-code.d.ts.map +1 -0
- package/dist/error/error-code.js +32 -0
- package/dist/error/error-code.js.map +1 -0
- package/dist/error/error-event.d.ts +29 -48
- package/dist/error/error-event.d.ts.map +1 -1
- package/dist/error/error-event.js +62 -151
- package/dist/error/error-event.js.map +1 -1
- package/dist/error/error-type.d.ts +1 -0
- package/dist/error/error-type.d.ts.map +1 -1
- package/dist/error/error-type.js +4 -2
- package/dist/error/error-type.js.map +1 -1
- package/dist/function.d.ts +1 -1
- package/dist/function.d.ts.map +1 -1
- package/dist/function.js +3 -2
- package/dist/function.js.map +1 -1
- package/dist/glob.d.ts +2 -2
- package/dist/glob.d.ts.map +1 -1
- package/dist/glob.js +9 -5
- package/dist/glob.js.map +1 -1
- package/dist/hex-code.d.ts +1 -1
- package/dist/hex-code.d.ts.map +1 -1
- package/dist/hex-code.js +9 -5
- package/dist/hex-code.js.map +1 -1
- package/dist/index.d.ts +10 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -5
- package/dist/index.js.map +1 -1
- package/dist/intl/country-code.d.ts +1 -1
- package/dist/intl/country-code.d.ts.map +1 -1
- package/dist/intl/country-code.js +4 -4
- package/dist/intl/country-code.js.map +1 -1
- package/dist/intl/country-subdivision-code.d.ts +1 -1
- package/dist/intl/country-subdivision-code.d.ts.map +1 -1
- package/dist/intl/country-subdivision-code.js +4 -4
- package/dist/intl/country-subdivision-code.js.map +1 -1
- package/dist/intl/currency-code.d.ts +1 -1
- package/dist/intl/currency-code.d.ts.map +1 -1
- package/dist/intl/currency-code.js +10 -6
- package/dist/intl/currency-code.js.map +1 -1
- package/dist/intl/language-code.d.ts +1 -1
- package/dist/intl/language-code.d.ts.map +1 -1
- package/dist/intl/language-code.js +4 -4
- package/dist/intl/language-code.js.map +1 -1
- package/dist/intl/locale.d.ts +1 -1
- package/dist/intl/locale.d.ts.map +1 -1
- package/dist/intl/locale.js +6 -6
- package/dist/intl/locale.js.map +1 -1
- package/dist/mime-type.d.ts +2 -2
- package/dist/mime-type.d.ts.map +1 -1
- package/dist/mime-type.js +9 -5
- package/dist/mime-type.js.map +1 -1
- package/dist/net/domain-name.d.ts +10 -0
- package/dist/net/domain-name.d.ts.map +1 -0
- package/dist/net/domain-name.js +30 -0
- package/dist/net/domain-name.js.map +1 -0
- package/dist/net/ipv4-address.d.ts +10 -0
- package/dist/net/ipv4-address.d.ts.map +1 -0
- package/dist/net/ipv4-address.js +30 -0
- package/dist/net/ipv4-address.js.map +1 -0
- package/dist/net/ipv6-address.d.ts +10 -0
- package/dist/net/ipv6-address.d.ts.map +1 -0
- package/dist/net/ipv6-address.js +30 -0
- package/dist/net/ipv6-address.js.map +1 -0
- package/dist/net/uri-host-name.d.ts +12 -0
- package/dist/net/uri-host-name.d.ts.map +1 -0
- package/dist/net/uri-host-name.js +44 -0
- package/dist/net/uri-host-name.js.map +1 -0
- package/dist/net/uri.d.ts +249 -0
- package/dist/net/uri.d.ts.map +1 -0
- package/dist/net/uri.js +444 -0
- package/dist/net/uri.js.map +1 -0
- package/dist/net/url.d.ts +58 -0
- package/dist/net/url.d.ts.map +1 -0
- package/dist/net/url.js +211 -0
- package/dist/net/url.js.map +1 -0
- package/dist/object/object-path.d.ts +1 -1
- package/dist/object/object-path.d.ts.map +1 -1
- package/dist/object/object-path.js +4 -4
- package/dist/object/object-path.js.map +1 -1
- package/dist/object/type-path.d.ts +1 -1
- package/dist/object/type-path.d.ts.map +1 -1
- package/dist/object/type-path.js +3 -3
- package/dist/object/type-path.js.map +1 -1
- package/dist/object.d.ts +1 -1
- package/dist/object.d.ts.map +1 -1
- package/dist/object.js +8 -6
- package/dist/object.js.map +1 -1
- package/dist/property.d.ts +2 -3
- package/dist/property.d.ts.map +1 -1
- package/dist/property.js.map +1 -1
- package/dist/resource-key.d.ts +7 -5
- package/dist/resource-key.d.ts.map +1 -1
- package/dist/resource-key.js +27 -15
- package/dist/resource-key.js.map +1 -1
- package/dist/result.d.ts.map +1 -1
- package/dist/result.js +3 -3
- package/dist/result.js.map +1 -1
- package/dist/string.d.ts +10 -21
- package/dist/string.d.ts.map +1 -1
- package/dist/string.js +54 -25
- package/dist/string.js.map +1 -1
- package/dist/tag.d.ts +2 -2
- package/dist/tag.d.ts.map +1 -1
- package/dist/tag.js +11 -12
- package/dist/tag.js.map +1 -1
- package/dist/temporal/duration.d.ts +4 -5
- package/dist/temporal/duration.d.ts.map +1 -1
- package/dist/temporal/duration.js +3 -7
- package/dist/temporal/duration.js.map +1 -1
- package/dist/temporal/instant.d.ts +4 -5
- package/dist/temporal/instant.d.ts.map +1 -1
- package/dist/temporal/instant.js +11 -9
- package/dist/temporal/instant.js.map +1 -1
- package/dist/temporal/plain-date-time.d.ts +4 -5
- package/dist/temporal/plain-date-time.d.ts.map +1 -1
- package/dist/temporal/plain-date-time.js +3 -7
- package/dist/temporal/plain-date-time.js.map +1 -1
- package/dist/temporal/plain-date.d.ts +8 -9
- package/dist/temporal/plain-date.d.ts.map +1 -1
- package/dist/temporal/plain-date.js +3 -7
- package/dist/temporal/plain-date.js.map +1 -1
- package/dist/temporal/plain-time.d.ts +6 -7
- package/dist/temporal/plain-time.d.ts.map +1 -1
- package/dist/temporal/plain-time.js +4 -8
- package/dist/temporal/plain-time.js.map +1 -1
- package/dist/temporal/time-zone-id.d.ts +1 -1
- package/dist/temporal/time-zone-id.d.ts.map +1 -1
- package/dist/temporal/time-zone-id.js +4 -4
- package/dist/temporal/time-zone-id.js.map +1 -1
- package/dist/temporal/time-zone-offset.d.ts +1 -1
- package/dist/temporal/time-zone-offset.d.ts.map +1 -1
- package/dist/temporal/time-zone-offset.js +4 -4
- package/dist/temporal/time-zone-offset.js.map +1 -1
- package/dist/temporal/zoned-date-time.d.ts +51 -0
- package/dist/temporal/zoned-date-time.d.ts.map +1 -0
- package/dist/temporal/zoned-date-time.js +106 -0
- package/dist/temporal/zoned-date-time.js.map +1 -0
- package/dist/types.d.ts +2 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/{ulid.d.ts → uuid/ulid.d.ts} +2 -2
- package/dist/uuid/ulid.d.ts.map +1 -0
- package/dist/uuid/ulid.js +33 -0
- package/dist/uuid/ulid.js.map +1 -0
- package/dist/uuid/uuid-v4.d.ts +11 -0
- package/dist/uuid/uuid-v4.d.ts.map +1 -0
- package/dist/{uuid.js → uuid/uuid-v4.js} +16 -12
- package/dist/uuid/uuid-v4.js.map +1 -0
- package/dist/uuid/uuid-v7.d.ts +18 -0
- package/dist/uuid/uuid-v7.d.ts.map +1 -0
- package/dist/uuid/uuid-v7.js +48 -0
- package/dist/uuid/uuid-v7.js.map +1 -0
- package/package.json +1 -1
- package/dist/ulid.d.ts.map +0 -1
- package/dist/ulid.js +0 -29
- package/dist/ulid.js.map +0 -1
- package/dist/uri.d.ts +0 -52
- package/dist/uri.d.ts.map +0 -1
- package/dist/uri.js +0 -222
- package/dist/uri.js.map +0 -1
- package/dist/url.d.ts +0 -26
- package/dist/url.d.ts.map +0 -1
- package/dist/url.js +0 -120
- package/dist/url.js.map +0 -1
- package/dist/uuid.d.ts +0 -11
- package/dist/uuid.d.ts.map +0 -1
- package/dist/uuid.js.map +0 -1
package/dist/url.js
DELETED
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
// src/url.ts
|
|
2
|
-
import { Arrays, Objects, Strings, Uris } from "@bessemer/cornerstone";
|
|
3
|
-
var encode = Uris.encode;
|
|
4
|
-
var decode = Uris.decode;
|
|
5
|
-
var augmentUriLocation = (uriLocation, normalize) => {
|
|
6
|
-
const pathSegments = [];
|
|
7
|
-
const parameters = {};
|
|
8
|
-
if (!Strings.isBlank(uriLocation.path)) {
|
|
9
|
-
Strings.removeStart(uriLocation.path, "/").split("/").forEach((urlPathPart) => {
|
|
10
|
-
if (!Strings.isBlank(urlPathPart) || !normalize) {
|
|
11
|
-
pathSegments.push(decode(urlPathPart));
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
if (Objects.isPresent(uriLocation.query)) {
|
|
16
|
-
uriLocation.query.split("&").forEach((parameterPair) => {
|
|
17
|
-
let splitParameters = parameterPair.split("=");
|
|
18
|
-
if (!Strings.isBlank(Arrays.first(splitParameters))) {
|
|
19
|
-
let key = decode(splitParameters[0]);
|
|
20
|
-
let value = "";
|
|
21
|
-
if (splitParameters.length === 2) {
|
|
22
|
-
value = splitParameters[1];
|
|
23
|
-
}
|
|
24
|
-
if (Objects.isNil(parameters[key])) {
|
|
25
|
-
parameters[key] = decode(value);
|
|
26
|
-
} else if (!Array.isArray(parameters[key])) {
|
|
27
|
-
let paramList = [parameters[key]];
|
|
28
|
-
paramList.push(decode(value));
|
|
29
|
-
parameters[key] = paramList;
|
|
30
|
-
} else {
|
|
31
|
-
parameters[key].push(decode(value));
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
return {
|
|
37
|
-
...uriLocation,
|
|
38
|
-
pathSegments,
|
|
39
|
-
parameters
|
|
40
|
-
};
|
|
41
|
-
};
|
|
42
|
-
var parse = (urlString, normalize = true) => {
|
|
43
|
-
const uri = Uris.parse(urlString);
|
|
44
|
-
const location = augmentUriLocation(uri.location, normalize);
|
|
45
|
-
if (normalize) {
|
|
46
|
-
if (!Arrays.isEmpty(location.pathSegments)) {
|
|
47
|
-
location.path = (Strings.startsWith(location.path, "/") ? "/" : "") + formatPathSegments(location.pathSegments);
|
|
48
|
-
} else {
|
|
49
|
-
location.path = "";
|
|
50
|
-
}
|
|
51
|
-
location.query = formatQueryParameters(location.parameters);
|
|
52
|
-
}
|
|
53
|
-
return {
|
|
54
|
-
...uri,
|
|
55
|
-
location
|
|
56
|
-
};
|
|
57
|
-
};
|
|
58
|
-
var format = Uris.format;
|
|
59
|
-
var formatPathSegments = (pathSegments) => {
|
|
60
|
-
return pathSegments.map((it) => encode(it)).join("/");
|
|
61
|
-
};
|
|
62
|
-
var formatQueryParameters = (parameters) => {
|
|
63
|
-
const parameterEntries = Object.entries(parameters);
|
|
64
|
-
if (Arrays.isEmpty(parameterEntries)) {
|
|
65
|
-
return null;
|
|
66
|
-
}
|
|
67
|
-
return Object.entries(parameters).flatMap(([key, value]) => {
|
|
68
|
-
if (Array.isArray(value)) {
|
|
69
|
-
return value.map((it) => `${encode(key)}=${encode(it)}`);
|
|
70
|
-
} else {
|
|
71
|
-
return [`${encode(key)}=${encode(value)}`];
|
|
72
|
-
}
|
|
73
|
-
}).join("&");
|
|
74
|
-
};
|
|
75
|
-
var build = (builder) => {
|
|
76
|
-
const uri = Uris.build(builder);
|
|
77
|
-
if (Objects.isPresent(builder.location?.parameters)) {
|
|
78
|
-
uri.location.query = formatQueryParameters(builder.location.parameters);
|
|
79
|
-
}
|
|
80
|
-
const urlLocation = augmentUriLocation(uri.location, false);
|
|
81
|
-
return {
|
|
82
|
-
...uri,
|
|
83
|
-
location: urlLocation
|
|
84
|
-
};
|
|
85
|
-
};
|
|
86
|
-
var buildString = (builder) => {
|
|
87
|
-
return format(build(builder));
|
|
88
|
-
};
|
|
89
|
-
var reify = (blah) => {
|
|
90
|
-
if (!Strings.isString(blah)) {
|
|
91
|
-
return blah;
|
|
92
|
-
}
|
|
93
|
-
return parse(blah);
|
|
94
|
-
};
|
|
95
|
-
var getParameter = (url, name) => {
|
|
96
|
-
const parameter = reify(url).location.parameters[name];
|
|
97
|
-
if (Objects.isNil(parameter)) {
|
|
98
|
-
return void 0;
|
|
99
|
-
}
|
|
100
|
-
if (Array.isArray(parameter)) {
|
|
101
|
-
throw new Error(`Expected a single parameter value but found multiple for parameter: ${name}`);
|
|
102
|
-
}
|
|
103
|
-
return parameter;
|
|
104
|
-
};
|
|
105
|
-
var getJsonParameter = (url, name) => {
|
|
106
|
-
const value = getParameter(url, name);
|
|
107
|
-
return Objects.isPresent(value) ? JSON.parse(value) : void 0;
|
|
108
|
-
};
|
|
109
|
-
export {
|
|
110
|
-
build,
|
|
111
|
-
buildString,
|
|
112
|
-
decode,
|
|
113
|
-
encode,
|
|
114
|
-
format,
|
|
115
|
-
getJsonParameter,
|
|
116
|
-
getParameter,
|
|
117
|
-
parse,
|
|
118
|
-
reify
|
|
119
|
-
};
|
|
120
|
-
//# sourceMappingURL=url.js.map
|
package/dist/url.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/url.ts"],"sourcesContent":["import { Arrays, Objects, Strings, Uris } from '@bessemer/cornerstone'\nimport { Dictionary } from '@bessemer/cornerstone/types'\nimport { Uri, UriBuilder, UriComponent, UriLocation, UriString } from '@bessemer/cornerstone/uri'\n// JOHN UPDATING URLS NEEDS WORK\nexport const encode = Uris.encode\n\nexport const decode = Uris.decode\n\nexport interface UrlLocation extends UriLocation {\n pathSegments: Array<string>\n parameters: Dictionary<string | Array<string>>\n}\n\nexport interface Url extends Uri {\n location: UrlLocation\n}\n\nexport type UrlLike = Url | UriString\n\nconst augmentUriLocation = (uriLocation: UriLocation, normalize: boolean): UrlLocation => {\n const pathSegments: Array<string> = []\n const parameters: Dictionary<string | Array<string>> = {}\n\n if (!Strings.isBlank(uriLocation.path)) {\n Strings.removeStart(uriLocation.path, '/')\n .split('/')\n .forEach((urlPathPart) => {\n if (!Strings.isBlank(urlPathPart) || !normalize) {\n pathSegments.push(decode(urlPathPart))\n }\n })\n }\n\n if (Objects.isPresent(uriLocation.query)) {\n uriLocation.query.split('&').forEach((parameterPair) => {\n let splitParameters = parameterPair.split('=')\n\n if (!Strings.isBlank(Arrays.first(splitParameters))) {\n let key = decode(splitParameters[0]!)\n let value = ''\n if (splitParameters.length === 2) {\n value = splitParameters[1]!\n }\n if (Objects.isNil(parameters[key])) {\n parameters[key] = decode(value)\n } else if (!Array.isArray(parameters[key])) {\n let paramList = [parameters[key]]\n paramList.push(decode(value))\n parameters[key] = paramList\n } else {\n parameters[key].push(decode(value))\n }\n }\n })\n }\n\n return {\n ...uriLocation,\n pathSegments,\n parameters,\n }\n}\n\nexport const parse = (urlString: UriString, normalize: boolean = true): Url => {\n const uri = Uris.parse(urlString)\n const location = augmentUriLocation(uri.location, normalize)\n\n if (normalize) {\n if (!Arrays.isEmpty(location.pathSegments)) {\n location.path = (Strings.startsWith(location.path, '/') ? '/' : '') + formatPathSegments(location.pathSegments)\n } else {\n location.path = ''\n }\n\n location.query = formatQueryParameters(location.parameters)\n }\n\n return {\n ...uri,\n location,\n }\n}\n\nexport const format = Uris.format\n\nconst formatPathSegments = (pathSegments: Array<string>): UriComponent => {\n return pathSegments.map((it) => encode(it)).join('/')\n}\n\nconst formatQueryParameters = (parameters: Dictionary<string | Array<string>>): UriComponent | null => {\n const parameterEntries = Object.entries(parameters)\n if (Arrays.isEmpty(parameterEntries)) {\n return null\n }\n\n return Object.entries(parameters)\n .flatMap(([key, value]) => {\n if (Array.isArray(value)) {\n return value.map((it) => `${encode(key)}=${encode(it)}`)\n } else {\n return [`${encode(key)}=${encode(value)}`]\n }\n })\n .join('&')\n}\n\nexport type UrlBuilder = UriBuilder & {\n location?: {\n parameters?: Dictionary<string | Array<string>>\n }\n}\n\nexport const build = (builder: UrlBuilder): Url => {\n const uri = Uris.build(builder)\n\n if (Objects.isPresent(builder.location?.parameters)) {\n uri.location.query = formatQueryParameters(builder.location.parameters)\n }\n\n const urlLocation = augmentUriLocation(uri.location, false)\n\n return {\n ...uri,\n location: urlLocation,\n }\n}\n\nexport const buildString = (builder: UrlBuilder): UriString => {\n return format(build(builder))\n}\n\nexport const reify = (blah: UrlLike): Url => {\n if (!Strings.isString(blah)) {\n return blah\n }\n\n return parse(blah)\n}\n\nexport const getParameter = (url: UrlLike, name: string): string | undefined => {\n const parameter = reify(url).location.parameters[name]\n if (Objects.isNil(parameter)) {\n return undefined\n }\n\n if (Array.isArray(parameter)) {\n throw new Error(`Expected a single parameter value but found multiple for parameter: ${name}`)\n }\n\n return parameter\n}\n\nexport const getJsonParameter = <T>(url: UrlLike, name: string): T | undefined => {\n const value = getParameter(url, name)\n return Objects.isPresent(value) ? JSON.parse(value) : undefined\n}\n"],"mappings":"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","names":[]}
|
package/dist/uuid.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { NominalType } from '@bessemer/cornerstone/types';
|
|
2
|
-
import Zod from 'zod';
|
|
3
|
-
import { Result } from '@bessemer/cornerstone/result';
|
|
4
|
-
import { ErrorEvent } from '@bessemer/cornerstone/error/error-event';
|
|
5
|
-
export declare const Namespace: import("@bessemer/cornerstone/resource-key").ResourceNamespace<"uuid">;
|
|
6
|
-
export type Uuid = NominalType<string, typeof Namespace>;
|
|
7
|
-
export declare const parseString: (value: string) => Result<Uuid, ErrorEvent>;
|
|
8
|
-
export declare const fromString: (value: string) => Uuid;
|
|
9
|
-
export declare const Schema: Zod.ZodPipe<Zod.ZodString, Zod.ZodTransform<Uuid, string>>;
|
|
10
|
-
export declare const generate: () => Uuid;
|
|
11
|
-
//# sourceMappingURL=uuid.d.ts.map
|
package/dist/uuid.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../src/uuid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,GAAG,MAAM,KAAK,CAAA;AAGrB,OAAO,EAAW,MAAM,EAAW,MAAM,8BAA8B,CAAA;AACvE,OAAO,EAAE,UAAU,EAA8B,MAAM,yCAAyC,CAAA;AAIhG,eAAO,MAAM,SAAS,wEAAoB,CAAA;AAC1C,MAAM,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,OAAO,SAAS,CAAC,CAAA;AAExD,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,KAAG,MAAM,CAAC,IAAI,EAAE,UAAU,CAMlE,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,OAAO,MAAM,KAAG,IAE1C,CAAA;AAED,eAAO,MAAM,MAAM,4DAAiD,CAAA;AAEpE,eAAO,MAAM,QAAQ,QAAO,IAM3B,CAAA"}
|
package/dist/uuid.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/uuid.ts"],"sourcesContent":["import { NominalType } from '@bessemer/cornerstone/types'\nimport Zod from 'zod'\nimport { isNil } from '@bessemer/cornerstone/object'\nimport { padStart } from '@bessemer/cornerstone/string'\nimport { failure, Result, success } from '@bessemer/cornerstone/result'\nimport { ErrorEvent, invalidValue, unpackResult } from '@bessemer/cornerstone/error/error-event'\nimport { namespace } from '@bessemer/cornerstone/resource-key'\nimport { structuredTransform } from '@bessemer/cornerstone/zod-util'\n\nexport const Namespace = namespace('uuid')\nexport type Uuid = NominalType<string, typeof Namespace>\n\nexport const parseString = (value: string): Result<Uuid, ErrorEvent> => {\n if (!/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value)) {\n return failure(invalidValue(value, { namespace: Namespace, message: `Invalid Uuid format.` }))\n }\n\n return success(value.toLowerCase() as Uuid)\n}\n\nexport const fromString = (value: string): Uuid => {\n return unpackResult(parseString(value))\n}\n\nexport const Schema = structuredTransform(Zod.string(), parseString)\n\nexport const generate = (): Uuid => {\n if (isNil(crypto.randomUUID)) {\n return `${randomHex(8)}-${randomHex(4)}-${randomHex(4)}-${randomHex(4)}-${randomHex(12)}` as Uuid\n } else {\n return crypto.randomUUID() as Uuid\n }\n}\n\nconst randomHex = (characters: number) => {\n // Generates a random number between 0x0..0 and 0xF..F for the target number of characters\n const randomNum = Math.floor(Math.random() * (16 ** characters - 1))\n return padStart(randomNum.toString(16), characters, '0')\n}\n"],"mappings":";AACA,OAAO,SAAS;AAChB,SAAS,aAAa;AACtB,SAAS,gBAAgB;AACzB,SAAS,SAAiB,eAAe;AACzC,SAAqB,cAAc,oBAAoB;AACvD,SAAS,iBAAiB;AAC1B,SAAS,2BAA2B;AAE7B,IAAM,YAAY,UAAU,MAAM;AAGlC,IAAM,cAAc,CAAC,UAA4C;AACtE,MAAI,CAAC,6EAA6E,KAAK,KAAK,GAAG;AAC7F,WAAO,QAAQ,aAAa,OAAO,EAAE,WAAW,WAAW,SAAS,uBAAuB,CAAC,CAAC;AAAA,EAC/F;AAEA,SAAO,QAAQ,MAAM,YAAY,CAAS;AAC5C;AAEO,IAAM,aAAa,CAAC,UAAwB;AACjD,SAAO,aAAa,YAAY,KAAK,CAAC;AACxC;AAEO,IAAM,SAAS,oBAAoB,IAAI,OAAO,GAAG,WAAW;AAE5D,IAAM,WAAW,MAAY;AAClC,MAAI,MAAM,OAAO,UAAU,GAAG;AAC5B,WAAO,GAAG,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC;AAAA,EACzF,OAAO;AACL,WAAO,OAAO,WAAW;AAAA,EAC3B;AACF;AAEA,IAAM,YAAY,CAAC,eAAuB;AAExC,QAAM,YAAY,KAAK,MAAM,KAAK,OAAO,KAAK,MAAM,aAAa,EAAE;AACnE,SAAO,SAAS,UAAU,SAAS,EAAE,GAAG,YAAY,GAAG;AACzD;","names":[]}
|