tendermint-rpc: Add encode method to DateTime

This commit is contained in:
willclarktech 2020-12-15 10:53:41 +00:00
parent 96beb84327
commit cec7750821
No known key found for this signature in database
GPG Key ID: 551A86E2E398ADF7
2 changed files with 7 additions and 0 deletions

View File

@ -179,6 +179,12 @@ export class DateTime {
(readonlyDate as any).nanoseconds = parseInt(nanoseconds.padEnd(6, "0"), 10);
return readonlyDate as ReadonlyDateWithNanoseconds;
}
public static encode(dateTime: ReadonlyDateWithNanoseconds): DateTimeString {
const millisecondIso = dateTime.toISOString();
const nanoseconds = dateTime.nanoseconds?.toString() ?? "";
return `${millisecondIso.slice(0, -1)}${nanoseconds.padStart(6, "0")}Z` as DateTimeString;
}
}
export class Hex {

View File

@ -68,6 +68,7 @@ export declare class Base64 {
}
export declare class DateTime {
static decode(dateTimeString: DateTimeString): ReadonlyDateWithNanoseconds;
static encode(dateTime: ReadonlyDateWithNanoseconds): DateTimeString;
}
export declare class Hex {
static encode(data: Uint8Array): HexString;