leiting-bim 2.1.48 → 2.1.52
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/package.json +16 -2
- package/plugins/cesium-core/dist/cesium-core.mjs +587 -535
- package/plugins/cesium-core/dist/cesium-core.mjs.map +1 -0
- package/plugins/cesium-core/dist/cesium-core.umd.js +19 -18
- package/plugins/cesium-core/dist/cesium-core.umd.js.map +1 -0
- package/plugins/cesium-core/dist/components/BufferedHierarchicalAggregator.d.ts +76 -73
- package/plugins/cesium-vue/dist/_commonjsHelpers-DaMA6jEr.js +1 -0
- package/plugins/cesium-vue/dist/_commonjsHelpers-DaMA6jEr.js.map +1 -0
- package/plugins/cesium-vue/dist/components/basic-audio.js +3 -2
- package/plugins/cesium-vue/dist/components/basic-audio.js.map +1 -0
- package/plugins/cesium-vue/dist/components/basic-video.js +3 -2
- package/plugins/cesium-vue/dist/components/basic-video.js.map +1 -0
- package/plugins/cesium-vue/dist/components/card-carousel.js +2 -1
- package/plugins/cesium-vue/dist/components/card-carousel.js.map +1 -0
- package/plugins/cesium-vue/dist/components/card-content.js +13 -12
- package/plugins/cesium-vue/dist/components/card-content.js.map +1 -0
- package/plugins/cesium-vue/dist/components/card-page.js +2 -1
- package/plugins/cesium-vue/dist/components/card-page.js.map +1 -0
- package/plugins/cesium-vue/dist/components/carousel-img.js +6 -5
- package/plugins/cesium-vue/dist/components/carousel-img.js.map +1 -0
- package/plugins/cesium-vue/dist/components/echarts-pro.js +2 -1
- package/plugins/cesium-vue/dist/components/echarts-pro.js.map +1 -0
- package/plugins/cesium-vue/dist/components/marker-bubble.js +5 -4
- package/plugins/cesium-vue/dist/components/marker-bubble.js.map +1 -0
- package/plugins/cesium-vue/dist/components/marker-default.js +6 -5
- package/plugins/cesium-vue/dist/components/marker-default.js.map +1 -0
- package/plugins/cesium-vue/dist/components/marker-html.js +6 -5
- package/plugins/cesium-vue/dist/components/marker-html.js.map +1 -0
- package/plugins/cesium-vue/dist/components/marker-manage.js +112 -94
- package/plugins/cesium-vue/dist/components/marker-manage.js.map +1 -0
- package/plugins/cesium-vue/dist/components/marker-text.js +6 -5
- package/plugins/cesium-vue/dist/components/marker-text.js.map +1 -0
- package/plugins/cesium-vue/dist/components/measurement.js +4 -3
- package/plugins/cesium-vue/dist/components/measurement.js.map +1 -0
- package/plugins/cesium-vue/dist/components/position-picker/index.d.ts +58 -0
- package/plugins/cesium-vue/dist/components/position-picker.d.ts +6 -0
- package/plugins/cesium-vue/dist/components/position-picker.js +243 -0
- package/plugins/cesium-vue/dist/components/position-picker.js.map +1 -0
- package/plugins/cesium-vue/dist/create-DynflqE1.js +1 -0
- package/plugins/cesium-vue/dist/create-DynflqE1.js.map +1 -0
- package/plugins/cesium-vue/dist/{index-B03tSn8_.js → index-C0pspk3x.js} +3 -2
- package/plugins/cesium-vue/dist/index-C0pspk3x.js.map +1 -0
- package/plugins/cesium-vue/dist/index-CUs_hd1V.js +1 -0
- package/plugins/cesium-vue/dist/index-CUs_hd1V.js.map +1 -0
- package/plugins/cesium-vue/dist/index.d.ts +3 -1
- package/plugins/cesium-vue/dist/index.js +31 -27
- package/plugins/cesium-vue/dist/index.js.map +1 -0
- package/plugins/cesium-vue/package.json +4 -0
- package/plugins/theme-chalk/dist/debug.log +1 -0
- package/plugins/.gitmodules +0 -4
- package/plugins/README.md +0 -2
- package/plugins/build.cjs +0 -63
- package/plugins/cesium-core/pnpm-lock.yaml +0 -872
- package/plugins/cesium-core/src/components/BufferedHierarchicalAggregator.ts +0 -546
- package/plugins/cesium-core/src/components/HtmlOverlayLabelPool.ts +0 -489
- package/plugins/cesium-core/src/components/MarkerEvent.ts +0 -92
- package/plugins/cesium-core/src/components/Material/MaterialManager.ts +0 -129
- package/plugins/cesium-core/src/components/Material/help/PolylineFlowMaterialProperty.ts +0 -116
- package/plugins/cesium-core/src/components/Material/help/dynamicImgMaterial.ts +0 -236
- package/plugins/cesium-core/src/components/Material/index.ts +0 -3
- package/plugins/cesium-core/src/components/TooltipManager.ts +0 -52
- package/plugins/cesium-core/src/components/draw/DrawTool.ts +0 -55
- package/plugins/cesium-core/src/components/draw/handlers/CircleDrawer.ts +0 -159
- package/plugins/cesium-core/src/components/draw/handlers/LineDrawer.ts +0 -113
- package/plugins/cesium-core/src/components/draw/handlers/PointDrawer.ts +0 -70
- package/plugins/cesium-core/src/components/draw/handlers/PolygonDrawer.ts +0 -112
- package/plugins/cesium-core/src/components/draw/handlers/RectangleDrawer.ts +0 -115
- package/plugins/cesium-core/src/components/draw/types.ts +0 -28
- package/plugins/cesium-core/src/components/entity/EntityLayer.ts +0 -453
- package/plugins/cesium-core/src/components/gltf/GLTFManage.ts +0 -799
- package/plugins/cesium-core/src/components/gltf/index.ts +0 -1
- package/plugins/cesium-core/src/components/measurement/MeasurementTool.ts +0 -416
- package/plugins/cesium-core/src/components/measurement/handlers/AreaMeasure.ts +0 -552
- package/plugins/cesium-core/src/components/measurement/handlers/CircleMeasure.ts +0 -289
- package/plugins/cesium-core/src/components/measurement/handlers/CoordinateMeasure.ts +0 -139
- package/plugins/cesium-core/src/components/measurement/handlers/HorizontalMeasure.ts +0 -427
- package/plugins/cesium-core/src/components/measurement/handlers/PolylineDistanceMeasure.ts +0 -356
- package/plugins/cesium-core/src/components/measurement/handlers/RectangleMeasure.ts +0 -516
- package/plugins/cesium-core/src/components/measurement/handlers/RegularPolygonMeasure.ts +0 -472
- package/plugins/cesium-core/src/components/measurement/handlers/SpaceMeasure.ts +0 -250
- package/plugins/cesium-core/src/components/measurement/handlers/TerrainHeightMeasure.ts +0 -185
- package/plugins/cesium-core/src/components/measurement/handlers/TriangleMeasure.ts +0 -561
- package/plugins/cesium-core/src/components/measurement/handlers/VerticalMeasure.ts +0 -361
- package/plugins/cesium-core/src/components/measurement/index.ts +0 -13
- package/plugins/cesium-core/src/components/measurement/types.ts +0 -57
- package/plugins/cesium-core/src/components/primitive/PrimitiveManager.ts +0 -556
- package/plugins/cesium-core/src/components/roaming/CameraRoamTool.ts +0 -286
- package/plugins/cesium-core/src/components/roaming/PathRoamTool.ts +0 -174
- package/plugins/cesium-core/src/components/roaming/index.ts +0 -3
- package/plugins/cesium-core/src/components/roaming/types.ts +0 -71
- package/plugins/cesium-core/src/components/utils/convertGeoJsonToEntityData.ts +0 -98
- package/plugins/cesium-core/src/components/utils/uuid.ts +0 -7
- package/plugins/cesium-core/src/index.ts +0 -17
- package/plugins/cesium-core/src/test/measurement/index.html +0 -166
- package/plugins/cesium-core/src/test/roaming/c.gltf +0 -1
- package/plugins/cesium-core/src/test/roaming/f87cc3ea918a4b76bff2c88a3655eb1f.bin +0 -0
- package/plugins/cesium-core/src/test/roaming/index.html +0 -51
- package/plugins/cesium-core/src/test/roaming/path.html +0 -448
- package/plugins/cesium-core/src/test/roaming/view.html +0 -520
- package/plugins/cesium-core/stats.html +0 -4949
- package/plugins/cesium-core/tsconfig.json +0 -14
- package/plugins/cesium-core/vite.config.ts +0 -35
- package/plugins/cesium-vue/src/assets/icons/icon-001.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-002.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-003.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-004.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-005.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-006.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-007.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-008.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-009.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-010.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-011.png +0 -0
- package/plugins/cesium-vue/src/assets/icons/icon-012.png +0 -0
- package/plugins/cesium-vue/src/assets/img/Card3-BG.png +0 -0
- package/plugins/cesium-vue/src/assets/img/card_bg3.png +0 -0
- package/plugins/cesium-vue/src/components/basic-audio/index.ts +0 -6
- package/plugins/cesium-vue/src/components/basic-audio/src/BasicAudio.vue +0 -119
- package/plugins/cesium-vue/src/components/basic-audio/src/basicAudio.ts +0 -6
- package/plugins/cesium-vue/src/components/basic-video/index.ts +0 -7
- package/plugins/cesium-vue/src/components/basic-video/src/BasicVideo.vue +0 -58
- package/plugins/cesium-vue/src/components/basic-video/src/basicVideo.ts +0 -14
- package/plugins/cesium-vue/src/components/card-carousel/index.ts +0 -7
- package/plugins/cesium-vue/src/components/card-carousel/src/CardCarousel.vue +0 -124
- package/plugins/cesium-vue/src/components/card-carousel/src/cardCarousel.ts +0 -60
- package/plugins/cesium-vue/src/components/card-content/index.ts +0 -7
- package/plugins/cesium-vue/src/components/card-content/src/CardContent.vue +0 -41
- package/plugins/cesium-vue/src/components/card-content/src/cardContent.ts +0 -22
- package/plugins/cesium-vue/src/components/card-page/index.ts +0 -7
- package/plugins/cesium-vue/src/components/card-page/src/CardPage.vue +0 -102
- package/plugins/cesium-vue/src/components/card-page/src/cardPage.ts +0 -37
- package/plugins/cesium-vue/src/components/carousel-img/index.ts +0 -7
- package/plugins/cesium-vue/src/components/carousel-img/src/CarouselImg.vue +0 -84
- package/plugins/cesium-vue/src/components/carousel-img/src/carouselImg.ts +0 -8
- package/plugins/cesium-vue/src/components/echarts-pro/index.ts +0 -7
- package/plugins/cesium-vue/src/components/echarts-pro/src/EchartsPro.vue +0 -107
- package/plugins/cesium-vue/src/components/echarts-pro/src/echartsPro.ts +0 -12
- package/plugins/cesium-vue/src/components/echarts-pro/src/hook/useECharts.ts +0 -55
- package/plugins/cesium-vue/src/components/marker-bubble/index.ts +0 -7
- package/plugins/cesium-vue/src/components/marker-bubble/src/MarkerBubble.vue +0 -235
- package/plugins/cesium-vue/src/components/marker-bubble/src/markerBubble.ts +0 -35
- package/plugins/cesium-vue/src/components/marker-default/index.ts +0 -7
- package/plugins/cesium-vue/src/components/marker-default/src/MarkerDefault.vue +0 -19
- package/plugins/cesium-vue/src/components/marker-default/src/markerDefault.ts +0 -12
- package/plugins/cesium-vue/src/components/marker-html/index.ts +0 -7
- package/plugins/cesium-vue/src/components/marker-html/src/MarkerHtml.vue +0 -21
- package/plugins/cesium-vue/src/components/marker-html/src/markerHtml.ts +0 -12
- package/plugins/cesium-vue/src/components/marker-manage/index.ts +0 -9
- package/plugins/cesium-vue/src/components/marker-manage/src/components/MarkerManage.vue +0 -106
- package/plugins/cesium-vue/src/components/marker-manage/src/config/theme.ts +0 -8
- package/plugins/cesium-vue/src/components/marker-manage/src/core/MarkerManage.ts +0 -466
- package/plugins/cesium-vue/src/components/marker-manage/src/core/MarkerManagerCore.ts +0 -148
- package/plugins/cesium-vue/src/components/marker-manage/src/hook/useMarkerManage.ts +0 -45
- package/plugins/cesium-vue/src/components/marker-manage/src/type/markerManage.ts +0 -75
- package/plugins/cesium-vue/src/components/marker-manage/src/utils/themeTool.ts +0 -154
- package/plugins/cesium-vue/src/components/marker-text/index.ts +0 -7
- package/plugins/cesium-vue/src/components/marker-text/src/MarkerText.vue +0 -14
- package/plugins/cesium-vue/src/components/marker-text/src/markerText.ts +0 -10
- package/plugins/cesium-vue/src/components/measurement/index.ts +0 -7
- package/plugins/cesium-vue/src/components/measurement/src/Measurement.vue +0 -183
- package/plugins/cesium-vue/src/components/measurement/src/measurement.ts +0 -20
- package/plugins/cesium-vue/src/index.ts +0 -89
- package/plugins/cesium-vue/stats.html +0 -4949
- package/plugins/cesium-vue/tsconfig.json +0 -18
- package/plugins/cesium-vue/vite.config.ts +0 -62
- package/plugins/plugins/README.md +0 -2
- package/plugins/plugins/build.cjs +0 -63
- package/plugins/plugins/cesium-core/dist/cesium-core.mjs +0 -5881
- package/plugins/plugins/cesium-core/dist/cesium-core.mjs.map +0 -1
- package/plugins/plugins/cesium-core/dist/cesium-core.umd.js +0 -77
- package/plugins/plugins/cesium-core/dist/cesium-core.umd.js.map +0 -1
- package/plugins/plugins/cesium-core/dist/components/BufferedHierarchicalAggregator.d.ts +0 -73
- package/plugins/plugins/cesium-core/dist/components/HtmlOverlayLabelPool.d.ts +0 -152
- package/plugins/plugins/cesium-core/dist/components/MarkerEvent.d.ts +0 -38
- package/plugins/plugins/cesium-core/dist/components/Material/MaterialManager.d.ts +0 -49
- package/plugins/plugins/cesium-core/dist/components/Material/help/PolylineFlowMaterialProperty.d.ts +0 -10
- package/plugins/plugins/cesium-core/dist/components/Material/help/dynamicImgMaterial.d.ts +0 -16
- package/plugins/plugins/cesium-core/dist/components/Material/index.d.ts +0 -3
- package/plugins/plugins/cesium-core/dist/components/TooltipManager.d.ts +0 -11
- package/plugins/plugins/cesium-core/dist/components/draw/DrawTool.d.ts +0 -10
- package/plugins/plugins/cesium-core/dist/components/draw/handlers/CircleDrawer.d.ts +0 -16
- package/plugins/plugins/cesium-core/dist/components/draw/handlers/LineDrawer.d.ts +0 -14
- package/plugins/plugins/cesium-core/dist/components/draw/handlers/PointDrawer.d.ts +0 -12
- package/plugins/plugins/cesium-core/dist/components/draw/handlers/PolygonDrawer.d.ts +0 -14
- package/plugins/plugins/cesium-core/dist/components/draw/handlers/RectangleDrawer.d.ts +0 -13
- package/plugins/plugins/cesium-core/dist/components/draw/types.d.ts +0 -29
- package/plugins/plugins/cesium-core/dist/components/entity/EntityLayer.d.ts +0 -65
- package/plugins/plugins/cesium-core/dist/components/gltf/GLTFManage.d.ts +0 -141
- package/plugins/plugins/cesium-core/dist/components/gltf/index.d.ts +0 -1
- package/plugins/plugins/cesium-core/dist/components/measurement/MeasurementTool.d.ts +0 -34
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/AreaMeasure.d.ts +0 -23
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/CircleMeasure.d.ts +0 -21
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/CoordinateMeasure.d.ts +0 -16
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/HorizontalMeasure.d.ts +0 -25
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/PolylineDistanceMeasure.d.ts +0 -24
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/RectangleMeasure.d.ts +0 -22
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/RegularPolygonMeasure.d.ts +0 -23
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/SpaceMeasure.d.ts +0 -20
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/TerrainHeightMeasure.d.ts +0 -18
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/TriangleMeasure.d.ts +0 -24
- package/plugins/plugins/cesium-core/dist/components/measurement/handlers/VerticalMeasure.d.ts +0 -23
- package/plugins/plugins/cesium-core/dist/components/measurement/index.d.ts +0 -13
- package/plugins/plugins/cesium-core/dist/components/measurement/types.d.ts +0 -42
- package/plugins/plugins/cesium-core/dist/components/primitive/PrimitiveManager.d.ts +0 -50
- package/plugins/plugins/cesium-core/dist/components/roaming/CameraRoamTool.d.ts +0 -27
- package/plugins/plugins/cesium-core/dist/components/roaming/PathRoamTool.d.ts +0 -23
- package/plugins/plugins/cesium-core/dist/components/roaming/index.d.ts +0 -3
- package/plugins/plugins/cesium-core/dist/components/roaming/types.d.ts +0 -66
- package/plugins/plugins/cesium-core/dist/components/utils/convertGeoJsonToEntityData.d.ts +0 -1
- package/plugins/plugins/cesium-core/dist/components/utils/uuid.d.ts +0 -1
- package/plugins/plugins/cesium-core/dist/index.d.ts +0 -12
- package/plugins/plugins/cesium-core/package.json +0 -26
- package/plugins/plugins/cesium-core/pnpm-lock.yaml +0 -872
- package/plugins/plugins/cesium-core/src/components/BufferedHierarchicalAggregator.ts +0 -546
- package/plugins/plugins/cesium-core/src/components/HtmlOverlayLabelPool.ts +0 -489
- package/plugins/plugins/cesium-core/src/components/MarkerEvent.ts +0 -92
- package/plugins/plugins/cesium-core/src/components/Material/MaterialManager.ts +0 -129
- package/plugins/plugins/cesium-core/src/components/Material/help/PolylineFlowMaterialProperty.ts +0 -116
- package/plugins/plugins/cesium-core/src/components/Material/help/dynamicImgMaterial.ts +0 -236
- package/plugins/plugins/cesium-core/src/components/Material/index.ts +0 -3
- package/plugins/plugins/cesium-core/src/components/TooltipManager.ts +0 -52
- package/plugins/plugins/cesium-core/src/components/draw/DrawTool.ts +0 -55
- package/plugins/plugins/cesium-core/src/components/draw/handlers/CircleDrawer.ts +0 -159
- package/plugins/plugins/cesium-core/src/components/draw/handlers/LineDrawer.ts +0 -113
- package/plugins/plugins/cesium-core/src/components/draw/handlers/PointDrawer.ts +0 -70
- package/plugins/plugins/cesium-core/src/components/draw/handlers/PolygonDrawer.ts +0 -112
- package/plugins/plugins/cesium-core/src/components/draw/handlers/RectangleDrawer.ts +0 -115
- package/plugins/plugins/cesium-core/src/components/draw/types.ts +0 -28
- package/plugins/plugins/cesium-core/src/components/entity/EntityLayer.ts +0 -453
- package/plugins/plugins/cesium-core/src/components/gltf/GLTFManage.ts +0 -799
- package/plugins/plugins/cesium-core/src/components/gltf/index.ts +0 -1
- package/plugins/plugins/cesium-core/src/components/measurement/MeasurementTool.ts +0 -416
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/AreaMeasure.ts +0 -451
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/CircleMeasure.ts +0 -267
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/CoordinateMeasure.ts +0 -139
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/HorizontalMeasure.ts +0 -418
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/PolylineDistanceMeasure.ts +0 -352
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/RectangleMeasure.ts +0 -388
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/RegularPolygonMeasure.ts +0 -379
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/SpaceMeasure.ts +0 -246
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/TerrainHeightMeasure.ts +0 -185
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/TriangleMeasure.ts +0 -541
- package/plugins/plugins/cesium-core/src/components/measurement/handlers/VerticalMeasure.ts +0 -360
- package/plugins/plugins/cesium-core/src/components/measurement/index.ts +0 -13
- package/plugins/plugins/cesium-core/src/components/measurement/types.ts +0 -57
- package/plugins/plugins/cesium-core/src/components/primitive/PrimitiveManager.ts +0 -556
- package/plugins/plugins/cesium-core/src/components/roaming/CameraRoamTool.ts +0 -286
- package/plugins/plugins/cesium-core/src/components/roaming/PathRoamTool.ts +0 -174
- package/plugins/plugins/cesium-core/src/components/roaming/index.ts +0 -3
- package/plugins/plugins/cesium-core/src/components/roaming/types.ts +0 -71
- package/plugins/plugins/cesium-core/src/components/utils/convertGeoJsonToEntityData.ts +0 -98
- package/plugins/plugins/cesium-core/src/components/utils/uuid.ts +0 -7
- package/plugins/plugins/cesium-core/src/index.ts +0 -17
- package/plugins/plugins/cesium-core/src/test/measurement/index.html +0 -166
- package/plugins/plugins/cesium-core/src/test/roaming/c.gltf +0 -1
- package/plugins/plugins/cesium-core/src/test/roaming/f87cc3ea918a4b76bff2c88a3655eb1f.bin +0 -0
- package/plugins/plugins/cesium-core/src/test/roaming/index.html +0 -51
- package/plugins/plugins/cesium-core/src/test/roaming/path.html +0 -448
- package/plugins/plugins/cesium-core/src/test/roaming/view.html +0 -520
- package/plugins/plugins/cesium-core/stats.html +0 -4949
- package/plugins/plugins/cesium-core/tsconfig.json +0 -14
- package/plugins/plugins/cesium-core/vite.config.ts +0 -35
- package/plugins/plugins/cesium-vue/dist/components/basic-audio/index.d.ts +0 -18
- package/plugins/plugins/cesium-vue/dist/components/basic-audio/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/basic-video/index.d.ts +0 -92
- package/plugins/plugins/cesium-vue/dist/components/basic-video/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/camera-roam/index.d.ts +0 -82
- package/plugins/plugins/cesium-vue/dist/components/camera-roam/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/card-carousel/index.d.ts +0 -152
- package/plugins/plugins/cesium-vue/dist/components/card-carousel/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/card-content/index.d.ts +0 -21
- package/plugins/plugins/cesium-vue/dist/components/card-content/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/card-page/index.d.ts +0 -69
- package/plugins/plugins/cesium-vue/dist/components/card-page/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/carousel-img/index.d.ts +0 -21
- package/plugins/plugins/cesium-vue/dist/components/carousel-img/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/echarts-pro/index.d.ts +0 -68
- package/plugins/plugins/cesium-vue/dist/components/echarts-pro/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/marker-bubble/index.d.ts +0 -78
- package/plugins/plugins/cesium-vue/dist/components/marker-bubble/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/marker-default/index.d.ts +0 -48
- package/plugins/plugins/cesium-vue/dist/components/marker-default/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/marker-html/index.d.ts +0 -48
- package/plugins/plugins/cesium-vue/dist/components/marker-html/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/marker-manage/index.d.ts +0 -164
- package/plugins/plugins/cesium-vue/dist/components/marker-manage/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/marker-text/index.d.ts +0 -30
- package/plugins/plugins/cesium-vue/dist/components/marker-text/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/measurement/index.d.ts +0 -78
- package/plugins/plugins/cesium-vue/dist/components/measurement/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/path-roam/index.d.ts +0 -82
- package/plugins/plugins/cesium-vue/dist/components/path-roam/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/components/test/index.d.ts +0 -67
- package/plugins/plugins/cesium-vue/dist/components/test/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/index.css +0 -1
- package/plugins/plugins/cesium-vue/dist/index.d.ts +0 -30
- package/plugins/plugins/cesium-vue/dist/index.d.ts.map +0 -1
- package/plugins/plugins/cesium-vue/dist/index.js +0 -10087
- package/plugins/plugins/cesium-vue/dist/index.js.map +0 -1
- package/plugins/plugins/cesium-vue/dist/index.umd.cjs +0 -46
- package/plugins/plugins/cesium-vue/dist/index.umd.cjs.map +0 -1
- package/plugins/plugins/cesium-vue/package.json +0 -48
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-001.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-002.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-003.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-004.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-005.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-006.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-007.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-008.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-009.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-010.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-011.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/icons/icon-012.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/img/Card3-BG.png +0 -0
- package/plugins/plugins/cesium-vue/src/assets/img/card_bg3.png +0 -0
- package/plugins/plugins/cesium-vue/src/components/basic-audio/index.ts +0 -11
- package/plugins/plugins/cesium-vue/src/components/basic-audio/src/BasicAudio.vue +0 -110
- package/plugins/plugins/cesium-vue/src/components/basic-audio/src/basicAudio.ts +0 -6
- package/plugins/plugins/cesium-vue/src/components/basic-video/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/basic-video/src/BasicVideo.vue +0 -99
- package/plugins/plugins/cesium-vue/src/components/basic-video/src/basicVideo.ts +0 -13
- package/plugins/plugins/cesium-vue/src/components/camera-roam/index.ts +0 -4
- package/plugins/plugins/cesium-vue/src/components/camera-roam/src/CameraRoam.vue +0 -434
- package/plugins/plugins/cesium-vue/src/components/camera-roam/src/cameraRoam.ts +0 -28
- package/plugins/plugins/cesium-vue/src/components/card-carousel/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/card-carousel/src/CardCarousel.vue +0 -124
- package/plugins/plugins/cesium-vue/src/components/card-carousel/src/cardCarousel.ts +0 -60
- package/plugins/plugins/cesium-vue/src/components/card-content/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/card-content/src/CardContent.vue +0 -41
- package/plugins/plugins/cesium-vue/src/components/card-content/src/cardContent.ts +0 -22
- package/plugins/plugins/cesium-vue/src/components/card-page/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/card-page/src/CardPage.vue +0 -102
- package/plugins/plugins/cesium-vue/src/components/card-page/src/cardPage.ts +0 -37
- package/plugins/plugins/cesium-vue/src/components/carousel-img/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/carousel-img/src/CarouselImg.vue +0 -15
- package/plugins/plugins/cesium-vue/src/components/carousel-img/src/carouselImg.ts +0 -6
- package/plugins/plugins/cesium-vue/src/components/echarts-pro/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/echarts-pro/src/EchartsPro.vue +0 -107
- package/plugins/plugins/cesium-vue/src/components/echarts-pro/src/echartsPro.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/echarts-pro/src/hook/useECharts.ts +0 -55
- package/plugins/plugins/cesium-vue/src/components/marker-bubble/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/marker-bubble/src/MarkerBubble.vue +0 -235
- package/plugins/plugins/cesium-vue/src/components/marker-bubble/src/markerBubble.ts +0 -35
- package/plugins/plugins/cesium-vue/src/components/marker-default/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/marker-default/src/MarkerDefault.vue +0 -19
- package/plugins/plugins/cesium-vue/src/components/marker-default/src/markerDefault.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/marker-html/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/marker-html/src/MarkerHtml.vue +0 -21
- package/plugins/plugins/cesium-vue/src/components/marker-html/src/markerHtml.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/marker-manage/index.ts +0 -14
- package/plugins/plugins/cesium-vue/src/components/marker-manage/src/components/MarkerManage.vue +0 -106
- package/plugins/plugins/cesium-vue/src/components/marker-manage/src/config/theme.ts +0 -8
- package/plugins/plugins/cesium-vue/src/components/marker-manage/src/core/MarkerManage.ts +0 -466
- package/plugins/plugins/cesium-vue/src/components/marker-manage/src/core/MarkerManagerCore.ts +0 -148
- package/plugins/plugins/cesium-vue/src/components/marker-manage/src/hook/useMarkerManage.ts +0 -45
- package/plugins/plugins/cesium-vue/src/components/marker-manage/src/type/markerManage.ts +0 -75
- package/plugins/plugins/cesium-vue/src/components/marker-manage/src/utils/themeTool.ts +0 -154
- package/plugins/plugins/cesium-vue/src/components/marker-text/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/marker-text/src/MarkerText.vue +0 -14
- package/plugins/plugins/cesium-vue/src/components/marker-text/src/markerText.ts +0 -10
- package/plugins/plugins/cesium-vue/src/components/measurement/index.ts +0 -12
- package/plugins/plugins/cesium-vue/src/components/measurement/src/Measurement.vue +0 -183
- package/plugins/plugins/cesium-vue/src/components/measurement/src/measurement.ts +0 -20
- package/plugins/plugins/cesium-vue/src/components/path-roam/index.ts +0 -4
- package/plugins/plugins/cesium-vue/src/components/path-roam/src/PathRoam.vue +0 -429
- package/plugins/plugins/cesium-vue/src/components/path-roam/src/pathRoam.ts +0 -28
- package/plugins/plugins/cesium-vue/src/components/test/CardMarker.vue +0 -150
- package/plugins/plugins/cesium-vue/src/components/test/CesiumMarker.vue +0 -34
- package/plugins/plugins/cesium-vue/src/components/test/CesiumViewer.vue +0 -77
- package/plugins/plugins/cesium-vue/src/components/test/MyLabel.vue +0 -25
- package/plugins/plugins/cesium-vue/src/components/test/index.ts +0 -28
- package/plugins/plugins/cesium-vue/src/index.ts +0 -83
- package/plugins/plugins/cesium-vue/stats.html +0 -4949
- package/plugins/plugins/cesium-vue/tsconfig.json +0 -18
- package/plugins/plugins/cesium-vue/vite.config.ts +0 -56
- package/plugins/plugins/theme-chalk/dist/theme-chalk.css +0 -819
- package/plugins/plugins/theme-chalk/index.less +0 -11
- package/plugins/plugins/theme-chalk/package.json +0 -27
- package/plugins/plugins/theme-chalk/src/basicAudio.less +0 -41
- package/plugins/plugins/theme-chalk/src/basicVideo.less +0 -17
- package/plugins/plugins/theme-chalk/src/cameraRoam.less +0 -239
- package/plugins/plugins/theme-chalk/src/cardCarousel.less +0 -71
- package/plugins/plugins/theme-chalk/src/cardContent.less +0 -73
- package/plugins/plugins/theme-chalk/src/cardPage.less +0 -61
- package/plugins/plugins/theme-chalk/src/carouselImg.less +0 -34
- package/plugins/plugins/theme-chalk/src/marker.less +0 -107
- package/plugins/plugins/theme-chalk/src/markerManage.less +0 -25
- package/plugins/plugins/theme-chalk/src/measurement.less +0 -106
- package/plugins/plugins/theme-chalk/src/mixins/config.less +0 -4
- package/plugins/plugins/theme-chalk/src/mixins/mixins.less +0 -64
- package/plugins/plugins/theme-chalk/src/pathRoam.less +0 -198
- package/plugins/plugins/utils/create.ts +0 -45
- package/plugins/plugins/utils/package.json +0 -12
- package/plugins/plugins/utils/uuid.ts +0 -43
- package/plugins/plugins/utils/with-install.ts +0 -10
- package/plugins/theme-chalk/index.less +0 -11
- package/plugins/theme-chalk/src/basicAudio.less +0 -44
- package/plugins/theme-chalk/src/basicVideo.less +0 -17
- package/plugins/theme-chalk/src/cameraRoam.less +0 -239
- package/plugins/theme-chalk/src/cardCarousel.less +0 -71
- package/plugins/theme-chalk/src/cardContent.less +0 -73
- package/plugins/theme-chalk/src/cardPage.less +0 -61
- package/plugins/theme-chalk/src/carouselImg.less +0 -66
- package/plugins/theme-chalk/src/marker.less +0 -107
- package/plugins/theme-chalk/src/markerManage.less +0 -25
- package/plugins/theme-chalk/src/measurement.less +0 -106
- package/plugins/theme-chalk/src/mixins/config.less +0 -4
- package/plugins/theme-chalk/src/mixins/mixins.less +0 -64
- package/plugins/theme-chalk/src/pathRoam.less +0 -198
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marker-manage.js","sources":["../../src/components/marker-manage/src/type/markerManage.ts","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isSymbol.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_arrayMap.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseToString.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/identity.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_apply.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_shortOut.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/constant.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseSetToString.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_setToString.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_overRest.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseRest.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_isIterateeCall.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_createAssigner.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_isKey.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/memoize.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_memoizeCapped.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_stringToPath.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/toString.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_castPath.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_toKey.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseGet.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_isFlattenable.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseFlatten.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/flatten.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_flatRest.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isPlainObject.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseSlice.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_createBaseFor.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseFor.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_assignMergeValue.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/isArrayLikeObject.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_safeGet.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/toPlainObject.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseMergeDeep.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseMerge.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/last.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_parent.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/merge.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_baseUnset.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/_customOmitClone.js","../../../../node_modules/.pnpm/lodash-es@4.17.23/node_modules/lodash-es/omit.js","../../src/components/marker-manage/src/core/MarkerManagerCore.ts","../../src/components/marker-manage/src/utils/themeTool.ts","../../src/components/marker-manage/src/core/MarkerManage.ts","../../src/components/marker-manage/src/components/MarkerManage.vue","../../src/components/marker-manage/index.ts"],"sourcesContent":["import { ExtractPropTypes, PropType } from 'vue';\nimport type {\n AggregatorOptions,\n ListenerItem,\n MarkerEventKey,\n} from '@report-components/cesium-core';\n\nexport const markerManageProps = {\n id: { type: String, default: 'marker' },\n Cesium: { type: Object as PropType<any> },\n viewer: { type: Object as PropType<any> },\n aggregatorOptions: { type: Object as PropType<AggregatorOptions> },\n tagListeningOptions: {\n type: Array as PropType<\n Array<{\n key: MarkerEventKey;\n ListenerItem: ListenerItem;\n overwrite?: boolean;\n }>\n >,\n },\n themeConfig: { type: Object as PropType<any> }, // Optional override\n} as const;\n\nexport type MarkerManageProps = ExtractPropTypes<typeof markerManageProps>;\nexport interface MarkerManageOptions {\n Cesium: any;\n viewer: any;\n aggregatorOptions: AggregatorOptions;\n tagListeningOptions?: Array<{\n key: MarkerEventKey;\n ListenerItem: ListenerItem;\n overwrite?: boolean;\n }>;\n [key: string]: any; // Allow extra properties like MaterialManager\n}\n\nexport interface MarkerManageMethods {\n init: (options: MarkerManageOptions) => any;\n set: (list: any) => void;\n add: (data: any) => void;\n update: (data: any[], immediately?: boolean) => void;\n getById: (id: string) => any;\n getOptions: () => Promise<any>;\n delete: (data: string[] | string) => void;\n setMarkerAggregationEnabled: (enabled: boolean, count?: number) => void;\n setDebugCurrentGridsEnabled: (enabled: boolean) => void;\n initThemes: (data: any) => void; // Added initThemes to methods\n}\n\nexport interface ThemeInterface {\n data: {\n theme: string;\n lineType?: string;\n polygonType?: string;\n wallType?: string;\n [key: string]: any;\n };\n options?: any;\n img?: string;\n material?: any;\n comType?: number;\n [key: string]: any;\n}\nexport type RegisterFn = (instance: MarkerManageMethods) => void;\nexport type UseCesiumReturnType = [RegisterFn, MarkerManageMethods];\n\nexport enum ReportListenerKey {\n 左建选中模型 = 'MODEL_LEFT_CLICK',\n 标记左键点击 = 'TAG_LEFT_CLICK',\n 标记移入 = 'TAG_MOUSEENTER',\n 标记移出 = 'TAG_MOUSELEAVE',\n 模型位置保存 = 'SAVE_REGION',\n 模型加载完成 = 'MODEL_READY',\n}\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nexport default arrayMap;\n","import Symbol from './_Symbol.js';\nimport arrayMap from './_arrayMap.js';\nimport isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default baseToString;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nexport default identity;\n","/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nexport default apply;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nexport default shortOut;\n","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nexport default constant;\n","import constant from './constant.js';\nimport defineProperty from './_defineProperty.js';\nimport identity from './identity.js';\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nexport default baseSetToString;\n","import baseSetToString from './_baseSetToString.js';\nimport shortOut from './_shortOut.js';\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nexport default setToString;\n","import apply from './_apply.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nexport default overRest;\n","import identity from './identity.js';\nimport overRest from './_overRest.js';\nimport setToString from './_setToString.js';\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\nexport default baseRest;\n","import eq from './eq.js';\nimport isArrayLike from './isArrayLike.js';\nimport isIndex from './_isIndex.js';\nimport isObject from './isObject.js';\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nexport default isIterateeCall;\n","import baseRest from './_baseRest.js';\nimport isIterateeCall from './_isIterateeCall.js';\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nexport default createAssigner;\n","import isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\nexport default isKey;\n","import MapCache from './_MapCache.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nexport default memoize;\n","import memoize from './memoize.js';\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nexport default memoizeCapped;\n","import memoizeCapped from './_memoizeCapped.js';\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nexport default stringToPath;\n","import baseToString from './_baseToString.js';\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nexport default toString;\n","import isArray from './isArray.js';\nimport isKey from './_isKey.js';\nimport stringToPath from './_stringToPath.js';\nimport toString from './toString.js';\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nexport default castPath;\n","import isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default toKey;\n","import castPath from './_castPath.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\nexport default baseGet;\n","import Symbol from './_Symbol.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\n\n/** Built-in value references. */\nvar spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;\n\n/**\n * Checks if `value` is a flattenable `arguments` object or array.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n */\nfunction isFlattenable(value) {\n return isArray(value) || isArguments(value) ||\n !!(spreadableSymbol && value && value[spreadableSymbol]);\n}\n\nexport default isFlattenable;\n","import arrayPush from './_arrayPush.js';\nimport isFlattenable from './_isFlattenable.js';\n\n/**\n * The base implementation of `_.flatten` with support for restricting flattening.\n *\n * @private\n * @param {Array} array The array to flatten.\n * @param {number} depth The maximum recursion depth.\n * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n * @param {Array} [result=[]] The initial result value.\n * @returns {Array} Returns the new flattened array.\n */\nfunction baseFlatten(array, depth, predicate, isStrict, result) {\n var index = -1,\n length = array.length;\n\n predicate || (predicate = isFlattenable);\n result || (result = []);\n\n while (++index < length) {\n var value = array[index];\n if (depth > 0 && predicate(value)) {\n if (depth > 1) {\n // Recursively flatten arrays (susceptible to call stack limits).\n baseFlatten(value, depth - 1, predicate, isStrict, result);\n } else {\n arrayPush(result, value);\n }\n } else if (!isStrict) {\n result[result.length] = value;\n }\n }\n return result;\n}\n\nexport default baseFlatten;\n","import baseFlatten from './_baseFlatten.js';\n\n/**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\nfunction flatten(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, 1) : [];\n}\n\nexport default flatten;\n","import flatten from './flatten.js';\nimport overRest from './_overRest.js';\nimport setToString from './_setToString.js';\n\n/**\n * A specialized version of `baseRest` which flattens the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\nfunction flatRest(func) {\n return setToString(overRest(func, undefined, flatten), func + '');\n}\n\nexport default flatRest;\n","import baseGetTag from './_baseGetTag.js';\nimport getPrototype from './_getPrototype.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nexport default isPlainObject;\n","/**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\nfunction baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n}\n\nexport default baseSlice;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nexport default createBaseFor;\n","import createBaseFor from './_createBaseFor.js';\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\nexport default baseFor;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignMergeValue;\n","import isArrayLike from './isArrayLike.js';\nimport isObjectLike from './isObjectLike.js';\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nexport default isArrayLikeObject;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nexport default safeGet;\n","import copyObject from './_copyObject.js';\nimport keysIn from './keysIn.js';\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nexport default toPlainObject;\n","import assignMergeValue from './_assignMergeValue.js';\nimport cloneBuffer from './_cloneBuffer.js';\nimport cloneTypedArray from './_cloneTypedArray.js';\nimport copyArray from './_copyArray.js';\nimport initCloneObject from './_initCloneObject.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isArrayLikeObject from './isArrayLikeObject.js';\nimport isBuffer from './isBuffer.js';\nimport isFunction from './isFunction.js';\nimport isObject from './isObject.js';\nimport isPlainObject from './isPlainObject.js';\nimport isTypedArray from './isTypedArray.js';\nimport safeGet from './_safeGet.js';\nimport toPlainObject from './toPlainObject.js';\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\nexport default baseMergeDeep;\n","import Stack from './_Stack.js';\nimport assignMergeValue from './_assignMergeValue.js';\nimport baseFor from './_baseFor.js';\nimport baseMergeDeep from './_baseMergeDeep.js';\nimport isObject from './isObject.js';\nimport keysIn from './keysIn.js';\nimport safeGet from './_safeGet.js';\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\nexport default baseMerge;\n","/**\n * Gets the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the last element of `array`.\n * @example\n *\n * _.last([1, 2, 3]);\n * // => 3\n */\nfunction last(array) {\n var length = array == null ? 0 : array.length;\n return length ? array[length - 1] : undefined;\n}\n\nexport default last;\n","import baseGet from './_baseGet.js';\nimport baseSlice from './_baseSlice.js';\n\n/**\n * Gets the parent value at `path` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} path The path to get the parent value of.\n * @returns {*} Returns the parent value.\n */\nfunction parent(object, path) {\n return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n}\n\nexport default parent;\n","import baseMerge from './_baseMerge.js';\nimport createAssigner from './_createAssigner.js';\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n});\n\nexport default merge;\n","import castPath from './_castPath.js';\nimport last from './last.js';\nimport parent from './_parent.js';\nimport toKey from './_toKey.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.unset`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The property path to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n */\nfunction baseUnset(object, path) {\n path = castPath(path, object);\n\n // Prevent prototype pollution, see: https://github.com/lodash/lodash/security/advisories/GHSA-xxjr-mmjv-4gpg\n var index = -1,\n length = path.length;\n\n if (!length) {\n return true;\n }\n\n var isRootPrimitive = object == null || (typeof object !== 'object' && typeof object !== 'function');\n\n while (++index < length) {\n var key = path[index];\n\n // skip non-string keys (e.g., Symbols, numbers)\n if (typeof key !== 'string') {\n continue;\n }\n\n // Always block \"__proto__\" anywhere in the path if it's not expected\n if (key === '__proto__' && !hasOwnProperty.call(object, '__proto__')) {\n return false;\n }\n\n // Block \"constructor.prototype\" chains\n if (key === 'constructor' &&\n (index + 1) < length &&\n typeof path[index + 1] === 'string' &&\n path[index + 1] === 'prototype') {\n\n // Allow ONLY when the path starts at a primitive root, e.g., _.unset(0, 'constructor.prototype.a')\n if (isRootPrimitive && index === 0) {\n continue;\n }\n\n return false;\n }\n }\n\n var obj = parent(object, path);\n return obj == null || delete obj[toKey(last(path))];\n}\n\nexport default baseUnset;\n","import isPlainObject from './isPlainObject.js';\n\n/**\n * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain\n * objects.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {string} key The key of the property to inspect.\n * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.\n */\nfunction customOmitClone(value) {\n return isPlainObject(value) ? undefined : value;\n}\n\nexport default customOmitClone;\n","import arrayMap from './_arrayMap.js';\nimport baseClone from './_baseClone.js';\nimport baseUnset from './_baseUnset.js';\nimport castPath from './_castPath.js';\nimport copyObject from './_copyObject.js';\nimport customOmitClone from './_customOmitClone.js';\nimport flatRest from './_flatRest.js';\nimport getAllKeysIn from './_getAllKeysIn.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * The opposite of `_.pick`; this method creates an object composed of the\n * own and inherited enumerable property paths of `object` that are not omitted.\n *\n * **Note:** This method is considerably slower than `_.pick`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to omit.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omit(object, ['a', 'c']);\n * // => { 'b': '2' }\n */\nvar omit = flatRest(function(object, paths) {\n var result = {};\n if (object == null) {\n return result;\n }\n var isDeep = false;\n paths = arrayMap(paths, function(path) {\n path = castPath(path, object);\n isDeep || (isDeep = path.length > 1);\n return path;\n });\n copyObject(object, getAllKeysIn(object), result);\n if (isDeep) {\n result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);\n }\n var length = paths.length;\n while (length--) {\n baseUnset(result, paths[length]);\n }\n return result;\n});\n\nexport default omit;\n","import {\n BufferedHierarchicalAggregator,\n EntityLayerManager,\n HtmlOverlayLabelPool,\n MarkerEventBus,\n MaterialManager,\n} from '@report-components/cesium-core';\nimport { isArray, merge } from 'lodash-es';\nimport { MarkerManageOptions } from '../type/markerManage';\n\nexport class MarkerManagerCore {\n labelId: string;\n cardId: string;\n opt: MarkerManageOptions;\n entityList = new Map();\n MaterialManager: MaterialManager;\n instance: any;\n\n constructor(opt: MarkerManageOptions & { labelId: string; cardId: string; MaterialManager?: MaterialManager; eventBus?: any; cardEventBus?: any }) {\n this.labelId = opt.labelId;\n this.cardId = opt.cardId;\n this.opt = opt;\n this.MaterialManager = opt.MaterialManager || new MaterialManager();\n this.instance = this.initCore(opt, opt.eventBus, opt.cardEventBus);\n }\n\n //初始化标记管理\n initCore(options: MarkerManageOptions, eventBus?: any, cardEventBus?: any) {\n let { Cesium, viewer, aggregatorOptions } = options;\n \n if (!eventBus) eventBus = new MarkerEventBus();\n if (!cardEventBus) cardEventBus = new MarkerEventBus();\n\n const labelPool = new HtmlOverlayLabelPool(Cesium, viewer, this.labelId, eventBus); //标记\n const cardPool = new HtmlOverlayLabelPool(Cesium, viewer, this.cardId, cardEventBus, false); //卡片\n const aggregator = new BufferedHierarchicalAggregator(Cesium, viewer, {\n //聚合\n threshold: aggregatorOptions?.threshold || 16,\n displayLimit: aggregatorOptions?.displayLimit || 1000,\n maxLevel: aggregatorOptions?.maxLevel || 20,\n debugCurrentGrids: aggregatorOptions?.debugCurrentGrids || false,\n groupByTheme: aggregatorOptions?.groupByTheme ?? true,\n //clusterTheme: aggregatorOptions?.clusterTheme || 'Tag1007', // 这里可以改成你自定义的默认聚合点主题k\n pointTheme: aggregatorOptions?.pointTheme || 'Tag1001', // 普通点的默认主题\n centralPointMode: aggregatorOptions?.centralPointMode || 'firstPoint', // 普通点的默认主题\n ...aggregatorOptions,\n labelPool: labelPool,\n\n });\n const materialManager = this.MaterialManager;\n const entityLayerManager = new EntityLayerManager( //实体图层管理\n Cesium,\n viewer,\n materialManager,\n aggregator,\n cardPool,\n );\n return { materialManager, entityLayerManager, cardPool, labelPool, aggregator, eventBus, cardEventBus };\n }\n\n //添加标记\n set(list: any) {\n this.entityList.clear();\n list.forEach((item: any) => {\n this.entityList.set(item.id, item);\n });\n this.instance.entityLayerManager.removeLayer('Layer_default');\n this.instance.entityLayerManager.addLayer('Layer_default');\n this.instance.entityLayerManager.addGroupsToLayer(\n 'Layer_default',\n Array.from(this.entityList.values()),\n );\n }\n\n //添加\n add(data: any) {\n let dataList = [] as Array<any>;\n if (isArray(data)) {\n dataList = data;\n } else {\n dataList.push(data);\n }\n dataList.forEach((item: any) => {\n this.entityList.set(item.id, item);\n });\n if (!this.instance.entityLayerManager.getLayer('Layer_default')) {\n this.instance.entityLayerManager.addLayer('Layer_default');\n }\n this.instance.entityLayerManager.addGroupsToLayer('Layer_default', dataList);\n }\n\n //更新标记\n update(data: any[], immediately = true) {\n let dataList = [] as Array<any>;\n if (isArray(data)) {\n dataList = data;\n } else {\n dataList.push(data);\n }\n\n const mergedList = dataList.map((options) => {\n const act = this.entityList.get(options.id);\n if (!act) return;\n let merged = merge({}, act, options);\n this.entityList.set(options.id, merged);\n return merged;\n }).filter(Boolean);\n\n if (immediately) {\n this.instance.entityLayerManager.updateGroupToLayer('Layer_default', mergedList);\n }\n }\n\n //获取标记\n getById(id: string) {\n return this.entityList.get(id);\n }\n \n getOptions() {\n return new Promise((resolve) => {\n resolve({\n entityList: Array.from(this.entityList.values()),\n });\n });\n }\n \n //删除标记\n delete(data: string[] | string) {\n let deleteList = [] as Array<String>;\n if (isArray(data)) {\n deleteList = data as Array<String>;\n } else {\n deleteList.push(data as String);\n }\n deleteList.forEach((id) => {\n this.entityList.delete(id);\n });\n this.instance.entityLayerManager.removeGroups('Layer_default', deleteList);\n }\n\n setMarkerAggregationEnabled(enabled: boolean, count?: number) {\n this.instance.aggregator.setThreshold(enabled ? count || 2 : 9999999);\n }\n \n setDebugCurrentGridsEnabled(enabled: boolean) {\n this.instance.aggregator.setDebugCurrentGrids(enabled || false);\n }\n}\n","import {\n getDynamicImgMaterial,\n getWallMaterial,\n getPolylineFlowMaterialProperty,\n} from '@report-components/cesium-core';\n\nexport function createLineTheme({\n Cesium,\n options,\n MaterialManager,\n}: {\n Cesium: any;\n options: any;\n MaterialManager: any;\n}) {\n if (!options.data?.theme) return;\n // if (['2', '3', '4'].includes(options.data?.lineType)) return;\n if (options.data?.lineType == '1') {\n let material = getPolylineFlowMaterialProperty(Cesium, {\n color: new Cesium.Color.fromCssColorString(options?.options?.color || '#ffffff'),\n duration: 100,\n });\n //把材质逐步从引擎中迁移出来\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'polyline',\n });\n } else if (options.data?.lineType == '2') {\n let material = new Cesium.PolylineArrowMaterialProperty(\n Cesium.Color.fromCssColorString(options?.options?.color || 'red'),\n );\n //把材质逐步从引擎中迁移出来\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'polyline',\n });\n } else if (options.data?.lineType == '3') {\n let material = new Cesium.PolylineOutlineMaterialProperty({\n color: Cesium.Color.fromCssColorString(options?.options?.color || 'red'),\n outlineWidth: 0,\n });\n //把材质逐步从引擎中迁移出来\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'polyline',\n });\n } else if (options.data?.lineType == '4') {\n let material = new Cesium.PolylineDashMaterialProperty({\n color: Cesium.Color.fromCssColorString(options?.options?.color || 'red'),\n dashLength: Number(options?.options?.dashLength || 30), //短划线长度\n });\n //把材质逐步从引擎中迁移出来\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'polyline',\n });\n } else if (options.data?.lineType == '5') {\n let material = getDynamicImgMaterial(Cesium, {\n image: options.img,\n color: new Cesium.Color.fromCssColorString(options?.options?.color || '#ffffff'),\n duration: 5000,\n // freely: 'vertical',\n direction: '-',\n count: 1,\n });\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'polyline',\n });\n }\n}\n\nexport function createPolygonTheme({\n Cesium,\n options,\n MaterialManager,\n}: {\n Cesium: any;\n options: any;\n MaterialManager: any;\n}) {\n if (!options.data?.theme) return;\n if (options.data?.polygonType == 'colorMode') {\n let material = new Cesium.Color.fromCssColorString(options?.options?.color || '#ffffff');\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'polygon',\n });\n } else if (options.data?.polygonType == 'img') {\n let material = new Cesium.ImageMaterialProperty({\n image: options.img,\n });\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'polygon',\n });\n } else if (options.data?.polygonType == 'DynamicImgMaterial') {\n let material = getWallMaterial(Cesium, {\n image: options.img,\n color: new Cesium.Color.fromCssColorString(options?.options?.color),\n duration: 5000,\n freely: options.data?.freely || 'vertical',\n direction: '+',\n count: 1,\n });\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'polygon',\n });\n }\n}\nexport function createWallTheme({\n Cesium,\n options,\n MaterialManager,\n}: {\n Cesium: any;\n options: any;\n MaterialManager: any;\n}) {\n if (!options.data?.theme) return;\n if (options.data?.wallType == 'img') {\n let material = new Cesium.ImageMaterialProperty({\n image: options.img,\n });\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'wall',\n });\n } else if (options.data?.wallType == 'DynamicImgMaterial') {\n let material = getWallMaterial(Cesium, {\n image: options.img,\n // color: new Cesium.Color.fromCssColorString(options?.options?.color),\n duration: 5000,\n freely: options.data?.freely || 'vertical',\n direction: '+',\n count: 1,\n });\n MaterialManager.register({\n themeKey: options.data?.theme,\n material: material,\n category: 'wall',\n });\n }\n}\n","import { h, markRaw, render } from 'vue';\nimport {\n HtmlOverlayLabelPool,\n MarkerEventBus,\n MarkerEventKey,\n MaterialManager,\n} from '@report-components/cesium-core';\nimport CxCardCarousel from '../../../card-carousel';\nimport CxMarkerDefault from '../../../marker-default';\nimport CxMarkerHtml from '../../../marker-html';\nimport { MarkerManagerCore } from './MarkerManagerCore';\nimport type { MarkerManageOptions } from '../type/markerManage';\nimport { omit } from 'lodash-es';\nimport { ReportListenerKey } from '../type/markerManage';\nimport { isFunction } from 'lodash-es';\nimport { createLineTheme, createPolygonTheme, createWallTheme } from '../utils/themeTool';\n\ninterface MarkerManageOptionsExtend extends Partial<MarkerManageOptions> {\n labelId?: string;\n cardId?: string;\n tagThemeConfig?: any[];\n lineThemeConfig?: any[];\n cardThemeConfig?: any[];\n runListener?: Function;\n MaterialManager?: MaterialManager;\n Cesium: any;\n viewer: any;\n}\n\nexport class MarkerManage extends MarkerManagerCore {\n constructor(opt: MarkerManageOptionsExtend) {\n const {\n labelId = 'report-marker',\n cardId = 'report-marker',\n tagThemeConfig = [],\n lineThemeConfig = [],\n cardThemeConfig = [],\n runListener = () => {},\n MaterialManager: materialManager = new MaterialManager(),\n aggregatorOptions,\n } = opt;\n\n // Merge default themes with provided ones\n const finalTagThemeConfig = [...tagThemeConfig];\n const finalLineThemeConfig = [...lineThemeConfig];\n const finalCardThemeConfig = [...cardThemeConfig];\n\n // Merge default aggregator options\n const finalAggregatorOptions = {\n clusterTheme: 'Tag1007',\n pointTheme: 'Tag1001',\n centralPointMode: 'firstPoint',\n debugCurrentGrids: false,\n ...(aggregatorOptions || {}),\n };\n\n const options = {\n ...opt,\n labelId,\n cardId,\n MaterialManager: materialManager,\n aggregatorOptions: finalAggregatorOptions,\n eventBus: new MarkerEventBus(),\n };\n\n super(options as any);\n\n // Ensure opt has all extended props\n this.opt = { ...this.opt, ...options } as any;\n\n // Initialize listeners\n this.initTagListener(this.instance.eventBus, this.opt as any);\n\n // Load themes\n this.loadTabThemeConfig(finalTagThemeConfig);\n this.loadLineThemeConfig(finalLineThemeConfig);\n this.loadCardThemeConfig(finalCardThemeConfig);\n this.initDefaultLineMaterials();\n this.initDefaultTagTheme();\n }\n\n initDefaultTagTheme() {\n this.setTagTheme({\n comType: 4,\n data: {\n theme: 'default',\n options: {\n textStyle: {\n width: 'max-content',\n backgroundColor: 'rgba(0, 0, 0, 0.7)',\n borderRadius: '5px',\n padding: '4px 8px',\n },\n },\n },\n });\n }\n\n initDefaultLineMaterials() {\n const Cesium = (this.opt as any).Cesium;\n if (!Cesium) return;\n\n const defaultMaterials = {\n themeBeUnderConstructionRailway: {\n material: new Cesium.PolylineDashMaterialProperty({\n color: Cesium.Color.fromCssColorString('white'),\n gapColor: Cesium.Color.fromCssColorString('black'),\n dashLength: 50.0,\n dashPattern: parseInt('1111111111111110', 2),\n }),\n },\n themeRailway: {\n material: new Cesium.PolylineDashMaterialProperty({\n color: Cesium.Color.BLACK,\n gapColor: Cesium.Color.WHITE,\n dashLength: 48, //短划线长度\n }),\n },\n themeNewRailway: {\n material: new Cesium.PolylineOutlineMaterialProperty({\n color: Cesium.Color.RED,\n outlineWidth: 0,\n outlineColor: Cesium.Color.BLACK,\n }),\n },\n themePlanningRailway: {\n material: new Cesium.PolylineOutlineMaterialProperty({\n color: Cesium.Color.fromCssColorString('rgb(162, 83, 188)'),\n outlineWidth: 0,\n outlineColor: Cesium.Color.BLACK,\n }),\n },\n themePlanLine: {\n material: new Cesium.PolylineOutlineMaterialProperty({\n color: Cesium.Color.fromCssColorString('rgb(5,11,233)'),\n outlineWidth: 0,\n outlineColor: Cesium.Color.BLACK,\n }),\n },\n themeExpressway: {\n material: new Cesium.PolylineOutlineMaterialProperty({\n color: Cesium.Color.fromCssColorString('rgb(255,255, 0)'),\n outlineWidth: 6,\n outlineColor: Cesium.Color.fromCssColorString('rgb(102, 176 ,8)'),\n }),\n },\n themeNationalHighway: {\n material: new Cesium.PolylineOutlineMaterialProperty({\n color: Cesium.Color.fromCssColorString('rgb(160 ,119, 0)'),\n outlineWidth: 6,\n outlineColor: Cesium.Color.fromCssColorString('rgb(68 ,33, 24)'),\n }),\n },\n themeProvincialRoad: {\n material: new Cesium.PolylineOutlineMaterialProperty({\n color: Cesium.Color.fromCssColorString('rgb(160 ,119, 0)'),\n outlineWidth: 6,\n outlineColor: Cesium.Color.fromCssColorString('rgb(68 ,33, 24)'),\n }),\n },\n themeCityBoundary: {\n material: new Cesium.PolylineDashMaterialProperty({\n color: Cesium.Color.fromCssColorString('rgb(162, 83, 188)'),\n gapColor: Cesium.Color.fromCssColorString('0000'),\n dashLength: 50.0,\n dashPattern: parseInt('1111111111100100', 2),\n }),\n },\n themeProvincialBoundaries: {\n material: new Cesium.PolylineDashMaterialProperty({\n // color: Cesium.Color.fromCssColorString('rgb(162, 83, 188)'),\n color: Cesium.Color.fromCssColorString('rgb(162, 83, 188)'),\n gapColor: Cesium.Color.fromCssColorString('0000'),\n dashLength: 50.0,\n dashPattern: parseInt('1111111100100100', 2),\n }),\n },\n };\n\n Object.entries(defaultMaterials).forEach(([key, value]: [string, any]) => {\n if (this.MaterialManager.has(key, 'polyline')) return;\n this.MaterialManager.register({\n themeKey: key,\n material: value.material,\n category: 'polyline',\n });\n });\n }\n\n // Initialize dynamic themes from data\n public initThemes(data: any) {\n if (!data) return;\n\n if (data.tag) {\n this.loadTabThemeConfig(data.tag);\n }\n if (data.card) {\n this.loadCardThemeConfig(data.card);\n }\n\n const Cesium = (this.opt as any).Cesium;\n const materialManager = this.instance.materialManager || (this.opt as any).MaterialManager;\n\n if (data.line?.length > 0) {\n for (let item of data.line) {\n createLineTheme({\n options: item,\n Cesium: Cesium,\n MaterialManager: materialManager,\n });\n }\n }\n if (data.polygon?.length > 0) {\n for (let item of data.polygon) {\n createPolygonTheme({\n options: item,\n Cesium: Cesium,\n MaterialManager: materialManager,\n });\n }\n }\n if (data.wall?.length > 0) {\n for (let item of data.wall) {\n createWallTheme({\n options: item,\n Cesium: Cesium,\n MaterialManager: materialManager,\n });\n }\n }\n }\n\n extractOnEvents(props: any) {\n const events: { [key: string]: Function } = {};\n for (const key in props) {\n if (key.startsWith('on') && typeof props[key] === 'function') {\n events[key] = props[key]; // 直接保留\n }\n }\n return events;\n }\n\n //注册标记主题\n loadTabThemeConfig(themeList: any[]) {\n themeList.forEach((item) => {\n this.setTagTheme(item);\n });\n }\n\n //注册默认的线配置\n loadLineThemeConfig(themeList: any[]) {\n // let { Cesium } = this.opt;\n themeList.forEach((item) => {\n if (this.MaterialManager.has(item.data.theme, 'polyline')) return;\n if (item.material) {\n this.MaterialManager.register({\n themeKey: item.data.theme,\n material: item.material,\n category: 'polyline',\n });\n }\n });\n }\n\n loadCardThemeConfig(themeList: any[]) {\n let labelPool = this.instance.cardPool;\n themeList.forEach((item) => {\n labelPool.registerTheme(item.data.theme, {\n createElement(container: any, label: any) {\n let data = label.data.data;\n let vNode: any;\n\n if (item.comType == 1) {\n vNode = h(markRaw(CxCardCarousel), {\n data: data || {},\n imgSrc: item.data.img,\n styleConfig: {\n paddingTop: '50px',\n paddingRight: '18px',\n paddingBottom: '10px',\n paddingLeft: '95px',\n backgroundColor: 'rgba(0,0,0,0)',\n borderRadius: 0,\n width: '682px',\n height: '445px',\n },\n titleConfig: {\n show: true,\n width: '600px',\n height: '50px',\n left: '79px',\n top: '0px',\n },\n bgClass: [item.data.theme],\n });\n } else if (item.comType == 3) {\n vNode = h(markRaw(CxCardCarousel), {\n data: data || {},\n imgSrc: item.data.img,\n styleConfig: {\n paddingTop: '55px',\n paddingRight: '12px',\n paddingBottom: '17px',\n paddingLeft: '83px',\n backgroundColor: 'rgba(0,0,0,0)',\n borderRadius: 0,\n width: '365px',\n height: '353px',\n },\n titleConfig: {\n show: true,\n width: '285px',\n height: '50px',\n left: '79px',\n top: '0px',\n },\n bgClass: [item.data.theme],\n // titleConfig: themeOptions.options.titleConfig,\n // pageInfoConfig: themeOptions.options.pageInfoConfig,\n });\n }\n\n render(vNode, container);\n return () => {\n return render(null, container);\n };\n },\n options: {\n offset: item.data.pixelOffset,\n ...(item.data || {}),\n },\n });\n });\n }\n\n //注册主题\n setTagTheme(options: any) {\n let { labelPool } = this.instance;\n labelPool.registerTheme(options.data.theme, {\n createElement(container: any, label: any) {\n let info = label.data?.billboard?.[0];\n const newObj = omit(info, ['position', 'options']);\n let vNode: any;\n let props = {\n ...newObj,\n text: info?.options?.text,\n isFullLink: options?.isFullLink ?? false,\n img: options?.data?.options?.img,\n textStyle: options?.data?.options?.textStyle,\n };\n if (label.data?.gridKey) {\n vNode = h(markRaw(CxMarkerDefault), {\n text: label.data?.count,\n isFullLink: options.isFullLink ?? false,\n img: options?.data.options.img,\n textStyle: {\n display: 'block !important',\n 'font-size': `12px !important`,\n minWidth: '20px',\n maxWidth: 'max-content',\n position: 'absolute',\n left: '63%',\n top: '-8px',\n background: '#f00',\n 'border-radius': '50%',\n height: '20px',\n 'line-height': '20px',\n 'text-align': 'center',\n color: 'white',\n },\n });\n } else if (options.comType == 4) {\n vNode = h(markRaw(CxMarkerHtml), props);\n } else {\n vNode = h(markRaw(CxMarkerDefault), props);\n }\n\n render(vNode, container);\n return () => {\n return render(null, container);\n };\n },\n options: {\n offset: options?.data?.pixelOffset || {},\n },\n });\n }\n\n //标记监听事件\n private initTagListener(eventBus: MarkerEventBus, options: MarkerManageOptionsExtend) {\n let { viewer, tagListeningOptions } = options;\n // const eventBus = new MarkerEventBus(); // Already created in core\n eventBus.addListener(MarkerEventKey.Click, {\n name: 'marker:click',\n fn: (info: any) => {\n options.runListener?.(ReportListenerKey.标记左键点击, info.data);\n if (isFunction(info.data?.onClick)) {\n info.data?.onClick(info.data);\n }\n if (info.data?.cameraPoint && info.data?.billboard[0]?.isFlyToCameraPoint) {\n viewer?.camera?.flyTo({\n duration: 1,\n ...info.data?.cameraPoint,\n });\n }\n },\n });\n eventBus.addListener(MarkerEventKey.MouseEnter, {\n name: 'marker:mouseenter',\n fn: (info: any) => {\n let Cesium = (this.opt as any).Cesium;\n let offset = { x: 0, y: 0 };\n try {\n if (info.data?.billboard?.[0]?.position?.length > 2) {\n let p = info.data?.billboard[0]?.position;\n let position = Cesium.Cartesian3.fromDegrees(p[0], p[1], p[3] || 0);\n let f = this.instance.labelPool.toWindowCoordinates(position);\n offset.x = f.x;\n offset.y = f.y;\n }\n } catch (e) {\n console.log(e);\n }\n options.runListener?.(ReportListenerKey.标记移入, info.data, offset);\n },\n });\n eventBus.addListener(MarkerEventKey.MouseLeave, {\n name: 'marker:mouseleave',\n fn: (info: any) => {\n let Cesium = (this.opt as any).Cesium;\n let offset = { x: 0, y: 0 };\n try {\n if (info.data?.billboard?.[0]?.position?.length > 2) {\n let p = info.data?.billboard[0]?.position;\n let position = Cesium.Cartesian3.fromDegrees(p[0], p[1], p[3] || 0);\n let f = this.instance.labelPool.toWindowCoordinates(position);\n offset.x = f.x;\n offset.y = f.y;\n }\n } catch (e) {\n console.log(e);\n }\n options.runListener?.(ReportListenerKey.标记移出, info.data, offset);\n },\n });\n tagListeningOptions?.forEach((item) => {\n eventBus.addListener(item.key, item.ListenerItem, item.overwrite);\n });\n // return eventBus;\n }\n\n // 兼容旧模式的材质注册\n setMaterial(options: any) {\n const { type, material, materialKey, cover } = options;\n // 统一转为小写,例如 Polyline -> polyline\n const category = type ? type.toLowerCase() : 'default';\n\n this.MaterialManager.register({\n themeKey: materialKey,\n // 兼容传入的是 { material: ... } 结构或者直接是材质对象\n material: material?.material || material,\n force: cover,\n category: category,\n });\n }\n}\n","<script lang=\"ts\" setup>\r\n import { onMounted, onUnmounted, watch, inject, unref, Ref } from 'vue';\r\n import { markerManageProps, MarkerManageOptions } from '../type/markerManage';\r\n import { MarkerManage } from '../core/MarkerManage';\r\n\r\n const props = defineProps(markerManageProps);\r\n const emits = defineEmits(['register', 'load', 'marker-event']);\r\n const leitingMethods = inject('leitingMethods') as Ref<any>;\r\n let markerManager: MarkerManage | null = null;\r\n\r\n const init = (options: Partial<MarkerManageOptions> = {}) => {\r\n if (markerManager) return markerManager;\r\n\r\n const finalOptions = {\r\n ...props,\r\n ...options,\r\n Cesium: options.Cesium || props.Cesium,\r\n viewer: options.viewer || props.viewer,\r\n runListener: (key: string, data: any, ...args: any[]) => {\r\n emits('marker-event', { key, data, args });\r\n },\r\n };\r\n\r\n if (!finalOptions.Cesium || !finalOptions.viewer) {\r\n // console.warn('MarkerManage: Cesium or viewer not provided yet');\r\n return null;\r\n }\r\n\r\n markerManager = new MarkerManage(finalOptions as any);\r\n if (options.methods) {\r\n options.methods.setTagTheme = markerManager.setTagTheme.bind(markerManager);\r\n options.methods.setMaterial = markerManager.setMaterial.bind(markerManager);\r\n options.methods.setEntityList = markerManager.set.bind(markerManager);\r\n options.methods.addComItem = markerManager.add.bind(markerManager);\r\n options.methods.deleteComItem = markerManager.delete.bind(markerManager);\r\n options.methods.updateComItem = markerManager.update.bind(markerManager);\r\n options.methods.getEntityByID = markerManager.getById.bind(markerManager);\r\n options.methods.getOptions = markerManager.getOptions.bind(markerManager);\r\n }\r\n emits('load', markerManager);\r\n\r\n return markerManager;\r\n };\r\n\r\n const methods = {\r\n init,\r\n set: (list: any) => markerManager?.set(list),\r\n add: (data: any) => markerManager?.add(data),\r\n update: (data: any[], immediately?: boolean) => markerManager?.update(data, immediately),\r\n getById: (id: string) => markerManager?.getById(id),\r\n getOptions: () => markerManager?.getOptions(),\r\n delete: (data: string[] | string) => markerManager?.delete(data),\r\n setMarkerAggregationEnabled: (enabled: boolean, count?: number) =>\r\n markerManager?.setMarkerAggregationEnabled(enabled, count),\r\n setDebugCurrentGridsEnabled: (enabled: boolean) =>\r\n markerManager?.setDebugCurrentGridsEnabled(enabled),\r\n initThemes: (data: any) => markerManager?.initThemes(data),\r\n setTagTheme: (data: any) => markerManager?.setTagTheme(data),\r\n setMaterial: (data: any) => markerManager?.setMaterial(data),\r\n };\r\n\r\n defineExpose(methods);\r\n emits('register', methods);\r\n function load() {\r\n if (markerManager) return markerManager;\r\n const methods = unref(leitingMethods) as any;\r\n const Cesium = methods?.getCesium?.();\r\n const viewer = methods?.getViewer?.();\r\n if (Cesium && viewer) {\r\n init({ Cesium, viewer, methods });\r\n } else if (props.Cesium && props.viewer) {\r\n init({ methods });\r\n }\r\n }\r\n\r\n onMounted(() => {\r\n load();\r\n });\r\n\r\n watch(\r\n () => [props.Cesium, props.viewer],\r\n ([newCesium, newViewer]) => {\r\n if (newCesium && newViewer && !markerManager) {\r\n load();\r\n }\r\n },\r\n );\r\n watch(\r\n () => leitingMethods?.value,\r\n (nv, ov) => {\r\n /* ... */\r\n load();\r\n },\r\n { deep: false },\r\n );\r\n onUnmounted(() => {\r\n // markerManager?.destroy();\r\n // Assuming destroy exists or cleanup is handled\r\n });\r\n\r\n // Watch for props changes if needed, but usually init is once.\r\n</script>\r\n\r\n<template>\r\n <slot></slot>\r\n</template>\r\n","import { withInstall } from '@report-components/utils/with-install';\r\nimport _MarkerManage from './src/components/MarkerManage.vue';\r\nexport * from './src/type/markerManage';\r\nexport * from './src/core/MarkerManagerCore';\r\nexport * from './src/core/MarkerManage';\r\n\r\nconst CxMarkerManage = withInstall(_MarkerManage);\r\nexport { CxMarkerManage };\nexport default CxMarkerManage;\n"],"names":["markerManageProps","ReportListenerKey","symbolTag","isSymbol","value","isObjectLike","baseGetTag","arrayMap","array","iteratee","index","length","result","symbolProto","Symbol","symbolToString","baseToString","isArray","identity","apply","func","thisArg","args","HOT_COUNT","HOT_SPAN","nativeNow","shortOut","count","lastCalled","stamp","remaining","constant","baseSetToString","defineProperty","string","setToString","nativeMax","overRest","start","transform","otherArgs","baseRest","isIterateeCall","object","isObject","type","isArrayLike","isIndex","eq","createAssigner","assigner","sources","customizer","guard","source","reIsDeepProp","reIsPlainProp","isKey","FUNC_ERROR_TEXT","memoize","resolver","memoized","key","cache","MapCache","MAX_MEMOIZE_SIZE","memoizeCapped","rePropName","reEscapeChar","stringToPath","match","number","quote","subString","toString","castPath","toKey","baseGet","path","spreadableSymbol","isFlattenable","isArguments","baseFlatten","depth","predicate","isStrict","arrayPush","flatten","flatRest","objectTag","funcProto","objectProto","funcToString","hasOwnProperty","objectCtorString","isPlainObject","proto","getPrototype","Ctor","baseSlice","end","createBaseFor","fromRight","keysFunc","iterable","props","baseFor","assignMergeValue","baseAssignValue","isArrayLikeObject","safeGet","toPlainObject","copyObject","keysIn","baseMergeDeep","srcIndex","mergeFunc","stack","objValue","srcValue","stacked","newValue","isCommon","isArr","isBuff","isBuffer","isTyped","isTypedArray","copyArray","cloneBuffer","cloneTypedArray","isFunction","initCloneObject","baseMerge","Stack","last","parent","merge","baseUnset","isRootPrimitive","obj","customOmitClone","CLONE_DEEP_FLAG","CLONE_FLAT_FLAG","CLONE_SYMBOLS_FLAG","omit","paths","isDeep","getAllKeysIn","baseClone","MarkerManagerCore","opt","MaterialManager","options","eventBus","cardEventBus","Cesium","viewer","aggregatorOptions","MarkerEventBus","labelPool","HtmlOverlayLabelPool","cardPool","aggregator","BufferedHierarchicalAggregator","materialManager","entityLayerManager","EntityLayerManager","list","item","data","dataList","immediately","mergedList","act","merged","id","resolve","deleteList","enabled","createLineTheme","material","getPolylineFlowMaterialProperty","getDynamicImgMaterial","createPolygonTheme","getWallMaterial","createWallTheme","MarkerManage","labelId","cardId","tagThemeConfig","lineThemeConfig","cardThemeConfig","runListener","finalTagThemeConfig","finalLineThemeConfig","finalCardThemeConfig","finalAggregatorOptions","defaultMaterials","events","themeList","container","label","vNode","h","markRaw","CxCardCarousel","render","info","newObj","CxMarkerDefault","CxMarkerHtml","tagListeningOptions","MarkerEventKey","offset","p","position","f","e","materialKey","cover","category","__props","emits","__emit","leitingMethods","inject","markerManager","init","finalOptions","methods","__expose","load","unref","onMounted","watch","newCesium","newViewer","nv","ov","onUnmounted","_renderSlot","_ctx","CxMarkerManage","withInstall","_MarkerManage"],"mappings":"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","x_google_ignoreList":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { p as c, c as m, w as l } from "../create-DynflqE1.js";
|
|
2
|
-
import { defineComponent as p,
|
|
2
|
+
import { defineComponent as p, openBlock as r, createElementBlock as a, normalizeClass as s, unref as n, normalizeStyle as x, toDisplayString as i, createCommentVNode as f } from "vue";
|
|
3
3
|
const k = {
|
|
4
4
|
text: { type: String, default: "" },
|
|
5
5
|
textStyle: {
|
|
@@ -13,14 +13,14 @@ const k = {
|
|
|
13
13
|
props: k,
|
|
14
14
|
setup(o) {
|
|
15
15
|
const e = o, t = m("marker");
|
|
16
|
-
return (y, d) => (
|
|
16
|
+
return (y, d) => (r(), a("div", {
|
|
17
17
|
class: s(n(t).b("text"))
|
|
18
18
|
}, [
|
|
19
|
-
e.text ? (
|
|
19
|
+
e.text ? (r(), a("span", {
|
|
20
20
|
key: 0,
|
|
21
21
|
class: s(n(t).be("text", "name")),
|
|
22
|
-
style:
|
|
23
|
-
},
|
|
22
|
+
style: x(e.textStyle)
|
|
23
|
+
}, i(e.text), 7)) : f("", !0)
|
|
24
24
|
], 2));
|
|
25
25
|
}
|
|
26
26
|
}), b = l(u);
|
|
@@ -28,3 +28,4 @@ export {
|
|
|
28
28
|
b as CxMarkerText,
|
|
29
29
|
b as default
|
|
30
30
|
};
|
|
31
|
+
//# sourceMappingURL=marker-text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marker-text.js","sources":["../../src/components/marker-text/src/markerText.ts","../../src/components/marker-text/src/MarkerText.vue","../../src/components/marker-text/index.ts"],"sourcesContent":["import { ExtractPropTypes } from 'vue';\r\nexport const markerTextProps = {\r\n text: { type: String, default: '' },\r\n textStyle: {\r\n type: Object,\r\n default: () => {},\r\n },\r\n} as const;\r\n\r\nexport type MarkerTextProps = ExtractPropTypes<typeof markerTextProps>;\r\n","<template>\r\n <div :class=\"bem.b('text')\">\r\n <span :class=\"bem.be('text', 'name')\" v-if=\"props.text\" :style=\"props.textStyle\">{{\r\n props.text\r\n }}</span>\r\n </div>\r\n</template>\r\n<script lang=\"ts\" setup>\r\n import { createNamespace, prefix } from '@report-components/utils/create';\r\n import { markerTextProps } from './markerText';\r\n defineOptions({ name: `${prefix}-marker-text` });\r\n const props = defineProps(markerTextProps);\r\n const bem = createNamespace('marker');\r\n</script>\r\n","import { withInstall } from '@report-components/utils/with-install';\r\nimport _MarkerText from './src/MarkerText.vue';\r\nexport * from './src/MarkerText.vue';\r\n\r\nconst CxMarkerText = withInstall(_MarkerText);\r\nexport { CxMarkerText };\nexport default CxMarkerText;\n"],"names":["markerTextProps","props","__props","bem","createNamespace","_createElementBlock","_normalizeClass","_unref","_normalizeStyle","_toDisplayString","CxMarkerText","withInstall","_MarkerText"],"mappings":";;AACO,MAAMA,IAAkB;AAAA,EAC7B,MAAM,EAAE,MAAM,QAAQ,SAAS,GAAA;AAAA,EAC/B,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS,MAAM;AAAA,IAAC;AAAA,EAAA;AAEpB;;;;;ACIE,UAAMC,IAAQC,GACRC,IAAMC,EAAgB,QAAQ;2BAXpCC,EAIM,OAAA;AAAA,MAJA,OAAKC,EAAEC,EAAAJ,CAAA,EAAI,EAAC,MAAA,CAAA;AAAA,IAAA;MAC4BF,EAAM,aAAlDI,EAES,QAAA;AAAA;QAFF,OAAKC,EAAEC,EAAAJ,CAAA,EAAI,GAAE,QAAA,MAAA,CAAA;AAAA,QAAqC,OAAKK,EAAEP,EAAM,SAAS;AAAA,MAAA,GAC7EQ,EAAAR,EAAM,IAAI,GAAA,CAAA;;;ICCVS,IAAeC,EAAYC,CAAW;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { p as V, c as N, w as M } from "../create-DynflqE1.js";
|
|
2
|
-
import { defineComponent as J, ref as m, inject as Y, watch as H, onMounted as y, onUnmounted as F,
|
|
2
|
+
import { defineComponent as J, ref as m, inject as Y, watch as H, onMounted as y, onUnmounted as F, openBlock as f, createElementBlock as Q, Fragment as U, withDirectives as K, createElementVNode as l, normalizeClass as s, unref as a, renderList as z, createTextVNode as u, toDisplayString as D, vShow as x } from "vue";
|
|
3
3
|
import { MeasurementTool as d } from "@report-components/cesium-core";
|
|
4
4
|
const G = {
|
|
5
5
|
Cesium: {
|
|
@@ -106,11 +106,11 @@ const G = {
|
|
|
106
106
|
measurements: []
|
|
107
107
|
};
|
|
108
108
|
}
|
|
109
|
-
}), (A, e) => (
|
|
109
|
+
}), (A, e) => (f(), Q(U, null, [
|
|
110
110
|
K(l("div", {
|
|
111
111
|
class: s([a(t).b("box"), a(t).is("small", g.size === "small")])
|
|
112
112
|
}, [
|
|
113
|
-
(
|
|
113
|
+
(f(), Q(U, null, z(b, (i) => l("div", {
|
|
114
114
|
key: i.key,
|
|
115
115
|
class: s([a(t).be("box", "btn"), { active: C.value === i.key }]),
|
|
116
116
|
onClick: (B) => w(i.key)
|
|
@@ -168,3 +168,4 @@ export {
|
|
|
168
168
|
rA as default,
|
|
169
169
|
G as measurementProps
|
|
170
170
|
};
|
|
171
|
+
//# sourceMappingURL=measurement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"measurement.js","sources":["../../src/components/measurement/src/measurement.ts","../../src/assets/icons/icon-001.png","../../src/assets/icons/icon-002.png","../../src/assets/icons/icon-003.png","../../src/assets/icons/icon-004.png","../../src/assets/icons/icon-005.png","../../src/assets/icons/icon-006.png","../../src/assets/icons/icon-007.png","../../src/assets/icons/icon-008.png","../../src/assets/icons/icon-009.png","../../src/assets/icons/icon-010.png","../../src/assets/icons/icon-011.png","../../src/assets/icons/icon-012.png","../../src/components/measurement/src/Measurement.vue","../../src/components/measurement/index.ts"],"sourcesContent":["import { PropType } from 'vue';\n\nexport const measurementProps = {\n Cesium: {\n type: Object as PropType<any>,\n required: false,\n },\n viewer: {\n type: Object as PropType<any>,\n required: false,\n },\n size: {\n type: String as PropType<'default' | 'small'>,\n default: 'small',\n },\n overlayContainerId: {\n type: String as PropType<string>,\n default: 'cx-measurement-overlay',\n },\n} as const;\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAQ9JREFUOE+dkjESAUEQRe0NOAEiIaEMERluQCYQcAKcACcgFLqBlQn3BsgFbsD7zKixdlbVTtWv7e3/+0937wY5z3lwXCrgJEkTkxIag6NC0MxqsDAG86wGoWk7vYP4vL69xPPq6rUDZ1574z+Pht2La6BioWXm9pmcIOpJBv9u/eE/I1iGUSLiPEQpyQ1eHRbhy5b//AeQTZIHMESw9RgMyG9AH81eGtdART1Qgrz75uGiC1yERtq3AUm1fAZriAnvM576icR9xaZmxrOM5mIN5iReSVABU8gOxe14zPvIvcwaqOVQbVG0JL4Sr1JijdtFUwgQDXjRYrQUfYUx2IFbSlyD0w6GMlBRVfNmONETek2ROovJNQ4AAAAASUVORK5CYII=\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAATBJREFUOE+lk4FNw0AMRbkJgAlYASYgTABMQNigTECZgDIBHaGdgHYCygZsAEwQ3ot8p2uUFqRasnKO7X/+PjsdDaTrunN+XaMN6lnZoCt0mVLyXCTVBskT7Of4t45ETYEu0W90CshLzisAJC/i5iXfliCDi+A/wZhHzAL/rc4eoLr5HodBO4XYFucr+kDsLAXnd37I72ZfcvZFtVK6EmDK4RE9HZa9CyzofOF/EmDVc0mpGXC2GoHlbrn2qEjJ42Cz5gT4AnXAJ8ZZ/Njgvxj4Z9h3VvAfgA8A8kz0OOQJ0P5Fwf5IYbKPgkEHNdHSbORbHo6a69g5nrHB1xw+SPmGapR9LidybJSdQJ+3DN3YMtmT46CVN0+alvyDuky+QC9bAPE8BnuLCcN1dom21vkXc/+iuK1zLp4AAAAASUVORK5CYII=\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAPCAYAAADtc08vAAAABHNCSVQICAgIfAhkiAAAAQBJREFUKFONk4EZwTAUhGUDG9AJsAETYAI1iZoEE6gJ2AAT6AjdoP6rpEKbtvm+95F7r5e7a2oG3iqKYs726mMN/xfGmJvDzR9BZvfHAEkMXkAQ1Qg4Xc0DtWYgbSJgZgV+prbMlIeUCmgM+XlRTxqyEVzMSv6EipjNHUECsKNmgI8Ogin9O7VnNjEwju3pJwDZ6Fw8I/mbUoXdyNsUgqzz6Y9lHSqlqQjkaWTl5z0Jvpl577701JPAZbZwIcrT0qpotWHlK8SLMnMEvYP8CZDMqptIw8kKvsomuz6BgpF8yQtlIXxGjXWJlNf/txCD6Tq3reoa1wgEWJlBAv9L1NAbCC98xCsG9JwAAAAASUVORK5CYII=\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAGZJREFUOE9j/A8EDEiAEQiQ+ehsDPUgAZgmZDYuQzDUowvgsx0mh2IhupOAihoJGFKP4mUQB2pII9DkBkIuAKoFqamHuQIcYKMGDPkwoHpeACYLQompASMpIwsQSokgebx5gdTsDADpy5nxGGvoWgAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAABHNCSVQICAgIfAhkiAAAAMVJREFUKFOVkoENwiAQRWUCu4k6gbhBnaB0g47iBtYJdASdQLsJG+D7yUGw0agkP4Xj/7t/R92iWimlwLEDaws/+I7OuVOmOW0gNnzOwIMJXI2g88rOe4QxC0RQ1kDwMqvaqgq4c7dzZuNIQBleyFkIRyI56CVQ9gZy9l0XKHt46idKEK2x4S3TgvAObLt/BSFbWmJp86VCsRQg/t60slrjmnf/YaxKOHHn64fTSLdApTU5LQ80vRtoy8NV85Y9Yf5rjJnzBCCwZhr1an8TAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAQFJREFUOE+VUzsSAUEQtZEj2FsQysjIyIRKtCmRkgnJyIRCmZURIZRxC07Be6pnq3e2Z5WuejX9mf5OT/QGVRRFIC37fOE+Fc5J86Eghfu+oiy7s+US+iXh0gvYAQPhjziHwA14AkmuZQoS5CGGPs49QHkMnIE1cBf+irPnqvgOTAIwc/OH8wR2JjADMEurJDOdSRugalXA/k6Bsp3zCnbOJ7ECsOe20bN2pn0eamEJQ8cbmO/cgH0B1EItzNS0LWe+Cp91agU4SHl8tpAzW7gA9SyAsUgjmTYHRgeWzczkqeNSZRQZq5zC2gW2QAxwN8hTRzkurLJW6OghvvQv/PudP2fPqPEaEaVuAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAVCAYAAACg/AXsAAAABHNCSVQICAgIfAhkiAAAAPZJREFUOE/tk0EOwUAUhs0NLCyRLsTa2ooT4ATqRuICWhfA1ik4AYmtBCeo769OUq1pxk7ES740fW/eP2/+aU3NEUmSnCk1c+W2MUa5Upi/iL8nWom5Kx59DO24vFPeaeyPieBHnSPtoAs9fDm5fCl5QvOYxSOYwAUacIMjRIjFRbFUhMaAxxRCuMMcNrCwt5OJqz6AJcQI7tPboaiCkooZhcjuRE3TtMhJLA1yViTIhML8JBITV9AkW5p1DNusY2raIWgjHe05iV1U2ElialqDhPR+yBol8BJVf7FuR82BJvvodoq7+LxXfvY+Am898W3Mr/ueSR4JpmsW0RAzTwAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAWCAYAAAAb+hYkAAAABHNCSVQICAgIfAhkiAAAAR1JREFUOE+tk6FywkAURVlZ1SIqcK2owCE6g+YLWhwSiQOJI6hKcJXF9R9QqcUEybSmOFyLw4VzmSSThF0SGHbmTjbknXff7lxM5YJl8kwYhg1++0B6+qhtjPlP19mgJQUPaIa6KABqOaHIJaBgTKHH+5R9n32muc3pl8JbJGCA1jAaNVmuM82puEffqFl4JrVjrA6PT1QHWKVdtD9yiiBdgG7wEUjjZtZVoR6t31ENp01ZJ93aBFXzl3DqTBdBQzq+nevkAYzQDePtyp7pAOXjE8O2RNzxcYGekKKkHBamfEbhK/pBzxEk52RlnIiPXP7iQt7V4AWnqhPSBwp9Hkq5umu8L6BuERT/YwVuUSOfP1f2NKbgZelEpEex7fdW8nMXLD81JwAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAANCAYAAACtpZ5jAAAABHNCSVQICAgIfAhkiAAAAN9JREFUOE+1krENwjAUROMNGAEqWtLSkJIONgAmwB2MQAkTwAbABjBBwgYZIRuYd8gWIIHiFLZ0svX/3eX8Y5MlWiaRb5be2DnXJ/0E3I0xdexN0PXgzsADXRV0r8Q0C7YzEKkBK0iXNnMfpvQ60aU76RCMZaaUFuzBEOz+GIsbkm05j8ECLIFuPMC8CcaOwoGCJYWM121pP/oVuhydjI8g10iCseLrqzdQgCvN+S9zP9OR703ZN/4Gqun/SP9+FT6pmkqgkUQtdOIqRA2sxvBlHOXSgZT+HXcIE0VNlvgJ9ttGDjhkGwIAAAAASUVORK5CYII=\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAU5JREFUOE+dkjFLQzEURnsRRUW0uDkI3XQo0m6Odms3QRHHjk5SNzfd/Ac66iKKIm0nHf0HduncooibiLo5PM/3SCAvlmL74NDk3uTk3jSWG/FLkmSTLUeQhwMbcX8OQZ89H46FcQWvCGbBxhFssfEGvqCeEfzpz6wVt+jWNInXzOwhFmT7MysPEFwT24BlBD+x4JmE+puGSRYUQwGnzzF/g0tye8rFAtm34RtmYIWFqir9EOzycwUV4o8ZAckCgSdowz68wD0LtckLdCfrsEQ8iQUXBPRISjoV4SHjEygy77ry35mfMm94qQU3v0bw1p9IXPfQhw6xKvM643MoM++EAi3Sy1Lf8yQl8iXros6gBjq1QH7V59MW3NPsMdbbJm+lQDDBWP/MFCzCHfmdWKC+j52gwYLM4+EACdT7p9aEFaYVhLZB42EV/lcwtMJfrJ6SRKgz9VoAAAAASUVORK5CYII=\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAMZJREFUOE9jZACC////JwApeRCbSOAAVGcBxMsZgZpBnP1EakRX9h3ZAEdGRsYDUBf9B7IZsRkKtNAAKH4CiFmBuJskA6CaQa59CMQOQDs+EG0ANs0gF+IMA2Qv4NKMbgA8DJD9jk8zQQMIacZrADGacRpArGasBpCiGcMAoMAHaKoEJSIDYEw8IJRCkaOxEKi4HhS10ERygZBmmAsWABnxUMUfSdEMM+A/VDOINgI6myibYa4DeWEekBMHxHOAmjOIcTayGgDyvZQkMv2X2QAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAMFJREFUOE+Vk70NwjAQRnMVJekQHRvACBkBNqCkgw0IHV0yAiOxAaGkgg3MuyAjix/nztInpbj34thfpHCsEELFeEMWpCMrcfAFgjPzM3Iia3LxCgLQQURqZC3PW6/gATQiR7IjV7OAN9YAe3IjE4XJ0iRI4H776bkNCnKwirKCITgrsMB/BVb4p8AD94KPeuo9l7EslpaqIK3nBujOVU0tcNzBdz0xeAQdw2Oi3X7VU0T/NtOKZ6Dw/F1PEf0s03oC+SBfAKxisH4AAAAASUVORK5CYII=\"","<template>\r\n <div v-show=\"visible\" :class=\"[bem.b('box'), bem.is('small', props.size === 'small')]\">\r\n <div\r\n v-for=\"type in types\"\r\n :key=\"type.key\"\r\n :class=\"[bem.be('box', 'btn'), { active: activeType === type.key }]\"\r\n @click=\"handleMeasure(type.key)\"\r\n >\r\n <div :class=\"bem.be('box', 'icon')\">\r\n <img :src=\"type.icon\" :alt=\"type.label\" />\r\n </div>\r\n {{ type.label }}\r\n </div>\r\n <div :class=\"bem.be('box', 'btn')\" @click=\"handleSpecifiedClear\">\r\n <div :class=\"bem.be('box', 'icon')\">\r\n <img :src=\"iconClear\" alt=\"指定清除\" />\r\n </div>\r\n 指定清除\r\n </div>\r\n <div :class=\"bem.be('box', 'btn')\" @click=\"handleClear\">\r\n <div :class=\"bem.be('box', 'icon')\">\r\n <img :src=\"iconClear\" alt=\"清除\" />\r\n </div>\r\n 清除全部\r\n </div>\r\n </div>\r\n <div :id=\"overlayContainerId\" :class=\"bem.be('box', 'container')\"></div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\n import { ref, onMounted, onUnmounted, unref, inject, Ref, watch } from 'vue';\r\n import { createNamespace, prefix } from '@report-components/utils/create';\r\n import { measurementProps } from './measurement';\r\n import { MeasurementTool } from '@report-components/cesium-core';\r\n\r\n // Icons\r\n import iconClear from '../../../assets/icons/icon-001.png';\r\n import iconCoordinate from '../../../assets/icons/icon-002.png';\r\n import iconRegular from '../../../assets/icons/icon-003.png';\r\n import iconRectangle from '../../../assets/icons/icon-004.png';\r\n import iconCircle from '../../../assets/icons/icon-005.png';\r\n import iconArea from '../../../assets/icons/icon-006.png';\r\n import iconHeight from '../../../assets/icons/icon-007.png';\r\n import iconVertical from '../../../assets/icons/icon-008.png';\r\n import iconHorizontal from '../../../assets/icons/icon-009.png';\r\n import iconPolyline from '../../../assets/icons/icon-010.png';\r\n import iconTriangle from '../../../assets/icons/icon-011.png';\r\n import iconSpace from '../../../assets/icons/icon-012.png';\r\n\r\n defineOptions({ name: `${prefix}-measurement` });\r\n const props = defineProps(measurementProps);\r\n const bem = createNamespace('measurement');\r\n const overlayContainerId = props.overlayContainerId || 'cx-measurement-overlay';\r\n\r\n const types = [\r\n { key: 'horizontal', label: '水平测距', icon: iconHorizontal },\r\n { key: 'vertical', label: '垂直测距', icon: iconVertical },\r\n { key: 'space', label: '空间测距', icon: iconSpace },\r\n { key: 'triangle', label: '三角测量', icon: iconTriangle },\r\n { key: 'polyline', label: '折线测距', icon: iconPolyline },\r\n { key: 'area', label: '面积测量', icon: iconArea },\r\n { key: 'circle', label: '圆形测量', icon: iconCircle },\r\n { key: 'rectangle', label: '矩形测量', icon: iconRectangle },\r\n { key: 'regularPolygon', label: '正多边形', icon: iconRegular },\r\n { key: 'terrainHeight', label: '地形高度', icon: iconHeight },\r\n { key: 'coordinate', label: '坐标查询', icon: iconCoordinate },\r\n ];\r\n\r\n const activeType = ref('');\r\n const visible = ref(false);\r\n const tool = ref<MeasurementTool | null>(null);\r\n let cesiumInstance: any = null;\r\n const leitingMethods = inject('leitingMethods') as Ref<any>;\r\n const init = (Cesium: any, viewer: any) => {\r\n if (!Cesium || !viewer) return;\r\n cesiumInstance = Cesium;\r\n tool.value = new MeasurementTool({ Cesium, viewer });\r\n };\r\n\r\n const handleMeasure = (type: string) => {\r\n const methods = unref(leitingMethods) as any;\r\n if (!tool.value && methods) {\r\n const Cesium = methods.getCesium();\r\n const viewer = methods.getViewer();\r\n cesiumInstance = Cesium;\r\n tool.value = new MeasurementTool({ Cesium, viewer });\r\n }\r\n if (!tool.value || !cesiumInstance) return;\r\n\r\n if (type === 'clear') {\r\n handleClear();\r\n return;\r\n }\r\n // 同类型连续测量:保持选中状态,直接再次启动测量\r\n activeType.value = type;\r\n tool.value.measure(type as any, {\r\n overlayContainerId,\r\n color: cesiumInstance.Color.YELLOW.withAlpha(0.5),\r\n lineColor: cesiumInstance.Color.fromCssColorString('#51ff00'),\r\n dashLineColor: cesiumInstance.Color.RED,\r\n pointColor: cesiumInstance.Color.YELLOW,\r\n });\r\n };\r\n\r\n const handleClear = () => {\r\n if (tool.value) {\r\n tool.value.clearAll();\r\n activeType.value = '';\r\n }\r\n };\r\n\r\n const handleSpecifiedClear = () => {\r\n if (tool.value) {\r\n tool.value.toggleSpecifiedClear(overlayContainerId);\r\n }\r\n };\r\n\r\n const open = (val: boolean) => {\r\n visible.value = val;\r\n };\r\n\r\n function load() {\r\n if (tool.value) return tool.value;\r\n const methods = unref(leitingMethods) as any;\r\n const Cesium = methods?.getCesium?.();\r\n const viewer = methods?.getViewer?.();\r\n if (Cesium && viewer) {\r\n init(Cesium, viewer);\r\n } else if (props.Cesium && props.viewer) {\r\n init(Cesium, viewer);\r\n }\r\n }\r\n watch(\r\n () => leitingMethods?.value,\r\n (nv, ov) => {\r\n /* ... */\r\n load();\r\n },\r\n { deep: false },\r\n );\r\n onMounted(() => {\r\n load();\r\n });\r\n\r\n onUnmounted(() => {\r\n if (tool.value) {\r\n tool.value.clear();\r\n tool.value = null;\r\n }\r\n });\r\n\r\n defineExpose({\r\n init,\r\n open,\r\n tool,\r\n setMeasurementInfo(config: any) {\r\n if (tool.value) {\r\n config.measurements?.forEach((item: any) => {\r\n item.options = {\r\n overlayContainerId,\r\n color: cesiumInstance.Color.YELLOW,\r\n lineColor: cesiumInstance.Color.fromCssColorString('#51ff00'),\r\n dashLineColor: cesiumInstance.Color.RED,\r\n pointColor: cesiumInstance.Color.YELLOW,\r\n };\r\n });\r\n tool.value.setMeasurementsConfig(config);\r\n }\r\n },\r\n getMeasurementInfo() {\r\n if (tool.value) {\r\n let config = tool.value.getMeasurementsConfig();\r\n config.measurements?.forEach((item: any) => {\r\n delete item.options;\r\n });\r\n return config;\r\n }\r\n return {\r\n measurements: [],\r\n };\r\n },\r\n });\r\n</script>\r\n","import { withInstall } from '@report-components/utils/with-install';\r\nimport _Measurement from './src/Measurement.vue';\r\nexport * from './src/measurement';\r\n\r\nconst CxMeasurement = withInstall(_Measurement);\r\nexport { CxMeasurement };\nexport default CxMeasurement;\n"],"names":["measurementProps","iconClear","iconCoordinate","iconRegular","iconRectangle","iconCircle","iconArea","iconHeight","iconVertical","iconHorizontal","iconPolyline","iconTriangle","iconSpace","props","__props","bem","createNamespace","overlayContainerId","types","activeType","ref","visible","tool","cesiumInstance","leitingMethods","inject","init","Cesium","viewer","MeasurementTool","handleMeasure","type","methods","unref","handleClear","handleSpecifiedClear","open","val","load","watch","nv","ov","onMounted","onUnmounted","__expose","config","item","_createElementVNode","_normalizeClass","_unref","_createElementBlock","_Fragment","_renderList","$event","_toDisplayString","CxMeasurement","withInstall","_Measurement"],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export * from './src/positionPicker';
|
|
2
|
+
declare const CxPositionPicker: import('@report-components/utils/with-install').SFCWithInstall<import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
3
|
+
readonly modelValue: {
|
|
4
|
+
readonly type: import('vue').PropType<import('./src/positionPicker').PositionValue | null>;
|
|
5
|
+
readonly default: null;
|
|
6
|
+
};
|
|
7
|
+
readonly Cesium: {
|
|
8
|
+
readonly type: import('vue').PropType<any>;
|
|
9
|
+
readonly required: false;
|
|
10
|
+
};
|
|
11
|
+
readonly viewer: {
|
|
12
|
+
readonly type: import('vue').PropType<any>;
|
|
13
|
+
readonly required: false;
|
|
14
|
+
};
|
|
15
|
+
readonly label: {
|
|
16
|
+
readonly type: StringConstructor;
|
|
17
|
+
readonly default: "位置";
|
|
18
|
+
};
|
|
19
|
+
readonly tiandituKey: {
|
|
20
|
+
readonly type: StringConstructor;
|
|
21
|
+
readonly default: "";
|
|
22
|
+
};
|
|
23
|
+
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
24
|
+
change: (value: import('./src/positionPicker').PositionValue | null) => any;
|
|
25
|
+
"update:modelValue": (value: import('./src/positionPicker').PositionValue | null) => any;
|
|
26
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
27
|
+
readonly modelValue: {
|
|
28
|
+
readonly type: import('vue').PropType<import('./src/positionPicker').PositionValue | null>;
|
|
29
|
+
readonly default: null;
|
|
30
|
+
};
|
|
31
|
+
readonly Cesium: {
|
|
32
|
+
readonly type: import('vue').PropType<any>;
|
|
33
|
+
readonly required: false;
|
|
34
|
+
};
|
|
35
|
+
readonly viewer: {
|
|
36
|
+
readonly type: import('vue').PropType<any>;
|
|
37
|
+
readonly required: false;
|
|
38
|
+
};
|
|
39
|
+
readonly label: {
|
|
40
|
+
readonly type: StringConstructor;
|
|
41
|
+
readonly default: "位置";
|
|
42
|
+
};
|
|
43
|
+
readonly tiandituKey: {
|
|
44
|
+
readonly type: StringConstructor;
|
|
45
|
+
readonly default: "";
|
|
46
|
+
};
|
|
47
|
+
}>> & Readonly<{
|
|
48
|
+
onChange?: ((value: import('./src/positionPicker').PositionValue | null) => any) | undefined;
|
|
49
|
+
"onUpdate:modelValue"?: ((value: import('./src/positionPicker').PositionValue | null) => any) | undefined;
|
|
50
|
+
}>, {
|
|
51
|
+
readonly label: string;
|
|
52
|
+
readonly modelValue: import('./src/positionPicker').PositionValue | null;
|
|
53
|
+
readonly tiandituKey: string;
|
|
54
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
|
|
55
|
+
viewerContainerRef: HTMLDivElement;
|
|
56
|
+
}, HTMLDivElement>>;
|
|
57
|
+
export { CxPositionPicker };
|
|
58
|
+
export default CxPositionPicker;
|