@mapvx/web-js 3.6.0-dev.1 → 4.0.0-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -1
- package/dist/cjs/index.js +2 -95
- package/dist/cjs/index.js.LICENSE.txt +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/es/controllers/routeController.d.ts.map +1 -1
- package/dist/es/controllers/routeController.js +25 -8
- package/dist/es/controllers/routeController.js.map +1 -1
- package/dist/es/logger/sentry.js +1 -1
- package/dist/es/map/liveMapFitTransform.d.ts +11 -5
- package/dist/es/map/liveMapFitTransform.d.ts.map +1 -1
- package/dist/es/map/liveMapFitTransform.js +28 -19
- package/dist/es/map/liveMapFitTransform.js.map +1 -1
- package/dist/es/map/map.d.ts.map +1 -1
- package/dist/es/map/map.js +3 -6
- package/dist/es/map/map.js.map +1 -1
- package/dist/umd/index.js +932 -126
- package/dist/umd/index.js.map +1 -1
- package/dist/umd/styles.css +1 -1
- package/dist/umd/styles.css.map +1 -1
- package/package.json +7 -4
- package/dist/cjs/assets/icons.js +0 -85
- package/dist/cjs/assets/icons.js.map +0 -1
- package/dist/cjs/config/draco.js +0 -15
- package/dist/cjs/config/draco.js.map +0 -1
- package/dist/cjs/config/sdkConfig.js +0 -3
- package/dist/cjs/config/sdkConfig.js.map +0 -1
- package/dist/cjs/controllers/markerLayoutController.js +0 -359
- package/dist/cjs/controllers/markerLayoutController.js.map +0 -1
- package/dist/cjs/controllers/routeController.js +0 -1549
- package/dist/cjs/controllers/routeController.js.map +0 -1
- package/dist/cjs/domain/models/_internal.js +0 -14
- package/dist/cjs/domain/models/_internal.js.map +0 -1
- package/dist/cjs/domain/models/_rtl.js +0 -10
- package/dist/cjs/domain/models/_rtl.js.map +0 -1
- package/dist/cjs/domain/models/animation.js +0 -64
- package/dist/cjs/domain/models/animation.js.map +0 -1
- package/dist/cjs/domain/models/banner.js +0 -24
- package/dist/cjs/domain/models/banner.js.map +0 -1
- package/dist/cjs/domain/models/campaign.js +0 -73
- package/dist/cjs/domain/models/campaign.js.map +0 -1
- package/dist/cjs/domain/models/categories.js +0 -37
- package/dist/cjs/domain/models/categories.js.map +0 -1
- package/dist/cjs/domain/models/circle.js +0 -253
- package/dist/cjs/domain/models/circle.js.map +0 -1
- package/dist/cjs/domain/models/cityFilterOption.js +0 -3
- package/dist/cjs/domain/models/cityFilterOption.js.map +0 -1
- package/dist/cjs/domain/models/configuration.js +0 -3
- package/dist/cjs/domain/models/configuration.js.map +0 -1
- package/dist/cjs/domain/models/cssCustomization.js +0 -3
- package/dist/cjs/domain/models/cssCustomization.js.map +0 -1
- package/dist/cjs/domain/models/fitOptions.js +0 -3
- package/dist/cjs/domain/models/fitOptions.js.map +0 -1
- package/dist/cjs/domain/models/innerFloors.js +0 -3
- package/dist/cjs/domain/models/innerFloors.js.map +0 -1
- package/dist/cjs/domain/models/institution.js +0 -45
- package/dist/cjs/domain/models/institution.js.map +0 -1
- package/dist/cjs/domain/models/latLng.js +0 -3
- package/dist/cjs/domain/models/latLng.js.map +0 -1
- package/dist/cjs/domain/models/location.js +0 -3
- package/dist/cjs/domain/models/location.js.map +0 -1
- package/dist/cjs/domain/models/loggeable.js +0 -52
- package/dist/cjs/domain/models/loggeable.js.map +0 -1
- package/dist/cjs/domain/models/mapCamera.js +0 -3
- package/dist/cjs/domain/models/mapCamera.js.map +0 -1
- package/dist/cjs/domain/models/mapConfig.js +0 -37
- package/dist/cjs/domain/models/mapConfig.js.map +0 -1
- package/dist/cjs/domain/models/marker.js +0 -502
- package/dist/cjs/domain/models/marker.js.map +0 -1
- package/dist/cjs/domain/models/multilanguage.js +0 -17
- package/dist/cjs/domain/models/multilanguage.js.map +0 -1
- package/dist/cjs/domain/models/openingHours.js +0 -3
- package/dist/cjs/domain/models/openingHours.js.map +0 -1
- package/dist/cjs/domain/models/place.js +0 -127
- package/dist/cjs/domain/models/place.js.map +0 -1
- package/dist/cjs/domain/models/platform.js +0 -3
- package/dist/cjs/domain/models/platform.js.map +0 -1
- package/dist/cjs/domain/models/popover.js +0 -3
- package/dist/cjs/domain/models/popover.js.map +0 -1
- package/dist/cjs/domain/models/product.js +0 -3
- package/dist/cjs/domain/models/product.js.map +0 -1
- package/dist/cjs/domain/models/property.js +0 -104
- package/dist/cjs/domain/models/property.js.map +0 -1
- package/dist/cjs/domain/models/route.js +0 -166
- package/dist/cjs/domain/models/route.js.map +0 -1
- package/dist/cjs/domain/models/routeConfiguration.js +0 -82
- package/dist/cjs/domain/models/routeConfiguration.js.map +0 -1
- package/dist/cjs/domain/models/routeInstance.js +0 -30
- package/dist/cjs/domain/models/routeInstance.js.map +0 -1
- package/dist/cjs/domain/models/routeStyle.js +0 -3
- package/dist/cjs/domain/models/routeStyle.js.map +0 -1
- package/dist/cjs/domain/models/scene3D.js +0 -3
- package/dist/cjs/domain/models/scene3D.js.map +0 -1
- package/dist/cjs/domain/models/transport.js +0 -22
- package/dist/cjs/domain/models/transport.js.map +0 -1
- package/dist/cjs/domain/ports/ICache.js +0 -3
- package/dist/cjs/domain/ports/ICache.js.map +0 -1
- package/dist/cjs/domain/ports/IHttpClient.js +0 -3
- package/dist/cjs/domain/ports/IHttpClient.js.map +0 -1
- package/dist/cjs/domain/ports/ILogger.js +0 -23
- package/dist/cjs/domain/ports/ILogger.js.map +0 -1
- package/dist/cjs/domain/ports/index.js +0 -10
- package/dist/cjs/domain/ports/index.js.map +0 -1
- package/dist/cjs/infrastructure/cache/CacheManager.js +0 -258
- package/dist/cjs/infrastructure/cache/CacheManager.js.map +0 -1
- package/dist/cjs/infrastructure/cache/LRUCache.js +0 -153
- package/dist/cjs/infrastructure/cache/LRUCache.js.map +0 -1
- package/dist/cjs/infrastructure/cache/PersistentCache.js +0 -168
- package/dist/cjs/infrastructure/cache/PersistentCache.js.map +0 -1
- package/dist/cjs/infrastructure/cache/cacheConfig.js +0 -70
- package/dist/cjs/infrastructure/cache/cacheConfig.js.map +0 -1
- package/dist/cjs/infrastructure/http/FetchHttpClient.js +0 -75
- package/dist/cjs/infrastructure/http/FetchHttpClient.js.map +0 -1
- package/dist/cjs/infrastructure/logging/MVXLogger.js +0 -80
- package/dist/cjs/infrastructure/logging/MVXLogger.js.map +0 -1
- package/dist/cjs/interfaces/cache.js +0 -3
- package/dist/cjs/interfaces/cache.js.map +0 -1
- package/dist/cjs/interfaces/healthResponse.js +0 -3
- package/dist/cjs/interfaces/healthResponse.js.map +0 -1
- package/dist/cjs/interfaces/institutionResponse.js +0 -3
- package/dist/cjs/interfaces/institutionResponse.js.map +0 -1
- package/dist/cjs/interfaces/metadata.js +0 -3
- package/dist/cjs/interfaces/metadata.js.map +0 -1
- package/dist/cjs/interfaces/placeResponse.js +0 -3
- package/dist/cjs/interfaces/placeResponse.js.map +0 -1
- package/dist/cjs/interfaces/routeCacheResponse.js +0 -3
- package/dist/cjs/interfaces/routeCacheResponse.js.map +0 -1
- package/dist/cjs/interfaces/routeResponse.js +0 -3
- package/dist/cjs/interfaces/routeResponse.js.map +0 -1
- package/dist/cjs/interfaces/styleResponse.js +0 -3
- package/dist/cjs/interfaces/styleResponse.js.map +0 -1
- package/dist/cjs/logger/logger.js +0 -78
- package/dist/cjs/logger/logger.js.map +0 -1
- package/dist/cjs/logger/sentry.js +0 -81
- package/dist/cjs/logger/sentry.js.map +0 -1
- package/dist/cjs/map/fitCamera.js +0 -124
- package/dist/cjs/map/fitCamera.js.map +0 -1
- package/dist/cjs/map/liveMapFitTransform.js +0 -180
- package/dist/cjs/map/liveMapFitTransform.js.map +0 -1
- package/dist/cjs/map/map.js +0 -2766
- package/dist/cjs/map/map.js.map +0 -1
- package/dist/cjs/map/mapInteractionOptions.js +0 -73
- package/dist/cjs/map/mapInteractionOptions.js.map +0 -1
- package/dist/cjs/map/scene3DController.js +0 -849
- package/dist/cjs/map/scene3DController.js.map +0 -1
- package/dist/cjs/repository/repository.js +0 -694
- package/dist/cjs/repository/repository.js.map +0 -1
- package/dist/cjs/repository/requester.js +0 -771
- package/dist/cjs/repository/requester.js.map +0 -1
- package/dist/cjs/sdk.js +0 -438
- package/dist/cjs/sdk.js.map +0 -1
- package/dist/cjs/utils/3d.js +0 -245
- package/dist/cjs/utils/3d.js.map +0 -1
- package/dist/cjs/utils/deckLayers.js +0 -153
- package/dist/cjs/utils/deckLayers.js.map +0 -1
- package/dist/cjs/utils/error.js +0 -19
- package/dist/cjs/utils/error.js.map +0 -1
- package/dist/cjs/utils/images.js +0 -25
- package/dist/cjs/utils/images.js.map +0 -1
- package/dist/cjs/utils/loadGlb.js +0 -190
- package/dist/cjs/utils/loadGlb.js.map +0 -1
- package/dist/cjs/utils/mapvxHostname.js +0 -21
- package/dist/cjs/utils/mapvxHostname.js.map +0 -1
- package/dist/cjs/utils/nav-functions.js +0 -150
- package/dist/cjs/utils/nav-functions.js.map +0 -1
- package/dist/cjs/utils/opening-hours-helper.js +0 -914
- package/dist/cjs/utils/opening-hours-helper.js.map +0 -1
- package/dist/cjs/utils/preconnect.js +0 -131
- package/dist/cjs/utils/preconnect.js.map +0 -1
- package/dist/cjs/utils/route-utils.js +0 -57
- package/dist/cjs/utils/route-utils.js.map +0 -1
- package/dist/cjs/utils/semaphore.js +0 -143
- package/dist/cjs/utils/semaphore.js.map +0 -1
- package/dist/cjs/utils/three.js +0 -113
- package/dist/cjs/utils/three.js.map +0 -1
- package/dist/cjs/utils/threeScene.js +0 -126
- package/dist/cjs/utils/threeScene.js.map +0 -1
- package/dist/cjs/utils/update-css.js +0 -76
- package/dist/cjs/utils/update-css.js.map +0 -1
- package/dist/cjs/utils/utils.js +0 -104
- package/dist/cjs/utils/utils.js.map +0 -1
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.loadCustomization = loadCustomization;
|
|
4
|
-
/**
|
|
5
|
-
* Load a CSS customization of a project.
|
|
6
|
-
*
|
|
7
|
-
* This function create a new HTML Style Element and add it to the current document.
|
|
8
|
-
* Also activate the customization adding the first theme name to the body of the document.
|
|
9
|
-
*
|
|
10
|
-
* @group Utils
|
|
11
|
-
* @param data The CSS customization data.
|
|
12
|
-
*/
|
|
13
|
-
function loadCustomization(data) {
|
|
14
|
-
const style = document.createElement("style");
|
|
15
|
-
style.textContent = "";
|
|
16
|
-
for (const [themeName, themeData] of Object.entries(data)) {
|
|
17
|
-
const cssClass = loadTheme(themeName, themeData);
|
|
18
|
-
style.textContent += cssClass;
|
|
19
|
-
}
|
|
20
|
-
document.head.appendChild(style);
|
|
21
|
-
const firstThemeName = Object.keys(data)[0];
|
|
22
|
-
if (firstThemeName != null) {
|
|
23
|
-
document.body.classList.add(firstThemeName);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Process a theme.
|
|
28
|
-
*
|
|
29
|
-
* @group Utils
|
|
30
|
-
* @param themeName The name of the Theme.
|
|
31
|
-
* @param themeData The data of the Theme.
|
|
32
|
-
* @returns A string with the processed theme to use on a CSS file.
|
|
33
|
-
*/
|
|
34
|
-
function loadTheme(themeName, themeData) {
|
|
35
|
-
var _a;
|
|
36
|
-
let cssClass = `.${themeName} {\n`;
|
|
37
|
-
const definitions = themeData.definitions;
|
|
38
|
-
if (definitions != null) {
|
|
39
|
-
cssClass = loadDefinitions(definitions, cssClass);
|
|
40
|
-
}
|
|
41
|
-
for (const [screenName, screenData] of Object.entries((_a = themeData.screens) !== null && _a !== void 0 ? _a : {})) {
|
|
42
|
-
for (const [componentName, componentData] of Object.entries(screenData)) {
|
|
43
|
-
for (const [elementName, elementData] of Object.entries(componentData)) {
|
|
44
|
-
for (const [propertyName, propertyValue] of Object.entries(elementData)) {
|
|
45
|
-
cssClass += ` --${screenName}-${componentName}-${elementName}-${propertyName}: ${propertyValue};\n`;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
cssClass += "}\n";
|
|
51
|
-
return cssClass;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Process the definitions of a theme.
|
|
55
|
-
*
|
|
56
|
-
* @group Utils
|
|
57
|
-
* @param definitions The definitions of the theme.
|
|
58
|
-
* @param cssClass The string object that will contain the processed theme
|
|
59
|
-
* @returns The cssClass string mutated with the processed definitions.
|
|
60
|
-
*/
|
|
61
|
-
function loadDefinitions(definitions, cssClass) {
|
|
62
|
-
var _a, _b, _c;
|
|
63
|
-
for (const [colorName, colorData] of Object.entries((_a = definitions.colors) !== null && _a !== void 0 ? _a : {})) {
|
|
64
|
-
for (const [colorIntensity, colorValue] of Object.entries(colorData)) {
|
|
65
|
-
cssClass += ` --definitions-colors-${colorName}-${colorIntensity}: ${colorValue};\n`;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
for (const [shadowName, shadowValue] of Object.entries((_b = definitions.shadows) !== null && _b !== void 0 ? _b : {})) {
|
|
69
|
-
cssClass += ` --definitions-shadows-${shadowName}: ${shadowValue};\n`;
|
|
70
|
-
}
|
|
71
|
-
for (const [fontName, fontValue] of Object.entries((_c = definitions.textFonts) !== null && _c !== void 0 ? _c : {})) {
|
|
72
|
-
cssClass += ` --definitions-textFonts-${fontName}: ${fontValue};\n`;
|
|
73
|
-
}
|
|
74
|
-
return cssClass;
|
|
75
|
-
}
|
|
76
|
-
//# sourceMappingURL=update-css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"update-css.js","sourceRoot":"","sources":["../../../src/utils/update-css.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/utils/utils.js
DELETED
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateHexadecimalKey = generateHexadecimalKey;
|
|
4
|
-
exports.formatArrayPlaceData = formatArrayPlaceData;
|
|
5
|
-
exports.createPositionsForStops = createPositionsForStops;
|
|
6
|
-
exports.createStops = createStops;
|
|
7
|
-
exports.getBoundingBox = getBoundingBox;
|
|
8
|
-
const place_1 = require("../domain/models/place");
|
|
9
|
-
/**
|
|
10
|
-
* this function generates a hexadecimal identifier
|
|
11
|
-
* @group Utils
|
|
12
|
-
* @returns {string} returns a hexadecimal identifier
|
|
13
|
-
*/
|
|
14
|
-
function generateHexadecimalKey() {
|
|
15
|
-
let result = "";
|
|
16
|
-
const chars = "0123456789ABCDEF";
|
|
17
|
-
for (let i = 0; i < 10; i++) {
|
|
18
|
-
result += chars.charAt(Math.floor(Math.random() * chars.length));
|
|
19
|
-
}
|
|
20
|
-
return result;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Format data into a usable type inside sdk
|
|
24
|
-
* @group Utils
|
|
25
|
-
* @param places array of raw MapVX places data
|
|
26
|
-
* @returns formatted data
|
|
27
|
-
*/
|
|
28
|
-
function formatArrayPlaceData(places) {
|
|
29
|
-
const formattedData = [];
|
|
30
|
-
places.forEach((place) => {
|
|
31
|
-
formattedData.push(new place_1.MVXPlace(place));
|
|
32
|
-
});
|
|
33
|
-
return formattedData;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Create positions for stops
|
|
37
|
-
* For example, if you have 3 stops, the positions will be [0, 0.5, 1]
|
|
38
|
-
* If you have 4 stops, the positions will be [0, 1/3, 2/3, 1]
|
|
39
|
-
* If you have 5 stops, the positions will be [0, 0.25, 0.5, 0.75, 1]
|
|
40
|
-
* If you have 1 stop, the positions will be [0]
|
|
41
|
-
* If you have 0 stops, the positions will be []
|
|
42
|
-
*
|
|
43
|
-
* @group Utils
|
|
44
|
-
* @param totalStops - The total number of stops
|
|
45
|
-
* @returns An array of numbers representing the positions for the stops
|
|
46
|
-
*/
|
|
47
|
-
function createPositionsForStops(totalStops) {
|
|
48
|
-
// Handle edge cases
|
|
49
|
-
if (totalStops === 0) {
|
|
50
|
-
return [];
|
|
51
|
-
}
|
|
52
|
-
if (totalStops === 1) {
|
|
53
|
-
return [0];
|
|
54
|
-
}
|
|
55
|
-
const step = 1 / (totalStops - 1);
|
|
56
|
-
return Array.from({ length: totalStops }, (_, i) => i * step);
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Create stops
|
|
60
|
-
* @group Utils
|
|
61
|
-
* @param a - The first array
|
|
62
|
-
* @param b - The second array
|
|
63
|
-
* @returns An array of numbers and strings
|
|
64
|
-
*/
|
|
65
|
-
function createStops(a, b) {
|
|
66
|
-
return a.flatMap((item, index) => [item, b[index]]);
|
|
67
|
-
}
|
|
68
|
-
/* Calculates the bounding box for a set of points.
|
|
69
|
-
*
|
|
70
|
-
* This function takes an array of points represented as `LatLng` objects, each having `lat` and `lng` properties for
|
|
71
|
-
* latitude and longitude coordinates, respectively. It returns the bounding box that encompasses all the points in the array,
|
|
72
|
-
* extending one kilometer southwest and northeast to add a small margin around the area covered by the points.
|
|
73
|
-
*
|
|
74
|
-
* @group Utils
|
|
75
|
-
* @param points - An array of `LatLng` objects, each representing a geographic coordinate with latitude and longitude values.
|
|
76
|
-
* @returns An array of two elements containing the southwest and northeast coordinates, in that order, that defines the resulting bounding box.
|
|
77
|
-
*
|
|
78
|
-
* @example
|
|
79
|
-
* ```typescript
|
|
80
|
-
* const points: LatLng[] = [
|
|
81
|
-
* { lat: 10, lng: 20 },
|
|
82
|
-
* { lat: 15, lng: 25 },
|
|
83
|
-
* { lat: 12, lng: 22 },
|
|
84
|
-
* ];
|
|
85
|
-
* const boundingBox = getBoundingBox(points);
|
|
86
|
-
* // boundingBox is now [{ lat: 9.991, lng: 19.991 }, { lat: 15.009, lng: 25.009 }]
|
|
87
|
-
* ```
|
|
88
|
-
*/
|
|
89
|
-
function getBoundingBox(points) {
|
|
90
|
-
const northeast = { lat: -Infinity, lng: -Infinity };
|
|
91
|
-
const southwest = { lat: Infinity, lng: Infinity };
|
|
92
|
-
points.forEach((point) => {
|
|
93
|
-
if (point.lat > northeast.lat)
|
|
94
|
-
northeast.lat = point.lat;
|
|
95
|
-
if (point.lng > northeast.lng)
|
|
96
|
-
northeast.lng = point.lng;
|
|
97
|
-
if (point.lat < southwest.lat)
|
|
98
|
-
southwest.lat = point.lat;
|
|
99
|
-
if (point.lng < southwest.lng)
|
|
100
|
-
southwest.lng = point.lng;
|
|
101
|
-
});
|
|
102
|
-
return [southwest, northeast];
|
|
103
|
-
}
|
|
104
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/utils/utils.ts"],"names":[],"mappings":";;AASA,wDAOC;AAQD,oDAMC;AAcD,0DAWC;AASD,kCAEC;AAuBD,wCAaC;AApGD,kDAAiD;AAEjD;;;;GAIG;AACH,SAAgB,sBAAsB;IACpC,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,MAAM,KAAK,GAAG,kBAAkB,CAAA;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;IAClE,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAC,MAAuB;IAC1D,MAAM,aAAa,GAAe,EAAE,CAAA;IACpC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAoB,EAAE,EAAE;QACtC,aAAa,CAAC,IAAI,CAAC,IAAI,gBAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;IACF,OAAO,aAAa,CAAA;AACtB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,uBAAuB,CAAC,UAAkB;IACxD,oBAAoB;IACpB,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,CAAC,CAAC,CAAA;IACZ,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;AAC/D,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,CAAW,EAAE,CAAW;IAClD,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AACrD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,cAAc,CAAC,MAAgB;IAC7C,MAAM,SAAS,GAAW,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAA;IAC5D,MAAM,SAAS,GAAW,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAA;IAE1D,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACvB,IAAI,KAAK,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG;YAAE,SAAS,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;QACxD,IAAI,KAAK,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG;YAAE,SAAS,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;QAExD,IAAI,KAAK,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG;YAAE,SAAS,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;QACxD,IAAI,KAAK,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG;YAAE,SAAS,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;IAC1D,CAAC,CAAC,CAAA;IAEF,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;AAC/B,CAAC"}
|