@ehmpathy/uni-time 1.7.3 → 1.7.4
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/logic/manipulate/addDuration.d.ts +2 -4
- package/dist/logic/manipulate/addDuration.js +8 -6
- package/dist/logic/manipulate/addDuration.js.map +1 -1
- package/dist/logic/manipulate/subDuration.d.ts +2 -4
- package/dist/logic/manipulate/subDuration.js +8 -6
- package/dist/logic/manipulate/subDuration.js.map +1 -1
- package/dist/logic/manipulate/subDuration.test.d.ts +1 -0
- package/dist/logic/manipulate/subDuration.test.js +20 -0
- package/dist/logic/manipulate/subDuration.test.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { PickOne } from 'type-fns';
|
|
2
2
|
import { UniDate, UniDateTime } from '../../domain/UniDateTime';
|
|
3
3
|
import { UniDuration } from '../../domain/UniDuration';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*/
|
|
7
|
-
export declare const subDuration: (...args: [UniDateTime, UniDuration] | [UniDate, PickOne<Pick<Required<UniDuration>, 'days'>>]) => (string & import("domain-glossaries").OfGlossary<"uni-time.UniDateTime">) | (string & import("domain-glossaries").OfGlossary<"uni-time.UniDate">);
|
|
4
|
+
export declare function addDuration(...args: [UniDateTime, UniDuration]): UniDateTime;
|
|
5
|
+
export declare function addDuration(...args: [UniDate, PickOne<Pick<Required<UniDuration>, 'days'>>]): UniDate;
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.addDuration = void 0;
|
|
4
4
|
const date_fns_1 = require("date-fns");
|
|
5
5
|
const isUniDate_1 = require("../checks/isUniDate");
|
|
6
6
|
const isUniDateTime_1 = require("../checks/isUniDateTime");
|
|
7
7
|
const toMilliseconds_1 = require("./toMilliseconds");
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* add a duration to a datetime
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
function addDuration(...args) {
|
|
12
|
+
return (0, isUniDate_1.isUniDate)(args[0])
|
|
13
|
+
? (0, isUniDate_1.asUniDate)((0, date_fns_1.addMilliseconds)((0, date_fns_1.parseISO)(args[0]), (0, toMilliseconds_1.toMilliseconds)(args[1])))
|
|
14
|
+
: (0, isUniDateTime_1.asUniDateTime)((0, date_fns_1.addMilliseconds)((0, date_fns_1.parseISO)(args[0]), (0, toMilliseconds_1.toMilliseconds)(args[1])));
|
|
15
|
+
}
|
|
16
|
+
exports.addDuration = addDuration;
|
|
15
17
|
//# sourceMappingURL=addDuration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addDuration.js","sourceRoot":"","sources":["../../../src/logic/manipulate/addDuration.ts"],"names":[],"mappings":";;;AAAA,uCAAqD;AAKrD,mDAA2D;AAC3D,2DAAwD;AACxD,qDAAkD;
|
|
1
|
+
{"version":3,"file":"addDuration.js","sourceRoot":"","sources":["../../../src/logic/manipulate/addDuration.ts"],"names":[],"mappings":";;;AAAA,uCAAqD;AAKrD,mDAA2D;AAC3D,2DAAwD;AACxD,qDAAkD;AAOlD;;GAEG;AACH,SAAgB,WAAW,CACzB,GAAG,IAEwD;IAE3D,OAAO,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC,CAAC,IAAA,qBAAS,EAAC,IAAA,0BAAe,EAAC,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,+BAAc,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC,IAAA,6BAAa,EACX,IAAA,0BAAe,EAAC,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,+BAAc,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAC5D,CAAC;AACR,CAAC;AAVD,kCAUC"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { PickOne } from 'type-fns';
|
|
2
2
|
import { UniDate, UniDateTime } from '../../domain/UniDateTime';
|
|
3
3
|
import { UniDuration } from '../../domain/UniDuration';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*/
|
|
7
|
-
export declare const addDuration: (...args: [UniDateTime, UniDuration] | [UniDate, PickOne<Pick<Required<UniDuration>, 'days'>>]) => (string & import("domain-glossaries").OfGlossary<"uni-time.UniDateTime">) | (string & import("domain-glossaries").OfGlossary<"uni-time.UniDate">);
|
|
4
|
+
export declare function subDuration(...args: [UniDateTime, UniDuration]): UniDateTime;
|
|
5
|
+
export declare function subDuration(...args: [UniDate, PickOne<Pick<Required<UniDuration>, 'days'>>]): UniDate;
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.subDuration = void 0;
|
|
4
4
|
const date_fns_1 = require("date-fns");
|
|
5
5
|
const isUniDate_1 = require("../checks/isUniDate");
|
|
6
6
|
const isUniDateTime_1 = require("../checks/isUniDateTime");
|
|
7
7
|
const toMilliseconds_1 = require("./toMilliseconds");
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* subtract a duration from a datetime
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
function subDuration(...args) {
|
|
12
|
+
return (0, isUniDate_1.isUniDate)(args[0])
|
|
13
|
+
? (0, isUniDate_1.asUniDate)((0, date_fns_1.subMilliseconds)((0, date_fns_1.parseISO)(args[0]), (0, toMilliseconds_1.toMilliseconds)(args[1])))
|
|
14
|
+
: (0, isUniDateTime_1.asUniDateTime)((0, date_fns_1.subMilliseconds)((0, date_fns_1.parseISO)(args[0]), (0, toMilliseconds_1.toMilliseconds)(args[1])));
|
|
15
|
+
}
|
|
16
|
+
exports.subDuration = subDuration;
|
|
15
17
|
//# sourceMappingURL=subDuration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subDuration.js","sourceRoot":"","sources":["../../../src/logic/manipulate/subDuration.ts"],"names":[],"mappings":";;;AAAA,uCAAqD;AAKrD,mDAA2D;AAC3D,2DAAwD;AACxD,qDAAkD;
|
|
1
|
+
{"version":3,"file":"subDuration.js","sourceRoot":"","sources":["../../../src/logic/manipulate/subDuration.ts"],"names":[],"mappings":";;;AAAA,uCAAqD;AAKrD,mDAA2D;AAC3D,2DAAwD;AACxD,qDAAkD;AAOlD;;GAEG;AACH,SAAgB,WAAW,CACzB,GAAG,IAEwD;IAE3D,OAAO,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC,CAAC,IAAA,qBAAS,EAAC,IAAA,0BAAe,EAAC,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,+BAAc,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC,IAAA,6BAAa,EACX,IAAA,0BAAe,EAAC,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,+BAAc,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAC5D,CAAC;AACR,CAAC;AAVD,kCAUC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const test_fns_1 = require("test-fns");
|
|
4
|
+
const isUniDate_1 = require("../checks/isUniDate");
|
|
5
|
+
const subDuration_1 = require("./subDuration");
|
|
6
|
+
describe('subDuration', () => {
|
|
7
|
+
(0, test_fns_1.given)('a UniDate', () => {
|
|
8
|
+
(0, test_fns_1.then)('it should still be assignable to a UniDate', () => {
|
|
9
|
+
const before = (0, isUniDate_1.asUniDate)('2024-11-21');
|
|
10
|
+
const after = (0, subDuration_1.subDuration)(before, { days: 1 });
|
|
11
|
+
expect((0, isUniDate_1.isUniDate)(after));
|
|
12
|
+
});
|
|
13
|
+
(0, test_fns_1.then)('it should not be assignable to a UniDateTime', () => {
|
|
14
|
+
const before = (0, isUniDate_1.asUniDate)('2024-11-21');
|
|
15
|
+
// @ts-expect-error: Type '"uni-time.UniDate"' is not assignable to type '"uni-time.UniDateTime"'.
|
|
16
|
+
const after = (0, subDuration_1.subDuration)(before, { days: 1 });
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=subDuration.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subDuration.test.js","sourceRoot":"","sources":["../../../src/logic/manipulate/subDuration.test.ts"],"names":[],"mappings":";;AAAA,uCAAuC;AAGvC,mDAA2D;AAC3D,+CAA4C;AAE5C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,IAAA,gBAAK,EAAC,WAAW,EAAE,GAAG,EAAE;QACtB,IAAA,eAAI,EAAC,4CAA4C,EAAE,GAAG,EAAE;YACtD,MAAM,MAAM,GAAY,IAAA,qBAAS,EAAC,YAAY,CAAC,CAAC;YAChD,MAAM,KAAK,GAAY,IAAA,yBAAW,EAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACxD,MAAM,CAAC,IAAA,qBAAS,EAAC,KAAK,CAAC,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,IAAA,eAAI,EAAC,8CAA8C,EAAE,GAAG,EAAE;YACxD,MAAM,MAAM,GAAY,IAAA,qBAAS,EAAC,YAAY,CAAC,CAAC;YAChD,kGAAkG;YAClG,MAAM,KAAK,GAAgB,IAAA,yBAAW,EAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@ehmpathy/uni-time",
|
|
3
3
|
"author": "ehmpathy",
|
|
4
4
|
"description": "a glossary of universally intuitive time, date, and duration domain literals",
|
|
5
|
-
"version": "1.7.
|
|
5
|
+
"version": "1.7.4",
|
|
6
6
|
"repository": "ehmpathy/uni-time",
|
|
7
7
|
"homepage": "https://github.com/ehmpathy/uni-time",
|
|
8
8
|
"keywords": [
|