chrono-node 2.8.2 → 2.8.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/README.md +1 -1
- package/dist/cjs/calculation/duration.d.ts +8 -0
- package/dist/cjs/calculation/duration.js +124 -0
- package/dist/cjs/calculation/duration.js.map +1 -0
- package/dist/cjs/{common/calculation → calculation}/weekdays.d.ts +2 -2
- package/dist/cjs/{common/calculation → calculation}/weekdays.js +3 -3
- package/dist/cjs/calculation/weekdays.js.map +1 -0
- package/dist/cjs/chrono.js +1 -1
- package/dist/cjs/chrono.js.map +1 -1
- package/dist/cjs/common/casualReferences.js +1 -1
- package/dist/cjs/common/casualReferences.js.map +1 -1
- package/dist/cjs/common/refiners/ForwardDateRefiner.js.map +1 -1
- package/dist/cjs/common/refiners/UnlikelyFormatFilter.js +0 -6
- package/dist/cjs/common/refiners/UnlikelyFormatFilter.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/locales/de/parsers/DEWeekdayParser.js +1 -1
- package/dist/cjs/locales/de/parsers/DEWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/en/parsers/ENTimeUnitAgoFormatParser.js +4 -5
- package/dist/cjs/locales/en/parsers/ENTimeUnitAgoFormatParser.js.map +1 -1
- package/dist/cjs/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js +5 -5
- package/dist/cjs/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js.map +1 -1
- package/dist/cjs/locales/en/parsers/ENTimeUnitWithinFormatParser.js +4 -0
- package/dist/cjs/locales/en/parsers/ENTimeUnitWithinFormatParser.js.map +1 -1
- package/dist/cjs/locales/en/parsers/ENWeekdayParser.js +1 -1
- package/dist/cjs/locales/en/parsers/ENWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/en/refiners/ENMergeRelativeAfterDateRefiner.js +1 -1
- package/dist/cjs/locales/en/refiners/ENMergeRelativeAfterDateRefiner.js.map +1 -1
- package/dist/cjs/locales/en/refiners/ENMergeRelativeFollowByDateRefiner.js +4 -4
- package/dist/cjs/locales/en/refiners/ENMergeRelativeFollowByDateRefiner.js.map +1 -1
- package/dist/cjs/locales/es/parsers/ESWeekdayParser.js +1 -1
- package/dist/cjs/locales/es/parsers/ESWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/fr/parsers/FRWeekdayParser.js +1 -1
- package/dist/cjs/locales/fr/parsers/FRWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITRelativeDateFormatParser.d.ts +1 -1
- package/dist/cjs/locales/it/parsers/ITRelativeDateFormatParser.js +2 -2
- package/dist/cjs/locales/it/parsers/ITWeekdayParser.js +1 -1
- package/dist/cjs/locales/it/parsers/ITWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/it/refiners/ITMergeRelativeDateRefiner.js +1 -1
- package/dist/cjs/locales/it/refiners/ITMergeRelativeDateRefiner.js.map +1 -1
- package/dist/cjs/locales/ja/parsers/JPWeekdayParser.js +1 -1
- package/dist/cjs/locales/ja/parsers/JPWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/ja/parsers/JPWeekdayWithParenthesesParser.js +1 -1
- package/dist/cjs/locales/ja/parsers/JPWeekdayWithParenthesesParser.js.map +1 -1
- package/dist/cjs/locales/nl/parsers/NLWeekdayParser.js +1 -1
- package/dist/cjs/locales/nl/parsers/NLWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/pt/parsers/PTWeekdayParser.js +1 -1
- package/dist/cjs/locales/pt/parsers/PTWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/ru/parsers/RUWeekdayParser.js +1 -1
- package/dist/cjs/locales/ru/parsers/RUWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/sv/constants.d.ts +25 -0
- package/dist/cjs/locales/sv/constants.js +206 -0
- package/dist/cjs/locales/sv/constants.js.map +1 -0
- package/dist/cjs/locales/sv/index.d.ts +11 -0
- package/dist/cjs/locales/sv/index.js +50 -0
- package/dist/cjs/locales/sv/index.js.map +1 -0
- package/dist/cjs/locales/sv/parsers/SVCasualDateParser.d.ts +7 -0
- package/dist/cjs/locales/sv/parsers/SVCasualDateParser.js +134 -0
- package/dist/cjs/locales/sv/parsers/SVCasualDateParser.js.map +1 -0
- package/dist/cjs/locales/sv/parsers/SVMonthNameLittleEndianParser.d.ts +7 -0
- package/dist/cjs/locales/sv/parsers/SVMonthNameLittleEndianParser.js +49 -0
- package/dist/cjs/locales/sv/parsers/SVMonthNameLittleEndianParser.js.map +1 -0
- package/dist/cjs/locales/sv/parsers/SVWeekdayParser.d.ts +7 -0
- package/dist/cjs/locales/sv/parsers/SVWeekdayParser.js +40 -0
- package/dist/cjs/locales/sv/parsers/SVWeekdayParser.js.map +1 -0
- package/dist/cjs/locales/uk/parsers/UKWeekdayParser.js +1 -1
- package/dist/cjs/locales/uk/parsers/UKWeekdayParser.js.map +1 -1
- package/dist/cjs/results.d.ts +7 -6
- package/dist/cjs/results.js +38 -35
- package/dist/cjs/results.js.map +1 -1
- package/dist/cjs/types.d.ts +1 -0
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/utils/dates.d.ts +2 -0
- package/dist/cjs/utils/dates.js +16 -0
- package/dist/cjs/utils/dates.js.map +1 -1
- package/dist/cjs/utils/timeunits.js.map +1 -1
- package/dist/esm/calculation/duration.d.ts +8 -0
- package/dist/esm/calculation/duration.js +119 -0
- package/dist/esm/calculation/duration.js.map +1 -0
- package/dist/esm/{common/calculation → calculation}/weekdays.d.ts +2 -2
- package/dist/esm/{common/calculation → calculation}/weekdays.js +3 -3
- package/dist/esm/calculation/weekdays.js.map +1 -0
- package/dist/esm/chrono.js +1 -1
- package/dist/esm/chrono.js.map +1 -1
- package/dist/esm/common/casualReferences.js +1 -1
- package/dist/esm/common/casualReferences.js.map +1 -1
- package/dist/esm/common/refiners/ForwardDateRefiner.js.map +1 -1
- package/dist/esm/common/refiners/UnlikelyFormatFilter.js +0 -6
- package/dist/esm/common/refiners/UnlikelyFormatFilter.js.map +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/locales/de/parsers/DEWeekdayParser.js +1 -1
- package/dist/esm/locales/de/parsers/DEWeekdayParser.js.map +1 -1
- package/dist/esm/locales/en/parsers/ENTimeUnitAgoFormatParser.js +4 -5
- package/dist/esm/locales/en/parsers/ENTimeUnitAgoFormatParser.js.map +1 -1
- package/dist/esm/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js +5 -5
- package/dist/esm/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js.map +1 -1
- package/dist/esm/locales/en/parsers/ENTimeUnitWithinFormatParser.js +4 -0
- package/dist/esm/locales/en/parsers/ENTimeUnitWithinFormatParser.js.map +1 -1
- package/dist/esm/locales/en/parsers/ENWeekdayParser.js +1 -1
- package/dist/esm/locales/en/parsers/ENWeekdayParser.js.map +1 -1
- package/dist/esm/locales/en/refiners/ENMergeRelativeAfterDateRefiner.js +1 -1
- package/dist/esm/locales/en/refiners/ENMergeRelativeAfterDateRefiner.js.map +1 -1
- package/dist/esm/locales/en/refiners/ENMergeRelativeFollowByDateRefiner.js +4 -4
- package/dist/esm/locales/en/refiners/ENMergeRelativeFollowByDateRefiner.js.map +1 -1
- package/dist/esm/locales/es/parsers/ESWeekdayParser.js +1 -1
- package/dist/esm/locales/es/parsers/ESWeekdayParser.js.map +1 -1
- package/dist/esm/locales/fr/parsers/FRWeekdayParser.js +1 -1
- package/dist/esm/locales/fr/parsers/FRWeekdayParser.js.map +1 -1
- package/dist/esm/locales/it/index.js +2 -2
- package/dist/esm/locales/it/parsers/ITRelativeDateFormatParser.d.ts +1 -1
- package/dist/esm/locales/it/parsers/ITRelativeDateFormatParser.js +1 -1
- package/dist/esm/locales/it/parsers/ITWeekdayParser.js +1 -1
- package/dist/esm/locales/it/parsers/ITWeekdayParser.js.map +1 -1
- package/dist/esm/locales/it/refiners/ITMergeRelativeDateRefiner.js +1 -1
- package/dist/esm/locales/it/refiners/ITMergeRelativeDateRefiner.js.map +1 -1
- package/dist/esm/locales/ja/parsers/JPWeekdayParser.js +1 -1
- package/dist/esm/locales/ja/parsers/JPWeekdayParser.js.map +1 -1
- package/dist/esm/locales/ja/parsers/JPWeekdayWithParenthesesParser.js +1 -1
- package/dist/esm/locales/ja/parsers/JPWeekdayWithParenthesesParser.js.map +1 -1
- package/dist/esm/locales/nl/parsers/NLWeekdayParser.js +1 -1
- package/dist/esm/locales/nl/parsers/NLWeekdayParser.js.map +1 -1
- package/dist/esm/locales/pt/parsers/PTWeekdayParser.js +1 -1
- package/dist/esm/locales/pt/parsers/PTWeekdayParser.js.map +1 -1
- package/dist/esm/locales/ru/parsers/RUWeekdayParser.js +1 -1
- package/dist/esm/locales/ru/parsers/RUWeekdayParser.js.map +1 -1
- package/dist/esm/locales/sv/constants.d.ts +25 -0
- package/dist/esm/locales/sv/constants.js +199 -0
- package/dist/esm/locales/sv/constants.js.map +1 -0
- package/dist/esm/locales/sv/index.d.ts +11 -0
- package/dist/esm/locales/sv/index.js +36 -0
- package/dist/esm/locales/sv/index.js.map +1 -0
- package/dist/esm/locales/sv/parsers/SVCasualDateParser.d.ts +7 -0
- package/dist/esm/locales/sv/parsers/SVCasualDateParser.js +95 -0
- package/dist/esm/locales/sv/parsers/SVCasualDateParser.js.map +1 -0
- package/dist/esm/locales/sv/parsers/SVMonthNameLittleEndianParser.d.ts +7 -0
- package/dist/esm/locales/sv/parsers/SVMonthNameLittleEndianParser.js +46 -0
- package/dist/esm/locales/sv/parsers/SVMonthNameLittleEndianParser.js.map +1 -0
- package/dist/esm/locales/sv/parsers/SVWeekdayParser.d.ts +7 -0
- package/dist/esm/locales/sv/parsers/SVWeekdayParser.js +37 -0
- package/dist/esm/locales/sv/parsers/SVWeekdayParser.js.map +1 -0
- package/dist/esm/locales/uk/parsers/UKWeekdayParser.js +1 -1
- package/dist/esm/locales/uk/parsers/UKWeekdayParser.js.map +1 -1
- package/dist/esm/results.d.ts +7 -6
- package/dist/esm/results.js +35 -32
- package/dist/esm/results.js.map +1 -1
- package/dist/esm/types.d.ts +1 -0
- package/dist/esm/types.js.map +1 -1
- package/dist/esm/utils/dates.d.ts +2 -0
- package/dist/esm/utils/dates.js +14 -0
- package/dist/esm/utils/dates.js.map +1 -1
- package/dist/esm/utils/timeunits.js.map +1 -1
- package/package.json +1 -1
- package/src/calculation/duration.ts +143 -0
- package/src/{common/calculation → calculation}/weekdays.ts +3 -3
- package/src/chrono.ts +2 -2
- package/src/common/casualReferences.ts +1 -1
- package/src/common/refiners/ForwardDateRefiner.ts +0 -1
- package/src/common/refiners/UnlikelyFormatFilter.ts +0 -8
- package/src/index.ts +2 -2
- package/src/locales/de/parsers/DEWeekdayParser.ts +1 -1
- package/src/locales/en/parsers/ENTimeUnitAgoFormatParser.ts +4 -5
- package/src/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.ts +5 -5
- package/src/locales/en/parsers/ENTimeUnitWithinFormatParser.ts +5 -0
- package/src/locales/en/parsers/ENWeekdayParser.ts +1 -1
- package/src/locales/en/refiners/ENMergeRelativeAfterDateRefiner.ts +1 -1
- package/src/locales/en/refiners/ENMergeRelativeFollowByDateRefiner.ts +5 -5
- package/src/locales/es/parsers/ESWeekdayParser.ts +1 -1
- package/src/locales/fr/parsers/FRWeekdayParser.ts +1 -1
- package/src/locales/it/index.ts +2 -2
- package/src/locales/it/parsers/ITRelativeDateFormatParser.ts +1 -1
- package/src/locales/it/parsers/ITWeekdayParser.ts +1 -1
- package/src/locales/it/refiners/ITMergeRelativeDateRefiner.ts +1 -1
- package/src/locales/ja/parsers/JPWeekdayParser.ts +1 -1
- package/src/locales/ja/parsers/JPWeekdayWithParenthesesParser.ts +1 -1
- package/src/locales/nl/parsers/NLWeekdayParser.ts +1 -1
- package/src/locales/pt/parsers/PTWeekdayParser.ts +1 -1
- package/src/locales/ru/parsers/RUWeekdayParser.ts +1 -1
- package/src/locales/sv/constants.ts +215 -0
- package/src/locales/sv/index.ts +45 -0
- package/src/locales/sv/parsers/SVCasualDateParser.ts +114 -0
- package/src/locales/sv/parsers/SVMonthNameLittleEndianParser.ts +59 -0
- package/src/locales/sv/parsers/SVWeekdayParser.ts +47 -0
- package/src/locales/uk/parsers/UKWeekdayParser.ts +1 -1
- package/src/results.ts +38 -35
- package/src/types.ts +2 -0
- package/src/utils/dates.ts +26 -0
- package/src/utils/timeunits.ts +9 -0
- package/test/calculation_duration.test.ts +165 -0
- package/test/{calculation.test.ts → calculation_weekdays.test.ts} +1 -1
- package/test/en/en_month_name_little_endian.test.ts +19 -0
- package/test/en/en_time_exp.test.ts +14 -0
- package/test/en/en_year.test.ts +38 -0
- package/test/en/negative_cases.test.ts +5 -0
- package/test/result.test.ts +4 -4
- package/test/sv/sv_casual.test.ts +45 -0
- package/test/sv/sv_weekday.test.ts +68 -0
- package/test/system_timezone.test.ts +36 -0
- package/dist/cjs/common/calculation/weekdays.js.map +0 -1
- package/dist/esm/common/calculation/weekdays.js.map +0 -1
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { addDuration, reverseDuration } from "../src/calculation/duration";
|
|
2
|
+
|
|
3
|
+
test("Test - Adding Duration w/ single timeunit", () => {
|
|
4
|
+
{
|
|
5
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
6
|
+
const output = addDuration(reference, { "year": 1 });
|
|
7
|
+
expect(output).toStrictEqual(new Date("Sun, Aug 27 2023 12:52:11"));
|
|
8
|
+
}
|
|
9
|
+
{
|
|
10
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
11
|
+
const output = addDuration(reference, { "month": 1 });
|
|
12
|
+
expect(output).toStrictEqual(new Date("Wed, Sep 27 2022 12:52:11"));
|
|
13
|
+
}
|
|
14
|
+
{
|
|
15
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
16
|
+
const output = addDuration(reference, { "week": 1 });
|
|
17
|
+
expect(output).toStrictEqual(new Date("Sat, Sep 3 2022 12:52:11"));
|
|
18
|
+
}
|
|
19
|
+
{
|
|
20
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
21
|
+
const output = addDuration(reference, { "day": 1 });
|
|
22
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 28 2022 12:52:11"));
|
|
23
|
+
}
|
|
24
|
+
{
|
|
25
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
26
|
+
const output = addDuration(reference, { "hour": 1 });
|
|
27
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 13:52:11"));
|
|
28
|
+
}
|
|
29
|
+
{
|
|
30
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
31
|
+
const output = addDuration(reference, { "minute": 1 });
|
|
32
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:53:11"));
|
|
33
|
+
}
|
|
34
|
+
{
|
|
35
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
36
|
+
const output = addDuration(reference, { "second": 1 });
|
|
37
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:12"));
|
|
38
|
+
}
|
|
39
|
+
{
|
|
40
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11:00");
|
|
41
|
+
const output = addDuration(reference, { "millisecond": 1 });
|
|
42
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:11:01"));
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
test("Test - Adding Duration w/ single timeunit shorten", () => {
|
|
47
|
+
{
|
|
48
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
49
|
+
const output = addDuration(reference, { "y": 1 });
|
|
50
|
+
expect(output).toStrictEqual(new Date("Sun, Aug 27 2023 12:52:11"));
|
|
51
|
+
}
|
|
52
|
+
{
|
|
53
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
54
|
+
const output = addDuration(reference, { "M": 1 });
|
|
55
|
+
expect(output).toStrictEqual(new Date("Wed, Sep 27 2022 12:52:11"));
|
|
56
|
+
}
|
|
57
|
+
{
|
|
58
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
59
|
+
const output = addDuration(reference, { "w": 1 });
|
|
60
|
+
expect(output).toStrictEqual(new Date("Sat, Sep 3 2022 12:52:11"));
|
|
61
|
+
}
|
|
62
|
+
{
|
|
63
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
64
|
+
const output = addDuration(reference, { "d": 1 });
|
|
65
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 28 2022 12:52:11"));
|
|
66
|
+
}
|
|
67
|
+
{
|
|
68
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
69
|
+
const output = addDuration(reference, { "h": 1 });
|
|
70
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 13:52:11"));
|
|
71
|
+
}
|
|
72
|
+
{
|
|
73
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
74
|
+
const output = addDuration(reference, { "m": 1 });
|
|
75
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:53:11"));
|
|
76
|
+
}
|
|
77
|
+
{
|
|
78
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
79
|
+
const output = addDuration(reference, { "s": 1 });
|
|
80
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:12"));
|
|
81
|
+
}
|
|
82
|
+
{
|
|
83
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11:00");
|
|
84
|
+
const output = addDuration(reference, { "ms": 1 });
|
|
85
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:11:01"));
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
test("Test - Adding Duration w/ multiple timeunits", () => {
|
|
90
|
+
{
|
|
91
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
92
|
+
const output = addDuration(reference, { "month": 1, "day": 4 });
|
|
93
|
+
expect(output).toStrictEqual(new Date("Wed, Oct 1 2022 12:52:11"));
|
|
94
|
+
}
|
|
95
|
+
{
|
|
96
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
97
|
+
const output = addDuration(reference, { "month": 1, "day": 4, "hour": 12 });
|
|
98
|
+
expect(output).toStrictEqual(new Date("Wed, Oct 2 2022 00:52:11"));
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
test("Test - Adding Duration w/ fractions", () => {
|
|
103
|
+
{
|
|
104
|
+
// 0.5 year (aka. half year) => 6 months
|
|
105
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
106
|
+
const output = addDuration(reference, { "year": 0.5 });
|
|
107
|
+
expect(output).toStrictEqual(new Date("Mon, Feb 27 2023 12:52:11"));
|
|
108
|
+
}
|
|
109
|
+
{
|
|
110
|
+
// 0.5 month => 2 weeks
|
|
111
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
112
|
+
const output = addDuration(reference, { "month": 0.5 });
|
|
113
|
+
expect(output).toStrictEqual(new Date("Sat, Sep 10 2022 12:52:11"));
|
|
114
|
+
}
|
|
115
|
+
{
|
|
116
|
+
// 0.5 week => 4 days (actually 3.5 days, but we round up to 4 days)
|
|
117
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
118
|
+
const output = addDuration(reference, { "week": 0.5 });
|
|
119
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 31 2022 12:52:11"));
|
|
120
|
+
}
|
|
121
|
+
{
|
|
122
|
+
// 0.5 day (aka. half day) => 12 hours
|
|
123
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
124
|
+
const output = addDuration(reference, { "day": 0.5 });
|
|
125
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 28 2022 00:52:11"));
|
|
126
|
+
}
|
|
127
|
+
{
|
|
128
|
+
// 0.5 hour (aka. half hour) => 30 minutes
|
|
129
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
130
|
+
const output = addDuration(reference, { "hour": 0.5 });
|
|
131
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 13:22:11"));
|
|
132
|
+
}
|
|
133
|
+
{
|
|
134
|
+
// 0.5 minute (aka. half minute) => 30 seconds
|
|
135
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
136
|
+
const output = addDuration(reference, { "minute": 0.5 });
|
|
137
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:41"));
|
|
138
|
+
}
|
|
139
|
+
{
|
|
140
|
+
// 0.5 second (aka. half second) => 500 milliseconds
|
|
141
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11:00");
|
|
142
|
+
const output = addDuration(reference, { "second": 0.5 });
|
|
143
|
+
expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:11:500"));
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
|
|
147
|
+
test("Test - Adding Duration w/ multiple fractions", () => {
|
|
148
|
+
{
|
|
149
|
+
// 0.5 year (aka. half year) => 6 months
|
|
150
|
+
const reference = new Date("Sat, Aug 27 2022 12:52:11");
|
|
151
|
+
const output = addDuration(reference, { "year": 0.5, "month": 2 });
|
|
152
|
+
expect(output).toStrictEqual(new Date("Thu, April 27 2023 12:52:11"));
|
|
153
|
+
}
|
|
154
|
+
});
|
|
155
|
+
|
|
156
|
+
test("Test - Reverse Duration", () => {
|
|
157
|
+
{
|
|
158
|
+
const timeunits = { year: 5, month: 5 };
|
|
159
|
+
expect(reverseDuration(timeunits)).toStrictEqual({ year: -5, month: -5 });
|
|
160
|
+
}
|
|
161
|
+
{
|
|
162
|
+
const timeunits = { year: -5, month: -5 };
|
|
163
|
+
expect(reverseDuration(timeunits)).toStrictEqual({ year: 5, month: 5 });
|
|
164
|
+
}
|
|
165
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createParsingComponentsAtWeekday, getDaysToWeekday } from "../src/
|
|
1
|
+
import { createParsingComponentsAtWeekday, getDaysToWeekday } from "../src/calculation/weekdays";
|
|
2
2
|
import { Weekday } from "../src";
|
|
3
3
|
import { ReferenceWithTimezone } from "../src/results";
|
|
4
4
|
|
|
@@ -212,6 +212,25 @@ test("Test - Range expression", () => {
|
|
|
212
212
|
expect(result.end).toBeDate(new Date(2013, 9 - 1, 12, 12));
|
|
213
213
|
});
|
|
214
214
|
|
|
215
|
+
testSingleCase(chrono, "10 August 2013 - 12 September", new Date(2012, 7, 10), (result) => {
|
|
216
|
+
expect(result.index).toBe(0);
|
|
217
|
+
expect(result.text).toBe("10 August 2013 - 12 September");
|
|
218
|
+
|
|
219
|
+
expect(result.start).not.toBeNull();
|
|
220
|
+
expect(result.start.get("year")).toBe(2013);
|
|
221
|
+
expect(result.start.get("month")).toBe(8);
|
|
222
|
+
expect(result.start.get("day")).toBe(10);
|
|
223
|
+
|
|
224
|
+
expect(result.start).toBeDate(new Date(2013, 8 - 1, 10, 12));
|
|
225
|
+
|
|
226
|
+
expect(result.end).not.toBeNull();
|
|
227
|
+
expect(result.end.get("year")).toBe(2013);
|
|
228
|
+
expect(result.end.get("month")).toBe(9);
|
|
229
|
+
expect(result.end.get("day")).toBe(12);
|
|
230
|
+
|
|
231
|
+
expect(result.end).toBeDate(new Date(2013, 9 - 1, 12, 12));
|
|
232
|
+
});
|
|
233
|
+
|
|
215
234
|
testSingleCase(chrono, " 17 August 2013 to 19 August 2013", new Date(2012, 7, 10), (result) => {
|
|
216
235
|
expect(result.text).toBe("17 August 2013 to 19 August 2013");
|
|
217
236
|
|
|
@@ -27,6 +27,20 @@ test("Test - Time expression", function () {
|
|
|
27
27
|
});
|
|
28
28
|
});
|
|
29
29
|
|
|
30
|
+
test("Test - Time expression with clues", () => {
|
|
31
|
+
testSingleCase(chrono, "1 at night", new Date(2016, 10 - 1, 1, 8), (result, text) => {
|
|
32
|
+
expect(result.text).toBe(text);
|
|
33
|
+
expect(result.start.get("hour")).toBe(1);
|
|
34
|
+
expect(result.start.get("meridiem")).toBe(Meridiem.AM);
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
testSingleCase(chrono, "1 in the afternoon", new Date(2016, 10 - 1, 1, 8), (result, text) => {
|
|
38
|
+
expect(result.text).toBe(text);
|
|
39
|
+
expect(result.start.get("hour")).toBe(13);
|
|
40
|
+
expect(result.start.get("meridiem")).toBe(Meridiem.PM);
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
|
|
30
44
|
test("Test - Time expression after date", function () {
|
|
31
45
|
testSingleCase(chrono, "05/31/2024 14:15", new Date(2016, 10 - 1, 1, 8), (result, text) => {
|
|
32
46
|
expect(result.text).toBe(text);
|
package/test/en/en_year.test.ts
CHANGED
|
@@ -98,3 +98,41 @@ test("Test - Year number after date/time expression", () => {
|
|
|
98
98
|
expect(result.start.get("timezoneOffset")).toBe(-240);
|
|
99
99
|
});
|
|
100
100
|
});
|
|
101
|
+
|
|
102
|
+
test("Test - Year number after date/time range expression", () => {
|
|
103
|
+
testSingleCase(chrono, "Thu Oct 26 - 28, 11:00:09 2023", new Date(2016, 10 - 1, 1, 8), (result, text) => {
|
|
104
|
+
expect(result.start.get("year")).toBe(2023);
|
|
105
|
+
expect(result.start.get("month")).toBe(10);
|
|
106
|
+
expect(result.start.get("day")).toBe(26);
|
|
107
|
+
expect(result.start.get("hour")).toBe(11);
|
|
108
|
+
expect(result.start.get("minute")).toBe(0);
|
|
109
|
+
expect(result.start.get("second")).toBe(9);
|
|
110
|
+
expect(result.start.get("meridiem")).toBe(Meridiem.AM);
|
|
111
|
+
|
|
112
|
+
expect(result.end.get("year")).toBe(2023);
|
|
113
|
+
expect(result.end.get("month")).toBe(10);
|
|
114
|
+
expect(result.end.get("day")).toBe(28);
|
|
115
|
+
expect(result.end.get("hour")).toBe(11);
|
|
116
|
+
expect(result.end.get("minute")).toBe(0);
|
|
117
|
+
expect(result.end.get("second")).toBe(9);
|
|
118
|
+
expect(result.end.get("meridiem")).toBe(Meridiem.AM);
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
testSingleCase(chrono, "Thu Oct 26, 10:00 - 11:00:09 2023", new Date(2016, 10 - 1, 1, 8), (result, text) => {
|
|
122
|
+
expect(result.start.get("year")).toBe(2023);
|
|
123
|
+
expect(result.start.get("month")).toBe(10);
|
|
124
|
+
expect(result.start.get("day")).toBe(26);
|
|
125
|
+
expect(result.start.get("hour")).toBe(10);
|
|
126
|
+
expect(result.start.get("minute")).toBe(0);
|
|
127
|
+
expect(result.start.get("second")).toBe(0);
|
|
128
|
+
expect(result.start.get("meridiem")).toBe(Meridiem.AM);
|
|
129
|
+
|
|
130
|
+
expect(result.end.get("year")).toBe(2023);
|
|
131
|
+
expect(result.end.get("month")).toBe(10);
|
|
132
|
+
expect(result.end.get("day")).toBe(26);
|
|
133
|
+
expect(result.end.get("hour")).toBe(11);
|
|
134
|
+
expect(result.end.get("minute")).toBe(0);
|
|
135
|
+
expect(result.end.get("second")).toBe(9);
|
|
136
|
+
expect(result.end.get("meridiem")).toBe(Meridiem.AM);
|
|
137
|
+
});
|
|
138
|
+
});
|
|
@@ -67,6 +67,11 @@ test("Test - Skip impossible dates/times", () => {
|
|
|
67
67
|
testUnexpectedResult(chrono, "An appointment on 13/31/2018");
|
|
68
68
|
});
|
|
69
69
|
|
|
70
|
+
test("Test - Skip impossible dates/times ranges", () => {
|
|
71
|
+
testUnexpectedResult(chrono, "February 20 - 29, 2022");
|
|
72
|
+
testUnexpectedResult(chrono, "June 10 - 31, 2022");
|
|
73
|
+
});
|
|
74
|
+
|
|
70
75
|
test("Test - Skip version number pattern", () => {
|
|
71
76
|
testUnexpectedResult(chrono, "Version: 1.1.3");
|
|
72
77
|
|
package/test/result.test.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ParsingComponents, ParsingResult, ReferenceWithTimezone } from "../src/results";
|
|
2
2
|
|
|
3
3
|
test("Test - Create & manipulate parsing components", () => {
|
|
4
|
-
const reference =
|
|
4
|
+
const reference = ReferenceWithTimezone.fromDate(new Date());
|
|
5
5
|
const components = new ParsingComponents(reference, { year: 2014, month: 11, day: 24 });
|
|
6
6
|
|
|
7
7
|
expect(components.get("year")).toBe(2014);
|
|
@@ -178,21 +178,21 @@ test("Test - Checking non-existing date during DST skip", () => {
|
|
|
178
178
|
|
|
179
179
|
test("Test - Getting timezone adjust date from references", () => {
|
|
180
180
|
{
|
|
181
|
-
const reference =
|
|
181
|
+
const reference = ReferenceWithTimezone.fromInput({
|
|
182
182
|
instant: new Date("Wed Jun 09 2021 07:21:32 GMT+0900 (JST)"),
|
|
183
183
|
timezone: 9 * 60,
|
|
184
184
|
});
|
|
185
185
|
expect(reference.getDateWithAdjustedTimezone()).toStrictEqual(new Date(2021, 6 - 1, 9, 7, 21, 32));
|
|
186
186
|
}
|
|
187
187
|
{
|
|
188
|
-
const reference =
|
|
188
|
+
const reference = ReferenceWithTimezone.fromInput({
|
|
189
189
|
instant: new Date("Wed Jun 09 2021 07:21:32 GMT+0900 (JST)"),
|
|
190
190
|
timezone: "JST",
|
|
191
191
|
});
|
|
192
192
|
expect(reference.getDateWithAdjustedTimezone()).toStrictEqual(new Date(2021, 6 - 1, 9, 7, 21, 32));
|
|
193
193
|
}
|
|
194
194
|
{
|
|
195
|
-
const reference =
|
|
195
|
+
const reference = ReferenceWithTimezone.fromInput({
|
|
196
196
|
instant: new Date("Wed Jun 09 2021 07:21:32 GMT-0500 (CDT)"),
|
|
197
197
|
timezone: "CDT",
|
|
198
198
|
});
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import * as chrono from "../../src/locales/sv";
|
|
2
|
+
import { testSingleCase } from "../test_util";
|
|
3
|
+
|
|
4
|
+
test("Test - Single Expression", function () {
|
|
5
|
+
testSingleCase(chrono, "idag", new Date(2012, 7, 10), (result) => {
|
|
6
|
+
expect(result.start.get("year")).toBe(2012);
|
|
7
|
+
expect(result.start.get("month")).toBe(8);
|
|
8
|
+
expect(result.start.get("day")).toBe(10);
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
testSingleCase(chrono, "imorgon", new Date(2012, 7, 10), (result) => {
|
|
12
|
+
expect(result.start.get("year")).toBe(2012);
|
|
13
|
+
expect(result.start.get("month")).toBe(8);
|
|
14
|
+
expect(result.start.get("day")).toBe(11);
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
testSingleCase(chrono, "igår", new Date(2012, 7, 10), (result) => {
|
|
18
|
+
expect(result.start.get("year")).toBe(2012);
|
|
19
|
+
expect(result.start.get("month")).toBe(8);
|
|
20
|
+
expect(result.start.get("day")).toBe(9);
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
testSingleCase(chrono, "förrgår", new Date(2012, 7, 10), (result) => {
|
|
24
|
+
expect(result.start.get("year")).toBe(2012);
|
|
25
|
+
expect(result.start.get("month")).toBe(8);
|
|
26
|
+
expect(result.start.get("day")).toBe(8);
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
test("Test - Combined Expression", function () {
|
|
31
|
+
testSingleCase(chrono, "idag på morgonen", new Date(2012, 7, 10), (result) => {
|
|
32
|
+
expect(result.start.get("year")).toBe(2012);
|
|
33
|
+
expect(result.start.get("month")).toBe(8);
|
|
34
|
+
expect(result.start.get("day")).toBe(10);
|
|
35
|
+
expect(result.start.get("hour")).toBe(6);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
// Denna funktionalitet behöver ytterligare utveckling
|
|
39
|
+
// testSingleCase(chrono, "imorgon kväll", new Date(2012, 7, 10), (result) => {
|
|
40
|
+
// expect(result.start.get("year")).toBe(2012);
|
|
41
|
+
// expect(result.start.get("month")).toBe(8);
|
|
42
|
+
// expect(result.start.get("day")).toBe(11);
|
|
43
|
+
// expect(result.start.get("hour")).toBe(20);
|
|
44
|
+
// });
|
|
45
|
+
});
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import * as chrono from "../../src/locales/sv";
|
|
2
|
+
import { testSingleCase } from "../test_util";
|
|
3
|
+
|
|
4
|
+
test("Test - Single Expression", function () {
|
|
5
|
+
testSingleCase(chrono, "måndag", new Date(2012, 7, 9), (result) => {
|
|
6
|
+
expect(result.index).toBe(0);
|
|
7
|
+
expect(result.text).toBe("måndag");
|
|
8
|
+
|
|
9
|
+
expect(result.start).not.toBeNull();
|
|
10
|
+
expect(result.start.get("year")).toBe(2012);
|
|
11
|
+
expect(result.start.get("month")).toBe(8);
|
|
12
|
+
expect(result.start.get("day")).toBe(6);
|
|
13
|
+
expect(result.start.get("weekday")).toBe(1);
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
testSingleCase(chrono, "på måndag", new Date(2012, 7, 9), (result) => {
|
|
17
|
+
expect(result.index).toBe(0);
|
|
18
|
+
expect(result.text).toBe("på måndag");
|
|
19
|
+
|
|
20
|
+
expect(result.start).not.toBeNull();
|
|
21
|
+
expect(result.start.get("year")).toBe(2012);
|
|
22
|
+
expect(result.start.get("month")).toBe(8);
|
|
23
|
+
expect(result.start.get("day")).toBe(6);
|
|
24
|
+
expect(result.start.get("weekday")).toBe(1);
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
test("Test - Next/Last Week Expression", function () {
|
|
29
|
+
testSingleCase(chrono, "nästa måndag", new Date(2012, 7, 9), (result) => {
|
|
30
|
+
expect(result.index).toBe(0);
|
|
31
|
+
expect(result.text).toBe("nästa måndag");
|
|
32
|
+
|
|
33
|
+
expect(result.start).not.toBeNull();
|
|
34
|
+
expect(result.start.get("year")).toBe(2012);
|
|
35
|
+
expect(result.start.get("month")).toBe(8);
|
|
36
|
+
expect(result.start.get("day")).toBe(13);
|
|
37
|
+
expect(result.start.get("weekday")).toBe(1);
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
testSingleCase(chrono, "förra måndag", new Date(2012, 7, 9), (result) => {
|
|
41
|
+
expect(result.index).toBe(0);
|
|
42
|
+
expect(result.text).toBe("förra måndag");
|
|
43
|
+
|
|
44
|
+
expect(result.start).not.toBeNull();
|
|
45
|
+
expect(result.start.get("year")).toBe(2012);
|
|
46
|
+
expect(result.start.get("month")).toBe(8);
|
|
47
|
+
expect(result.start.get("day")).toBe(6);
|
|
48
|
+
expect(result.start.get("weekday")).toBe(1);
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
test("Test - Weekday variations", function () {
|
|
53
|
+
testSingleCase(chrono, "söndag", new Date(2012, 7, 9), (result) => {
|
|
54
|
+
expect(result.start.get("weekday")).toBe(0);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
testSingleCase(chrono, "tisdag", new Date(2012, 7, 9), (result) => {
|
|
58
|
+
expect(result.start.get("weekday")).toBe(2);
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
testSingleCase(chrono, "fredag", new Date(2012, 7, 9), (result) => {
|
|
62
|
+
expect(result.start.get("weekday")).toBe(5);
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
testSingleCase(chrono, "lördag", new Date(2012, 7, 9), (result) => {
|
|
66
|
+
expect(result.start.get("weekday")).toBe(6);
|
|
67
|
+
});
|
|
68
|
+
});
|
|
@@ -70,6 +70,42 @@ test("Test - Using reference instance with different timezone", function () {
|
|
|
70
70
|
});
|
|
71
71
|
});
|
|
72
72
|
|
|
73
|
+
test("Test - Using reference instance with custom timezones", function () {
|
|
74
|
+
// Sun Jun 06 2021 19:00:00 GMT+0900 (JST)
|
|
75
|
+
// Sun Jun 06 2021 11:00:00 GMT+0100 (BST)
|
|
76
|
+
const refInstant = new Date("Sun Jun 06 2021 19:00:00 GMT+0900 (JST)");
|
|
77
|
+
|
|
78
|
+
// Fictional timezones
|
|
79
|
+
const timezones = {
|
|
80
|
+
"JJJ": 540, // JJJ => GMT+0900 JST
|
|
81
|
+
"BBB": 60, // BBB => GMT+0100 BST
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
// "At 4pm tomorrow" at "Sun Jun 06 2021 11:00:00 (BBB = BST)"
|
|
85
|
+
testSingleCase(
|
|
86
|
+
chrono,
|
|
87
|
+
"At 4pm tomorrow",
|
|
88
|
+
{ instant: refInstant, timezone: "BBB" },
|
|
89
|
+
{ timezones: timezones },
|
|
90
|
+
(result) => {
|
|
91
|
+
const expectedInstant = new Date("Mon Jun 07 2021 16:00:00 GMT+0100 (BST)");
|
|
92
|
+
expect(result).toBeDate(expectedInstant);
|
|
93
|
+
}
|
|
94
|
+
);
|
|
95
|
+
|
|
96
|
+
// "At 4pm tomorrow" at "Sun Jun 06 2021 19:00:00 (JJJ = JST)"
|
|
97
|
+
testSingleCase(
|
|
98
|
+
chrono,
|
|
99
|
+
"At 4pm tomorrow",
|
|
100
|
+
{ instant: refInstant, timezone: "JJJ" },
|
|
101
|
+
{ timezones: timezones },
|
|
102
|
+
(result) => {
|
|
103
|
+
const expectedInstant = new Date("Mon Jun 07 2021 16:00:00 GMT+0900 (JST)");
|
|
104
|
+
expect(result).toBeDate(expectedInstant);
|
|
105
|
+
}
|
|
106
|
+
);
|
|
107
|
+
});
|
|
108
|
+
|
|
73
109
|
test("Test - Timezone difference on reference date #2", function () {
|
|
74
110
|
const refInstant = new Date("2024-02-21T10:00:00+1300");
|
|
75
111
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"weekdays.js","sourceRoot":"","sources":["../../../../src/common/calculation/weekdays.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"weekdays.js","sourceRoot":"","sources":["../../../../src/common/calculation/weekdays.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAyB,MAAM,eAAe,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAS5D,MAAM,UAAU,gCAAgC,CAC5C,SAAgC,EAChC,OAAgB,EAChB,QAAmC;IAEnC,MAAM,OAAO,GAAG,SAAS,CAAC,2BAA2B,EAAE,CAAC;IACxD,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAEnE,IAAI,UAAU,GAAG,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAClD,UAAU,GAAG,mBAAmB,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;IACvE,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAEtC,OAAO,UAAU,CAAC;AACtB,CAAC;AAQD,MAAM,UAAU,gBAAgB,CAAC,OAAa,EAAE,OAAgB,EAAE,QAAmC;IACjG,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,EAAa,CAAC;IAC/C,QAAQ,QAAQ,EAAE,CAAC;QACf,KAAK,MAAM;YACP,OAAO,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrD,KAAK,MAAM;YACP,OAAO,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtD,KAAK,MAAM;YAGP,IAAI,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC/B,OAAO,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACnD,CAAC;YAID,IAAI,UAAU,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACjC,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ;oBAAE,OAAO,CAAC,CAAC;gBAC1C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM;oBAAE,OAAO,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,OAAO,CAAC;YACvB,CAAC;YAID,IAAI,OAAO,GAAG,UAAU,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACpD,OAAO,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACJ,OAAO,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;YACzD,CAAC;IACT,CAAC;IACD,OAAO,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAa,EAAE,OAAgB;IACnE,MAAM,QAAQ,GAAG,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAE1D,OAAO,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAa,EAAE,OAAgB;IACnE,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IACpC,IAAI,YAAY,GAAG,OAAO,GAAG,UAAU,CAAC;IACxC,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACnB,YAAY,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,YAAY,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAa,EAAE,OAAgB;IACpE,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IACpC,IAAI,aAAa,GAAG,OAAO,GAAG,UAAU,CAAC;IACzC,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;QACrB,aAAa,IAAI,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,aAAa,CAAC;AACzB,CAAC"}
|