@dereekb/date 1.2.0 → 3.0.0
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/CHANGELOG.md +26 -4
- package/README.md +1 -1
- package/package.json +11 -8
- package/src/index.d.ts +1 -3
- package/src/index.js +1 -3
- package/src/index.js.map +1 -1
- package/src/lib/date/date.calendar.js +2 -2
- package/src/lib/date/date.duration.js +4 -4
- package/src/lib/date/date.duration.js.map +1 -1
- package/src/lib/date/date.range.d.ts +1 -1
- package/src/lib/date/date.range.js +10 -6
- package/src/lib/date/date.range.js.map +1 -1
- package/src/lib/date/date.time.d.ts +4 -3
- package/src/lib/date/date.time.js +80 -66
- package/src/lib/date/date.time.js.map +1 -1
- package/src/lib/date/index.js +13 -13
- package/src/lib/date/index.js.map +1 -1
- package/src/lib/expires/index.js +2 -2
- package/src/lib/expires/index.js.map +1 -1
- package/src/lib/index.d.ts +3 -0
- package/src/lib/index.js +7 -0
- package/src/lib/index.js.map +1 -0
- package/src/lib/query/index.d.ts +4 -0
- package/src/lib/query/index.js +8 -0
- package/src/lib/query/index.js.map +1 -0
- package/src/lib/query/query.builder.d.ts +59 -0
- package/src/lib/query/query.builder.js +85 -0
- package/src/lib/query/query.builder.js.map +1 -0
- package/src/lib/query/query.builder.mongo.d.ts +20 -0
- package/src/lib/query/query.builder.mongo.js +41 -0
- package/src/lib/query/query.builder.mongo.js.map +1 -0
- package/src/lib/query/query.filter.d.ts +78 -0
- package/src/lib/{date.request.js → query/query.filter.js} +1 -1
- package/src/lib/query/query.filter.js.map +1 -0
- package/src/lib/{date.request.d.ts → query/query.request.d.ts} +1 -1
- package/src/lib/query/query.request.js +3 -0
- package/src/lib/query/query.request.js.map +1 -0
- package/src/lib/rrule/date.recurrence.js +12 -12
- package/src/lib/rrule/date.recurrence.js.map +1 -1
- package/src/lib/rrule/date.rrule.extension.js +1 -1
- package/src/lib/rrule/date.rrule.extension.js.map +1 -1
- package/src/lib/rrule/index.js +4 -4
- package/src/lib/rrule/index.js.map +1 -1
- package/src/lib/date.request.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,11 +2,33 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
-
# [
|
|
5
|
+
# [3.0.0](https://github.com/dereekb/dbx-components/compare/v2.1.0...v3.0.0) (2022-05-13)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
# [
|
|
9
|
+
# [2.1.0](https://github.com/dereekb/dbx-components/compare/v2.0.0...v2.1.0) (2022-03-17)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Features
|
|
13
|
+
|
|
14
|
+
* date query builder ([9adfe56](https://github.com/dereekb/dbx-components/commit/9adfe56b15ae2ebd1e938ec33d971f410d7ec373))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
# [2.0.0](https://github.com/dereekb/dbx-components/compare/v1.2.0...v2.0.0) (2022-03-13)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Features
|
|
22
|
+
|
|
23
|
+
* added now to dbxDateTimeFieldComponent ([812e704](https://github.com/dereekb/dbx-components/commit/812e704b9bf44daa7441f236d6fe1e2c499ec7dd))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# [1.2.0](https://github.com/dereekb/dbx-components/compare/v1.1.0...v1.2.0) (2022-03-04)
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
# [1.1.0](https://github.com/dereekb/dbx-components/compare/v1.0.0...v1.1.0) (2022-03-02)
|
|
10
32
|
|
|
11
33
|
|
|
12
34
|
|
|
@@ -15,8 +37,8 @@ This file was generated using [@jscutlery/semver](https://github.com/jscutlery/s
|
|
|
15
37
|
|
|
16
38
|
### Features
|
|
17
39
|
|
|
18
|
-
* added dbxSearchableTextFieldComponent ([42ae14c](https://github.com/dereekb/
|
|
19
|
-
* added dbxTextEditorFieldComponent ([9146403](https://github.com/dereekb/
|
|
40
|
+
* added dbxSearchableTextFieldComponent ([42ae14c](https://github.com/dereekb/dbx-components/commit/42ae14c7709f6603db676c94f1df2017fdad59ca))
|
|
41
|
+
* added dbxTextEditorFieldComponent ([9146403](https://github.com/dereekb/dbx-components/commit/9146403e26e7647181f66435db3597f0f64853ec))
|
|
20
42
|
|
|
21
43
|
|
|
22
44
|
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
@dereekb/date
|
|
2
2
|
=======
|
|
3
3
|
|
|
4
|
-
The sources for this package are in the main [@dereekb/
|
|
4
|
+
The sources for this package are in the main [@dereekb/dbx-components](https://github.com/dereekb/dbx-components) repo. Please file issues and pull requests against that repo.
|
|
5
5
|
|
|
6
6
|
License: MIT
|
package/package.json
CHANGED
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/date",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"main": "./src/index.js",
|
|
6
6
|
"typings": "./src/index.d.ts",
|
|
7
|
-
"dependencies": {
|
|
8
|
-
|
|
7
|
+
"dependencies": {},
|
|
8
|
+
"peerDependencies": {
|
|
9
|
+
"@dereekb/util": "3.0.0",
|
|
10
|
+
"make-error": "^1.3.0",
|
|
9
11
|
"extra-set": "^2.2.11",
|
|
12
|
+
"change-case": "^4.1.2",
|
|
10
13
|
"class-transformer": "^0.5.1",
|
|
11
14
|
"date-fns": "^2.28.0",
|
|
12
15
|
"class-validator": "^0.13.2",
|
|
13
|
-
"date-fns-tz": "^1.
|
|
14
|
-
"rxjs": "^7.
|
|
15
|
-
"rrule": "git+https://git@github.com/dereekb/rrule.git#17adf5708d6567b4d01a3a8afd106261421ea492"
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
"date-fns-tz": "^1.3.0",
|
|
17
|
+
"rxjs": "^7.0.0",
|
|
18
|
+
"rrule": "git+https://git@github.com/dereekb/rrule.git#17adf5708d6567b4d01a3a8afd106261421ea492",
|
|
19
|
+
"tslib": "^2.0.0"
|
|
20
|
+
}
|
|
18
21
|
}
|
package/src/index.d.ts
CHANGED
package/src/index.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
|
-
|
|
5
|
-
(0, tslib_1.__exportStar)(require("./lib/expires"), exports);
|
|
6
|
-
(0, tslib_1.__exportStar)(require("./lib/rrule"), exports);
|
|
4
|
+
tslib_1.__exportStar(require("./lib"), exports);
|
|
7
5
|
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/date/src/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/date/src/index.ts"],"names":[],"mappings":";;;AAAA,gDAAsB"}
|
|
@@ -33,9 +33,9 @@ class CalendarDate extends date_duration_1.DateDurationSpan {
|
|
|
33
33
|
this.type = template.type;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
-
|
|
36
|
+
tslib_1.__decorate([
|
|
37
37
|
(0, class_transformer_1.Expose)(),
|
|
38
|
-
|
|
38
|
+
tslib_1.__metadata("design:type", String)
|
|
39
39
|
], CalendarDate.prototype, "type", void 0);
|
|
40
40
|
exports.CalendarDate = CalendarDate;
|
|
41
41
|
class CalendarDateUtility {
|
|
@@ -11,14 +11,14 @@ class DateDurationSpan {
|
|
|
11
11
|
this.duration = template.duration;
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
tslib_1.__decorate([
|
|
15
15
|
(0, class_transformer_1.Expose)(),
|
|
16
16
|
(0, class_transformer_1.Type)(() => Date),
|
|
17
|
-
|
|
17
|
+
tslib_1.__metadata("design:type", Date)
|
|
18
18
|
], DateDurationSpan.prototype, "startsAt", void 0);
|
|
19
|
-
|
|
19
|
+
tslib_1.__decorate([
|
|
20
20
|
(0, class_transformer_1.Expose)(),
|
|
21
|
-
|
|
21
|
+
tslib_1.__metadata("design:type", Number)
|
|
22
22
|
], DateDurationSpan.prototype, "duration", void 0);
|
|
23
23
|
exports.DateDurationSpan = DateDurationSpan;
|
|
24
24
|
function durationSpanToDateRange(span) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.duration.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.duration.ts"],"names":[],"mappings":";;;;AACA,yDAAiD;AACjD,uCAAsC;AACtC,6CAAyE;AAEzE,MAAa,gBAAgB;IAS3B,YAAY,QAA0B;QACpC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACpC,CAAC;CAEF;AAVC;IAFC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"date.duration.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.duration.ts"],"names":[],"mappings":";;;;AACA,yDAAiD;AACjD,uCAAsC;AACtC,6CAAyE;AAEzE,MAAa,gBAAgB;IAS3B,YAAY,QAA0B;QACpC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACpC,CAAC;CAEF;AAVC;IAFC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;sCACP,IAAI;kDAAC;AAGf;IADC,IAAA,0BAAM,GAAE;;kDACS;AAPpB,4CAcC;AAED,SAAgB,uBAAuB,CAAC,IAAsB;IAC5D,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,QAAQ;QACpB,GAAG,EAAE,IAAA,qBAAU,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC;KAC9C,CAAC;AACJ,CAAC;AALD,0DAKC;AAED,SAAgB,0BAA0B,CAAC,IAAsB;IAC/D,OAAO,IAAA,2BAAc,EAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;AACvD,CAAC;AAFD,gEAEC"}
|
|
@@ -87,6 +87,10 @@ class DateRangeParams {
|
|
|
87
87
|
* Type of range.
|
|
88
88
|
*/
|
|
89
89
|
this.type = DateRangeType.DAY;
|
|
90
|
+
/**
|
|
91
|
+
* Date to filter on. If not provided, assumes now.
|
|
92
|
+
*/
|
|
93
|
+
this.date = new Date();
|
|
90
94
|
if (template) {
|
|
91
95
|
this.type = template.type;
|
|
92
96
|
this.date = template.date;
|
|
@@ -94,20 +98,20 @@ class DateRangeParams {
|
|
|
94
98
|
}
|
|
95
99
|
}
|
|
96
100
|
}
|
|
97
|
-
|
|
101
|
+
tslib_1.__decorate([
|
|
98
102
|
(0, class_validator_1.IsEnum)(DateRangeType),
|
|
99
|
-
|
|
103
|
+
tslib_1.__metadata("design:type", String)
|
|
100
104
|
], DateRangeParams.prototype, "type", void 0);
|
|
101
|
-
|
|
105
|
+
tslib_1.__decorate([
|
|
102
106
|
(0, class_validator_1.IsOptional)(),
|
|
103
107
|
(0, class_validator_1.IsDate)(),
|
|
104
108
|
(0, class_transformer_1.Type)(() => Date),
|
|
105
|
-
|
|
109
|
+
tslib_1.__metadata("design:type", Date)
|
|
106
110
|
], DateRangeParams.prototype, "date", void 0);
|
|
107
|
-
|
|
111
|
+
tslib_1.__decorate([
|
|
108
112
|
(0, class_validator_1.IsNumber)(),
|
|
109
113
|
(0, class_validator_1.IsOptional)(),
|
|
110
|
-
|
|
114
|
+
tslib_1.__metadata("design:type", Number)
|
|
111
115
|
], DateRangeParams.prototype, "distance", void 0);
|
|
112
116
|
exports.DateRangeParams = DateRangeParams;
|
|
113
117
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.range.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.range.ts"],"names":[],"mappings":";;;;AAAA,yDAAyC;AACzC,qDAAuE;AACvE,uCAA4I;AAU5I,IAAY,aAuDX;AAvDD,WAAY,aAAa;IACvB;;OAEG;IACH,4BAAW,CAAA;IACX;;OAEG;IACH,8BAAa,CAAA;IACb;;OAEG;IACH,gCAAe,CAAA;IACf;;OAEG;IACH,4CAA2B,CAAA;IAC3B;;OAEG;IACH,0CAAyB,CAAA;IACzB;;OAEG;IACH,4CAA2B,CAAA;IAC3B;;OAEG;IACH,8CAA6B,CAAA;IAC7B;;OAEG;IACH,4CAA2B,CAAA;IAC3B;;OAEG;IACH,8CAA6B,CAAA;IAC7B;;;;OAIG;IACH,0CAAyB,CAAA;IACzB;;;;OAIG;IACH,4CAA2B,CAAA;IAC3B;;;;OAIG;IACH,8CAA6B,CAAA;AAC/B,CAAC,EAvDW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAuDxB;AAAA,CAAC;AAEF,IAAY,cAaX;AAbD,WAAY,cAAc;IACxB;;OAEG;IACH,mCAAiB,CAAA;IACjB;;OAEG;IACH,qCAAmB,CAAA;IACnB;;OAEG;IACH,+BAAa,CAAA;AACf,CAAC,EAbW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAazB;AAED;;GAEG;AACH,MAAa,eAAe;IAoB1B,YAAY,QAAyB;QAlBrC;;WAEG;QAEH,SAAI,GAAkB,aAAa,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"date.range.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.range.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Maybe, ReadableTimeString, TimeAM, TimezoneString } from '@dereekb/util';
|
|
1
|
+
import { LogicalDateStringCode, Maybe, ReadableTimeString, TimeAM, TimezoneString } from '@dereekb/util';
|
|
2
2
|
import { LimitDateTimeConfig, LimitDateTimeInstance } from './date.time.limit';
|
|
3
3
|
import { DateTimezoneConversionConfig, DateTimezoneUtcNormalInstance } from './date.timezone';
|
|
4
4
|
export interface ParsedTimeString {
|
|
@@ -69,13 +69,14 @@ export declare class DateTimeUtilityInstance {
|
|
|
69
69
|
* @param config
|
|
70
70
|
* @returns
|
|
71
71
|
*/
|
|
72
|
-
timeStringToDate(input: ReadableTimeString, config?: ParseTimeString): Maybe<Date>;
|
|
73
|
-
_timeStringToDate(input: ReadableTimeString, config?: ParseTimeString): DateFromTimestringResult | ValidDateFromTimestringResult;
|
|
72
|
+
timeStringToDate(input: ReadableTimeString | LogicalDateStringCode, config?: ParseTimeString): Maybe<Date>;
|
|
73
|
+
_timeStringToDate(input: ReadableTimeString | LogicalDateStringCode, config?: ParseTimeString): DateFromTimestringResult | ValidDateFromTimestringResult;
|
|
74
74
|
private _normalizeInstanceForConfig;
|
|
75
75
|
}
|
|
76
76
|
export declare function dateTimeInstanceUtc(): DateTimeUtilityInstance;
|
|
77
77
|
export declare function dateTimeInstance(timezone?: Maybe<TimezoneString>): DateTimeUtilityInstance;
|
|
78
78
|
export declare function getTimeAM(date?: Date, timezone?: Maybe<TimezoneString>): TimeAM;
|
|
79
|
+
export declare function toLocalReadableTimeString(date: Date): ReadableTimeString;
|
|
79
80
|
export declare function toReadableTimeString(date: Date, timezone?: Maybe<TimezoneString>): ReadableTimeString;
|
|
80
81
|
/**
|
|
81
82
|
* Parses the input string relative to the timezone in the configuration.
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.limitDateTime = exports.readableTimeStringToDate = exports.parseReadableTimeString = exports.toReadableTimeString = exports.getTimeAM = exports.dateTimeInstance = exports.dateTimeInstanceUtc = exports.DateTimeUtilityInstance = exports.isValidDateFromTimestringResult = void 0;
|
|
3
|
+
exports.limitDateTime = exports.readableTimeStringToDate = exports.parseReadableTimeString = exports.toReadableTimeString = exports.toLocalReadableTimeString = exports.getTimeAM = exports.dateTimeInstance = exports.dateTimeInstanceUtc = exports.DateTimeUtilityInstance = exports.isValidDateFromTimestringResult = void 0;
|
|
4
|
+
const date_1 = require("@dereekb/date");
|
|
4
5
|
const date_fns_1 = require("date-fns");
|
|
5
6
|
const date_fns_tz_1 = require("date-fns-tz");
|
|
6
7
|
const util_1 = require("@dereekb/util");
|
|
@@ -74,6 +75,75 @@ class DateTimeUtilityInstance {
|
|
|
74
75
|
else {
|
|
75
76
|
input = input.trim();
|
|
76
77
|
}
|
|
78
|
+
let systemParsedDateTime;
|
|
79
|
+
let valid = false;
|
|
80
|
+
function parseTimeString() {
|
|
81
|
+
const formats = [
|
|
82
|
+
'h:mma',
|
|
83
|
+
'h:mm a',
|
|
84
|
+
'h a',
|
|
85
|
+
'ha',
|
|
86
|
+
'h:mm' // 1:20
|
|
87
|
+
];
|
|
88
|
+
// tslint:disable-next-line: prefer-for-of
|
|
89
|
+
for (let i = 0; i < formats.length; i += 1) {
|
|
90
|
+
systemParsedDateTime = (0, date_fns_1.parse)(input, formats[i], relativeDate);
|
|
91
|
+
if ((0, date_fns_1.isValid)(systemParsedDateTime)) {
|
|
92
|
+
valid = true;
|
|
93
|
+
break; // Use time.
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
if (!valid) {
|
|
97
|
+
input = input.trim().replace(/\s+/g, '');
|
|
98
|
+
let removedPm = false;
|
|
99
|
+
function removeAmPm(inputString) {
|
|
100
|
+
inputString = inputString.toLowerCase();
|
|
101
|
+
removedPm = inputString.indexOf('pm') !== -1;
|
|
102
|
+
inputString = inputString.replace(/\am|pm/g, '');
|
|
103
|
+
return inputString;
|
|
104
|
+
}
|
|
105
|
+
function parseDateTimeFromNumber(inputString) {
|
|
106
|
+
const hour = inputString[0];
|
|
107
|
+
const minute = inputString[1] + inputString[2];
|
|
108
|
+
return (0, date_fns_1.parse)(`${hour}:${minute}AM`, 'h:mma', relativeDate);
|
|
109
|
+
}
|
|
110
|
+
function parseDateTimeAsHmm(inputString) {
|
|
111
|
+
return (0, date_fns_1.parse)(inputString, 'Hmm', relativeDate);
|
|
112
|
+
}
|
|
113
|
+
switch (input.length) {
|
|
114
|
+
case 1:
|
|
115
|
+
case 2:
|
|
116
|
+
// 1
|
|
117
|
+
systemParsedDateTime = (0, date_fns_1.parse)(input, 'H', relativeDate);
|
|
118
|
+
break;
|
|
119
|
+
case 5:
|
|
120
|
+
// 120AM
|
|
121
|
+
input = removeAmPm(input);
|
|
122
|
+
systemParsedDateTime = parseDateTimeFromNumber(input);
|
|
123
|
+
break;
|
|
124
|
+
case 3:
|
|
125
|
+
// 120
|
|
126
|
+
systemParsedDateTime = parseDateTimeFromNumber(input);
|
|
127
|
+
break;
|
|
128
|
+
case 6:
|
|
129
|
+
// 1212AM
|
|
130
|
+
removeAmPm(input);
|
|
131
|
+
if (removedPm) {
|
|
132
|
+
removedPm = input[0] !== '2'; // If 2, ignore the PM part.
|
|
133
|
+
}
|
|
134
|
+
systemParsedDateTime = parseDateTimeAsHmm(input);
|
|
135
|
+
break;
|
|
136
|
+
default:
|
|
137
|
+
// 2200
|
|
138
|
+
systemParsedDateTime = parseDateTimeAsHmm(input);
|
|
139
|
+
break;
|
|
140
|
+
}
|
|
141
|
+
if (removedPm) {
|
|
142
|
+
systemParsedDateTime = (0, date_fns_1.addHours)(systemParsedDateTime, 12);
|
|
143
|
+
}
|
|
144
|
+
valid = (0, date_fns_1.isValid)(systemParsedDateTime);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
77
147
|
/*
|
|
78
148
|
The input date needs to capture the right Day we want to parse on, since parse uses the system's information for hours/date information.
|
|
79
149
|
We do this by adding the offset of the system with the offset of the target timezone.
|
|
@@ -81,73 +151,13 @@ class DateTimeUtilityInstance {
|
|
|
81
151
|
const relativeDateNormal = new date_timezone_1.DateTimezoneUtcNormalInstance(config);
|
|
82
152
|
const relativeDate = relativeDateNormal.systemDateToTargetDate(inputDate);
|
|
83
153
|
// console.log('Relative Date: ', relativeDate, calculateAllConversions(inputDate, relativeDateNormal, (x) => millisecondsToHours(x)));
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
'h:mm a',
|
|
87
|
-
'h a',
|
|
88
|
-
'ha',
|
|
89
|
-
'h:mm' // 1:20
|
|
90
|
-
];
|
|
91
|
-
let systemParsedDateTime;
|
|
92
|
-
let valid = false;
|
|
93
|
-
// tslint:disable-next-line: prefer-for-of
|
|
94
|
-
for (let i = 0; i < formats.length; i += 1) {
|
|
95
|
-
systemParsedDateTime = (0, date_fns_1.parse)(input, formats[i], relativeDate);
|
|
96
|
-
if ((0, date_fns_1.isValid)(systemParsedDateTime)) {
|
|
97
|
-
valid = true;
|
|
98
|
-
break; // Use time.
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
if (!valid) {
|
|
102
|
-
input = input.trim().replace(/\s+/g, '');
|
|
103
|
-
let removedPm = false;
|
|
104
|
-
function removeAmPm(inputString) {
|
|
105
|
-
inputString = inputString.toLowerCase();
|
|
106
|
-
removedPm = inputString.indexOf('pm') !== -1;
|
|
107
|
-
inputString = inputString.replace(/\am|pm/g, '');
|
|
108
|
-
return inputString;
|
|
109
|
-
}
|
|
110
|
-
function parseDateTimeFromNumber(inputString) {
|
|
111
|
-
const hour = inputString[0];
|
|
112
|
-
const minute = inputString[1] + inputString[2];
|
|
113
|
-
return (0, date_fns_1.parse)(`${hour}:${minute}AM`, 'h:mma', relativeDate);
|
|
114
|
-
}
|
|
115
|
-
function parseDateTimeAsHmm(inputString) {
|
|
116
|
-
return (0, date_fns_1.parse)(inputString, 'Hmm', relativeDate);
|
|
117
|
-
}
|
|
118
|
-
switch (input.length) {
|
|
119
|
-
case 1:
|
|
120
|
-
case 2:
|
|
121
|
-
// 1
|
|
122
|
-
systemParsedDateTime = (0, date_fns_1.parse)(input, 'H', relativeDate);
|
|
123
|
-
break;
|
|
124
|
-
case 5:
|
|
125
|
-
// 120AM
|
|
126
|
-
input = removeAmPm(input);
|
|
127
|
-
systemParsedDateTime = parseDateTimeFromNumber(input);
|
|
128
|
-
break;
|
|
129
|
-
case 3:
|
|
130
|
-
// 120
|
|
131
|
-
systemParsedDateTime = parseDateTimeFromNumber(input);
|
|
132
|
-
break;
|
|
133
|
-
case 6:
|
|
134
|
-
// 1212AM
|
|
135
|
-
removeAmPm(input);
|
|
136
|
-
if (removedPm) {
|
|
137
|
-
removedPm = input[0] !== '2'; // If 2, ignore the PM part.
|
|
138
|
-
}
|
|
139
|
-
systemParsedDateTime = parseDateTimeAsHmm(input);
|
|
140
|
-
break;
|
|
141
|
-
default:
|
|
142
|
-
// 2200
|
|
143
|
-
systemParsedDateTime = parseDateTimeAsHmm(input);
|
|
144
|
-
break;
|
|
145
|
-
}
|
|
146
|
-
if (removedPm) {
|
|
147
|
-
systemParsedDateTime = (0, date_fns_1.addHours)(systemParsedDateTime, 12);
|
|
148
|
-
}
|
|
154
|
+
if ((0, util_1.isLogicalDateStringCode)(input)) {
|
|
155
|
+
systemParsedDateTime = (0, util_1.dateFromLogicalDate)(input);
|
|
149
156
|
valid = (0, date_fns_1.isValid)(systemParsedDateTime);
|
|
150
157
|
}
|
|
158
|
+
else {
|
|
159
|
+
parseTimeString();
|
|
160
|
+
}
|
|
151
161
|
// console.log('Parsed: ', systemParsedDateTime, relativeDate, input, inputDate, relativeDateNormal);
|
|
152
162
|
// Raw parse result is always UTC for that date.
|
|
153
163
|
// For example, 1AM will return 1AM UTC in a Date object.
|
|
@@ -190,6 +200,10 @@ function getTimeAM(date = new Date(), timezone) {
|
|
|
190
200
|
return dateTimeInstance(timezone).getTimeAM(date);
|
|
191
201
|
}
|
|
192
202
|
exports.getTimeAM = getTimeAM;
|
|
203
|
+
function toLocalReadableTimeString(date) {
|
|
204
|
+
return toReadableTimeString(date, (0, date_1.guessCurrentTimezone)());
|
|
205
|
+
}
|
|
206
|
+
exports.toLocalReadableTimeString = toLocalReadableTimeString;
|
|
193
207
|
function toReadableTimeString(date, timezone) {
|
|
194
208
|
return dateTimeInstance(timezone).toTimeString(date);
|
|
195
209
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.time.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.time.ts"],"names":[],"mappings":";;;AAAA,uCAA6H;AAC7H,6CAAkE;AAClE,
|
|
1
|
+
{"version":3,"file":"date.time.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.time.ts"],"names":[],"mappings":"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"}
|
package/src/lib/date/index.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
4
|
+
tslib_1.__exportStar(require("./date.calendar"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./date.duration"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./date.format"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./date.hashset"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./date.range"), exports);
|
|
9
|
+
tslib_1.__exportStar(require("./date.round"), exports);
|
|
10
|
+
tslib_1.__exportStar(require("./date.sort"), exports);
|
|
11
|
+
tslib_1.__exportStar(require("./date.time.limit"), exports);
|
|
12
|
+
tslib_1.__exportStar(require("./date.time.minute"), exports);
|
|
13
|
+
tslib_1.__exportStar(require("./date.time"), exports);
|
|
14
|
+
tslib_1.__exportStar(require("./date.timezone"), exports);
|
|
15
|
+
tslib_1.__exportStar(require("./date"), exports);
|
|
16
|
+
tslib_1.__exportStar(require("./date.unix"), exports);
|
|
17
17
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/index.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,0DAAgC;AAChC,wDAA8B;AAC9B,yDAA+B;AAC/B,uDAA6B;AAC7B,uDAA6B;AAC7B,sDAA4B;AAC5B,4DAAkC;AAClC,6DAAmC;AACnC,sDAA4B;AAC5B,0DAAgC;AAChC,iDAAuB;AACvB,sDAA4B"}
|
package/src/lib/expires/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
tslib_1.__exportStar(require("./expires"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./expires.rxjs"), exports);
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/expires/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/expires/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,yDAA+B"}
|
package/src/lib/index.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./date"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./expires"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./rrule"), exports);
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/date/src/lib/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,oDAA0B;AAC1B,kDAAwB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./query.builder"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./query.builder.mongo"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./query.filter"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./query.request"), exports);
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/query/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,gEAAsC;AACtC,yDAA+B;AAC/B,0DAAgC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Maybe, TimezoneString } from "@dereekb/util";
|
|
2
|
+
import { DateDayTimezoneHintFilter, DateItemOccuringFilter, DateItemQueryStartsEndsFilter, DateItemRangeFilter } from "./query.filter";
|
|
3
|
+
export interface DaysAndTimeFilter<F> {
|
|
4
|
+
/**
|
|
5
|
+
* The time filter is the primary filter.
|
|
6
|
+
*/
|
|
7
|
+
timeFilter: F;
|
|
8
|
+
/**
|
|
9
|
+
* The days filter is calculated when a timezone is provided, and filters on the days that match the range.
|
|
10
|
+
*/
|
|
11
|
+
daysFilter: Maybe<F>;
|
|
12
|
+
}
|
|
13
|
+
export interface RawDateQuery extends DateDayTimezoneHintFilter {
|
|
14
|
+
timezone?: Maybe<TimezoneString>;
|
|
15
|
+
startsLte?: Maybe<Date>;
|
|
16
|
+
startsGte?: Maybe<Date>;
|
|
17
|
+
endsLte?: Maybe<Date>;
|
|
18
|
+
endsGte?: Maybe<Date>;
|
|
19
|
+
/**
|
|
20
|
+
* Implied Range to filter on.
|
|
21
|
+
*
|
|
22
|
+
* We want to include all recurring items that start before the end, AND end after the start.
|
|
23
|
+
*
|
|
24
|
+
* rStart or rEnd may not be defined if no start or end are defined.
|
|
25
|
+
*/
|
|
26
|
+
rStart?: Maybe<Date>;
|
|
27
|
+
rEnd?: Maybe<Date>;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
*
|
|
31
|
+
*/
|
|
32
|
+
export interface DateQueryBuilder<R, F> {
|
|
33
|
+
/**
|
|
34
|
+
* Makes the "range" filter, which denotes the range to filter on. It is only used for building the "field" filter later.
|
|
35
|
+
*/
|
|
36
|
+
makeRangeFilter: MakeRangeFilterFunction<R>;
|
|
37
|
+
/**
|
|
38
|
+
* Actual filter used to return values.
|
|
39
|
+
*/
|
|
40
|
+
makeFieldFilter: MakeFieldFilterFunction<R, F>;
|
|
41
|
+
}
|
|
42
|
+
export declare type MakeRangeFilterFunction<R> = (gte: Maybe<Date>, lte: Maybe<Date>) => Maybe<R>;
|
|
43
|
+
/**
|
|
44
|
+
* A single field that manages start/end will start and end at the same instant (end = start), so we merge the gte/lte values.
|
|
45
|
+
*
|
|
46
|
+
* The "start" should be the startsAt start range first, and then the endsAt start range if provided.
|
|
47
|
+
* The "ends" should be equal to the endsAt end range first, and then the startsAt end range if provided.
|
|
48
|
+
*/
|
|
49
|
+
export declare type MergeStartsAtEndsAtFilterFunction<R> = (startsAt: Maybe<R>, endsAt: Maybe<R>) => R;
|
|
50
|
+
export interface MakeFieldFilterInput<R> {
|
|
51
|
+
startsAt?: Maybe<R>;
|
|
52
|
+
endsAt?: Maybe<R>;
|
|
53
|
+
}
|
|
54
|
+
export declare type MakeFieldFilterFunction<R, F> = (input: MakeFieldFilterInput<R>) => F;
|
|
55
|
+
export declare function makeDateQueryForOccuringFilter(find: DateItemOccuringFilter & DateDayTimezoneHintFilter): RawDateQuery;
|
|
56
|
+
export declare function makeDateQueryForDateItemRangeFilter(find: DateItemRangeFilter): RawDateQuery;
|
|
57
|
+
export declare function makeDateQueryForDateStartsEndsFilter(find: DateItemQueryStartsEndsFilter & DateDayTimezoneHintFilter): RawDateQuery;
|
|
58
|
+
export declare type DaysAndTimeFiltersFunction<F> = (dateQueryInstance: RawDateQuery) => DaysAndTimeFilter<F>;
|
|
59
|
+
export declare function makeDaysAndTimeFiltersFunction<R, F>(builder: DateQueryBuilder<R, F>): DaysAndTimeFiltersFunction<F>;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeDaysAndTimeFiltersFunction = exports.makeDateQueryForDateStartsEndsFilter = exports.makeDateQueryForDateItemRangeFilter = exports.makeDateQueryForOccuringFilter = void 0;
|
|
4
|
+
const date_fns_1 = require("date-fns");
|
|
5
|
+
const date_fns_tz_1 = require("date-fns-tz");
|
|
6
|
+
const date_range_1 = require("../date/date.range");
|
|
7
|
+
function makeDateQueryForOccuringFilter(find) {
|
|
8
|
+
const result = {};
|
|
9
|
+
result.timezone = find.timezone;
|
|
10
|
+
result.startsLte = find.occuringAt;
|
|
11
|
+
result.endsGte = find.occuringAt;
|
|
12
|
+
result.rStart = result.rEnd = find.occuringAt;
|
|
13
|
+
return result;
|
|
14
|
+
}
|
|
15
|
+
exports.makeDateQueryForOccuringFilter = makeDateQueryForOccuringFilter;
|
|
16
|
+
function makeDateQueryForDateItemRangeFilter(find) {
|
|
17
|
+
const result = {};
|
|
18
|
+
result.timezone = find.timezone;
|
|
19
|
+
// Apply the timezone to the date range if provided.
|
|
20
|
+
const range = (find.timezone) ? Object.assign(Object.assign({}, find.range), { date: (0, date_fns_tz_1.utcToZonedTime)(find.range.date, find.timezone) }) : find.range;
|
|
21
|
+
const dateRange = (0, date_range_1.makeDateRange)(range);
|
|
22
|
+
switch (range.type) {
|
|
23
|
+
case date_range_1.DateRangeType.DAY:
|
|
24
|
+
case date_range_1.DateRangeType.WEEK:
|
|
25
|
+
case date_range_1.DateRangeType.MONTH:
|
|
26
|
+
dateRange.end = (0, date_fns_1.addSeconds)(dateRange.end, 1); // Ends on the next day to encompass the full 24 hours, instead of 23:59:59 hours.
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
result.rStart = dateRange.start;
|
|
30
|
+
result.rEnd = dateRange.end;
|
|
31
|
+
// Range returns all values that are running withing that time period.
|
|
32
|
+
if (find.rangeContained) {
|
|
33
|
+
// If range contained, must have started and ended within the box entirely.
|
|
34
|
+
result.startsGte = dateRange.start;
|
|
35
|
+
result.endsLte = dateRange.end;
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
result.startsLte = dateRange.end;
|
|
39
|
+
result.endsGte = dateRange.start;
|
|
40
|
+
}
|
|
41
|
+
return result;
|
|
42
|
+
}
|
|
43
|
+
exports.makeDateQueryForDateItemRangeFilter = makeDateQueryForDateItemRangeFilter;
|
|
44
|
+
function makeDateQueryForDateStartsEndsFilter(find) {
|
|
45
|
+
var _a, _b;
|
|
46
|
+
const result = {};
|
|
47
|
+
result.timezone = find.timezone;
|
|
48
|
+
if (find.starts) {
|
|
49
|
+
const { before, after, at: equals } = find.starts;
|
|
50
|
+
result.startsGte = after !== null && after !== void 0 ? after : equals;
|
|
51
|
+
result.startsLte = before !== null && before !== void 0 ? before : equals;
|
|
52
|
+
result.rStart = (_a = result.startsGte) !== null && _a !== void 0 ? _a : result.startsLte;
|
|
53
|
+
}
|
|
54
|
+
if (find.ends) {
|
|
55
|
+
const { before, after, at: equals } = find.ends;
|
|
56
|
+
result.endsGte = after !== null && after !== void 0 ? after : equals;
|
|
57
|
+
result.endsLte = before !== null && before !== void 0 ? before : equals;
|
|
58
|
+
result.rEnd = (_b = result.endsGte) !== null && _b !== void 0 ? _b : result.endsLte;
|
|
59
|
+
}
|
|
60
|
+
return result;
|
|
61
|
+
}
|
|
62
|
+
exports.makeDateQueryForDateStartsEndsFilter = makeDateQueryForDateStartsEndsFilter;
|
|
63
|
+
function makeDaysAndTimeFiltersFunction(builder) {
|
|
64
|
+
return (dateQueryInstance) => {
|
|
65
|
+
const { timezone, startsGte, startsLte, endsGte, endsLte } = dateQueryInstance;
|
|
66
|
+
const startsAt = builder.makeRangeFilter(startsGte, startsLte);
|
|
67
|
+
const endsAt = builder.makeRangeFilter(endsGte, endsLte);
|
|
68
|
+
const timeFilter = builder.makeFieldFilter({ startsAt: startsAt, endsAt: endsAt });
|
|
69
|
+
let daysFilter;
|
|
70
|
+
if (timezone) {
|
|
71
|
+
function tzDate(date) {
|
|
72
|
+
return (date) ? (0, date_fns_tz_1.utcToZonedTime)(date, timezone) : undefined;
|
|
73
|
+
}
|
|
74
|
+
const tzDayStartsAtFilter = builder.makeRangeFilter(tzDate(startsGte), tzDate(startsLte));
|
|
75
|
+
const tzDayEndsAtFilter = builder.makeRangeFilter(tzDate(endsGte), tzDate(endsLte));
|
|
76
|
+
daysFilter = builder.makeFieldFilter({ startsAt: tzDayStartsAtFilter, endsAt: tzDayEndsAtFilter });
|
|
77
|
+
}
|
|
78
|
+
return {
|
|
79
|
+
timeFilter,
|
|
80
|
+
daysFilter
|
|
81
|
+
};
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
exports.makeDaysAndTimeFiltersFunction = makeDaysAndTimeFiltersFunction;
|
|
85
|
+
//# sourceMappingURL=query.builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.builder.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/query/query.builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Maybe } from '@dereekb/util';
|
|
2
|
+
import { DateQueryBuilder } from './query.builder';
|
|
3
|
+
export interface TimeFieldsNameSet {
|
|
4
|
+
start: string;
|
|
5
|
+
end?: string;
|
|
6
|
+
singleFieldForStartAndEnd?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface MongoDBLikeDateRangeFilter {
|
|
9
|
+
$lte?: Date;
|
|
10
|
+
$gte?: Date;
|
|
11
|
+
}
|
|
12
|
+
export declare type MongoDBLikeDateQueryFilter = object;
|
|
13
|
+
export declare function mergeMongoDBLikeRangeFilters(startsAt: Maybe<MongoDBLikeDateRangeFilter>, endsAt: Maybe<MongoDBLikeDateRangeFilter>): {
|
|
14
|
+
$lte: Date | undefined;
|
|
15
|
+
$gte: Date | undefined;
|
|
16
|
+
};
|
|
17
|
+
export interface MakeMongoDBLikeDateQueryBuilderConfig {
|
|
18
|
+
fields: TimeFieldsNameSet;
|
|
19
|
+
}
|
|
20
|
+
export declare function makeMongoDBLikeDateQueryBuilder(config: MakeMongoDBLikeDateQueryBuilderConfig): DateQueryBuilder<MongoDBLikeDateRangeFilter, MongoDBLikeDateQueryFilter>;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeMongoDBLikeDateQueryBuilder = exports.mergeMongoDBLikeRangeFilters = void 0;
|
|
4
|
+
function mergeMongoDBLikeRangeFilters(startsAt, endsAt) {
|
|
5
|
+
var _a, _b;
|
|
6
|
+
return {
|
|
7
|
+
$lte: (_a = startsAt === null || startsAt === void 0 ? void 0 : startsAt.$lte) !== null && _a !== void 0 ? _a : endsAt === null || endsAt === void 0 ? void 0 : endsAt.$lte,
|
|
8
|
+
$gte: (_b = endsAt === null || endsAt === void 0 ? void 0 : endsAt.$gte) !== null && _b !== void 0 ? _b : startsAt === null || startsAt === void 0 ? void 0 : startsAt.$gte
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
exports.mergeMongoDBLikeRangeFilters = mergeMongoDBLikeRangeFilters;
|
|
12
|
+
function makeMongoDBLikeDateQueryBuilder(config) {
|
|
13
|
+
const { fields } = config;
|
|
14
|
+
return {
|
|
15
|
+
makeRangeFilter(gte, lte) {
|
|
16
|
+
let result;
|
|
17
|
+
if (gte || lte) {
|
|
18
|
+
result = Object.assign(Object.assign({}, (gte) ? { '$gte': gte } : undefined), (lte) ? { '$lte': lte } : undefined);
|
|
19
|
+
}
|
|
20
|
+
return result;
|
|
21
|
+
},
|
|
22
|
+
makeFieldFilter({ startsAt, endsAt }) {
|
|
23
|
+
let startsAtFilter;
|
|
24
|
+
let endsAtFilter;
|
|
25
|
+
if (fields.singleFieldForStartAndEnd) {
|
|
26
|
+
// A single field that manages start/end will start and end at the same instant (end = start)
|
|
27
|
+
// so we merge the gte/lte values.
|
|
28
|
+
const merged = mergeMongoDBLikeRangeFilters(startsAt, endsAt);
|
|
29
|
+
startsAtFilter = (merged) ? { [fields.start]: merged } : undefined;
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
startsAtFilter = (startsAt) ? { [fields.start]: startsAt } : undefined;
|
|
33
|
+
endsAtFilter = (endsAt && fields.end) ? { [fields.end]: endsAt } : undefined;
|
|
34
|
+
}
|
|
35
|
+
const filter = Object.assign(Object.assign({}, startsAtFilter), endsAtFilter);
|
|
36
|
+
return filter;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
exports.makeMongoDBLikeDateQueryBuilder = makeMongoDBLikeDateQueryBuilder;
|
|
41
|
+
//# sourceMappingURL=query.builder.mongo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.builder.mongo.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/query/query.builder.mongo.ts"],"names":[],"mappings":";;;AAgBA,SAAgB,4BAA4B,CAAC,QAA2C,EAAE,MAAyC;;IACjI,OAAO;QACL,IAAI,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,mCAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI;QACpC,IAAI,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,mCAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI;KACrC,CAAC;AACJ,CAAC;AALD,oEAKC;AAMD,SAAgB,+BAA+B,CAAC,MAA6C;IAC3F,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAE1B,OAAO;QACL,eAAe,CAAC,GAAgB,EAAE,GAAgB;YAChD,IAAI,MAAyC,CAAC;YAE9C,IAAI,GAAG,IAAI,GAAG,EAAE;gBACd,MAAM,mCACD,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,GACnC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CACvC,CAAC;aACH;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,eAAe,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAoD;YACpF,IAAI,cAAc,CAAC;YACnB,IAAI,YAAY,CAAC;YAEjB,IAAI,MAAM,CAAC,yBAAyB,EAAE;gBAEpC,8FAA8F;gBAC9F,kCAAkC;gBAClC,MAAM,MAAM,GAA+B,4BAA4B,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAC1F,cAAc,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;aACpE;iBAAM;gBACL,cAAc,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;gBACvE,YAAY,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;aAC9E;YAED,MAAM,MAAM,mCACP,cAAc,GACd,YAAY,CAChB,CAAC;YAEF,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAA;AACH,CAAC;AAvCD,0EAuCC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Maybe, TimezoneString } from "@dereekb/util";
|
|
2
|
+
import { DateRangeParams } from "../date/date.range";
|
|
3
|
+
export interface FindEqualsDateParam {
|
|
4
|
+
/**
|
|
5
|
+
* Date exactly equals this.
|
|
6
|
+
*/
|
|
7
|
+
at?: Date;
|
|
8
|
+
}
|
|
9
|
+
export interface FindDateParam extends FindEqualsDateParam {
|
|
10
|
+
/**
|
|
11
|
+
* Date is before or equal to this point.
|
|
12
|
+
*/
|
|
13
|
+
before?: Date;
|
|
14
|
+
/**
|
|
15
|
+
* Date is after or equal to this point.
|
|
16
|
+
*/
|
|
17
|
+
after?: Date;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Filter that denotes which timezone to use when searching for full-date items.
|
|
21
|
+
*/
|
|
22
|
+
export interface DateDayTimezoneHintFilter {
|
|
23
|
+
/**
|
|
24
|
+
* Timezone to pull items from, relatively.
|
|
25
|
+
*
|
|
26
|
+
* If not provided, then items with type Days are excluded from the result.
|
|
27
|
+
*/
|
|
28
|
+
timezone?: Maybe<TimezoneString>;
|
|
29
|
+
}
|
|
30
|
+
export interface DateItemOccuringFilter {
|
|
31
|
+
/**
|
|
32
|
+
* Queries items that will be "ongoing" during this period.
|
|
33
|
+
*
|
|
34
|
+
* Checks that the event has started and has not yet ended.
|
|
35
|
+
*/
|
|
36
|
+
occuringAt?: Date;
|
|
37
|
+
}
|
|
38
|
+
export interface DateItemQueryStartsEndsEqualsFilter {
|
|
39
|
+
/**
|
|
40
|
+
* The start of a range.
|
|
41
|
+
*/
|
|
42
|
+
starts?: FindEqualsDateParam;
|
|
43
|
+
/**
|
|
44
|
+
* The end of a range.
|
|
45
|
+
*/
|
|
46
|
+
ends?: FindEqualsDateParam;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Simple filter for quering against items that may start and/or end within a certain range.
|
|
50
|
+
*/
|
|
51
|
+
export interface DateItemQueryStartsEndsFilter {
|
|
52
|
+
/**
|
|
53
|
+
* The start of a range.
|
|
54
|
+
*/
|
|
55
|
+
starts?: FindDateParam;
|
|
56
|
+
/**
|
|
57
|
+
* The end of a range.
|
|
58
|
+
*/
|
|
59
|
+
ends?: FindDateParam;
|
|
60
|
+
}
|
|
61
|
+
export interface DateRangeFilter extends DateDayTimezoneHintFilter {
|
|
62
|
+
/**
|
|
63
|
+
* Queries items that start within the specified date range.
|
|
64
|
+
*
|
|
65
|
+
* Specifically queries starts >= Date, and starts <= Date.
|
|
66
|
+
*/
|
|
67
|
+
range: DateRangeParams;
|
|
68
|
+
}
|
|
69
|
+
export interface DateItemRangeFilter extends DateRangeFilter {
|
|
70
|
+
/**
|
|
71
|
+
* Whether or not to filter on only items occuring within this range.
|
|
72
|
+
*
|
|
73
|
+
* Specifically queries starts >= Date, and ends <= Date.
|
|
74
|
+
*/
|
|
75
|
+
rangeContained?: boolean;
|
|
76
|
+
}
|
|
77
|
+
export interface DateItemQueryStartsEndsWithRangeFilter extends DateItemQueryStartsEndsFilter, DateItemRangeFilter {
|
|
78
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.filter.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/query/query.filter.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.request.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/query/query.request.ts"],"names":[],"mappings":""}
|
|
@@ -17,29 +17,29 @@ let ModelRecurrenceInfo = class ModelRecurrenceInfo {
|
|
|
17
17
|
this.forever = template.forever;
|
|
18
18
|
}
|
|
19
19
|
};
|
|
20
|
-
|
|
20
|
+
tslib_1.__decorate([
|
|
21
21
|
(0, class_transformer_1.Expose)(),
|
|
22
|
-
|
|
22
|
+
tslib_1.__metadata("design:type", String)
|
|
23
23
|
], ModelRecurrenceInfo.prototype, "timezone", void 0);
|
|
24
|
-
|
|
24
|
+
tslib_1.__decorate([
|
|
25
25
|
(0, class_transformer_1.Expose)(),
|
|
26
|
-
|
|
26
|
+
tslib_1.__metadata("design:type", String)
|
|
27
27
|
], ModelRecurrenceInfo.prototype, "rrule", void 0);
|
|
28
|
-
|
|
28
|
+
tslib_1.__decorate([
|
|
29
29
|
(0, class_transformer_1.Expose)(),
|
|
30
|
-
|
|
30
|
+
tslib_1.__metadata("design:type", Date)
|
|
31
31
|
], ModelRecurrenceInfo.prototype, "start", void 0);
|
|
32
|
-
|
|
32
|
+
tslib_1.__decorate([
|
|
33
33
|
(0, class_transformer_1.Expose)(),
|
|
34
|
-
|
|
34
|
+
tslib_1.__metadata("design:type", Date)
|
|
35
35
|
], ModelRecurrenceInfo.prototype, "end", void 0);
|
|
36
|
-
|
|
36
|
+
tslib_1.__decorate([
|
|
37
37
|
(0, class_transformer_1.Expose)(),
|
|
38
|
-
|
|
38
|
+
tslib_1.__metadata("design:type", Boolean)
|
|
39
39
|
], ModelRecurrenceInfo.prototype, "forever", void 0);
|
|
40
|
-
ModelRecurrenceInfo =
|
|
40
|
+
ModelRecurrenceInfo = tslib_1.__decorate([
|
|
41
41
|
(0, class_transformer_1.Exclude)(),
|
|
42
|
-
|
|
42
|
+
tslib_1.__metadata("design:paramtypes", [ModelRecurrenceInfo])
|
|
43
43
|
], ModelRecurrenceInfo);
|
|
44
44
|
exports.ModelRecurrenceInfo = ModelRecurrenceInfo;
|
|
45
45
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.recurrence.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/date.recurrence.ts"],"names":[],"mappings":";;;;AAAA,yDAAoD;AAEpD,6CAAmE;AACnE,yDAA2F;AAQ3F;;GAEG;AAEH,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAkC9B,YAAY,QAA6B;QACvC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAClC,CAAC;CAEF,CAAA;AAlCC;IADC,IAAA,0BAAM,GAAE;;qDACiB;AAM1B;IADC,IAAA,0BAAM,GAAE;;kDACS;AAMlB;IADC,IAAA,0BAAM,GAAE;
|
|
1
|
+
{"version":3,"file":"date.recurrence.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/date.recurrence.ts"],"names":[],"mappings":";;;;AAAA,yDAAoD;AAEpD,6CAAmE;AACnE,yDAA2F;AAQ3F;;GAEG;AAEH,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAkC9B,YAAY,QAA6B;QACvC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAClC,CAAC;CAEF,CAAA;AAlCC;IADC,IAAA,0BAAM,GAAE;;qDACiB;AAM1B;IADC,IAAA,0BAAM,GAAE;;kDACS;AAMlB;IADC,IAAA,0BAAM,GAAE;sCACF,IAAI;kDAAC;AAMZ;IADC,IAAA,0BAAM,GAAE;sCACJ,IAAI;gDAAC;AAMV;IADC,IAAA,0BAAM,GAAE;;oDACS;AAhCP,mBAAmB;IAD/B,IAAA,2BAAO,GAAE;6CAmCc,mBAAmB;GAlC9B,mBAAmB,CA0C/B;AA1CY,kDAAmB;AA+DhC;;GAEG;AACH,MAAa,0BAA0B;IAErC;;OAEG;IACH,MAAM,CAAC,+CAA+C,CAAC,MAA4B;;QACjF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;QAEzC,MAAM,SAAS,GAAG,6BAAgB,CAAC,YAAY,CAAC;YAC9C,kBAAkB,EAAE,KAAK;YACzB,OAAO,EAAE;gBACP,IAAI;aACL;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,SAAS,CAAC,sBAAsB,EAAE,CAAC;QACrD,MAAM,cAAc,GAAe,wCAAqB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAE7E,MAAM,cAAc,GAAG;YACrB,QAAQ;YACR,KAAK,EAAE,cAAc;YACrB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,GAAG,EAAE,MAAA,SAAS,CAAC,qBAAqB,mCAAI,SAAS,CAAC,GAAG;YACrD,OAAO,EAAE,SAAS,CAAC,OAAO;SAC3B,CAAC;QAEF,OAAO,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,qBAAqB,CAAC,IAAyB,EAAE,IAAkB;QACxE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAEjC,OAAO,6BAAgB,CAAC,YAAY,CAAC;YACnC,UAAU,EAAE,KAAK;YACjB,OAAO,EAAE;gBACP,IAAI;gBACJ,QAAQ;aACT;SACF,CAAC,CAAC;IACL,CAAC;CAEF;AAzCD,gEAyCC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AnyIterResult = exports.NextIterResult = exports.LastIterResult = exports.DateRRule = exports.DEFAULT_LAST_ITER_RESULT_MAX_ITERATIONS_ALLOWED = void 0;
|
|
4
|
-
const date_1 = require("
|
|
4
|
+
const date_1 = require("../date/date");
|
|
5
5
|
const rrule_1 = require("rrule");
|
|
6
6
|
// TODO: Fix typings in RRule, or better yet, add the given types up to RRule.
|
|
7
7
|
exports.DEFAULT_LAST_ITER_RESULT_MAX_ITERATIONS_ALLOWED = 10000;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.rrule.extension.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/date.rrule.extension.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"date.rrule.extension.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/date.rrule.extension.ts"],"names":[],"mappings":"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"}
|
package/src/lib/rrule/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
tslib_1.__exportStar(require("./date.recurrence"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./date.rrule.extension"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./date.rrule.parse"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./date.rrule"), exports);
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/index.ts"],"names":[],"mappings":";;;AAAA,4DAAkC;AAClC,iEAAuC;AACvC,6DAAmC;AACnC,uDAA6B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date.request.js","sourceRoot":"","sources":["../../../../../packages/date/src/lib/date.request.ts"],"names":[],"mappings":""}
|