@fleet-frontend/mower-maps 0.0.9-beta.1 → 0.0.9-beta.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/dist/index.esm.js +70 -45
- package/dist/index.js +70 -45
- package/dist/processor/PathDataProcessor.d.ts.map +1 -1
- package/dist/render/BoundaryLabelsManager.d.ts.map +1 -1
- package/dist/render/MowerMapOverlay.d.ts.map +1 -1
- package/dist/render/MowerMapRenderer.d.ts.map +1 -1
- package/dist/render/MowerPositionManager.d.ts.map +1 -1
- package/dist/render/SvgMapView.d.ts.map +1 -1
- package/dist/utils/handleRealTime.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -81,7 +81,6 @@ class SvgMapView {
|
|
|
81
81
|
this.layers.sort((a, b) => a.getLevel() - b.getLevel());
|
|
82
82
|
}
|
|
83
83
|
getLayer(type) {
|
|
84
|
-
console.log('getLayer----->', this.layers, type);
|
|
85
84
|
return this.layers.find((layer) => layer.getType() === type) || null;
|
|
86
85
|
}
|
|
87
86
|
/**
|
|
@@ -2083,7 +2082,6 @@ const handleMultipleRealTimeData = ({ realTimeData, isMowing, pathData, partitio
|
|
|
2083
2082
|
// 割草轨迹
|
|
2084
2083
|
const { postureX, postureY, vehicleState } = item;
|
|
2085
2084
|
const currentPartitionId = getPartitionId(partitionBoundary, Number(postureX), Number(postureY));
|
|
2086
|
-
console.log('currentPartitionId===', currentPartitionId);
|
|
2087
2085
|
if (currentPartitionId && newPathData?.[currentPartitionId]) {
|
|
2088
2086
|
const currentPathData = newPathData[currentPartitionId];
|
|
2089
2087
|
newPathData[currentPartitionId] = {
|
|
@@ -6006,7 +6004,6 @@ class PathDataProcessor {
|
|
|
6006
6004
|
elements,
|
|
6007
6005
|
};
|
|
6008
6006
|
});
|
|
6009
|
-
console.log('result->', result);
|
|
6010
6007
|
return result;
|
|
6011
6008
|
}
|
|
6012
6009
|
}
|
|
@@ -6237,7 +6234,6 @@ class BoundaryLabelsManager {
|
|
|
6237
6234
|
* @param viewBox SVG的viewBox信息
|
|
6238
6235
|
*/
|
|
6239
6236
|
updatePositionsWithPrecomputedData(divWidth, divHeight, viewBox) {
|
|
6240
|
-
console.log('updatePositionsWithPrecomputedData----->', this.rotation);
|
|
6241
6237
|
if (!this.container || !this.svgView)
|
|
6242
6238
|
return;
|
|
6243
6239
|
const dw = parseFloat(this.svgView.getSVG().getAttribute('width')) || divWidth;
|
|
@@ -7351,7 +7347,6 @@ class MowerPositionManager {
|
|
|
7351
7347
|
if (!chargingPilesPositionConfig)
|
|
7352
7348
|
return;
|
|
7353
7349
|
this.mowerPositionConfig = chargingPilesPositionConfig;
|
|
7354
|
-
console.log('manager updatePositionByLastPosition----->', chargingPilesPositionConfig, this.lastPosition);
|
|
7355
7350
|
const lastPosition = this.lastPosition;
|
|
7356
7351
|
const postureX = chargingPilesPositionConfig.postureX || chargingPilesPositionConfig.lastPostureX || lastPosition?.x;
|
|
7357
7352
|
const postureY = chargingPilesPositionConfig.postureY || chargingPilesPositionConfig.lastPostureY || lastPosition?.y;
|
|
@@ -7365,9 +7360,10 @@ class MowerPositionManager {
|
|
|
7365
7360
|
* 更新割草机位置
|
|
7366
7361
|
*/
|
|
7367
7362
|
updatePosition(positionConfig, animationTime = 0) {
|
|
7368
|
-
console.log('manager updatePosition----->', positionConfig);
|
|
7369
7363
|
// 检查是否需要更新图片
|
|
7370
7364
|
this.updateMowerImage(positionConfig);
|
|
7365
|
+
// 更新配置
|
|
7366
|
+
this.mowerPositionConfig = positionConfig;
|
|
7371
7367
|
const postureX = positionConfig.postureX || this.lastPosition?.x;
|
|
7372
7368
|
const postureY = positionConfig.postureY || this.lastPosition?.y;
|
|
7373
7369
|
const postureTheta = positionConfig.postureTheta || this.lastPosition?.rotation;
|
|
@@ -7391,8 +7387,6 @@ class MowerPositionManager {
|
|
|
7391
7387
|
// 立即更新位置
|
|
7392
7388
|
this.setElementPosition(positionConfig.postureX, positionConfig.postureY, positionConfig.postureTheta);
|
|
7393
7389
|
}
|
|
7394
|
-
// 更新配置
|
|
7395
|
-
this.mowerPositionConfig = positionConfig;
|
|
7396
7390
|
}
|
|
7397
7391
|
/**
|
|
7398
7392
|
* 更新割草机图片
|
|
@@ -7506,11 +7500,9 @@ class MowerPositionManager {
|
|
|
7506
7500
|
this.onMowingPositionChange({
|
|
7507
7501
|
x: currentX,
|
|
7508
7502
|
y: currentY,
|
|
7509
|
-
vehicleState: this.mowerPositionConfig
|
|
7503
|
+
vehicleState: this.mowerPositionConfig?.vehicleState,
|
|
7510
7504
|
});
|
|
7511
7505
|
}
|
|
7512
|
-
// console.log('animateStep----->', this.onlyUpdateTheta, currentX, currentY, currentRotation);
|
|
7513
|
-
//
|
|
7514
7506
|
// 继续动画或结束
|
|
7515
7507
|
if (progress < 1) {
|
|
7516
7508
|
// 设置当前位置
|
|
@@ -7722,7 +7714,6 @@ class MowerMapOverlay {
|
|
|
7722
7714
|
this.boundaryData = generateBoundaryData(mapData, pathData);
|
|
7723
7715
|
}
|
|
7724
7716
|
updatePosition(positionConfig, animationTime = 2200) {
|
|
7725
|
-
console.log('updatePosition==', positionConfig, animationTime);
|
|
7726
7717
|
// 保存当前动画时长
|
|
7727
7718
|
this.currentAnimationTime = animationTime;
|
|
7728
7719
|
// 标记是否为用户动画(大于0表示用户主动触发的动画)
|
|
@@ -7735,7 +7726,6 @@ class MowerMapOverlay {
|
|
|
7735
7726
|
}
|
|
7736
7727
|
}
|
|
7737
7728
|
updatePositionByLastPosition(chargingPilesPositionConfig) {
|
|
7738
|
-
console.log('overlay updatePositionByLastPosition----->', this.mowerPositionManager, chargingPilesPositionConfig);
|
|
7739
7729
|
// 更新配置
|
|
7740
7730
|
if (this.mowerPositionManager) {
|
|
7741
7731
|
this.mowerPositionManager.updatePositionByLastPosition(chargingPilesPositionConfig);
|
|
@@ -7770,10 +7760,8 @@ class MowerMapOverlay {
|
|
|
7770
7760
|
this.mowPartitionData = mowPartitionData;
|
|
7771
7761
|
const boundaryBorderLayer = this.svgMapView?.getLayer(LAYER_DEFAULT_TYPE.BOUNDARY_BORDER);
|
|
7772
7762
|
const partitionIds = mowPartitionData?.partitionIds || [];
|
|
7773
|
-
console.log('setBorderLayerHighlight----->', partitionIds);
|
|
7774
7763
|
for (const partitionId of partitionIds) {
|
|
7775
7764
|
const boundaryBorderPaths = boundaryBorderLayer?.boudaryBorderPaths?.[partitionId];
|
|
7776
|
-
console.log('boundaryBorderPaths----->', boundaryBorderLayer, boundaryBorderPaths);
|
|
7777
7765
|
if (boundaryBorderPaths) {
|
|
7778
7766
|
boundaryBorderPaths.forEach((path) => {
|
|
7779
7767
|
path.setAttribute('stroke', BOUNDARY_STYLES.mowingLineColor);
|
|
@@ -7803,6 +7791,7 @@ class MowerMapOverlay {
|
|
|
7803
7791
|
this.createBoundaryLabelsManager();
|
|
7804
7792
|
// 创建割草机位置管理器
|
|
7805
7793
|
this.createMowerPositionManager();
|
|
7794
|
+
this.setManagerRotation(this.defaultTransform.rotation);
|
|
7806
7795
|
// 如果处于编辑模式,创建编辑界面
|
|
7807
7796
|
if (this.isEditMode) {
|
|
7808
7797
|
this.createEditInterface();
|
|
@@ -8505,7 +8494,6 @@ class MowerMapOverlay {
|
|
|
8505
8494
|
this.loadMapData();
|
|
8506
8495
|
// 加载路径数据
|
|
8507
8496
|
if (this.pathData && this.svgMapView) {
|
|
8508
|
-
console.log('initializeSvgMapView->', this.pathData, this.mowPartitionData);
|
|
8509
8497
|
this.loadPathData(this.pathData, this.mowPartitionData);
|
|
8510
8498
|
}
|
|
8511
8499
|
// 刷新绘制图层
|
|
@@ -8578,7 +8566,6 @@ class MowerMapOverlay {
|
|
|
8578
8566
|
try {
|
|
8579
8567
|
// 使用现有的PathDataProcessor处理路径数据
|
|
8580
8568
|
const pathElements = PathDataProcessor.processPathData(pathData, this.mapConfig);
|
|
8581
|
-
console.log('pathdaata->', pathElements, mowPartitionData);
|
|
8582
8569
|
const newPathElements = pathElements.map((pathElement) => {
|
|
8583
8570
|
const { id, elements } = pathElement;
|
|
8584
8571
|
const isMowBoundary = mowPartitionData && mowPartitionData?.partitionIds?.includes(id);
|
|
@@ -8626,7 +8613,6 @@ class MowerMapOverlay {
|
|
|
8626
8613
|
// 找到当前position所在的分区id,将该点更新到pathData中
|
|
8627
8614
|
const currentPartitionId = getPartitionId(this.partitionBoundary, position.x, position.y);
|
|
8628
8615
|
const processStateIsMowing = useProcessMowingState.getState().processStateIsMowing;
|
|
8629
|
-
// console.log('processStateIsMowing==', processStateIsMowing);
|
|
8630
8616
|
if (currentPartitionId && this.pathData?.[currentPartitionId]) {
|
|
8631
8617
|
const currentPathData = this.pathData[currentPartitionId];
|
|
8632
8618
|
this.pathData[currentPartitionId] = {
|
|
@@ -8837,30 +8823,71 @@ const isValidGpsCoordinate = (coordinate) => {
|
|
|
8837
8823
|
!(Math.abs(lng) < 0.001 && Math.abs(lat) < 0.001) // 排除接近(0,0)的坐标
|
|
8838
8824
|
);
|
|
8839
8825
|
};
|
|
8826
|
+
// 旋转坐标点
|
|
8827
|
+
const rotateCoordinate = (point, center, angleRadians) => {
|
|
8828
|
+
const [x, y] = point;
|
|
8829
|
+
const [cx, cy] = center;
|
|
8830
|
+
// 将点移动到原点
|
|
8831
|
+
const dx = x - cx;
|
|
8832
|
+
const dy = y - cy;
|
|
8833
|
+
// 应用旋转矩阵
|
|
8834
|
+
const cos = Math.cos(angleRadians);
|
|
8835
|
+
const sin = Math.sin(angleRadians);
|
|
8836
|
+
const rotatedX = dx * cos - dy * sin;
|
|
8837
|
+
const rotatedY = dx * sin + dy * cos;
|
|
8838
|
+
// 移回原位置
|
|
8839
|
+
return [rotatedX + cx, rotatedY + cy];
|
|
8840
|
+
};
|
|
8840
8841
|
// 获取有效的GPS边界
|
|
8841
|
-
const getValidGpsBounds = (mapData) => {
|
|
8842
|
+
const getValidGpsBounds = (mapData, rotation = 0) => {
|
|
8843
|
+
let bounds;
|
|
8842
8844
|
// 首先尝试使用地图数据中的GPS坐标
|
|
8843
8845
|
if (isValidGpsCoordinate(mapData.sw_gps) && isValidGpsCoordinate(mapData.ne_gps)) {
|
|
8844
|
-
|
|
8846
|
+
bounds = {
|
|
8845
8847
|
sw: mapData.sw_gps,
|
|
8846
8848
|
ne: mapData.ne_gps,
|
|
8847
8849
|
};
|
|
8848
8850
|
}
|
|
8849
|
-
|
|
8850
|
-
|
|
8851
|
-
|
|
8852
|
-
|
|
8853
|
-
|
|
8854
|
-
|
|
8855
|
-
|
|
8851
|
+
else {
|
|
8852
|
+
// 如果GPS坐标无效,尝试从地图几何数据估算
|
|
8853
|
+
const { sw, ne } = estimateGpsFromMapBounds(mapData);
|
|
8854
|
+
if (sw && ne) {
|
|
8855
|
+
console.warn('GPS坐标无效,使用地图几何数据估算边界:', sw, ne);
|
|
8856
|
+
bounds = {
|
|
8857
|
+
sw: [sw[0], sw[1]],
|
|
8858
|
+
ne: [ne[0], ne[1]],
|
|
8859
|
+
};
|
|
8860
|
+
}
|
|
8861
|
+
else {
|
|
8862
|
+
// 最后的fallback:使用默认坐标
|
|
8863
|
+
console.warn('无法获取有效的GPS边界,使用默认坐标');
|
|
8864
|
+
bounds = {
|
|
8865
|
+
sw: [-9.1562, -37.7503],
|
|
8866
|
+
ne: [31.247, 5.797],
|
|
8867
|
+
};
|
|
8868
|
+
}
|
|
8869
|
+
}
|
|
8870
|
+
// 如果有旋转角度,计算旋转后的边界
|
|
8871
|
+
if (rotation !== 0) {
|
|
8872
|
+
const angleRadians = (rotation * Math.PI) / 180; // 转换为弧度
|
|
8873
|
+
// 计算边界中心点
|
|
8874
|
+
const centerLng = (bounds.sw[0] + bounds.ne[0]) / 2;
|
|
8875
|
+
const centerLat = (bounds.sw[1] + bounds.ne[1]) / 2;
|
|
8876
|
+
const center = [centerLng, centerLat];
|
|
8877
|
+
// 旋转四个角点
|
|
8878
|
+
const sw = rotateCoordinate(bounds.sw, center, angleRadians);
|
|
8879
|
+
const ne = rotateCoordinate(bounds.ne, center, angleRadians);
|
|
8880
|
+
const se = rotateCoordinate([bounds.ne[0], bounds.sw[1]], center, angleRadians);
|
|
8881
|
+
const nw = rotateCoordinate([bounds.sw[0], bounds.ne[1]], center, angleRadians);
|
|
8882
|
+
// 计算旋转后的边界框(包含所有旋转后的点)
|
|
8883
|
+
const lngs = [sw[0], ne[0], se[0], nw[0]];
|
|
8884
|
+
const lats = [sw[1], ne[1], se[1], nw[1]];
|
|
8885
|
+
bounds = {
|
|
8886
|
+
sw: [Math.min(...lngs), Math.min(...lats)],
|
|
8887
|
+
ne: [Math.max(...lngs), Math.max(...lats)],
|
|
8856
8888
|
};
|
|
8857
8889
|
}
|
|
8858
|
-
|
|
8859
|
-
console.warn('无法获取有效的GPS边界,使用默认坐标');
|
|
8860
|
-
return {
|
|
8861
|
-
sw: [-9.1562, -37.7503],
|
|
8862
|
-
ne: [31.247, 5.797],
|
|
8863
|
-
};
|
|
8890
|
+
return bounds;
|
|
8864
8891
|
};
|
|
8865
8892
|
// 默认配置
|
|
8866
8893
|
const defaultMapConfig = DEFAULT_STYLES;
|
|
@@ -8942,18 +8969,18 @@ const MowerMapRenderer = forwardRef(({ mapConfig, modelType, mapRef, mapJson, pa
|
|
|
8942
8969
|
return;
|
|
8943
8970
|
}
|
|
8944
8971
|
// 将自定义边界转换为Google Maps LatLngBounds(使用有效的GPS坐标)
|
|
8945
|
-
const validBounds = getValidGpsBounds(mapJson);
|
|
8972
|
+
const validBounds = getValidGpsBounds(mapJson, defaultTransform?.rotation);
|
|
8946
8973
|
// 地图数据中的坐标格式是 [longitude, latitude]
|
|
8947
|
-
const swLat = validBounds.sw[1];
|
|
8948
|
-
const swLng = validBounds.sw[0];
|
|
8949
|
-
const neLat = validBounds.ne[1];
|
|
8950
|
-
const neLng = validBounds.ne[0];
|
|
8974
|
+
const swLat = validBounds.sw[1] + defaultTransform.y;
|
|
8975
|
+
const swLng = validBounds.sw[0] + defaultTransform.x;
|
|
8976
|
+
const neLat = validBounds.ne[1] + defaultTransform.y;
|
|
8977
|
+
const neLng = validBounds.ne[0] + defaultTransform.x;
|
|
8951
8978
|
const googleBounds = new window.google.maps.LatLngBounds(new window.google.maps.LatLng(swLat, swLng), // 西南角
|
|
8952
8979
|
new window.google.maps.LatLng(neLat, neLng) // 东北角
|
|
8953
8980
|
);
|
|
8954
8981
|
console.log('fitBounds----->', googleBounds);
|
|
8955
8982
|
mapRef.fitBounds(googleBounds);
|
|
8956
|
-
}, [mapJson, mapRef]);
|
|
8983
|
+
}, [mapJson, mapRef, defaultTransform]);
|
|
8957
8984
|
// 初始化Google Maps叠加层
|
|
8958
8985
|
const initializeGoogleMapsOverlay = async () => {
|
|
8959
8986
|
if (!mapJson)
|
|
@@ -8977,7 +9004,8 @@ const MowerMapRenderer = forwardRef(({ mapConfig, modelType, mapRef, mapJson, pa
|
|
|
8977
9004
|
return;
|
|
8978
9005
|
}
|
|
8979
9006
|
// 将自定义边界转换为Google Maps LatLngBounds(使用有效的GPS坐标)
|
|
8980
|
-
|
|
9007
|
+
// 这里需要使用0度,需要原始的坐标点去计算元素的实际位置,只有在fitbounds的时候才需要使用旋转后的坐标点
|
|
9008
|
+
const validBounds = getValidGpsBounds(mapJson, 0);
|
|
8981
9009
|
// 地图数据中的坐标格式是 [longitude, latitude]
|
|
8982
9010
|
const swLat = validBounds.sw[1];
|
|
8983
9011
|
const swLng = validBounds.sw[0];
|
|
@@ -9049,10 +9077,8 @@ const MowerMapRenderer = forwardRef(({ mapConfig, modelType, mapRef, mapJson, pa
|
|
|
9049
9077
|
const inChargingPiles = [RobotStatus.CHARGING, RobotStatus.PARKED];
|
|
9050
9078
|
const isOffLine = mowerPositionData.vehicleState === RobotStatus.DISCONNECTED;
|
|
9051
9079
|
const isInChargingPile = inChargingPiles.includes(mowerPositionData.vehicleState);
|
|
9052
|
-
console.log('isInChargingPile-----------》', isInChargingPile, mowerPositionData);
|
|
9053
9080
|
// 如果在充电桩上,则直接更新位置到充电桩的位置
|
|
9054
9081
|
if (isInChargingPile) {
|
|
9055
|
-
console.log('isInChargingPile', isInChargingPile, mowerPositionData);
|
|
9056
9082
|
overlayRef.current.updatePosition({
|
|
9057
9083
|
...mowerPositionData,
|
|
9058
9084
|
postureX: chargingPiles?.originalData.position[0],
|
|
@@ -9065,7 +9091,6 @@ const MowerMapRenderer = forwardRef(({ mapConfig, modelType, mapRef, mapJson, pa
|
|
|
9065
9091
|
const positonOutOfRange = isOutOfRange(mowerPositionData);
|
|
9066
9092
|
const positionValid = isInvalidPosition(mowerPositionData);
|
|
9067
9093
|
const isStandby = mowerPositionData.vehicleState === RobotStatus.STANDBY;
|
|
9068
|
-
console.log('positonOutOfRange', positonOutOfRange, positionValid, isOffLine);
|
|
9069
9094
|
if (positonOutOfRange || positionValid || isOffLine) {
|
|
9070
9095
|
// 初始信息是通过后端接口获取的,此时当前位置数据不可用的时候,可以取上一次的位置数据
|
|
9071
9096
|
// mowerPositionData 中可能会包含上一次的位置数据,
|
|
@@ -9145,14 +9170,14 @@ const MowerMapRenderer = forwardRef(({ mapConfig, modelType, mapRef, mapJson, pa
|
|
|
9145
9170
|
}
|
|
9146
9171
|
}, [realTimeData, mapJson, pathJson]);
|
|
9147
9172
|
useEffect(() => {
|
|
9148
|
-
console.log('defaultTransform----->', defaultTransform);
|
|
9173
|
+
console.log('defaultTransform----->', defaultTransform, overlayRef.current);
|
|
9149
9174
|
if (!overlayRef.current || !defaultTransform)
|
|
9150
9175
|
return;
|
|
9151
9176
|
if (defaultTransform.x === 0 && defaultTransform.y === 0 && defaultTransform.rotation === 0) {
|
|
9152
9177
|
return;
|
|
9153
9178
|
}
|
|
9154
9179
|
overlayRef.current?.setTransform(defaultTransform);
|
|
9155
|
-
const validBounds = getValidGpsBounds(mapJson);
|
|
9180
|
+
const validBounds = getValidGpsBounds(mapJson, defaultTransform?.rotation);
|
|
9156
9181
|
// 地图数据中的坐标格式是 [longitude, latitude]
|
|
9157
9182
|
const swLat = validBounds.sw[1] + defaultTransform.y;
|
|
9158
9183
|
const swLng = validBounds.sw[0] + defaultTransform.x;
|
package/dist/index.js
CHANGED
|
@@ -83,7 +83,6 @@ class SvgMapView {
|
|
|
83
83
|
this.layers.sort((a, b) => a.getLevel() - b.getLevel());
|
|
84
84
|
}
|
|
85
85
|
getLayer(type) {
|
|
86
|
-
console.log('getLayer----->', this.layers, type);
|
|
87
86
|
return this.layers.find((layer) => layer.getType() === type) || null;
|
|
88
87
|
}
|
|
89
88
|
/**
|
|
@@ -2085,7 +2084,6 @@ const handleMultipleRealTimeData = ({ realTimeData, isMowing, pathData, partitio
|
|
|
2085
2084
|
// 割草轨迹
|
|
2086
2085
|
const { postureX, postureY, vehicleState } = item;
|
|
2087
2086
|
const currentPartitionId = getPartitionId(partitionBoundary, Number(postureX), Number(postureY));
|
|
2088
|
-
console.log('currentPartitionId===', currentPartitionId);
|
|
2089
2087
|
if (currentPartitionId && newPathData?.[currentPartitionId]) {
|
|
2090
2088
|
const currentPathData = newPathData[currentPartitionId];
|
|
2091
2089
|
newPathData[currentPartitionId] = {
|
|
@@ -6008,7 +6006,6 @@ class PathDataProcessor {
|
|
|
6008
6006
|
elements,
|
|
6009
6007
|
};
|
|
6010
6008
|
});
|
|
6011
|
-
console.log('result->', result);
|
|
6012
6009
|
return result;
|
|
6013
6010
|
}
|
|
6014
6011
|
}
|
|
@@ -6239,7 +6236,6 @@ class BoundaryLabelsManager {
|
|
|
6239
6236
|
* @param viewBox SVG的viewBox信息
|
|
6240
6237
|
*/
|
|
6241
6238
|
updatePositionsWithPrecomputedData(divWidth, divHeight, viewBox) {
|
|
6242
|
-
console.log('updatePositionsWithPrecomputedData----->', this.rotation);
|
|
6243
6239
|
if (!this.container || !this.svgView)
|
|
6244
6240
|
return;
|
|
6245
6241
|
const dw = parseFloat(this.svgView.getSVG().getAttribute('width')) || divWidth;
|
|
@@ -7353,7 +7349,6 @@ class MowerPositionManager {
|
|
|
7353
7349
|
if (!chargingPilesPositionConfig)
|
|
7354
7350
|
return;
|
|
7355
7351
|
this.mowerPositionConfig = chargingPilesPositionConfig;
|
|
7356
|
-
console.log('manager updatePositionByLastPosition----->', chargingPilesPositionConfig, this.lastPosition);
|
|
7357
7352
|
const lastPosition = this.lastPosition;
|
|
7358
7353
|
const postureX = chargingPilesPositionConfig.postureX || chargingPilesPositionConfig.lastPostureX || lastPosition?.x;
|
|
7359
7354
|
const postureY = chargingPilesPositionConfig.postureY || chargingPilesPositionConfig.lastPostureY || lastPosition?.y;
|
|
@@ -7367,9 +7362,10 @@ class MowerPositionManager {
|
|
|
7367
7362
|
* 更新割草机位置
|
|
7368
7363
|
*/
|
|
7369
7364
|
updatePosition(positionConfig, animationTime = 0) {
|
|
7370
|
-
console.log('manager updatePosition----->', positionConfig);
|
|
7371
7365
|
// 检查是否需要更新图片
|
|
7372
7366
|
this.updateMowerImage(positionConfig);
|
|
7367
|
+
// 更新配置
|
|
7368
|
+
this.mowerPositionConfig = positionConfig;
|
|
7373
7369
|
const postureX = positionConfig.postureX || this.lastPosition?.x;
|
|
7374
7370
|
const postureY = positionConfig.postureY || this.lastPosition?.y;
|
|
7375
7371
|
const postureTheta = positionConfig.postureTheta || this.lastPosition?.rotation;
|
|
@@ -7393,8 +7389,6 @@ class MowerPositionManager {
|
|
|
7393
7389
|
// 立即更新位置
|
|
7394
7390
|
this.setElementPosition(positionConfig.postureX, positionConfig.postureY, positionConfig.postureTheta);
|
|
7395
7391
|
}
|
|
7396
|
-
// 更新配置
|
|
7397
|
-
this.mowerPositionConfig = positionConfig;
|
|
7398
7392
|
}
|
|
7399
7393
|
/**
|
|
7400
7394
|
* 更新割草机图片
|
|
@@ -7508,11 +7502,9 @@ class MowerPositionManager {
|
|
|
7508
7502
|
this.onMowingPositionChange({
|
|
7509
7503
|
x: currentX,
|
|
7510
7504
|
y: currentY,
|
|
7511
|
-
vehicleState: this.mowerPositionConfig
|
|
7505
|
+
vehicleState: this.mowerPositionConfig?.vehicleState,
|
|
7512
7506
|
});
|
|
7513
7507
|
}
|
|
7514
|
-
// console.log('animateStep----->', this.onlyUpdateTheta, currentX, currentY, currentRotation);
|
|
7515
|
-
//
|
|
7516
7508
|
// 继续动画或结束
|
|
7517
7509
|
if (progress < 1) {
|
|
7518
7510
|
// 设置当前位置
|
|
@@ -7724,7 +7716,6 @@ class MowerMapOverlay {
|
|
|
7724
7716
|
this.boundaryData = generateBoundaryData(mapData, pathData);
|
|
7725
7717
|
}
|
|
7726
7718
|
updatePosition(positionConfig, animationTime = 2200) {
|
|
7727
|
-
console.log('updatePosition==', positionConfig, animationTime);
|
|
7728
7719
|
// 保存当前动画时长
|
|
7729
7720
|
this.currentAnimationTime = animationTime;
|
|
7730
7721
|
// 标记是否为用户动画(大于0表示用户主动触发的动画)
|
|
@@ -7737,7 +7728,6 @@ class MowerMapOverlay {
|
|
|
7737
7728
|
}
|
|
7738
7729
|
}
|
|
7739
7730
|
updatePositionByLastPosition(chargingPilesPositionConfig) {
|
|
7740
|
-
console.log('overlay updatePositionByLastPosition----->', this.mowerPositionManager, chargingPilesPositionConfig);
|
|
7741
7731
|
// 更新配置
|
|
7742
7732
|
if (this.mowerPositionManager) {
|
|
7743
7733
|
this.mowerPositionManager.updatePositionByLastPosition(chargingPilesPositionConfig);
|
|
@@ -7772,10 +7762,8 @@ class MowerMapOverlay {
|
|
|
7772
7762
|
this.mowPartitionData = mowPartitionData;
|
|
7773
7763
|
const boundaryBorderLayer = this.svgMapView?.getLayer(LAYER_DEFAULT_TYPE.BOUNDARY_BORDER);
|
|
7774
7764
|
const partitionIds = mowPartitionData?.partitionIds || [];
|
|
7775
|
-
console.log('setBorderLayerHighlight----->', partitionIds);
|
|
7776
7765
|
for (const partitionId of partitionIds) {
|
|
7777
7766
|
const boundaryBorderPaths = boundaryBorderLayer?.boudaryBorderPaths?.[partitionId];
|
|
7778
|
-
console.log('boundaryBorderPaths----->', boundaryBorderLayer, boundaryBorderPaths);
|
|
7779
7767
|
if (boundaryBorderPaths) {
|
|
7780
7768
|
boundaryBorderPaths.forEach((path) => {
|
|
7781
7769
|
path.setAttribute('stroke', BOUNDARY_STYLES.mowingLineColor);
|
|
@@ -7805,6 +7793,7 @@ class MowerMapOverlay {
|
|
|
7805
7793
|
this.createBoundaryLabelsManager();
|
|
7806
7794
|
// 创建割草机位置管理器
|
|
7807
7795
|
this.createMowerPositionManager();
|
|
7796
|
+
this.setManagerRotation(this.defaultTransform.rotation);
|
|
7808
7797
|
// 如果处于编辑模式,创建编辑界面
|
|
7809
7798
|
if (this.isEditMode) {
|
|
7810
7799
|
this.createEditInterface();
|
|
@@ -8507,7 +8496,6 @@ class MowerMapOverlay {
|
|
|
8507
8496
|
this.loadMapData();
|
|
8508
8497
|
// 加载路径数据
|
|
8509
8498
|
if (this.pathData && this.svgMapView) {
|
|
8510
|
-
console.log('initializeSvgMapView->', this.pathData, this.mowPartitionData);
|
|
8511
8499
|
this.loadPathData(this.pathData, this.mowPartitionData);
|
|
8512
8500
|
}
|
|
8513
8501
|
// 刷新绘制图层
|
|
@@ -8580,7 +8568,6 @@ class MowerMapOverlay {
|
|
|
8580
8568
|
try {
|
|
8581
8569
|
// 使用现有的PathDataProcessor处理路径数据
|
|
8582
8570
|
const pathElements = PathDataProcessor.processPathData(pathData, this.mapConfig);
|
|
8583
|
-
console.log('pathdaata->', pathElements, mowPartitionData);
|
|
8584
8571
|
const newPathElements = pathElements.map((pathElement) => {
|
|
8585
8572
|
const { id, elements } = pathElement;
|
|
8586
8573
|
const isMowBoundary = mowPartitionData && mowPartitionData?.partitionIds?.includes(id);
|
|
@@ -8628,7 +8615,6 @@ class MowerMapOverlay {
|
|
|
8628
8615
|
// 找到当前position所在的分区id,将该点更新到pathData中
|
|
8629
8616
|
const currentPartitionId = getPartitionId(this.partitionBoundary, position.x, position.y);
|
|
8630
8617
|
const processStateIsMowing = useProcessMowingState.getState().processStateIsMowing;
|
|
8631
|
-
// console.log('processStateIsMowing==', processStateIsMowing);
|
|
8632
8618
|
if (currentPartitionId && this.pathData?.[currentPartitionId]) {
|
|
8633
8619
|
const currentPathData = this.pathData[currentPartitionId];
|
|
8634
8620
|
this.pathData[currentPartitionId] = {
|
|
@@ -8839,30 +8825,71 @@ const isValidGpsCoordinate = (coordinate) => {
|
|
|
8839
8825
|
!(Math.abs(lng) < 0.001 && Math.abs(lat) < 0.001) // 排除接近(0,0)的坐标
|
|
8840
8826
|
);
|
|
8841
8827
|
};
|
|
8828
|
+
// 旋转坐标点
|
|
8829
|
+
const rotateCoordinate = (point, center, angleRadians) => {
|
|
8830
|
+
const [x, y] = point;
|
|
8831
|
+
const [cx, cy] = center;
|
|
8832
|
+
// 将点移动到原点
|
|
8833
|
+
const dx = x - cx;
|
|
8834
|
+
const dy = y - cy;
|
|
8835
|
+
// 应用旋转矩阵
|
|
8836
|
+
const cos = Math.cos(angleRadians);
|
|
8837
|
+
const sin = Math.sin(angleRadians);
|
|
8838
|
+
const rotatedX = dx * cos - dy * sin;
|
|
8839
|
+
const rotatedY = dx * sin + dy * cos;
|
|
8840
|
+
// 移回原位置
|
|
8841
|
+
return [rotatedX + cx, rotatedY + cy];
|
|
8842
|
+
};
|
|
8842
8843
|
// 获取有效的GPS边界
|
|
8843
|
-
const getValidGpsBounds = (mapData) => {
|
|
8844
|
+
const getValidGpsBounds = (mapData, rotation = 0) => {
|
|
8845
|
+
let bounds;
|
|
8844
8846
|
// 首先尝试使用地图数据中的GPS坐标
|
|
8845
8847
|
if (isValidGpsCoordinate(mapData.sw_gps) && isValidGpsCoordinate(mapData.ne_gps)) {
|
|
8846
|
-
|
|
8848
|
+
bounds = {
|
|
8847
8849
|
sw: mapData.sw_gps,
|
|
8848
8850
|
ne: mapData.ne_gps,
|
|
8849
8851
|
};
|
|
8850
8852
|
}
|
|
8851
|
-
|
|
8852
|
-
|
|
8853
|
-
|
|
8854
|
-
|
|
8855
|
-
|
|
8856
|
-
|
|
8857
|
-
|
|
8853
|
+
else {
|
|
8854
|
+
// 如果GPS坐标无效,尝试从地图几何数据估算
|
|
8855
|
+
const { sw, ne } = estimateGpsFromMapBounds(mapData);
|
|
8856
|
+
if (sw && ne) {
|
|
8857
|
+
console.warn('GPS坐标无效,使用地图几何数据估算边界:', sw, ne);
|
|
8858
|
+
bounds = {
|
|
8859
|
+
sw: [sw[0], sw[1]],
|
|
8860
|
+
ne: [ne[0], ne[1]],
|
|
8861
|
+
};
|
|
8862
|
+
}
|
|
8863
|
+
else {
|
|
8864
|
+
// 最后的fallback:使用默认坐标
|
|
8865
|
+
console.warn('无法获取有效的GPS边界,使用默认坐标');
|
|
8866
|
+
bounds = {
|
|
8867
|
+
sw: [-9.1562, -37.7503],
|
|
8868
|
+
ne: [31.247, 5.797],
|
|
8869
|
+
};
|
|
8870
|
+
}
|
|
8871
|
+
}
|
|
8872
|
+
// 如果有旋转角度,计算旋转后的边界
|
|
8873
|
+
if (rotation !== 0) {
|
|
8874
|
+
const angleRadians = (rotation * Math.PI) / 180; // 转换为弧度
|
|
8875
|
+
// 计算边界中心点
|
|
8876
|
+
const centerLng = (bounds.sw[0] + bounds.ne[0]) / 2;
|
|
8877
|
+
const centerLat = (bounds.sw[1] + bounds.ne[1]) / 2;
|
|
8878
|
+
const center = [centerLng, centerLat];
|
|
8879
|
+
// 旋转四个角点
|
|
8880
|
+
const sw = rotateCoordinate(bounds.sw, center, angleRadians);
|
|
8881
|
+
const ne = rotateCoordinate(bounds.ne, center, angleRadians);
|
|
8882
|
+
const se = rotateCoordinate([bounds.ne[0], bounds.sw[1]], center, angleRadians);
|
|
8883
|
+
const nw = rotateCoordinate([bounds.sw[0], bounds.ne[1]], center, angleRadians);
|
|
8884
|
+
// 计算旋转后的边界框(包含所有旋转后的点)
|
|
8885
|
+
const lngs = [sw[0], ne[0], se[0], nw[0]];
|
|
8886
|
+
const lats = [sw[1], ne[1], se[1], nw[1]];
|
|
8887
|
+
bounds = {
|
|
8888
|
+
sw: [Math.min(...lngs), Math.min(...lats)],
|
|
8889
|
+
ne: [Math.max(...lngs), Math.max(...lats)],
|
|
8858
8890
|
};
|
|
8859
8891
|
}
|
|
8860
|
-
|
|
8861
|
-
console.warn('无法获取有效的GPS边界,使用默认坐标');
|
|
8862
|
-
return {
|
|
8863
|
-
sw: [-9.1562, -37.7503],
|
|
8864
|
-
ne: [31.247, 5.797],
|
|
8865
|
-
};
|
|
8892
|
+
return bounds;
|
|
8866
8893
|
};
|
|
8867
8894
|
// 默认配置
|
|
8868
8895
|
const defaultMapConfig = DEFAULT_STYLES;
|
|
@@ -8944,18 +8971,18 @@ const MowerMapRenderer = React.forwardRef(({ mapConfig, modelType, mapRef, mapJs
|
|
|
8944
8971
|
return;
|
|
8945
8972
|
}
|
|
8946
8973
|
// 将自定义边界转换为Google Maps LatLngBounds(使用有效的GPS坐标)
|
|
8947
|
-
const validBounds = getValidGpsBounds(mapJson);
|
|
8974
|
+
const validBounds = getValidGpsBounds(mapJson, defaultTransform?.rotation);
|
|
8948
8975
|
// 地图数据中的坐标格式是 [longitude, latitude]
|
|
8949
|
-
const swLat = validBounds.sw[1];
|
|
8950
|
-
const swLng = validBounds.sw[0];
|
|
8951
|
-
const neLat = validBounds.ne[1];
|
|
8952
|
-
const neLng = validBounds.ne[0];
|
|
8976
|
+
const swLat = validBounds.sw[1] + defaultTransform.y;
|
|
8977
|
+
const swLng = validBounds.sw[0] + defaultTransform.x;
|
|
8978
|
+
const neLat = validBounds.ne[1] + defaultTransform.y;
|
|
8979
|
+
const neLng = validBounds.ne[0] + defaultTransform.x;
|
|
8953
8980
|
const googleBounds = new window.google.maps.LatLngBounds(new window.google.maps.LatLng(swLat, swLng), // 西南角
|
|
8954
8981
|
new window.google.maps.LatLng(neLat, neLng) // 东北角
|
|
8955
8982
|
);
|
|
8956
8983
|
console.log('fitBounds----->', googleBounds);
|
|
8957
8984
|
mapRef.fitBounds(googleBounds);
|
|
8958
|
-
}, [mapJson, mapRef]);
|
|
8985
|
+
}, [mapJson, mapRef, defaultTransform]);
|
|
8959
8986
|
// 初始化Google Maps叠加层
|
|
8960
8987
|
const initializeGoogleMapsOverlay = async () => {
|
|
8961
8988
|
if (!mapJson)
|
|
@@ -8979,7 +9006,8 @@ const MowerMapRenderer = React.forwardRef(({ mapConfig, modelType, mapRef, mapJs
|
|
|
8979
9006
|
return;
|
|
8980
9007
|
}
|
|
8981
9008
|
// 将自定义边界转换为Google Maps LatLngBounds(使用有效的GPS坐标)
|
|
8982
|
-
|
|
9009
|
+
// 这里需要使用0度,需要原始的坐标点去计算元素的实际位置,只有在fitbounds的时候才需要使用旋转后的坐标点
|
|
9010
|
+
const validBounds = getValidGpsBounds(mapJson, 0);
|
|
8983
9011
|
// 地图数据中的坐标格式是 [longitude, latitude]
|
|
8984
9012
|
const swLat = validBounds.sw[1];
|
|
8985
9013
|
const swLng = validBounds.sw[0];
|
|
@@ -9051,10 +9079,8 @@ const MowerMapRenderer = React.forwardRef(({ mapConfig, modelType, mapRef, mapJs
|
|
|
9051
9079
|
const inChargingPiles = [RobotStatus.CHARGING, RobotStatus.PARKED];
|
|
9052
9080
|
const isOffLine = mowerPositionData.vehicleState === RobotStatus.DISCONNECTED;
|
|
9053
9081
|
const isInChargingPile = inChargingPiles.includes(mowerPositionData.vehicleState);
|
|
9054
|
-
console.log('isInChargingPile-----------》', isInChargingPile, mowerPositionData);
|
|
9055
9082
|
// 如果在充电桩上,则直接更新位置到充电桩的位置
|
|
9056
9083
|
if (isInChargingPile) {
|
|
9057
|
-
console.log('isInChargingPile', isInChargingPile, mowerPositionData);
|
|
9058
9084
|
overlayRef.current.updatePosition({
|
|
9059
9085
|
...mowerPositionData,
|
|
9060
9086
|
postureX: chargingPiles?.originalData.position[0],
|
|
@@ -9067,7 +9093,6 @@ const MowerMapRenderer = React.forwardRef(({ mapConfig, modelType, mapRef, mapJs
|
|
|
9067
9093
|
const positonOutOfRange = isOutOfRange(mowerPositionData);
|
|
9068
9094
|
const positionValid = isInvalidPosition(mowerPositionData);
|
|
9069
9095
|
const isStandby = mowerPositionData.vehicleState === RobotStatus.STANDBY;
|
|
9070
|
-
console.log('positonOutOfRange', positonOutOfRange, positionValid, isOffLine);
|
|
9071
9096
|
if (positonOutOfRange || positionValid || isOffLine) {
|
|
9072
9097
|
// 初始信息是通过后端接口获取的,此时当前位置数据不可用的时候,可以取上一次的位置数据
|
|
9073
9098
|
// mowerPositionData 中可能会包含上一次的位置数据,
|
|
@@ -9147,14 +9172,14 @@ const MowerMapRenderer = React.forwardRef(({ mapConfig, modelType, mapRef, mapJs
|
|
|
9147
9172
|
}
|
|
9148
9173
|
}, [realTimeData, mapJson, pathJson]);
|
|
9149
9174
|
React.useEffect(() => {
|
|
9150
|
-
console.log('defaultTransform----->', defaultTransform);
|
|
9175
|
+
console.log('defaultTransform----->', defaultTransform, overlayRef.current);
|
|
9151
9176
|
if (!overlayRef.current || !defaultTransform)
|
|
9152
9177
|
return;
|
|
9153
9178
|
if (defaultTransform.x === 0 && defaultTransform.y === 0 && defaultTransform.rotation === 0) {
|
|
9154
9179
|
return;
|
|
9155
9180
|
}
|
|
9156
9181
|
overlayRef.current?.setTransform(defaultTransform);
|
|
9157
|
-
const validBounds = getValidGpsBounds(mapJson);
|
|
9182
|
+
const validBounds = getValidGpsBounds(mapJson, defaultTransform?.rotation);
|
|
9158
9183
|
// 地图数据中的坐标格式是 [longitude, latitude]
|
|
9159
9184
|
const swLat = validBounds.sw[1] + defaultTransform.y;
|
|
9160
9185
|
const swLng = validBounds.sw[0] + defaultTransform.x;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PathDataProcessor.d.ts","sourceRoot":"","sources":["../../src/processor/PathDataProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,QAAQ,EAAgB,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;CACpC;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,YAAY,EAAE;
|
|
1
|
+
{"version":3,"file":"PathDataProcessor.d.ts","sourceRoot":"","sources":["../../src/processor/PathDataProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,QAAQ,EAAgB,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;CACpC;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,YAAY,EAAE;CAmElF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BoundaryLabelsManager.d.ts","sourceRoot":"","sources":["../../src/render/BoundaryLabelsManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EACL,YAAY,EAIb,MAAM,UAAU,CAAC;AAElB;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,YAAY,CAAiB;IACrC,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,kBAAkB,CAAmC;IAG7D,OAAO,CAAC,yBAAyB,CAAuB;IAGxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAG7B;IAGF,OAAO,CAAC,QAAQ,CAAa;gBAEjB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE;IAM7D;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAc/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAM1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,WAAW;IAIrC;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,YAAY,GAAG,WAAW,GAAG,IAAI;IA8FtD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;OAEG;IACH,OAAO,CAAC,WAAW;IAgBnB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;OAEG;IACH,cAAc;IAOd;;OAEG;IACH,UAAU,IAAI,WAAW,GAAG,IAAI;IAIhC;;;;;OAKG;IACH,kCAAkC,CAChC,QAAQ,CAAC,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;
|
|
1
|
+
{"version":3,"file":"BoundaryLabelsManager.d.ts","sourceRoot":"","sources":["../../src/render/BoundaryLabelsManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EACL,YAAY,EAIb,MAAM,UAAU,CAAC;AAElB;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,YAAY,CAAiB;IACrC,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,kBAAkB,CAAmC;IAG7D,OAAO,CAAC,yBAAyB,CAAuB;IAGxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAG7B;IAGF,OAAO,CAAC,QAAQ,CAAa;gBAEjB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE;IAM7D;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAc/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAM1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,WAAW;IAIrC;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,YAAY,GAAG,WAAW,GAAG,IAAI;IA8FtD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;OAEG;IACH,OAAO,CAAC,WAAW;IAgBnB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;OAEG;IACH,cAAc;IAOd;;OAEG;IACH,UAAU,IAAI,WAAW,GAAG,IAAI;IAIhC;;;;;OAKG;IACH,kCAAkC,CAChC,QAAQ,CAAC,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAyCnE;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAUhC;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IA+C9B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAiB9B;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA4B1C;;OAEG;IACH,OAAO,CAAC,8CAA8C;IAkBtD;;OAEG;IACH,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE;IAY/C;;OAEG;IACH,OAAO;IAcP;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO;IAM3B;;OAEG;IACH,eAAe,IAAI,YAAY,EAAE;IAIjC;;OAEG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAKvD;;OAEG;IACH,iBAAiB;IAcjB;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,OAAO;IAsBnC;;OAEG;IACH,WAAW;IAIX;;OAEG;IACH,MAAM,CAAC,kBAAkB;;;;IAKzB;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM;IAY5B;;OAEG;IACH,mBAAmB;CAUpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MowerMapOverlay.d.ts","sourceRoot":"","sources":["../../src/render/MowerMapOverlay.ts"],"names":[],"mappings":"AAIA,OAAO,EASL,WAAW,EACZ,MAAM,UAAU,CAAC;AAKlB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,SAAS,EACT,aAAa,EAGb,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAK3B,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAIzD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,MAAM,EAAE,GAAG,CAAC;KACb;CACF;AAGD,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,iBAAiB,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,GAAG,CAAa;IACxB,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,kBAAkB,CAA4B;IACtD,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,SAAS,CAAC,CAAiC;IACnD,OAAO,CAAC,UAAU,CAAC,CAAiC;IACpD,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,gBAAgB,CAA+B;IAGvD,OAAO,CAAC,YAAY,CAAsB;IAE1C,OAAO,CAAC,qBAAqB,CAAsC;IAEnE,OAAO,CAAC,mBAAmB,CAAoC;IAE/D,OAAO,CAAC,cAAc,CAA+B;IAErD,OAAO,CAAC,oBAAoB,CAAqC;IAEjE,OAAO,CAAC,oBAAoB,CAAa;IAEzC,OAAO,CAAC,eAAe,CAAkB;IAGzC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,UAAU,CAAa;IAG/B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,gBAAgB,CAAK;IAG7B,OAAO,CAAC,YAAY,CAAsB;IAE1C,OAAO,CAAC,eAAe,CAAkB;IAGzC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,eAAe,CAAK;IAE5B,OAAO,CAAC,gBAAgB,CAAC,CAAa;IAEtC,OAAO,CAAC,gBAAgB,CAAsC;gBAG5D,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,GAAG,EACZ,iBAAiB,EAAE,GAAG,EAAE,EACxB,mBAAmB,EAAE,mBAAmB,EACxC,QAAQ,EAAE,QAAQ,EAClB,UAAU,GAAE,OAAe,EAC3B,SAAS,GAAE,GAAQ,EACnB,aAAa,GAAE,GAAQ,EACvB,gBAAgB,GAAE,kBAAkB,GAAG,IAAW,EAClD,gBAAgB,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EAChE,SAAS,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,EAC1C,UAAU,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,EAC3C,aAAa,CAAC,EAAE,aAAa;IAkD/B,cAAc,CAAC,cAAc,EAAE,mBAAmB,EAAE,aAAa,GAAE,MAAa;
|
|
1
|
+
{"version":3,"file":"MowerMapOverlay.d.ts","sourceRoot":"","sources":["../../src/render/MowerMapOverlay.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MowerMapRenderer.d.ts","sourceRoot":"","sources":["../../src/render/MowerMapRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAef,OAAO,EAAa,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAY1F,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,MAAM,EAAE,GAAG,CAAC;KACb;CACF;
|
|
1
|
+
{"version":3,"file":"MowerMapRenderer.d.ts","sourceRoot":"","sources":["../../src/render/MowerMapRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAef,OAAO,EAAa,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAY1F,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,MAAM,EAAE,GAAG,CAAC;KACb;CACF;AAqGD,eAAO,MAAM,gBAAgB,mGAuZ5B,CAAC;AAIF,eAAe,gBAAgB,CAAC;AAChC,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MowerPositionManager.d.ts","sourceRoot":"","sources":["../../src/render/MowerPositionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAML,WAAW,EACZ,MAAM,UAAU,CAAC;AAElB,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,YAAY,CAA4B;IAEhD,OAAO,CAAC,aAAa,CAAiB;IAGtC,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,YAAY,CAA2D;IAC/E,OAAO,CAAC,aAAa,CAA2D;IAChF,OAAO,CAAC,eAAe,CAA2D;IAClF,OAAO,CAAC,cAAc,CAA2D;IACjF,OAAO,CAAC,aAAa,CAA2D;IAChF,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,mBAAmB,CAAC,CAAa;IACzC,OAAO,CAAC,sBAAsB,CAAC,CAIpB;gBAGT,OAAO,EAAE,UAAU,EACnB,mBAAmB,EAAE,mBAAmB,EACxC,UAAU,EAAE,WAAW,EACvB,mBAAmB,CAAC,EAAE,MAAM,IAAI,EAChC,sBAAsB,CAAC,EAAE,CAAC,YAAY,EAAE;QACtC,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,YAAY,EAAE,WAAW,CAAC;KAC3B,KAAK,IAAI;IAUZ,IAAI,aAAa,YAEhB;IAED;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiC1B;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,WAAW;IAIrC;;OAEG;IACH,UAAU,IAAI,WAAW,GAAG,IAAI;IAIhC;;OAEG;IACH,4BAA4B,CAC1B,2BAA2B,EAAE,mBAAmB;
|
|
1
|
+
{"version":3,"file":"MowerPositionManager.d.ts","sourceRoot":"","sources":["../../src/render/MowerPositionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAML,WAAW,EACZ,MAAM,UAAU,CAAC;AAElB,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,YAAY,CAA4B;IAEhD,OAAO,CAAC,aAAa,CAAiB;IAGtC,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,YAAY,CAA2D;IAC/E,OAAO,CAAC,aAAa,CAA2D;IAChF,OAAO,CAAC,eAAe,CAA2D;IAClF,OAAO,CAAC,cAAc,CAA2D;IACjF,OAAO,CAAC,aAAa,CAA2D;IAChF,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,mBAAmB,CAAC,CAAa;IACzC,OAAO,CAAC,sBAAsB,CAAC,CAIpB;gBAGT,OAAO,EAAE,UAAU,EACnB,mBAAmB,EAAE,mBAAmB,EACxC,UAAU,EAAE,WAAW,EACvB,mBAAmB,CAAC,EAAE,MAAM,IAAI,EAChC,sBAAsB,CAAC,EAAE,CAAC,YAAY,EAAE;QACtC,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,YAAY,EAAE,WAAW,CAAC;KAC3B,KAAK,IAAI;IAUZ,IAAI,aAAa,YAEhB;IAED;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiC1B;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,WAAW;IAIrC;;OAEG;IACH,UAAU,IAAI,WAAW,GAAG,IAAI;IAIhC;;OAEG;IACH,4BAA4B,CAC1B,2BAA2B,EAAE,mBAAmB;IAsBlD;;OAEG;IACH,cAAc,CAAC,cAAc,EAAE,mBAAmB,EAAE,aAAa,GAAE,MAAU;IA2C7E;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA8B1B;;OAEG;IACH,OAAO,CAAC,aAAa;IAWrB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA8ChC,mBAAmB;IAInB;;OAEG;IACH,OAAO,CAAC,WAAW;IA6CnB;;OAEG;IACH,OAAO,CAAC,IAAI;IAIZ;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA6B1C;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO;IAM3B;;OAEG;IACH,cAAc,IAAI,OAAO;IAIzB;;OAEG;IACH,OAAO;CAWR"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SvgMapView.d.ts","sourceRoot":"","sources":["../../src/render/SvgMapView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC;;;GAGG;AACH,qBAAa,UAAU;IAErB,OAAO,CAAC,GAAG,CAAgB;IAC3B,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,OAAO,CAA0D;IAGzE,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,WAAW,CAAc;IAGjC,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,SAAS,CAAa;IAG9B,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,SAAS,CAAkB;IAKnC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAa;gBAEnB,gBAAgB,EAAE,WAAW,EAAE,KAAK,GAAE,MAAY,EAAE,MAAM,GAAE,MAAY;IAsBpF;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAOhB;;OAEG;IACH,OAAO,CAAC,cAAc;IAMtB;;OAEG;IACH,OAAO,CAAC,aAAa;IAOrB,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI;IAOpC,QAAQ,CAAC,CAAC,SAAS,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"SvgMapView.d.ts","sourceRoot":"","sources":["../../src/render/SvgMapView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC;;;GAGG;AACH,qBAAa,UAAU;IAErB,OAAO,CAAC,GAAG,CAAgB;IAC3B,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,OAAO,CAA0D;IAGzE,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,WAAW,CAAc;IAGjC,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,SAAS,CAAa;IAG9B,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,SAAS,CAAkB;IAKnC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAa;gBAEnB,gBAAgB,EAAE,WAAW,EAAE,KAAK,GAAE,MAAY,EAAE,MAAM,GAAE,MAAY;IAsBpF;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAOhB;;OAEG;IACH,OAAO,CAAC,cAAc;IAMtB;;OAEG;IACH,OAAO,CAAC,aAAa;IAOrB,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI;IAOpC,QAAQ,CAAC,CAAC,SAAS,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;IAIrD;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAOhC;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAQnC;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAUrC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IA8CnF;;OAEG;IACH,cAAc,IAAI,IAAI;IAetB;;OAEG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAoBhC;;OAEG;IACH,OAAO,IAAI,MAAM;IAIjB;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAOrC;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAS/B;;OAEG;IACH,OAAO,CAAC,MAAM;IAQd;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,YAAY;IA6EpB;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;OAEG;IACH,eAAe,IAAI,IAAI;IAMvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAkBvB;;OAEG;IACH,OAAO,CAAC,aAAa;IAKrB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAUxB;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,OAAO,CAAC,WAAW;IAiBnB;;OAEG;IACH,oBAAoB,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAiBtF;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAcxB;;OAEG;IACH,cAAc,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAIzE;;OAEG;IACH,gBAAgB,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAQrD;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAE1B;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAKjC;;OAEG;IACH,MAAM,IAAI,aAAa;IAIvB;;OAEG;IACH,YAAY,IAAI,WAAW;IAI3B;;OAEG;IACH,SAAS,IAAI,SAAS,EAAE;IAIxB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,OAAO,IAAI,IAAI;IAef;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAS5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleRealTime.d.ts","sourceRoot":"","sources":["../../src/utils/handleRealTime.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACrG,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGrD,MAAM,WAAW,uBAAuB;IAEtC,YAAY,EAAE,CAAC,oBAAoB,GAAG,mBAAmB,GAAG,qBAAqB,CAAC,EAAE,CAAC;IAErF,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;CACvC;AAGD,eAAO,MAAM,cAAc,GAAI,mBAAmB,GAAG,EAAE,EAAE,WAAW,MAAM,EAAE,WAAW,MAAM,QAS5F,CAAC;AAiDF;;;;;;GAMG;AACH,QAAA,MAAM,0BAA0B,GAAI,0DAMpC,uBAAuB,KAAG;IACxB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"handleRealTime.d.ts","sourceRoot":"","sources":["../../src/utils/handleRealTime.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACrG,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGrD,MAAM,WAAW,uBAAuB;IAEtC,YAAY,EAAE,CAAC,oBAAoB,GAAG,mBAAmB,GAAG,qBAAqB,CAAC,EAAE,CAAC;IAErF,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;CACvC;AAGD,eAAO,MAAM,cAAc,GAAI,mBAAmB,GAAG,EAAE,EAAE,WAAW,MAAM,EAAE,WAAW,MAAM,QAS5F,CAAC;AAiDF;;;;;;GAMG;AACH,QAAA,MAAM,0BAA0B,GAAI,0DAMpC,uBAAuB,KAAG;IACxB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CAgEnB,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,oCAAoC,GAAI,uCAI3C;IAED,YAAY,EAAE,CAAC,oBAAoB,GAAG,mBAAmB,GAAG,qBAAqB,CAAC,EAAE,CAAC;IACrF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,KAAG;IACF,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC;CA6BpB,CAAC;AAEF,OAAO,EAAE,0BAA0B,EAAE,oCAAoC,EAAE,CAAC"}
|