@vtx/cs-map 1.0.61 → 1.0.62
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/lib/map/Popup.js
CHANGED
|
@@ -220,19 +220,6 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
220
220
|
}));
|
|
221
221
|
return;
|
|
222
222
|
}
|
|
223
|
-
var layer = map.getLayerByFeature(feature);
|
|
224
|
-
if (!(layer !== null && layer !== void 0 && layer.template)) {
|
|
225
|
-
return;
|
|
226
|
-
}
|
|
227
|
-
var properties = map.getProperties(feature);
|
|
228
|
-
feature.values_ = properties;
|
|
229
|
-
featureRef.current = feature;
|
|
230
|
-
if (layer) {
|
|
231
|
-
var template = layer.template;
|
|
232
|
-
var labelField = layer.labelField;
|
|
233
|
-
setTitle(labelField && properties[labelField]);
|
|
234
|
-
setContent(feature && template(feature));
|
|
235
|
-
}
|
|
236
223
|
var position = feature === null || feature === void 0 || (_feature$_position = feature._position) === null || _feature$_position === void 0 ? void 0 : _feature$_position._value;
|
|
237
224
|
// 偏移量
|
|
238
225
|
var offset = {
|
|
@@ -307,15 +294,25 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
307
294
|
position = _position4;
|
|
308
295
|
offset = _offset3;
|
|
309
296
|
}
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
297
|
+
var properties = map.getProperties(feature);
|
|
298
|
+
feature.values_ = properties;
|
|
299
|
+
featureRef.current = feature;
|
|
300
|
+
var layer = map.getLayerByFeature(feature);
|
|
301
|
+
if (layer !== null && layer !== void 0 && layer.template) {
|
|
302
|
+
var template = layer.template;
|
|
303
|
+
var labelField = layer.labelField;
|
|
304
|
+
setTitle(labelField && properties[labelField]);
|
|
305
|
+
setContent(feature && template(feature));
|
|
306
|
+
infoToolRef.current.add({
|
|
307
|
+
position: position,
|
|
308
|
+
content: '',
|
|
309
|
+
element: popupRef.current,
|
|
310
|
+
inputFeature: feature,
|
|
311
|
+
type: '',
|
|
312
|
+
offset: offset
|
|
313
|
+
});
|
|
314
|
+
map.popupRef = feature;
|
|
315
|
+
}
|
|
319
316
|
if (!viewRef.current && map.autoView) {
|
|
320
317
|
getView();
|
|
321
318
|
}
|
package/lib/map/Popup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_cesium","_icons","_antd","_InfoTool","_interopRequireDefault","_classnames","_turf","_Polygon","_Polyline","_layerControl","_createFeatureCollection","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","l","Symbol","iterator","f","o","next","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","toString","slice","constructor","name","from","test","iter","len","arr2","ClusterTitle","props","layer","imgUrl","getImgUrl","createElement","className","classnames","src","alt","Cluster","features","onFeatureClick","onFitView","labelField","onClick","Table","pagination","size","dataSource","scroll","y","columns","title","dataIndex","width","render","text","record","values_","handelGeometry","exports","entity","_entity$data","_coordinates","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","includes","point1","point2","point","lngLatArr","Midpoint","_coordinates2","map","item","console","log","concat","polygon","Polygon","centerOfMass","Cartesian3","fromDegrees","apply","geometryType","_offset","Popup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","viewRef","useImperativeHandle","showTemplate","hideTemplate","feature","highlightLayer","_feature$_position","_feature$data","_highlightLayer2","_layer2$_options","points","properties","getProperties","TurfPoint","geometryInfo","lngLats","join","coordType","center","TureCenterOfMass","TurfFeatureCollection","_handelGeometry","getLayerByFeature","current","add","element","inputFeature","Template","_options","cluster","template","fitView","_position","_value","height","PolygonGeo","_polygon","_feature$_polygon","_hierarchy","positions","v","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","longitude","lat","latitude","_handelGeometry2","PolylineGeo","_polyline","_feature$_polyline","_positions","_handelGeometry3","primitive","_midpoint$geometry","transformGeometry","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry4","autoView","getView","addHighlightFeature","_layer","getLayerByKey","key","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","onCloseTemplateBefore","remove","entities","getById","setView","pitch","camera","heading","z","flyTo","destination","orientation","roll","duration","CloseOutlined","id","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef } from 'react';\nimport { ImageryLayerFeatureInfo, Cartesian3, Cartographic, Math as CesiumMath } from 'cesium';\nimport { CloseOutlined } from '@ant-design/icons';\nimport { Table } from 'antd';\nimport InfoTool from './InfoTool';\nimport classnames from 'classnames';\nimport { point, midpoint as Midpoint, polygon as Polygon, centerOfMass } from '@turf/turf';\nimport PolygonGeo from '../polygon/Polygon';\nimport PolylineGeo from '../polyline/Polyline';\nimport {getImgUrl} from '../tools/layer-control';\nimport {transformGeometry} from '../feature-layer/createFeatureCollection';\nimport {\n featureCollection as TurfFeatureCollection,\n point as TurfPoint,\n centerOfMass as TureCenterOfMass,\n} from '@turf/turf';\n\nconst ClusterTitle = (props) => {\n const {layer} = props;\n let {name} = layer;\n\n const imgUrl = getImgUrl(layer);\n\n return (\n <div className={classnames('cs-map-popup-cluster-title')}>\n <img src={imgUrl} alt=\"\" className={classnames('cs-map-popup-cluster-title-img')}/>\n <span className={classnames('cs-map-popup-cluster-title-text')}>{name}</span>\n </div>\n )\n}\n\nconst Cluster = props => {\n const {layer, features, onFeatureClick, onFitView} = props;\n let {labelField} = layer;\n\n return (\n <div className={classnames('cs-map-popup-cluster')}>\n <div className={classnames('cs-map-popup-cluster-header')}>\n 共 {features.length} 个点位\n <a onClick={onFitView}>缩放至</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={features}\n scroll={{ y: 120 }}\n columns={[\n {\n title: '名称',\n dataIndex: '名称',\n width: 60,\n render: (text, record) => {\n return (\n <a onClick={() => onFeatureClick(record)}>\n {record.values_[labelField]}\n </a>\n );\n },\n },\n {\n title: '操作',\n dataIndex: '操作',\n width: 30,\n render: (text, record) => {\n return <a onClick={() => onFeatureClick(record)}>定位</a>;\n },\n },\n ]}\n />\n </div>\n );\n};\n\nexport const handelGeometry = entity => {\n let geometry = entity?.data?.geometry;\n let type = geometry?.type;\n let coordinates = geometry?.coordinates;\n\n let midpoint = entity?.data; // 默认点\n let position = null;\n let offset = {\n x: 0,\n y: 20,\n };\n\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\n let point1 = null;\n let point2 = null;\n // 线\n if (coordinates.length > 1) {\n point1 = point(coordinates[0]);\n point2 = point(coordinates[1]);\n } else {\n let lngLatArr = coordinates[0];\n point1 = point(lngLatArr[0]);\n point2 = point(lngLatArr[1]);\n }\n midpoint = Midpoint(point1, point2);\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\n // 兼容polygon首尾坐标不一致情况\n coordinates = coordinates?.map(item => {\n console.log(item[0][0], item[item.length - 1][0]);\n if (\n item[0][0] !== item[item.length - 1][0] ||\n item[0][1] !== item[item.length - 1][1]\n ) {\n return [...item, item[0]];\n }\n return item;\n });\n // 面\n // 注意:polygon首尾坐标要一致\n let polygon = Polygon(coordinates);\n midpoint = centerOfMass(polygon);\n } else if (['Point'].includes(type)) {\n offset = {\n x: 5,\n y: 20,\n };\n }\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n\n return {\n position,\n geometryType: type,\n _offset: offset,\n };\n};\n\nconst Popup = forwardRef((props, ref) => {\n const { map } = props;\n\n const [content, setContent] = useState(null);\n const [title, setTitle] = useState(null);\n const popupRef = useRef();\n\n const featureRef = useRef();\n const infoToolRef = useRef(new InfoTool({ map }));\n const viewRef = useRef();\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n const showTemplate = (feature, highlightLayer) => {\n // 判断是否为聚合点击\n if (feature && feature.length >= 2) {\n const points = [];\n const features = feature.map(f => {\n let properties = map.getProperties(f);\n\n points.push(TurfPoint(f.geometry));\n return {\n feature: f,\n geometryInfo: properties?.geometryInfo || {\n type: 'point',\n lngLats: f.geometry.join(','),\n coordType: 'wgs84',\n },\n values_: properties,\n properties: properties,\n };\n });\n\n const center = TureCenterOfMass(TurfFeatureCollection(points));\n let { position } = handelGeometry({\n data: center,\n });\n\n let layer = map.getLayerByFeature(feature[0]);\n infoToolRef.current.add({\n position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset: {\n x: 0,\n y: 50,\n },\n });\n\n setTitle(<ClusterTitle layer={layer}/>);\n\n // 判断是否有自定义聚合列表模版\n let Template = layer?._options?.cluster?.template || Cluster;\n setContent(\n <Template\n layer={layer}\n features={features}\n onFitView={() => {\n map.fitView({data: features});\n hideTemplate();\n }}\n onFeatureClick={f => {\n showTemplate(f.feature, highlightLayer);\n }}\n />,\n );\n return;\n }\n\n let layer = map.getLayerByFeature(feature);\n if (!layer?.template) {\n return;\n }\n\n let properties = map.getProperties(feature);\n feature.values_ = properties;\n featureRef.current = feature;\n if (layer) {\n let template = layer.template;\n let labelField = layer.labelField;\n\n setTitle(labelField && properties[labelField]);\n setContent(feature && template(feature));\n }\n\n let position = feature?._position?._value;\n // 偏移量\n let offset = {\n x: 5,\n y: 76,\n };\n\n let height = 5000;\n if (feature instanceof PolygonGeo || feature?._polygon) {\n let coordinates = [\n (feature?._polygon?._hierarchy?._value?.positions || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat];\n }),\n ];\n let { position: _position, _offset } = handelGeometry({\n data: { geometry: { type: 'Polygon', coordinates } },\n });\n position = _position;\n offset = _offset;\n height = null;\n } else if (feature instanceof PolylineGeo || feature?._polyline) {\n let coordinates = (feature?._polyline?._positions?._value || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat];\n });\n let { position: _position, _offset } = handelGeometry({\n data: { geometry: { type: 'LineString', coordinates } },\n });\n position = _position;\n offset = _offset;\n height = null;\n }\n\n if (feature.primitive) {\n offset = {\n x: 0,\n y: 20,\n };\n const geometry = transformGeometry(properties.geometryInfo);\n const [point1, point2] = geometry.coordinates[0];\n const midpoint = Midpoint(point1, point2);\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n }\n\n // 影像图层的数据\n if (feature instanceof ImageryLayerFeatureInfo || feature?.data?.geometry?.coordinates) {\n let { position: _position, _offset } = handelGeometry(feature);\n position = _position;\n offset = _offset;\n }\n\n infoToolRef.current.add({\n position: position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset,\n });\n\n map.popupRef = feature;\n\n if (!viewRef.current && map.autoView) {\n getView();\n }\n\n highlightLayer = highlightLayer || map.highlightLayer;\n highlightLayer.addHighlightFeature(feature);\n if (highlightLayer?.layer && map.autoView) {\n map.fitView({ entity: highlightLayer.layer, height });\n }\n };\n\n const hideTemplate = _layer => {\n if (_layer) {\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\n\n if (layer && layer.key && map.popupRef) {\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\n if (_highlightLayer.key === layer.key) {\n onClose();\n }\n }\n } else {\n onClose();\n }\n };\n\n // 判断点位异常-点位异常展示红色\n function judgeAbnormal() {\n const { status } = map.getProperties(featureRef.current) || {};\n\n return status && [1, 2, 4].includes(status);\n }\n\n // 关闭气泡\n const onClose = () => {\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\n map.popupRef = null;\n featureRef.current = null;\n infoToolRef?.current?.remove();\n\n if (map.entities.getById('highlight-1')) {\n map.entities.remove(map.entities.getById('highlight-1'));\n }\n\n // 清除高亮\n // highlightLayer.current.clearFeatures();\n\n // map.fitView();\n\n if (map.autoView) {\n setView();\n }\n };\n\n const getView = () => {\n //获取当前视角的pitch\n let pitch = map.camera.pitch;\n //获取当前视角的heading\n let heading = map.camera.heading;\n //获取当前视角的postion(位置)\n let position = map.camera.position;\n\n viewRef.current = {\n x: position.x,\n y: position.y,\n z: position.z,\n pitch: pitch,\n heading: heading,\n };\n };\n\n const setView = () => {\n if (viewRef.current) {\n map.camera.flyTo({\n //定位到范围中心点\n destination: {\n x: viewRef.current.x,\n y: viewRef.current.y,\n z: viewRef.current.z,\n },\n orientation: {\n heading: viewRef.current.heading, //左右方向\n pitch: viewRef.current.pitch, //上下方向\n roll: 0.0,\n },\n duration: 2,\n });\n\n viewRef.current = null;\n }\n };\n return (\n <div\n ref={popupRef}\n className={classnames('cesium-popup', { 'cesium-popup-abnormal': judgeAbnormal() })}\n >\n <CloseOutlined\n className={classnames('cesium-popup-close')}\n width={16}\n height={16}\n onClick={onClose}\n />\n <div className={classnames('cesium-popup-title', { 'cesium-popup-no-title': !title })}>\n {title}\n </div>\n <div className={classnames('cesium-popup-content')} id=\"content\">\n {content}\n </div>\n </div>\n );\n});\n\nexport default Popup;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,WAAA,GAAAD,sBAAA,CAAAL,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAH,sBAAA,CAAAL,OAAA;AACA,IAAAS,SAAA,GAAAJ,sBAAA,CAAAL,OAAA;AACA,IAAAU,aAAA,GAAAV,OAAA;AACA,IAAAW,wBAAA,GAAAX,OAAA;AAA2E,SAAAK,uBAAAO,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAhB,wBAAAgB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAF,UAAA,SAAAE,CAAA,eAAAA,CAAA,gBAAAI,OAAA,CAAAJ,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAE,GAAA,CAAAL,CAAA,UAAAG,CAAA,CAAAG,GAAA,CAAAN,CAAA,OAAAO,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAb,CAAA,oBAAAa,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAa,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAZ,CAAA,EAAAa,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAb,CAAA,CAAAa,CAAA,YAAAN,CAAA,cAAAP,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAO,CAAA,GAAAA,CAAA;AAAA,SAAAY,eAAAC,GAAA,EAAAH,CAAA,WAAAI,eAAA,CAAAD,GAAA,KAAAE,qBAAA,CAAAF,GAAA,EAAAH,CAAA,KAAAM,2BAAA,CAAAH,GAAA,EAAAH,CAAA,KAAAO,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAH,sBAAApB,CAAA,EAAAwB,CAAA,QAAAvB,CAAA,WAAAD,CAAA,gCAAAyB,MAAA,IAAAzB,CAAA,CAAAyB,MAAA,CAAAC,QAAA,KAAA1B,CAAA,4BAAAC,CAAA,QAAAH,CAAA,EAAAO,CAAA,EAAAU,CAAA,EAAAJ,CAAA,EAAAJ,CAAA,OAAAoB,CAAA,OAAAC,CAAA,iBAAAb,CAAA,IAAAd,CAAA,GAAAA,CAAA,CAAAa,IAAA,CAAAd,CAAA,GAAA6B,IAAA,QAAAL,CAAA,QAAAhB,MAAA,CAAAP,CAAA,MAAAA,CAAA,UAAA0B,CAAA,uBAAAA,CAAA,IAAA7B,CAAA,GAAAiB,CAAA,CAAAD,IAAA,CAAAb,CAAA,GAAA6B,IAAA,MAAAvB,CAAA,CAAAwB,IAAA,CAAAjC,CAAA,CAAAkC,KAAA,GAAAzB,CAAA,CAAA0B,MAAA,KAAAT,CAAA,GAAAG,CAAA,iBAAA3B,CAAA,IAAA4B,CAAA,OAAAvB,CAAA,GAAAL,CAAA,yBAAA2B,CAAA,YAAA1B,CAAA,eAAAU,CAAA,GAAAV,CAAA,cAAAO,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAAiB,CAAA,QAAAvB,CAAA,aAAAE,CAAA;AAAA,SAAAY,gBAAAD,GAAA,QAAAgB,KAAA,CAAAC,OAAA,CAAAjB,GAAA,UAAAA,GAAA;AAAA,SAAAkB,mBAAAlB,GAAA,WAAAmB,kBAAA,CAAAnB,GAAA,KAAAoB,gBAAA,CAAApB,GAAA,KAAAG,2BAAA,CAAAH,GAAA,KAAAqB,kBAAA;AAAA,SAAAA,mBAAA,cAAAhB,SAAA;AAAA,SAAAF,4BAAAO,CAAA,EAAAY,MAAA,SAAAZ,CAAA,qBAAAA,CAAA,sBAAAa,iBAAA,CAAAb,CAAA,EAAAY,MAAA,OAAAnC,CAAA,GAAAG,MAAA,CAAAI,SAAA,CAAA8B,QAAA,CAAA5B,IAAA,CAAAc,CAAA,EAAAe,KAAA,aAAAtC,CAAA,iBAAAuB,CAAA,CAAAgB,WAAA,EAAAvC,CAAA,GAAAuB,CAAA,CAAAgB,WAAA,CAAAC,IAAA,MAAAxC,CAAA,cAAAA,CAAA,mBAAA6B,KAAA,CAAAY,IAAA,CAAAlB,CAAA,OAAAvB,CAAA,+DAAA0C,IAAA,CAAA1C,CAAA,UAAAoC,iBAAA,CAAAb,CAAA,EAAAY,MAAA;AAAA,SAAAF,iBAAAU,IAAA,eAAAvB,MAAA,oBAAAuB,IAAA,CAAAvB,MAAA,CAAAC,QAAA,aAAAsB,IAAA,+BAAAd,KAAA,CAAAY,IAAA,CAAAE,IAAA;AAAA,SAAAX,mBAAAnB,GAAA,QAAAgB,KAAA,CAAAC,OAAA,CAAAjB,GAAA,UAAAuB,iBAAA,CAAAvB,GAAA;AAAA,SAAAuB,kBAAAvB,GAAA,EAAA+B,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAA/B,GAAA,CAAAe,MAAA,EAAAgB,GAAA,GAAA/B,GAAA,CAAAe,MAAA,WAAAlB,CAAA,MAAAmC,IAAA,OAAAhB,KAAA,CAAAe,GAAA,GAAAlC,CAAA,GAAAkC,GAAA,EAAAlC,CAAA,IAAAmC,IAAA,CAAAnC,CAAA,IAAAG,GAAA,CAAAH,CAAA,UAAAmC,IAAA;AAO3E,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIC,KAAK,EAAK;EAC5B,IAAOC,KAAK,GAAID,KAAK,CAAdC,KAAK;EACZ,IAAKR,IAAI,GAAIQ,KAAK,CAAbR,IAAI;EAET,IAAMS,MAAM,GAAG,IAAAC,uBAAS,EAACF,KAAK,CAAC;EAE/B,oBACIxE,MAAA,YAAA2E,aAAA;IAAKC,SAAS,EAAE,IAAAC,sBAAU,EAAC,4BAA4B;EAAE,gBACrD7E,MAAA,YAAA2E,aAAA;IAAKG,GAAG,EAAEL,MAAO;IAACM,GAAG,EAAC,EAAE;IAACH,SAAS,EAAE,IAAAC,sBAAU,EAAC,gCAAgC;EAAE,CAAC,CAAC,eACnF7E,MAAA,YAAA2E,aAAA;IAAMC,SAAS,EAAE,IAAAC,sBAAU,EAAC,iCAAiC;EAAE,GAAEb,IAAW,CAC3E,CAAC;AAEd,CAAC;AAED,IAAMgB,OAAO,GAAG,SAAVA,OAAOA,CAAGT,KAAK,EAAI;EACrB,IAAOC,KAAK,GAAyCD,KAAK,CAAnDC,KAAK;IAAES,QAAQ,GAA+BV,KAAK,CAA5CU,QAAQ;IAAEC,cAAc,GAAeX,KAAK,CAAlCW,cAAc;IAAEC,SAAS,GAAIZ,KAAK,CAAlBY,SAAS;EACjD,IAAKC,UAAU,GAAIZ,KAAK,CAAnBY,UAAU;EAEf,oBACIpF,MAAA,YAAA2E,aAAA;IAAKC,SAAS,EAAE,IAAAC,sBAAU,EAAC,sBAAsB;EAAE,gBAC/C7E,MAAA,YAAA2E,aAAA;IAAKC,SAAS,EAAE,IAAAC,sBAAU,EAAC,6BAA6B;EAAE,GAAC,SACrD,EAACI,QAAQ,CAAC7B,MAAM,EAAC,qBACnB,eAAApD,MAAA,YAAA2E,aAAA;IAAGU,OAAO,EAAEF;EAAU,GAAC,oBAAM,CAC5B,CAAC,eACNnF,MAAA,YAAA2E,aAAA,CAACtE,KAAA,CAAAiF,KAAK;IACFC,UAAU,EAAE,KAAM;IAClBC,IAAI,EAAC,OAAO;IACZC,UAAU,EAAER,QAAS;IACrBS,MAAM,EAAE;MAAEC,CAAC,EAAE;IAAI,CAAE;IACnBC,OAAO,EAAE,CACL;MACIC,KAAK,EAAE,IAAI;MACXC,SAAS,EAAE,IAAI;MACfC,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE,SAAAA,OAACC,IAAI,EAAEC,MAAM,EAAK;QACtB,oBACIlG,MAAA,YAAA2E,aAAA;UAAGU,OAAO,EAAE,SAAAA,QAAA;YAAA,OAAMH,cAAc,CAACgB,MAAM,CAAC;UAAA;QAAC,GACpCA,MAAM,CAACC,OAAO,CAACf,UAAU,CAC3B,CAAC;MAEZ;IACJ,CAAC,EACD;MACIS,KAAK,EAAE,IAAI;MACXC,SAAS,EAAE,IAAI;MACfC,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE,SAAAA,OAACC,IAAI,EAAEC,MAAM,EAAK;QACtB,oBAAOlG,MAAA,YAAA2E,aAAA;UAAGU,OAAO,EAAE,SAAAA,QAAA;YAAA,OAAMH,cAAc,CAACgB,MAAM,CAAC;UAAA;QAAC,GAAC,cAAK,CAAC;MAC3D;IACJ,CAAC;EACH,CACL,CACA,CAAC;AAEd,CAAC;AAEM,IAAME,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAG,SAAjBA,cAAcA,CAAGE,MAAM,EAAI;EAAA,IAAAC,YAAA,EAAAC,YAAA,EAAAC,SAAA;EACpC,IAAIC,QAAQ,GAAGJ,MAAM,aAANA,MAAM,gBAAAC,YAAA,GAAND,MAAM,CAAEK,IAAI,cAAAJ,YAAA,uBAAZA,YAAA,CAAcG,QAAQ;EACrC,IAAIE,IAAI,GAAGF,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEE,IAAI;EACzB,IAAIC,WAAW,GAAGH,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEG,WAAW;EAEvC,IAAIC,QAAQ,GAAGR,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEK,IAAI,CAAC,CAAC;EAC7B,IAAII,QAAQ,GAAG,IAAI;EACnB,IAAIC,MAAM,GAAG;IACTC,CAAC,EAAE,CAAC;IACJtB,CAAC,EAAE;EACP,CAAC;EAED,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAACuB,QAAQ,CAACN,IAAI,CAAC,KAAAJ,YAAA,GAAIK,WAAW,cAAAL,YAAA,eAAXA,YAAA,CAAapD,MAAM,EAAE;IACzE,IAAI+D,MAAM,GAAG,IAAI;IACjB,IAAIC,MAAM,GAAG,IAAI;IACjB;IACA,IAAIP,WAAW,CAACzD,MAAM,GAAG,CAAC,EAAE;MACxB+D,MAAM,GAAG,IAAAE,WAAK,EAACR,WAAW,CAAC,CAAC,CAAC,CAAC;MAC9BO,MAAM,GAAG,IAAAC,WAAK,EAACR,WAAW,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,MAAM;MACH,IAAIS,SAAS,GAAGT,WAAW,CAAC,CAAC,CAAC;MAC9BM,MAAM,GAAG,IAAAE,WAAK,EAACC,SAAS,CAAC,CAAC,CAAC,CAAC;MAC5BF,MAAM,GAAG,IAAAC,WAAK,EAACC,SAAS,CAAC,CAAC,CAAC,CAAC;IAChC;IACAR,QAAQ,GAAG,IAAAS,cAAQ,EAACJ,MAAM,EAAEC,MAAM,CAAC;EACvC,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAACF,QAAQ,CAACN,IAAI,CAAC,EAAE;IAAA,IAAAY,aAAA;IACnD;IACAX,WAAW,IAAAW,aAAA,GAAGX,WAAW,cAAAW,aAAA,uBAAXA,aAAA,CAAaC,GAAG,CAAC,UAAAC,IAAI,EAAI;MACnCC,OAAO,CAACC,GAAG,CAACF,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAEA,IAAI,CAACA,IAAI,CAACtE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;MACjD,IACIsE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAKA,IAAI,CAACA,IAAI,CAACtE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IACvCsE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAKA,IAAI,CAACA,IAAI,CAACtE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EACzC;QACE,UAAAyE,MAAA,CAAAtE,kBAAA,CAAWmE,IAAI,IAAEA,IAAI,CAAC,CAAC,CAAC;MAC5B;MACA,OAAOA,IAAI;IACf,CAAC,CAAC;IACF;IACA;IACA,IAAII,OAAO,GAAG,IAAAC,aAAO,EAAClB,WAAW,CAAC;IAClCC,QAAQ,GAAG,IAAAkB,kBAAY,EAACF,OAAO,CAAC;EACpC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,CAACZ,QAAQ,CAACN,IAAI,CAAC,EAAE;IACjCI,MAAM,GAAG;MACLC,CAAC,EAAE,CAAC;MACJtB,CAAC,EAAE;IACP,CAAC;EACL;EACA,KAAAc,SAAA,GAAIK,QAAQ,cAAAL,SAAA,gBAAAA,SAAA,GAARA,SAAA,CAAUC,QAAQ,cAAAD,SAAA,eAAlBA,SAAA,CAAoBI,WAAW,EAAE;IACjCE,QAAQ,GAAGkB,kBAAU,CAACC,WAAW,CAAAC,KAAA,CAAtBF,kBAAU,EAAA1E,kBAAA,CAAgBuD,QAAQ,CAACJ,QAAQ,CAACG,WAAW,EAAC;EACvE;EAEA,OAAO;IACHE,QAAQ,EAARA,QAAQ;IACRqB,YAAY,EAAExB,IAAI;IAClByB,OAAO,EAAErB;EACb,CAAC;AACL,CAAC;AAED,IAAMsB,KAAK,gBAAG,IAAAC,iBAAU,EAAC,UAAChE,KAAK,EAAEiE,GAAG,EAAK;EACrC,IAAQf,GAAG,GAAKlD,KAAK,CAAbkD,GAAG;EAEX,IAAAgB,SAAA,GAA8B,IAAAC,eAAQ,EAAC,IAAI,CAAC;IAAAC,UAAA,GAAAvG,cAAA,CAAAqG,SAAA;IAArCG,OAAO,GAAAD,UAAA;IAAEE,UAAU,GAAAF,UAAA;EAC1B,IAAAG,UAAA,GAA0B,IAAAJ,eAAQ,EAAC,IAAI,CAAC;IAAAK,UAAA,GAAA3G,cAAA,CAAA0G,UAAA;IAAjCjD,KAAK,GAAAkD,UAAA;IAAEC,QAAQ,GAAAD,UAAA;EACtB,IAAME,QAAQ,GAAG,IAAAC,aAAM,EAAC,CAAC;EAEzB,IAAMC,UAAU,GAAG,IAAAD,aAAM,EAAC,CAAC;EAC3B,IAAME,WAAW,GAAG,IAAAF,aAAM,EAAC,IAAIG,oBAAQ,CAAC;IAAE5B,GAAG,EAAHA;EAAI,CAAC,CAAC,CAAC;EACjD,IAAM6B,OAAO,GAAG,IAAAJ,aAAM,EAAC,CAAC;EAExB,IAAAK,0BAAmB,EAACf,GAAG,EAAE,YAAM;IAC3B,OAAO;MACHgB,YAAY,EAAZA,YAAY;MACZC,YAAY,EAAZA;IACJ,CAAC;EACL,CAAC,CAAC;EAEF,IAAMD,YAAY,GAAG,SAAfA,YAAYA,CAAIE,OAAO,EAAEC,cAAc,EAAK;IAAA,IAAAC,kBAAA,EAAAC,aAAA,EAAAC,gBAAA;IAC9C;IACA,IAAIJ,OAAO,IAAIA,OAAO,CAACtG,MAAM,IAAI,CAAC,EAAE;MAAA,IAAA2G,gBAAA;MAChC,IAAMC,MAAM,GAAG,EAAE;MACjB,IAAM/E,QAAQ,GAAGyE,OAAO,CAACjC,GAAG,CAAC,UAAA3E,CAAC,EAAI;QAC9B,IAAImH,UAAU,GAAGxC,GAAG,CAACyC,aAAa,CAACpH,CAAC,CAAC;QAErCkH,MAAM,CAAC9G,IAAI,CAAC,IAAAiH,WAAS,EAACrH,CAAC,CAAC4D,QAAQ,CAAC,CAAC;QAClC,OAAO;UACHgD,OAAO,EAAE5G,CAAC;UACVsH,YAAY,EAAE,CAAAH,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEG,YAAY,KAAI;YACtCxD,IAAI,EAAE,OAAO;YACbyD,OAAO,EAAEvH,CAAC,CAAC4D,QAAQ,CAAC4D,IAAI,CAAC,GAAG,CAAC;YAC7BC,SAAS,EAAE;UACf,CAAC;UACDpE,OAAO,EAAE8D,UAAU;UACnBA,UAAU,EAAEA;QAChB,CAAC;MACL,CAAC,CAAC;MAEF,IAAMO,MAAM,GAAG,IAAAC,kBAAgB,EAAC,IAAAC,uBAAqB,EAACV,MAAM,CAAC,CAAC;MAC9D,IAAAW,eAAA,GAAmBvE,cAAc,CAAC;UAC9BO,IAAI,EAAE6D;QACV,CAAC,CAAC;QAFIzD,UAAQ,GAAA4D,eAAA,CAAR5D,QAAQ;MAId,IAAIvC,OAAK,GAAGiD,GAAG,CAACmD,iBAAiB,CAAClB,OAAO,CAAC,CAAC,CAAC,CAAC;MAC7CN,WAAW,CAACyB,OAAO,CAACC,GAAG,CAAC;QACpB/D,QAAQ,EAARA,UAAQ;QACR6B,OAAO,EAAE,EAAE;QACXmC,OAAO,EAAE9B,QAAQ,CAAC4B,OAAO;QACzBG,YAAY,EAAEtB,OAAO;QACrB9C,IAAI,EAAE,EAAE;QACRI,MAAM,EAAE;UACJC,CAAC,EAAE,CAAC;UACJtB,CAAC,EAAE;QACP;MACJ,CAAC,CAAC;MAEFqD,QAAQ,eAAChJ,MAAA,YAAA2E,aAAA,CAACL,YAAY;QAACE,KAAK,EAAEA;MAAM,CAAC,CAAC,CAAC;;MAEvC;MACA,IAAIyG,QAAQ,GAAG,CAAAzG,OAAK,aAALA,OAAK,gBAAAuF,gBAAA,GAALvF,OAAK,CAAE0G,QAAQ,cAAAnB,gBAAA,gBAAAA,gBAAA,GAAfA,gBAAA,CAAiBoB,OAAO,cAAApB,gBAAA,uBAAxBA,gBAAA,CAA0BqB,QAAQ,KAAIpG,OAAO;MAC5D6D,UAAU,eACN7I,MAAA,YAAA2E,aAAA,CAACsG,QAAQ;QACLzG,KAAK,EAAEA,OAAM;QACbS,QAAQ,EAAEA,QAAS;QACnBE,SAAS,EAAE,SAAAA,UAAA,EAAM;UACbsC,GAAG,CAAC4D,OAAO,CAAC;YAAC1E,IAAI,EAAE1B;UAAQ,CAAC,CAAC;UAC7BwE,YAAY,CAAC,CAAC;QAClB,CAAE;QACFvE,cAAc,EAAE,SAAAA,eAAApC,CAAC,EAAI;UACjB0G,YAAY,CAAC1G,CAAC,CAAC4G,OAAO,EAAEC,cAAc,CAAC;QAC3C;MAAE,CACL,CACL,CAAC;MACD;IACJ;IAEA,IAAInF,KAAK,GAAGiD,GAAG,CAACmD,iBAAiB,CAAClB,OAAO,CAAC;IAC1C,IAAI,EAAClF,KAAK,aAALA,KAAK,eAALA,KAAK,CAAE4G,QAAQ,GAAE;MAClB;IACJ;IAEA,IAAInB,UAAU,GAAGxC,GAAG,CAACyC,aAAa,CAACR,OAAO,CAAC;IAC3CA,OAAO,CAACvD,OAAO,GAAG8D,UAAU;IAC5Bd,UAAU,CAAC0B,OAAO,GAAGnB,OAAO;IAC5B,IAAIlF,KAAK,EAAE;MACP,IAAI4G,QAAQ,GAAG5G,KAAK,CAAC4G,QAAQ;MAC7B,IAAIhG,UAAU,GAAGZ,KAAK,CAACY,UAAU;MAEjC4D,QAAQ,CAAC5D,UAAU,IAAI6E,UAAU,CAAC7E,UAAU,CAAC,CAAC;MAC9CyD,UAAU,CAACa,OAAO,IAAI0B,QAAQ,CAAC1B,OAAO,CAAC,CAAC;IAC5C;IAEA,IAAI3C,QAAQ,GAAG2C,OAAO,aAAPA,OAAO,gBAAAE,kBAAA,GAAPF,OAAO,CAAE4B,SAAS,cAAA1B,kBAAA,uBAAlBA,kBAAA,CAAoB2B,MAAM;IACzC;IACA,IAAIvE,MAAM,GAAG;MACTC,CAAC,EAAE,CAAC;MACJtB,CAAC,EAAE;IACP,CAAC;IAED,IAAI6F,MAAM,GAAG,IAAI;IACjB,IAAI9B,OAAO,YAAY+B,mBAAU,IAAI/B,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEgC,QAAQ,EAAE;MAAA,IAAAC,iBAAA;MACpD,IAAI9E,WAAW,GAAG,CACd,CAAC,CAAA6C,OAAO,aAAPA,OAAO,gBAAAiC,iBAAA,GAAPjC,OAAO,CAAEgC,QAAQ,cAAAC,iBAAA,gBAAAA,iBAAA,GAAjBA,iBAAA,CAAmBC,UAAU,cAAAD,iBAAA,gBAAAA,iBAAA,GAA7BA,iBAAA,CAA+BJ,MAAM,cAAAI,iBAAA,uBAArCA,iBAAA,CAAuCE,SAAS,KAAI,EAAE,EAAEpE,GAAG,CAAC,UAAAqE,CAAC,EAAI;QAC9D,IAAMC,YAAY,GAAGC,oBAAY,CAACC,aAAa,CAACH,CAAC,CAAC,CAAC,CAAC;QACpD,IAAMI,GAAG,GAAGC,YAAU,CAACC,SAAS,CAACL,YAAY,CAACM,SAAS,CAAC;QACxD,IAAMC,GAAG,GAAGH,YAAU,CAACC,SAAS,CAACL,YAAY,CAACQ,QAAQ,CAAC;QACvD,OAAO,CAACL,GAAG,EAAEI,GAAG,CAAC;MACrB,CAAC,CAAC,CACL;MACD,IAAAE,gBAAA,GAAuCpG,cAAc,CAAC;UAClDO,IAAI,EAAE;YAAED,QAAQ,EAAE;cAAEE,IAAI,EAAE,SAAS;cAAEC,WAAW,EAAXA;YAAY;UAAE;QACvD,CAAC,CAAC;QAFcyE,SAAS,GAAAkB,gBAAA,CAAnBzF,QAAQ;QAAasB,OAAO,GAAAmE,gBAAA,CAAPnE,OAAO;MAGlCtB,QAAQ,GAAGuE,SAAS;MACpBtE,MAAM,GAAGqB,OAAO;MAChBmD,MAAM,GAAG,IAAI;IACjB,CAAC,MAAM,IAAI9B,OAAO,YAAY+C,oBAAW,IAAI/C,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEgD,SAAS,EAAE;MAAA,IAAAC,kBAAA;MAC7D,IAAI9F,aAAW,GAAG,CAAC,CAAA6C,OAAO,aAAPA,OAAO,gBAAAiD,kBAAA,GAAPjD,OAAO,CAAEgD,SAAS,cAAAC,kBAAA,gBAAAA,kBAAA,GAAlBA,kBAAA,CAAoBC,UAAU,cAAAD,kBAAA,uBAA9BA,kBAAA,CAAgCpB,MAAM,KAAI,EAAE,EAAE9D,GAAG,CAAC,UAAAqE,CAAC,EAAI;QACtE,IAAMC,YAAY,GAAGC,oBAAY,CAACC,aAAa,CAACH,CAAC,CAAC,CAAC,CAAC;QACpD,IAAMI,GAAG,GAAGC,YAAU,CAACC,SAAS,CAACL,YAAY,CAACM,SAAS,CAAC;QACxD,IAAMC,GAAG,GAAGH,YAAU,CAACC,SAAS,CAACL,YAAY,CAACQ,QAAQ,CAAC;QACvD,OAAO,CAACL,GAAG,EAAEI,GAAG,CAAC;MACrB,CAAC,CAAC;MACF,IAAAO,gBAAA,GAAuCzG,cAAc,CAAC;UAClDO,IAAI,EAAE;YAAED,QAAQ,EAAE;cAAEE,IAAI,EAAE,YAAY;cAAEC,WAAW,EAAXA;YAAY;UAAE;QAC1D,CAAC,CAAC;QAFcyE,UAAS,GAAAuB,gBAAA,CAAnB9F,QAAQ;QAAasB,QAAO,GAAAwE,gBAAA,CAAPxE,OAAO;MAGlCtB,QAAQ,GAAGuE,UAAS;MACpBtE,MAAM,GAAGqB,QAAO;MAChBmD,MAAM,GAAG,IAAI;IACjB;IAEA,IAAI9B,OAAO,CAACoD,SAAS,EAAE;MAAA,IAAAC,kBAAA;MACnB/F,MAAM,GAAG;QACLC,CAAC,EAAE,CAAC;QACJtB,CAAC,EAAE;MACP,CAAC;MACD,IAAMe,QAAQ,GAAG,IAAAsG,0CAAiB,EAAC/C,UAAU,CAACG,YAAY,CAAC;MAC3D,IAAA6C,qBAAA,GAAA7K,cAAA,CAAyBsE,QAAQ,CAACG,WAAW,CAAC,CAAC,CAAC;QAAzCM,MAAM,GAAA8F,qBAAA;QAAE7F,MAAM,GAAA6F,qBAAA;MACrB,IAAMnG,QAAQ,GAAG,IAAAS,cAAQ,EAACJ,MAAM,EAAEC,MAAM,CAAC;MACzC,IAAIN,QAAQ,aAARA,QAAQ,gBAAAiG,kBAAA,GAARjG,QAAQ,CAAEJ,QAAQ,cAAAqG,kBAAA,eAAlBA,kBAAA,CAAoBlG,WAAW,EAAE;QACjCE,QAAQ,GAAGkB,kBAAU,CAACC,WAAW,CAAAC,KAAA,CAAtBF,kBAAU,EAAA1E,kBAAA,CAAgBuD,QAAQ,CAACJ,QAAQ,CAACG,WAAW,EAAC;MACvE;IACJ;;IAEA;IACA,IAAI6C,OAAO,YAAYwD,+BAAuB,IAAIxD,OAAO,aAAPA,OAAO,gBAAAG,aAAA,GAAPH,OAAO,CAAE/C,IAAI,cAAAkD,aAAA,gBAAAA,aAAA,GAAbA,aAAA,CAAenD,QAAQ,cAAAmD,aAAA,eAAvBA,aAAA,CAAyBhD,WAAW,EAAE;MACpF,IAAAsG,gBAAA,GAAuC/G,cAAc,CAACsD,OAAO,CAAC;QAA9C4B,UAAS,GAAA6B,gBAAA,CAAnBpG,QAAQ;QAAasB,QAAO,GAAA8E,gBAAA,CAAP9E,OAAO;MAClCtB,QAAQ,GAAGuE,UAAS;MACpBtE,MAAM,GAAGqB,QAAO;IACpB;IAEAe,WAAW,CAACyB,OAAO,CAACC,GAAG,CAAC;MACpB/D,QAAQ,EAAEA,QAAQ;MAClB6B,OAAO,EAAE,EAAE;MACXmC,OAAO,EAAE9B,QAAQ,CAAC4B,OAAO;MACzBG,YAAY,EAAEtB,OAAO;MACrB9C,IAAI,EAAE,EAAE;MACRI,MAAM,EAANA;IACJ,CAAC,CAAC;IAEFS,GAAG,CAACwB,QAAQ,GAAGS,OAAO;IAEtB,IAAI,CAACJ,OAAO,CAACuB,OAAO,IAAIpD,GAAG,CAAC2F,QAAQ,EAAE;MAClCC,OAAO,CAAC,CAAC;IACb;IAEA1D,cAAc,GAAGA,cAAc,IAAIlC,GAAG,CAACkC,cAAc;IACrDA,cAAc,CAAC2D,mBAAmB,CAAC5D,OAAO,CAAC;IAC3C,IAAI,CAAAI,gBAAA,GAAAH,cAAc,cAAAG,gBAAA,eAAdA,gBAAA,CAAgBtF,KAAK,IAAIiD,GAAG,CAAC2F,QAAQ,EAAE;MACvC3F,GAAG,CAAC4D,OAAO,CAAC;QAAE/E,MAAM,EAAEqD,cAAc,CAACnF,KAAK;QAAEgH,MAAM,EAANA;MAAO,CAAC,CAAC;IACzD;EACJ,CAAC;EAED,IAAM/B,YAAY,GAAG,SAAfA,YAAYA,CAAG8D,MAAM,EAAI;IAC3B,IAAIA,MAAM,EAAE;MACR,IAAI/I,KAAK,GAAG,OAAO+I,MAAM,KAAK,QAAQ,GAAG9F,GAAG,CAAC+F,aAAa,CAACD,MAAM,CAAC,GAAGA,MAAM;MAE3E,IAAI/I,KAAK,IAAIA,KAAK,CAACiJ,GAAG,IAAIhG,GAAG,CAACwB,QAAQ,EAAE;QACpC,IAAIyE,eAAe,GAAGjG,GAAG,CAACmD,iBAAiB,CAACnD,GAAG,CAACwB,QAAQ,CAAC;QACzD,IAAIyE,eAAe,CAACD,GAAG,KAAKjJ,KAAK,CAACiJ,GAAG,EAAE;UACnCE,OAAO,CAAC,CAAC;QACb;MACJ;IACJ,CAAC,MAAM;MACHA,OAAO,CAAC,CAAC;IACb;EACJ,CAAC;;EAED;EACA,SAASC,aAAaA,CAAA,EAAG;IACrB,IAAAC,IAAA,GAAmBpG,GAAG,CAACyC,aAAa,CAACf,UAAU,CAAC0B,OAAO,CAAC,IAAI,CAAC,CAAC;MAAtDiD,MAAM,GAAAD,IAAA,CAANC,MAAM;IAEd,OAAOA,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC5G,QAAQ,CAAC4G,MAAM,CAAC;EAC/C;;EAEA;EACA,IAAMH,OAAO,GAAG,SAAVA,OAAOA,CAAA,EAAS;IAAA,IAAAI,oBAAA;IAClBtG,GAAG,CAACuG,qBAAqB,IAAIvG,GAAG,CAACuG,qBAAqB,CAAC7E,UAAU,CAAC0B,OAAO,CAAC;IAC1EpD,GAAG,CAACwB,QAAQ,GAAG,IAAI;IACnBE,UAAU,CAAC0B,OAAO,GAAG,IAAI;IACzBzB,WAAW,aAAXA,WAAW,gBAAA2E,oBAAA,GAAX3E,WAAW,CAAEyB,OAAO,cAAAkD,oBAAA,eAApBA,oBAAA,CAAsBE,MAAM,CAAC,CAAC;IAE9B,IAAIxG,GAAG,CAACyG,QAAQ,CAACC,OAAO,CAAC,aAAa,CAAC,EAAE;MACrC1G,GAAG,CAACyG,QAAQ,CAACD,MAAM,CAACxG,GAAG,CAACyG,QAAQ,CAACC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5D;;IAEA;IACA;;IAEA;;IAEA,IAAI1G,GAAG,CAAC2F,QAAQ,EAAE;MACdgB,OAAO,CAAC,CAAC;IACb;EACJ,CAAC;EAED,IAAMf,OAAO,GAAG,SAAVA,OAAOA,CAAA,EAAS;IAClB;IACA,IAAIgB,KAAK,GAAG5G,GAAG,CAAC6G,MAAM,CAACD,KAAK;IAC5B;IACA,IAAIE,OAAO,GAAG9G,GAAG,CAAC6G,MAAM,CAACC,OAAO;IAChC;IACA,IAAIxH,QAAQ,GAAGU,GAAG,CAAC6G,MAAM,CAACvH,QAAQ;IAElCuC,OAAO,CAACuB,OAAO,GAAG;MACd5D,CAAC,EAAEF,QAAQ,CAACE,CAAC;MACbtB,CAAC,EAAEoB,QAAQ,CAACpB,CAAC;MACb6I,CAAC,EAAEzH,QAAQ,CAACyH,CAAC;MACbH,KAAK,EAAEA,KAAK;MACZE,OAAO,EAAEA;IACb,CAAC;EACL,CAAC;EAED,IAAMH,OAAO,GAAG,SAAVA,OAAOA,CAAA,EAAS;IAClB,IAAI9E,OAAO,CAACuB,OAAO,EAAE;MACjBpD,GAAG,CAAC6G,MAAM,CAACG,KAAK,CAAC;QACb;QACAC,WAAW,EAAE;UACTzH,CAAC,EAAEqC,OAAO,CAACuB,OAAO,CAAC5D,CAAC;UACpBtB,CAAC,EAAE2D,OAAO,CAACuB,OAAO,CAAClF,CAAC;UACpB6I,CAAC,EAAElF,OAAO,CAACuB,OAAO,CAAC2D;QACvB,CAAC;QACDG,WAAW,EAAE;UACTJ,OAAO,EAAEjF,OAAO,CAACuB,OAAO,CAAC0D,OAAO;UAAE;UAClCF,KAAK,EAAE/E,OAAO,CAACuB,OAAO,CAACwD,KAAK;UAAE;UAC9BO,IAAI,EAAE;QACV,CAAC;QACDC,QAAQ,EAAE;MACd,CAAC,CAAC;MAEFvF,OAAO,CAACuB,OAAO,GAAG,IAAI;IAC1B;EACJ,CAAC;EACD,oBACI7K,MAAA,YAAA2E,aAAA;IACI6D,GAAG,EAAES,QAAS;IACdrE,SAAS,EAAE,IAAAC,sBAAU,EAAC,cAAc,EAAE;MAAE,uBAAuB,EAAE+I,aAAa,CAAC;IAAE,CAAC;EAAE,gBAEpF5N,MAAA,YAAA2E,aAAA,CAACvE,MAAA,CAAA0O,aAAa;IACVlK,SAAS,EAAE,IAAAC,sBAAU,EAAC,oBAAoB,CAAE;IAC5CkB,KAAK,EAAE,EAAG;IACVyF,MAAM,EAAE,EAAG;IACXnG,OAAO,EAAEsI;EAAQ,CACpB,CAAC,eACF3N,MAAA,YAAA2E,aAAA;IAAKC,SAAS,EAAE,IAAAC,sBAAU,EAAC,oBAAoB,EAAE;MAAE,uBAAuB,EAAE,CAACgB;IAAM,CAAC;EAAE,GACjFA,KACA,CAAC,eACN7F,MAAA,YAAA2E,aAAA;IAAKC,SAAS,EAAE,IAAAC,sBAAU,EAAC,sBAAsB,CAAE;IAACkK,EAAE,EAAC;EAAS,GAC3DnG,OACA,CACJ,CAAC;AAEd,CAAC,CAAC;AAAC,IAAAoG,QAAA,GAAA3I,OAAA,cAEYiC,KAAK"}
|
|
1
|
+
{"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_cesium","_icons","_antd","_InfoTool","_interopRequireDefault","_classnames","_turf","_Polygon","_Polyline","_layerControl","_createFeatureCollection","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","l","Symbol","iterator","f","o","next","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","toString","slice","constructor","name","from","test","iter","len","arr2","ClusterTitle","props","layer","imgUrl","getImgUrl","createElement","className","classnames","src","alt","Cluster","features","onFeatureClick","onFitView","labelField","onClick","Table","pagination","size","dataSource","scroll","y","columns","title","dataIndex","width","render","text","record","values_","handelGeometry","exports","entity","_entity$data","_coordinates","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","includes","point1","point2","point","lngLatArr","Midpoint","_coordinates2","map","item","console","log","concat","polygon","Polygon","centerOfMass","Cartesian3","fromDegrees","apply","geometryType","_offset","Popup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","viewRef","useImperativeHandle","showTemplate","hideTemplate","feature","highlightLayer","_feature$_position","_feature$data","_highlightLayer2","_layer2$_options","points","properties","getProperties","TurfPoint","geometryInfo","lngLats","join","coordType","center","TureCenterOfMass","TurfFeatureCollection","_handelGeometry","getLayerByFeature","current","add","element","inputFeature","Template","_options","cluster","template","fitView","_position","_value","height","PolygonGeo","_polygon","_feature$_polygon","_hierarchy","positions","v","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","longitude","lat","latitude","_handelGeometry2","PolylineGeo","_polyline","_feature$_polyline","_positions","_handelGeometry3","primitive","_midpoint$geometry","transformGeometry","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry4","autoView","getView","addHighlightFeature","_layer","getLayerByKey","key","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","onCloseTemplateBefore","remove","entities","getById","setView","pitch","camera","heading","z","flyTo","destination","orientation","roll","duration","CloseOutlined","id","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef } from 'react';\nimport { ImageryLayerFeatureInfo, Cartesian3, Cartographic, Math as CesiumMath } from 'cesium';\nimport { CloseOutlined } from '@ant-design/icons';\nimport { Table } from 'antd';\nimport InfoTool from './InfoTool';\nimport classnames from 'classnames';\nimport { point, midpoint as Midpoint, polygon as Polygon, centerOfMass } from '@turf/turf';\nimport PolygonGeo from '../polygon/Polygon';\nimport PolylineGeo from '../polyline/Polyline';\nimport {getImgUrl} from '../tools/layer-control';\nimport {transformGeometry} from '../feature-layer/createFeatureCollection';\nimport {\n featureCollection as TurfFeatureCollection,\n point as TurfPoint,\n centerOfMass as TureCenterOfMass,\n} from '@turf/turf';\n\nconst ClusterTitle = (props) => {\n const {layer} = props;\n let {name} = layer;\n\n const imgUrl = getImgUrl(layer);\n\n return (\n <div className={classnames('cs-map-popup-cluster-title')}>\n <img src={imgUrl} alt=\"\" className={classnames('cs-map-popup-cluster-title-img')}/>\n <span className={classnames('cs-map-popup-cluster-title-text')}>{name}</span>\n </div>\n )\n}\n\nconst Cluster = props => {\n const {layer, features, onFeatureClick, onFitView} = props;\n let {labelField} = layer;\n\n return (\n <div className={classnames('cs-map-popup-cluster')}>\n <div className={classnames('cs-map-popup-cluster-header')}>\n 共 {features.length} 个点位\n <a onClick={onFitView}>缩放至</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={features}\n scroll={{ y: 120 }}\n columns={[\n {\n title: '名称',\n dataIndex: '名称',\n width: 60,\n render: (text, record) => {\n return (\n <a onClick={() => onFeatureClick(record)}>\n {record.values_[labelField]}\n </a>\n );\n },\n },\n {\n title: '操作',\n dataIndex: '操作',\n width: 30,\n render: (text, record) => {\n return <a onClick={() => onFeatureClick(record)}>定位</a>;\n },\n },\n ]}\n />\n </div>\n );\n};\n\nexport const handelGeometry = entity => {\n let geometry = entity?.data?.geometry;\n let type = geometry?.type;\n let coordinates = geometry?.coordinates;\n\n let midpoint = entity?.data; // 默认点\n let position = null;\n let offset = {\n x: 0,\n y: 20,\n };\n\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\n let point1 = null;\n let point2 = null;\n // 线\n if (coordinates.length > 1) {\n point1 = point(coordinates[0]);\n point2 = point(coordinates[1]);\n } else {\n let lngLatArr = coordinates[0];\n point1 = point(lngLatArr[0]);\n point2 = point(lngLatArr[1]);\n }\n midpoint = Midpoint(point1, point2);\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\n // 兼容polygon首尾坐标不一致情况\n coordinates = coordinates?.map(item => {\n console.log(item[0][0], item[item.length - 1][0]);\n if (\n item[0][0] !== item[item.length - 1][0] ||\n item[0][1] !== item[item.length - 1][1]\n ) {\n return [...item, item[0]];\n }\n return item;\n });\n // 面\n // 注意:polygon首尾坐标要一致\n let polygon = Polygon(coordinates);\n midpoint = centerOfMass(polygon);\n } else if (['Point'].includes(type)) {\n offset = {\n x: 5,\n y: 20,\n };\n }\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n\n return {\n position,\n geometryType: type,\n _offset: offset,\n };\n};\n\nconst Popup = forwardRef((props, ref) => {\n const { map } = props;\n\n const [content, setContent] = useState(null);\n const [title, setTitle] = useState(null);\n const popupRef = useRef();\n\n const featureRef = useRef();\n const infoToolRef = useRef(new InfoTool({ map }));\n const viewRef = useRef();\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n const showTemplate = (feature, highlightLayer) => {\n // 判断是否为聚合点击\n if (feature && feature.length >= 2) {\n const points = [];\n const features = feature.map(f => {\n let properties = map.getProperties(f);\n\n points.push(TurfPoint(f.geometry));\n return {\n feature: f,\n geometryInfo: properties?.geometryInfo || {\n type: 'point',\n lngLats: f.geometry.join(','),\n coordType: 'wgs84',\n },\n values_: properties,\n properties: properties,\n };\n });\n\n const center = TureCenterOfMass(TurfFeatureCollection(points));\n let { position } = handelGeometry({\n data: center,\n });\n\n let layer = map.getLayerByFeature(feature[0]);\n infoToolRef.current.add({\n position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset: {\n x: 0,\n y: 50,\n },\n });\n\n setTitle(<ClusterTitle layer={layer}/>);\n\n // 判断是否有自定义聚合列表模版\n let Template = layer?._options?.cluster?.template || Cluster;\n setContent(\n <Template\n layer={layer}\n features={features}\n onFitView={() => {\n map.fitView({data: features});\n hideTemplate();\n }}\n onFeatureClick={f => {\n showTemplate(f.feature, highlightLayer);\n }}\n />,\n );\n return;\n }\n\n\n let position = feature?._position?._value;\n // 偏移量\n let offset = {\n x: 5,\n y: 76,\n };\n\n let height = 5000;\n if (feature instanceof PolygonGeo || feature?._polygon) {\n let coordinates = [\n (feature?._polygon?._hierarchy?._value?.positions || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat];\n }),\n ];\n let { position: _position, _offset } = handelGeometry({\n data: { geometry: { type: 'Polygon', coordinates } },\n });\n position = _position;\n offset = _offset;\n height = null;\n } else if (feature instanceof PolylineGeo || feature?._polyline) {\n let coordinates = (feature?._polyline?._positions?._value || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat];\n });\n let { position: _position, _offset } = handelGeometry({\n data: { geometry: { type: 'LineString', coordinates } },\n });\n position = _position;\n offset = _offset;\n height = null;\n }\n\n if (feature.primitive) {\n offset = {\n x: 0,\n y: 20,\n };\n const geometry = transformGeometry(properties.geometryInfo);\n const [point1, point2] = geometry.coordinates[0];\n const midpoint = Midpoint(point1, point2);\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n }\n\n // 影像图层的数据\n if (feature instanceof ImageryLayerFeatureInfo || feature?.data?.geometry?.coordinates) {\n let {position: _position, _offset} = handelGeometry(feature);\n position = _position;\n offset = _offset;\n }\n\n let properties = map.getProperties(feature);\n feature.values_ = properties;\n featureRef.current = feature;\n\n let layer = map.getLayerByFeature(feature);\n if (layer?.template) {\n let template = layer.template;\n let labelField = layer.labelField;\n\n setTitle(labelField && properties[labelField]);\n setContent(feature && template(feature));\n\n infoToolRef.current.add({\n position: position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset,\n });\n\n map.popupRef = feature;\n }\n\n if (!viewRef.current && map.autoView) {\n getView();\n }\n\n highlightLayer = highlightLayer || map.highlightLayer;\n highlightLayer.addHighlightFeature(feature);\n if (highlightLayer?.layer && map.autoView) {\n map.fitView({ entity: highlightLayer.layer, height });\n }\n };\n\n const hideTemplate = _layer => {\n if (_layer) {\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\n\n if (layer && layer.key && map.popupRef) {\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\n if (_highlightLayer.key === layer.key) {\n onClose();\n }\n }\n } else {\n onClose();\n }\n };\n\n // 判断点位异常-点位异常展示红色\n function judgeAbnormal() {\n const { status } = map.getProperties(featureRef.current) || {};\n\n return status && [1, 2, 4].includes(status);\n }\n\n // 关闭气泡\n const onClose = () => {\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\n map.popupRef = null;\n featureRef.current = null;\n infoToolRef?.current?.remove();\n\n if (map.entities.getById('highlight-1')) {\n map.entities.remove(map.entities.getById('highlight-1'));\n }\n\n // 清除高亮\n // highlightLayer.current.clearFeatures();\n\n // map.fitView();\n\n if (map.autoView) {\n setView();\n }\n };\n\n const getView = () => {\n //获取当前视角的pitch\n let pitch = map.camera.pitch;\n //获取当前视角的heading\n let heading = map.camera.heading;\n //获取当前视角的postion(位置)\n let position = map.camera.position;\n\n viewRef.current = {\n x: position.x,\n y: position.y,\n z: position.z,\n pitch: pitch,\n heading: heading,\n };\n };\n\n const setView = () => {\n if (viewRef.current) {\n map.camera.flyTo({\n //定位到范围中心点\n destination: {\n x: viewRef.current.x,\n y: viewRef.current.y,\n z: viewRef.current.z,\n },\n orientation: {\n heading: viewRef.current.heading, //左右方向\n pitch: viewRef.current.pitch, //上下方向\n roll: 0.0,\n },\n duration: 2,\n });\n\n viewRef.current = null;\n }\n };\n return (\n <div\n ref={popupRef}\n className={classnames('cesium-popup', { 'cesium-popup-abnormal': judgeAbnormal() })}\n >\n <CloseOutlined\n className={classnames('cesium-popup-close')}\n width={16}\n height={16}\n onClick={onClose}\n />\n <div className={classnames('cesium-popup-title', { 'cesium-popup-no-title': !title })}>\n {title}\n </div>\n <div className={classnames('cesium-popup-content')} id=\"content\">\n {content}\n </div>\n </div>\n );\n});\n\nexport default Popup;\n"],"mappings":"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"}
|
|
@@ -162,6 +162,9 @@ function _default(props) {
|
|
|
162
162
|
};
|
|
163
163
|
var onClear = function onClear() {
|
|
164
164
|
var _itemRef$current;
|
|
165
|
+
if (value) {
|
|
166
|
+
map.hideTemplate();
|
|
167
|
+
}
|
|
165
168
|
((_itemRef$current = itemRef.current) === null || _itemRef$current === void 0 ? void 0 : _itemRef$current.onVisibleChange) && itemRef.current.onVisibleChange(false);
|
|
166
169
|
setValue('');
|
|
167
170
|
setOptions([]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_cesium","_Select","_interopRequireDefault","_icons","_toolsItem","_useProps2","_HighlightLayer","_classnames","_excluded","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","isArray","_objectDestructuringEmpty","_extends","assign","bind","target","arguments","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","CloseBtn","_ref","style","onClick","createElement","CloseOutlined","className","classnames","Content","props","options","placeholder","onClear","otherProps","useEffect","AutoComplete","width","allowClear","dropdownClassName","autoFocus","marginLeft","OPTIONS","label","MODE","_default","_OPTIONS$","_useProps","useProps","map","defaultType","_props$mode","mode","time","useRef","_useState","useState","_useState2","setOptions","_useState3","_useState4","setValue","_useState5","_useState6","type","setType","itemRef","highlightLayer","current","HighlightLayer","onSearch","searchText","clearTimeout","setTimeout","getMapFeatureInfoByText","then","res","onChange","_value","onSelect","lngLat","_e$lngLat","longitude","latitude","camera","flyTo","destination","Cartesian3","fromDegrees","orientation","pitch","Math","toRadians","roll","duration","feature","showTemplate","_itemRef$current","onVisibleChange","onTypeChange","content","size","ref","destroyTooltipOnHide","hideCloseBtn","SearchOutlined"],"sources":["tools/map-search/index.js"],"sourcesContent":["import React, { useEffect, useState, useRef } from 'react';\nimport { AutoComplete } from 'antd';\nimport { Cartesian3, Math } from 'cesium';\nimport Select from './Select';\nimport { CloseOutlined, SearchOutlined } from '@ant-design/icons';\nimport ItemWrap from '../tools-item';\nimport useProps from '../../_util/useProps';\nimport HighlightLayer from '../../highlight-layer/HighlightLayer';\nimport classnames from 'classnames';\n\n/**\n * @description: 关闭按钮\n * @return {JSX.Element}\n */\nexport function CloseBtn({ style, onClick }) {\n return (\n <CloseOutlined\n className={classnames('cs-close-btn')}\n onClick={() => {\n onClick && onClick();\n }}\n style={style}\n />\n );\n}\n\nconst Content = props => {\n const { options, placeholder, onClear, ...otherProps } = props;\n\n useEffect(() => {\n return () => {\n onClear && onClear();\n };\n }, []);\n\n return (\n <div className={classnames('cs-autoComplete')}>\n <AutoComplete\n placeholder={placeholder || '请输入'}\n options={options}\n style={{ width: 160 }}\n allowClear={false}\n dropdownClassName={classnames('cs-search-wrap')}\n autoFocus\n {...otherProps}\n />\n <CloseBtn style={{marginLeft: '10px'}} onClick={onClear}/>\n </div>\n );\n};\n\nconst OPTIONS = [\n {value: 'layer', label: '地图要素'},\n {value: 'address', label: '兴趣点位'},\n];\n\nconst MODE = 'select'; // 单个 single | 可选 select\n\nexport default function (props) {\n const {} = props;\n\n const {map} = useProps();\n\n const {placeholder, defaultType, mode = MODE} = props;\n const time = useRef(null);\n const [options, setOptions] = useState([]);\n const [value, setValue] = useState('');\n const [type, setType] = useState(defaultType || OPTIONS[0]?.value);\n\n const itemRef = useRef();\n const highlightLayer = useRef();\n\n useEffect(() => {\n highlightLayer.current = new HighlightLayer({ map });\n return () => {\n onClear();\n };\n }, []);\n\n // 地址查询\n const onSearch = searchText => {\n if (time.current) {\n clearTimeout(time.current);\n }\n\n if (searchText && map) {\n time.current = setTimeout(() => {\n map.getMapFeatureInfoByText &&\n map.getMapFeatureInfoByText({ type, searchText }).then(res => {\n if (res?.length) {\n setOptions(res);\n }\n });\n }, 500);\n } else {\n setOptions([]);\n }\n };\n\n const onChange = _value => {\n setValue(_value);\n };\n\n const onSelect = (_value, e) => {\n if (!map) return;\n if (type === 'address') {\n if (e.lngLat) {\n let [longitude, latitude] = e.lngLat;\n map.camera.flyTo({\n destination: Cartesian3.fromDegrees(longitude, latitude, 1000.0),\n orientation: {\n pitch: Math.toRadians(-88.0),\n roll: 0.0,\n },\n duration: 2,\n });\n }\n } else if (type === 'layer') {\n if (e.feature) {\n map.showTemplate(e.feature);\n }\n }\n setValue(e.label);\n };\n\n const onClear = () => {\n itemRef.current?.onVisibleChange && itemRef.current.onVisibleChange(false);\n setValue('');\n setOptions([]);\n };\n\n const onTypeChange = (value) => {\n setType(value);\n setValue('');\n setOptions([]);\n }\n\n const content = () => (\n <div className={classnames('cs-content')}>\n {mode === 'select' &&\n <Select\n options={OPTIONS}\n style={{width: '80px'}}\n size=\"big\"\n onSelect={onTypeChange}\n value={type}\n />\n }\n\n <Content\n placeholder={placeholder}\n value={value}\n options={options}\n onSearch={onSearch}\n onChange={onChange}\n onSelect={onSelect}\n onClear={onClear}\n />\n </div>\n );\n return (\n <ItemWrap content={content} ref={itemRef} destroyTooltipOnHide hideCloseBtn={true}>\n <SearchOutlined />\n </ItemWrap>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_cesium","_Select","_interopRequireDefault","_icons","_toolsItem","_useProps2","_HighlightLayer","_classnames","_excluded","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","isArray","_objectDestructuringEmpty","_extends","assign","bind","target","arguments","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","CloseBtn","_ref","style","onClick","createElement","CloseOutlined","className","classnames","Content","props","options","placeholder","onClear","otherProps","useEffect","AutoComplete","width","allowClear","dropdownClassName","autoFocus","marginLeft","OPTIONS","label","MODE","_default","_OPTIONS$","_useProps","useProps","map","defaultType","_props$mode","mode","time","useRef","_useState","useState","_useState2","setOptions","_useState3","_useState4","setValue","_useState5","_useState6","type","setType","itemRef","highlightLayer","current","HighlightLayer","onSearch","searchText","clearTimeout","setTimeout","getMapFeatureInfoByText","then","res","onChange","_value","onSelect","lngLat","_e$lngLat","longitude","latitude","camera","flyTo","destination","Cartesian3","fromDegrees","orientation","pitch","Math","toRadians","roll","duration","feature","showTemplate","_itemRef$current","hideTemplate","onVisibleChange","onTypeChange","content","size","ref","destroyTooltipOnHide","hideCloseBtn","SearchOutlined"],"sources":["tools/map-search/index.js"],"sourcesContent":["import React, { useEffect, useState, useRef } from 'react';\nimport { AutoComplete } from 'antd';\nimport { Cartesian3, Math } from 'cesium';\nimport Select from './Select';\nimport { CloseOutlined, SearchOutlined } from '@ant-design/icons';\nimport ItemWrap from '../tools-item';\nimport useProps from '../../_util/useProps';\nimport HighlightLayer from '../../highlight-layer/HighlightLayer';\nimport classnames from 'classnames';\n\n/**\n * @description: 关闭按钮\n * @return {JSX.Element}\n */\nexport function CloseBtn({ style, onClick }) {\n return (\n <CloseOutlined\n className={classnames('cs-close-btn')}\n onClick={() => {\n onClick && onClick();\n }}\n style={style}\n />\n );\n}\n\nconst Content = props => {\n const { options, placeholder, onClear, ...otherProps } = props;\n\n useEffect(() => {\n return () => {\n onClear && onClear();\n };\n }, []);\n\n return (\n <div className={classnames('cs-autoComplete')}>\n <AutoComplete\n placeholder={placeholder || '请输入'}\n options={options}\n style={{ width: 160 }}\n allowClear={false}\n dropdownClassName={classnames('cs-search-wrap')}\n autoFocus\n {...otherProps}\n />\n <CloseBtn style={{marginLeft: '10px'}} onClick={onClear}/>\n </div>\n );\n};\n\nconst OPTIONS = [\n {value: 'layer', label: '地图要素'},\n {value: 'address', label: '兴趣点位'},\n];\n\nconst MODE = 'select'; // 单个 single | 可选 select\n\nexport default function (props) {\n const {} = props;\n\n const {map} = useProps();\n\n const {placeholder, defaultType, mode = MODE} = props;\n const time = useRef(null);\n const [options, setOptions] = useState([]);\n const [value, setValue] = useState('');\n const [type, setType] = useState(defaultType || OPTIONS[0]?.value);\n\n const itemRef = useRef();\n const highlightLayer = useRef();\n\n useEffect(() => {\n highlightLayer.current = new HighlightLayer({ map });\n return () => {\n onClear();\n };\n }, []);\n\n // 地址查询\n const onSearch = searchText => {\n if (time.current) {\n clearTimeout(time.current);\n }\n\n if (searchText && map) {\n time.current = setTimeout(() => {\n map.getMapFeatureInfoByText &&\n map.getMapFeatureInfoByText({ type, searchText }).then(res => {\n if (res?.length) {\n setOptions(res);\n }\n });\n }, 500);\n } else {\n setOptions([]);\n }\n };\n\n const onChange = _value => {\n setValue(_value);\n };\n\n const onSelect = (_value, e) => {\n if (!map) return;\n if (type === 'address') {\n if (e.lngLat) {\n let [longitude, latitude] = e.lngLat;\n map.camera.flyTo({\n destination: Cartesian3.fromDegrees(longitude, latitude, 1000.0),\n orientation: {\n pitch: Math.toRadians(-88.0),\n roll: 0.0,\n },\n duration: 2,\n });\n }\n } else if (type === 'layer') {\n if (e.feature) {\n map.showTemplate(e.feature);\n }\n }\n setValue(e.label);\n };\n\n const onClear = () => {\n if (value) {\n map.hideTemplate();\n }\n\n itemRef.current?.onVisibleChange && itemRef.current.onVisibleChange(false);\n setValue('');\n setOptions([]);\n };\n\n const onTypeChange = (value) => {\n setType(value);\n setValue('');\n setOptions([]);\n }\n\n const content = () => (\n <div className={classnames('cs-content')}>\n {mode === 'select' &&\n <Select\n options={OPTIONS}\n style={{width: '80px'}}\n size=\"big\"\n onSelect={onTypeChange}\n value={type}\n />\n }\n\n <Content\n placeholder={placeholder}\n value={value}\n options={options}\n onSearch={onSearch}\n onChange={onChange}\n onSelect={onSelect}\n onClear={onClear}\n />\n </div>\n );\n return (\n <ItemWrap content={content} ref={itemRef} destroyTooltipOnHide hideCloseBtn={true}>\n <SearchOutlined />\n </ItemWrap>\n );\n}\n"],"mappings":"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"}
|