@dereekb/date 9.23.24 → 9.23.26

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 CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [9.23.26](https://github.com/dereekb/dbx-components/compare/v9.23.25-dev...v9.23.26) (2023-06-05)
6
+
7
+
8
+
9
+ ## [9.23.25](https://github.com/dereekb/dbx-components/compare/v9.23.24-dev...v9.23.25) (2023-05-31)
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * fixed isValidDateBlockIndex() ([0cdf4f8](https://github.com/dereekb/dbx-components/commit/0cdf4f8734a827ad77ab308512eacce61997c699))
15
+
16
+
17
+
5
18
  ## [9.23.24](https://github.com/dereekb/dbx-components/compare/v9.23.23-dev...v9.23.24) (2023-05-30)
6
19
 
7
20
 
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@dereekb/date",
3
- "version": "9.23.24",
3
+ "version": "9.23.26",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "types": "./src/index.d.ts",
7
7
  "dependencies": {},
8
8
  "peerDependencies": {
9
- "@dereekb/util": "9.23.24",
9
+ "@dereekb/util": "9.23.26",
10
10
  "lodash.isequal": "^4.5.0",
11
11
  "make-error": "^1.3.0",
12
12
  "class-validator": "^0.13.2",
@@ -1,12 +1,13 @@
1
- import { DayOfWeek, RequiredOnKeys, IndexNumber, IndexRange, IndexRef, UniqueModel, FactoryWithRequiredInput, FilterFunction, Milliseconds, Hours, MapFunction, SortCompareFunction, ArrayOrValue, Maybe } from '@dereekb/util';
1
+ import { DayOfWeek, RequiredOnKeys, IndexNumber, IndexRange, IndexRef, UniqueModel, FactoryWithRequiredInput, FilterFunction, Milliseconds, Hours, MapFunction, SortCompareFunction, ArrayOrValue, Maybe, TimezoneString } from '@dereekb/util';
2
2
  import { DateRange, DateRangeDayDistanceInput, DateRangeStart } from './date.range';
3
3
  import { DateDurationSpan } from './date.duration';
4
+ import { DateTimezoneUtcNormalInstance } from './date.timezone';
4
5
  /**
5
6
  * Index from 0 of which day this block represents.
6
7
  */
7
8
  export declare type DateBlockIndex = number;
8
9
  /**
9
- * Returns true if the index is positive.
10
+ * Returns true if the index is a non-negative integer.
10
11
  *
11
12
  * @param input
12
13
  */
@@ -58,10 +59,29 @@ export declare class DateBlockTiming extends DateDurationSpan {
58
59
  end: Date;
59
60
  constructor(template?: DateBlockTiming);
60
61
  }
61
- export interface CurrentDateBlockTimingOffsetData {
62
+ export interface CurrentDateBlockTimingUtcData {
63
+ originalUtcDate: Date;
64
+ originalUtcOffsetInHours: Hours;
65
+ }
66
+ export interface CurrentDateBlockTimingOffsetData extends CurrentDateBlockTimingUtcData {
62
67
  offset: Milliseconds;
63
68
  currentTimezoneOffsetInHours: Hours;
64
69
  }
70
+ /**
71
+ * Returns the date range from the start of the first event to the end time of the last event.
72
+ *
73
+ * @param timing
74
+ * @returns
75
+ */
76
+ export declare function dateBlockTimingFullRange(timing: Pick<DateBlockTiming, 'start' | 'end'>): DateRange;
77
+ /**
78
+ * Returns the date range from the start of the first event to the end time of the last event.
79
+ *
80
+ * @param timing
81
+ * @returns
82
+ */
83
+ export declare function dateBlockTimingEventRange(timing: Pick<DateBlockTiming, 'startsAt' | 'end'>): DateRange;
84
+ export declare function getCurrentDateBlockTimingUtcData(timing: DateRangeStart): CurrentDateBlockTimingUtcData;
65
85
  /**
66
86
  * The offset in milliseconds to the "real start date", the first second in the target day on in the system timezone.
67
87
  *
@@ -69,6 +89,17 @@ export interface CurrentDateBlockTimingOffsetData {
69
89
  */
70
90
  export declare function getCurrentDateBlockTimingOffsetData(timing: DateRangeStart): CurrentDateBlockTimingOffsetData;
71
91
  export declare function getCurrentDateBlockTimingOffset(timing: DateRangeStart): Milliseconds;
92
+ export declare type TimingIsExpectedTimezoneFunction = (timing: DateRangeStart) => boolean;
93
+ export declare function timingIsInExpectedTimezoneFunction(timezone: TimezoneString): (timing: DateRangeStart) => boolean;
94
+ export declare function timingIsInExpectedTimezone(timing: DateRangeStart, timezone: TimezoneString): boolean;
95
+ export declare type ChangeTimingToTimezoneFunction = <T extends DateRangeStart>(timing: T) => T;
96
+ /**
97
+ * Returns a copy of the input timing with the start time timezone in the given timezone.
98
+ *
99
+ * @param timing
100
+ */
101
+ export declare function changeTimingToTimezoneFunction(timezone: TimezoneString | Milliseconds | DateTimezoneUtcNormalInstance): ChangeTimingToTimezoneFunction;
102
+ export declare function changeTimingToTimezone<T extends DateRangeStart>(timing: T, timezone: TimezoneString | Milliseconds | DateTimezoneUtcNormalInstance): T;
72
103
  /**
73
104
  * Returns the startsAt date in the current timezone for the given date.
74
105
  *
@@ -238,25 +269,37 @@ export declare function dateBlocksExpansionFactory<B extends DateBlock | DateBlo
238
269
  export declare type DateBlocksDayTimingInfoFactoryConfig = Pick<DateBlocksExpansionFactoryConfig, 'timing' | 'rangeLimit'>;
239
270
  export interface DateBlockDayTimingInfo {
240
271
  /**
241
- * Input or calculated date.
272
+ * Input date or calculated date if provided a dayIndex.
242
273
  */
243
274
  date: Date;
244
275
  /**
245
- * Index for the day
276
+ * Index for the day for the input date.
246
277
  */
247
278
  dayIndex: DateBlockIndex;
248
279
  /**
249
- * Index for the previous/current execution.
280
+ * Index for the previous index/current index depending on the TimingInfo's daily execution.
250
281
  *
251
282
  * If the index is currently in progress given the timing, this will return the dayIndex.
252
283
  */
253
284
  currentIndex: DateBlockIndex;
254
285
  /**
255
- * Index for the next execution.
286
+ * Index for the next execution. Does not check if it is in range.
256
287
  *
257
288
  * If the index is currently in progress given the timing, this will return the dayIndex + 1.
258
289
  */
259
- nextIndex: DateBlockIndex;
290
+ nextIndex: Maybe<DateBlockIndex>;
291
+ /**
292
+ * Index for the next execution, if in the range, otherwise undefined.
293
+ *
294
+ * If the index is currently in progress given the timing, this will return the dayIndex + 1.
295
+ */
296
+ nextIndexInRange: Maybe<DateBlockIndex>;
297
+ /**
298
+ * Whether or not there are any inProgress or upcoming executions.
299
+ *
300
+ * True if nextIndexInRange is undefined and isInProgress is false.
301
+ */
302
+ isComplete: boolean;
260
303
  /**
261
304
  * Whether or not today's timing has already occured in it's entirety.
262
305
  */
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dateBlockRangeContainsDateBlock = exports.dateBlockIsWithinDateBlockRangeFunction = exports.modifyDateBlockToFitRange = exports.modifyDateBlocksToFitRange = exports.modifyDateBlocksToFitRangeFunction = exports.expandUniqueDateBlocksFunction = exports.groupUniqueDateBlocks = exports.dateBlockEndIndex = exports.dateBlockRangeHasRange = exports.expandDateBlockRange = exports.dateBlockRangesFullyCoverDateBlockRangeFunction = exports.dateBlockRangeBlocksCount = exports.dateBlockRangeBlocksCountInfo = exports.groupToDateBlockRanges = exports.sortDateBlockRanges = exports.sortDateBlockRangeAndSizeFunction = exports.dateBlockRangeIncludedByRangeFunction = exports.dateBlockRangeWithRange = exports.dateBlockRange = exports.DateBlockRange = exports.isDateWithinDateBlockRangeFunction = exports.isDateBlockWithinDateBlockRange = exports.isDateBlockWithinDateBlockRangeFunction = exports.dateBlocksInDateBlockRange = exports.dateBlockIndexRange = exports.dateBlockIndexRangeToDateBlockRange = exports.dateBlockRangeToDateBlockIndexRange = exports.dateBlocksDayInfoFactory = exports.dateBlocksExpansionFactory = exports.expandDateBlocks = exports.expandDateBlockCollection = exports.dateBlockDayOfWeekFactory = exports.isValidDateBlockTiming = exports.dateBlockTiming = exports.getRelativeDateForDateBlockTiming = exports.dateBlockTimingDateFactory = exports.getRelativeIndexForDateTiming = exports.dateTimingRelativeIndexArrayFactory = exports.dateTimingRelativeIndexFactory = exports.isValidDateBlockTimingStartDate = exports.getCurrentDateBlockTimingStartDate = exports.getCurrentDateBlockTimingOffset = exports.getCurrentDateBlockTimingOffsetData = exports.DateBlockTiming = exports.DateBlock = exports.isValidDateBlockIndex = void 0;
3
+ exports.modifyDateBlocksToFitRange = exports.modifyDateBlocksToFitRangeFunction = exports.expandUniqueDateBlocksFunction = exports.groupUniqueDateBlocks = exports.dateBlockEndIndex = exports.dateBlockRangeHasRange = exports.expandDateBlockRange = exports.dateBlockRangesFullyCoverDateBlockRangeFunction = exports.dateBlockRangeBlocksCount = exports.dateBlockRangeBlocksCountInfo = exports.groupToDateBlockRanges = exports.sortDateBlockRanges = exports.sortDateBlockRangeAndSizeFunction = exports.dateBlockRangeIncludedByRangeFunction = exports.dateBlockRangeWithRange = exports.dateBlockRange = exports.DateBlockRange = exports.isDateWithinDateBlockRangeFunction = exports.isDateBlockWithinDateBlockRange = exports.isDateBlockWithinDateBlockRangeFunction = exports.dateBlocksInDateBlockRange = exports.dateBlockIndexRange = exports.dateBlockIndexRangeToDateBlockRange = exports.dateBlockRangeToDateBlockIndexRange = exports.dateBlocksDayInfoFactory = exports.dateBlocksExpansionFactory = exports.expandDateBlocks = exports.expandDateBlockCollection = exports.dateBlockDayOfWeekFactory = exports.isValidDateBlockTiming = exports.dateBlockTiming = exports.getRelativeDateForDateBlockTiming = exports.dateBlockTimingDateFactory = exports.getRelativeIndexForDateTiming = exports.dateTimingRelativeIndexArrayFactory = exports.dateTimingRelativeIndexFactory = exports.isValidDateBlockTimingStartDate = exports.getCurrentDateBlockTimingStartDate = exports.changeTimingToTimezone = exports.changeTimingToTimezoneFunction = exports.timingIsInExpectedTimezone = exports.timingIsInExpectedTimezoneFunction = exports.getCurrentDateBlockTimingOffset = exports.getCurrentDateBlockTimingOffsetData = exports.getCurrentDateBlockTimingUtcData = exports.dateBlockTimingEventRange = exports.dateBlockTimingFullRange = exports.DateBlockTiming = exports.DateBlock = exports.isValidDateBlockIndex = void 0;
4
+ exports.dateBlockRangeContainsDateBlock = exports.dateBlockIsWithinDateBlockRangeFunction = exports.modifyDateBlockToFitRange = void 0;
4
5
  const tslib_1 = require("tslib");
5
6
  const util_1 = require("@dereekb/util");
6
7
  const date_range_1 = require("./date.range");
@@ -11,12 +12,12 @@ const class_transformer_1 = require("class-transformer");
11
12
  const date_timezone_1 = require("./date.timezone");
12
13
  const class_validator_1 = require("class-validator");
13
14
  /**
14
- * Returns true if the index is positive.
15
+ * Returns true if the index is a non-negative integer.
15
16
  *
16
17
  * @param input
17
18
  */
18
19
  function isValidDateBlockIndex(input) {
19
- return input > 0;
20
+ return input >= 0 && Number.isInteger(input);
20
21
  }
21
22
  exports.isValidDateBlockIndex = isValidDateBlockIndex;
22
23
  class DateBlock {
@@ -56,23 +57,53 @@ tslib_1.__decorate([
56
57
  ], DateBlockTiming.prototype, "end", void 0);
57
58
  exports.DateBlockTiming = DateBlockTiming;
58
59
  /**
59
- * The offset in milliseconds to the "real start date", the first second in the target day on in the system timezone.
60
+ * Returns the date range from the start of the first event to the end time of the last event.
60
61
  *
61
62
  * @param timing
63
+ * @returns
62
64
  */
63
- function getCurrentDateBlockTimingOffsetData(timing) {
65
+ function dateBlockTimingFullRange(timing) {
66
+ return { start: timing.start, end: timing.end };
67
+ }
68
+ exports.dateBlockTimingFullRange = dateBlockTimingFullRange;
69
+ /**
70
+ * Returns the date range from the start of the first event to the end time of the last event.
71
+ *
72
+ * @param timing
73
+ * @returns
74
+ */
75
+ function dateBlockTimingEventRange(timing) {
76
+ return { start: timing.startsAt, end: timing.end };
77
+ }
78
+ exports.dateBlockTimingEventRange = dateBlockTimingEventRange;
79
+ function getCurrentDateBlockTimingUtcData(timing) {
64
80
  const start = timing.start;
65
81
  const dateHours = start.getUTCHours();
66
82
  // if it is a positive offset, then the date is in the future so we subtract the offset from 24 hours to get the proper offset.
67
- const originalUtcOffset = dateHours > 12 ? 24 - dateHours : -dateHours;
68
- const originalUtcDate = (0, date_fns_1.addHours)(start, originalUtcOffset); // convert to original UTC
83
+ const originalUtcOffsetInHours = dateHours > 12 ? 24 - dateHours : -dateHours;
84
+ const originalUtcDate = (0, date_fns_1.addHours)(start, originalUtcOffsetInHours); // convert to original UTC
85
+ return {
86
+ originalUtcDate,
87
+ originalUtcOffsetInHours
88
+ };
89
+ }
90
+ exports.getCurrentDateBlockTimingUtcData = getCurrentDateBlockTimingUtcData;
91
+ /**
92
+ * The offset in milliseconds to the "real start date", the first second in the target day on in the system timezone.
93
+ *
94
+ * @param timing
95
+ */
96
+ function getCurrentDateBlockTimingOffsetData(timing) {
97
+ const { originalUtcOffsetInHours, originalUtcDate } = getCurrentDateBlockTimingUtcData(timing);
69
98
  const currentTimezoneOffsetInHours = (0, date_timezone_1.getCurrentSystemOffsetInHours)(originalUtcDate); // get the offset as it is on that day
70
99
  // calculate the true offset
71
- let offset = originalUtcOffset - currentTimezoneOffsetInHours;
100
+ let offset = originalUtcOffsetInHours - currentTimezoneOffsetInHours;
72
101
  if (offset === -24) {
73
102
  offset = 0; // auckland can return -24 for itself
74
103
  }
75
104
  return {
105
+ originalUtcDate,
106
+ originalUtcOffsetInHours,
76
107
  offset: (0, date_fns_1.hoursToMilliseconds)(offset),
77
108
  currentTimezoneOffsetInHours
78
109
  };
@@ -82,6 +113,40 @@ function getCurrentDateBlockTimingOffset(timing) {
82
113
  return getCurrentDateBlockTimingOffsetData(timing).offset;
83
114
  }
84
115
  exports.getCurrentDateBlockTimingOffset = getCurrentDateBlockTimingOffset;
116
+ function timingIsInExpectedTimezoneFunction(timezone) {
117
+ const normal = (0, date_timezone_1.dateTimezoneUtcNormal)({ timezone });
118
+ return (timing) => {
119
+ const { start } = timing;
120
+ const offset = normal.systemDateToTargetDateOffset(start);
121
+ const expectedTimingOffset = getCurrentDateBlockTimingOffset(timing);
122
+ return offset === expectedTimingOffset;
123
+ };
124
+ }
125
+ exports.timingIsInExpectedTimezoneFunction = timingIsInExpectedTimezoneFunction;
126
+ function timingIsInExpectedTimezone(timing, timezone) {
127
+ return timingIsInExpectedTimezoneFunction(timezone)(timing);
128
+ }
129
+ exports.timingIsInExpectedTimezone = timingIsInExpectedTimezone;
130
+ /**
131
+ * Returns a copy of the input timing with the start time timezone in the given timezone.
132
+ *
133
+ * @param timing
134
+ */
135
+ function changeTimingToTimezoneFunction(timezone) {
136
+ const normal = (0, date_timezone_1.dateTimezoneUtcNormal)(timezone);
137
+ return (timing) => {
138
+ const baseTimingOffset = getCurrentDateBlockTimingUtcData(timing);
139
+ const startInUtc = baseTimingOffset.originalUtcDate;
140
+ const start = normal.targetDateToBaseDate(startInUtc);
141
+ const newTiming = Object.assign(Object.assign({}, timing), { start });
142
+ return newTiming;
143
+ };
144
+ }
145
+ exports.changeTimingToTimezoneFunction = changeTimingToTimezoneFunction;
146
+ function changeTimingToTimezone(timing, timezone) {
147
+ return changeTimingToTimezoneFunction(timezone)(timing);
148
+ }
149
+ exports.changeTimingToTimezone = changeTimingToTimezone;
85
150
  /**
86
151
  * Returns the startsAt date in the current timezone for the given date.
87
152
  *
@@ -393,6 +458,8 @@ function dateBlocksDayInfoFactory(config) {
393
458
  const hasOccuredToday = potentiallyInProgress && !isInProgress;
394
459
  const currentIndex = isInProgress || hasOccuredToday ? dayIndex : dayIndex - 1; // If not in progress and hasn't occured today, current index is the previous index.
395
460
  const nextIndex = currentIndex + 1;
461
+ const nextIndexInRange = checkIsInRange(nextIndex) ? nextIndex : undefined;
462
+ const isComplete = currentIndex >= 0 && !nextIndexInRange && (!isInRange || hasOccuredToday);
396
463
  return {
397
464
  now,
398
465
  date,
@@ -403,7 +470,9 @@ function dateBlocksDayInfoFactory(config) {
403
470
  isInProgress,
404
471
  isInRange,
405
472
  startsAtOnDay,
406
- endsAtOnDay
473
+ endsAtOnDay,
474
+ nextIndexInRange,
475
+ isComplete
407
476
  };
408
477
  };
409
478
  }
@@ -1 +1 @@
1
- {"version":3,"file":"date.block.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date.block.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.block.ts"],"names":[],"mappings":";;;;;AAAA,wCAAkd;AACld,6CAA6I;AAC7I,mDAAmD;AACnD,uCAA+P;AAC/P,iCAA4G;AAC5G,yDAAiD;AACjD,mDAA0J;AAC1J,qDAAoE;AAOpE;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,KAAqB;IACzD,OAAO,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC;AAFD,sDAEC;AAcD,MAAa,SAAS;IAMpB,YAAY,QAAoB;QAC9B,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;SACrB;IACH,CAAC;CACF;AAVC;IAAC,IAAA,0BAAM,GAAE;IACR,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,CAAC,CAAC;;oCACY;AAJrB,8BAWC;AAiCD,MAAa,eAAgB,SAAQ,gCAAgB;IAWnD,YAAY,QAA0B;QACpC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEhB,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;YAC5B,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;SACzB;IACH,CAAC;CACF;AAlBC;IAAC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;sCACT,IAAI;8CAAC;AAEb;IAAC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;sCACX,IAAI;4CAAC;AATb,0CAmBC;AAYD;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,MAA8C;IACrF,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;AAClD,CAAC;AAFD,4DAEC;AAED;;;;;GAKG;AACH,SAAgB,yBAAyB,CAAC,MAAiD;IACzF,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;AACrD,CAAC;AAFD,8DAEC;AAED,SAAgB,gCAAgC,CAAC,MAAsB;IACrE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAEtC,+HAA+H;IAC/H,MAAM,wBAAwB,GAAG,SAAS,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9E,MAAM,eAAe,GAAG,IAAA,mBAAQ,EAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC,CAAC,0BAA0B;IAE7F,OAAO;QACL,eAAe;QACf,wBAAwB;KACzB,CAAC;AACJ,CAAC;AAZD,4EAYC;AAED;;;;GAIG;AACH,SAAgB,mCAAmC,CAAC,MAAsB;IACxE,MAAM,EAAE,wBAAwB,EAAE,eAAe,EAAE,GAAG,gCAAgC,CAAC,MAAM,CAAC,CAAC;IAC/F,MAAM,4BAA4B,GAAG,IAAA,6CAA6B,EAAC,eAAe,CAAC,CAAC,CAAC,sCAAsC;IAE3H,4BAA4B;IAC5B,IAAI,MAAM,GAAU,wBAAwB,GAAG,4BAA4B,CAAC;IAE5E,IAAI,MAAM,KAAK,CAAC,EAAE,EAAE;QAClB,MAAM,GAAG,CAAC,CAAC,CAAC,qCAAqC;KAClD;IAED,OAAO;QACL,eAAe;QACf,wBAAwB;QACxB,MAAM,EAAE,IAAA,8BAAmB,EAAC,MAAM,CAAC;QACnC,4BAA4B;KAC7B,CAAC;AACJ,CAAC;AAjBD,kFAiBC;AAED,SAAgB,+BAA+B,CAAC,MAAsB;IACpE,OAAO,mCAAmC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;AAC5D,CAAC;AAFD,0EAEC;AAID,SAAgB,kCAAkC,CAAC,QAAwB;IACzE,MAAM,MAAM,GAAG,IAAA,qCAAqB,EAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEnD,OAAO,CAAC,MAAsB,EAAE,EAAE;QAChC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;QAC1D,MAAM,oBAAoB,GAAG,+BAA+B,CAAC,MAAM,CAAC,CAAC;QACrE,OAAO,MAAM,KAAK,oBAAoB,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AATD,gFASC;AAED,SAAgB,0BAA0B,CAAC,MAAsB,EAAE,QAAwB;IACzF,OAAO,kCAAkC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAC9D,CAAC;AAFD,gEAEC;AAID;;;;GAIG;AACH,SAAgB,8BAA8B,CAAC,QAAuE;IACpH,MAAM,MAAM,GAAG,IAAA,qCAAqB,EAAC,QAAQ,CAAC,CAAC;IAE/C,OAAO,CAA2B,MAAS,EAAE,EAAE;QAC7C,MAAM,gBAAgB,GAAG,gCAAgC,CAAC,MAAM,CAAC,CAAC;QAElE,MAAM,UAAU,GAAG,gBAAgB,CAAC,eAAe,CAAC;QACpD,MAAM,KAAK,GAAG,MAAM,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAEtD,MAAM,SAAS,mCACV,MAAM,KACT,KAAK,GACN,CAAC;QAEF,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC;AAhBD,wEAgBC;AAED,SAAgB,sBAAsB,CAA2B,MAAS,EAAE,QAAuE;IACjJ,OAAO,8BAA8B,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAC1D,CAAC;AAFD,wDAEC;AAED;;;;GAIG;AACH,SAAgB,kCAAkC,CAAC,MAA4B;IAC7E,MAAM,MAAM,GAAG,+BAA+B,CAAC,MAAM,CAAC,CAAC;IACvD,OAAO,IAAA,0BAAe,EAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAC/C,CAAC;AAHD,gFAGC;AAED,SAAgB,+BAA+B,CAAC,IAAU;IACxD,OAAO,IAAA,qBAAU,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAA,qBAAU,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAA,0BAAe,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACzF,CAAC;AAFD,0EAEC;AASD;;;;;GAKG;AACH,SAAgB,8BAA8B,CAAwD,MAAS;IAC7G,MAAM,SAAS,GAAG,kCAAkC,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAEjD,MAAM,OAAO,GAAG,CAAC,CAAC,KAA2B,EAAE,EAAE;QAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,KAAK,CAAC;SACd;aAAM;YACL,MAAM,WAAW,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC9C,MAAM,qBAAqB,GAAG,IAAA,yBAAc,EAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,iCAAiC;YAEzG,MAAM,QAAQ,GAAG,IAAA,4BAAiB,EAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YACrD,MAAM,IAAI,GAAG,QAAQ,GAAG,qBAAqB,CAAC;YAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;YAEzC,OAAO,UAAU,CAAC;SACnB;IACH,CAAC,CAA6D,CAAC;IAC/D,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC;IACzB,OAAO,OAA4C,CAAC;AACtD,CAAC;AApBD,wEAoBC;AASD;;;;GAIG;AACH,SAAgB,mCAAmC,CAAwD,YAA+C;IACxJ,MAAM,OAAO,GAAG,CAAC,CAAC,KAAoE,EAAE,EAAE;QACxF,MAAM,YAAY,GAAG,IAAA,cAAO,EAAC,KAAK,CAAC,CAAC;QACpC,MAAM,MAAM,GAAqB,EAAE,CAAC;QAEpC,YAAY,CAAC,OAAO,CAAC,CAAC,KAAsD,EAAE,EAAE;;YAC9E,IAAI,aAA+B,CAAC;YAEpC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,IAAA,aAAM,EAAC,KAAK,CAAC,EAAE;gBAC/C,IAAI,IAAA,wBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,aAAa,GAAG,IAAA,YAAK,EAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;iBAC/E;qBAAM;oBACL,aAAa,GAAG,IAAA,YAAK,EAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAA,KAAK,CAAC,EAAE,mCAAI,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;iBAC3D;aACF;iBAAM;gBACL,aAAa,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;aACvC;YAED,IAAA,0BAAmB,EAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAkE,CAAC;IACpE,OAAO,CAAC,aAAa,GAAG,YAAY,CAAC;IACrC,OAAO,OAAiD,CAAC;AAC3D,CAAC;AAzBD,kFAyBC;AAED;;;;;GAKG;AACH,SAAgB,6BAA6B,CAAC,MAA4B,EAAE,OAA6B,IAAI,IAAI,EAAE;IACjH,OAAO,8BAA8B,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AACtD,CAAC;AAFD,sEAEC;AASD;;;;;GAKG;AACH,SAAgB,0BAA0B,CAAwD,MAAS;IACzG,MAAM,SAAS,GAAG,kCAAkC,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,CAAC,CAAC,KAA2B,EAAE,EAAE;QAC/C,IAAI,IAAA,aAAM,EAAC,KAAK,CAAC,EAAE;YACjB,OAAO,KAAK,CAAC;SACd;aAAM;YACL,OAAO,IAAA,kBAAO,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,qFAAqF;SACxH;IACH,CAAC,CAAsD,CAAC;IACxD,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC;IACzB,OAAO,OAAwC,CAAC;AAClD,CAAC;AAXD,gEAWC;AAED;;;;;GAKG;AACH,SAAgB,iCAAiC,CAAC,MAA4B,EAAE,KAA2B;IACzG,OAAO,0BAA0B,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;AACnD,CAAC;AAFD,8EAEC;AAOD;;;;;;;;;;;;;GAaG;AACH,SAAgB,eAAe,CAAC,aAA+B,EAAE,UAAqC;IACpG,MAAM,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAC;IAEnC,IAAI,QAAQ,GAAG,qBAAc,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;KAC/E;IAED,IAAI,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAC;IACjC,IAAI,mBAA2B,CAAC;IAEhC,IAAI,SAA2B,CAAC;IAChC,IAAI,KAAgB,CAAC;IAErB,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,mBAAmB,GAAG,UAAU,GAAG,CAAC,CAAC;QACrC,KAAK,GAAG,IAAA,sBAAS,EAAC,EAAE,IAAI,EAAE,0BAAa,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC,CAAC;KAC/F;SAAM,IAAI,IAAA,wBAAW,EAAC,UAAU,CAAC,EAAE;QAClC,KAAK,GAAG,UAAU,CAAC;QACnB,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC;QAE7B,IAAI,CAAC,+BAA+B,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YACtD,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;SACnG;QAED,mBAAmB,GAAG,IAAA,2BAAgB,EAAC,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe;KAC1F;SAAM;QACL,SAAS,GAAG,QAAQ,CAAC,CAAC,2BAA2B;QACjD,mBAAmB,GAAG,UAAU,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC9C,KAAK,GAAG,IAAA,sBAAS,EAAC,EAAE,IAAI,EAAE,0BAAa,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;KACtG;IAED,IAAI,SAAS,IAAI,IAAI,EAAE;QACrB,iFAAiF;QACjF,QAAQ,GAAG,IAAA,kCAA2B,EAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAEpE,MAAM,kBAAkB,GAAG,IAAA,mBAAQ,EAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAE3D,IAAI,kBAAkB,EAAE;YACtB,QAAQ,GAAG,IAAA,kBAAO,EAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,wBAAwB;YACzD,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,oDAAoD;SACjH;KACF;SAAM;QACL,QAAQ,GAAG,IAAA,wBAAiB,EAAC,QAAQ,CAAC,CAAC,CAAC,+CAA+C;QACvF,uFAAuF;KACxF;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAE1B,sEAAsE;IACtE,MAAM,SAAS,GAAG,IAAA,kBAAO,EAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;IACzD,MAAM,GAAG,GAAS,IAAA,qBAAU,EAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAElD,OAAO;QACL,KAAK;QACL,GAAG;QACH,QAAQ;QACR,QAAQ;KACT,CAAC;AACJ,CAAC;AA1DD,0CA0DC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,MAAuB;IAC5D,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAE3C,MAAM,EACJ,MAAM,EACN,4BAA4B,EAAE,kBAAkB,CAAC,wCAAwC;MAC1F,GAAG,mCAAmC,CAAC,MAAM,CAAC,CAAC;IAEhD;;OAEG;IACH,MAAM,WAAW,GAAG,IAAA,0BAAe,EAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1D,MAAM,YAAY,GAAG,IAAA,mCAAwB,EAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACrE,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAElD,IAAI,OAAO,GAAY,KAAK,CAAC;IAE7B,IACE,QAAQ,IAAI,qBAAc;QAC1B,CAAC,UAAU,IAAI,4BAA4B;QAC3C,YAAY,IAAI,CAAC,IAAI,wCAAwC;QAC7D,YAAY,GAAG,gBAAS,CAAC,2CAA2C;MACpE;QACA,MAAM,SAAS,GAAG,IAAA,6CAA6B,EAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5D,MAAM,mBAAmB,GAAG,SAAS,GAAG,kBAAkB,CAAC;QAE3D,MAAM,sBAAsB,GAAG,IAAA,mBAAQ,EAAC,IAAA,qBAAU,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAC,CAAC;QACzF,MAAM,UAAU,GAAG,IAAA,mCAAwB,EAAC,QAAQ,EAAE,sBAAsB,CAAC,GAAG,gBAAS,CAAC;QAC1F,OAAO,GAAG,UAAU,KAAK,CAAC,CAAC;KAC5B;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAhCD,wDAgCC;AAOD;;;;;GAKG;AACH,SAAgB,yBAAyB,CAAC,oBAAsC;IAC9E,MAAM,eAAe,GAAG,OAAO,oBAAoB,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAE,oBAAoB,CAAC,SAAS,EAAgB,CAAC;IAC1I,OAAO,CAAC,KAAqB,EAAE,EAAE,CAAC,IAAA,iBAAU,EAAC,eAAe,EAAE,KAAK,CAAC,CAAC;AACvE,CAAC;AAHD,8DAGC;AAmBD;;;;;GAKG;AACH,SAAgB,yBAAyB,CAAkC,UAAkC;IAC3G,OAAO,gBAAgB,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;AAChE,CAAC;AAFD,8DAEC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAkC,MAAuB,EAAE,MAAW;IACpG,OAAO,0BAA0B,CAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAC3D,CAAC;AAFD,4CAEC;AAuCD;;;;;GAKG;AACH,SAAgB,0BAA0B,CAAmD,MAAwC;IACnI,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,qBAAqB,GAAG,MAAM,CAAC,gBAAgB,EAAE,qBAAqB,GAAG,MAAM,CAAC,gBAAgB,EAAE,GAAG,MAAM,CAAC;IAC1M,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IACjD,MAAM,UAAU,GAAG,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAE7J,MAAM,SAAS,GAAG,IAAA,8BAAuB,EAAC,EAAE,UAAU,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC;IACpF,MAAM,MAAM,GAAsB,IAAA,2BAAoB,EAAI,CAAC,CAAI,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IACjG,MAAM,kBAAkB,GAA6C,uBAAuB,aAAvB,uBAAuB,cAAvB,uBAAuB,GAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAE7G,OAAO,CAAC,KAAyC,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;QAC3D,MAAM,KAAK,GAA+B,EAAE,CAAC;QAE7C,IAAI,eAAe,GAAG,CAAC,CAAC;QAExB,SAAS,aAAa,CAAC,KAAQ,EAAE,UAAkB;YACjD,sFAAsF;YACtF,eAAe,IAAI,CAAC,CAAC;YAErB,IAAI,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE;gBAC7B,MAAM,QAAQ,GAAG,IAAA,kBAAO,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC7C,MAAM,YAAY,mCACb,KAAK,KACR,QAAQ;oBACR,QAAQ,GACT,CAAC;gBAEF,+BAA+B;gBAC/B,IAAI,kBAAkB,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE;oBAChD,IAAI,KAAK,CAAC,MAAM,IAAI,qBAAqB,EAAE;wBACzC,eAAe,GAAG,qBAAqB,CAAC,CAAC,uBAAuB;qBACjE;yBAAM;wBACL,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;qBAC1B;iBACF;aACF;QACH,CAAC;QAED,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACzB,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE;gBACjC,0DAA0D;gBAC1D,IAAA,YAAK,EAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC3C,MAAM,YAAY,mCAAQ,KAAK,KAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAE,CAAC,CAAC,0BAA0B;oBACvE,aAAa,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;oBAE7C,wDAAwD;oBACxD,OAAO,eAAe,IAAI,qBAAqB,CAAC;gBAClD,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,aAAa,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;aACvC;YAED,OAAO,eAAe,IAAI,qBAAqB,CAAC,CAAC,4EAA4E;QAC/H,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;AACJ,CAAC;AAzDD,gEAyDC;AAwED,SAAgB,wBAAwB,CAAC,MAA4C;IACnF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IACtC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IACtC,MAAM,UAAU,GAAG,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAC7J,MAAM,cAAc,GAAG,IAAA,8BAAuB,EAAC,EAAE,UAAU,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC;IACzF,MAAM,eAAe,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAEtD,OAAO,CAAC,KAA2B,EAAE,QAAe,EAAE,EAAE;QACtD,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAA,iCAA0B,EAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/F,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QAE3C,MAAM,GAAG,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,IAAI,CAAC;QAE7B,MAAM,aAAa,GAAG,IAAA,kCAA2B,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,IAAA,qBAAU,EAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QACxD,MAAM,qBAAqB,GAAG,CAAC,IAAA,kBAAO,EAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,6EAA6E;QAEzI,MAAM,YAAY,GAAG,qBAAqB,IAAI,CAAC,IAAA,kBAAO,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACzE,MAAM,eAAe,GAAG,qBAAqB,IAAI,CAAC,YAAY,CAAC;QAE/D,MAAM,YAAY,GAAmB,YAAY,IAAI,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,oFAAoF;QACpL,MAAM,SAAS,GAAmB,YAAY,GAAG,CAAC,CAAC;QACnD,MAAM,gBAAgB,GAA0B,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;QAElG,MAAM,UAAU,GAAG,YAAY,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,SAAS,IAAI,eAAe,CAAC,CAAC;QAE7F,OAAO;YACL,GAAG;YACH,IAAI;YACJ,QAAQ;YACR,YAAY;YACZ,SAAS;YACT,eAAe;YACf,YAAY;YACZ,SAAS;YACT,aAAa;YACb,WAAW;YACX,gBAAgB;YAChB,UAAU;SACX,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AA3CD,4DA2CC;AASD,SAAgB,mCAAmC,CAAC,KAAqB;;IACvE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAA,KAAK,CAAC,EAAE,mCAAI,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;AACpE,CAAC;AAFD,kFAEC;AAED,SAAgB,mCAAmC,CAAC,KAA0B;IAC5E,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;AACvD,CAAC;AAFD,kFAEC;AAED;;;;;;;;GAQG;AACH,SAAgB,mBAAmB,CAAC,MAAuB,EAAE,KAAiC,EAAE,gBAAgB,GAAG,IAAI;IACrH,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IACjD,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,QAAQ,GAAG,IAAA,2BAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IAEvD,IAAI,KAAK,EAAE;QACT,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,IAAA,2BAAgB,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACnD,MAAM,SAAS,GAAG,IAAA,4BAAiB,EAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;QACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtC,IAAI,gBAAgB,EAAE;YACpB,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACxC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;SACzC;aAAM;YACL,QAAQ,GAAG,QAAQ,CAAC;YACpB,QAAQ,GAAG,QAAQ,CAAC;SACrB;KACF;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAChC,CAAC;AArBD,kDAqBC;AAED;;;;;;GAMG;AACH,SAAgB,0BAA0B,CAAuC,MAAW,EAAE,KAA8B;IAC1H,MAAM,+BAA+B,GAAG,uCAAuC,CAAC,KAAK,CAAC,CAAC;IACvF,OAAO,MAAM,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;AACxD,CAAC;AAHD,gEAGC;AASD,SAAgB,uCAAuC,CAAC,UAAgD;IACtG,MAAM,KAAK,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAClD,OAAO,CAAC,KAA2C,EAAE,EAAE;;QACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,KAAK,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;SACtB;QAED,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE;YACtB,MAAM,EAAE,GAAG,MAAC,KAAwB,CAAC,EAAE,mCAAI,KAAK,CAAC,CAAC,CAAC;YACnD,OAAO,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC;SACvB;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;AACJ,CAAC;AAdD,0FAcC;AAED;;;;;;GAMG;AACH,SAAgB,+BAA+B,CAAC,KAA2C,EAAE,QAA8C;IACzI,OAAO,uCAAuC,CAAC,KAAK,CAAC,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC3F,CAAC;AAFD,0EAEC;AAyBD,SAAgB,kCAAkC,CAAC,MAAwC;IACzF,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IACxD,IAAI,KAAK,GAAqB,UAAU,CAAC;IAEzC,IAAI,SAA4D,CAAC;IACjE,IAAI,UAAkD,CAAC;IAEvD,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,UAAU,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC;KAChC;SAAM,IAAI,IAAA,aAAM,EAAC,UAAU,CAAC,EAAE;QAC7B,SAAS,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;KACnC;SAAM,IAAI,IAAA,6BAAgB,EAAC,UAAU,CAAC,EAAE;QACvC,SAAS,GAAG,UAAU,CAAC;KACxB;SAAM;QACL,UAAU,GAAG,UAAwC,CAAC;KACvD;IAED,IAAI,KAAK,IAAI,IAAI,EAAE;QACjB,IAAI,SAAS,EAAE;YACb,KAAK,GAAG,UAAkB,CAAC;SAC5B;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,qGAAqG,CAAC,CAAC;SACxH;KACF;IAED,MAAM,YAAY,GAAG,8BAA8B,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAE/D,SAAS,4BAA4B,CAAC,KAA0C;QAC9E,MAAM,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,GAAG,GAAiB,KAAmB,CAAC,GAAG,CAAC;QAClD,MAAM,EAAE,GAAkB,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,UAAU,EAAE;QACf,IAAI,SAAS,EAAE;YACb,UAAU,GAAG,4BAA4B,CAAC,SAAS,CAAC,CAAC;SACtD;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAAC,CAAC,kBAAkB;SACzH;KACF;IAED,MAAM,+BAA+B,GAAG,uCAAuC,CAAC,UAAU,CAAC,CAAC;IAE5F,OAAO,CAAC,KAAsC,EAAE,EAAE;QAChD,IAAI,KAAkD,CAAC;QAEvD,IAAI,IAAA,aAAM,EAAC,KAAK,CAAC,EAAE;YACjB,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;SAC7B;aAAM,IAAI,IAAA,6BAAgB,EAAC,KAAK,CAAC,EAAE;YAClC,KAAK,GAAG,4BAA4B,CAAC,KAAK,CAAC,CAAC;SAC7C;aAAM;YACL,KAAK,GAAG,KAAK,CAAC;SACf;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,KAAK,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;SACtB;QAED,OAAO,+BAA+B,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC,CAAC;AACJ,CAAC;AA7DD,gFA6DC;AAeD,MAAa,cAAe,SAAQ,SAAS;IAO3C,YAAY,QAAyB;QACnC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC;SACvB;IACH,CAAC;CACF;AAZC;IAAC,IAAA,0BAAM,GAAE;IACR,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,qBAAG,EAAC,CAAC,CAAC,CAAC,yEAAyE;;;0CAC7D;AALtB,wCAaC;AAaD;;;;;;GAMG;AACH,SAAgB,cAAc,CAAC,CAAS,EAAE,EAAW;IACnD,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,CAAC,EAAE,CAAC;AAC5B,CAAC;AAFD,wCAEC;AAED,SAAgB,uBAAuB,CAAC,mBAAgE;IACtG,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE;QAC3C,mBAAmB,GAAG,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC;KAClD;IAED,OAAO,cAAc,CAAC,mBAAmB,CAAC,CAAC,EAAG,mBAAsC,CAAC,EAAE,CAAC,CAAC;AAC3F,CAAC;AAND,0DAMC;AAOD;;;;;GAKG;AACH,SAAgB,qCAAqC,CAAC,UAA0B;;IAC9E,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;IACvB,MAAM,EAAE,GAAG,MAAA,UAAU,CAAC,EAAE,mCAAI,CAAC,CAAC;IAC9B,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;AACnD,CAAC;AAJD,sFAIC;AAED;;;;;;GAMG;AACH,SAAgB,iCAAiC;IAC/C,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,eAAC,OAAA,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAA,CAAC,CAAC,EAAE,mCAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAA,CAAC,CAAC,EAAE,mCAAI,CAAC,CAAC,CAAC,CAAC,CAAA,EAAA,CAAC;AAC9D,CAAC;AAFD,8EAEC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAA2B,KAAU;IACtE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAA,0CAAmC,GAAE,CAAC,CAAC;AAC3D,CAAC;AAFD,kDAEC;AAOD;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,KAAqC;;IAC1E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,OAAO,EAAE,CAAC;KACX;IAED,mCAAmC;IACnC,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAE1C,SAAS,uBAAuB,CAAC,WAAmB;QAClD,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,WAAW,CAAmB,CAAC;QACxD,OAAO;YACL,CAAC;YACD,EAAE,EAAE,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,CAAC;SACZ,CAAC;IACJ,CAAC;IAED,2BAA2B;IAC3B,IAAI,OAAO,GAA4B,uBAAuB,CAAC,CAAC,CAAC,CAAC;IAElE,MAAM,OAAO,GAA8B,EAAE,CAAC;IAE9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;QACzC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;QAE/C,IAAI,YAAY,EAAE;YAChB,4BAA4B;YAC5B,OAAO,CAAC,EAAE,GAAG,MAAC,MAAM,CAAC,CAAC,CAAoB,CAAC,EAAE,mCAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC9D;aAAM;YACL,6BAA6B;YAC7B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtB,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;SACtC;KACF;IAED,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtB,OAAO,OAAO,CAAC;AACjB,CAAC;AAtCD,wDAsCC;AAiBD;;;;;GAKG;AACH,SAAgB,6BAA6B,CAAC,mBAA6D;IACzG,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAA,cAAO,EAAC,mBAAmB,CAAC,CAAC,CAAC;IAEnE,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,qBAAqB;QAC9D,KAAK,IAAI,MAAM,CAAC;QAEhB,MAAM,IAAI,GAAG,IAAA,2BAAoB,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7C,KAAK,IAAI,IAAI,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,KAAK;QACL,KAAK;QACL,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;KACvC,CAAC;AACJ,CAAC;AAnBD,sEAmBC;AAED;;;;;GAKG;AACH,SAAgB,yBAAyB,CAAC,mBAA6D;IACrG,OAAO,6BAA6B,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC;AAClE,CAAC;AAFD,8DAEC;AAOD;;;;;GAKG;AACH,SAAgB,+CAA+C,CAAC,MAAoC;IAClG,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjH,OAAO,CAAC,UAA0B,EAAE,EAAE;QACpC,MAAM,EAAE,GAAG,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC7D,OAAO,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC;AACJ,CAAC;AAPD,0GAOC;AAED;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAqD,KAAQ;IAC/F,OAAO,IAAA,YAAK,EAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5D,uCAAY,KAAK,KAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAG,CAAC,0BAA0B;IAC3D,CAAC,CAAC,CAAC;AACL,CAAC;AAJD,oDAIC;AAYD;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,KAAuC;IAC5E,OAAQ,KAAwB,CAAC,EAAE,IAAI,IAAI,IAAM,KAAwB,CAAC,EAAa,GAAG,KAAK,CAAC,CAAC,CAAC;AACpG,CAAC;AAFD,wDAEC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,KAAuC;;IACvE,OAAO,MAAC,KAAwB,CAAC,EAAE,mCAAI,KAAK,CAAC,CAAC,CAAC;AACjD,CAAC;AAFD,8CAEC;AAYD;;GAEG;AACH,SAAgB,qBAAqB,CAA6C,KAAU;;IAC1F,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAE/C,MAAM,CAAC,GAAG,CAAC,CAAC;IACZ,IAAI,EAAU,CAAC;IAEf,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,EAAE,GAAG,CAAC,CAAC;KACR;SAAM;QACL,MAAM,SAAS,GAAG,IAAA,gBAAS,EAAC,MAAM,CAAC,CAAC;QACpC,EAAE,GAAG,MAAC,SAA4B,CAAC,EAAE,mCAAI,SAAS,CAAC,CAAC,CAAC;KACtD;IAED,OAAO;QACL,CAAC;QACD,EAAE;QACF,MAAM;KACP,CAAC;AACJ,CAAC;AAlBD,sDAkBC;AAqED,SAAgB,8BAA8B,CAA6C,MAAuC;IAChI,MAAM,EAAE,YAAY,GAAG,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,GAAG,MAAM,CAAC;IACxI,MAAM,eAAe,GAAG,oBAAoB,aAApB,oBAAoB,cAApB,oBAAoB,GAAI,MAAM,CAAC;IACvD,MAAM,eAAe,GAAgB,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,MAAM,CAAC,gBAAgB,CAAC;IAC3E,MAAM,WAAW,GAAG,gBAA+D,CAAC;IAEpF,IAAI,CAAC,WAAW,IAAI,IAAI,KAAK,MAAM,EAAE;QACnC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;KACvE;IAED,OAAO,CAAC,KAAyC,EAAE,SAA8C,EAAE,EAAE;QACnG,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/E,MAAM,MAAM,GAAoC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAEnH,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,MAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACpG,IAAA,0BAAmB,EACjB,MAAM,EACN,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CACzE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACzC;QAED,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,MAAM,SAAS,GAAQ,EAAE,CAAC;QAE1B,IAAI,OAAO,GAAkC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvD,IAAI,gBAA6B,CAAC;QAElC,IAAI,IAAI,GAAkC,MAAM,CAAC,CAAC,CAAC,CAAC;QACpD,IAAI,cAA2B,CAAC;QAEhC,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,QAAQ,GAAW,YAAY,GAAG,CAAC,CAAC;QAExC,SAAS,iBAAiB,CAAC,UAAa,EAAE,CAAS,EAAE,UAAkB,CAAC;YACtE,uCAAuC;YACvC,MAAM,oBAAoB,GAAG,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAEhD,IAAI,oBAAoB,GAAG,CAAC,EAAE;gBAC5B,yCAAyC;gBACzC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;gBAC3D,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;aACnC;YAED,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;YAEnD,MAAM,KAAK,mCACN,UAAU,KACb,CAAC;gBACD,EAAE,GACH,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEnB,QAAQ,GAAG,EAAE,CAAC;YAEd,OAAO,KAAK,CAAC;QACf,CAAC;QAED,SAAS,cAAc;YACrB,yDAAyD;YACzD,IAAI,UAAU,IAAI,IAAI,IAAI,QAAQ,GAAG,UAAU,EAAE;gBAC/C,WAAW,CAAC,QAAQ,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC;aACvC;QACH,CAAC;QAED,SAAS,WAAW,CAAC,CAAS,EAAE,UAAkB,CAAC;YACjD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;YAE9C,IAAI,IAAI,KAAK,MAAM,EAAE;gBACnB,MAAM,cAAc,GAA4B;oBAC9C,CAAC;oBACD,EAAE;iBACH,CAAC;gBAEF,MAAM,KAAK,GAAM,WAAW,CAAC,cAAc,CAAC,CAAC;gBAC7C,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,CAAC,CAAC,CAAC;aACtC;iBAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC5B,+CAA+C;gBAC/C,MAAM,aAAa,GAAG,IAAA,gBAAS,EAAC,MAAM,CAAC,CAAC;gBACvC,aAAgC,CAAC,EAAE,GAAG,OAAO,CAAC;aAChD;YAED,QAAQ,GAAG,EAAE,CAAC;QAChB,CAAC;QAED,SAAS,cAAc,CAAC,GAAO,EAAE,QAAiC;YAChE,CAAC,IAAI,CAAC,CAAC;YACP,OAAO,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAE,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAoC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAChG,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAErB,IAAI,IAAI,EAAE;gBACR,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAE9B,gDAAgD;gBAChD,IAAI,cAAc,GAAG,eAAe,EAAE;oBACpC,YAAY,GAAG,KAAK,CAAC;iBACtB;qBAAM;oBACL,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAEnD,IAAI,YAAY,IAAI,QAAQ,EAAE;wBAC5B,cAAc,EAAE,CAAC,CAAC,6DAA6D;wBAC/E,cAAc,EAAE,CAAC;qBAClB;iBACF;aACF;iBAAM;gBACL,YAAY,GAAG,KAAK,CAAC;aACtB;QACH,CAAC;QAED,SAAS,OAAO,CAAC,IAAmC;YAClD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,SAAS,cAAc;YACrB,OAAO,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;QAED,SAAS,WAAW;YAClB,OAAO,CAAC,IAAI,CAAC,CAAC;YACd,CAAC,IAAI,CAAC,CAAC;YACP,cAAc,EAAE,CAAC;QACnB,CAAC;QAED,IAAI,YAAY,GAAY,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,sEAAsE;QAEjH;;WAEG;QACH,SAAS,2BAA2B;YAClC,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,EAAE;gBACtC,OAAO,eAAe,KAAK,SAAS,CAAC;aACtC;iBAAM;gBACL,OAAO,OAAO,CAAC,QAAQ,KAAK,eAAe,CAAC;aAC7C;QACH,CAAC;QAED,OAAO,YAAY,EAAE;YACnB,gBAAgB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YACnC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAE9B,MAAM,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEnD,IAAI,cAAc,GAAG,YAAY,IAAI,eAAe,GAAG,YAAY,EAAE;gBACnE,wEAAwE;gBAExE,cAAc,EAAE,CAAC;gBACjB,cAAc,EAAE,CAAC;aAClB;iBAAM,IAAI,gBAAgB,KAAK,cAAc,EAAE;gBAC9C,sEAAsE;gBACtE,IAAI,YAAY,KAAK,eAAe,EAAE;oBACpC,oFAAoF;oBACpF,IAAI,2BAA2B,EAAE,EAAE;wBACjC,cAAc;wBACd,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;wBACjE,oCAAoC;wBACpC,WAAW,EAAE,CAAC;qBACf;yBAAM;wBACL,sBAAsB;wBACtB,cAAc,EAAE,CAAC;wBACjB,kBAAkB;wBAClB,cAAc,EAAE,CAAC;qBAClB;iBACF;qBAAM,IAAI,YAAY,GAAG,eAAe,EAAE;oBACzC,iBAAiB;oBACjB,IAAI,2BAA2B,EAAE,EAAE;wBACjC,cAAc;wBACd,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;wBACpE,yCAAyC;wBACzC,cAAc,iCAAM,IAAI,CAAC,KAAK,KAAE,CAAC,EAAE,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,YAAY,KAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;qBAC5F;yBAAM;wBACL,EAAE;wBACF,cAAc,EAAE,CAAC;wBACjB,cAAc,EAAE,CAAC;qBAClB;iBACF;qBAAM;oBACL,8CAA8C;oBAC9C,IAAI,2BAA2B,EAAE,EAAE;wBACjC,0BAA0B;wBAC1B,OAAO,CAAC,IAAI,CAAC,CAAC;wBACd,kCAAkC;wBAClC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;qBACjD;yBAAM;wBACL,0DAA0D;wBAC1D,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;wBAC5D,0CAA0C;wBAC1C,cAAc,iCAAM,OAAO,CAAC,KAAK,KAAE,CAAC,EAAE,YAAY,GAAG,CAAC,EAAE,EAAE,EAAE,eAAe,KAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;qBAClG;iBACF;aACF;iBAAM;gBACL,wBAAwB;gBACxB,IAAI,eAAe,IAAI,cAAc,EAAE;oBACrC,iBAAiB;oBACjB,IAAI,2BAA2B,EAAE,EAAE;wBACjC,cAAc;wBACd,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;wBAEpE,IAAI,YAAY,GAAG,eAAe,EAAE;4BAClC,yCAAyC;4BACzC,cAAc,iCAAM,IAAI,CAAC,KAAK,KAAE,CAAC,EAAE,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,YAAY,KAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;yBAC5F;6BAAM;4BACL,oBAAoB;4BACpB,cAAc,EAAE,CAAC;yBAClB;qBACF;yBAAM;wBACL,4CAA4C;wBAC5C,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC;wBAEvE,2CAA2C;wBAC3C,IAAI,YAAY,GAAG,eAAe,EAAE;4BAClC,eAAe;4BACf,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;4BAE5D,4BAA4B;4BAC5B,cAAc,iCAAM,OAAO,CAAC,KAAK,KAAE,CAAC,EAAE,YAAY,GAAG,CAAC,EAAE,EAAE,EAAE,eAAe,KAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;yBAC/F;6BAAM;4BACL,mBAAmB;4BACnB,cAAc,EAAE,CAAC;yBAClB;qBACF;iBACF;qBAAM;oBACL,aAAa;oBAEb,wBAAwB;oBACxB,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;oBACpE,mBAAmB;oBACnB,cAAc,EAAE,CAAC;iBAClB;aACF;SACF;QAED,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,kEAAkE;YAClE,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAEtD,IAAI,YAAY,GAAG,YAAY,IAAI,YAAY,IAAI,QAAQ,IAAI,cAAc,GAAG,eAAe,EAAE;gBAC/F,6DAA6D;gBAC7D,cAAc,EAAE,CAAC;aAClB;iBAAM;gBACL,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;aACnH;YAED,cAAc,EAAE,CAAC;SAClB;aAAM,IAAI,IAAI,KAAK,MAAM,EAAE;YAC1B,cAAc,EAAE,CAAC;SAClB;QAED,MAAM,MAAM,GAAG;YACb,CAAC,EAAE,CAAC;YACJ,MAAM;YACN,SAAS;SACV,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAjQD,wEAiQC;AAOD;;GAEG;AACH,SAAgB,kCAAkC,CAAC,KAAqB;IACtE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,+BAA+B,GAAG,uCAAuC,CAAC,KAAK,CAAC,CAAC;IACvF,OAAO,CAAyD,KAAU,EAAE,EAAE,CAC5E,IAAA,wBAAiB,EACf,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACd,IAAI,MAAgB,CAAC;QAErB,MAAM,OAAO,GAAG,+BAA+B,CAAC,CAAC,CAAC,CAAC;QAEnD,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;YAEzD,IAAI,aAAa,EAAE;gBACjB,MAAM,mCACD,CAAC,KACJ,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EACzB,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,8BAA8B;mBAC5D,CAAC;aACH;SACF;aAAM;YACL,MAAM,GAAG,CAAC,CAAC;SACZ;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CACH,CAAC;AACN,CAAC;AA5BD,gFA4BC;AAED,SAAgB,0BAA0B,CAAyD,KAAqB,EAAE,KAAU;IAClI,OAAO,kCAAkC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC;AAFD,gEAEC;AAED,SAAgB,yBAAyB,CAAyD,KAAqB,EAAE,KAAQ;IAC/H,OAAO,0BAA0B,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAFD,8DAEC;AASD;;GAEG;AACU,QAAA,uCAAuC,GAAG,uCAAuC,CAAC;AAE/F;;GAEG;AACU,QAAA,+BAA+B,GAAG,+BAA+B,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { FactoryWithRequiredInput, MapFunction, Maybe } from '@dereekb/util';
2
+ import { DateTimezoneUtcNormalFunctionInput, DateTimezoneUtcNormalInstance, DateTimezoneUtcNormalInstanceTransformType } from './date.timezone';
2
3
  /**
3
4
  * Represents a start date.
4
5
  */
@@ -31,6 +32,13 @@ export declare class DateRange {
31
32
  end: Date;
32
33
  constructor(template: DateRange);
33
34
  }
35
+ /**
36
+ * Total number of days in the range. Minimum of 1 day.
37
+ *
38
+ * @param dateRange
39
+ * @returns
40
+ */
41
+ export declare function dateRangeDaysCount(dateRange: DateRange): number;
34
42
  /**
35
43
  * Returns true if the input is a DateRange.
36
44
  *
@@ -64,6 +72,18 @@ export declare enum DateRangeType {
64
72
  * Includes only the target month.
65
73
  */
66
74
  MONTH = "month",
75
+ /**
76
+ * Includes only the target minute.
77
+ */
78
+ MINUTE = "minute",
79
+ /**
80
+ * Includes only the target hour.
81
+ */
82
+ HOUR = "hour",
83
+ /**
84
+ * Range specified in hours with the input.
85
+ */
86
+ MINUTES_RANGE = "minutes_range",
67
87
  /**
68
88
  * Range specified in hours with the input.
69
89
  */
@@ -76,6 +96,10 @@ export declare enum DateRangeType {
76
96
  * Range specified in weeks with the input.
77
97
  */
78
98
  WEEKS_RANGE = "weeks_range",
99
+ /**
100
+ * Radius specified in minutes with the input.
101
+ */
102
+ MINUTES_RADIUS = "minutes_radius",
79
103
  /**
80
104
  * Radius specified in hours with the input.
81
105
  */
@@ -313,3 +337,7 @@ export declare function transformDateRangeDatesFunction(transform: MapFunction<D
313
337
  * TransformDateRangeDatesFunction that transforms the input dates to the start of the day.
314
338
  */
315
339
  export declare const transformDateRangeWithStartOfDay: TransformDateRangeDatesFunction;
340
+ export declare type TransformDateRangeToTimezoneFunction = TransformDateRangeDatesFunction & {
341
+ readonly _timezoneInstance: DateTimezoneUtcNormalInstance;
342
+ };
343
+ export declare function transformDateRangeToTimezoneFunction(timezoneInput: DateTimezoneUtcNormalFunctionInput, transformFn?: DateTimezoneUtcNormalInstanceTransformType): TransformDateRangeToTimezoneFunction;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.transformDateRangeWithStartOfDay = exports.transformDateRangeDatesFunction = exports.clampDateRangeToDateRange = exports.clampDateRangeFunction = exports.clampDateToDateRange = exports.clampDateFunction = exports.fitDateRangeToDayPeriod = exports.dateRangeOverlapsDateRangeFunction = exports.dateRangeOverlapsDateRange = exports.isDateRangeInDateRangeFunction = exports.isDateRangeInDateRange = exports.isDateInDateRangeFunction = exports.isDateInDateRange = exports.dateRangeState = exports.expandDaysForDateRange = exports.expandDaysForDateRangeFunction = exports.DEFAULT_EXPAND_DAYS_FOR_DATE_RANGE_MAX_EXPANSION_SIZE = exports.forEachDayInDateRange = exports.iterateDaysInDateRange = exports.iterateDaysInDateRangeFunction = exports.DEFAULT_ITERATE_DAYS_IN_DATE_RANGE_MAX_ITERATIONS = exports.dateRange = exports.DateRangeParams = exports.DateRangeState = exports.DateRangeType = exports.dateOrDateRangeToDateRange = exports.isFullDateRange = exports.isPartialDateRange = exports.isInfiniteDateRange = exports.isSameDateDayRange = exports.isSameDateRange = exports.isDateRange = exports.DateRange = exports.sortDateRangeStartAscendingCompareFunction = exports.isDateRangeStart = void 0;
3
+ exports.transformDateRangeToTimezoneFunction = exports.transformDateRangeWithStartOfDay = exports.transformDateRangeDatesFunction = exports.clampDateRangeToDateRange = exports.clampDateRangeFunction = exports.clampDateToDateRange = exports.clampDateFunction = exports.fitDateRangeToDayPeriod = exports.dateRangeOverlapsDateRangeFunction = exports.dateRangeOverlapsDateRange = exports.isDateRangeInDateRangeFunction = exports.isDateRangeInDateRange = exports.isDateInDateRangeFunction = exports.isDateInDateRange = exports.dateRangeState = exports.expandDaysForDateRange = exports.expandDaysForDateRangeFunction = exports.DEFAULT_EXPAND_DAYS_FOR_DATE_RANGE_MAX_EXPANSION_SIZE = exports.forEachDayInDateRange = exports.iterateDaysInDateRange = exports.iterateDaysInDateRangeFunction = exports.DEFAULT_ITERATE_DAYS_IN_DATE_RANGE_MAX_ITERATIONS = exports.dateRange = exports.DateRangeParams = exports.DateRangeState = exports.DateRangeType = exports.dateOrDateRangeToDateRange = exports.isFullDateRange = exports.isPartialDateRange = exports.isInfiniteDateRange = exports.isSameDateDayRange = exports.isSameDateRange = exports.isDateRange = exports.dateRangeDaysCount = exports.DateRange = exports.sortDateRangeStartAscendingCompareFunction = exports.isDateRangeStart = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const util_1 = require("@dereekb/util");
6
6
  const class_transformer_1 = require("class-transformer");
@@ -8,6 +8,7 @@ const class_validator_1 = require("class-validator");
8
8
  const date_fns_1 = require("date-fns");
9
9
  const date_1 = require("./date");
10
10
  const date_sort_1 = require("./date.sort");
11
+ const date_timezone_1 = require("./date.timezone");
11
12
  /**
12
13
  * Returns true if the input is a DateRangeStart.
13
14
  *
@@ -47,6 +48,16 @@ tslib_1.__decorate([
47
48
  tslib_1.__metadata("design:type", Date)
48
49
  ], DateRange.prototype, "end", void 0);
49
50
  exports.DateRange = DateRange;
51
+ /**
52
+ * Total number of days in the range. Minimum of 1 day.
53
+ *
54
+ * @param dateRange
55
+ * @returns
56
+ */
57
+ function dateRangeDaysCount(dateRange) {
58
+ return (0, date_fns_1.differenceInDays)(dateRange.end, dateRange.start) + 1;
59
+ }
60
+ exports.dateRangeDaysCount = dateRangeDaysCount;
50
61
  /**
51
62
  * Returns true if the input is a DateRange.
52
63
  *
@@ -107,6 +118,18 @@ var DateRangeType;
107
118
  * Includes only the target month.
108
119
  */
109
120
  DateRangeType["MONTH"] = "month";
121
+ /**
122
+ * Includes only the target minute.
123
+ */
124
+ DateRangeType["MINUTE"] = "minute";
125
+ /**
126
+ * Includes only the target hour.
127
+ */
128
+ DateRangeType["HOUR"] = "hour";
129
+ /**
130
+ * Range specified in hours with the input.
131
+ */
132
+ DateRangeType["MINUTES_RANGE"] = "minutes_range";
110
133
  /**
111
134
  * Range specified in hours with the input.
112
135
  */
@@ -119,6 +142,10 @@ var DateRangeType;
119
142
  * Range specified in weeks with the input.
120
143
  */
121
144
  DateRangeType["WEEKS_RANGE"] = "weeks_range";
145
+ /**
146
+ * Radius specified in minutes with the input.
147
+ */
148
+ DateRangeType["MINUTES_RADIUS"] = "minutes_radius";
122
149
  /**
123
150
  * Radius specified in hours with the input.
124
151
  */
@@ -218,6 +245,24 @@ function dateRange(input, inputRoundToMinute) {
218
245
  start = (0, date_fns_1.startOfMonth)(date);
219
246
  end = (0, date_fns_1.endOfMonth)(date);
220
247
  break;
248
+ case DateRangeType.HOUR:
249
+ start = (0, date_fns_1.startOfHour)(date);
250
+ end = (0, date_fns_1.endOfHour)(date);
251
+ break;
252
+ case DateRangeType.MINUTE:
253
+ start = (0, date_fns_1.startOfMinute)(date);
254
+ end = (0, date_fns_1.endOfMinute)(date);
255
+ break;
256
+ case DateRangeType.MINUTES_RANGE:
257
+ if (hasNegativeDistance) {
258
+ start = (0, date_fns_1.addMinutes)(date, distance);
259
+ end = date;
260
+ }
261
+ else {
262
+ start = date;
263
+ end = (0, date_fns_1.addMinutes)(date, distance);
264
+ }
265
+ break;
221
266
  case DateRangeType.HOURS_RANGE:
222
267
  if (hasNegativeDistance) {
223
268
  start = (0, date_fns_1.addHours)(date, distance);
@@ -248,6 +293,11 @@ function dateRange(input, inputRoundToMinute) {
248
293
  end = (0, date_fns_1.addDays)(date, distance * 7);
249
294
  }
250
295
  break;
296
+ case DateRangeType.MINUTES_RADIUS:
297
+ distance = Math.abs(distance);
298
+ start = (0, date_fns_1.addMinutes)(date, -distance);
299
+ end = (0, date_fns_1.addMinutes)(date, distance);
300
+ break;
251
301
  case DateRangeType.HOURS_RADIUS:
252
302
  distance = Math.abs(distance);
253
303
  start = (0, date_fns_1.addHours)(date, -distance);
@@ -555,4 +605,11 @@ exports.transformDateRangeDatesFunction = transformDateRangeDatesFunction;
555
605
  * TransformDateRangeDatesFunction that transforms the input dates to the start of the day.
556
606
  */
557
607
  exports.transformDateRangeWithStartOfDay = transformDateRangeDatesFunction(date_fns_1.startOfDay);
608
+ function transformDateRangeToTimezoneFunction(timezoneInput, transformFn = 'systemDateToTargetDate') {
609
+ const timezoneInstance = (0, date_timezone_1.dateTimezoneUtcNormal)(timezoneInput);
610
+ const fn = transformDateRangeDatesFunction(timezoneInstance.transformFunction(transformFn));
611
+ fn._timezoneInstance = timezoneInstance;
612
+ return fn;
613
+ }
614
+ exports.transformDateRangeToTimezoneFunction = transformDateRangeToTimezoneFunction;
558
615
  //# sourceMappingURL=date.range.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date.range.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.range.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date.range.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.range.ts"],"names":[],"mappings":";;;;AAAA,wCAAuI;AACvI,yDAAiD;AACjD,qDAAuE;AACvE,uCAAyQ;AACzQ,iCAA2D;AAC3D,2CAAiD;AACjD,mDAAuK;AASvK;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,KAAc;IAC7C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,IAAA,aAAM,EAAE,KAAwB,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAFD,4CAEC;AAED;;;;;;GAMG;AACU,QAAA,0CAA0C,GAAG,IAAA,8BAAkB,EAAiB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAqD,CAAC;AASjK,MAAa,SAAS;IAWpB,YAAY,QAAmB;QAC7B,IAAI,QAAQ,IAAI,IAAI,EAAE;YACpB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;YAC5B,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;SACzB;IACH,CAAC;CACF;AAhBC;IAAC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;sCACT,IAAI;wCAAC;AAEb;IAAC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;sCACX,IAAI;sCAAC;AATb,8BAiBC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAC,SAAoB;IACrD,OAAO,IAAA,2BAAgB,EAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC9D,CAAC;AAFD,gDAEC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,KAAc;IACxC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,IAAA,aAAM,EAAE,KAAmB,CAAC,KAAK,CAAC,IAAI,IAAA,aAAM,EAAE,KAAmB,CAAC,GAAG,CAAC,CAAC;AAC7G,CAAC;AAFD,kCAEC;AAED,SAAgB,eAAe,CAAC,CAA4B,EAAE,CAA4B;IACxF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAU,EAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,iBAAU,EAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACpF,CAAC;AAFD,0CAEC;AAED,SAAgB,kBAAkB,CAAC,CAA4B,EAAE,CAA4B;IAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,oBAAa,EAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,oBAAa,EAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAC1F,CAAC;AAFD,gDAEC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,KAAyB;IAC3D,OAAO,KAAK,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;AAClD,CAAC;AAFD,kDAEC;AAED,SAAgB,kBAAkB,CAAC,KAAyB;IAC1D,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AAC/E,CAAC;AAFD,gDAEC;AAED,SAAgB,eAAe,CAAC,KAAyB;IACvD,OAAO,KAAK,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;AAClD,CAAC;AAFD,0CAEC;AAID,SAAgB,0BAA0B,CAAC,gBAAiC,EAAE,GAAiB;;IAC7F,IAAI,IAAA,aAAM,EAAC,gBAAgB,CAAC,EAAE;QAC5B,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAC,GAAY,mCAAI,gBAAgB,EAAE,CAAC;KAC5E;SAAM;QACL,OAAO,gBAAgB,CAAC;KACzB;AACH,CAAC;AAND,gEAMC;AAED,IAAY,aAyDX;AAzDD,WAAY,aAAa;IACvB;;OAEG;IACH,4BAAW,CAAA;IACX;;OAEG;IACH,8BAAa,CAAA;IACb;;OAEG;IACH,gCAAe,CAAA;IACf;;OAEG;IACH,kCAAiB,CAAA;IACjB;;OAEG;IACH,8BAAa,CAAA;IACb;;OAEG;IACH,gDAA+B,CAAA;IAC/B;;OAEG;IACH,4CAA2B,CAAA;IAC3B;;OAEG;IACH,0CAAyB,CAAA;IACzB;;OAEG;IACH,4CAA2B,CAAA;IAC3B;;OAEG;IACH,kDAAiC,CAAA;IACjC;;OAEG;IACH,8CAA6B,CAAA;IAC7B;;OAEG;IACH,4CAA2B,CAAA;IAC3B;;OAEG;IACH,8CAA6B,CAAA;IAC7B;;OAEG;IACH,kDAAiC,CAAA;AACnC,CAAC,EAzDW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAyDxB;AAED,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;IAmB1B,YAAY,QAAyB;QAlBrC;;WAEG;QAEH,SAAI,GAAkB,aAAa,CAAC,GAAG,CAAC;QAExC;;WAEG;QAIH,SAAI,GAAS,IAAI,IAAI,EAAE,CAAC;QAOtB,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;SACnC;IACH,CAAC;CACF;AAtBC;IAAC,IAAA,wBAAM,EAAC,aAAa,CAAC;;6CACkB;AAKxC;IAAC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;sCACX,IAAI;6CAAc;AAExB;IAAC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;iDACK;AAjBpB,0CA0BC;AAwBD;;;;;;GAMG;AACH,SAAgB,SAAS,CAAC,KAAqC,EAAE,kBAA4B;IAC3F,MAAM,MAAM,GAAmB,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAE,KAAwB,CAAC;IACvG,IAAI,EAAE,IAAI,GAAG,aAAa,CAAC,UAAU,EAAE,IAAI,GAAG,IAAI,IAAI,EAAE,EAAE,QAAQ,GAAG,SAAS,EAAE,aAAa,EAAE,wBAAwB,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;IAC3I,MAAM,aAAa,GAAG,kBAAkB,aAAlB,kBAAkB,cAAlB,kBAAkB,GAAI,wBAAwB,CAAC;IAErE,IAAI,KAAW,CAAC;IAChB,IAAI,GAAS,CAAC;IAEd,IAAI,aAAa,EAAE;QACjB,IAAI,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,CAAC,CAAC,2BAA2B;KACxD;IAED,QAAQ,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,CAAC,CAAC;IAEzB,MAAM,mBAAmB,GAAG,QAAQ,GAAG,CAAC,CAAC;IAEzC,QAAQ,IAAI,EAAE;QACZ,KAAK,aAAa,CAAC,GAAG;YACpB,KAAK,GAAG,IAAA,qBAAU,EAAC,IAAI,CAAC,CAAC;YACzB,GAAG,GAAG,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC;YACrB,MAAM;QACR,KAAK,aAAa,CAAC,IAAI;YACrB,KAAK,GAAG,IAAA,sBAAW,EAAC,IAAI,CAAC,CAAC;YAC1B,GAAG,GAAG,IAAA,oBAAS,EAAC,IAAI,CAAC,CAAC;YACtB,MAAM;QACR,KAAK,aAAa,CAAC,KAAK;YACtB,KAAK,GAAG,IAAA,uBAAY,EAAC,IAAI,CAAC,CAAC;YAC3B,GAAG,GAAG,IAAA,qBAAU,EAAC,IAAI,CAAC,CAAC;YACvB,MAAM;QACR,KAAK,aAAa,CAAC,IAAI;YACrB,KAAK,GAAG,IAAA,sBAAW,EAAC,IAAI,CAAC,CAAC;YAC1B,GAAG,GAAG,IAAA,oBAAS,EAAC,IAAI,CAAC,CAAC;YACtB,MAAM;QACR,KAAK,aAAa,CAAC,MAAM;YACvB,KAAK,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,CAAC;YAC5B,GAAG,GAAG,IAAA,sBAAW,EAAC,IAAI,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,aAAa,CAAC,aAAa;YAC9B,IAAI,mBAAmB,EAAE;gBACvB,KAAK,GAAG,IAAA,qBAAU,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACnC,GAAG,GAAG,IAAI,CAAC;aACZ;iBAAM;gBACL,KAAK,GAAG,IAAI,CAAC;gBACb,GAAG,GAAG,IAAA,qBAAU,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aAClC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,WAAW;YAC5B,IAAI,mBAAmB,EAAE;gBACvB,KAAK,GAAG,IAAA,mBAAQ,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACjC,GAAG,GAAG,IAAI,CAAC;aACZ;iBAAM;gBACL,KAAK,GAAG,IAAI,CAAC;gBACb,GAAG,GAAG,IAAA,mBAAQ,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aAChC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,UAAU;YAC3B,IAAI,mBAAmB,EAAE;gBACvB,KAAK,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAChC,GAAG,GAAG,IAAI,CAAC;aACZ;iBAAM;gBACL,KAAK,GAAG,IAAI,CAAC;gBACb,GAAG,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aAC/B;YACD,MAAM;QACR,KAAK,aAAa,CAAC,WAAW;YAC5B,IAAI,mBAAmB,EAAE;gBACvB,KAAK,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;gBACpC,GAAG,GAAG,IAAI,CAAC;aACZ;iBAAM;gBACL,KAAK,GAAG,IAAI,CAAC;gBACb,GAAG,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;aACnC;YACD,MAAM;QACR,KAAK,aAAa,CAAC,cAAc;YAC/B,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9B,KAAK,GAAG,IAAA,qBAAU,EAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC;YACpC,GAAG,GAAG,IAAA,qBAAU,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,aAAa,CAAC,YAAY;YAC7B,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9B,KAAK,GAAG,IAAA,mBAAQ,EAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC;YAClC,GAAG,GAAG,IAAA,mBAAQ,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC/B,MAAM;QACR,KAAK,aAAa,CAAC,WAAW;YAC5B,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9B,KAAK,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC;YACjC,GAAG,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC9B,MAAM;QACR,KAAK,aAAa,CAAC,YAAY;YAC7B,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9B,KAAK,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YACrC,GAAG,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;YAClC,MAAM;QACR,KAAK,aAAa,CAAC,cAAc;YAC/B,KAAK,GAAG,IAAA,uBAAY,EAAC,IAAA,oBAAS,EAAC,IAAI,CAAC,CAAC,CAAC;YACtC,GAAG,GAAG,IAAA,oBAAS,EAAC,IAAA,qBAAU,EAAC,KAAK,CAAC,CAAC,CAAC;YACnC,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;KACvD;IAED,OAAO;QACL,KAAK;QACL,GAAG;KACJ,CAAC;AACJ,CAAC;AAzGD,8BAyGC;AAgCY,QAAA,iDAAiD,GAAG,IAAI,CAAC;AAItE;;;;;GAKG;AACH,SAAgB,8BAA8B,CAAC,KAAgD;IAC7F,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5E,MAAM,EAAE,aAAa,EAAE,kBAAkB,GAAG,yDAAiD,EAAE,yBAAyB,GAAG,IAAI,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IACxJ,MAAM,aAAa,GAAW,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC;IAEhG,OAAO,CAAI,EAAE,KAAK,EAAE,GAAG,EAAa,EAAE,SAA4B,EAAE,EAAE;QACpE,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,OAAO,GAAQ,EAAE,CAAC;QAExB,OAAO,CAAC,IAAA,kBAAO,EAAC,OAAO,EAAE,GAAG,CAAC,EAAE;YAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YAE/B,IAAI,OAAO,CAAC,MAAM,IAAI,aAAa,EAAE;gBACnC,IAAI,yBAAyB,EAAE;oBAC7B,MAAM,IAAI,KAAK,CAAC,yEAAyE,aAAa,EAAE,CAAC,CAAC;iBAC3G;qBAAM;oBACL,MAAM;iBACP;aACF;SACF;QAED,OAAO,OAAc,CAAC;IACxB,CAAC,CAAC;AACJ,CAAC;AAzBD,wEAyBC;AAOD,SAAgB,sBAAsB,CAAW,SAAoB,EAAE,SAA4B,EAAE,WAAiC;IACpI,OAAO,8BAA8B,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,SAAS,CAAQ,CAAC;AAClF,CAAC;AAFD,wDAEC;AAED;;;;;GAKG;AACU,QAAA,qBAAqB,GAAoC,8BAA8B,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,kBAAO,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AAe1H,QAAA,qDAAqD,GAAG,IAAI,CAAC;AAI1E;;;;GAIG;AACH,SAAgB,8BAA8B,CAAC,SAAuC,EAAE;IACtF,MAAM,EAAE,gBAAgB,EAAE,qBAAqB,GAAG,6DAAqD,EAAE,GAAG,MAAM,CAAC;IACnH,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC;IAEjG,OAAO,CAAC,SAAoB,EAAE,EAAE;QAC9B,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC;QAEjC,sCAAsC;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAA,2BAAgB,EAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QAExD,IAAI,QAAQ,GAAG,gBAAgB,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,4DAA4D,QAAQ,GAAG,CAAC,CAAC;SAC1F;QAED,MAAM,KAAK,GAAW,IAAA,6BAAqB,EAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACjE,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;AACJ,CAAC;AAjBD,wEAiBC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAC,KAAgB;IACrD,OAAO,8BAA8B,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AACnD,CAAC;AAFD,wDAEC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,GAAG,EAAa;IACtD,IAAI,IAAA,iBAAM,EAAC,GAAG,CAAC,EAAE;QACf,OAAO,cAAc,CAAC,IAAI,CAAC;KAC5B;SAAM,IAAI,IAAA,iBAAM,EAAC,KAAK,CAAC,EAAE;QACxB,OAAO,cAAc,CAAC,OAAO,CAAC;KAC/B;SAAM;QACL,OAAO,cAAc,CAAC,MAAM,CAAC;KAC9B;AACH,CAAC;AARD,wCAQC;AAaD,SAAgB,iBAAiB,CAAC,IAAU,EAAE,SAA6B;IACzE,OAAO,yBAAyB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC;AACpD,CAAC;AAFD,8CAEC;AAED;;;;;GAKG;AACH,SAAgB,yBAAyB,CAA+B,SAAY;IAClF,IAAI,EAA0C,CAAC;IAE/C,IAAI,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,SAAS,CAAC,GAAG,IAAI,IAAI,EAAE;QACpD,gBAAgB;QAChB,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACxC,EAAE,GAAG,CAAC,CAAC,KAAW,EAAE,EAAE;YACpB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO,IAAI,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,CAAC;QAC9C,CAAC,CAAiC,CAAC;KACpC;SAAM,IAAI,SAAS,CAAC,KAAK,IAAI,IAAI,EAAE;QAClC,aAAa;QACb,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5C,EAAE,GAAG,CAAC,CAAC,KAAW,EAAE,EAAE;YACpB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO,IAAI,IAAI,SAAS,CAAC;QAC3B,CAAC,CAAiC,CAAC;KACpC;SAAM,IAAI,SAAS,CAAC,GAAG,IAAI,IAAI,EAAE;QAChC,WAAW;QACX,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACxC,EAAE,GAAG,CAAC,CAAC,KAAW,EAAE,EAAE;YACpB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO,IAAI,IAAI,OAAO,CAAC;QACzB,CAAC,CAAiC,CAAC;KACpC;SAAM;QACL,EAAE,GAAG,CAAC,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAiC,CAAC;KAC9D;IAED,EAAE,CAAC,UAAU,GAAG,SAAS,CAAC;IAE1B,OAAO,EAAkC,CAAC;AAC5C,CAAC;AAhCD,8DAgCC;AAOD,SAAgB,sBAAsB,CAAC,gBAA2B,EAAE,SAA6B;IAC/F,OAAO,8BAA8B,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC;AACrE,CAAC;AAFD,wDAEC;AAED;;;;;GAKG;AACH,SAAgB,8BAA8B,CAA2C,SAAY;IACnG,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;IAE/D,MAAM,EAAE,GAAG,CAAC,CAAC,KAAgB,EAAE,EAAE;QAC/B,OAAO,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxE,CAAC,CAAgD,CAAC;IAClD,EAAE,CAAC,UAAU,GAAG,SAAS,CAAC;IAC1B,OAAO,EAAuC,CAAC;AACjD,CAAC;AARD,wEAQC;AAOD,SAAgB,0BAA0B,CAAC,gBAA2B,EAAE,SAAoB;IAC1F,OAAO,kCAAkC,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC;AACzE,CAAC;AAFD,gEAEC;AAED;;;;;GAKG;AACH,SAAgB,kCAAkC,CAAkC,SAAY;IAC9F,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IAExC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAgB,EAAE,EAAE;QAC/B,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,SAAS,CAAC;IAC9E,CAAC,CAAoD,CAAC;IAEtD,EAAE,CAAC,UAAU,GAAG,SAAS,CAAC;IAE1B,OAAO,EAA2C,CAAC;AACrD,CAAC;AAXD,gFAWC;AAED;;;;;;GAMG;AACH,SAAgB,uBAAuB,CAAkC,SAAY;IACnF,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IAExC,MAAM,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IACrC,IAAI,WAAW,GAAG,QAAQ,GAAG,gBAAS,CAAC;IAEvC,kFAAkF;IAClF,IAAI,WAAW,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE;QACrC,WAAW,GAAG,gBAAS,CAAC;KACzB;IAED,MAAM,GAAG,GAAG,IAAA,0BAAe,EAAC,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAE1D,uCACK,SAAS,KACZ,KAAK,EAAE,SAAS,CAAC,KAAK,EACtB,GAAG,IACH;AACJ,CAAC;AAnBD,0DAmBC;AAOD,SAAgB,iBAAiB,CAAC,SAA6B;;IAC7D,IAAI,EAA+B,CAAC;IAEpC,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC;IAC7C,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC;IAEzC,IAAI,YAAY,IAAI,UAAU,EAAE;QAC9B,cAAc;QACd,MAAM,SAAS,GAAG,CAAA,MAAA,SAAS,CAAC,KAAK,0CAAE,OAAO,EAAE,KAAI,CAAC,CAAC;QAElD,MAAM,UAAU,GAAG,CAAC,KAAW,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,SAAS,CAAC,KAAc,CAAC;QAC/D,CAAC,CAAC;QAEF,YAAY;QACZ,MAAM,OAAO,GAAG,CAAA,MAAA,SAAS,CAAC,GAAG,0CAAE,OAAO,EAAE,KAAI,CAAC,CAAC;QAE9C,MAAM,QAAQ,GAAG,CAAC,KAAW,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,SAAS,CAAC,GAAY,CAAC;QAC3D,CAAC,CAAC;QAEF,IAAI,YAAY,IAAI,UAAU,EAAE;YAC9B,EAAE,GAAG,CAAC,CAAC,KAAW,EAAE,EAAE;gBACpB,OAAO,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,CAAC,CAAgC,CAAC;SACnC;aAAM,IAAI,YAAY,EAAE;YACvB,EAAE,GAAG,CAAC,CAAC,KAAW,EAAE,EAAE;gBACpB,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,CAAgC,CAAC;SACnC;aAAM;YACL,EAAE,GAAG,CAAC,CAAC,KAAW,EAAE,EAAE;gBACpB,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC,CAAgC,CAAC;SACnC;KACF;SAAM;QACL,EAAE,GAAG,CAAC,CAAC,KAAW,EAAE,EAAE,CAAC,KAAK,CAAsB,CAAC;KACpD;IAED,EAAE,CAAC,UAAU,GAAG,SAAS,CAAC;IAE1B,OAAO,EAAuB,CAAC;AACjC,CAAC;AA3CD,8CA2CC;AAED;;;;;;GAMG;AACH,SAAgB,oBAAoB,CAAC,IAAU,EAAE,SAA6B;IAC5E,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAFD,oDAEC;AAOD,SAAgB,sBAAsB,CAAC,SAA6B,EAAE,sBAAsB,GAAG,KAAK;IAClG,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAE/C,MAAM,EAAE,GAAG,CAAC,CAAC,KAAyB,EAAE,eAAe,GAAG,sBAAsB,EAAE,EAAE;QAClF,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACnG,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3F,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IACxB,CAAC,CAA4C,CAAC;IAC9C,EAAE,CAAC,UAAU,GAAG,SAAS,CAAC;IAC1B,OAAO,EAAmC,CAAC;AAC7C,CAAC;AAVD,wDAUC;AAED;;;;;;GAMG;AACH,SAAgB,yBAAyB,CAAC,cAAkC,EAAE,gBAAoC;IAChH,OAAO,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,cAAc,CAAC,CAAC;AAClE,CAAC;AAFD,8DAEC;AAOD,SAAgB,+BAA+B,CAAC,SAAkC;IAChF,OAAO,CAAC,EAAE,KAAK,EAAE,GAAG,EAAa,EAAE,EAAE,CAAC,CAAC;QACrC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC;QACvB,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC;KACpB,CAAC,CAAC;AACL,CAAC;AALD,0EAKC;AAED;;GAEG;AACU,QAAA,gCAAgC,GAAG,+BAA+B,CAAC,qBAAU,CAAC,CAAC;AAM5F,SAAgB,oCAAoC,CAAC,aAAiD,EAAE,cAA0D,wBAAwB;IACxL,MAAM,gBAAgB,GAAG,IAAA,qCAAqB,EAAC,aAAa,CAAC,CAAC;IAC9D,MAAM,EAAE,GAAG,+BAA+B,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAmD,CAAC;IAC9I,EAAE,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IACxC,OAAO,EAA0C,CAAC;AACpD,CAAC;AALD,oFAKC"}
@@ -106,6 +106,7 @@ export declare type DateTimezoneConversionMap<T = number> = {
106
106
  export declare type DateTimezoneConversionFunction<T> = MapFunction<Milliseconds, T>;
107
107
  export declare function calculateAllConversions<T = number>(date: Date, converter: DateTimezoneBaseDateConverter, map?: DateTimezoneConversionFunction<T>): DateTimezoneConversionMap<T>;
108
108
  export declare type DateTimezoneUtcNormalInstanceInput = Maybe<TimezoneString> | DateTimezoneConversionConfig;
109
+ export declare type DateTimezoneUtcNormalInstanceTransformType = 'targetDateToBaseDate' | 'targetDateToSystemDate' | 'baseDateToTargetDate' | 'baseDateToSystemDate' | 'systemDateToTargetDate' | 'systemDateToBaseDate';
109
110
  /**
110
111
  * Used for converting Dates to/from a UTC "base date" to a "normal date".
111
112
  *
@@ -118,12 +119,16 @@ export declare class DateTimezoneUtcNormalInstance implements DateTimezoneBaseDa
118
119
  constructor(config: DateTimezoneUtcNormalInstanceInput);
119
120
  private _computeOffsetDate;
120
121
  getCurrentOffset(date: Date, from: DateTimezoneConversionTarget, to: DateTimezoneConversionTarget): number;
122
+ transform(date: Date, transform: DateTimezoneUtcNormalInstanceTransformType): Date;
123
+ transformFunction(transform: DateTimezoneUtcNormalInstanceTransformType): MapFunction<Date, Date>;
121
124
  targetDateToBaseDate(date: Date): Date;
122
125
  baseDateToTargetDate(date: Date): Date;
123
126
  baseDateToSystemDate(date: Date): Date;
124
127
  systemDateToBaseDate(date: Date): Date;
125
128
  targetDateToSystemDate(date: Date): Date;
126
129
  systemDateToTargetDate(date: Date): Date;
130
+ getOffset(date: Date, transform: DateTimezoneUtcNormalInstanceTransformType): Milliseconds;
131
+ offsetFunction(transform: DateTimezoneUtcNormalInstanceTransformType): MapFunction<Date, Milliseconds>;
127
132
  targetDateToBaseDateOffset(date: Date): Milliseconds;
128
133
  baseDateToTargetDateOffset(date: Date): Milliseconds;
129
134
  baseDateToSystemDateOffset(date: Date): Milliseconds;
@@ -132,7 +137,8 @@ export declare class DateTimezoneUtcNormalInstance implements DateTimezoneBaseDa
132
137
  systemDateToTargetDateOffset(date: Date): Milliseconds;
133
138
  calculateAllOffsets<T = number>(date: Date, map?: DateTimezoneConversionFunction<T>): DateTimezoneConversionMap<T>;
134
139
  }
135
- export declare function dateTimezoneUtcNormal(config: DateTimezoneUtcNormalInstanceInput): DateTimezoneUtcNormalInstance;
140
+ export declare type DateTimezoneUtcNormalFunctionInput = DateTimezoneUtcNormalInstanceInput | DateTimezoneUtcNormalInstance | TimezoneString | Milliseconds;
141
+ export declare function dateTimezoneUtcNormal(config: DateTimezoneUtcNormalFunctionInput): DateTimezoneUtcNormalInstance;
136
142
  /**
137
143
  * Default DateTimezoneUtcNormalInstance configured with useSystemTimezone=true
138
144
  */
@@ -157,6 +157,12 @@ class DateTimezoneUtcNormalInstance {
157
157
  getCurrentOffset(date, from, to) {
158
158
  return this._getOffset(date, from, to);
159
159
  }
160
+ transform(date, transform) {
161
+ return this[transform](date);
162
+ }
163
+ transformFunction(transform) {
164
+ return (date) => this.transform(date, transform);
165
+ }
160
166
  targetDateToBaseDate(date) {
161
167
  return this._computeOffsetDate(date, 'target', 'base');
162
168
  }
@@ -175,6 +181,12 @@ class DateTimezoneUtcNormalInstance {
175
181
  systemDateToTargetDate(date) {
176
182
  return this._computeOffsetDate(date, 'system', 'target');
177
183
  }
184
+ getOffset(date, transform) {
185
+ return this[`${transform}Offset`](date);
186
+ }
187
+ offsetFunction(transform) {
188
+ return (date) => this.getOffset(date, transform);
189
+ }
178
190
  targetDateToBaseDateOffset(date) {
179
191
  return this._getOffset(date, 'target', 'base');
180
192
  }
@@ -199,7 +211,27 @@ class DateTimezoneUtcNormalInstance {
199
211
  }
200
212
  exports.DateTimezoneUtcNormalInstance = DateTimezoneUtcNormalInstance;
201
213
  function dateTimezoneUtcNormal(config) {
202
- return new DateTimezoneUtcNormalInstance(config);
214
+ let instance;
215
+ if (config instanceof DateTimezoneUtcNormalInstance) {
216
+ instance = config;
217
+ }
218
+ else {
219
+ const type = typeof config;
220
+ switch (type) {
221
+ case 'object':
222
+ instance = new DateTimezoneUtcNormalInstance(config);
223
+ break;
224
+ case 'number':
225
+ instance = new DateTimezoneUtcNormalInstance({ timezoneOffset: config });
226
+ break;
227
+ case 'string':
228
+ instance = new DateTimezoneUtcNormalInstance({ timezone: config });
229
+ break;
230
+ default:
231
+ throw new Error('Invalid input passed to dateTimezoneUtcNormal()');
232
+ }
233
+ }
234
+ return instance;
203
235
  }
204
236
  exports.dateTimezoneUtcNormal = dateTimezoneUtcNormal;
205
237
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"date.timezone.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.timezone.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date.timezone.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.timezone.ts"],"names":[],"mappings":"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"}