@qwreey-js/ts-util 1.0.6 → 1.0.7
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/result.d.ts +4 -0
- package/dist/result.d.ts.map +1 -1
- package/dist/result.js +2 -2
- package/dist/result.js.map +1 -1
- package/dist/timeid.d.ts.map +1 -1
- package/dist/timeid.js +13 -16
- package/dist/timeid.js.map +1 -1
- package/package.json +1 -1
package/dist/result.d.ts
CHANGED
|
@@ -4,9 +4,11 @@
|
|
|
4
4
|
export type Result<T, U> = {
|
|
5
5
|
result: undefined;
|
|
6
6
|
error: U;
|
|
7
|
+
ok: false;
|
|
7
8
|
} | {
|
|
8
9
|
result: T;
|
|
9
10
|
error: undefined;
|
|
11
|
+
ok: true;
|
|
10
12
|
};
|
|
11
13
|
export declare namespace Result {
|
|
12
14
|
/**
|
|
@@ -16,6 +18,7 @@ export declare namespace Result {
|
|
|
16
18
|
function ok<T>(result: T): {
|
|
17
19
|
result: T;
|
|
18
20
|
error: undefined;
|
|
21
|
+
ok: true;
|
|
19
22
|
};
|
|
20
23
|
/**
|
|
21
24
|
* Creates an error result object containing the provided `error` value.
|
|
@@ -24,6 +27,7 @@ export declare namespace Result {
|
|
|
24
27
|
function err<U>(error: U): {
|
|
25
28
|
result: undefined;
|
|
26
29
|
error: U;
|
|
30
|
+
ok: false;
|
|
27
31
|
};
|
|
28
32
|
}
|
|
29
33
|
export declare const Ok: typeof Result.ok;
|
package/dist/result.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IACnB;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IACnB;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,CAAC,CAAC;IACT,EAAE,EAAE,KAAK,CAAC;CACX,GACD;IACE,MAAM,EAAE,CAAC,CAAC;IACV,KAAK,EAAE,SAAS,CAAC;IACjB,EAAE,EAAE,IAAI,CAAC;CACV,CAAC;AAEN,yBAAiB,MAAM,CAAC;IACtB;;;OAGG;IACH,SAAgB,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG;QAAE,MAAM,EAAE,CAAC,CAAC;QAAC,KAAK,EAAE,SAAS,CAAC;QAAC,EAAE,EAAE,IAAI,CAAA;KAAE,CAE1E;IAED;;;OAGG;IACH,SAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,CAAC,CAAC;QAAC,EAAE,EAAE,KAAK,CAAA;KAAE,CAE3E;CACF;AAED,eAAO,MAAM,EAAE,kBAAY,CAAC;AAC5B,eAAO,MAAM,GAAG,mBAAa,CAAC"}
|
package/dist/result.js
CHANGED
|
@@ -5,7 +5,7 @@ export var Result;
|
|
|
5
5
|
* @param result The successful value to wrap.
|
|
6
6
|
*/
|
|
7
7
|
function ok(result) {
|
|
8
|
-
return { error: undefined, result };
|
|
8
|
+
return { error: undefined, result, ok: true };
|
|
9
9
|
}
|
|
10
10
|
Result.ok = ok;
|
|
11
11
|
/**
|
|
@@ -13,7 +13,7 @@ export var Result;
|
|
|
13
13
|
* @param error The error value or object to wrap.
|
|
14
14
|
*/
|
|
15
15
|
function err(error) {
|
|
16
|
-
return { error, result: undefined };
|
|
16
|
+
return { error, result: undefined, ok: false };
|
|
17
17
|
}
|
|
18
18
|
Result.err = err;
|
|
19
19
|
})(Result || (Result = {}));
|
package/dist/result.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.js","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"AAeA,MAAM,KAAW,MAAM,CAgBtB;AAhBD,WAAiB,MAAM;IACrB;;;OAGG;IACH,SAAgB,EAAE,CAAI,MAAS;QAC7B,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IAChD,CAAC;IAFe,SAAE,KAEjB,CAAA;IAED;;;OAGG;IACH,SAAgB,GAAG,CAAI,KAAQ;QAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;IACjD,CAAC;IAFe,UAAG,MAElB,CAAA;AACH,CAAC,EAhBgB,MAAM,KAAN,MAAM,QAgBtB;AAED,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;AAC5B,MAAM,CAAC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC"}
|
package/dist/timeid.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeid.d.ts","sourceRoot":"","sources":["../src/timeid.ts"],"names":[],"mappings":"AAEA,yBAAiB,MAAM,CAAC;IACtB;;;;;;;;OAQG;IACH,SAAgB,MAAM,CAAC,QAAQ,GAAE,IAAI,GAAG,IAAW,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"timeid.d.ts","sourceRoot":"","sources":["../src/timeid.ts"],"names":[],"mappings":"AAEA,yBAAiB,MAAM,CAAC;IACtB;;;;;;;;OAQG;IACH,SAAgB,MAAM,CAAC,QAAQ,GAAE,IAAI,GAAG,IAAW,GAAG,MAAM,CAoB3D;IAED;;;;;;OAMG;IACH,SAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,SAAS,EAAE,UAAU,CAAA;KAAE,CA0BvE;CACF"}
|
package/dist/timeid.js
CHANGED
|
@@ -12,11 +12,8 @@ export var TimeId;
|
|
|
12
12
|
*/
|
|
13
13
|
function create(timebase = null) {
|
|
14
14
|
// Create random values
|
|
15
|
-
const randbytes = crypto.getRandomValues(new Uint8Array(
|
|
16
|
-
const
|
|
17
|
-
const lower = k32.substring(0, 8);
|
|
18
|
-
const upper = k32.substring(8, 16);
|
|
19
|
-
const timepad = k32.substring(16, 19);
|
|
15
|
+
const randbytes = crypto.getRandomValues(new Uint8Array(2));
|
|
16
|
+
const randb32 = Base32.fromUint8Array(randbytes).substring(0, 3);
|
|
20
17
|
// Construct time Uint8Array
|
|
21
18
|
timebase ??= new Date();
|
|
22
19
|
const timestamp = BigInt(timebase.getTime());
|
|
@@ -25,10 +22,10 @@ export var TimeId;
|
|
|
25
22
|
timeview.setBigUint64(0, timestamp, false);
|
|
26
23
|
const timearr = new Uint8Array(timebuffer);
|
|
27
24
|
// Assemble id
|
|
28
|
-
const
|
|
29
|
-
const timelower =
|
|
30
|
-
const timeupper =
|
|
31
|
-
const generated = `${timelower}-${timeupper}
|
|
25
|
+
const timeb32 = Base32.fromUint8Array(timearr).substring(0, 13);
|
|
26
|
+
const timelower = timeb32.substring(0, 8);
|
|
27
|
+
const timeupper = timeb32.substring(8, 13);
|
|
28
|
+
const generated = `${timelower}-${timeupper}${randb32}`;
|
|
32
29
|
return generated;
|
|
33
30
|
}
|
|
34
31
|
TimeId.create = create;
|
|
@@ -41,17 +38,17 @@ export var TimeId;
|
|
|
41
38
|
*/
|
|
42
39
|
function parse(id) {
|
|
43
40
|
const parts = id.split("-");
|
|
44
|
-
if (parts.length !==
|
|
41
|
+
if (parts.length !== 2) {
|
|
45
42
|
throw new Error("Invalid timeId format");
|
|
46
43
|
}
|
|
47
|
-
const [
|
|
48
|
-
|
|
49
|
-
const randbytes = Base32.toUint8Array(randStr);
|
|
50
|
-
const timeStr = timeLower + timeUpper;
|
|
51
|
-
const timearr = Base32.toUint8Array(timeStr);
|
|
52
|
-
if (randbytes.length !== 8 || timearr.length !== 8) {
|
|
44
|
+
const [lower, upper] = parts;
|
|
45
|
+
if (lower.length !== 8 || upper.length !== 8) {
|
|
53
46
|
throw new Error("Invalid timeId payload");
|
|
54
47
|
}
|
|
48
|
+
const randStr = upper.substring(5, 8);
|
|
49
|
+
const randbytes = Base32.toUint8Array(randStr);
|
|
50
|
+
const timeStr = lower + upper.substring(0, 5);
|
|
51
|
+
const timearr = Base32.toUint8Array(timeStr);
|
|
55
52
|
const timeview = new DataView(timearr.buffer, timearr.byteOffset, timearr.byteLength);
|
|
56
53
|
const timestamp = timeview.getBigUint64(0, false);
|
|
57
54
|
const date = new Date(Number(timestamp));
|
package/dist/timeid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeid.js","sourceRoot":"","sources":["../src/timeid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,KAAW,MAAM,
|
|
1
|
+
{"version":3,"file":"timeid.js","sourceRoot":"","sources":["../src/timeid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,KAAW,MAAM,CAkEtB;AAlED,WAAiB,MAAM;IACrB;;;;;;;;OAQG;IACH,SAAgB,MAAM,CAAC,WAAwB,IAAI;QACjD,uBAAuB;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEjE,4BAA4B;QAC5B,QAAQ,KAAK,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC1C,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;QAE3C,cAAc;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEhE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,GAAG,SAAS,IAAI,SAAS,GAAG,OAAO,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC;IACnB,CAAC;IApBe,aAAM,SAoBrB,CAAA;IAED;;;;;;OAMG;IACH,SAAgB,KAAK,CAAC,EAAU;QAC9B,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAyB,CAAC;QAEjD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtC,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,OAAO,GAAG,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAE7C,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAC3B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,UAAU,CACnB,CAAC;QACF,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QAEzC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAC7B,CAAC;IA1Be,YAAK,QA0BpB,CAAA;AACH,CAAC,EAlEgB,MAAM,KAAN,MAAM,QAkEtB"}
|