@ama-sdk/core 11.5.8 → 11.5.9
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/cjs/fwk/date.js +12 -6
- package/cjs/fwk/date.spec.js +22 -1
- package/esm2015/fwk/date.js +12 -6
- package/esm2015/fwk/date.spec.js +22 -1
- package/package.json +5 -5
- package/src/fwk/date.d.ts.map +1 -1
- package/src/fwk/date.js +12 -6
- package/src/fwk/date.js.map +1 -1
package/cjs/fwk/date.js
CHANGED
|
@@ -179,6 +179,11 @@ function pad(val) {
|
|
|
179
179
|
var str = "".concat(val);
|
|
180
180
|
return '0'.repeat(Math.max(0, digits - str.length)) + str;
|
|
181
181
|
}
|
|
182
|
+
function getNewTimeZoneWithOffset(dateArgs, timezoneOffset) {
|
|
183
|
+
var newDateArgs = _to_consumable_array(dateArgs);
|
|
184
|
+
newDateArgs[0] += "".concat(timezoneOffset < 0 ? '+' : '-').concat(pad(Math.floor(Math.abs(timezoneOffset / 60))), ":").concat(pad(Math.abs(timezoneOffset % 60)));
|
|
185
|
+
return newDateArgs;
|
|
186
|
+
}
|
|
182
187
|
var CommonDate = /*#__PURE__*/ function(Date1) {
|
|
183
188
|
"use strict";
|
|
184
189
|
_inherits(CommonDate, Date1);
|
|
@@ -202,9 +207,12 @@ var CommonDate = /*#__PURE__*/ function(Date1) {
|
|
|
202
207
|
if (idx > 0) {
|
|
203
208
|
args[0] = args[0].substring(0, idx);
|
|
204
209
|
}
|
|
205
|
-
var
|
|
210
|
+
var ORIGINAL_TIME_ZONE_OFFSET = _construct(Date, _to_consumable_array(args)).getTimezoneOffset();
|
|
206
211
|
if (idxT > 0) {
|
|
207
|
-
|
|
212
|
+
var newDateArgs = getNewTimeZoneWithOffset(args, ORIGINAL_TIME_ZONE_OFFSET);
|
|
213
|
+
// Adjust timezone in case of a daylight saving change mid-offset
|
|
214
|
+
var NEW_DATE_TIME_ZONE_OFFSET = _construct(Date, _to_consumable_array(newDateArgs)).getTimezoneOffset();
|
|
215
|
+
args = getNewTimeZoneWithOffset(args, NEW_DATE_TIME_ZONE_OFFSET);
|
|
208
216
|
}
|
|
209
217
|
} else if (_instanceof(args[0], CommonDate)) {
|
|
210
218
|
args[0] = args[0];
|
|
@@ -234,11 +242,9 @@ var CommonDate = /*#__PURE__*/ function(Date1) {
|
|
|
234
242
|
}
|
|
235
243
|
_class_call_check(this, Date1);
|
|
236
244
|
if (args && typeof args[0] === 'string' && args[0].lastIndexOf('T') < 0) {
|
|
237
|
-
|
|
238
|
-
// compute the offset (for example, italian daylight saving switch prior to 1980).
|
|
239
|
-
args[0] = "".concat(args[0], "T12:00:00Z");
|
|
245
|
+
args[0] = "".concat(args[0], "T00:00:00Z");
|
|
240
246
|
} else if (_instanceof(args[0], _NativeDateClass)) {
|
|
241
|
-
args[0] = "".concat(args[0].getFullYear(), "-").concat(pad(args[0].getMonth() + 1), "-").concat(pad(args[0].getDate()), "
|
|
247
|
+
args[0] = "".concat(args[0].getFullYear(), "-").concat(pad(args[0].getMonth() + 1), "-").concat(pad(args[0].getDate()), "T00:00:00Z");
|
|
242
248
|
}
|
|
243
249
|
return _call_super(this, Date1, _to_consumable_array(args));
|
|
244
250
|
}
|
package/cjs/fwk/date.spec.js
CHANGED
|
@@ -35,6 +35,13 @@ describe('DateTime', function() {
|
|
|
35
35
|
var dateUtils = new _date.utils.DateTime(date1);
|
|
36
36
|
expect(dateUtils).toEqual(dateCompare);
|
|
37
37
|
});
|
|
38
|
+
it('should support daylight saving time switch', function() {
|
|
39
|
+
expect(new Date('1972-05-28T00:00:00').getTimezoneOffset()).toBe(-120);
|
|
40
|
+
expect(new Date('1972-05-27T23:59:59').getTimezoneOffset()).toBe(-60);
|
|
41
|
+
var dateUtils = new _date.utils.DateTime('1972-05-28T00:00:00');
|
|
42
|
+
// At midnight in italy, for this date, time should be 1 am
|
|
43
|
+
expect(dateUtils.toJSON()).toEqual('1972-05-28T01:00:00.000');
|
|
44
|
+
});
|
|
38
45
|
it('should ignore timezone of datetime', function() {
|
|
39
46
|
var date1 = '2015-03-25T12:00:00-02:00';
|
|
40
47
|
var date2 = '2015-03-25T12:00:00+05:00';
|
|
@@ -75,7 +82,21 @@ describe('Date', function() {
|
|
|
75
82
|
});
|
|
76
83
|
it('should be converted to a Js DateTime', function() {
|
|
77
84
|
var date1 = '1988-06-07';
|
|
78
|
-
var dateCompare = new _date.utils.DateTime('1988-06-
|
|
85
|
+
var dateCompare = new _date.utils.DateTime('1988-06-07T00:00:00Z');
|
|
79
86
|
expect(new _date.utils.Date(date1)).toEqual(dateCompare);
|
|
80
87
|
});
|
|
88
|
+
it('should be at midnight for any date but daylight switch at midnight', function() {
|
|
89
|
+
var date1 = new _date.utils.Date('1988-06-07');
|
|
90
|
+
expect(date1.getHours()).toEqual(0);
|
|
91
|
+
expect(date1.getMinutes()).toEqual(0);
|
|
92
|
+
expect(date1.getSeconds()).toEqual(0);
|
|
93
|
+
});
|
|
94
|
+
it('should support daylight saving time switch', function() {
|
|
95
|
+
expect(new Date('1972-05-28T00:00:00').getTimezoneOffset()).toBe(-120);
|
|
96
|
+
expect(new Date('1972-05-27T23:59:59').getTimezoneOffset()).toBe(-60);
|
|
97
|
+
var dateUtils = new _date.utils.Date('1972-05-28');
|
|
98
|
+
// The day should be correct and not 27
|
|
99
|
+
expect(dateUtils.toJSON()).toEqual('1972-05-28');
|
|
100
|
+
expect(dateUtils.getDate()).toBe(28);
|
|
101
|
+
});
|
|
81
102
|
});
|
package/esm2015/fwk/date.js
CHANGED
|
@@ -160,6 +160,11 @@ export var _NativeDateClass = Date;
|
|
|
160
160
|
var str = "".concat(val);
|
|
161
161
|
return '0'.repeat(Math.max(0, digits - str.length)) + str;
|
|
162
162
|
}
|
|
163
|
+
function getNewTimeZoneWithOffset(dateArgs, timezoneOffset) {
|
|
164
|
+
var newDateArgs = _to_consumable_array(dateArgs);
|
|
165
|
+
newDateArgs[0] += "".concat(timezoneOffset < 0 ? '+' : '-').concat(pad(Math.floor(Math.abs(timezoneOffset / 60))), ":").concat(pad(Math.abs(timezoneOffset % 60)));
|
|
166
|
+
return newDateArgs;
|
|
167
|
+
}
|
|
163
168
|
export var CommonDate = /*#__PURE__*/ function(Date1) {
|
|
164
169
|
"use strict";
|
|
165
170
|
_inherits(CommonDate, Date1);
|
|
@@ -183,9 +188,12 @@ export var CommonDate = /*#__PURE__*/ function(Date1) {
|
|
|
183
188
|
if (idx > 0) {
|
|
184
189
|
args[0] = args[0].substring(0, idx);
|
|
185
190
|
}
|
|
186
|
-
var
|
|
191
|
+
var ORIGINAL_TIME_ZONE_OFFSET = _construct(Date, _to_consumable_array(args)).getTimezoneOffset();
|
|
187
192
|
if (idxT > 0) {
|
|
188
|
-
|
|
193
|
+
var newDateArgs = getNewTimeZoneWithOffset(args, ORIGINAL_TIME_ZONE_OFFSET);
|
|
194
|
+
// Adjust timezone in case of a daylight saving change mid-offset
|
|
195
|
+
var NEW_DATE_TIME_ZONE_OFFSET = _construct(Date, _to_consumable_array(newDateArgs)).getTimezoneOffset();
|
|
196
|
+
args = getNewTimeZoneWithOffset(args, NEW_DATE_TIME_ZONE_OFFSET);
|
|
189
197
|
}
|
|
190
198
|
} else if (_instanceof(args[0], CommonDate)) {
|
|
191
199
|
args[0] = args[0];
|
|
@@ -215,11 +223,9 @@ export var CommonDate = /*#__PURE__*/ function(Date1) {
|
|
|
215
223
|
}
|
|
216
224
|
_class_call_check(this, Date1);
|
|
217
225
|
if (args && typeof args[0] === 'string' && args[0].lastIndexOf('T') < 0) {
|
|
218
|
-
|
|
219
|
-
// compute the offset (for example, italian daylight saving switch prior to 1980).
|
|
220
|
-
args[0] = "".concat(args[0], "T12:00:00Z");
|
|
226
|
+
args[0] = "".concat(args[0], "T00:00:00Z");
|
|
221
227
|
} else if (_instanceof(args[0], _NativeDateClass)) {
|
|
222
|
-
args[0] = "".concat(args[0].getFullYear(), "-").concat(pad(args[0].getMonth() + 1), "-").concat(pad(args[0].getDate()), "
|
|
228
|
+
args[0] = "".concat(args[0].getFullYear(), "-").concat(pad(args[0].getMonth() + 1), "-").concat(pad(args[0].getDate()), "T00:00:00Z");
|
|
223
229
|
}
|
|
224
230
|
return _call_super(this, Date1, _to_consumable_array(args));
|
|
225
231
|
}
|
package/esm2015/fwk/date.spec.js
CHANGED
|
@@ -31,6 +31,13 @@ describe('DateTime', function() {
|
|
|
31
31
|
var dateUtils = new utils.DateTime(date1);
|
|
32
32
|
expect(dateUtils).toEqual(dateCompare);
|
|
33
33
|
});
|
|
34
|
+
it('should support daylight saving time switch', function() {
|
|
35
|
+
expect(new Date('1972-05-28T00:00:00').getTimezoneOffset()).toBe(-120);
|
|
36
|
+
expect(new Date('1972-05-27T23:59:59').getTimezoneOffset()).toBe(-60);
|
|
37
|
+
var dateUtils = new utils.DateTime('1972-05-28T00:00:00');
|
|
38
|
+
// At midnight in italy, for this date, time should be 1 am
|
|
39
|
+
expect(dateUtils.toJSON()).toEqual('1972-05-28T01:00:00.000');
|
|
40
|
+
});
|
|
34
41
|
it('should ignore timezone of datetime', function() {
|
|
35
42
|
var date1 = '2015-03-25T12:00:00-02:00';
|
|
36
43
|
var date2 = '2015-03-25T12:00:00+05:00';
|
|
@@ -71,7 +78,21 @@ describe('Date', function() {
|
|
|
71
78
|
});
|
|
72
79
|
it('should be converted to a Js DateTime', function() {
|
|
73
80
|
var date1 = '1988-06-07';
|
|
74
|
-
var dateCompare = new utils.DateTime('1988-06-
|
|
81
|
+
var dateCompare = new utils.DateTime('1988-06-07T00:00:00Z');
|
|
75
82
|
expect(new utils.Date(date1)).toEqual(dateCompare);
|
|
76
83
|
});
|
|
84
|
+
it('should be at midnight for any date but daylight switch at midnight', function() {
|
|
85
|
+
var date1 = new utils.Date('1988-06-07');
|
|
86
|
+
expect(date1.getHours()).toEqual(0);
|
|
87
|
+
expect(date1.getMinutes()).toEqual(0);
|
|
88
|
+
expect(date1.getSeconds()).toEqual(0);
|
|
89
|
+
});
|
|
90
|
+
it('should support daylight saving time switch', function() {
|
|
91
|
+
expect(new Date('1972-05-28T00:00:00').getTimezoneOffset()).toBe(-120);
|
|
92
|
+
expect(new Date('1972-05-27T23:59:59').getTimezoneOffset()).toBe(-60);
|
|
93
|
+
var dateUtils = new utils.Date('1972-05-28');
|
|
94
|
+
// The day should be correct and not 27
|
|
95
|
+
expect(dateUtils.toJSON()).toEqual('1972-05-28');
|
|
96
|
+
expect(dateUtils.getDate()).toBe(28);
|
|
97
|
+
});
|
|
77
98
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ama-sdk/core",
|
|
3
|
-
"version": "11.5.
|
|
3
|
+
"version": "11.5.9",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
"@angular-devkit/schematics": "~18.2.0",
|
|
91
91
|
"@angular/cli": "~18.2.0",
|
|
92
92
|
"@angular/common": "~18.2.0",
|
|
93
|
-
"@o3r/schematics": "^11.5.
|
|
93
|
+
"@o3r/schematics": "^11.5.9",
|
|
94
94
|
"@schematics/angular": "~18.2.0",
|
|
95
95
|
"isomorphic-fetch": "^3.0.0",
|
|
96
96
|
"rxjs": "^7.8.1",
|
|
@@ -130,9 +130,9 @@
|
|
|
130
130
|
"@angular/core": "~18.2.0",
|
|
131
131
|
"@nx/eslint-plugin": "~19.5.0",
|
|
132
132
|
"@nx/jest": "~19.5.0",
|
|
133
|
-
"@o3r/build-helpers": "^11.5.
|
|
134
|
-
"@o3r/eslint-plugin": "^11.5.
|
|
135
|
-
"@o3r/test-helpers": "^11.5.
|
|
133
|
+
"@o3r/build-helpers": "^11.5.9",
|
|
134
|
+
"@o3r/eslint-plugin": "^11.5.9",
|
|
135
|
+
"@o3r/test-helpers": "^11.5.9",
|
|
136
136
|
"@schematics/angular": "~18.2.0",
|
|
137
137
|
"@stylistic/eslint-plugin-ts": "~2.4.0",
|
|
138
138
|
"@swc/cli": "~0.5.0",
|
package/src/fwk/date.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../src/fwk/date.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC;AAC/B,eAAO,MAAM,gBAAgB,iBAAO,CAAC;AAErC;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,GAAG,MAAM,CAG3D;
|
|
1
|
+
{"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../src/fwk/date.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC;AAC/B,eAAO,MAAM,gBAAgB,iBAAO,CAAC;AAErC;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,GAAG,MAAM,CAG3D;AAQD,qBAAa,UAAW,SAAQ,IAAI;IAClC;;OAEG;gBACS,GAAG,IAAI,EAAE,GAAG,EAAE;IAgC1B;;OAEG;IACI,MAAM,IAAI,MAAM;CAIxB;AAED;;GAEG;AACH,yBAAiB,KAAK,CAAC;IAGrB,MAAa,IAAK,SAAQ,UAAU;QAElC;;WAEG;;oBAES,KAAK,EAAE,MAAM;oBACb,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,WAAW;oBACjB,SAAS,EAAE,IAAI;oBACf,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;QAWtD;;WAEG;QACH,SAAS,CAAC,KAAK,IAAI,IAAI;QAEvB;;WAEG;QACI,MAAM,IAAI,MAAM;QAIvB;;;;;WAKG;QACI,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO;KAMpC;IAED,MAAa,QAAS,SAAQ,UAAU;;oBAG1B,KAAK,EAAE,MAAM;oBACb,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,WAAW;oBACjB,aAAa,EAAE,QAAQ;oBACvB,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,GAAG;oBACd,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM;QAKvH;;WAEG;QACH,SAAS,CAAC,SAAS,IAAI,IAAI;KAC5B;CACF"}
|
package/src/fwk/date.js
CHANGED
|
@@ -9,6 +9,11 @@ export function pad(val, digits = 2) {
|
|
|
9
9
|
const str = `${val}`;
|
|
10
10
|
return '0'.repeat(Math.max(0, digits - str.length)) + str;
|
|
11
11
|
}
|
|
12
|
+
function getNewTimeZoneWithOffset(dateArgs, timezoneOffset) {
|
|
13
|
+
const newDateArgs = [...dateArgs];
|
|
14
|
+
newDateArgs[0] += `${timezoneOffset < 0 ? '+' : '-'}${pad(Math.floor(Math.abs(timezoneOffset / 60)))}:${pad(Math.abs(timezoneOffset % 60))}`;
|
|
15
|
+
return newDateArgs;
|
|
16
|
+
}
|
|
12
17
|
export class CommonDate extends Date {
|
|
13
18
|
/**
|
|
14
19
|
* Removes timezone information from ISO8601 strings (Received from DAPI)
|
|
@@ -29,9 +34,12 @@ export class CommonDate extends Date {
|
|
|
29
34
|
if (idx > 0) {
|
|
30
35
|
args[0] = args[0].substring(0, idx);
|
|
31
36
|
}
|
|
32
|
-
const
|
|
37
|
+
const ORIGINAL_TIME_ZONE_OFFSET = (new Date(...args)).getTimezoneOffset();
|
|
33
38
|
if (idxT > 0) {
|
|
34
|
-
|
|
39
|
+
const newDateArgs = getNewTimeZoneWithOffset(args, ORIGINAL_TIME_ZONE_OFFSET);
|
|
40
|
+
// Adjust timezone in case of a daylight saving change mid-offset
|
|
41
|
+
const NEW_DATE_TIME_ZONE_OFFSET = (new Date(...newDateArgs)).getTimezoneOffset();
|
|
42
|
+
args = getNewTimeZoneWithOffset(args, NEW_DATE_TIME_ZONE_OFFSET);
|
|
35
43
|
}
|
|
36
44
|
}
|
|
37
45
|
else if (args[0] instanceof CommonDate) {
|
|
@@ -56,12 +64,10 @@ export var utils;
|
|
|
56
64
|
class Date extends CommonDate {
|
|
57
65
|
constructor(...args) {
|
|
58
66
|
if (args && typeof args[0] === 'string' && args[0].lastIndexOf('T') < 0) {
|
|
59
|
-
|
|
60
|
-
// compute the offset (for example, italian daylight saving switch prior to 1980).
|
|
61
|
-
args[0] = `${args[0]}T12:00:00Z`;
|
|
67
|
+
args[0] = `${args[0]}T00:00:00Z`;
|
|
62
68
|
}
|
|
63
69
|
else if (args[0] instanceof _NativeDateClass) {
|
|
64
|
-
args[0] = `${args[0].getFullYear()}-${pad(args[0].getMonth() + 1)}-${pad(args[0].getDate())}
|
|
70
|
+
args[0] = `${args[0].getFullYear()}-${pad(args[0].getMonth() + 1)}-${pad(args[0].getDate())}T00:00:00Z`;
|
|
65
71
|
}
|
|
66
72
|
super(...args);
|
|
67
73
|
}
|
package/src/fwk/date.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../../src/fwk/date.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAErC;;;;;GAKG;AACH,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,SAAiB,CAAC;IACjD,MAAM,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;IACrB,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC;AAC5D,CAAC;AAED,MAAM,OAAO,UAAW,SAAQ,IAAI;
|
|
1
|
+
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../../src/fwk/date.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAErC;;;;;GAKG;AACH,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,SAAiB,CAAC;IACjD,MAAM,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;IACrB,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC;AAC5D,CAAC;AAED,SAAS,wBAAwB,CAAC,QAAe,EAAE,cAAsB;IACvE,MAAM,WAAW,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;IAClC,WAAW,CAAC,CAAC,CAAC,IAAI,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;IAC7I,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,OAAO,UAAW,SAAQ,IAAI;IAClC;;OAEG;IACH,YAAY,GAAG,IAAW;QACxB,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAChC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAEtC,sDAAsD;gBACtD,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACnC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;oBAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAAC,CAAC;gBAChD,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;oBACxB,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;oBAC7D,GAAG,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC;gBAC3D,CAAC;gBACD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;oBACZ,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBACtC,CAAC;gBAED,MAAM,yBAAyB,GAAI,CAAC,IAAK,IAAY,CAAC,GAAG,IAAI,CAAC,CAAU,CAAC,iBAAiB,EAAE,CAAC;gBAE7F,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;oBACb,MAAM,WAAW,GAAG,wBAAwB,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;oBAC9E,iEAAiE;oBACjE,MAAM,yBAAyB,GAAI,CAAC,IAAK,IAAY,CAAC,GAAG,WAAW,CAAC,CAAU,CAAC,iBAAiB,EAAE,CAAC;oBACpG,IAAI,GAAG,wBAAwB,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,UAAU,EAAE,CAAC;gBACzC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAED,KAAK,CAAC,GAAI,IAAW,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACI,MAAM;QACX,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;IAClM,CAAC;CAEF;AAED;;GAEG;AACH,MAAM,KAAW,KAAK,CAqErB;AArED,WAAiB,KAAK;IACpB,YAAY,CAAC;IAEb,MAAa,IAAK,SAAQ,UAAU;QAWlC,YAAY,GAAG,IAAW;YACxB,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxE,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;YACnC,CAAC;iBAAM,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,gBAAgB,EAAE,CAAC;gBAC/C,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,YAAY,CAAC;YAC1G,CAAC;YAED,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACjB,CAAC;QAED;;WAEG;QACO,KAAK,KAAU,CAAC;QAE1B;;WAEG;QACI,MAAM;YACX,OAAO,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;QAED;;;;;WAKG;QACI,MAAM,CAAC,IAAW;YACvB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/H,CAAC;KACF;IA7CY,UAAI,OA6ChB,CAAA;IAED,MAAa,QAAS,SAAQ,UAAU;QAUtC,YAAY,GAAG,IAAW;YACxB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACjB,CAAC;QAED;;WAEG;QACO,SAAS,KAAU,CAAC;KAC/B;IAlBY,cAAQ,WAkBpB,CAAA;AACH,CAAC,EArEgB,KAAK,KAAL,KAAK,QAqErB"}
|