@vtx/ol-map 1.0.118 → 1.0.120
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/_util/EventEmitter.js +10 -9
- package/lib/_util/EventEmitter.js.map +1 -1
- package/lib/_util/StyleCache.js +7 -6
- package/lib/_util/StyleCache.js.map +1 -1
- package/lib/_util/encryptParams.js +1 -1
- package/lib/_util/encryptParams.js.map +1 -1
- package/lib/_util/filterSpecialCharacters.js +6 -6
- package/lib/_util/filterSpecialCharacters.js.map +1 -1
- package/lib/_util/getComponentProps.js.map +1 -1
- package/lib/_util/getCookie.js.map +1 -1
- package/lib/_util/getDefaultMapInfo.js +3 -3
- package/lib/_util/getDefaultMapInfo.js.map +1 -1
- package/lib/_util/getSystemInfo.js +3 -3
- package/lib/_util/getSystemInfo.js.map +1 -1
- package/lib/_util/getToken.js.map +1 -1
- package/lib/_util/getUrlParam.js +1 -1
- package/lib/_util/getUrlParam.js.map +1 -1
- package/lib/_util/http.js +9 -8
- package/lib/_util/http.js.map +1 -1
- package/lib/_util/isFunction.js.map +1 -1
- package/lib/_util/isObject.js.map +1 -1
- package/lib/_util/layer.js +4 -4
- package/lib/_util/layer.js.map +1 -1
- package/lib/_util/mapTool.js.map +1 -1
- package/lib/_util/projzh/datum/bd-09.js +1 -1
- package/lib/_util/projzh/datum/bd-09.js.map +1 -1
- package/lib/_util/projzh/datum/gcj-02.js.map +1 -1
- package/lib/_util/projzh/datum/index.js +1 -1
- package/lib/_util/projzh/datum/index.js.map +1 -1
- package/lib/_util/projzh/index.js +1 -1
- package/lib/_util/projzh/index.js.map +1 -1
- package/lib/_util/projzh/projection/baidu-mercator.js.map +1 -1
- package/lib/_util/projzh/projection/index.js +1 -1
- package/lib/_util/projzh/projection/index.js.map +1 -1
- package/lib/_util/projzh/projection/spherical-mercator.js.map +1 -1
- package/lib/_util/projzh/util.js.map +1 -1
- package/lib/_util/search.js +7 -6
- package/lib/_util/search.js.map +1 -1
- package/lib/_util/setCookie.js.map +1 -1
- package/lib/_util/stringToFun.js +4 -4
- package/lib/_util/stringToFun.js.map +1 -1
- package/lib/_util/transform.js +5 -5
- package/lib/_util/transform.js.map +1 -1
- package/lib/_util/useColSize.js +1 -1
- package/lib/_util/useColSize.js.map +1 -1
- package/lib/_util/useInterval.js.map +1 -1
- package/lib/_util/useSet.js +7 -7
- package/lib/_util/useSet.js.map +1 -1
- package/lib/analysis-layer/index.js +14 -13
- package/lib/analysis-layer/index.js.map +1 -1
- package/lib/analysis-layer/style/css.js.map +1 -1
- package/lib/analysis-layer/style/index.js.map +1 -1
- package/lib/assets/kz.png +0 -0
- package/lib/buffer-draw/BufferDraw.js +43 -29
- package/lib/buffer-draw/BufferDraw.js.map +1 -1
- package/lib/buffer-draw/index.js +2 -2
- package/lib/buffer-draw/index.js.map +1 -1
- package/lib/buffer-draw/style/css.js.map +1 -1
- package/lib/buffer-draw/style/index.js.map +1 -1
- package/lib/circle/Circle.js +19 -18
- package/lib/circle/Circle.js.map +1 -1
- package/lib/circle/index.js +2 -2
- package/lib/circle/index.js.map +1 -1
- package/lib/circle/style/css.js.map +1 -1
- package/lib/circle/style/index.js.map +1 -1
- package/lib/config.js.map +1 -1
- package/lib/convertCamelToCSS.js.map +1 -1
- package/lib/dom/Dom.js +15 -14
- package/lib/dom/Dom.js.map +1 -1
- package/lib/dom/index.js +7 -7
- package/lib/dom/index.js.map +1 -1
- package/lib/dom/style/css.js.map +1 -1
- package/lib/dom/style/index.js.map +1 -1
- package/lib/events/index.js.map +1 -1
- package/lib/feature-draw/FeatureDraw.js +35 -31
- package/lib/feature-draw/FeatureDraw.js.map +1 -1
- package/lib/feature-draw/index.js +4 -4
- package/lib/feature-draw/index.js.map +1 -1
- package/lib/feature-draw/style/css.js.map +1 -1
- package/lib/feature-draw/style/index.js.map +1 -1
- package/lib/feature-layer/FeatureLayer.js +36 -36
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/feature-layer/MyCluster.js +18 -16
- package/lib/feature-layer/MyCluster.js.map +1 -1
- package/lib/feature-layer/createFeatureCollection.js +22 -22
- package/lib/feature-layer/createFeatureCollection.js.map +1 -1
- package/lib/feature-layer/index.js +11 -11
- package/lib/feature-layer/index.js.map +1 -1
- package/lib/feature-layer/style/css.js.map +1 -1
- package/lib/feature-layer/style/index.js.map +1 -1
- package/lib/flow-line-layer/FlowLineLayer.js +20 -18
- package/lib/flow-line-layer/FlowLineLayer.js.map +1 -1
- package/lib/flow-line-layer/index.js +11 -11
- package/lib/flow-line-layer/index.js.map +1 -1
- package/lib/flow-line-layer/style/css.js.map +1 -1
- package/lib/flow-line-layer/style/index.js.map +1 -1
- package/lib/fly-line-layer/FlyLineLayer.js +13 -13
- package/lib/fly-line-layer/FlyLineLayer.js.map +1 -1
- package/lib/fly-line-layer/index.js +6 -6
- package/lib/fly-line-layer/index.js.map +1 -1
- package/lib/fly-line-layer/style/css.js.map +1 -1
- package/lib/fly-line-layer/style/index.js.map +1 -1
- package/lib/group-layer/GroupLayer.js +9 -8
- package/lib/group-layer/GroupLayer.js.map +1 -1
- package/lib/group-layer/index.js +6 -6
- package/lib/group-layer/index.js.map +1 -1
- package/lib/group-layer/style/css.js.map +1 -1
- package/lib/group-layer/style/index.js.map +1 -1
- package/lib/heatmap-layer/HeatmapLayer.js +25 -25
- package/lib/heatmap-layer/HeatmapLayer.js.map +1 -1
- package/lib/heatmap-layer/index.js +6 -6
- package/lib/heatmap-layer/index.js.map +1 -1
- package/lib/heatmap-layer/style/css.js.map +1 -1
- package/lib/heatmap-layer/style/index.js.map +1 -1
- package/lib/high-layer/HighLayer.js +10 -9
- package/lib/high-layer/HighLayer.js.map +1 -1
- package/lib/high-layer/index.js +7 -7
- package/lib/high-layer/index.js.map +1 -1
- package/lib/high-layer/style/css.js.map +1 -1
- package/lib/high-layer/style/index.js.map +1 -1
- package/lib/image-layer/ImageLayer.js +26 -26
- package/lib/image-layer/ImageLayer.js.map +1 -1
- package/lib/image-layer/index.js +7 -7
- package/lib/image-layer/index.js.map +1 -1
- package/lib/image-layer/style/css.js.map +1 -1
- package/lib/image-layer/style/index.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/legend/index.js +14 -14
- package/lib/legend/index.js.map +1 -1
- package/lib/legend/style/css.js.map +1 -1
- package/lib/legend/style/index.js.map +1 -1
- package/lib/map/Analysis.js +24 -22
- package/lib/map/Analysis.js.map +1 -1
- package/lib/map/Layers.js +24 -21
- package/lib/map/Layers.js.map +1 -1
- package/lib/map/Popup.js +12 -12
- package/lib/map/Popup.js.map +1 -1
- package/lib/map/getBaseLayers/imagery/amap/AmapImageryProvider.js.map +1 -1
- package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js +1 -1
- package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js.map +1 -1
- package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js +5 -5
- package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js.map +1 -1
- package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js +4 -4
- package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js.map +1 -1
- package/lib/map/getBaseLayers/index.js +4 -4
- package/lib/map/getBaseLayers/index.js.map +1 -1
- package/lib/map/index.js +18 -18
- package/lib/map/index.js.map +1 -1
- package/lib/map/style/css.js.map +1 -1
- package/lib/map/style/index.js.map +1 -1
- package/lib/map-icon/svg/index.js +1 -1
- package/lib/map-icon/svg/index.js.map +1 -1
- package/lib/map-icon/svg/tuceng.svg.js.map +1 -1
- package/lib/marker/Marker.js +17 -16
- package/lib/marker/Marker.js.map +1 -1
- package/lib/marker/index.js +2 -2
- package/lib/marker/index.js.map +1 -1
- package/lib/marker/style/css.js.map +1 -1
- package/lib/marker/style/index.js.map +1 -1
- package/lib/path-line-layer/PathLineLayer.js +18 -17
- package/lib/path-line-layer/PathLineLayer.js.map +1 -1
- package/lib/path-line-layer/getPathLineStyles.js +4 -4
- package/lib/path-line-layer/getPathLineStyles.js.map +1 -1
- package/lib/path-line-layer/index.js +11 -11
- package/lib/path-line-layer/index.js.map +1 -1
- package/lib/path-line-layer/style/css.js.map +1 -1
- package/lib/path-line-layer/style/index.js.map +1 -1
- package/lib/path-play-back/PathPlayBack.js +15 -14
- package/lib/path-play-back/PathPlayBack.js.map +1 -1
- package/lib/path-play-back/index.js +4 -4
- package/lib/path-play-back/index.js.map +1 -1
- package/lib/path-play-back/style/css.js.map +1 -1
- package/lib/path-play-back/style/index.js.map +1 -1
- package/lib/poi-search/Location.js +5 -5
- package/lib/poi-search/Location.js.map +1 -1
- package/lib/poi-search/PoiList.js +7 -7
- package/lib/poi-search/PoiList.js.map +1 -1
- package/lib/poi-search/Search.js +13 -13
- package/lib/poi-search/Search.js.map +1 -1
- package/lib/poi-search/index.js +6 -6
- package/lib/poi-search/index.js.map +1 -1
- package/lib/poi-search/style/css.js.map +1 -1
- package/lib/poi-search/style/index.js.map +1 -1
- package/lib/point/Point.js +19 -18
- package/lib/point/Point.js.map +1 -1
- package/lib/point/index.js +2 -2
- package/lib/point/index.js.map +1 -1
- package/lib/point/style/css.js.map +1 -1
- package/lib/point/style/index.js.map +1 -1
- package/lib/polygon/Polygon.js +19 -18
- package/lib/polygon/Polygon.js.map +1 -1
- package/lib/polygon/index.js +2 -2
- package/lib/polygon/index.js.map +1 -1
- package/lib/polygon/style/css.js.map +1 -1
- package/lib/polygon/style/index.js.map +1 -1
- package/lib/polyline/Polyline.js +19 -18
- package/lib/polyline/Polyline.js.map +1 -1
- package/lib/polyline/index.js +2 -2
- package/lib/polyline/index.js.map +1 -1
- package/lib/polyline/style/css.js.map +1 -1
- package/lib/polyline/style/index.js.map +1 -1
- package/lib/popup/index.js +10 -10
- package/lib/popup/index.js.map +1 -1
- package/lib/popup/style/css.js.map +1 -1
- package/lib/popup/style/index.js.map +1 -1
- package/lib/provider/index.js +1 -1
- package/lib/provider/index.js.map +1 -1
- package/lib/provider/style/css.js.map +1 -1
- package/lib/provider/style/index.js.map +1 -1
- package/lib/renderer/Fill.js +16 -15
- package/lib/renderer/Fill.js.map +1 -1
- package/lib/renderer/Stroke.js +16 -15
- package/lib/renderer/Stroke.js.map +1 -1
- package/lib/renderer/index.js +7 -7
- package/lib/renderer/index.js.map +1 -1
- package/lib/renderer/style/css.js.map +1 -1
- package/lib/renderer/style/index.js.map +1 -1
- package/lib/renderer/transformRgb.js.map +1 -1
- package/lib/search-map/VtxModal.js +20 -18
- package/lib/search-map/VtxModal.js.map +1 -1
- package/lib/search-map/index.js +6 -6
- package/lib/search-map/index.js.map +1 -1
- package/lib/search-map/style/css.js.map +1 -1
- package/lib/search-map/style/index.js.map +1 -1
- package/lib/tile-layer/TileLayer.js +17 -16
- package/lib/tile-layer/TileLayer.js.map +1 -1
- package/lib/tile-layer/index.js +2 -2
- package/lib/tile-layer/index.js.map +1 -1
- package/lib/tile-layer/style/css.js.map +1 -1
- package/lib/tile-layer/style/index.js.map +1 -1
- package/lib/tools/Layer/LayerService.js +4 -4
- package/lib/tools/Layer/LayerService.js.map +1 -1
- package/lib/tools/Layer/LayersCheckService.js +28 -27
- package/lib/tools/Layer/LayersCheckService.js.map +1 -1
- package/lib/tools/Layer/index.js +12 -12
- package/lib/tools/Layer/index.js.map +1 -1
- package/lib/tools/Search/index.js +7 -6
- package/lib/tools/Search/index.js.map +1 -1
- package/lib/tools/Toolbox/BoxSelect/index.js +4 -4
- package/lib/tools/Toolbox/BoxSelect/index.js.map +1 -1
- package/lib/tools/Toolbox/CircleSelect/index.js +4 -4
- package/lib/tools/Toolbox/CircleSelect/index.js.map +1 -1
- package/lib/tools/Toolbox/EagleEye/index.js +6 -6
- package/lib/tools/Toolbox/EagleEye/index.js.map +1 -1
- package/lib/tools/Toolbox/MapBookmark/Bookmark.js +29 -27
- package/lib/tools/Toolbox/MapBookmark/Bookmark.js.map +1 -1
- package/lib/tools/Toolbox/MapBookmark/index.js +11 -11
- package/lib/tools/Toolbox/MapBookmark/index.js.map +1 -1
- package/lib/tools/Toolbox/MapDownload/index.js +2 -2
- package/lib/tools/Toolbox/MapDownload/index.js.map +1 -1
- package/lib/tools/Toolbox/MapPrint/index.js +14 -12
- package/lib/tools/Toolbox/MapPrint/index.js.map +1 -1
- package/lib/tools/Toolbox/Measure/Area/index.js +2 -2
- package/lib/tools/Toolbox/Measure/Area/index.js.map +1 -1
- package/lib/tools/Toolbox/Measure/Distance/index.js +2 -2
- package/lib/tools/Toolbox/Measure/Distance/index.js.map +1 -1
- package/lib/tools/Toolbox/Measure/Measure.js +7 -6
- package/lib/tools/Toolbox/Measure/Measure.js.map +1 -1
- package/lib/tools/Toolbox/Measure/index.js +9 -9
- package/lib/tools/Toolbox/Measure/index.js.map +1 -1
- package/lib/tools/Toolbox/PolygonSelect/index.js +4 -4
- package/lib/tools/Toolbox/PolygonSelect/index.js.map +1 -1
- package/lib/tools/Toolbox/ScaleLine/index.js +6 -6
- package/lib/tools/Toolbox/ScaleLine/index.js.map +1 -1
- package/lib/tools/Toolbox/SelectTools/index.js +18 -17
- package/lib/tools/Toolbox/SelectTools/index.js.map +1 -1
- package/lib/tools/Toolbox/SpaceQuery/index.js +9 -9
- package/lib/tools/Toolbox/SpaceQuery/index.js.map +1 -1
- package/lib/tools/Toolbox/ZoomInput/index.js +6 -6
- package/lib/tools/Toolbox/ZoomInput/index.js.map +1 -1
- package/lib/tools/Toolbox/index.js +2 -2
- package/lib/tools/Toolbox/index.js.map +1 -1
- package/lib/tools/Utils/CreateOverlay.js +8 -8
- package/lib/tools/Utils/CreateOverlay.js.map +1 -1
- package/lib/tools/Utils/Draw.js +8 -7
- package/lib/tools/Utils/Draw.js.map +1 -1
- package/lib/tools/Utils/HighLayer.js +11 -10
- package/lib/tools/Utils/HighLayer.js.map +1 -1
- package/lib/tools/Utils/measure.js +5 -5
- package/lib/tools/Utils/measure.js.map +1 -1
- package/lib/tools/Utils/utils.js +10 -9
- package/lib/tools/Utils/utils.js.map +1 -1
- package/lib/tools/View/index.js +9 -9
- package/lib/tools/View/index.js.map +1 -1
- package/lib/tools/analysis-tool/index.js +12 -12
- package/lib/tools/analysis-tool/index.js.map +1 -1
- package/lib/tools/base-map-switch/index.js +10 -9
- package/lib/tools/base-map-switch/index.js.map +1 -1
- package/lib/tools/components/Chart/index.js +17 -15
- package/lib/tools/components/Chart/index.js.map +1 -1
- package/lib/tools/components/Icon/index.js +1 -1
- package/lib/tools/components/Icon/index.js.map +1 -1
- package/lib/tools/components/Info/index.js +1 -1
- package/lib/tools/components/Info/index.js.map +1 -1
- package/lib/tools/components/ItemWrap/index.js +6 -6
- package/lib/tools/components/ItemWrap/index.js.map +1 -1
- package/lib/tools/components/Modal/index.js +6 -6
- package/lib/tools/components/Modal/index.js.map +1 -1
- package/lib/tools/components/MyTabs/index.js +1 -1
- package/lib/tools/components/MyTabs/index.js.map +1 -1
- package/lib/tools/components/RequiredLabel/index.js +4 -4
- package/lib/tools/components/RequiredLabel/index.js.map +1 -1
- package/lib/tools/components/Select/index.js +1 -1
- package/lib/tools/components/Select/index.js.map +1 -1
- package/lib/tools/components/Table/index.js +15 -15
- package/lib/tools/components/Table/index.js.map +1 -1
- package/lib/tools/components/ToolItem/index.js +1 -1
- package/lib/tools/components/ToolItem/index.js.map +1 -1
- package/lib/tools/components/ToolsSelect/index.js +1 -1
- package/lib/tools/components/ToolsSelect/index.js.map +1 -1
- package/lib/tools/full-screen/index.js +7 -7
- package/lib/tools/full-screen/index.js.map +1 -1
- package/lib/tools/index.js +9 -8
- package/lib/tools/index.js.map +1 -1
- package/lib/tools/layer-control/index.js +16 -16
- package/lib/tools/layer-control/index.js.map +1 -1
- package/lib/tools/refresh/index.js +6 -6
- package/lib/tools/refresh/index.js.map +1 -1
- package/lib/tools/style/css.js.map +1 -1
- package/lib/tools/style/index.js.map +1 -1
- package/lib/tools-item/index.js +6 -6
- package/lib/tools-item/index.js.map +1 -1
- package/lib/use-props/index.js.map +1 -1
- package/lib/use-props/style/css.js.map +1 -1
- package/lib/use-props/style/index.js.map +1 -1
- package/package.json +119 -119
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_icons","_Table","_interopRequireDefault","_Modal","_layer","_layer2","_Polygon","_Draw","_useProps3","_classnames2","_ahooks","_ImageLayer","_turf","_Info","_Chart","e","__esModule","_getRequireWildcardCache","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_toPropertyKey","value","configurable","writable","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","slice","constructor","name","test","l","f","next","done","classPrefix","getFeatureIntersects","polygon","feature","_feature$getGeometry","_feature$getGeometry2","_feature$getGeometry3","_lngLat$","lngLat","getGeometry","getCoordinates","poly","TurfPolygon","pt","B","getType","map","v","TurfPoint","intersects","TurfBooleanPointInPolygon","_lngLat$2","item","LayerSelect","props","_list","_props$options","options","onChange","currentKey","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","active","setActive","time","useRef","useUpdateEffect","createElement","Fragment","showOpen","list","onClick","current","clearTimeout","setTimeout","className","classnames","concat","Space","size","wrap","index","key","label","Divider","style","margin","Button","icon","VerticalAlignTopOutlined","VerticalAlignBottomOutlined","type","TableView","dataSource","otherColumns","columns","info","_useProps","useProps","_useState5","_useState6","title","dataIndex","width","render","text","record","_map$getViewport","doc","document","getElementsByClassName","rect","getBoundingClientRect","parentRect","getViewport","left","showTemplate","fitViewOptions","padding","minHeight","rowKey","CaretUpOutlined","CaretDownOutlined","TYPE","TableOutlined","BarChartOutlined","LineChartOutlined","PieChartOutlined","ChartView","data","height","yAxis","show","legend","xAxis","field","unit","series","radius","center","position","formatter","PipeDataView","_TYPE$","_useState7","_useState8","setType","chartData","useMemo","ds","d","totalLength","reduce","prev","cur","Segmented","toFixed","DEVICE_STATUS_NAME","color","DeviceInfo","val","deviceValues","device","factorValues","factor","monitorItemName","formatValue","collectFrequency","dataVal","maxValue","Math","max","minValue","min","avgValue","DeviceDataView","_useState9","_useState10","setFilter","_DEVICE_STATUS_NAME$t","tableData","status","getTotal","_default","exports","onClose","drawType","renderTableActive","statistic","_useProps2","_useState11","_useState12","currentLayerKey","setCurrentLayerKey","_useState13","_useState14","setDataSource","_useState15","_useState16","loading","setLoading","_useState17","_useState18","layersOpts","setLayersOpts","_useState19","_useState20","setFeature","draw","useEffect","JSON","stringify","layersChange","getOptions","layers","on","un","Draw","zIndex","destroy","hideTemplate","_opts$","opts","getAllLayers","viewOnly","layerControl","_key","layer","getLayerByKey","_feature$getGeometry4","geometry","Image","getWmsData","Vector","getWfsData","message","extent","getExtent","source","getSource","features","getFeatureInfo","listKeys","getKeys","labelField","NAME","forEachFeatureIntersectingExtent","featureList","addTableData","polygonGeometry","fromCircle","featureIntersects","setHighlightFeature","_layer$group","_filter","group","getFilter","coorStr","coordinates","getWFSFeatureInfoByLayer","then","line_length","lineLength","isDeviceLayer","_layer$params","_layer$url","deviceTypeId","params","url","indexOf","Boolean","isPipeLineLayer","toUpperCase","Spin","spinning"],"sources":["tools/Toolbox/SelectTools/index.js"],"sourcesContent":["/*\r\n * @Description:框选、圈选、多边形选择\r\n */\r\nimport React, {useEffect, useRef, useState, useMemo} from 'react';\r\nimport {message, Space, Divider, Button, Spin, Segmented} from 'antd';\r\nimport {CaretUpOutlined, CaretDownOutlined, TableOutlined, PieChartOutlined, BarChartOutlined, LineChartOutlined} from '@ant-design/icons';\r\nimport Table from '../../components/Table';\r\nimport Modal from '../../components/Modal';\r\nimport {getWFSFeatureInfoByLayer} from '../../../_util/layer';\r\nimport {Image, Vector} from 'ol/layer';\r\nimport {fromCircle} from 'ol/geom/Polygon';\r\nimport Draw from '../../Utils/Draw';\r\nimport './index.less';\r\nimport useProps from '../../../use-props';\r\nimport classnames from 'classnames';\r\nimport {useUpdateEffect} from 'ahooks';\r\nimport {VerticalAlignBottomOutlined, VerticalAlignTopOutlined} from '@ant-design/icons';\r\nimport {getFilter} from '../../../image-layer/ImageLayer';\r\nimport {\r\n booleanPointInPolygon as TurfBooleanPointInPolygon,\r\n point as TurfPoint,\r\n polygon as TurfPolygon,\r\n} from '@turf/turf';\r\nimport Info from '../../components/Info';\r\nimport Chart from '../../components/Chart';\r\n\r\nconst classPrefix = 'selectTools';\r\n\r\nconst getFeatureIntersects = (polygon, feature) => {\r\n let lngLat = feature?.getGeometry()?.getCoordinates();\r\n const poly = TurfPolygon(polygon.getCoordinates());\r\n\r\n let pt;\r\n let B = false;\r\n\r\n if (feature?.getGeometry()?.getType() === 'Point') {\r\n lngLat.map(v => Number(v));\r\n pt = TurfPoint(lngLat);\r\n // 判断在点在多边形内\r\n if (poly && pt) {\r\n const intersects = TurfBooleanPointInPolygon(pt, poly);\r\n if (intersects) {\r\n B = true\r\n }\r\n }\r\n }\r\n\r\n if (feature?.getGeometry()?.getType() === 'Polygon' && lngLat?.[0]?.length) {\r\n lngLat?.[0].map(v => Number(v));\r\n lngLat?.[0]?.map(item => {\r\n pt = TurfPoint(item);\r\n if (poly && pt) {\r\n const intersects = TurfBooleanPointInPolygon(pt, poly);\r\n if (intersects) {\r\n B = true\r\n }\r\n }\r\n });\r\n }\r\n\r\n return B;\r\n};\r\n\r\nconst LayerSelect = props => {\r\n const {options = [], value, onChange, currentKey} = props;\r\n const [open, setOpen] = useState(false);\r\n const [active, setActive] = useState(value);\r\n const time = useRef();\r\n\r\n useUpdateEffect(() => {\r\n setActive(value);\r\n }, [value]);\r\n\r\n if (!options?.length) {\r\n return <></>;\r\n }\r\n const showOpen = options?.length > 9;\r\n\r\n let list = options;\r\n if (options?.length) {\r\n if (!open) {\r\n if (options.length > 9) {\r\n list = options.slice(0, 9);\r\n }\r\n } else {\r\n list = options;\r\n }\r\n }\r\n\r\n const onClick = value => {\r\n setActive(value);\r\n currentKey.current = value;\r\n\r\n if (time.current) {\r\n clearTimeout(time.current);\r\n }\r\n\r\n time.current = setTimeout(() => {\r\n onChange?.(value);\r\n }, 500);\r\n };\r\n\r\n return (\r\n <div\r\n className={classnames(`${classPrefix}-layer-select`, {\r\n 'selectTools-layer-select-scroll': open,\r\n })}\r\n >\r\n <Space size={[8, 8]} wrap>\r\n {list?.length > 0 &&\r\n list.map((item, index) => (\r\n <div\r\n key={index}\r\n className={classnames(`${classPrefix}-layer-select-item`, {\r\n [`${classPrefix}-layer-select-item-active`]: active === item.value,\r\n })}\r\n onClick={() => onClick(item.value)}\r\n >\r\n {item.label}\r\n </div>\r\n ))}\r\n </Space>\r\n\r\n {showOpen && (\r\n <Divider style={{margin: 0}}>\r\n <Button\r\n icon={open ? <VerticalAlignTopOutlined/> : <VerticalAlignBottomOutlined/>}\r\n onClick={() => setOpen(!open)}\r\n type=\"link\"\r\n >\r\n {open ? '收起' : '展开'}\r\n </Button>\r\n </Divider>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nconst TableView = (props) => {\r\n const {dataSource, columns: otherColumns, info} = props;\r\n const {map} = useProps();\r\n const [open, setOpen] = useState(true);\r\n\r\n const columns = [\r\n {\r\n title: '编码/名称',\r\n dataIndex: 'NAME',\r\n width: 180,\r\n render: (text, record) => {\r\n return (\r\n <a\r\n onClick={() => {\r\n let doc = document.getElementsByClassName('ol-map-tools')[0];\r\n let rect = doc?.getBoundingClientRect();\r\n let parentRect = map.getViewport()?.getBoundingClientRect();\r\n let left = 400;\r\n if (rect && parentRect) {\r\n left = rect?.left - parentRect?.left + 12 + 350 + 150;\r\n }\r\n map.showTemplate(record.feature, {\r\n fitViewOptions: {padding: [100, 400, 100, left]},\r\n });\r\n }}\r\n >\r\n {text}\r\n </a>\r\n );\r\n },\r\n },\r\n ...(otherColumns || [])\r\n ];\r\n\r\n return (\r\n <>\r\n <div style={{minHeight: 20}}>\r\n {open && (\r\n <>\r\n {info}\r\n <Table\r\n rowKey=\"code\"\r\n dataSource={dataSource}\r\n columns={columns}\r\n size=\"small\"\r\n />\r\n </>\r\n )}\r\n </div>\r\n\r\n {dataSource?.length > 0 && (\r\n <div className=\"ol-map-search-result-button\" onClick={() => setOpen(!open)}>\r\n {open ? '收起' : '展开'}\r\n {open ? <CaretUpOutlined/> : <CaretDownOutlined/>}\r\n </div>\r\n )}\r\n </>\r\n )\r\n}\r\n\r\nconst TYPE = [\r\n {label: '表格', value: 'table', icon: <TableOutlined/>},\r\n {label: '柱状图', value: 'bar', icon: <BarChartOutlined/>},\r\n {label: '折线图', value: 'line', icon: <LineChartOutlined/>},\r\n {label: '饼图', value: 'pie', icon: <PieChartOutlined/>},\r\n]\r\n\r\nconst ChartView = (props) => {\r\n const {type, data} = props;\r\n return (\r\n <Chart\r\n style={{height: 300}}\r\n yAxis={{\r\n show: type !== 'pie',\r\n name: \"条\"\r\n }}\r\n legend={{show: false}}\r\n xAxis={{\r\n show: type !== 'pie',\r\n field: 'name'\r\n }}\r\n unit=\"条\"\r\n series={[\r\n {\r\n type,\r\n name: '管线',\r\n radius: ['30%', '50%'],\r\n center: ['50%', '50%'],\r\n // data: data['供水量'] || [1000, 1200],\r\n ...(type === 'pie' ? {\r\n data,\r\n label: {\r\n show: true,\r\n position: 'outside',\r\n formatter: '{b}\\n{c}条'\r\n }\r\n } : {\r\n field: 'value',\r\n label: {\r\n show: true,\r\n position: 'top',\r\n formatter: '{c}条'\r\n }\r\n })\r\n },\r\n ]}\r\n data={data}\r\n />\r\n )\r\n}\r\nconst PipeDataView = (props) => {\r\n const {dataSource} = props;\r\n const [type, setType] = useState(TYPE[0]?.value);\r\n\r\n const chartData = useMemo(() => {\r\n const data = [\r\n {name: '50mm以下', value: 0, filter: item => item.ds < 50},\r\n {name: '50-100mm', value: 0, filter: item => (item.ds >= 50 && item.ds < 100)},\r\n {name: '100-300mm', value: 0, filter: item => (item.ds >= 100 && item.ds < 300)},\r\n {name: '300-600mm', value: 0, filter: item => (item.ds >= 300 && item.ds < 600)},\r\n {name: '600-1000mm', value: 0, filter: item => (item.ds >= 600 && item.ds < 1000)},\r\n {name: '1000mm以上', value: 0, filter: item => item.ds >= 1000},\r\n ];\r\n dataSource.map(item => {\r\n item.ds = item.ds ? Number(item.ds) : 0;\r\n data.map(d => {\r\n if (d.filter(item)) {\r\n d.value += 1\r\n }\r\n })\r\n })\r\n\r\n return data.filter(v => v.value > 0);\r\n }, [dataSource])\r\n\r\n const columns = [\r\n {\r\n title: '长度(m)',\r\n dataIndex: 'lineLength',\r\n width: 100,\r\n }\r\n ];\r\n\r\n let totalLength = 0;\r\n if (dataSource?.length) {\r\n totalLength = dataSource.reduce((prev, cur) => {\r\n return prev + (cur['lineLength'] || 0)\r\n }, 0) / 1000\r\n }\r\n return (\r\n <>\r\n <Segmented\r\n options={TYPE}\r\n value={type}\r\n onChange={setType}\r\n />\r\n\r\n {type === 'table' ?\r\n <TableView\r\n columns={columns}\r\n dataSource={dataSource}\r\n info={\r\n <Info\r\n list={[\r\n {label: '管线总数', value: dataSource?.length || 0, unit: '条'},\r\n {\r\n label: '管线总长',\r\n value: totalLength ? Number(totalLength).toFixed(2) : totalLength,\r\n unit: 'km'\r\n }\r\n ]}\r\n />\r\n }\r\n />\r\n :\r\n <ChartView data={chartData} type={type}/>\r\n }\r\n </>\r\n )\r\n}\r\n\r\nconst DEVICE_STATUS_NAME = {\r\n 1: {label: '在线', color: '#119FFB'}, // 正常/在线\r\n 2: {label: '报警', color: '#CE3739'}, // 报警/异常\r\n 3: {label: '离线', color: '#AAAAAD'}, // 离线\r\n 4: {label: '故障', color: '#CE3739'}, // 故障/堵塞\r\n};\r\nconst DeviceInfo = (props) => {\r\n const {data} = props;\r\n\r\n const list = useMemo(() => {\r\n const val = {};\r\n data.map(item => {\r\n const {deviceValues} = item;\r\n if (deviceValues?.length) {\r\n deviceValues.map(device => {\r\n const {factorValues} = device;\r\n if (factorValues?.length) {\r\n factorValues.map(factor => {\r\n const {monitorItemName, formatValue, unit, collectFrequency} = factor;\r\n if (collectFrequency === 'realtime' && formatValue) {\r\n val[monitorItemName] = val[monitorItemName] || {\r\n name: monitorItemName,\r\n unit: unit,\r\n data: []\r\n };\r\n val[monitorItemName].data.push(Number(formatValue))\r\n }\r\n })\r\n }\r\n })\r\n }\r\n })\r\n\r\n const dataVal = [];\r\n for (let i in val) {\r\n const {data} = val[i];\r\n const maxValue = Math.max(...data);\r\n const minValue = Math.min(...data);\r\n const avgValue = data.reduce((prev, cur) => {\r\n return prev + cur\r\n }, 0) / data.length;\r\n\r\n dataVal.push({\r\n ...val[i],\r\n maxValue,\r\n minValue,\r\n avgValue: avgValue ? Number(avgValue).toFixed(2) : avgValue\r\n })\r\n }\r\n\r\n return dataVal;\r\n }, [data?.length]);\r\n\r\n if (!list?.length) {\r\n return <></>\r\n }\r\n\r\n return (\r\n <div className={classnames(`${classPrefix}-device`)}>\r\n <div className={classnames(`${classPrefix}-device-top`)}>\r\n <div>监测项</div>\r\n <div>最大值</div>\r\n <div>最小值</div>\r\n <div>平均值</div>\r\n </div>\r\n <div className={classnames(`${classPrefix}-device-content`)}>\r\n {list?.length > 0 && list.map((item, index) => (\r\n <div key={index} className={classnames(`${classPrefix}-device-content-item`)}>\r\n <div>{item.name}</div>\r\n <div>{item.maxValue}<span>{item.unit}</span></div>\r\n <div>{item.minValue}<span>{item.unit}</span></div>\r\n <div>{item.avgValue}<span>{item.unit}</span></div>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n )\r\n}\r\nconst DeviceDataView = (props) => {\r\n const {dataSource} = props;\r\n const [filter, setFilter] = useState(null);\r\n\r\n const columns = [\r\n {\r\n title: '状态',\r\n dataIndex: 'status',\r\n width: 100,\r\n render: (text) => {\r\n if (DEVICE_STATUS_NAME[text]) {\r\n const {color, label} = DEVICE_STATUS_NAME[text];\r\n return <span style={{color}}>{label}</span>\r\n }\r\n return '-'\r\n }\r\n }\r\n ];\r\n\r\n const tableData = useMemo(() => {\r\n return filter ? dataSource.filter(item => Number(item.status) === filter) : dataSource;\r\n }, [filter, dataSource?.length])\r\n\r\n const getTotal = (value) => {\r\n return dataSource.filter(item => Number(item.status) === value).length\r\n }\r\n return (\r\n <TableView\r\n columns={columns}\r\n dataSource={tableData}\r\n info={\r\n <div>\r\n <Info\r\n list={[\r\n {label: '总数', value: dataSource?.length || 0, unit: '个', onClick: () => setFilter(null)},\r\n {label: '在线', value: getTotal(1), unit: '个', onClick: () => setFilter(1)},\r\n {label: '报警', value: getTotal(2), unit: '个', onClick: () => setFilter(2)},\r\n {label: '离线', value: getTotal(3), unit: '个', onClick: () => setFilter(3)},\r\n ]}\r\n />\r\n <DeviceInfo data={dataSource}/>\r\n </div>\r\n }\r\n />\r\n )\r\n}\r\n\r\nexport default props => {\r\n const {onClose, drawType, title, renderTableActive, statistic} = props;\r\n const {map} = useProps();\r\n const [currentLayerKey, setCurrentLayerKey] = useState('');\r\n const [dataSource, setDataSource] = useState([]);\r\n const [loading, setLoading] = useState(false);\r\n\r\n const [layersOpts, setLayersOpts] = useState([]);\r\n const [feature, setFeature] = useState({});\r\n\r\n const draw = useRef();\r\n const currentKey = useRef();\r\n\r\n useEffect(() => {\r\n onClick();\r\n }, [currentLayerKey, JSON.stringify(feature), layersOpts]);\r\n\r\n useEffect(() => {\r\n const layersChange = () => {\r\n getOptions();\r\n };\r\n\r\n layersChange();\r\n\r\n // 添加图层变化监听事件\r\n map.layers.on('change', layersChange);\r\n\r\n return () => {\r\n // 移除图层变化监听事件\r\n map.layers.un('change', layersChange);\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n draw.current = new Draw({map, zIndex: 80});\r\n draw.current.draw(drawType, feature => {\r\n setFeature(feature);\r\n });\r\n return () => {\r\n draw.current.destroy();\r\n map.hideTemplate();\r\n currentKey.current = null;\r\n };\r\n }, []);\r\n\r\n const getOptions = () => {\r\n if (map) {\r\n let opts = [];\r\n let layers = map.getAllLayers().filter(v => {\r\n return !v.viewOnly && v.key && v.name && v.layerControl && v.show;\r\n });\r\n layers.map(v => {\r\n opts.push({\r\n ...v,\r\n value: v.key,\r\n label: v.name,\r\n });\r\n });\r\n\r\n // 当前key对应的图层还显示的话取当前的key否者取第一个layersOpts的key\r\n let _key = opts?.[0]?.value;\r\n if (currentKey.current) {\r\n let layer = map.layers.getLayerByKey(currentKey.current);\r\n if (layer && layer?.show) {\r\n _key = currentKey.current;\r\n }\r\n }\r\n currentKey.current = _key;\r\n setCurrentLayerKey(_key);\r\n setLayersOpts(opts);\r\n }\r\n };\r\n\r\n const onClick = () => {\r\n setDataSource([]);\r\n if (!feature) return;\r\n let geometry = feature?.getGeometry?.();\r\n if (!geometry) return;\r\n setLoading(true);\r\n\r\n let layer = map.layers.getLayerByKey(currentLayerKey);\r\n if (geometry && currentLayerKey && layer) {\r\n let tableData = [];\r\n // wms图层\r\n if (layer instanceof Image) {\r\n getWmsData(geometry, layer, tableData);\r\n } else if (layer instanceof Vector) {\r\n getWfsData(geometry, layer, tableData);\r\n }\r\n } else {\r\n setLoading(false);\r\n if (!geometry) {\r\n message.destroy();\r\n message.info('请先框选图层', 2);\r\n }\r\n if (!currentLayerKey) {\r\n message.destroy();\r\n message.info('请先选择图层', 2);\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @description: wfs图层时获取框选数据\r\n * @param {*} geometry\r\n * @param {*} layer\r\n * @param {*} tableData\r\n * @return {*}\r\n */\r\n const getWfsData = (geometry, layer, tableData) => {\r\n let extent = geometry.getExtent();\r\n let source = layer.getSource();\r\n let features = [];\r\n const getFeatureInfo = feature => {\r\n let listKeys = feature.getKeys();\r\n let data = {};\r\n listKeys.forEach(item => {\r\n if (feature.get(item)) {\r\n data[item] = feature.get(item);\r\n\r\n if (layer.labelField) {\r\n data.NAME = feature.get(layer.labelField);\r\n }\r\n\r\n data.feature = feature;\r\n }\r\n });\r\n return data;\r\n };\r\n if (source.forEachFeatureIntersectingExtent && extent) {\r\n source.forEachFeatureIntersectingExtent(extent, (feature) => {\r\n let featureList = feature.get('features');\r\n\r\n const addTableData = (f) => {\r\n let data = getFeatureInfo(f);\r\n tableData.push(data);\r\n features.push(f);\r\n }\r\n if (featureList?.length > 1) {\r\n featureList.forEach(f => {\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n const polygonGeometry = new fromCircle(geometry);\r\n const featureIntersects = getFeatureIntersects(polygonGeometry, f);\r\n if (!featureIntersects) {\r\n return\r\n }\r\n }\r\n\r\n addTableData(f)\r\n });\r\n } else {\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n const polygonGeometry = new fromCircle(geometry);\r\n const featureIntersects = getFeatureIntersects(polygonGeometry, feature);\r\n if (!featureIntersects) {\r\n return\r\n }\r\n }\r\n\r\n addTableData(feature)\r\n }\r\n });\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n setDataSource(tableData);\r\n } else {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n /**\r\n * @description: wms图层时获取框选数据\r\n * @return {*}\r\n */\r\n const getWmsData = (geometry, layer, tableData) => {\r\n let _filter = '';\r\n if (layer?.group?.length) {\r\n _filter = getFilter(layer.group);\r\n }\r\n\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i == 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n // 增加图层的其他过滤\r\n const filter = _filter ? `(${_filter}) and ` : '';\r\n\r\n getWFSFeatureInfoByLayer(\r\n layer,\r\n `${filter}INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n ).then(features => {\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n if (features?.length) {\r\n features.forEach(item => {\r\n let listKeys = item.getKeys();\r\n let data = {};\r\n listKeys.forEach(key => {\r\n if (item.get(key)) {\r\n data[key] = item.get(key);\r\n data.feature = item;\r\n }\r\n });\r\n if (layer.labelField) {\r\n data.NAME = item.get(layer.labelField) || '';\r\n }\r\n\r\n // 处理管线长度字段\r\n if (data.line_length) {\r\n data.lineLength = data.lineLength || data.line_length;\r\n }\r\n\r\n\r\n tableData.push(data);\r\n });\r\n setDataSource(tableData);\r\n } else {\r\n message.destroy();\r\n message.info('暂无数据', 2);\r\n }\r\n });\r\n };\r\n\r\n // 判断是否是设备图层\r\n const isDeviceLayer = useMemo(() => {\r\n const layer = map?.getLayerByKey(currentLayerKey);\r\n const deviceTypeId = layer?.params?.deviceTypeId;\r\n const url = layer?.url?.indexOf('/cloud/device/deviceMap/list') !== -1;\r\n return Boolean(deviceTypeId && url);\r\n }, [currentLayerKey]);\r\n\r\n // 判断是否是管线图层\r\n const isPipeLineLayer = currentLayerKey && currentLayerKey.toUpperCase().indexOf('LINE') !== -1;\r\n\r\n return (\r\n <Modal title={title || ''} onClose={onClose} width={300}>\r\n <Spin spinning={loading}>\r\n <LayerSelect\r\n options={layersOpts}\r\n value={currentLayerKey}\r\n onChange={setCurrentLayerKey}\r\n currentKey={currentKey}\r\n />\r\n\r\n {renderTableActive && renderTableActive(dataSource, currentLayerKey, onClick)}\r\n\r\n\r\n {statistic ?\r\n (isPipeLineLayer ?\r\n <PipeDataView dataSource={dataSource}/>\r\n :\r\n isDeviceLayer ?\r\n <DeviceDataView dataSource={dataSource}/>\r\n :\r\n <TableView dataSource={dataSource}/>\r\n )\r\n :\r\n <TableView dataSource={dataSource}/>\r\n }\r\n </Spin>\r\n </Modal>\r\n );\r\n};\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_icons","_Table","_interopRequireDefault","_Modal","_layer","_layer2","_Polygon","_Draw","_useProps3","_classnames2","_ahooks","_ImageLayer","_turf","_Info","_Chart","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","slice","constructor","name","test","len","arr2","l","f","next","done","classPrefix","getFeatureIntersects","polygon","feature","_feature$getGeometry","_feature$getGeometry2","_feature$getGeometry3","_lngLat$","lngLat","getGeometry","getCoordinates","poly","TurfPolygon","pt","B","getType","map","v","TurfPoint","intersects","TurfBooleanPointInPolygon","_lngLat$2","item","LayerSelect","props","_list","_props$options","options","onChange","currentKey","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","active","setActive","time","useRef","useUpdateEffect","createElement","Fragment","showOpen","list","onClick","current","clearTimeout","setTimeout","className","classnames","concat","Space","size","wrap","index","label","Divider","style","margin","Button","icon","VerticalAlignTopOutlined","VerticalAlignBottomOutlined","type","TableView","dataSource","otherColumns","columns","info","_useProps","useProps","_useState5","_useState6","title","dataIndex","width","render","text","record","_map$getViewport","doc","document","getElementsByClassName","rect","getBoundingClientRect","parentRect","getViewport","left","showTemplate","fitViewOptions","padding","minHeight","rowKey","CaretUpOutlined","CaretDownOutlined","TYPE","TableOutlined","BarChartOutlined","LineChartOutlined","PieChartOutlined","ChartView","data","height","yAxis","show","legend","xAxis","field","unit","series","radius","center","position","formatter","PipeDataView","_TYPE$","_useState7","_useState8","setType","chartData","useMemo","ds","d","totalLength","reduce","prev","cur","Segmented","toFixed","DEVICE_STATUS_NAME","color","DeviceInfo","val","deviceValues","device","factorValues","factor","monitorItemName","formatValue","collectFrequency","dataVal","maxValue","Math","max","minValue","min","avgValue","DeviceDataView","_useState9","_useState10","setFilter","_DEVICE_STATUS_NAME$t","tableData","status","getTotal","_default","exports","onClose","drawType","renderTableActive","statistic","_useProps2","_useState11","_useState12","currentLayerKey","setCurrentLayerKey","_useState13","_useState14","setDataSource","_useState15","_useState16","loading","setLoading","_useState17","_useState18","layersOpts","setLayersOpts","_useState19","_useState20","setFeature","draw","useEffect","JSON","stringify","layersChange","getOptions","layers","on","un","Draw","zIndex","destroy","hideTemplate","_opts$","opts","getAllLayers","viewOnly","layerControl","_key","layer","getLayerByKey","_feature$getGeometry4","geometry","Image","getWmsData","Vector","getWfsData","message","extent","getExtent","source","getSource","features","getFeatureInfo","listKeys","getKeys","labelField","NAME","forEachFeatureIntersectingExtent","featureList","addTableData","polygonGeometry","fromCircle","featureIntersects","setHighlightFeature","_layer$getSource","_layer$group","_filter","params_","cql_filter","group","getFilter","coorStr","coordinates","getWFSFeatureInfoByLayer","then","line_length","lineLength","isDeviceLayer","_layer$params","_layer$url","deviceTypeId","params","url","indexOf","Boolean","isPipeLineLayer","toUpperCase","Spin","spinning"],"sources":["tools/Toolbox/SelectTools/index.js"],"sourcesContent":["/*\r\n * @Description:框选、圈选、多边形选择\r\n */\r\nimport React, { useEffect, useRef, useState, useMemo } from 'react';\r\nimport { message, Space, Divider, Button, Spin, Segmented } from 'antd';\r\nimport {\r\n CaretUpOutlined,\r\n CaretDownOutlined,\r\n TableOutlined,\r\n PieChartOutlined,\r\n BarChartOutlined,\r\n LineChartOutlined,\r\n} from '@ant-design/icons';\r\nimport Table from '../../components/Table';\r\nimport Modal from '../../components/Modal';\r\nimport { getWFSFeatureInfoByLayer } from '../../../_util/layer';\r\nimport { Image, Vector } from 'ol/layer';\r\nimport { fromCircle } from 'ol/geom/Polygon';\r\nimport Draw from '../../Utils/Draw';\r\nimport './index.less';\r\nimport useProps from '../../../use-props';\r\nimport classnames from 'classnames';\r\nimport { useUpdateEffect } from 'ahooks';\r\nimport { VerticalAlignBottomOutlined, VerticalAlignTopOutlined } from '@ant-design/icons';\r\nimport { getFilter } from '../../../image-layer/ImageLayer';\r\nimport {\r\n booleanPointInPolygon as TurfBooleanPointInPolygon,\r\n point as TurfPoint,\r\n polygon as TurfPolygon,\r\n} from '@turf/turf';\r\nimport Info from '../../components/Info';\r\nimport Chart from '../../components/Chart';\r\n\r\nconst classPrefix = 'selectTools';\r\n\r\nconst getFeatureIntersects = (polygon, feature) => {\r\n let lngLat = feature?.getGeometry()?.getCoordinates();\r\n const poly = TurfPolygon(polygon.getCoordinates());\r\n\r\n let pt;\r\n let B = false;\r\n\r\n if (feature?.getGeometry()?.getType() === 'Point') {\r\n lngLat.map(v => Number(v));\r\n pt = TurfPoint(lngLat);\r\n // 判断在点在多边形内\r\n if (poly && pt) {\r\n const intersects = TurfBooleanPointInPolygon(pt, poly);\r\n if (intersects) {\r\n B = true;\r\n }\r\n }\r\n }\r\n\r\n if (feature?.getGeometry()?.getType() === 'Polygon' && lngLat?.[0]?.length) {\r\n lngLat?.[0].map(v => Number(v));\r\n lngLat?.[0]?.map(item => {\r\n pt = TurfPoint(item);\r\n if (poly && pt) {\r\n const intersects = TurfBooleanPointInPolygon(pt, poly);\r\n if (intersects) {\r\n B = true;\r\n }\r\n }\r\n });\r\n }\r\n\r\n return B;\r\n};\r\n\r\nconst LayerSelect = props => {\r\n const { options = [], value, onChange, currentKey } = props;\r\n const [open, setOpen] = useState(false);\r\n const [active, setActive] = useState(value);\r\n const time = useRef();\r\n\r\n useUpdateEffect(() => {\r\n setActive(value);\r\n }, [value]);\r\n\r\n if (!options?.length) {\r\n return <></>;\r\n }\r\n const showOpen = options?.length > 9;\r\n\r\n let list = options;\r\n if (options?.length) {\r\n if (!open) {\r\n if (options.length > 9) {\r\n list = options.slice(0, 9);\r\n }\r\n } else {\r\n list = options;\r\n }\r\n }\r\n\r\n const onClick = value => {\r\n setActive(value);\r\n currentKey.current = value;\r\n\r\n if (time.current) {\r\n clearTimeout(time.current);\r\n }\r\n\r\n time.current = setTimeout(() => {\r\n onChange?.(value);\r\n }, 500);\r\n };\r\n\r\n return (\r\n <div\r\n className={classnames(`${classPrefix}-layer-select`, {\r\n 'selectTools-layer-select-scroll': open,\r\n })}\r\n >\r\n <Space size={[8, 8]} wrap>\r\n {list?.length > 0 &&\r\n list.map((item, index) => (\r\n <div\r\n key={index}\r\n className={classnames(`${classPrefix}-layer-select-item`, {\r\n [`${classPrefix}-layer-select-item-active`]: active === item.value,\r\n })}\r\n onClick={() => onClick(item.value)}\r\n >\r\n {item.label}\r\n </div>\r\n ))}\r\n </Space>\r\n\r\n {showOpen && (\r\n <Divider style={{ margin: 0 }}>\r\n <Button\r\n icon={open ? <VerticalAlignTopOutlined /> : <VerticalAlignBottomOutlined />}\r\n onClick={() => setOpen(!open)}\r\n type=\"link\"\r\n >\r\n {open ? '收起' : '展开'}\r\n </Button>\r\n </Divider>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nconst TableView = props => {\r\n const { dataSource, columns: otherColumns, info } = props;\r\n const { map } = useProps();\r\n const [open, setOpen] = useState(true);\r\n\r\n const columns = [\r\n {\r\n title: '编码/名称',\r\n dataIndex: 'NAME',\r\n width: 180,\r\n render: (text, record) => {\r\n return (\r\n <a\r\n onClick={() => {\r\n let doc = document.getElementsByClassName('ol-map-tools')[0];\r\n let rect = doc?.getBoundingClientRect();\r\n let parentRect = map.getViewport()?.getBoundingClientRect();\r\n let left = 400;\r\n if (rect && parentRect) {\r\n left = rect?.left - parentRect?.left + 12 + 350 + 150;\r\n }\r\n map.showTemplate(record.feature, {\r\n fitViewOptions: { padding: [100, 400, 100, left] },\r\n });\r\n }}\r\n >\r\n {text}\r\n </a>\r\n );\r\n },\r\n },\r\n ...(otherColumns || []),\r\n ];\r\n\r\n return (\r\n <>\r\n <div style={{ minHeight: 20 }}>\r\n {open && (\r\n <>\r\n {info}\r\n <Table\r\n rowKey=\"code\"\r\n dataSource={dataSource}\r\n columns={columns}\r\n size=\"small\"\r\n />\r\n </>\r\n )}\r\n </div>\r\n\r\n {dataSource?.length > 0 && (\r\n <div className=\"ol-map-search-result-button\" onClick={() => setOpen(!open)}>\r\n {open ? '收起' : '展开'}\r\n {open ? <CaretUpOutlined /> : <CaretDownOutlined />}\r\n </div>\r\n )}\r\n </>\r\n );\r\n};\r\n\r\nconst TYPE = [\r\n { label: '表格', value: 'table', icon: <TableOutlined /> },\r\n { label: '柱状图', value: 'bar', icon: <BarChartOutlined /> },\r\n { label: '折线图', value: 'line', icon: <LineChartOutlined /> },\r\n { label: '饼图', value: 'pie', icon: <PieChartOutlined /> },\r\n];\r\n\r\nconst ChartView = props => {\r\n const { type, data } = props;\r\n return (\r\n <Chart\r\n style={{ height: 300 }}\r\n yAxis={{\r\n show: type !== 'pie',\r\n name: '条',\r\n }}\r\n legend={{ show: false }}\r\n xAxis={{\r\n show: type !== 'pie',\r\n field: 'name',\r\n }}\r\n unit=\"条\"\r\n series={[\r\n {\r\n type,\r\n name: '管线',\r\n radius: ['30%', '50%'],\r\n center: ['50%', '50%'],\r\n // data: data['供水量'] || [1000, 1200],\r\n ...(type === 'pie'\r\n ? {\r\n data,\r\n label: {\r\n show: true,\r\n position: 'outside',\r\n formatter: '{b}\\n{c}条',\r\n },\r\n }\r\n : {\r\n field: 'value',\r\n label: {\r\n show: true,\r\n position: 'top',\r\n formatter: '{c}条',\r\n },\r\n }),\r\n },\r\n ]}\r\n data={data}\r\n />\r\n );\r\n};\r\nconst PipeDataView = props => {\r\n const { dataSource } = props;\r\n const [type, setType] = useState(TYPE[0]?.value);\r\n\r\n const chartData = useMemo(() => {\r\n const data = [\r\n { name: '50mm以下', value: 0, filter: item => item.ds < 50 },\r\n { name: '50-100mm', value: 0, filter: item => item.ds >= 50 && item.ds < 100 },\r\n { name: '100-300mm', value: 0, filter: item => item.ds >= 100 && item.ds < 300 },\r\n { name: '300-600mm', value: 0, filter: item => item.ds >= 300 && item.ds < 600 },\r\n { name: '600-1000mm', value: 0, filter: item => item.ds >= 600 && item.ds < 1000 },\r\n { name: '1000mm以上', value: 0, filter: item => item.ds >= 1000 },\r\n ];\r\n dataSource.map(item => {\r\n item.ds = item.ds ? Number(item.ds) : 0;\r\n data.map(d => {\r\n if (d.filter(item)) {\r\n d.value += 1;\r\n }\r\n });\r\n });\r\n\r\n return data.filter(v => v.value > 0);\r\n }, [dataSource]);\r\n\r\n const columns = [\r\n {\r\n title: '长度(m)',\r\n dataIndex: 'lineLength',\r\n width: 100,\r\n },\r\n ];\r\n\r\n let totalLength = 0;\r\n if (dataSource?.length) {\r\n totalLength =\r\n dataSource.reduce((prev, cur) => {\r\n return prev + (cur['lineLength'] || 0);\r\n }, 0) / 1000;\r\n }\r\n return (\r\n <>\r\n <Segmented options={TYPE} value={type} onChange={setType} />\r\n\r\n {type === 'table' ? (\r\n <TableView\r\n columns={columns}\r\n dataSource={dataSource}\r\n info={\r\n <Info\r\n list={[\r\n { label: '管线总数', value: dataSource?.length || 0, unit: '条' },\r\n {\r\n label: '管线总长',\r\n value: totalLength\r\n ? Number(totalLength).toFixed(2)\r\n : totalLength,\r\n unit: 'km',\r\n },\r\n ]}\r\n />\r\n }\r\n />\r\n ) : (\r\n <ChartView data={chartData} type={type} />\r\n )}\r\n </>\r\n );\r\n};\r\n\r\nconst DEVICE_STATUS_NAME = {\r\n 1: { label: '在线', color: '#119FFB' }, // 正常/在线\r\n 2: { label: '报警', color: '#CE3739' }, // 报警/异常\r\n 3: { label: '离线', color: '#AAAAAD' }, // 离线\r\n 4: { label: '故障', color: '#CE3739' }, // 故障/堵塞\r\n};\r\nconst DeviceInfo = props => {\r\n const { data } = props;\r\n\r\n const list = useMemo(() => {\r\n const val = {};\r\n data.map(item => {\r\n const { deviceValues } = item;\r\n if (deviceValues?.length) {\r\n deviceValues.map(device => {\r\n const { factorValues } = device;\r\n if (factorValues?.length) {\r\n factorValues.map(factor => {\r\n const { monitorItemName, formatValue, unit, collectFrequency } = factor;\r\n if (collectFrequency === 'realtime' && formatValue) {\r\n val[monitorItemName] = val[monitorItemName] || {\r\n name: monitorItemName,\r\n unit: unit,\r\n data: [],\r\n };\r\n val[monitorItemName].data.push(Number(formatValue));\r\n }\r\n });\r\n }\r\n });\r\n }\r\n });\r\n\r\n const dataVal = [];\r\n for (let i in val) {\r\n const { data } = val[i];\r\n const maxValue = Math.max(...data);\r\n const minValue = Math.min(...data);\r\n const avgValue =\r\n data.reduce((prev, cur) => {\r\n return prev + cur;\r\n }, 0) / data.length;\r\n\r\n dataVal.push({\r\n ...val[i],\r\n maxValue,\r\n minValue,\r\n avgValue: avgValue ? Number(avgValue).toFixed(2) : avgValue,\r\n });\r\n }\r\n\r\n return dataVal;\r\n }, [data?.length]);\r\n\r\n if (!list?.length) {\r\n return <></>;\r\n }\r\n\r\n return (\r\n <div className={classnames(`${classPrefix}-device`)}>\r\n <div className={classnames(`${classPrefix}-device-top`)}>\r\n <div>监测项</div>\r\n <div>最大值</div>\r\n <div>最小值</div>\r\n <div>平均值</div>\r\n </div>\r\n <div className={classnames(`${classPrefix}-device-content`)}>\r\n {list?.length > 0 &&\r\n list.map((item, index) => (\r\n <div\r\n key={index}\r\n className={classnames(`${classPrefix}-device-content-item`)}\r\n >\r\n <div>{item.name}</div>\r\n <div>\r\n {item.maxValue}\r\n <span>{item.unit}</span>\r\n </div>\r\n <div>\r\n {item.minValue}\r\n <span>{item.unit}</span>\r\n </div>\r\n <div>\r\n {item.avgValue}\r\n <span>{item.unit}</span>\r\n </div>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n );\r\n};\r\nconst DeviceDataView = props => {\r\n const { dataSource } = props;\r\n const [filter, setFilter] = useState(null);\r\n\r\n const columns = [\r\n {\r\n title: '状态',\r\n dataIndex: 'status',\r\n width: 100,\r\n render: text => {\r\n if (DEVICE_STATUS_NAME[text]) {\r\n const { color, label } = DEVICE_STATUS_NAME[text];\r\n return <span style={{ color }}>{label}</span>;\r\n }\r\n return '-';\r\n },\r\n },\r\n ];\r\n\r\n const tableData = useMemo(() => {\r\n return filter ? dataSource.filter(item => Number(item.status) === filter) : dataSource;\r\n }, [filter, dataSource?.length]);\r\n\r\n const getTotal = value => {\r\n return dataSource.filter(item => Number(item.status) === value).length;\r\n };\r\n return (\r\n <TableView\r\n columns={columns}\r\n dataSource={tableData}\r\n info={\r\n <div>\r\n <Info\r\n list={[\r\n {\r\n label: '总数',\r\n value: dataSource?.length || 0,\r\n unit: '个',\r\n onClick: () => setFilter(null),\r\n },\r\n {\r\n label: '在线',\r\n value: getTotal(1),\r\n unit: '个',\r\n onClick: () => setFilter(1),\r\n },\r\n {\r\n label: '报警',\r\n value: getTotal(2),\r\n unit: '个',\r\n onClick: () => setFilter(2),\r\n },\r\n {\r\n label: '离线',\r\n value: getTotal(3),\r\n unit: '个',\r\n onClick: () => setFilter(3),\r\n },\r\n ]}\r\n />\r\n <DeviceInfo data={dataSource} />\r\n </div>\r\n }\r\n />\r\n );\r\n};\r\n\r\nexport default props => {\r\n const { onClose, drawType, title, renderTableActive, statistic } = props;\r\n const { map } = useProps();\r\n const [currentLayerKey, setCurrentLayerKey] = useState('');\r\n const [dataSource, setDataSource] = useState([]);\r\n const [loading, setLoading] = useState(false);\r\n\r\n const [layersOpts, setLayersOpts] = useState([]);\r\n const [feature, setFeature] = useState({});\r\n\r\n const draw = useRef();\r\n const currentKey = useRef();\r\n\r\n useEffect(() => {\r\n onClick();\r\n }, [currentLayerKey, JSON.stringify(feature), layersOpts]);\r\n\r\n useEffect(() => {\r\n const layersChange = () => {\r\n getOptions();\r\n };\r\n\r\n layersChange();\r\n\r\n // 添加图层变化监听事件\r\n map.layers.on('change', layersChange);\r\n\r\n return () => {\r\n // 移除图层变化监听事件\r\n map.layers.un('change', layersChange);\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n draw.current = new Draw({ map, zIndex: 80 });\r\n draw.current.draw(drawType, feature => {\r\n setFeature(feature);\r\n });\r\n return () => {\r\n draw.current.destroy();\r\n map.hideTemplate();\r\n currentKey.current = null;\r\n };\r\n }, []);\r\n\r\n const getOptions = () => {\r\n if (map) {\r\n let opts = [];\r\n let layers = map.getAllLayers().filter(v => {\r\n return !v.viewOnly && v.key && v.name && v.layerControl && v.show;\r\n });\r\n layers.map(v => {\r\n opts.push({\r\n ...v,\r\n value: v.key,\r\n label: v.name,\r\n });\r\n });\r\n\r\n // 当前key对应的图层还显示的话取当前的key否者取第一个layersOpts的key\r\n let _key = opts?.[0]?.value;\r\n if (currentKey.current) {\r\n let layer = map.layers.getLayerByKey(currentKey.current);\r\n if (layer && layer?.show) {\r\n _key = currentKey.current;\r\n }\r\n }\r\n currentKey.current = _key;\r\n setCurrentLayerKey(_key);\r\n setLayersOpts(opts);\r\n }\r\n };\r\n\r\n const onClick = () => {\r\n setDataSource([]);\r\n if (!feature) return;\r\n let geometry = feature?.getGeometry?.();\r\n if (!geometry) return;\r\n setLoading(true);\r\n\r\n let layer = map.layers.getLayerByKey(currentLayerKey);\r\n if (geometry && currentLayerKey && layer) {\r\n let tableData = [];\r\n // wms图层\r\n if (layer instanceof Image) {\r\n getWmsData(geometry, layer, tableData);\r\n } else if (layer instanceof Vector) {\r\n getWfsData(geometry, layer, tableData);\r\n }\r\n } else {\r\n setLoading(false);\r\n if (!geometry) {\r\n message.destroy();\r\n message.info('请先框选图层', 2);\r\n }\r\n if (!currentLayerKey) {\r\n message.destroy();\r\n message.info('请先选择图层', 2);\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @description: wfs图层时获取框选数据\r\n * @param {*} geometry\r\n * @param {*} layer\r\n * @param {*} tableData\r\n * @return {*}\r\n */\r\n const getWfsData = (geometry, layer, tableData) => {\r\n let extent = geometry.getExtent();\r\n let source = layer.getSource();\r\n let features = [];\r\n const getFeatureInfo = feature => {\r\n let listKeys = feature.getKeys();\r\n let data = {};\r\n listKeys.forEach(item => {\r\n if (feature.get(item)) {\r\n data[item] = feature.get(item);\r\n\r\n if (layer.labelField) {\r\n data.NAME = feature.get(layer.labelField);\r\n }\r\n\r\n data.feature = feature;\r\n }\r\n });\r\n return data;\r\n };\r\n if (source.forEachFeatureIntersectingExtent && extent) {\r\n source.forEachFeatureIntersectingExtent(extent, feature => {\r\n let featureList = feature.get('features');\r\n\r\n const addTableData = f => {\r\n let data = getFeatureInfo(f);\r\n tableData.push(data);\r\n features.push(f);\r\n };\r\n if (featureList?.length > 1) {\r\n featureList.forEach(f => {\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n const polygonGeometry = new fromCircle(geometry);\r\n const featureIntersects = getFeatureIntersects(polygonGeometry, f);\r\n if (!featureIntersects) {\r\n return;\r\n }\r\n }\r\n\r\n addTableData(f);\r\n });\r\n } else {\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n const polygonGeometry = new fromCircle(geometry);\r\n const featureIntersects = getFeatureIntersects(polygonGeometry, feature);\r\n if (!featureIntersects) {\r\n return;\r\n }\r\n }\r\n\r\n addTableData(feature);\r\n }\r\n });\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n setDataSource(tableData);\r\n } else {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n /**\r\n * @description: wms图层时获取框选数据\r\n * @return {*}\r\n */\r\n const getWmsData = (geometry, layer, tableData) => {\r\n let _filter = layer?.getSource()?.params_?.cql_filter || '';\r\n\r\n if (layer?.group?.length) {\r\n _filter = getFilter(layer.group);\r\n }\r\n\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (drawType === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i == 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n // 增加图层的其他过滤\r\n const filter = _filter ? `(${_filter}) and ` : '';\r\n\r\n getWFSFeatureInfoByLayer(\r\n layer,\r\n `${filter}INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n ).then(features => {\r\n setLoading(false);\r\n map.setHighlightFeature(features);\r\n if (features?.length) {\r\n features.forEach(item => {\r\n let listKeys = item.getKeys();\r\n let data = {};\r\n listKeys.forEach(key => {\r\n if (item.get(key)) {\r\n data[key] = item.get(key);\r\n data.feature = item;\r\n }\r\n });\r\n if (layer.labelField) {\r\n data.NAME = item.get(layer.labelField) || '';\r\n }\r\n\r\n // 处理管线长度字段\r\n if (data.line_length) {\r\n data.lineLength = data.lineLength || data.line_length;\r\n }\r\n\r\n tableData.push(data);\r\n });\r\n setDataSource(tableData);\r\n } else {\r\n message.destroy();\r\n message.info('暂无数据', 2);\r\n }\r\n });\r\n };\r\n\r\n // 判断是否是设备图层\r\n const isDeviceLayer = useMemo(() => {\r\n const layer = map?.getLayerByKey(currentLayerKey);\r\n const deviceTypeId = layer?.params?.deviceTypeId;\r\n const url = layer?.url?.indexOf('/cloud/device/deviceMap/list') !== -1;\r\n return Boolean(deviceTypeId && url);\r\n }, [currentLayerKey]);\r\n\r\n // 判断是否是管线图层\r\n const isPipeLineLayer = currentLayerKey && currentLayerKey.toUpperCase().indexOf('LINE') !== -1;\r\n\r\n return (\r\n <Modal title={title || ''} onClose={onClose} width={300}>\r\n <Spin spinning={loading}>\r\n <LayerSelect\r\n options={layersOpts}\r\n value={currentLayerKey}\r\n onChange={setCurrentLayerKey}\r\n currentKey={currentKey}\r\n />\r\n\r\n {renderTableActive && renderTableActive(dataSource, currentLayerKey, onClick)}\r\n\r\n {statistic ? (\r\n isPipeLineLayer ? (\r\n <PipeDataView dataSource={dataSource} />\r\n ) : isDeviceLayer ? (\r\n <DeviceDataView dataSource={dataSource} />\r\n ) : (\r\n <TableView dataSource={dataSource} />\r\n )\r\n ) : (\r\n <TableView dataSource={dataSource} />\r\n )}\r\n </Spin>\r\n </Modal>\r\n );\r\n};\r\n"],"mappings":"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"}
|
|
@@ -19,19 +19,19 @@ var _Polygon = require("ol/geom/Polygon");
|
|
|
19
19
|
require("./index.less");
|
|
20
20
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
21
21
|
var _useProps2 = _interopRequireDefault(require("../../../use-props"));
|
|
22
|
-
function _interopRequireDefault(
|
|
22
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
23
23
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
24
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
25
|
-
function _toConsumableArray(
|
|
24
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
25
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
26
26
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
27
|
-
function _iterableToArray(
|
|
28
|
-
function _arrayWithoutHoles(
|
|
29
|
-
function _slicedToArray(
|
|
27
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
28
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
29
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
30
30
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
31
|
-
function _unsupportedIterableToArray(
|
|
32
|
-
function _arrayLikeToArray(
|
|
31
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
32
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
33
33
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
34
|
-
function _arrayWithHoles(
|
|
34
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
35
35
|
var CONFIG = {
|
|
36
36
|
'1': {
|
|
37
37
|
name: '数值',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_Modal","_interopRequireDefault","_antd","_RequiredLabel","_Select","_Table","_ToolsSelect","_http","_analysisLayer","_Draw","_Polygon","_classnames","_useProps2","e","__esModule","_getRequireWildcardCache","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","slice","constructor","name","test","length","l","f","o","next","done","push","value","CONFIG","operator","LAYER","GSGW","label","table_name","layer","WSGX","GSGD","WSGD","dataToCQLFilter","data","whereValue","cql_filter","map","v","type","field","String","concat","join","where","Field","props","options","status","onChange","createElement","Select","style","width","Operator","Value","mode","Input","target","Table","layerList","layerKey","onAnalysis","_useState","useState","_useState2","dataSource","setDataSource","_useState3","_useState4","fieldList","setFieldList","_useState5","_useState6","setWhereValue","useEffect","key","Date","getTime","_layerList$find","find","getColumnRelationByTableName","tableName","url","params","http","body","then","res","_res$data","_fieldList","result","columnName","values","onFieldChange","index","_fieldList$find","_CONFIG$type","_dataSource","field_status","_ref","enumList","operatorList","onOperatorChange","operator_status","onValueChange","value_status","verifyData","error","onFinish","message","info","Fragment","className","classnames","Radio","Group","paddingLeft","Button","onClick","size","columns","title","dataIndex","align","render","_","_2","text","record","disabled","padding","splice","pagination","toolbar","scroll","y","getViewport","clientHeight","footer","newTableData","JSON","parse","stringify","_default","onClose","_useProps","useProps","_useState7","_useState8","setLayerKey","_useState9","_useState10","toolsKey","setToolsKey","_useState11","_useState12","loading","setLoading","_useState13","_useState14","_useState15","_useState16","setLayerList","analysisLayer","useRef","drawRef","onLayerInit","on","current","AnalysisLayer","layerName","Draw","destroy","_layerList","getAllLayers","onLayerChange","onToolsChange","drawType","features","source","getFeatures","geometry","getGeometry","coorStr","coordinates","getCoordinates","polygonGeometry","fromCircle","forEach","_layerList$find2","typeName","layers","QUERY_LAYERS","setLayerData","isActive","icon","Tabs","TabPane","tab","setCenterByCode"],"sources":["tools/Toolbox/SpaceQuery/index.js"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\r\nimport Modal from '../../components/Modal';\r\nimport {\r\n message,\r\n Tabs,\r\n Table as AntdTable,\r\n Button,\r\n Select as AntdSelect,\r\n Input,\r\n Radio,\r\n} from 'antd';\r\nimport RequiredLabel from '../../components/RequiredLabel';\r\nimport Select from '../../components/Select';\r\nimport MyTable from '../../components/Table';\r\nimport ToolsSelect from '../../components/ToolsSelect';\r\nimport http from '../../../_util/http';\r\nimport AnalysisLayer from '../../../analysis-layer';\r\nimport Draw from '../../Utils/Draw';\r\nimport { fromCircle } from 'ol/geom/Polygon';\r\nimport './index.less';\r\nimport classnames from 'classnames';\r\nimport useProps from \"../../../use-props\";\r\n\r\nconst CONFIG = {\r\n '1': {\r\n name: '数值',\r\n operator: ['=', '>', '<', '>=', '<='],\r\n },\r\n '2': {\r\n name: '字符串',\r\n operator: ['=', '包含'],\r\n },\r\n '3': {\r\n name: '枚举',\r\n operator: ['=', '包含'],\r\n },\r\n '4': {\r\n name: '布尔',\r\n operator: ['='],\r\n },\r\n};\r\n\r\nconst LAYER = {\r\n GSGW: {\r\n label: '供水管线',\r\n value: 'GSGW',\r\n table_name: 'zhsw_water_supply_line',\r\n layer: 'zhsw:putian_water_supply_line',\r\n },\r\n WSGX: {\r\n label: '污水管线',\r\n value: 'WSGX',\r\n table_name: 'zhsw_line',\r\n layer: 'zhsw:putian_ws_line',\r\n },\r\n GSGD: {\r\n label: '供水管点',\r\n value: 'GSGD',\r\n table_name: 'zhsw_water_supply_point',\r\n layer: 'zhsw:putian_water_supply_point',\r\n },\r\n WSGD: {\r\n label: '污水管点',\r\n value: 'WSGD',\r\n table_name: 'zhsw_point',\r\n layer: 'zhsw:putian_ws_point',\r\n },\r\n};\r\n// 数据转条件\r\nconst dataToCQLFilter = (data, whereValue) => {\r\n let cql_filter = '';\r\n if (data?.length) {\r\n data.map(v => {\r\n let { type, field, operator, value } = v;\r\n\r\n if (operator === '包含') {\r\n if (String(type) === '3') {\r\n operator = 'in';\r\n value = `(${value.join(',')})`;\r\n } else {\r\n operator = 'like';\r\n value = `'%${value}%'`;\r\n }\r\n }\r\n let where = `${field} ${operator} ${value}`;\r\n cql_filter = cql_filter ? `${cql_filter} ${whereValue} ${where}` : where;\r\n });\r\n }\r\n\r\n return cql_filter;\r\n};\r\n\r\n// 字段\r\nconst Field = props => {\r\n const { options, value, status, onChange } = props;\r\n\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n};\r\n\r\n// 操作符\r\nconst Operator = props => {\r\n const { value, options, status, onChange } = props;\r\n\r\n return (\r\n <AntdSelect\r\n value={value}\r\n status={status}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n};\r\n\r\n// 值\r\nconst Value = props => {\r\n const { type, operator, options, value, status, onChange } = props;\r\n\r\n if (type === '3') {\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n mode={operator === '包含' ? 'multiple' : null}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n }\r\n\r\n if (type === '4') {\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={[\r\n { label: '否', value: 0 },\r\n { label: '是', value: 1 },\r\n ]}\r\n />\r\n );\r\n }\r\n\r\n return <Input value={value} status={status} onChange={e => onChange(e.target.value)} />;\r\n};\r\n\r\nconst Table = props => {\r\n const { map, layerList, layerKey, onAnalysis } = props;\r\n const [dataSource, setDataSource] = useState([]);\r\n const [fieldList, setFieldList] = useState([]);\r\n const [whereValue, setWhereValue] = useState('and');\r\n\r\n useEffect(() => {\r\n setDataSource([\r\n {\r\n key: new Date().getTime(),\r\n },\r\n ]);\r\n\r\n if (layerKey) {\r\n let { table_name } = layerList.find(v => v.value === layerKey);\r\n getColumnRelationByTableName(table_name);\r\n }\r\n }, [layerKey]);\r\n\r\n const getColumnRelationByTableName = tableName => {\r\n const url = `/cloud/zhsw-jcss/api/tableColumnRelation/getColumnRelationByTableName`;\r\n const params = {\r\n tableName,\r\n };\r\n\r\n http.get(url, { body: params }).then(res => {\r\n let _fieldList = [];\r\n if (res?.result === 0 && res?.data?.length) {\r\n res.data.map(v => {\r\n _fieldList.push({ label: v.name, value: v.columnName, values: v });\r\n });\r\n }\r\n setFieldList(_fieldList);\r\n });\r\n };\r\n\r\n // 字段选择\r\n const onFieldChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].field = value;\r\n _dataSource[index].field_status = '';\r\n\r\n // 设置类型和枚举项\r\n let { type, enumList } = fieldList.find(v => v.value === value)?.values || {};\r\n _dataSource[index].type = type;\r\n _dataSource[index].enumList = enumList\r\n ? enumList.map(v => ({ label: v.key, value: v.value }))\r\n : [];\r\n\r\n // 设置操作符数据\r\n let options = CONFIG?.[type]?.operator || [];\r\n options = options.map(v => ({ label: v, value: v }));\r\n _dataSource[index].operatorList = options;\r\n\r\n // 清空数据\r\n _dataSource[index].operator = '';\r\n _dataSource[index].value = '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n // 操作符选择\r\n const onOperatorChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].operator = value;\r\n _dataSource[index].operator_status = '';\r\n _dataSource[index].value = value === '包含' ? [] : '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n const onValueChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].value = value;\r\n _dataSource[index].value_status = '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n const verifyData = () => {\r\n let _dataSource = [...dataSource];\r\n let error = false;\r\n _dataSource.map(v => {\r\n ['field', 'operator', 'value'].map(f => {\r\n if (!v[f]) {\r\n v[`${f}_status`] = 'error';\r\n error = true;\r\n }\r\n });\r\n });\r\n\r\n setDataSource(_dataSource);\r\n\r\n return error;\r\n };\r\n\r\n const onFinish = () => {\r\n let error = verifyData();\r\n if (!error) {\r\n let cql_filter = dataToCQLFilter(dataSource, whereValue);\r\n onAnalysis(cql_filter);\r\n } else {\r\n message.info('查询条件存在空项');\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n <div className={classnames('space-query-row')}>\r\n <RequiredLabel label=\"条件关系\">\r\n <Radio.Group\r\n style={{ paddingLeft: 6 }}\r\n onChange={e => setWhereValue(e.target.value)}\r\n value={whereValue}\r\n >\r\n <Radio value=\"and\">并且</Radio>\r\n <Radio value=\"or\">或者</Radio>\r\n </Radio.Group>\r\n </RequiredLabel>\r\n <Button type=\"primary\" onClick={onFinish}>\r\n 查询\r\n </Button>\r\n </div>\r\n\r\n <AntdTable\r\n className={classnames('space-query-table')}\r\n size=\"middle\"\r\n columns={[\r\n {\r\n title: '序号',\r\n dataIndex: 'num',\r\n width: 50,\r\n align: 'center',\r\n render: (_, _2, index) => index + 1,\r\n },\r\n {\r\n title: <RequiredLabel label=\"字段\" />,\r\n dataIndex: 'field',\r\n width: 120,\r\n align: 'left',\r\n render: (text, record, index) => (\r\n <Field\r\n value={text}\r\n status={record.field_status}\r\n options={fieldList}\r\n onChange={value => onFieldChange(value, index)}\r\n />\r\n ),\r\n },\r\n {\r\n title: <RequiredLabel label=\"操作符\" />,\r\n dataIndex: 'operator',\r\n width: 100,\r\n align: 'left',\r\n render: (text, record, index) => {\r\n return (\r\n <Operator\r\n value={text}\r\n status={record.operator_status}\r\n options={record.operatorList || []}\r\n onChange={value => onOperatorChange(value, index)}\r\n />\r\n );\r\n },\r\n },\r\n {\r\n title: <RequiredLabel label=\"值\" />,\r\n dataIndex: 'value',\r\n width: 120,\r\n align: 'left',\r\n render: (text, record, index) => {\r\n return (\r\n <Value\r\n value={text}\r\n status={record.value_status}\r\n type={record.type && String(record.type)}\r\n operator={record.operator}\r\n record={record}\r\n options={record.enumList || []}\r\n onChange={value => onValueChange(value, index)}\r\n />\r\n );\r\n },\r\n },\r\n {\r\n title: '操作',\r\n dataIndex: 'c',\r\n width: 50,\r\n align: 'left',\r\n render: (_, _2, index) => (\r\n <Button\r\n type=\"link\"\r\n disabled={dataSource.length === 1}\r\n style={{ padding: 0 }}\r\n onClick={() => {\r\n let _dataSource = [...dataSource];\r\n _dataSource.splice(index, 1);\r\n setDataSource(_dataSource);\r\n }}\r\n >\r\n 删除\r\n </Button>\r\n ),\r\n },\r\n ]}\r\n dataSource={dataSource}\r\n pagination={false}\r\n toolbar={false}\r\n scroll={{ y: map.getViewport().clientHeight - 362 }}\r\n footer={() => {\r\n return (\r\n <div\r\n onClick={() => {\r\n let newTableData = JSON.parse(JSON.stringify(dataSource));\r\n newTableData.push({\r\n key: new Date().getTime(),\r\n });\r\n setDataSource(newTableData);\r\n }}\r\n >\r\n +添加\r\n </div>\r\n );\r\n }}\r\n />\r\n </>\r\n );\r\n};\r\nexport default function(props) {\r\n const { onClose } = props;\r\n const { map } = useProps();\r\n const [layerKey, setLayerKey] = useState('');\r\n const [toolsKey, setToolsKey] = useState('');\r\n const [loading, setLoading] = useState(false);\r\n const [dataSource, setDataSource] = useState([]);\r\n const [layerList, setLayerList] = useState([]);\r\n\r\n const analysisLayer = useRef();\r\n const drawRef = useRef();\r\n\r\n useEffect(() => {\r\n onLayerInit();\r\n\r\n map.on('loadstart', () => {\r\n onLayerInit();\r\n });\r\n\r\n analysisLayer.current = new AnalysisLayer({\r\n map,\r\n layerName: 'zhsw:putian_network_access_enterprise',\r\n });\r\n\r\n drawRef.current = new Draw({ map });\r\n\r\n return () => {\r\n analysisLayer.current.destroy();\r\n\r\n drawRef.current.destroy();\r\n };\r\n }, []);\r\n\r\n const onLayerInit = () => {\r\n let _layerList = [];\r\n map.getAllLayers().map(layer => {\r\n if (layer.key && LAYER[layer.key]) {\r\n _layerList.push(LAYER[layer.key]);\r\n }\r\n });\r\n setLayerList(_layerList);\r\n };\r\n\r\n const onLayerChange = key => {\r\n setLayerKey(key);\r\n };\r\n\r\n const onToolsChange = key => {\r\n drawRef.current.drawType = key;\r\n setToolsKey(key);\r\n };\r\n\r\n const onAnalysis = cql_filter => {\r\n if (!layerKey) {\r\n return message.info('请选择查询图层');\r\n }\r\n\r\n let features = drawRef.current.source.getFeatures();\r\n if (!features?.length) {\r\n return message.info('请绘制查询范围');\r\n }\r\n\r\n let geometry = features[0].getGeometry();\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (toolsKey === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i === 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n\r\n setLoading(true);\r\n let { layer } = layerList.find(v => v.value === layerKey);\r\n let params = {\r\n typeName: layer,\r\n layers: layer,\r\n QUERY_LAYERS: layer,\r\n cql_filter: `${cql_filter} and INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n };\r\n analysisLayer.current.setLayerData(params).then(data => {\r\n setDataSource(data);\r\n setLoading(false);\r\n });\r\n };\r\n return (\r\n <Modal title=\"空间定位查询\" onClose={onClose} width={500}>\r\n <div className={classnames('space-query-row')}>\r\n <Select\r\n options={layerList}\r\n title=\"图层选择\"\r\n value={layerKey}\r\n onChange={onLayerChange}\r\n />\r\n\r\n <ToolsSelect\r\n title=\"地图选择\"\r\n value={toolsKey}\r\n onChange={onToolsChange}\r\n options={[\r\n { label: '框选', key: 'DragBox', isActive: false, icon: 'icon-kuangxuan' },\r\n { label: '圈选', key: 'Circle', isActive: false, icon: 'icon-quanxuan' },\r\n {\r\n label: '多边形选择',\r\n key: 'Polygon',\r\n isActive: false,\r\n icon: 'icon-duobianxingxuanze',\r\n },\r\n ]}\r\n />\r\n </div>\r\n\r\n <Tabs>\r\n <Tabs.TabPane tab=\"查询条件\" key=\"1\">\r\n <Table\r\n map={map}\r\n layerKey={layerKey}\r\n layerList={layerList}\r\n onAnalysis={onAnalysis}\r\n />\r\n </Tabs.TabPane>\r\n <Tabs.TabPane tab=\"查询结果\" key=\"2\">\r\n <MyTable\r\n columns={[\r\n {\r\n title: '编码',\r\n dataIndex: ['values_', 'code'],\r\n width: 100,\r\n render: text => (\r\n <a onClick={() => analysisLayer.current.setCenterByCode(text)}>\r\n {text}\r\n </a>\r\n ),\r\n },\r\n ]}\r\n loading={loading}\r\n dataSource={dataSource}\r\n scroll={{ y: map.getViewport().clientHeight - 330 }}\r\n />\r\n </Tabs.TabPane>\r\n </Tabs>\r\n </Modal>\r\n );\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_Modal","_interopRequireDefault","_antd","_RequiredLabel","_Select","_Table","_ToolsSelect","_http","_analysisLayer","_Draw","_Polygon","_classnames","_useProps2","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","toString","slice","constructor","name","test","len","length","arr2","l","f","next","done","push","value","CONFIG","operator","LAYER","GSGW","label","table_name","layer","WSGX","GSGD","WSGD","dataToCQLFilter","data","whereValue","cql_filter","map","v","type","field","String","concat","join","where","Field","props","options","status","onChange","createElement","Select","style","width","Operator","Value","mode","Input","target","Table","layerList","layerKey","onAnalysis","_useState","useState","_useState2","dataSource","setDataSource","_useState3","_useState4","fieldList","setFieldList","_useState5","_useState6","setWhereValue","useEffect","key","Date","getTime","_layerList$find","find","getColumnRelationByTableName","tableName","url","params","http","body","then","res","_res$data","_fieldList","result","columnName","values","onFieldChange","index","_fieldList$find","_CONFIG$type","_dataSource","field_status","_ref","enumList","operatorList","onOperatorChange","operator_status","onValueChange","value_status","verifyData","error","onFinish","message","info","Fragment","className","classnames","Radio","Group","paddingLeft","Button","onClick","size","columns","title","dataIndex","align","render","_","_2","text","record","disabled","padding","splice","pagination","toolbar","scroll","y","getViewport","clientHeight","footer","newTableData","JSON","parse","stringify","_default","onClose","_useProps","useProps","_useState7","_useState8","setLayerKey","_useState9","_useState10","toolsKey","setToolsKey","_useState11","_useState12","loading","setLoading","_useState13","_useState14","_useState15","_useState16","setLayerList","analysisLayer","useRef","drawRef","onLayerInit","on","current","AnalysisLayer","layerName","Draw","destroy","_layerList","getAllLayers","onLayerChange","onToolsChange","drawType","features","source","getFeatures","geometry","getGeometry","coorStr","coordinates","getCoordinates","polygonGeometry","fromCircle","forEach","_layerList$find2","typeName","layers","QUERY_LAYERS","setLayerData","isActive","icon","Tabs","TabPane","tab","setCenterByCode"],"sources":["tools/Toolbox/SpaceQuery/index.js"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\r\nimport Modal from '../../components/Modal';\r\nimport {\r\n message,\r\n Tabs,\r\n Table as AntdTable,\r\n Button,\r\n Select as AntdSelect,\r\n Input,\r\n Radio,\r\n} from 'antd';\r\nimport RequiredLabel from '../../components/RequiredLabel';\r\nimport Select from '../../components/Select';\r\nimport MyTable from '../../components/Table';\r\nimport ToolsSelect from '../../components/ToolsSelect';\r\nimport http from '../../../_util/http';\r\nimport AnalysisLayer from '../../../analysis-layer';\r\nimport Draw from '../../Utils/Draw';\r\nimport { fromCircle } from 'ol/geom/Polygon';\r\nimport './index.less';\r\nimport classnames from 'classnames';\r\nimport useProps from \"../../../use-props\";\r\n\r\nconst CONFIG = {\r\n '1': {\r\n name: '数值',\r\n operator: ['=', '>', '<', '>=', '<='],\r\n },\r\n '2': {\r\n name: '字符串',\r\n operator: ['=', '包含'],\r\n },\r\n '3': {\r\n name: '枚举',\r\n operator: ['=', '包含'],\r\n },\r\n '4': {\r\n name: '布尔',\r\n operator: ['='],\r\n },\r\n};\r\n\r\nconst LAYER = {\r\n GSGW: {\r\n label: '供水管线',\r\n value: 'GSGW',\r\n table_name: 'zhsw_water_supply_line',\r\n layer: 'zhsw:putian_water_supply_line',\r\n },\r\n WSGX: {\r\n label: '污水管线',\r\n value: 'WSGX',\r\n table_name: 'zhsw_line',\r\n layer: 'zhsw:putian_ws_line',\r\n },\r\n GSGD: {\r\n label: '供水管点',\r\n value: 'GSGD',\r\n table_name: 'zhsw_water_supply_point',\r\n layer: 'zhsw:putian_water_supply_point',\r\n },\r\n WSGD: {\r\n label: '污水管点',\r\n value: 'WSGD',\r\n table_name: 'zhsw_point',\r\n layer: 'zhsw:putian_ws_point',\r\n },\r\n};\r\n// 数据转条件\r\nconst dataToCQLFilter = (data, whereValue) => {\r\n let cql_filter = '';\r\n if (data?.length) {\r\n data.map(v => {\r\n let { type, field, operator, value } = v;\r\n\r\n if (operator === '包含') {\r\n if (String(type) === '3') {\r\n operator = 'in';\r\n value = `(${value.join(',')})`;\r\n } else {\r\n operator = 'like';\r\n value = `'%${value}%'`;\r\n }\r\n }\r\n let where = `${field} ${operator} ${value}`;\r\n cql_filter = cql_filter ? `${cql_filter} ${whereValue} ${where}` : where;\r\n });\r\n }\r\n\r\n return cql_filter;\r\n};\r\n\r\n// 字段\r\nconst Field = props => {\r\n const { options, value, status, onChange } = props;\r\n\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n};\r\n\r\n// 操作符\r\nconst Operator = props => {\r\n const { value, options, status, onChange } = props;\r\n\r\n return (\r\n <AntdSelect\r\n value={value}\r\n status={status}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n};\r\n\r\n// 值\r\nconst Value = props => {\r\n const { type, operator, options, value, status, onChange } = props;\r\n\r\n if (type === '3') {\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n mode={operator === '包含' ? 'multiple' : null}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={options}\r\n />\r\n );\r\n }\r\n\r\n if (type === '4') {\r\n return (\r\n <AntdSelect\r\n status={status}\r\n value={value}\r\n style={{ width: '100%' }}\r\n onChange={onChange}\r\n options={[\r\n { label: '否', value: 0 },\r\n { label: '是', value: 1 },\r\n ]}\r\n />\r\n );\r\n }\r\n\r\n return <Input value={value} status={status} onChange={e => onChange(e.target.value)} />;\r\n};\r\n\r\nconst Table = props => {\r\n const { map, layerList, layerKey, onAnalysis } = props;\r\n const [dataSource, setDataSource] = useState([]);\r\n const [fieldList, setFieldList] = useState([]);\r\n const [whereValue, setWhereValue] = useState('and');\r\n\r\n useEffect(() => {\r\n setDataSource([\r\n {\r\n key: new Date().getTime(),\r\n },\r\n ]);\r\n\r\n if (layerKey) {\r\n let { table_name } = layerList.find(v => v.value === layerKey);\r\n getColumnRelationByTableName(table_name);\r\n }\r\n }, [layerKey]);\r\n\r\n const getColumnRelationByTableName = tableName => {\r\n const url = `/cloud/zhsw-jcss/api/tableColumnRelation/getColumnRelationByTableName`;\r\n const params = {\r\n tableName,\r\n };\r\n\r\n http.get(url, { body: params }).then(res => {\r\n let _fieldList = [];\r\n if (res?.result === 0 && res?.data?.length) {\r\n res.data.map(v => {\r\n _fieldList.push({ label: v.name, value: v.columnName, values: v });\r\n });\r\n }\r\n setFieldList(_fieldList);\r\n });\r\n };\r\n\r\n // 字段选择\r\n const onFieldChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].field = value;\r\n _dataSource[index].field_status = '';\r\n\r\n // 设置类型和枚举项\r\n let { type, enumList } = fieldList.find(v => v.value === value)?.values || {};\r\n _dataSource[index].type = type;\r\n _dataSource[index].enumList = enumList\r\n ? enumList.map(v => ({ label: v.key, value: v.value }))\r\n : [];\r\n\r\n // 设置操作符数据\r\n let options = CONFIG?.[type]?.operator || [];\r\n options = options.map(v => ({ label: v, value: v }));\r\n _dataSource[index].operatorList = options;\r\n\r\n // 清空数据\r\n _dataSource[index].operator = '';\r\n _dataSource[index].value = '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n // 操作符选择\r\n const onOperatorChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].operator = value;\r\n _dataSource[index].operator_status = '';\r\n _dataSource[index].value = value === '包含' ? [] : '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n const onValueChange = (value, index) => {\r\n let _dataSource = [...dataSource];\r\n _dataSource[index].value = value;\r\n _dataSource[index].value_status = '';\r\n\r\n setDataSource(_dataSource);\r\n };\r\n\r\n const verifyData = () => {\r\n let _dataSource = [...dataSource];\r\n let error = false;\r\n _dataSource.map(v => {\r\n ['field', 'operator', 'value'].map(f => {\r\n if (!v[f]) {\r\n v[`${f}_status`] = 'error';\r\n error = true;\r\n }\r\n });\r\n });\r\n\r\n setDataSource(_dataSource);\r\n\r\n return error;\r\n };\r\n\r\n const onFinish = () => {\r\n let error = verifyData();\r\n if (!error) {\r\n let cql_filter = dataToCQLFilter(dataSource, whereValue);\r\n onAnalysis(cql_filter);\r\n } else {\r\n message.info('查询条件存在空项');\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n <div className={classnames('space-query-row')}>\r\n <RequiredLabel label=\"条件关系\">\r\n <Radio.Group\r\n style={{ paddingLeft: 6 }}\r\n onChange={e => setWhereValue(e.target.value)}\r\n value={whereValue}\r\n >\r\n <Radio value=\"and\">并且</Radio>\r\n <Radio value=\"or\">或者</Radio>\r\n </Radio.Group>\r\n </RequiredLabel>\r\n <Button type=\"primary\" onClick={onFinish}>\r\n 查询\r\n </Button>\r\n </div>\r\n\r\n <AntdTable\r\n className={classnames('space-query-table')}\r\n size=\"middle\"\r\n columns={[\r\n {\r\n title: '序号',\r\n dataIndex: 'num',\r\n width: 50,\r\n align: 'center',\r\n render: (_, _2, index) => index + 1,\r\n },\r\n {\r\n title: <RequiredLabel label=\"字段\" />,\r\n dataIndex: 'field',\r\n width: 120,\r\n align: 'left',\r\n render: (text, record, index) => (\r\n <Field\r\n value={text}\r\n status={record.field_status}\r\n options={fieldList}\r\n onChange={value => onFieldChange(value, index)}\r\n />\r\n ),\r\n },\r\n {\r\n title: <RequiredLabel label=\"操作符\" />,\r\n dataIndex: 'operator',\r\n width: 100,\r\n align: 'left',\r\n render: (text, record, index) => {\r\n return (\r\n <Operator\r\n value={text}\r\n status={record.operator_status}\r\n options={record.operatorList || []}\r\n onChange={value => onOperatorChange(value, index)}\r\n />\r\n );\r\n },\r\n },\r\n {\r\n title: <RequiredLabel label=\"值\" />,\r\n dataIndex: 'value',\r\n width: 120,\r\n align: 'left',\r\n render: (text, record, index) => {\r\n return (\r\n <Value\r\n value={text}\r\n status={record.value_status}\r\n type={record.type && String(record.type)}\r\n operator={record.operator}\r\n record={record}\r\n options={record.enumList || []}\r\n onChange={value => onValueChange(value, index)}\r\n />\r\n );\r\n },\r\n },\r\n {\r\n title: '操作',\r\n dataIndex: 'c',\r\n width: 50,\r\n align: 'left',\r\n render: (_, _2, index) => (\r\n <Button\r\n type=\"link\"\r\n disabled={dataSource.length === 1}\r\n style={{ padding: 0 }}\r\n onClick={() => {\r\n let _dataSource = [...dataSource];\r\n _dataSource.splice(index, 1);\r\n setDataSource(_dataSource);\r\n }}\r\n >\r\n 删除\r\n </Button>\r\n ),\r\n },\r\n ]}\r\n dataSource={dataSource}\r\n pagination={false}\r\n toolbar={false}\r\n scroll={{ y: map.getViewport().clientHeight - 362 }}\r\n footer={() => {\r\n return (\r\n <div\r\n onClick={() => {\r\n let newTableData = JSON.parse(JSON.stringify(dataSource));\r\n newTableData.push({\r\n key: new Date().getTime(),\r\n });\r\n setDataSource(newTableData);\r\n }}\r\n >\r\n +添加\r\n </div>\r\n );\r\n }}\r\n />\r\n </>\r\n );\r\n};\r\nexport default function(props) {\r\n const { onClose } = props;\r\n const { map } = useProps();\r\n const [layerKey, setLayerKey] = useState('');\r\n const [toolsKey, setToolsKey] = useState('');\r\n const [loading, setLoading] = useState(false);\r\n const [dataSource, setDataSource] = useState([]);\r\n const [layerList, setLayerList] = useState([]);\r\n\r\n const analysisLayer = useRef();\r\n const drawRef = useRef();\r\n\r\n useEffect(() => {\r\n onLayerInit();\r\n\r\n map.on('loadstart', () => {\r\n onLayerInit();\r\n });\r\n\r\n analysisLayer.current = new AnalysisLayer({\r\n map,\r\n layerName: 'zhsw:putian_network_access_enterprise',\r\n });\r\n\r\n drawRef.current = new Draw({ map });\r\n\r\n return () => {\r\n analysisLayer.current.destroy();\r\n\r\n drawRef.current.destroy();\r\n };\r\n }, []);\r\n\r\n const onLayerInit = () => {\r\n let _layerList = [];\r\n map.getAllLayers().map(layer => {\r\n if (layer.key && LAYER[layer.key]) {\r\n _layerList.push(LAYER[layer.key]);\r\n }\r\n });\r\n setLayerList(_layerList);\r\n };\r\n\r\n const onLayerChange = key => {\r\n setLayerKey(key);\r\n };\r\n\r\n const onToolsChange = key => {\r\n drawRef.current.drawType = key;\r\n setToolsKey(key);\r\n };\r\n\r\n const onAnalysis = cql_filter => {\r\n if (!layerKey) {\r\n return message.info('请选择查询图层');\r\n }\r\n\r\n let features = drawRef.current.source.getFeatures();\r\n if (!features?.length) {\r\n return message.info('请绘制查询范围');\r\n }\r\n\r\n let geometry = features[0].getGeometry();\r\n let coorStr = '';\r\n let coordinates = geometry.getCoordinates();\r\n\r\n // 圈选处理\r\n if (toolsKey === 'Circle') {\r\n let polygonGeometry = new fromCircle(geometry);\r\n coordinates = polygonGeometry.getCoordinates();\r\n }\r\n\r\n coordinates[0].forEach((v, i) => {\r\n if (i === 0) {\r\n coorStr += `${v[0]} ${v[1]}`;\r\n } else {\r\n coorStr += `, ${v[0]} ${v[1]}`;\r\n }\r\n });\r\n\r\n setLoading(true);\r\n let { layer } = layerList.find(v => v.value === layerKey);\r\n let params = {\r\n typeName: layer,\r\n layers: layer,\r\n QUERY_LAYERS: layer,\r\n cql_filter: `${cql_filter} and INTERSECTS(geo_location, POLYGON((${coorStr})))`,\r\n };\r\n analysisLayer.current.setLayerData(params).then(data => {\r\n setDataSource(data);\r\n setLoading(false);\r\n });\r\n };\r\n return (\r\n <Modal title=\"空间定位查询\" onClose={onClose} width={500}>\r\n <div className={classnames('space-query-row')}>\r\n <Select\r\n options={layerList}\r\n title=\"图层选择\"\r\n value={layerKey}\r\n onChange={onLayerChange}\r\n />\r\n\r\n <ToolsSelect\r\n title=\"地图选择\"\r\n value={toolsKey}\r\n onChange={onToolsChange}\r\n options={[\r\n { label: '框选', key: 'DragBox', isActive: false, icon: 'icon-kuangxuan' },\r\n { label: '圈选', key: 'Circle', isActive: false, icon: 'icon-quanxuan' },\r\n {\r\n label: '多边形选择',\r\n key: 'Polygon',\r\n isActive: false,\r\n icon: 'icon-duobianxingxuanze',\r\n },\r\n ]}\r\n />\r\n </div>\r\n\r\n <Tabs>\r\n <Tabs.TabPane tab=\"查询条件\" key=\"1\">\r\n <Table\r\n map={map}\r\n layerKey={layerKey}\r\n layerList={layerList}\r\n onAnalysis={onAnalysis}\r\n />\r\n </Tabs.TabPane>\r\n <Tabs.TabPane tab=\"查询结果\" key=\"2\">\r\n <MyTable\r\n columns={[\r\n {\r\n title: '编码',\r\n dataIndex: ['values_', 'code'],\r\n width: 100,\r\n render: text => (\r\n <a onClick={() => analysisLayer.current.setCenterByCode(text)}>\r\n {text}\r\n </a>\r\n ),\r\n },\r\n ]}\r\n loading={loading}\r\n dataSource={dataSource}\r\n scroll={{ y: map.getViewport().clientHeight - 330 }}\r\n />\r\n </Tabs.TabPane>\r\n </Tabs>\r\n </Modal>\r\n );\r\n}\r\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AASA,IAAAI,cAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,OAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,MAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,YAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,KAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,cAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,KAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,QAAA,GAAAX,OAAA;AACAA,OAAA;AACA,IAAAY,WAAA,GAAAV,sBAAA,CAAAF,OAAA;AACA,IAAAa,UAAA,GAAAX,sBAAA,CAAAF,OAAA;AAA0C,SAAAE,uBAAAY,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,SAAAlB,wBAAAkB,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,mBAAAC,GAAA,WAAAC,kBAAA,CAAAD,GAAA,KAAAE,gBAAA,CAAAF,GAAA,KAAAG,2BAAA,CAAAH,GAAA,KAAAI,kBAAA;AAAA,SAAAA,mBAAA,cAAAC,SAAA;AAAA,SAAAH,iBAAAI,IAAA,eAAAC,MAAA,oBAAAD,IAAA,CAAAC,MAAA,CAAAC,QAAA,aAAAF,IAAA,+BAAAG,KAAA,CAAAC,IAAA,CAAAJ,IAAA;AAAA,SAAAL,mBAAAD,GAAA,QAAAS,KAAA,CAAAE,OAAA,CAAAX,GAAA,UAAAY,iBAAA,CAAAZ,GAAA;AAAA,SAAAa,eAAAb,GAAA,EAAAH,CAAA,WAAAiB,eAAA,CAAAd,GAAA,KAAAe,qBAAA,CAAAf,GAAA,EAAAH,CAAA,KAAAM,2BAAA,CAAAH,GAAA,EAAAH,CAAA,KAAAmB,gBAAA;AAAA,SAAAA,iBAAA,cAAAX,SAAA;AAAA,SAAAF,4BAAAc,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAL,iBAAA,CAAAK,CAAA,EAAAC,MAAA,OAAA/B,CAAA,GAAAG,MAAA,CAAAI,SAAA,CAAAyB,QAAA,CAAAvB,IAAA,CAAAqB,CAAA,EAAAG,KAAA,aAAAjC,CAAA,iBAAA8B,CAAA,CAAAI,WAAA,EAAAlC,CAAA,GAAA8B,CAAA,CAAAI,WAAA,CAAAC,IAAA,MAAAnC,CAAA,cAAAA,CAAA,mBAAAsB,KAAA,CAAAC,IAAA,CAAAO,CAAA,OAAA9B,CAAA,+DAAAoC,IAAA,CAAApC,CAAA,UAAAyB,iBAAA,CAAAK,CAAA,EAAAC,MAAA;AAAA,SAAAN,kBAAAZ,GAAA,EAAAwB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAxB,GAAA,CAAAyB,MAAA,EAAAD,GAAA,GAAAxB,GAAA,CAAAyB,MAAA,WAAA5B,CAAA,MAAA6B,IAAA,OAAAjB,KAAA,CAAAe,GAAA,GAAA3B,CAAA,GAAA2B,GAAA,EAAA3B,CAAA,IAAA6B,IAAA,CAAA7B,CAAA,IAAAG,GAAA,CAAAH,CAAA,UAAA6B,IAAA;AAAA,SAAAX,sBAAAjC,CAAA,EAAA6C,CAAA,QAAA5C,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,OAAAuC,CAAA,OAAAX,CAAA,iBAAApB,CAAA,IAAAd,CAAA,GAAAA,CAAA,CAAAa,IAAA,CAAAd,CAAA,GAAA+C,IAAA,QAAAF,CAAA,QAAArC,MAAA,CAAAP,CAAA,MAAAA,CAAA,UAAA6C,CAAA,uBAAAA,CAAA,IAAAhD,CAAA,GAAAiB,CAAA,CAAAD,IAAA,CAAAb,CAAA,GAAA+C,IAAA,MAAAzC,CAAA,CAAA0C,IAAA,CAAAnD,CAAA,CAAAoD,KAAA,GAAA3C,CAAA,CAAAoC,MAAA,KAAAE,CAAA,GAAAC,CAAA,iBAAA9C,CAAA,IAAAmC,CAAA,OAAA9B,CAAA,GAAAL,CAAA,yBAAA8C,CAAA,YAAA7C,CAAA,eAAAU,CAAA,GAAAV,CAAA,cAAAO,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAAwB,CAAA,QAAA9B,CAAA,aAAAE,CAAA;AAAA,SAAAyB,gBAAAd,GAAA,QAAAS,KAAA,CAAAE,OAAA,CAAAX,GAAA,UAAAA,GAAA;AAE1C,IAAMiC,MAAM,GAAG;EACX,GAAG,EAAE;IACDX,IAAI,EAAE,IAAI;IACVY,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI;EACxC,CAAC;EACD,GAAG,EAAE;IACDZ,IAAI,EAAE,KAAK;IACXY,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI;EACxB,CAAC;EACD,GAAG,EAAE;IACDZ,IAAI,EAAE,IAAI;IACVY,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI;EACxB,CAAC;EACD,GAAG,EAAE;IACDZ,IAAI,EAAE,IAAI;IACVY,QAAQ,EAAE,CAAC,GAAG;EAClB;AACJ,CAAC;AAED,IAAMC,KAAK,GAAG;EACVC,IAAI,EAAE;IACFC,KAAK,EAAE,MAAM;IACbL,KAAK,EAAE,MAAM;IACbM,UAAU,EAAE,wBAAwB;IACpCC,KAAK,EAAE;EACX,CAAC;EACDC,IAAI,EAAE;IACFH,KAAK,EAAE,MAAM;IACbL,KAAK,EAAE,MAAM;IACbM,UAAU,EAAE,WAAW;IACvBC,KAAK,EAAE;EACX,CAAC;EACDE,IAAI,EAAE;IACFJ,KAAK,EAAE,MAAM;IACbL,KAAK,EAAE,MAAM;IACbM,UAAU,EAAE,yBAAyB;IACrCC,KAAK,EAAE;EACX,CAAC;EACDG,IAAI,EAAE;IACFL,KAAK,EAAE,MAAM;IACbL,KAAK,EAAE,MAAM;IACbM,UAAU,EAAE,YAAY;IACxBC,KAAK,EAAE;EACX;AACJ,CAAC;AACD;AACA,IAAMI,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,IAAI,EAAEC,UAAU,EAAK;EAC1C,IAAIC,UAAU,GAAG,EAAE;EACnB,IAAIF,IAAI,aAAJA,IAAI,eAAJA,IAAI,CAAEnB,MAAM,EAAE;IACdmB,IAAI,CAACG,GAAG,CAAC,UAAAC,CAAC,EAAI;MACV,IAAMC,IAAI,GAA6BD,CAAC,CAAlCC,IAAI;QAAEC,KAAK,GAAsBF,CAAC,CAA5BE,KAAK;QAAEhB,QAAQ,GAAYc,CAAC,CAArBd,QAAQ;QAAEF,KAAK,GAAKgB,CAAC,CAAXhB,KAAK;MAElC,IAAIE,QAAQ,KAAK,IAAI,EAAE;QACnB,IAAIiB,MAAM,CAACF,IAAI,CAAC,KAAK,GAAG,EAAE;UACtBf,QAAQ,GAAG,IAAI;UACfF,KAAK,OAAAoB,MAAA,CAAOpB,KAAK,CAACqB,IAAI,CAAC,GAAG,CAAC,MAAG;QAClC,CAAC,MAAM;UACHnB,QAAQ,GAAG,MAAM;UACjBF,KAAK,QAAAoB,MAAA,CAAQpB,KAAK,OAAI;QAC1B;MACJ;MACA,IAAIsB,KAAK,MAAAF,MAAA,CAAMF,KAAK,OAAAE,MAAA,CAAIlB,QAAQ,OAAAkB,MAAA,CAAIpB,KAAK,CAAE;MAC3Cc,UAAU,GAAGA,UAAU,MAAAM,MAAA,CAAMN,UAAU,OAAAM,MAAA,CAAIP,UAAU,OAAAO,MAAA,CAAIE,KAAK,IAAKA,KAAK;IAC5E,CAAC,CAAC;EACN;EAEA,OAAOR,UAAU;AACrB,CAAC;;AAED;AACA,IAAMS,KAAK,GAAG,SAARA,KAAKA,CAAGC,KAAK,EAAI;EACnB,IAAQC,OAAO,GAA8BD,KAAK,CAA1CC,OAAO;IAAEzB,KAAK,GAAuBwB,KAAK,CAAjCxB,KAAK;IAAE0B,MAAM,GAAeF,KAAK,CAA1BE,MAAM;IAAEC,QAAQ,GAAKH,KAAK,CAAlBG,QAAQ;EAExC,oBACIlG,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAA+F,MAAU;IACPH,MAAM,EAAEA,MAAO;IACf1B,KAAK,EAAEA,KAAM;IACb8B,KAAK,EAAE;MAAEC,KAAK,EAAE;IAAO,CAAE;IACzBJ,QAAQ,EAAEA,QAAS;IACnBF,OAAO,EAAEA;EAAQ,CACpB,CAAC;AAEV,CAAC;;AAED;AACA,IAAMO,QAAQ,GAAG,SAAXA,QAAQA,CAAGR,KAAK,EAAI;EACtB,IAAQxB,KAAK,GAAgCwB,KAAK,CAA1CxB,KAAK;IAAEyB,OAAO,GAAuBD,KAAK,CAAnCC,OAAO;IAAEC,MAAM,GAAeF,KAAK,CAA1BE,MAAM;IAAEC,QAAQ,GAAKH,KAAK,CAAlBG,QAAQ;EAExC,oBACIlG,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAA+F,MAAU;IACP7B,KAAK,EAAEA,KAAM;IACb0B,MAAM,EAAEA,MAAO;IACfI,KAAK,EAAE;MAAEC,KAAK,EAAE;IAAO,CAAE;IACzBJ,QAAQ,EAAEA,QAAS;IACnBF,OAAO,EAAEA;EAAQ,CACpB,CAAC;AAEV,CAAC;;AAED;AACA,IAAMQ,KAAK,GAAG,SAARA,KAAKA,CAAGT,KAAK,EAAI;EACnB,IAAQP,IAAI,GAAiDO,KAAK,CAA1DP,IAAI;IAAEf,QAAQ,GAAuCsB,KAAK,CAApDtB,QAAQ;IAAEuB,OAAO,GAA8BD,KAAK,CAA1CC,OAAO;IAAEzB,KAAK,GAAuBwB,KAAK,CAAjCxB,KAAK;IAAE0B,MAAM,GAAeF,KAAK,CAA1BE,MAAM;IAAEC,SAAQ,GAAKH,KAAK,CAAlBG,QAAQ;EAExD,IAAIV,IAAI,KAAK,GAAG,EAAE;IACd,oBACIxF,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAA+F,MAAU;MACPH,MAAM,EAAEA,MAAO;MACf1B,KAAK,EAAEA,KAAM;MACbkC,IAAI,EAAEhC,QAAQ,KAAK,IAAI,GAAG,UAAU,GAAG,IAAK;MAC5C4B,KAAK,EAAE;QAAEC,KAAK,EAAE;MAAO,CAAE;MACzBJ,QAAQ,EAAEA,SAAS;MACnBF,OAAO,EAAEA;IAAQ,CACpB,CAAC;EAEV;EAEA,IAAIR,IAAI,KAAK,GAAG,EAAE;IACd,oBACIxF,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAA+F,MAAU;MACPH,MAAM,EAAEA,MAAO;MACf1B,KAAK,EAAEA,KAAM;MACb8B,KAAK,EAAE;QAAEC,KAAK,EAAE;MAAO,CAAE;MACzBJ,QAAQ,EAAEA,SAAS;MACnBF,OAAO,EAAE,CACL;QAAEpB,KAAK,EAAE,GAAG;QAAEL,KAAK,EAAE;MAAE,CAAC,EACxB;QAAEK,KAAK,EAAE,GAAG;QAAEL,KAAK,EAAE;MAAE,CAAC;IAC1B,CACL,CAAC;EAEV;EAEA,oBAAOvE,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAAqG,KAAK;IAACnC,KAAK,EAAEA,KAAM;IAAC0B,MAAM,EAAEA,MAAO;IAACC,QAAQ,EAAE,SAAAA,SAAA/E,CAAC;MAAA,OAAI+E,SAAQ,CAAC/E,CAAC,CAACwF,MAAM,CAACpC,KAAK,CAAC;IAAA;EAAC,CAAE,CAAC;AAC3F,CAAC;AAED,IAAMqC,KAAK,GAAG,SAARA,KAAKA,CAAGb,KAAK,EAAI;EACnB,IAAQT,GAAG,GAAsCS,KAAK,CAA9CT,GAAG;IAAEuB,SAAS,GAA2Bd,KAAK,CAAzCc,SAAS;IAAEC,QAAQ,GAAiBf,KAAK,CAA9Be,QAAQ;IAAEC,UAAU,GAAKhB,KAAK,CAApBgB,UAAU;EAC5C,IAAAC,SAAA,GAAoC,IAAAC,eAAQ,EAAC,EAAE,CAAC;IAAAC,UAAA,GAAA9D,cAAA,CAAA4D,SAAA;IAAzCG,UAAU,GAAAD,UAAA;IAAEE,aAAa,GAAAF,UAAA;EAChC,IAAAG,UAAA,GAAkC,IAAAJ,eAAQ,EAAC,EAAE,CAAC;IAAAK,UAAA,GAAAlE,cAAA,CAAAiE,UAAA;IAAvCE,SAAS,GAAAD,UAAA;IAAEE,YAAY,GAAAF,UAAA;EAC9B,IAAAG,UAAA,GAAoC,IAAAR,eAAQ,EAAC,KAAK,CAAC;IAAAS,UAAA,GAAAtE,cAAA,CAAAqE,UAAA;IAA5CrC,UAAU,GAAAsC,UAAA;IAAEC,aAAa,GAAAD,UAAA;EAEhC,IAAAE,gBAAS,EAAC,YAAM;IACZR,aAAa,CAAC,CACV;MACIS,GAAG,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC;IAC5B,CAAC,CACJ,CAAC;IAEF,IAAIjB,QAAQ,EAAE;MACV,IAAAkB,eAAA,GAAqBnB,SAAS,CAACoB,IAAI,CAAC,UAAA1C,CAAC;UAAA,OAAIA,CAAC,CAAChB,KAAK,KAAKuC,QAAQ;QAAA,EAAC;QAAxDjC,UAAU,GAAAmD,eAAA,CAAVnD,UAAU;MAChBqD,4BAA4B,CAACrD,UAAU,CAAC;IAC5C;EACJ,CAAC,EAAE,CAACiC,QAAQ,CAAC,CAAC;EAEd,IAAMoB,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAGC,SAAS,EAAI;IAC9C,IAAMC,GAAG,0EAA0E;IACnF,IAAMC,MAAM,GAAG;MACXF,SAAS,EAATA;IACJ,CAAC;IAEDG,gBAAI,CAAC7G,GAAG,CAAC2G,GAAG,EAAE;MAAEG,IAAI,EAAEF;IAAO,CAAC,CAAC,CAACG,IAAI,CAAC,UAAAC,GAAG,EAAI;MAAA,IAAAC,SAAA;MACxC,IAAIC,UAAU,GAAG,EAAE;MACnB,IAAI,CAAAF,GAAG,aAAHA,GAAG,uBAAHA,GAAG,CAAEG,MAAM,MAAK,CAAC,IAAIH,GAAG,aAAHA,GAAG,gBAAAC,SAAA,GAAHD,GAAG,CAAEtD,IAAI,cAAAuD,SAAA,eAATA,SAAA,CAAW1E,MAAM,EAAE;QACxCyE,GAAG,CAACtD,IAAI,CAACG,GAAG,CAAC,UAAAC,CAAC,EAAI;UACdoD,UAAU,CAACrE,IAAI,CAAC;YAAEM,KAAK,EAAEW,CAAC,CAAC1B,IAAI;YAAEU,KAAK,EAAEgB,CAAC,CAACsD,UAAU;YAAEC,MAAM,EAAEvD;UAAE,CAAC,CAAC;QACtE,CAAC,CAAC;MACN;MACAiC,YAAY,CAACmB,UAAU,CAAC;IAC5B,CAAC,CAAC;EACN,CAAC;;EAED;EACA,IAAMI,aAAa,GAAG,SAAhBA,aAAaA,CAAIxE,KAAK,EAAEyE,KAAK,EAAK;IAAA,IAAAC,eAAA,EAAAC,YAAA;IACpC,IAAIC,WAAW,GAAA7G,kBAAA,CAAO6E,UAAU,CAAC;IACjCgC,WAAW,CAACH,KAAK,CAAC,CAACvD,KAAK,GAAGlB,KAAK;IAChC4E,WAAW,CAACH,KAAK,CAAC,CAACI,YAAY,GAAG,EAAE;;IAEpC;IACA,IAAAC,IAAA,GAAyB,EAAAJ,eAAA,GAAA1B,SAAS,CAACU,IAAI,CAAC,UAAA1C,CAAC;QAAA,OAAIA,CAAC,CAAChB,KAAK,KAAKA,KAAK;MAAA,EAAC,cAAA0E,eAAA,uBAAtCA,eAAA,CAAwCH,MAAM,KAAI,CAAC,CAAC;MAAvEtD,IAAI,GAAA6D,IAAA,CAAJ7D,IAAI;MAAE8D,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACpBH,WAAW,CAACH,KAAK,CAAC,CAACxD,IAAI,GAAGA,IAAI;IAC9B2D,WAAW,CAACH,KAAK,CAAC,CAACM,QAAQ,GAAGA,QAAQ,GAChCA,QAAQ,CAAChE,GAAG,CAAC,UAAAC,CAAC;MAAA,OAAK;QAAEX,KAAK,EAAEW,CAAC,CAACsC,GAAG;QAAEtD,KAAK,EAAEgB,CAAC,CAAChB;MAAM,CAAC;IAAA,CAAC,CAAC,GACrD,EAAE;;IAER;IACA,IAAIyB,OAAO,GAAG,CAAAxB,MAAM,aAANA,MAAM,gBAAA0E,YAAA,GAAN1E,MAAM,CAAGgB,IAAI,CAAC,cAAA0D,YAAA,uBAAdA,YAAA,CAAgBzE,QAAQ,KAAI,EAAE;IAC5CuB,OAAO,GAAGA,OAAO,CAACV,GAAG,CAAC,UAAAC,CAAC;MAAA,OAAK;QAAEX,KAAK,EAAEW,CAAC;QAAEhB,KAAK,EAAEgB;MAAE,CAAC;IAAA,CAAC,CAAC;IACpD4D,WAAW,CAACH,KAAK,CAAC,CAACO,YAAY,GAAGvD,OAAO;;IAEzC;IACAmD,WAAW,CAACH,KAAK,CAAC,CAACvE,QAAQ,GAAG,EAAE;IAChC0E,WAAW,CAACH,KAAK,CAAC,CAACzE,KAAK,GAAG,EAAE;IAE7B6C,aAAa,CAAC+B,WAAW,CAAC;EAC9B,CAAC;;EAED;EACA,IAAMK,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIjF,KAAK,EAAEyE,KAAK,EAAK;IACvC,IAAIG,WAAW,GAAA7G,kBAAA,CAAO6E,UAAU,CAAC;IACjCgC,WAAW,CAACH,KAAK,CAAC,CAACvE,QAAQ,GAAGF,KAAK;IACnC4E,WAAW,CAACH,KAAK,CAAC,CAACS,eAAe,GAAG,EAAE;IACvCN,WAAW,CAACH,KAAK,CAAC,CAACzE,KAAK,GAAGA,KAAK,KAAK,IAAI,GAAG,EAAE,GAAG,EAAE;IAEnD6C,aAAa,CAAC+B,WAAW,CAAC;EAC9B,CAAC;EAED,IAAMO,aAAa,GAAG,SAAhBA,aAAaA,CAAInF,KAAK,EAAEyE,KAAK,EAAK;IACpC,IAAIG,WAAW,GAAA7G,kBAAA,CAAO6E,UAAU,CAAC;IACjCgC,WAAW,CAACH,KAAK,CAAC,CAACzE,KAAK,GAAGA,KAAK;IAChC4E,WAAW,CAACH,KAAK,CAAC,CAACW,YAAY,GAAG,EAAE;IAEpCvC,aAAa,CAAC+B,WAAW,CAAC;EAC9B,CAAC;EAED,IAAMS,UAAU,GAAG,SAAbA,UAAUA,CAAA,EAAS;IACrB,IAAIT,WAAW,GAAA7G,kBAAA,CAAO6E,UAAU,CAAC;IACjC,IAAI0C,KAAK,GAAG,KAAK;IACjBV,WAAW,CAAC7D,GAAG,CAAC,UAAAC,CAAC,EAAI;MACjB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAACD,GAAG,CAAC,UAAAnB,CAAC,EAAI;QACpC,IAAI,CAACoB,CAAC,CAACpB,CAAC,CAAC,EAAE;UACPoB,CAAC,IAAAI,MAAA,CAAIxB,CAAC,aAAU,GAAG,OAAO;UAC1B0F,KAAK,GAAG,IAAI;QAChB;MACJ,CAAC,CAAC;IACN,CAAC,CAAC;IAEFzC,aAAa,CAAC+B,WAAW,CAAC;IAE1B,OAAOU,KAAK;EAChB,CAAC;EAED,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAA,EAAS;IACnB,IAAID,KAAK,GAAGD,UAAU,CAAC,CAAC;IACxB,IAAI,CAACC,KAAK,EAAE;MACR,IAAIxE,UAAU,GAAGH,eAAe,CAACiC,UAAU,EAAE/B,UAAU,CAAC;MACxD2B,UAAU,CAAC1B,UAAU,CAAC;IAC1B,CAAC,MAAM;MACH0E,aAAO,CAACC,IAAI,CAAC,UAAU,CAAC;IAC5B;EACJ,CAAC;EAED,oBACIhK,MAAA,YAAAmG,aAAA,CAAAnG,MAAA,YAAAiK,QAAA,qBACIjK,MAAA,YAAAmG,aAAA;IAAK+D,SAAS,EAAE,IAAAC,sBAAU,EAAC,iBAAiB;EAAE,gBAC1CnK,MAAA,YAAAmG,aAAA,CAAC7F,cAAA,WAAa;IAACsE,KAAK,EAAC;EAAM,gBACvB5E,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAA+J,KAAK,CAACC,KAAK;IACRhE,KAAK,EAAE;MAAEiE,WAAW,EAAE;IAAE,CAAE;IAC1BpE,QAAQ,EAAE,SAAAA,SAAA/E,CAAC;MAAA,OAAIwG,aAAa,CAACxG,CAAC,CAACwF,MAAM,CAACpC,KAAK,CAAC;IAAA,CAAC;IAC7CA,KAAK,EAAEa;EAAW,gBAElBpF,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAA+J,KAAK;IAAC7F,KAAK,EAAC;EAAK,GAAC,cAAS,CAAC,eAC7BvE,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAA+J,KAAK;IAAC7F,KAAK,EAAC;EAAI,GAAC,cAAS,CAClB,CACF,CAAC,eAChBvE,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAAkK,MAAM;IAAC/E,IAAI,EAAC,SAAS;IAACgF,OAAO,EAAEV;EAAS,GAAC,cAElC,CACP,CAAC,eAEN9J,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAAuG,KAAS;IACNsD,SAAS,EAAE,IAAAC,sBAAU,EAAC,mBAAmB,CAAE;IAC3CM,IAAI,EAAC,QAAQ;IACbC,OAAO,EAAE,CACL;MACIC,KAAK,EAAE,IAAI;MACXC,SAAS,EAAE,KAAK;MAChBtE,KAAK,EAAE,EAAE;MACTuE,KAAK,EAAE,QAAQ;MACfC,MAAM,EAAE,SAAAA,OAACC,CAAC,EAAEC,EAAE,EAAEhC,KAAK;QAAA,OAAKA,KAAK,GAAG,CAAC;MAAA;IACvC,CAAC,EACD;MACI2B,KAAK,eAAE3K,MAAA,YAAAmG,aAAA,CAAC7F,cAAA,WAAa;QAACsE,KAAK,EAAC;MAAI,CAAE,CAAC;MACnCgG,SAAS,EAAE,OAAO;MAClBtE,KAAK,EAAE,GAAG;MACVuE,KAAK,EAAE,MAAM;MACbC,MAAM,EAAE,SAAAA,OAACG,IAAI,EAAEC,MAAM,EAAElC,KAAK;QAAA,oBACxBhJ,MAAA,YAAAmG,aAAA,CAACL,KAAK;UACFvB,KAAK,EAAE0G,IAAK;UACZhF,MAAM,EAAEiF,MAAM,CAAC9B,YAAa;UAC5BpD,OAAO,EAAEuB,SAAU;UACnBrB,QAAQ,EAAE,SAAAA,SAAA3B,KAAK;YAAA,OAAIwE,aAAa,CAACxE,KAAK,EAAEyE,KAAK,CAAC;UAAA;QAAC,CAClD,CAAC;MAAA;IAEV,CAAC,EACD;MACI2B,KAAK,eAAE3K,MAAA,YAAAmG,aAAA,CAAC7F,cAAA,WAAa;QAACsE,KAAK,EAAC;MAAK,CAAE,CAAC;MACpCgG,SAAS,EAAE,UAAU;MACrBtE,KAAK,EAAE,GAAG;MACVuE,KAAK,EAAE,MAAM;MACbC,MAAM,EAAE,SAAAA,OAACG,IAAI,EAAEC,MAAM,EAAElC,KAAK,EAAK;QAC7B,oBACIhJ,MAAA,YAAAmG,aAAA,CAACI,QAAQ;UACLhC,KAAK,EAAE0G,IAAK;UACZhF,MAAM,EAAEiF,MAAM,CAACzB,eAAgB;UAC/BzD,OAAO,EAAEkF,MAAM,CAAC3B,YAAY,IAAI,EAAG;UACnCrD,QAAQ,EAAE,SAAAA,SAAA3B,KAAK;YAAA,OAAIiF,gBAAgB,CAACjF,KAAK,EAAEyE,KAAK,CAAC;UAAA;QAAC,CACrD,CAAC;MAEV;IACJ,CAAC,EACD;MACI2B,KAAK,eAAE3K,MAAA,YAAAmG,aAAA,CAAC7F,cAAA,WAAa;QAACsE,KAAK,EAAC;MAAG,CAAE,CAAC;MAClCgG,SAAS,EAAE,OAAO;MAClBtE,KAAK,EAAE,GAAG;MACVuE,KAAK,EAAE,MAAM;MACbC,MAAM,EAAE,SAAAA,OAACG,IAAI,EAAEC,MAAM,EAAElC,KAAK,EAAK;QAC7B,oBACIhJ,MAAA,YAAAmG,aAAA,CAACK,KAAK;UACFjC,KAAK,EAAE0G,IAAK;UACZhF,MAAM,EAAEiF,MAAM,CAACvB,YAAa;UAC5BnE,IAAI,EAAE0F,MAAM,CAAC1F,IAAI,IAAIE,MAAM,CAACwF,MAAM,CAAC1F,IAAI,CAAE;UACzCf,QAAQ,EAAEyG,MAAM,CAACzG,QAAS;UAC1ByG,MAAM,EAAEA,MAAO;UACflF,OAAO,EAAEkF,MAAM,CAAC5B,QAAQ,IAAI,EAAG;UAC/BpD,QAAQ,EAAE,SAAAA,SAAA3B,KAAK;YAAA,OAAImF,aAAa,CAACnF,KAAK,EAAEyE,KAAK,CAAC;UAAA;QAAC,CAClD,CAAC;MAEV;IACJ,CAAC,EACD;MACI2B,KAAK,EAAE,IAAI;MACXC,SAAS,EAAE,GAAG;MACdtE,KAAK,EAAE,EAAE;MACTuE,KAAK,EAAE,MAAM;MACbC,MAAM,EAAE,SAAAA,OAACC,CAAC,EAAEC,EAAE,EAAEhC,KAAK;QAAA,oBACjBhJ,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAAkK,MAAM;UACH/E,IAAI,EAAC,MAAM;UACX2F,QAAQ,EAAEhE,UAAU,CAACnD,MAAM,KAAK,CAAE;UAClCqC,KAAK,EAAE;YAAE+E,OAAO,EAAE;UAAE,CAAE;UACtBZ,OAAO,EAAE,SAAAA,QAAA,EAAM;YACX,IAAIrB,WAAW,GAAA7G,kBAAA,CAAO6E,UAAU,CAAC;YACjCgC,WAAW,CAACkC,MAAM,CAACrC,KAAK,EAAE,CAAC,CAAC;YAC5B5B,aAAa,CAAC+B,WAAW,CAAC;UAC9B;QAAE,GACL,cAEO,CAAC;MAAA;IAEjB,CAAC,CACH;IACFhC,UAAU,EAAEA,UAAW;IACvBmE,UAAU,EAAE,KAAM;IAClBC,OAAO,EAAE,KAAM;IACfC,MAAM,EAAE;MAAEC,CAAC,EAAEnG,GAAG,CAACoG,WAAW,CAAC,CAAC,CAACC,YAAY,GAAG;IAAI,CAAE;IACpDC,MAAM,EAAE,SAAAA,OAAA,EAAM;MACV,oBACI5L,MAAA,YAAAmG,aAAA;QACIqE,OAAO,EAAE,SAAAA,QAAA,EAAM;UACX,IAAIqB,YAAY,GAAGC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAAC7E,UAAU,CAAC,CAAC;UACzD0E,YAAY,CAACvH,IAAI,CAAC;YACduD,GAAG,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC;UAC5B,CAAC,CAAC;UACFX,aAAa,CAACyE,YAAY,CAAC;QAC/B;MAAE,GACL,eAEI,CAAC;IAEd;EAAE,CACL,CACH,CAAC;AAEX,CAAC;AACc,SAAAI,SAASlG,KAAK,EAAE;EAC3B,IAAQmG,OAAO,GAAKnG,KAAK,CAAjBmG,OAAO;EACf,IAAAC,SAAA,GAAgB,IAAAC,qBAAQ,EAAC,CAAC;IAAlB9G,GAAG,GAAA6G,SAAA,CAAH7G,GAAG;EACX,IAAA+G,UAAA,GAAgC,IAAApF,eAAQ,EAAC,EAAE,CAAC;IAAAqF,UAAA,GAAAlJ,cAAA,CAAAiJ,UAAA;IAArCvF,QAAQ,GAAAwF,UAAA;IAAEC,WAAW,GAAAD,UAAA;EAC5B,IAAAE,UAAA,GAAgC,IAAAvF,eAAQ,EAAC,EAAE,CAAC;IAAAwF,WAAA,GAAArJ,cAAA,CAAAoJ,UAAA;IAArCE,QAAQ,GAAAD,WAAA;IAAEE,WAAW,GAAAF,WAAA;EAC5B,IAAAG,WAAA,GAA8B,IAAA3F,eAAQ,EAAC,KAAK,CAAC;IAAA4F,WAAA,GAAAzJ,cAAA,CAAAwJ,WAAA;IAAtCE,OAAO,GAAAD,WAAA;IAAEE,UAAU,GAAAF,WAAA;EAC1B,IAAAG,WAAA,GAAoC,IAAA/F,eAAQ,EAAC,EAAE,CAAC;IAAAgG,WAAA,GAAA7J,cAAA,CAAA4J,WAAA;IAAzC7F,UAAU,GAAA8F,WAAA;IAAE7F,aAAa,GAAA6F,WAAA;EAChC,IAAAC,WAAA,GAAkC,IAAAjG,eAAQ,EAAC,EAAE,CAAC;IAAAkG,WAAA,GAAA/J,cAAA,CAAA8J,WAAA;IAAvCrG,SAAS,GAAAsG,WAAA;IAAEC,YAAY,GAAAD,WAAA;EAE9B,IAAME,aAAa,GAAG,IAAAC,aAAM,EAAC,CAAC;EAC9B,IAAMC,OAAO,GAAG,IAAAD,aAAM,EAAC,CAAC;EAExB,IAAA1F,gBAAS,EAAC,YAAM;IACZ4F,WAAW,CAAC,CAAC;IAEblI,GAAG,CAACmI,EAAE,CAAC,WAAW,EAAE,YAAM;MACtBD,WAAW,CAAC,CAAC;IACjB,CAAC,CAAC;IAEFH,aAAa,CAACK,OAAO,GAAG,IAAIC,yBAAa,CAAC;MACtCrI,GAAG,EAAHA,GAAG;MACHsI,SAAS,EAAE;IACf,CAAC,CAAC;IAEFL,OAAO,CAACG,OAAO,GAAG,IAAIG,gBAAI,CAAC;MAAEvI,GAAG,EAAHA;IAAI,CAAC,CAAC;IAEnC,OAAO,YAAM;MACT+H,aAAa,CAACK,OAAO,CAACI,OAAO,CAAC,CAAC;MAE/BP,OAAO,CAACG,OAAO,CAACI,OAAO,CAAC,CAAC;IAC7B,CAAC;EACL,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMN,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IACtB,IAAIO,UAAU,GAAG,EAAE;IACnBzI,GAAG,CAAC0I,YAAY,CAAC,CAAC,CAAC1I,GAAG,CAAC,UAAAR,KAAK,EAAI;MAC5B,IAAIA,KAAK,CAAC+C,GAAG,IAAInD,KAAK,CAACI,KAAK,CAAC+C,GAAG,CAAC,EAAE;QAC/BkG,UAAU,CAACzJ,IAAI,CAACI,KAAK,CAACI,KAAK,CAAC+C,GAAG,CAAC,CAAC;MACrC;IACJ,CAAC,CAAC;IACFuF,YAAY,CAACW,UAAU,CAAC;EAC5B,CAAC;EAED,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAGpG,GAAG,EAAI;IACzB0E,WAAW,CAAC1E,GAAG,CAAC;EACpB,CAAC;EAED,IAAMqG,aAAa,GAAG,SAAhBA,aAAaA,CAAGrG,GAAG,EAAI;IACzB0F,OAAO,CAACG,OAAO,CAACS,QAAQ,GAAGtG,GAAG;IAC9B8E,WAAW,CAAC9E,GAAG,CAAC;EACpB,CAAC;EAED,IAAMd,UAAU,GAAG,SAAbA,UAAUA,CAAG1B,UAAU,EAAI;IAC7B,IAAI,CAACyB,QAAQ,EAAE;MACX,OAAOiD,aAAO,CAACC,IAAI,CAAC,SAAS,CAAC;IAClC;IAEA,IAAIoE,QAAQ,GAAGb,OAAO,CAACG,OAAO,CAACW,MAAM,CAACC,WAAW,CAAC,CAAC;IACnD,IAAI,EAACF,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAEpK,MAAM,GAAE;MACnB,OAAO+F,aAAO,CAACC,IAAI,CAAC,SAAS,CAAC;IAClC;IAEA,IAAIuE,QAAQ,GAAGH,QAAQ,CAAC,CAAC,CAAC,CAACI,WAAW,CAAC,CAAC;IACxC,IAAIC,OAAO,GAAG,EAAE;IAChB,IAAIC,WAAW,GAAGH,QAAQ,CAACI,cAAc,CAAC,CAAC;;IAE3C;IACA,IAAIjC,QAAQ,KAAK,QAAQ,EAAE;MACvB,IAAIkC,eAAe,GAAG,IAAIC,mBAAU,CAACN,QAAQ,CAAC;MAC9CG,WAAW,GAAGE,eAAe,CAACD,cAAc,CAAC,CAAC;IAClD;IAEAD,WAAW,CAAC,CAAC,CAAC,CAACI,OAAO,CAAC,UAACvJ,CAAC,EAAEnD,CAAC,EAAK;MAC7B,IAAIA,CAAC,KAAK,CAAC,EAAE;QACTqM,OAAO,OAAA9I,MAAA,CAAOJ,CAAC,CAAC,CAAC,CAAC,OAAAI,MAAA,CAAIJ,CAAC,CAAC,CAAC,CAAC,CAAE;MAChC,CAAC,MAAM;QACHkJ,OAAO,SAAA9I,MAAA,CAASJ,CAAC,CAAC,CAAC,CAAC,OAAAI,MAAA,CAAIJ,CAAC,CAAC,CAAC,CAAC,CAAE;MAClC;IACJ,CAAC,CAAC;IAEFwH,UAAU,CAAC,IAAI,CAAC;IAChB,IAAAgC,gBAAA,GAAgBlI,SAAS,CAACoB,IAAI,CAAC,UAAA1C,CAAC;QAAA,OAAIA,CAAC,CAAChB,KAAK,KAAKuC,QAAQ;MAAA,EAAC;MAAnDhC,KAAK,GAAAiK,gBAAA,CAALjK,KAAK;IACX,IAAIuD,MAAM,GAAG;MACT2G,QAAQ,EAAElK,KAAK;MACfmK,MAAM,EAAEnK,KAAK;MACboK,YAAY,EAAEpK,KAAK;MACnBO,UAAU,KAAAM,MAAA,CAAKN,UAAU,6CAAAM,MAAA,CAA0C8I,OAAO;IAC9E,CAAC;IACDpB,aAAa,CAACK,OAAO,CAACyB,YAAY,CAAC9G,MAAM,CAAC,CAACG,IAAI,CAAC,UAAArD,IAAI,EAAI;MACpDiC,aAAa,CAACjC,IAAI,CAAC;MACnB4H,UAAU,CAAC,KAAK,CAAC;IACrB,CAAC,CAAC;EACN,CAAC;EACD,oBACI/M,MAAA,YAAAmG,aAAA,CAAChG,MAAA,WAAK;IAACwK,KAAK,EAAC,sCAAQ;IAACuB,OAAO,EAAEA,OAAQ;IAAC5F,KAAK,EAAE;EAAI,gBAC/CtG,MAAA,YAAAmG,aAAA;IAAK+D,SAAS,EAAE,IAAAC,sBAAU,EAAC,iBAAiB;EAAE,gBAC1CnK,MAAA,YAAAmG,aAAA,CAAC5F,OAAA,WAAM;IACHyF,OAAO,EAAEa,SAAU;IACnB8D,KAAK,EAAC,0BAAM;IACZpG,KAAK,EAAEuC,QAAS;IAChBZ,QAAQ,EAAE+H;EAAc,CAC3B,CAAC,eAEFjO,MAAA,YAAAmG,aAAA,CAAC1F,YAAA,WAAW;IACRkK,KAAK,EAAC,0BAAM;IACZpG,KAAK,EAAEmI,QAAS;IAChBxG,QAAQ,EAAEgI,aAAc;IACxBlI,OAAO,EAAE,CACL;MAAEpB,KAAK,EAAE,IAAI;MAAEiD,GAAG,EAAE,SAAS;MAAEuH,QAAQ,EAAE,KAAK;MAAEC,IAAI,EAAE;IAAiB,CAAC,EACxE;MAAEzK,KAAK,EAAE,IAAI;MAAEiD,GAAG,EAAE,QAAQ;MAAEuH,QAAQ,EAAE,KAAK;MAAEC,IAAI,EAAE;IAAgB,CAAC,EACtE;MACIzK,KAAK,EAAE,OAAO;MACdiD,GAAG,EAAE,SAAS;MACduH,QAAQ,EAAE,KAAK;MACfC,IAAI,EAAE;IACV,CAAC;EACH,CACL,CACA,CAAC,eAENrP,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAAiP,IAAI,qBACDtP,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAAiP,IAAI,CAACC,OAAO;IAACC,GAAG,EAAC,0BAAM;IAAC3H,GAAG,EAAC;EAAG,gBAC5B7H,MAAA,YAAAmG,aAAA,CAACS,KAAK;IACFtB,GAAG,EAAEA,GAAI;IACTwB,QAAQ,EAAEA,QAAS;IACnBD,SAAS,EAAEA,SAAU;IACrBE,UAAU,EAAEA;EAAW,CAC1B,CACS,CAAC,eACf/G,MAAA,YAAAmG,aAAA,CAAC9F,KAAA,CAAAiP,IAAI,CAACC,OAAO;IAACC,GAAG,EAAC,0BAAM;IAAC3H,GAAG,EAAC;EAAG,gBAC5B7H,MAAA,YAAAmG,aAAA,CAAC3F,MAAA,WAAO;IACJkK,OAAO,EAAE,CACL;MACIC,KAAK,EAAE,IAAI;MACXC,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;MAC9BtE,KAAK,EAAE,GAAG;MACVwE,MAAM,EAAE,SAAAA,OAAAG,IAAI;QAAA,oBACRjL,MAAA,YAAAmG,aAAA;UAAGqE,OAAO,EAAE,SAAAA,QAAA;YAAA,OAAM6C,aAAa,CAACK,OAAO,CAAC+B,eAAe,CAACxE,IAAI,CAAC;UAAA;QAAC,GACzDA,IACF,CAAC;MAAA;IAEZ,CAAC,CACH;IACF6B,OAAO,EAAEA,OAAQ;IACjB3F,UAAU,EAAEA,UAAW;IACvBqE,MAAM,EAAE;MAAEC,CAAC,EAAEnG,GAAG,CAACoG,WAAW,CAAC,CAAC,CAACC,YAAY,GAAG;IAAI;EAAE,CACvD,CACS,CACZ,CACH,CAAC;AAEhB"}
|