@mapvx/web-js 1.1.1 → 1.1.2-alpha.3
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/LICENSE.md +2 -2
- package/README.md +12 -9
- package/dist/cjs/assets/icons.js +6 -8
- package/dist/cjs/assets/icons.js.map +1 -1
- package/dist/cjs/controllers/routeController.js +19 -19
- package/dist/cjs/controllers/routeController.js.map +1 -1
- package/dist/cjs/domain/models/animation.js +2 -2
- package/dist/cjs/domain/models/categories.js +23 -10
- package/dist/cjs/domain/models/categories.js.map +1 -1
- package/dist/cjs/domain/models/circle.js +253 -0
- package/dist/cjs/domain/models/circle.js.map +1 -0
- package/dist/cjs/domain/models/mapConfig.js +10 -1
- package/dist/cjs/domain/models/mapConfig.js.map +1 -1
- package/dist/cjs/domain/models/marker.js +86 -80
- package/dist/cjs/domain/models/marker.js.map +1 -1
- package/dist/cjs/domain/models/routeConfiguration.js +3 -1
- package/dist/cjs/domain/models/routeConfiguration.js.map +1 -1
- package/dist/cjs/index.js +21 -10
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/logger/logger.js +13 -8
- package/dist/cjs/logger/logger.js.map +1 -1
- package/dist/cjs/logger/rollbar.js +11 -6
- package/dist/cjs/logger/rollbar.js.map +1 -1
- package/dist/cjs/map/map.js +446 -28
- package/dist/cjs/map/map.js.map +1 -1
- package/dist/cjs/map/mapInteractionOptions.js +56 -0
- package/dist/cjs/map/mapInteractionOptions.js.map +1 -0
- package/dist/cjs/repository/repository.js +25 -26
- package/dist/cjs/repository/repository.js.map +1 -1
- package/dist/cjs/repository/requester.js +71 -91
- package/dist/cjs/repository/requester.js.map +1 -1
- package/dist/cjs/sdk.js +18 -1
- package/dist/cjs/sdk.js.map +1 -1
- package/dist/cjs/utils/semaphore.js +143 -0
- package/dist/cjs/utils/semaphore.js.map +1 -0
- package/dist/es/assets/icons.d.ts +4 -4
- package/dist/es/assets/icons.d.ts.map +1 -1
- package/dist/es/assets/icons.js +6 -8
- package/dist/es/assets/icons.js.map +1 -1
- package/dist/es/controllers/routeController.d.ts.map +1 -1
- package/dist/es/controllers/routeController.js +19 -19
- package/dist/es/controllers/routeController.js.map +1 -1
- package/dist/es/domain/models/animation.d.ts +3 -3
- package/dist/es/domain/models/animation.js +2 -2
- package/dist/es/domain/models/categories.d.ts +34 -10
- package/dist/es/domain/models/categories.d.ts.map +1 -1
- package/dist/es/domain/models/categories.js +21 -9
- package/dist/es/domain/models/categories.js.map +1 -1
- package/dist/es/domain/models/circle.d.ts +222 -0
- package/dist/es/domain/models/circle.d.ts.map +1 -0
- package/dist/es/domain/models/circle.js +246 -0
- package/dist/es/domain/models/circle.js.map +1 -0
- package/dist/es/domain/models/configuration.d.ts +8 -0
- package/dist/es/domain/models/configuration.d.ts.map +1 -1
- package/dist/es/domain/models/mapConfig.d.ts +118 -3
- package/dist/es/domain/models/mapConfig.d.ts.map +1 -1
- package/dist/es/domain/models/mapConfig.js +9 -0
- package/dist/es/domain/models/mapConfig.js.map +1 -1
- package/dist/es/domain/models/marker.d.ts +8 -0
- package/dist/es/domain/models/marker.d.ts.map +1 -1
- package/dist/es/domain/models/marker.js +86 -80
- package/dist/es/domain/models/marker.js.map +1 -1
- package/dist/es/domain/models/routeConfiguration.d.ts +47 -0
- package/dist/es/domain/models/routeConfiguration.d.ts.map +1 -1
- package/dist/es/domain/models/routeConfiguration.js +3 -1
- package/dist/es/domain/models/routeConfiguration.js.map +1 -1
- package/dist/es/index.d.ts +14 -11
- package/dist/es/index.d.ts.map +1 -1
- package/dist/es/index.js +9 -5
- package/dist/es/index.js.map +1 -1
- package/dist/es/interfaces/routeCacheResponse.d.ts.map +1 -1
- package/dist/es/logger/logger.d.ts.map +1 -1
- package/dist/es/logger/logger.js +13 -8
- package/dist/es/logger/logger.js.map +1 -1
- package/dist/es/logger/rollbar.d.ts.map +1 -1
- package/dist/es/logger/rollbar.js +11 -6
- package/dist/es/logger/rollbar.js.map +1 -1
- package/dist/es/map/map.d.ts +298 -0
- package/dist/es/map/map.d.ts.map +1 -1
- package/dist/es/map/map.js +447 -29
- package/dist/es/map/map.js.map +1 -1
- package/dist/es/map/mapInteractionOptions.d.ts +37 -0
- package/dist/es/map/mapInteractionOptions.d.ts.map +1 -0
- package/dist/es/map/mapInteractionOptions.js +51 -0
- package/dist/es/map/mapInteractionOptions.js.map +1 -0
- package/dist/es/repository/repository.d.ts +0 -1
- package/dist/es/repository/repository.d.ts.map +1 -1
- package/dist/es/repository/repository.js +25 -26
- package/dist/es/repository/repository.js.map +1 -1
- package/dist/es/repository/requester.d.ts +12 -2
- package/dist/es/repository/requester.d.ts.map +1 -1
- package/dist/es/repository/requester.js +71 -91
- package/dist/es/repository/requester.js.map +1 -1
- package/dist/es/sdk.d.ts +2 -0
- package/dist/es/sdk.d.ts.map +1 -1
- package/dist/es/sdk.js +18 -1
- package/dist/es/sdk.js.map +1 -1
- package/dist/es/utils/semaphore.d.ts +70 -0
- package/dist/es/utils/semaphore.d.ts.map +1 -0
- package/dist/es/utils/semaphore.js +139 -0
- package/dist/es/utils/semaphore.js.map +1 -0
- package/dist/umd/index.js +1792 -657
- package/dist/umd/index.js.map +1 -1
- package/dist/umd/styles.css +32 -14
- package/dist/umd/styles.css.map +1 -1
- package/package.json +63 -49
- package/dist/cjs/assets/route_animation_icon.svg +0 -15
- package/dist/cjs/assets/user-dot-icon.svg +0 -3
- package/dist/es/assets/route_animation_icon.svg +0 -15
- package/dist/es/assets/user-dot-icon.svg +0 -3
package/dist/es/sdk.js
CHANGED
|
@@ -29,6 +29,7 @@ export class InternalMapVXSDK extends Loggeable {
|
|
|
29
29
|
constructor(token, config) {
|
|
30
30
|
var _a, _b, _c;
|
|
31
31
|
super();
|
|
32
|
+
this.maps = [];
|
|
32
33
|
this.geoLocation = navigator.geolocation;
|
|
33
34
|
this.headingListeners = [];
|
|
34
35
|
this.token = token;
|
|
@@ -54,6 +55,13 @@ export class InternalMapVXSDK extends Loggeable {
|
|
|
54
55
|
setSdkLang(lang) {
|
|
55
56
|
this.config.lang = lang;
|
|
56
57
|
this.repository.setLang(lang);
|
|
58
|
+
this.maps.forEach((map) => map.setLang(lang));
|
|
59
|
+
}
|
|
60
|
+
unregisterMap(map) {
|
|
61
|
+
const mapIndex = this.maps.indexOf(map);
|
|
62
|
+
if (mapIndex >= 0) {
|
|
63
|
+
this.maps.splice(mapIndex, 1);
|
|
64
|
+
}
|
|
57
65
|
}
|
|
58
66
|
async getPlaceDetail(id) {
|
|
59
67
|
try {
|
|
@@ -84,6 +92,16 @@ export class InternalMapVXSDK extends Loggeable {
|
|
|
84
92
|
mapConfig.apiUrl = this.config.apiUrl;
|
|
85
93
|
mapConfig.mapvxRequestContext = this.config.mapvxRequestContext;
|
|
86
94
|
const map = new InternalMapVXMap(mapConfig, container, this.token);
|
|
95
|
+
const originalDestroyMap = map.destroyMap.bind(map);
|
|
96
|
+
map.destroyMap = () => {
|
|
97
|
+
try {
|
|
98
|
+
originalDestroyMap();
|
|
99
|
+
}
|
|
100
|
+
finally {
|
|
101
|
+
this.unregisterMap(map);
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
this.maps.push(map);
|
|
87
105
|
this.logEvent("createMap");
|
|
88
106
|
return map;
|
|
89
107
|
}
|
|
@@ -242,7 +260,6 @@ export class InternalMapVXSDK extends Loggeable {
|
|
|
242
260
|
throw new Error("Failed to search places by tags");
|
|
243
261
|
}
|
|
244
262
|
}
|
|
245
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
246
263
|
async getPlacesByCategory(category) {
|
|
247
264
|
try {
|
|
248
265
|
// TODO: Implement proper category-based search when API endpoint is available
|
package/dist/es/sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/sdk.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Counting semaphore that caps the number of concurrent operations.
|
|
3
|
+
*
|
|
4
|
+
* Useful when calling APIs, CDNs, or other shared resources where unbounded
|
|
5
|
+
* parallelism can trigger rate limiting, WAF blocks, or excessive memory use.
|
|
6
|
+
* Waiters are released in FIFO order as slots become free.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* const sem = new Semaphore(4);
|
|
11
|
+
*
|
|
12
|
+
* async function fetchTile(url: string) {
|
|
13
|
+
* await sem.acquire();
|
|
14
|
+
* try {
|
|
15
|
+
* return await fetch(url);
|
|
16
|
+
* } finally {
|
|
17
|
+
* sem.release();
|
|
18
|
+
* }
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @group Utils
|
|
23
|
+
*/
|
|
24
|
+
export declare class Semaphore {
|
|
25
|
+
private waiters;
|
|
26
|
+
private slotsInUse;
|
|
27
|
+
private readonly slotLimit;
|
|
28
|
+
/**
|
|
29
|
+
* @param limit - Maximum number of concurrent slots. Must be a finite
|
|
30
|
+
* integer in `[1, 64]`; invalid values fall back to `1`.
|
|
31
|
+
*/
|
|
32
|
+
constructor(limit?: number);
|
|
33
|
+
/**
|
|
34
|
+
* Maximum number of slots that can be acquired concurrently.
|
|
35
|
+
*/
|
|
36
|
+
get limit(): number;
|
|
37
|
+
/**
|
|
38
|
+
* Number of slots currently held by callers (acquired but not released).
|
|
39
|
+
*/
|
|
40
|
+
get inUse(): number;
|
|
41
|
+
/**
|
|
42
|
+
* Number of callers currently waiting for a slot.
|
|
43
|
+
*/
|
|
44
|
+
get waiting(): number;
|
|
45
|
+
/**
|
|
46
|
+
* Acquire one slot. Resolves immediately if a slot is free; otherwise waits
|
|
47
|
+
* in FIFO order until `release()` is called.
|
|
48
|
+
*
|
|
49
|
+
* Every successful `acquire()` must be paired with exactly one `release()`,
|
|
50
|
+
* typically from a `finally` block. If the promise rejects (e.g. the optional
|
|
51
|
+
* `signal` aborts while queued) no slot was granted, so `release()` must NOT
|
|
52
|
+
* be called.
|
|
53
|
+
*
|
|
54
|
+
* @param signal - Optional `AbortSignal`. If it aborts while the caller is
|
|
55
|
+
* still queued, the waiter is removed from the queue and the promise rejects
|
|
56
|
+
* with an `AbortError`, so cancelled work never occupies a slot.
|
|
57
|
+
* @returns A promise that resolves once a slot has been granted.
|
|
58
|
+
*/
|
|
59
|
+
acquire(signal?: AbortSignal): Promise<void>;
|
|
60
|
+
/**
|
|
61
|
+
* Release one slot, waking the next FIFO waiter only when a slot was actually
|
|
62
|
+
* freed.
|
|
63
|
+
*
|
|
64
|
+
* Safe to call even when no slots are in use: it is a true no-op in that case,
|
|
65
|
+
* so cleanup code in `finally` blocks is defensive against double-releases and
|
|
66
|
+
* a stray release can never admit a waiter beyond {@link limit}.
|
|
67
|
+
*/
|
|
68
|
+
release(): void;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=semaphore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semaphore.d.ts","sourceRoot":"","sources":["../../../src/utils/semaphore.ts"],"names":[],"mappings":"AA8BA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAElC;;;OAGG;gBACS,KAAK,GAAE,MAAkB;IAIrC;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B5C;;;;;;;OAOG;IACH,OAAO,IAAI,IAAI;CAShB"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lower bound (inclusive) for the semaphore concurrency limit.
|
|
3
|
+
*
|
|
4
|
+
* A value of 1 means at least one operation can run at a time, which keeps the
|
|
5
|
+
* semaphore meaningful: zero or negative limits would deadlock every caller.
|
|
6
|
+
*/
|
|
7
|
+
const MIN_LIMIT = 1;
|
|
8
|
+
/**
|
|
9
|
+
* Upper bound (inclusive) for the semaphore concurrency limit.
|
|
10
|
+
*
|
|
11
|
+
* 64 is high enough for any practical browser-side fan-out (network requests,
|
|
12
|
+
* tile fetches, etc.) while still protecting downstream services from being
|
|
13
|
+
* overwhelmed by misconfigured callers.
|
|
14
|
+
*/
|
|
15
|
+
const MAX_LIMIT = 64;
|
|
16
|
+
/**
|
|
17
|
+
* Validate and normalize a candidate concurrency limit.
|
|
18
|
+
*
|
|
19
|
+
* @param limit - Candidate value to validate.
|
|
20
|
+
* @returns The validated integer limit, or `null` if the value is invalid.
|
|
21
|
+
*/
|
|
22
|
+
function normalizeLimit(limit) {
|
|
23
|
+
if (!Number.isFinite(limit))
|
|
24
|
+
return null;
|
|
25
|
+
const floored = Math.floor(limit);
|
|
26
|
+
if (floored < MIN_LIMIT || floored > MAX_LIMIT)
|
|
27
|
+
return null;
|
|
28
|
+
return floored;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Counting semaphore that caps the number of concurrent operations.
|
|
32
|
+
*
|
|
33
|
+
* Useful when calling APIs, CDNs, or other shared resources where unbounded
|
|
34
|
+
* parallelism can trigger rate limiting, WAF blocks, or excessive memory use.
|
|
35
|
+
* Waiters are released in FIFO order as slots become free.
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* const sem = new Semaphore(4);
|
|
40
|
+
*
|
|
41
|
+
* async function fetchTile(url: string) {
|
|
42
|
+
* await sem.acquire();
|
|
43
|
+
* try {
|
|
44
|
+
* return await fetch(url);
|
|
45
|
+
* } finally {
|
|
46
|
+
* sem.release();
|
|
47
|
+
* }
|
|
48
|
+
* }
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* @group Utils
|
|
52
|
+
*/
|
|
53
|
+
export class Semaphore {
|
|
54
|
+
/**
|
|
55
|
+
* @param limit - Maximum number of concurrent slots. Must be a finite
|
|
56
|
+
* integer in `[1, 64]`; invalid values fall back to `1`.
|
|
57
|
+
*/
|
|
58
|
+
constructor(limit = MIN_LIMIT) {
|
|
59
|
+
var _a;
|
|
60
|
+
this.waiters = [];
|
|
61
|
+
this.slotsInUse = 0;
|
|
62
|
+
this.slotLimit = (_a = normalizeLimit(limit)) !== null && _a !== void 0 ? _a : MIN_LIMIT;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Maximum number of slots that can be acquired concurrently.
|
|
66
|
+
*/
|
|
67
|
+
get limit() {
|
|
68
|
+
return this.slotLimit;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Number of slots currently held by callers (acquired but not released).
|
|
72
|
+
*/
|
|
73
|
+
get inUse() {
|
|
74
|
+
return this.slotsInUse;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Number of callers currently waiting for a slot.
|
|
78
|
+
*/
|
|
79
|
+
get waiting() {
|
|
80
|
+
return this.waiters.length;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Acquire one slot. Resolves immediately if a slot is free; otherwise waits
|
|
84
|
+
* in FIFO order until `release()` is called.
|
|
85
|
+
*
|
|
86
|
+
* Every successful `acquire()` must be paired with exactly one `release()`,
|
|
87
|
+
* typically from a `finally` block. If the promise rejects (e.g. the optional
|
|
88
|
+
* `signal` aborts while queued) no slot was granted, so `release()` must NOT
|
|
89
|
+
* be called.
|
|
90
|
+
*
|
|
91
|
+
* @param signal - Optional `AbortSignal`. If it aborts while the caller is
|
|
92
|
+
* still queued, the waiter is removed from the queue and the promise rejects
|
|
93
|
+
* with an `AbortError`, so cancelled work never occupies a slot.
|
|
94
|
+
* @returns A promise that resolves once a slot has been granted.
|
|
95
|
+
*/
|
|
96
|
+
acquire(signal) {
|
|
97
|
+
if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
|
|
98
|
+
return Promise.reject(new DOMException("Aborted", "AbortError"));
|
|
99
|
+
}
|
|
100
|
+
if (this.slotsInUse < this.slotLimit) {
|
|
101
|
+
this.slotsInUse++;
|
|
102
|
+
return Promise.resolve();
|
|
103
|
+
}
|
|
104
|
+
return new Promise((resolve, reject) => {
|
|
105
|
+
const waiter = () => {
|
|
106
|
+
this.slotsInUse++;
|
|
107
|
+
resolve();
|
|
108
|
+
};
|
|
109
|
+
this.waiters.push(waiter);
|
|
110
|
+
if (signal) {
|
|
111
|
+
signal.addEventListener("abort", () => {
|
|
112
|
+
const index = this.waiters.indexOf(waiter);
|
|
113
|
+
if (index !== -1) {
|
|
114
|
+
this.waiters.splice(index, 1);
|
|
115
|
+
reject(new DOMException("Aborted", "AbortError"));
|
|
116
|
+
}
|
|
117
|
+
}, { once: true });
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Release one slot, waking the next FIFO waiter only when a slot was actually
|
|
123
|
+
* freed.
|
|
124
|
+
*
|
|
125
|
+
* Safe to call even when no slots are in use: it is a true no-op in that case,
|
|
126
|
+
* so cleanup code in `finally` blocks is defensive against double-releases and
|
|
127
|
+
* a stray release can never admit a waiter beyond {@link limit}.
|
|
128
|
+
*/
|
|
129
|
+
release() {
|
|
130
|
+
if (this.slotsInUse > 0) {
|
|
131
|
+
this.slotsInUse--;
|
|
132
|
+
const next = this.waiters.shift();
|
|
133
|
+
if (next) {
|
|
134
|
+
next();
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=semaphore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semaphore.js","sourceRoot":"","sources":["../../../src/utils/semaphore.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,SAAS,GAAG,CAAC,CAAA;AAEnB;;;;;;GAMG;AACH,MAAM,SAAS,GAAG,EAAE,CAAA;AAEpB;;;;;GAKG;AACH,SAAS,cAAc,CAAC,KAAa;IACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACjC,IAAI,OAAO,GAAG,SAAS,IAAI,OAAO,GAAG,SAAS;QAAE,OAAO,IAAI,CAAA;IAC3D,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,OAAO,SAAS;IAKpB;;;OAGG;IACH,YAAY,QAAgB,SAAS;;QAR7B,YAAO,GAAsB,EAAE,CAAA;QAC/B,eAAU,GAAG,CAAC,CAAA;QAQpB,IAAI,CAAC,SAAS,GAAG,MAAA,cAAc,CAAC,KAAK,CAAC,mCAAI,SAAS,CAAA;IACrD,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;IAC5B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,MAAoB;QAC1B,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE;YACnB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;SACjE;QACD,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE;YACpC,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;SACzB;QACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,GAAS,EAAE;gBACxB,IAAI,CAAC,UAAU,EAAE,CAAA;gBACjB,OAAO,EAAE,CAAA;YACX,CAAC,CAAA;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACzB,IAAI,MAAM,EAAE;gBACV,MAAM,CAAC,gBAAgB,CACrB,OAAO,EACP,GAAG,EAAE;oBACH,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;oBAC1C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;wBAChB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;wBAC7B,MAAM,CAAC,IAAI,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;qBAClD;gBACH,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAA;aACF;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE;YACvB,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;YACjC,IAAI,IAAI,EAAE;gBACR,IAAI,EAAE,CAAA;aACP;SACF;IACH,CAAC;CACF"}
|