@road-labs/ocmf 0.0.5 → 0.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.
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formatDate = formatDate;
4
+ exports.parseDate = parseDate;
5
+ const date_fns_1 = require("date-fns");
6
+ const errors_1 = require("./errors");
7
+ const dateFormat = `yyyy-MM-dd'T'HH:mm:ss,SSSxxxx`;
8
+ function formatDate(date, type) {
9
+ return `${(0, date_fns_1.format)(date, dateFormat)} ${type}`;
10
+ }
11
+ function parseDate(str) {
12
+ const parts = str.split(' ');
13
+ if (parts.length !== 2) {
14
+ throw new errors_1.InvalidDateError('Time string must be in format "[date] [type]"');
15
+ }
16
+ const date = (0, date_fns_1.parse)(parts[0], dateFormat, new Date());
17
+ if (isNaN(date.getTime())) {
18
+ throw new errors_1.InvalidDateError('Failed to parse date');
19
+ }
20
+ return [date, parts[1]];
21
+ }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UnknownSignatureMimeType = exports.UnknownSignatureEncoding = exports.CurveMismatchError = void 0;
3
+ exports.InvalidDateError = exports.UnknownSignatureMimeType = exports.UnknownSignatureEncoding = exports.CurveMismatchError = void 0;
4
4
  class CurveMismatchError extends Error {
5
5
  }
6
6
  exports.CurveMismatchError = CurveMismatchError;
@@ -10,3 +10,6 @@ exports.UnknownSignatureEncoding = UnknownSignatureEncoding;
10
10
  class UnknownSignatureMimeType extends Error {
11
11
  }
12
12
  exports.UnknownSignatureMimeType = UnknownSignatureMimeType;
13
+ class InvalidDateError extends Error {
14
+ }
15
+ exports.InvalidDateError = InvalidDateError;
@@ -24,6 +24,7 @@ __exportStar(require("./signature"), exports);
24
24
  __exportStar(require("./errors"), exports);
25
25
  __exportStar(require("./verifier"), exports);
26
26
  __exportStar(require("./signer"), exports);
27
+ __exportStar(require("./date"), exports);
27
28
  var signer_1 = require("./signer");
28
29
  Object.defineProperty(exports, "Signer", { enumerable: true, get: function () { return __importDefault(signer_1).default; } });
29
30
  var verifier_1 = require("./verifier");
@@ -0,0 +1,17 @@
1
+ import { format, parse } from 'date-fns';
2
+ import { InvalidDateError } from './errors';
3
+ const dateFormat = `yyyy-MM-dd'T'HH:mm:ss,SSSxxxx`;
4
+ export function formatDate(date, type) {
5
+ return `${format(date, dateFormat)} ${type}`;
6
+ }
7
+ export function parseDate(str) {
8
+ const parts = str.split(' ');
9
+ if (parts.length !== 2) {
10
+ throw new InvalidDateError('Time string must be in format "[date] [type]"');
11
+ }
12
+ const date = parse(parts[0], dateFormat, new Date());
13
+ if (isNaN(date.getTime())) {
14
+ throw new InvalidDateError('Failed to parse date');
15
+ }
16
+ return [date, parts[1]];
17
+ }
@@ -4,3 +4,5 @@ export class UnknownSignatureEncoding extends Error {
4
4
  }
5
5
  export class UnknownSignatureMimeType extends Error {
6
6
  }
7
+ export class InvalidDateError extends Error {
8
+ }
@@ -4,5 +4,6 @@ export * from './signature';
4
4
  export * from './errors';
5
5
  export * from './verifier';
6
6
  export * from './signer';
7
+ export * from './date';
7
8
  export { default as Signer } from './signer';
8
9
  export { default as Verifier } from './verifier';
@@ -0,0 +1,3 @@
1
+ export type TimeType = 'U' | 'I' | 'S' | 'R';
2
+ export declare function formatDate(date: Date, type: TimeType): string;
3
+ export declare function parseDate(str: string): [Date, TimeType];
@@ -4,3 +4,5 @@ export declare class UnknownSignatureEncoding extends Error {
4
4
  }
5
5
  export declare class UnknownSignatureMimeType extends Error {
6
6
  }
7
+ export declare class InvalidDateError extends Error {
8
+ }
@@ -4,5 +4,6 @@ export * from './signature';
4
4
  export * from './errors';
5
5
  export * from './verifier';
6
6
  export * from './signer';
7
+ export * from './date';
7
8
  export { default as Signer } from './signer';
8
9
  export { default as Verifier } from './verifier';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@road-labs/ocmf",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "main": "build/cjs/index.js",
5
5
  "module": "build/es2022/index.js",
6
6
  "types": "build/types/index.d.ts",
@@ -22,15 +22,16 @@
22
22
  "@jest/globals": "^30.0.0",
23
23
  "@types/node": "^22.15.30",
24
24
  "jest": "^30.0.0",
25
+ "jest-mock-extended": "^4.0.0",
25
26
  "rimraf": "^6.0.1",
26
27
  "ts-jest": "^29.4.0",
27
28
  "ts-node": "^10.9.2",
28
29
  "typescript": "5.8.3",
29
- "jest-mock-extended": "^4.0.0",
30
30
  "test-commons": "0.0.1"
31
31
  },
32
32
  "dependencies": {
33
- "@road-labs/ocmf-crypto": "0.0.5"
33
+ "date-fns": "^4.1.0",
34
+ "@road-labs/ocmf-crypto": "0.0.7"
34
35
  },
35
36
  "scripts": {
36
37
  "clear": "rimraf build",