@rnmapbox/maps 10.0.0-beta.74 → 10.0.0-beta.75
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/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/CameraStop.kt +61 -46
- package/index.d.ts +28 -257
- package/javascript/components/ImageSource.tsx +81 -0
- package/javascript/components/{MapView.js → MapView.tsx} +456 -383
- package/javascript/components/NativeBridgeComponent.tsx +1 -1
- package/javascript/components/RasterDemSource.tsx +105 -0
- package/javascript/components/RasterSource.tsx +124 -0
- package/javascript/modules/offline/{OfflineCreatePackOptions.js → OfflineCreatePackOptions.ts} +21 -6
- package/javascript/modules/offline/{OfflinePack.js → OfflinePack.ts} +19 -4
- package/javascript/modules/offline/{offlineManager.js → offlineManager.ts} +77 -21
- package/javascript/modules/snapshot/{SnapshotOptions.js → SnapshotOptions.ts} +27 -3
- package/javascript/modules/snapshot/{snapshotManager.js → snapshotManager.ts} +1 -1
- package/javascript/utils/geoUtils.ts +91 -0
- package/javascript/utils/{index.js → index.ts} +41 -19
- package/lib/commonjs/components/ImageSource.js +8 -25
- package/lib/commonjs/components/ImageSource.js.map +1 -1
- package/lib/commonjs/components/MapView.js +30 -289
- package/lib/commonjs/components/MapView.js.map +1 -1
- package/lib/commonjs/components/NativeBridgeComponent.js.map +1 -1
- package/lib/commonjs/components/RasterDemSource.js +3 -37
- package/lib/commonjs/components/RasterDemSource.js.map +1 -1
- package/lib/commonjs/components/RasterSource.js +2 -46
- package/lib/commonjs/components/RasterSource.js.map +1 -1
- package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js +2 -4
- package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js.map +1 -1
- package/lib/commonjs/modules/offline/OfflinePack.js.map +1 -1
- package/lib/commonjs/modules/offline/offlineManager.js +1 -2
- package/lib/commonjs/modules/offline/offlineManager.js.map +1 -1
- package/lib/commonjs/modules/snapshot/SnapshotOptions.js.map +1 -1
- package/lib/commonjs/modules/snapshot/snapshotManager.js.map +1 -1
- package/lib/commonjs/utils/geoUtils.js +15 -23
- package/lib/commonjs/utils/geoUtils.js.map +1 -1
- package/lib/commonjs/utils/index.js +3 -6
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/module/components/ImageSource.js +8 -25
- package/lib/module/components/ImageSource.js.map +1 -1
- package/lib/module/components/MapView.js +31 -290
- package/lib/module/components/MapView.js.map +1 -1
- package/lib/module/components/NativeBridgeComponent.js.map +1 -1
- package/lib/module/components/RasterDemSource.js +4 -38
- package/lib/module/components/RasterDemSource.js.map +1 -1
- package/lib/module/components/RasterSource.js +3 -47
- package/lib/module/components/RasterSource.js.map +1 -1
- package/lib/module/modules/offline/OfflineCreatePackOptions.js +2 -4
- package/lib/module/modules/offline/OfflineCreatePackOptions.js.map +1 -1
- package/lib/module/modules/offline/OfflinePack.js.map +1 -1
- package/lib/module/modules/offline/offlineManager.js +0 -1
- package/lib/module/modules/offline/offlineManager.js.map +1 -1
- package/lib/module/modules/snapshot/SnapshotOptions.js.map +1 -1
- package/lib/module/modules/snapshot/snapshotManager.js.map +1 -1
- package/lib/module/utils/geoUtils.js +7 -18
- package/lib/module/utils/geoUtils.js.map +1 -1
- package/lib/module/utils/index.js +3 -5
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/components/ImageSource.d.ts +32 -0
- package/lib/typescript/components/ImageSource.d.ts.map +1 -0
- package/lib/typescript/components/MapView.d.ts +472 -0
- package/lib/typescript/components/MapView.d.ts.map +1 -0
- package/lib/typescript/components/NativeBridgeComponent.d.ts +1 -1
- package/lib/typescript/components/NativeBridgeComponent.d.ts.map +1 -1
- package/lib/typescript/components/PointAnnotation.d.ts +1 -1
- package/lib/typescript/components/RasterDemSource.d.ts +46 -0
- package/lib/typescript/components/RasterDemSource.d.ts.map +1 -0
- package/lib/typescript/components/RasterSource.d.ts +59 -0
- package/lib/typescript/components/RasterSource.d.ts.map +1 -0
- package/lib/typescript/components/ShapeSource.d.ts +1 -1
- package/lib/typescript/components/VectorSource.d.ts +1 -1
- package/lib/typescript/modules/offline/OfflineCreatePackOptions.d.ts +22 -0
- package/lib/typescript/modules/offline/OfflineCreatePackOptions.d.ts.map +1 -0
- package/lib/typescript/modules/offline/OfflinePack.d.ts +24 -0
- package/lib/typescript/modules/offline/OfflinePack.d.ts.map +1 -0
- package/lib/typescript/modules/offline/offlineManager.d.ts +219 -0
- package/lib/typescript/modules/offline/offlineManager.d.ts.map +1 -0
- package/lib/typescript/modules/snapshot/SnapshotOptions.d.ts +41 -0
- package/lib/typescript/modules/snapshot/SnapshotOptions.d.ts.map +1 -0
- package/lib/typescript/modules/snapshot/snapshotManager.d.ts +51 -0
- package/lib/typescript/modules/snapshot/snapshotManager.d.ts.map +1 -0
- package/lib/typescript/utils/geoUtils.d.ts +23 -0
- package/lib/typescript/utils/geoUtils.d.ts.map +1 -0
- package/lib/typescript/utils/index.d.ts +48 -0
- package/lib/typescript/utils/index.d.ts.map +1 -0
- package/package.json +3 -1
- package/javascript/components/ImageSource.js +0 -82
- package/javascript/components/RasterDemSource.js +0 -106
- package/javascript/components/RasterSource.js +0 -124
- package/javascript/utils/geoUtils.d.ts +0 -10
- package/javascript/utils/geoUtils.js +0 -73
- package/javascript/utils/index.d.ts +0 -27
- package/lib/commonjs/utils/geoUtils.d.js +0 -2
- package/lib/commonjs/utils/geoUtils.d.js.map +0 -1
- package/lib/commonjs/utils/index.d.js +0 -2
- package/lib/commonjs/utils/index.d.js.map +0 -1
- package/lib/module/utils/geoUtils.d.js +0 -2
- package/lib/module/utils/geoUtils.d.js.map +0 -1
- package/lib/module/utils/index.d.js +0 -2
- package/lib/module/utils/index.d.js.map +0 -1
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import {
|
|
2
|
+
featureCollection,
|
|
3
|
+
point,
|
|
4
|
+
feature,
|
|
5
|
+
lineString,
|
|
6
|
+
Position,
|
|
7
|
+
Properties,
|
|
8
|
+
Id,
|
|
9
|
+
BBox,
|
|
10
|
+
FeatureCollection,
|
|
11
|
+
Geometry,
|
|
12
|
+
Point,
|
|
13
|
+
Feature,
|
|
14
|
+
} from '@turf/helpers';
|
|
15
|
+
import distance from '@turf/distance';
|
|
16
|
+
import along from '@turf/along';
|
|
17
|
+
import geoViewport from '@mapbox/geo-viewport';
|
|
18
|
+
|
|
19
|
+
const VECTOR_TILE_SIZE = 512;
|
|
20
|
+
|
|
21
|
+
export const makePoint = point;
|
|
22
|
+
|
|
23
|
+
export const makeLineString = lineString;
|
|
24
|
+
|
|
25
|
+
export function makeLatLngBounds(
|
|
26
|
+
northEastCoordinates: Position,
|
|
27
|
+
southWestCoordinates: Position,
|
|
28
|
+
): FeatureCollection<Point> {
|
|
29
|
+
return featureCollection([
|
|
30
|
+
point(northEastCoordinates),
|
|
31
|
+
point(southWestCoordinates),
|
|
32
|
+
]);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export const makeFeature = feature;
|
|
36
|
+
|
|
37
|
+
export function makeFeatureCollection<G = Geometry, P = Properties>(
|
|
38
|
+
features: Array<Feature<G, P>> = [],
|
|
39
|
+
options?: {
|
|
40
|
+
bbox?: BBox;
|
|
41
|
+
id?: Id;
|
|
42
|
+
},
|
|
43
|
+
) {
|
|
44
|
+
return featureCollection(features, options);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export function addToFeatureCollection(
|
|
48
|
+
newFeatureCollection: FeatureCollection,
|
|
49
|
+
newFeature: Feature,
|
|
50
|
+
): FeatureCollection {
|
|
51
|
+
return {
|
|
52
|
+
...newFeatureCollection,
|
|
53
|
+
features: [...newFeatureCollection.features, newFeature],
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export const calculateDistance = distance;
|
|
58
|
+
|
|
59
|
+
export const pointAlongLine = along;
|
|
60
|
+
|
|
61
|
+
export function getOrCalculateVisibleRegion(
|
|
62
|
+
coord: [number, number],
|
|
63
|
+
zoomLevel: number,
|
|
64
|
+
width: number,
|
|
65
|
+
height: number,
|
|
66
|
+
nativeRegion: {
|
|
67
|
+
properties: {
|
|
68
|
+
visibleBounds: number[][];
|
|
69
|
+
};
|
|
70
|
+
},
|
|
71
|
+
) {
|
|
72
|
+
const region = {
|
|
73
|
+
ne: [0, 0],
|
|
74
|
+
sw: [0, 0],
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
if (!nativeRegion || !Array.isArray(nativeRegion.properties.visibleBounds)) {
|
|
78
|
+
const bounds = geoViewport.bounds(
|
|
79
|
+
coord,
|
|
80
|
+
zoomLevel,
|
|
81
|
+
[width, height],
|
|
82
|
+
VECTOR_TILE_SIZE,
|
|
83
|
+
);
|
|
84
|
+
region.ne = [bounds[3], bounds[2]];
|
|
85
|
+
region.sw = [bounds[1], bounds[0]];
|
|
86
|
+
} else {
|
|
87
|
+
[region.ne, region.sw] = nativeRegion.properties.visibleBounds;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
return region;
|
|
91
|
+
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
1
2
|
import React from 'react';
|
|
2
3
|
import {
|
|
3
|
-
View,
|
|
4
4
|
NativeModules,
|
|
5
5
|
findNodeHandle,
|
|
6
6
|
Platform,
|
|
7
7
|
Image,
|
|
8
|
+
ImageSourcePropType,
|
|
8
9
|
} from 'react-native';
|
|
9
|
-
import { ViewPropTypes } from 'deprecated-react-native-prop-types';
|
|
10
10
|
import PropTypes from 'prop-types';
|
|
11
11
|
|
|
12
|
-
function getAndroidManagerInstance(module) {
|
|
12
|
+
function getAndroidManagerInstance(module: string) {
|
|
13
13
|
const haveViewManagerConfig =
|
|
14
14
|
NativeModules.UIManager && NativeModules.UIManager.getViewManagerConfig;
|
|
15
15
|
return haveViewManagerConfig
|
|
@@ -17,12 +17,10 @@ function getAndroidManagerInstance(module) {
|
|
|
17
17
|
: NativeModules.UIManager[module];
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
function getIosManagerInstance(module) {
|
|
20
|
+
function getIosManagerInstance(module: string): any {
|
|
21
21
|
return NativeModules[getIOSModuleName(module)];
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
export const viewPropTypes = ViewPropTypes || View.props;
|
|
25
|
-
|
|
26
24
|
export const ornamentPositionPropType = PropTypes.oneOfType([
|
|
27
25
|
PropTypes.shape({ top: PropTypes.number, left: PropTypes.number }),
|
|
28
26
|
PropTypes.shape({ top: PropTypes.number, right: PropTypes.number }),
|
|
@@ -30,42 +28,57 @@ export const ornamentPositionPropType = PropTypes.oneOfType([
|
|
|
30
28
|
PropTypes.shape({ bottom: PropTypes.number, right: PropTypes.number }),
|
|
31
29
|
]);
|
|
32
30
|
|
|
33
|
-
export function isAndroid() {
|
|
31
|
+
export function isAndroid(): boolean {
|
|
34
32
|
return Platform.OS === 'android';
|
|
35
33
|
}
|
|
36
34
|
|
|
37
|
-
export function existenceChange(cur, next) {
|
|
35
|
+
export function existenceChange(cur: boolean, next: boolean): boolean {
|
|
38
36
|
if (!cur && !next) {
|
|
39
37
|
return false;
|
|
40
38
|
}
|
|
41
39
|
return (!cur && next) || (cur && !next);
|
|
42
40
|
}
|
|
43
41
|
|
|
44
|
-
export function isFunction(fn) {
|
|
42
|
+
export function isFunction(fn: unknown): fn is boolean {
|
|
45
43
|
return typeof fn === 'function';
|
|
46
44
|
}
|
|
47
45
|
|
|
48
|
-
export function isNumber(num) {
|
|
46
|
+
export function isNumber(num: unknown): num is number {
|
|
49
47
|
return typeof num === 'number' && !Number.isNaN(num);
|
|
50
48
|
}
|
|
51
49
|
|
|
52
|
-
export function isUndefined(obj) {
|
|
50
|
+
export function isUndefined(obj: unknown): obj is undefined {
|
|
53
51
|
return typeof obj === 'undefined';
|
|
54
52
|
}
|
|
55
53
|
|
|
56
|
-
export function isString(str) {
|
|
54
|
+
export function isString(str: unknown): str is string {
|
|
57
55
|
return typeof str === 'string';
|
|
58
56
|
}
|
|
59
57
|
|
|
60
|
-
export function isBoolean(bool) {
|
|
58
|
+
export function isBoolean(bool: unknown): bool is boolean {
|
|
61
59
|
return typeof bool === 'boolean';
|
|
62
60
|
}
|
|
63
61
|
|
|
64
|
-
export function isPrimitive(
|
|
62
|
+
export function isPrimitive(
|
|
63
|
+
value: unknown,
|
|
64
|
+
): value is string | number | boolean {
|
|
65
65
|
return isString(value) || isNumber(value) || isBoolean(value);
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
export
|
|
68
|
+
export type NativeArg =
|
|
69
|
+
| string
|
|
70
|
+
| number
|
|
71
|
+
| boolean
|
|
72
|
+
| null
|
|
73
|
+
| { [k: string]: NativeArg }
|
|
74
|
+
| NativeArg[];
|
|
75
|
+
|
|
76
|
+
export function runNativeCommand<ReturnType = NativeArg>(
|
|
77
|
+
module: string,
|
|
78
|
+
name: string,
|
|
79
|
+
nativeRef: any,
|
|
80
|
+
args: NativeArg[],
|
|
81
|
+
): Promise<ReturnType> {
|
|
69
82
|
const handle = findNodeHandle(nativeRef);
|
|
70
83
|
if (!handle) {
|
|
71
84
|
throw new Error(`Could not find handle for native ref ${module}.${name}`);
|
|
@@ -93,7 +106,10 @@ export function runNativeCommand(module, name, nativeRef, args = []) {
|
|
|
93
106
|
return managerInstance[name](handle, ...args);
|
|
94
107
|
}
|
|
95
108
|
|
|
96
|
-
export function cloneReactChildrenWithProps(
|
|
109
|
+
export function cloneReactChildrenWithProps(
|
|
110
|
+
children: Parameters<typeof React.Children.map>[0],
|
|
111
|
+
propsToAdd: { [key: string]: string } = {},
|
|
112
|
+
) {
|
|
97
113
|
if (!children) {
|
|
98
114
|
return null;
|
|
99
115
|
}
|
|
@@ -112,18 +128,24 @@ export function cloneReactChildrenWithProps(children, propsToAdd = {}) {
|
|
|
112
128
|
);
|
|
113
129
|
}
|
|
114
130
|
|
|
115
|
-
export function resolveImagePath(imageRef) {
|
|
131
|
+
export function resolveImagePath(imageRef: ImageSourcePropType): string {
|
|
116
132
|
const res = Image.resolveAssetSource(imageRef);
|
|
117
133
|
return res.uri;
|
|
118
134
|
}
|
|
119
135
|
|
|
120
|
-
export function getIOSModuleName(moduleName) {
|
|
136
|
+
export function getIOSModuleName(moduleName: string): string {
|
|
121
137
|
if (moduleName.startsWith('RCT')) {
|
|
122
138
|
return moduleName.substring(3);
|
|
123
139
|
}
|
|
124
140
|
return moduleName;
|
|
125
141
|
}
|
|
126
142
|
|
|
127
|
-
export function toJSONString(json = '') {
|
|
143
|
+
export function toJSONString(json: any = '') {
|
|
128
144
|
return JSON.stringify(json);
|
|
129
145
|
}
|
|
146
|
+
|
|
147
|
+
export type OrnamentPositonProp =
|
|
148
|
+
| { top: number; left: number }
|
|
149
|
+
| { top: number; right: number }
|
|
150
|
+
| { bottom: number; left: number }
|
|
151
|
+
| { bottom: number; right: number };
|
|
@@ -5,44 +5,27 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.NATIVE_MODULE_NAME = void 0;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
8
|
var _reactNative = require("react-native");
|
|
10
9
|
var _utils = require("../utils");
|
|
11
10
|
var _AbstractSource = _interopRequireDefault(require("./AbstractSource"));
|
|
12
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
12
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
14
13
|
const NATIVE_MODULE_NAME = 'RCTMGLImageSource';
|
|
15
|
-
|
|
14
|
+
exports.NATIVE_MODULE_NAME = NATIVE_MODULE_NAME;
|
|
16
15
|
/**
|
|
17
16
|
* ImageSource is a content source that is used for a georeferenced raster image to be shown on the map.
|
|
18
17
|
* The georeferenced image scales and rotates as the user zooms and rotates the map
|
|
19
18
|
*/
|
|
20
|
-
exports.NATIVE_MODULE_NAME = NATIVE_MODULE_NAME;
|
|
21
19
|
class ImageSource extends _AbstractSource.default {
|
|
22
|
-
static propTypes = {
|
|
23
|
-
..._utils.viewPropTypes,
|
|
24
|
-
/**
|
|
25
|
-
* A string that uniquely identifies the source.
|
|
26
|
-
*/
|
|
27
|
-
id: _propTypes.default.string.isRequired,
|
|
28
|
-
/**
|
|
29
|
-
* An HTTP(S) URL, absolute file URL, or local file URL to the source image.
|
|
30
|
-
* Gifs are currently not supported.
|
|
31
|
-
*/
|
|
32
|
-
url: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
33
|
-
/**
|
|
34
|
-
* The top left, top right, bottom right, and bottom left coordinates for the image.
|
|
35
|
-
*/
|
|
36
|
-
coordinates: _propTypes.default.arrayOf(_propTypes.default.arrayOf(_propTypes.default.number).isRequired).isRequired
|
|
37
|
-
};
|
|
38
20
|
_getURL() {
|
|
39
|
-
|
|
21
|
+
const {
|
|
40
22
|
url
|
|
41
23
|
} = this.props;
|
|
42
|
-
if ((0, _utils.isNumber)(
|
|
43
|
-
|
|
24
|
+
if ((0, _utils.isNumber)(url)) {
|
|
25
|
+
return (0, _utils.resolveImagePath)(url);
|
|
26
|
+
} else {
|
|
27
|
+
return url;
|
|
44
28
|
}
|
|
45
|
-
return url;
|
|
46
29
|
}
|
|
47
30
|
render() {
|
|
48
31
|
if (!this.props.url || !this.props.coordinates || !this.props.coordinates.length) {
|
|
@@ -53,13 +36,13 @@ class ImageSource extends _AbstractSource.default {
|
|
|
53
36
|
url: this._getURL()
|
|
54
37
|
};
|
|
55
38
|
return /*#__PURE__*/_react.default.createElement(RCTMGLImageSource, _extends({
|
|
56
|
-
ref:
|
|
39
|
+
ref: this.setNativeRef
|
|
57
40
|
}, props), (0, _utils.cloneReactChildrenWithProps)(this.props.children, {
|
|
58
41
|
sourceID: this.props.id
|
|
59
42
|
}));
|
|
60
43
|
}
|
|
61
44
|
}
|
|
62
|
-
const RCTMGLImageSource = (0, _reactNative.requireNativeComponent)(NATIVE_MODULE_NAME
|
|
45
|
+
const RCTMGLImageSource = (0, _reactNative.requireNativeComponent)(NATIVE_MODULE_NAME);
|
|
63
46
|
var _default = ImageSource;
|
|
64
47
|
exports.default = _default;
|
|
65
48
|
//# sourceMappingURL=ImageSource.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_utils","_AbstractSource","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","NATIVE_MODULE_NAME","exports","ImageSource","AbstractSource","_getURL","url","props","isNumber","resolveImagePath","render","coordinates","createElement","RCTMGLImageSource","ref","setNativeRef","cloneReactChildrenWithProps","children","sourceID","id","requireNativeComponent","_default"],"sourceRoot":"../../../javascript","sources":["components/ImageSource.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AAOA,IAAAG,eAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAA8C,SAAAD,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAS,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAa,KAAA,OAAAP,SAAA;AAEvC,MAAMQ,kBAAkB,GAAG,mBAAmB;AAACC,OAAA,CAAAD,kBAAA,GAAAA,kBAAA;AA0BtD;AACA;AACA;AACA;AACA,MAAME,WAAW,SAASC,uBAAc,CAAqB;EAC3DC,OAAOA,CAAA,EAAuB;IAC5B,MAAM;MAAEC;IAAI,CAAC,GAAG,IAAI,CAACC,KAAK;IAE1B,IAAI,IAAAC,eAAQ,EAACF,GAAG,CAAC,EAAE;MACjB,OAAO,IAAAG,uBAAgB,EAACH,GAAG,CAAC;IAC9B,CAAC,MAAM;MACL,OAAOA,GAAG;IACZ;EACF;EAEAI,MAAMA,CAAA,EAAG;IACP,IACE,CAAC,IAAI,CAACH,KAAK,CAACD,GAAG,IACf,CAAC,IAAI,CAACC,KAAK,CAACI,WAAW,IACvB,CAAC,IAAI,CAACJ,KAAK,CAACI,WAAW,CAACjB,MAAM,EAC9B;MACA,OAAO,IAAI;IACb;IAEA,MAAMa,KAAK,GAAG;MACZ,GAAG,IAAI,CAACA,KAAK;MACbD,GAAG,EAAE,IAAI,CAACD,OAAO;IACnB,CAAC;IAED,oBACE3B,MAAA,CAAAQ,OAAA,CAAA0B,aAAA,CAACC,iBAAiB,EAAA1B,QAAA;MAAC2B,GAAG,EAAE,IAAI,CAACC;IAAa,GAAKR,KAAK,GACjD,IAAAS,kCAA2B,EAAC,IAAI,CAACT,KAAK,CAACU,QAAQ,EAAE;MAChDC,QAAQ,EAAE,IAAI,CAACX,KAAK,CAACY;IACvB,CAAC,CAAC,CACgB;EAExB;AACF;AAEA,MAAMN,iBAAiB,GACrB,IAAAO,mCAAsB,EAAcnB,kBAAkB,CAAC;AAAC,IAAAoB,QAAA,GAE3ClB,WAAW;AAAAD,OAAA,CAAAhB,OAAA,GAAAmC,QAAA"}
|