vue-openlayers-plugin 1.0.82 → 1.0.85

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.
Files changed (233) hide show
  1. package/lib/BasemapPanel-3f78db9f.mjs +280 -0
  2. package/lib/CoordinateLocationDialog-d265fbae.mjs +263 -0
  3. package/lib/FilterPanel-136dc7d8.mjs +6 -0
  4. package/lib/LayerPanel-58997ef0.mjs +6 -0
  5. package/lib/MapPrintDialog-6ed0e095.mjs +6 -0
  6. package/lib/MeasurementDialog-b86c21c6.mjs +369 -0
  7. package/lib/MyMarkersDialog-fbbd0aeb.mjs +584 -0
  8. package/lib/RegionNavigationDialog-0808549f.mjs +1320 -0
  9. package/lib/ViewBookmarksDialog-94010687.mjs +723 -0
  10. package/lib/index-14efa785.mjs +756 -0
  11. package/lib/{index-61901e1f.mjs → index-5a13e877.mjs} +50503 -53903
  12. package/lib/index-5b1583d0.mjs +839 -0
  13. package/lib/{index.es-c17b5917.mjs → index.es-0c397170.mjs} +1 -1
  14. package/lib/index.esm.js +65 -56
  15. package/lib/index.umd.js +73180 -71503
  16. package/lib/style.css +1705 -1704
  17. package/package.json +11 -5
  18. package/types/src/assets/index.d.ts +9 -0
  19. package/types/src/assets/index.d.ts.map +1 -0
  20. package/types/src/components/CustomDialog/CustomDialog.vue.d.ts +16 -16
  21. package/types/src/components/CustomDialog/icons/index.d.ts +14 -0
  22. package/types/src/components/CustomDialog/icons/index.d.ts.map +1 -0
  23. package/types/src/components/OlBaseLayerSwitcher.vue.d.ts +19 -0
  24. package/types/src/components/OlBaseLayerSwitcher.vue.d.ts.map +1 -0
  25. package/types/src/components/OlControlPanel.vue.d.ts +63 -0
  26. package/types/src/components/OlControlPanel.vue.d.ts.map +1 -0
  27. package/types/src/components/OlDialogs/BasemapPanel.vue.d.ts +20 -0
  28. package/types/src/components/OlDialogs/BasemapPanel.vue.d.ts.map +1 -0
  29. package/types/src/components/OlDialogs/CoordinateLocationDialog.vue.d.ts +21 -0
  30. package/types/src/components/OlDialogs/CoordinateLocationDialog.vue.d.ts.map +1 -0
  31. package/types/src/components/OlDialogs/DialogManager.d.ts +58 -0
  32. package/types/src/components/OlDialogs/DialogManager.d.ts.map +1 -0
  33. package/types/src/components/OlDialogs/FilterPanel.vue.d.ts +33 -0
  34. package/types/src/components/OlDialogs/FilterPanel.vue.d.ts.map +1 -0
  35. package/types/src/components/OlDialogs/LayerPanel.vue.d.ts +1345 -0
  36. package/types/src/components/OlDialogs/LayerPanel.vue.d.ts.map +1 -0
  37. package/types/src/components/OlDialogs/LayerStyleConfig.vue.d.ts +23 -0
  38. package/types/src/components/OlDialogs/LayerStyleConfig.vue.d.ts.map +1 -0
  39. package/types/src/components/OlDialogs/LayerTreeNode.vue.d.ts +28 -0
  40. package/types/src/components/OlDialogs/LayerTreeNode.vue.d.ts.map +1 -0
  41. package/types/src/components/OlDialogs/MapDrawingDialog/components/ListTab.vue.d.ts +3 -0
  42. package/types/src/components/OlDialogs/MapDrawingDialog/components/ListTab.vue.d.ts.map +1 -0
  43. package/types/src/components/OlDialogs/MapDrawingDialog/components/MarkTab.vue.d.ts +3 -0
  44. package/types/src/components/OlDialogs/MapDrawingDialog/components/MarkTab.vue.d.ts.map +1 -0
  45. package/types/src/components/OlDialogs/MapDrawingDialog/index.vue.d.ts +3 -0
  46. package/types/src/components/OlDialogs/MapDrawingDialog/index.vue.d.ts.map +1 -0
  47. package/types/src/components/OlDialogs/MapPrintDialog.vue.d.ts +24 -0
  48. package/types/src/components/OlDialogs/MapPrintDialog.vue.d.ts.map +1 -0
  49. package/types/src/components/OlDialogs/MeasurementDialog.vue.d.ts +41 -0
  50. package/types/src/components/OlDialogs/MeasurementDialog.vue.d.ts.map +1 -0
  51. package/types/src/components/OlDialogs/MyMarkersDialog.vue.d.ts +21 -0
  52. package/types/src/components/OlDialogs/MyMarkersDialog.vue.d.ts.map +1 -0
  53. package/types/src/components/OlDialogs/RegionNavigationDialog.vue.d.ts +25 -0
  54. package/types/src/components/OlDialogs/RegionNavigationDialog.vue.d.ts.map +1 -0
  55. package/types/src/components/OlDialogs/ViewBookmarksDialog.vue.d.ts +21 -0
  56. package/types/src/components/OlDialogs/ViewBookmarksDialog.vue.d.ts.map +1 -0
  57. package/types/src/components/OlDialogs/registry.d.ts +39 -0
  58. package/types/src/components/OlDialogs/registry.d.ts.map +1 -0
  59. package/types/src/components/OlDrawToolbar.vue.d.ts +61 -0
  60. package/types/src/components/OlDrawToolbar.vue.d.ts.map +1 -0
  61. package/types/src/components/OlLegendPanel.vue.d.ts +69 -0
  62. package/types/src/components/OlLegendPanel.vue.d.ts.map +1 -0
  63. package/types/src/components/OlMapContainer.vue.d.ts +112 -0
  64. package/types/src/components/OlMapContainer.vue.d.ts.map +1 -0
  65. package/types/src/components/OlMapPopup/ArrayPopup.vue.d.ts +47 -0
  66. package/types/src/components/OlMapPopup/ArrayPopup.vue.d.ts.map +1 -0
  67. package/types/src/components/OlMapPopup/BasePopup.vue.d.ts +63 -0
  68. package/types/src/components/OlMapPopup/BasePopup.vue.d.ts.map +1 -0
  69. package/types/src/components/OlMapPopup/HtmlPopup.vue.d.ts +45 -0
  70. package/types/src/components/OlMapPopup/HtmlPopup.vue.d.ts.map +1 -0
  71. package/types/src/components/OlMapPopup/ImagePopup.vue.d.ts +45 -0
  72. package/types/src/components/OlMapPopup/ImagePopup.vue.d.ts.map +1 -0
  73. package/types/src/components/OlMapPopup/index.d.ts +9 -0
  74. package/types/src/components/OlMapPopup/index.d.ts.map +1 -0
  75. package/types/src/components/OlMapPopup/types.d.ts +118 -0
  76. package/types/src/components/OlMapPopup/types.d.ts.map +1 -0
  77. package/types/src/components/OlMapSearch.vue.d.ts +126 -0
  78. package/types/src/components/OlMapSearch.vue.d.ts.map +1 -0
  79. package/types/src/components/OlMapTooltip.vue.d.ts +70 -0
  80. package/types/src/components/OlMapTooltip.vue.d.ts.map +1 -0
  81. package/types/src/core/EventBus.d.ts +66 -0
  82. package/types/src/core/EventBus.d.ts.map +1 -0
  83. package/types/src/core/EventManager.d.ts +147 -0
  84. package/types/src/core/EventManager.d.ts.map +1 -0
  85. package/types/src/core/FeatureHighlightManager.d.ts +103 -0
  86. package/types/src/core/FeatureHighlightManager.d.ts.map +1 -0
  87. package/types/src/core/GlobalStyleManager.d.ts +76 -0
  88. package/types/src/core/GlobalStyleManager.d.ts.map +1 -0
  89. package/types/src/core/LayerConfigManager.d.ts +66 -0
  90. package/types/src/core/LayerConfigManager.d.ts.map +1 -0
  91. package/types/src/core/LayerManager.d.ts +198 -0
  92. package/types/src/core/LayerManager.d.ts.map +1 -0
  93. package/types/src/core/LayerTreeManager.d.ts +125 -0
  94. package/types/src/core/LayerTreeManager.d.ts.map +1 -0
  95. package/types/src/core/MapManager.d.ts +203 -0
  96. package/types/src/core/MapManager.d.ts.map +1 -0
  97. package/types/src/core/MarkerDrawingAdapter.d.ts +125 -0
  98. package/types/src/core/MarkerDrawingAdapter.d.ts.map +1 -0
  99. package/types/src/core/PluginManager.d.ts +158 -0
  100. package/types/src/core/PluginManager.d.ts.map +1 -0
  101. package/types/src/core/PopupManager.d.ts +110 -0
  102. package/types/src/core/PopupManager.d.ts.map +1 -0
  103. package/types/src/core/SearchMarkerManager.d.ts +96 -0
  104. package/types/src/core/SearchMarkerManager.d.ts.map +1 -0
  105. package/types/src/core/TooltipHelper.d.ts +134 -0
  106. package/types/src/core/TooltipHelper.d.ts.map +1 -0
  107. package/types/src/core/amapSearchApi.d.ts +57 -0
  108. package/types/src/core/amapSearchApi.d.ts.map +1 -0
  109. package/types/src/core/basemapManager.d.ts +63 -0
  110. package/types/src/core/basemapManager.d.ts.map +1 -0
  111. package/types/src/core/configLoader.d.ts +159 -0
  112. package/types/src/core/configLoader.d.ts.map +1 -0
  113. package/types/src/core/drawing/BaseDrawing.d.ts +255 -0
  114. package/types/src/core/drawing/BaseDrawing.d.ts.map +1 -0
  115. package/types/src/core/drawing/DrawingManager.d.ts +394 -0
  116. package/types/src/core/drawing/DrawingManager.d.ts.map +1 -0
  117. package/types/src/core/drawing/IconDrawing.d.ts +188 -0
  118. package/types/src/core/drawing/IconDrawing.d.ts.map +1 -0
  119. package/types/src/core/drawing/ImageDrawing.d.ts +193 -0
  120. package/types/src/core/drawing/ImageDrawing.d.ts.map +1 -0
  121. package/types/src/core/drawing/LineDrawing.d.ts +193 -0
  122. package/types/src/core/drawing/LineDrawing.d.ts.map +1 -0
  123. package/types/src/core/drawing/MilitaryDrawing.d.ts +175 -0
  124. package/types/src/core/drawing/MilitaryDrawing.d.ts.map +1 -0
  125. package/types/src/core/drawing/MultiLineStringDrawing.d.ts +294 -0
  126. package/types/src/core/drawing/MultiLineStringDrawing.d.ts.map +1 -0
  127. package/types/src/core/drawing/MultiPointDrawing.d.ts +244 -0
  128. package/types/src/core/drawing/MultiPointDrawing.d.ts.map +1 -0
  129. package/types/src/core/drawing/MultiPolygonDrawing.d.ts +206 -0
  130. package/types/src/core/drawing/MultiPolygonDrawing.d.ts.map +1 -0
  131. package/types/src/core/drawing/PointDrawing.d.ts +175 -0
  132. package/types/src/core/drawing/PointDrawing.d.ts.map +1 -0
  133. package/types/src/core/drawing/PointWithTextDrawing.d.ts +183 -0
  134. package/types/src/core/drawing/PointWithTextDrawing.d.ts.map +1 -0
  135. package/types/src/core/drawing/PolygonDrawing.d.ts +240 -0
  136. package/types/src/core/drawing/PolygonDrawing.d.ts.map +1 -0
  137. package/types/src/core/drawing/TextDrawing.d.ts +164 -0
  138. package/types/src/core/drawing/TextDrawing.d.ts.map +1 -0
  139. package/types/src/core/drawing/index.d.ts +525 -0
  140. package/types/src/core/drawing/index.d.ts.map +1 -0
  141. package/types/src/core/geoJsonLocationTool.d.ts +116 -0
  142. package/types/src/core/geoJsonLocationTool.d.ts.map +1 -0
  143. package/types/src/core/layers/BaseLayer.d.ts +162 -0
  144. package/types/src/core/layers/BaseLayer.d.ts.map +1 -0
  145. package/types/src/core/layers/CanvasLayerHandler.d.ts +65 -0
  146. package/types/src/core/layers/CanvasLayerHandler.d.ts.map +1 -0
  147. package/types/src/core/layers/ClusterLayerHandler.d.ts +122 -0
  148. package/types/src/core/layers/ClusterLayerHandler.d.ts.map +1 -0
  149. package/types/src/core/layers/GMLLayerHandler.d.ts +107 -0
  150. package/types/src/core/layers/GMLLayerHandler.d.ts.map +1 -0
  151. package/types/src/core/layers/GeoJSONLayerHandler.d.ts +125 -0
  152. package/types/src/core/layers/GeoJSONLayerHandler.d.ts.map +1 -0
  153. package/types/src/core/layers/HeatmapLayerHandler.d.ts +86 -0
  154. package/types/src/core/layers/HeatmapLayerHandler.d.ts.map +1 -0
  155. package/types/src/core/layers/ImageVectorLayerHandler.d.ts +77 -0
  156. package/types/src/core/layers/ImageVectorLayerHandler.d.ts.map +1 -0
  157. package/types/src/core/layers/KMLLayerHandler.d.ts +95 -0
  158. package/types/src/core/layers/KMLLayerHandler.d.ts.map +1 -0
  159. package/types/src/core/layers/LayerFactory.d.ts +63 -0
  160. package/types/src/core/layers/LayerFactory.d.ts.map +1 -0
  161. package/types/src/core/layers/SuperMapServiceTester.d.ts +54 -0
  162. package/types/src/core/layers/SuperMapServiceTester.d.ts.map +1 -0
  163. package/types/src/core/layers/SuperMapTiledMapServiceHandler.d.ts +35 -0
  164. package/types/src/core/layers/SuperMapTiledMapServiceHandler.d.ts.map +1 -0
  165. package/types/src/core/layers/TiandituConfigHelper.d.ts +120 -0
  166. package/types/src/core/layers/TiandituConfigHelper.d.ts.map +1 -0
  167. package/types/src/core/layers/TiandituLayerHandler.d.ts +75 -0
  168. package/types/src/core/layers/TiandituLayerHandler.d.ts.map +1 -0
  169. package/types/src/core/layers/TileLayerHandler.d.ts +42 -0
  170. package/types/src/core/layers/TileLayerHandler.d.ts.map +1 -0
  171. package/types/src/core/layers/TileSuperMapRestHandler.d.ts +161 -0
  172. package/types/src/core/layers/TileSuperMapRestHandler.d.ts.map +1 -0
  173. package/types/src/core/layers/VectorTileLayerHandler.d.ts +126 -0
  174. package/types/src/core/layers/VectorTileLayerHandler.d.ts.map +1 -0
  175. package/types/src/core/layers/WFSLayerHandler.d.ts +80 -0
  176. package/types/src/core/layers/WFSLayerHandler.d.ts.map +1 -0
  177. package/types/src/core/layers/WKTLayerHandler.d.ts +123 -0
  178. package/types/src/core/layers/WKTLayerHandler.d.ts.map +1 -0
  179. package/types/src/core/layers/WMSLayerHandler.d.ts +78 -0
  180. package/types/src/core/layers/WMSLayerHandler.d.ts.map +1 -0
  181. package/types/src/core/layers/WMTSLayerHandler.d.ts +44 -0
  182. package/types/src/core/layers/WMTSLayerHandler.d.ts.map +1 -0
  183. package/types/src/core/layers/index.d.ts +20 -0
  184. package/types/src/core/layers/index.d.ts.map +1 -0
  185. package/types/src/core/layers/interfaces.d.ts +95 -0
  186. package/types/src/core/layers/interfaces.d.ts.map +1 -0
  187. package/types/src/core/mapOperationTool.d.ts +145 -0
  188. package/types/src/core/mapOperationTool.d.ts.map +1 -0
  189. package/types/src/core/measurementTool.d.ts +136 -0
  190. package/types/src/core/measurementTool.d.ts.map +1 -0
  191. package/types/src/core/overviewMapUtil.d.ts +62 -0
  192. package/types/src/core/overviewMapUtil.d.ts.map +1 -0
  193. package/types/src/core/proxyHelper.d.ts +66 -0
  194. package/types/src/core/proxyHelper.d.ts.map +1 -0
  195. package/types/src/core/storage.d.ts +139 -0
  196. package/types/src/core/storage.d.ts.map +1 -0
  197. package/types/src/core/styles/StyleFactory.d.ts +74 -0
  198. package/types/src/core/styles/StyleFactory.d.ts.map +1 -0
  199. package/types/src/core/styles/StyleManager.d.ts +77 -0
  200. package/types/src/core/styles/StyleManager.d.ts.map +1 -0
  201. package/types/src/core/styles/index.d.ts +67 -0
  202. package/types/src/core/styles/index.d.ts.map +1 -0
  203. package/types/src/core/styles/interfaces.d.ts +221 -0
  204. package/types/src/core/styles/interfaces.d.ts.map +1 -0
  205. package/types/src/core/tiandituSearchApi.d.ts +51 -0
  206. package/types/src/core/tiandituSearchApi.d.ts.map +1 -0
  207. package/types/src/data-old/testLayers.d.ts +84 -0
  208. package/types/src/data-old/testLayers.d.ts.map +1 -0
  209. package/types/src/examples-old/FilterExamples.d.ts +104 -0
  210. package/types/src/examples-old/FilterExamples.d.ts.map +1 -0
  211. package/types/src/hooks/useMap.d.ts +5 -0
  212. package/types/src/hooks/useMap.d.ts.map +1 -0
  213. package/types/src/services/searchService.d.ts +106 -0
  214. package/types/src/services/searchService.d.ts.map +1 -0
  215. package/types/src/test-old/FilterSystemTest.d.ts +57 -0
  216. package/types/src/test-old/FilterSystemTest.d.ts.map +1 -0
  217. package/types/src/types/index.d.ts +2 -11
  218. package/types/src/types/index.d.ts.map +1 -1
  219. package/types/src/types/map.d.ts +819 -0
  220. package/types/src/types/map.d.ts.map +1 -0
  221. package/types/src/types/plugin.d.ts +202 -0
  222. package/types/src/types/plugin.d.ts.map +1 -0
  223. package/types/src/utils/DiffusionAnimationHelper.d.ts +60 -0
  224. package/types/src/utils/DiffusionAnimationHelper.d.ts.map +1 -0
  225. package/types/src/utils/GifAnimationHelper.d.ts +31 -0
  226. package/types/src/utils/GifAnimationHelper.d.ts.map +1 -0
  227. package/types/src/utils/coordinateTransform.d.ts +28 -0
  228. package/types/src/utils/coordinateTransform.d.ts.map +1 -0
  229. package/types/src/utils/index.d.ts +8 -8
  230. package/types/src/utils/index.d.ts.map +1 -1
  231. package/types/src/utils/unitConverter.d.ts +36 -0
  232. package/types/src/utils/unitConverter.d.ts.map +1 -0
  233. package/types/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,95 @@
1
+ import { Layer } from 'ol/layer';
2
+ import { Source } from 'ol/source';
3
+ import { LayerConfig } from '../../types';
4
+ import { Map as OLMap } from 'ol';
5
+
6
+ /**
7
+ * 图层处理器接口
8
+ */
9
+ export interface ILayerHandler {
10
+ /**
11
+ * 创建图层
12
+ */
13
+ createLayer(): Layer<Source> | Promise<Layer<Source>>;
14
+ /**
15
+ * 获取图层实例
16
+ */
17
+ getLayer(): Layer<Source>;
18
+ /**
19
+ * 异步获取图层实例
20
+ */
21
+ getLayerAsync(): Promise<Layer<Source>>;
22
+ /**
23
+ * 获取图层配置
24
+ */
25
+ getConfig(): LayerConfig;
26
+ /**
27
+ * 更新图层配置
28
+ */
29
+ updateConfig(newConfig: Partial<LayerConfig>): void;
30
+ /**
31
+ * 设置地图实例
32
+ */
33
+ setMap(map: OLMap): void;
34
+ /**
35
+ * 设置图层透明度
36
+ */
37
+ setOpacity(opacity: number): void;
38
+ /**
39
+ * 设置图层可见性
40
+ */
41
+ setVisible(visible: boolean): void;
42
+ /**
43
+ * 设置图层层级
44
+ */
45
+ setZIndex(zIndex: number): void;
46
+ /**
47
+ * 获取图层层级
48
+ */
49
+ getZIndex(): number | undefined;
50
+ /**
51
+ * 更新图层样式
52
+ */
53
+ updateLayerStyles(style?: LayerConfig['style'], filter?: LayerConfig['filter'], customCss?: string): void;
54
+ /**
55
+ * 销毁图层
56
+ */
57
+ destroy(): void;
58
+ }
59
+ /**
60
+ * 图层类型枚举
61
+ */
62
+ export declare enum LayerType {
63
+ TILE = "tile",
64
+ WMS = "wms",
65
+ WMTS = "wmts",
66
+ WFS = "wfs",
67
+ GEOJSON = "geojson",
68
+ VECTOR = "vector",
69
+ KML = "kml",
70
+ GML = "gml",
71
+ WKT = "wkt",
72
+ HEATMAP = "heatmap",
73
+ CLUSTER = "cluster",
74
+ CANVAS = "canvas",
75
+ IMAGE_VECTOR = "image_vector",
76
+ VECTOR_TILE = "vector_tile"
77
+ }
78
+ /**
79
+ * 图层工厂接口
80
+ */
81
+ export interface ILayerFactory {
82
+ /**
83
+ * 创建图层处理器
84
+ */
85
+ createLayerHandler(config: LayerConfig): ILayerHandler;
86
+ /**
87
+ * 注册图层类型处理器
88
+ */
89
+ registerLayerType(type: string, handlerClass: new (config: LayerConfig) => ILayerHandler): void;
90
+ /**
91
+ * 获取支持的图层类型
92
+ */
93
+ getSupportedTypes(): string[];
94
+ }
95
+ //# sourceMappingURL=interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/core/layers/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,GAAG,IAAI,KAAK,EAAE,MAAM,IAAI,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAEtD;;OAEG;IACH,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;IAE1B;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAExC;;OAEG;IACH,SAAS,IAAI,WAAW,CAAC;IAEzB;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IAEpD;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC;IAEzB;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAElC;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC;;OAEG;IACH,SAAS,IAAI,MAAM,GAAG,SAAS,CAAC;IAEhC;;OAEG;IACH,iBAAiB,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1G;;OAEG;IACH,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,oBAAY,SAAS;IACnB,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,aAAa,CAAC;IAEvD;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,MAAM,EAAE,WAAW,KAAK,aAAa,GAAG,IAAI,CAAC;IAEhG;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE,CAAC;CAC/B"}
@@ -0,0 +1,145 @@
1
+ import { Map } from 'ol';
2
+
3
+ /**
4
+ * 地图操作工具类
5
+ * 提供地图的基本操作功能:放大、缩小、回到初始位置、定位等
6
+ */
7
+ export declare class MapOperationTool {
8
+ private map;
9
+ private initialCenter;
10
+ private initialZoom;
11
+ constructor(map: Map, initialCenter?: [number, number], initialZoom?: number);
12
+ /**
13
+ * 放大地图
14
+ * @param step 放大步长,默认为1
15
+ */
16
+ zoomIn(step?: number): void;
17
+ /**
18
+ * 缩小地图
19
+ * @param step 缩小步长,默认为1
20
+ */
21
+ zoomOut(step?: number): void;
22
+ /**
23
+ * 设置地图缩放级别
24
+ * @param zoom 缩放级别
25
+ */
26
+ setZoom(zoom: number): void;
27
+ /**
28
+ * 回到初始位置
29
+ */
30
+ fitToInitialExtent(): void;
31
+ /**
32
+ * 定位到指定坐标
33
+ * @param longitude 经度
34
+ * @param latitude 纬度
35
+ * @param zoom 缩放级别,可选
36
+ * @param duration 动画持续时间,默认1000ms
37
+ */
38
+ locateToCoordinate(longitude: number, latitude: number, zoom?: number, duration?: number): void;
39
+ /**
40
+ * 平移到指定坐标(不改变缩放级别)
41
+ * @param longitude 经度
42
+ * @param latitude 纬度
43
+ * @param duration 动画持续时间,默认1000ms
44
+ */
45
+ panToCoordinate(longitude: number, latitude: number, duration?: number): void;
46
+ /**
47
+ * 获取当前地图中心点坐标(经纬度)
48
+ * @returns [longitude, latitude]
49
+ */
50
+ getCurrentCenter(): [number, number];
51
+ /**
52
+ * 获取当前缩放级别
53
+ */
54
+ getCurrentZoom(): number;
55
+ /**
56
+ * 设置初始中心点和缩放级别
57
+ * @param center 初始中心点坐标 [longitude, latitude]
58
+ * @param zoom 初始缩放级别
59
+ */
60
+ setInitialView(center: [number, number], zoom: number): void;
61
+ /**
62
+ * 获取地图实例
63
+ */
64
+ getMap(): Map;
65
+ /**
66
+ * 更新地图实例
67
+ * @param map 新的地图实例
68
+ */
69
+ updateMap(map: Map): void;
70
+ /**
71
+ * 清除地图上绘制的所有图形
72
+ * 包括矢量图层、标记、绘制图形等
73
+ */
74
+ clearAllGraphics(): void;
75
+ /**
76
+ * 创建地图预览实例
77
+ * @param targetId 目标容器ID
78
+ * @returns 预览地图实例
79
+ */
80
+ createPreviewMap(targetId: string): Map | null;
81
+ /**
82
+ * 计算地图比例尺
83
+ * @param map 地图实例,默认使用当前地图
84
+ * @returns 比例尺文本
85
+ */
86
+ calculateScale(map?: Map): string;
87
+ /**
88
+ * 获取地图当前范围
89
+ * @returns 地图范围 [minX, minY, maxX, maxY]
90
+ */
91
+ getCurrentExtent(): number[] | null;
92
+ /**
93
+ * 设置地图范围
94
+ * @param extent 地图范围 [minX, minY, maxX, maxY]
95
+ * @param duration 动画持续时间,默认1000ms
96
+ */
97
+ fitToExtent(extent: number[], duration?: number): void;
98
+ /**
99
+ * 清理预览地图资源
100
+ * @param previewMap 预览地图实例
101
+ */
102
+ cleanupPreviewMap(previewMap: Map): void;
103
+ /**
104
+ * 获取地图图层信息
105
+ * @returns 图层信息数组
106
+ */
107
+ getLayersInfo(): any[];
108
+ /**
109
+ * 设置图层可见性
110
+ * @param layerId 图层ID
111
+ * @param visible 是否可见
112
+ */
113
+ setLayerVisibility(layerId: string, visible: boolean): void;
114
+ /**
115
+ * 定位到 GeoJSON 数据
116
+ * @param geoJsonData GeoJSON 数据(可以是 Feature、FeatureCollection 或 Geometry)
117
+ * @param options 定位选项
118
+ */
119
+ locateToGeoJSON(geoJsonData: any, options?: {
120
+ padding?: number[];
121
+ maxZoom?: number;
122
+ duration?: number;
123
+ minZoom?: number;
124
+ }): void;
125
+ /**
126
+ * 定位到单个 GeoJSON 要素的中心点
127
+ * @param geoJsonFeature 单个 GeoJSON Feature
128
+ * @param zoom 缩放级别,可选
129
+ * @param duration 动画持续时间,默认1000ms
130
+ */
131
+ locateToGeoJSONCenter(geoJsonFeature: any, zoom?: number, duration?: number): void;
132
+ /**
133
+ * 批量定位多个 GeoJSON 要素
134
+ * @param geoJsonFeatures GeoJSON Feature 数组
135
+ * @param options 定位选项
136
+ */
137
+ locateToMultipleGeoJSON(geoJsonFeatures: any[], options?: {
138
+ padding?: number[];
139
+ maxZoom?: number;
140
+ duration?: number;
141
+ minZoom?: number;
142
+ }): void;
143
+ }
144
+ export default MapOperationTool;
145
+ //# sourceMappingURL=mapOperationTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapOperationTool.d.ts","sourceRoot":"","sources":["../../../src/core/mapOperationTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AAUxB;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,WAAW,CAAQ;gBAEf,GAAG,EAAE,GAAG,EAAE,aAAa,GAAE,CAAC,MAAM,EAAE,MAAM,CAAqB,EAAE,WAAW,GAAE,MAAW;IAMnG;;;OAGG;IACH,MAAM,CAAC,IAAI,GAAE,MAAU,GAAG,IAAI;IAW9B;;;OAGG;IACH,OAAO,CAAC,IAAI,GAAE,MAAU,GAAG,IAAI;IAW/B;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAU3B;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAmB1B;;;;;;OAMG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAa,GAAG,IAAI;IA6BrG;;;;;OAKG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAa,GAAG,IAAI;IAyBnF;;;OAGG;IACH,gBAAgB,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;IAmBpC;;OAEG;IACH,cAAc,IAAI,MAAM;IASxB;;;;OAIG;IACH,cAAc,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAK5D;;OAEG;IACH,MAAM,IAAI,GAAG;IAIb;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAIzB;;;OAGG;IACH,gBAAgB,IAAI,IAAI;IAuBxB;;;;OAIG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI;IAyF9C;;;;OAIG;IACH,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM;IA+BjC;;;OAGG;IACH,gBAAgB,IAAI,MAAM,EAAE,GAAG,IAAI;IAUnC;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,GAAE,MAAa,GAAG,IAAI;IAa5D;;;OAGG;IACH,iBAAiB,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI;IAMxC;;;OAGG;IACH,aAAa,IAAI,GAAG,EAAE;IAetB;;;;OAIG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAgB3D;;;;OAIG;IACH,eAAe,CAAC,WAAW,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE;QAC1C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,GAAG,IAAI;IA4FR;;;;;OAKG;IACH,qBAAqB,CAAC,cAAc,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAa,GAAG,IAAI;IA4CxF;;;;OAIG;IACH,uBAAuB,CAAC,eAAe,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,EAAE;QACxD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,GAAG,IAAI;CAwBT;AAED,eAAe,gBAAgB,CAAA"}
@@ -0,0 +1,136 @@
1
+ import { Map, Feature } from 'ol';
2
+ import { UnitType } from '../utils/unitConverter';
3
+ import { MapStorage } from './storage';
4
+
5
+ export interface MeasurementResult {
6
+ id?: string;
7
+ type?: "length" | "area" | "angle" | "coordinate";
8
+ value?: number;
9
+ unit?: string;
10
+ coordinates?: number[][];
11
+ timestamp?: number;
12
+ distance?: string;
13
+ area?: string;
14
+ angle?: string;
15
+ longitude?: string;
16
+ latitude?: string;
17
+ elevation?: string;
18
+ }
19
+ export interface MeasurementOptions {
20
+ strokeColor?: string;
21
+ strokeWidth?: number;
22
+ strokeDashArray?: number[];
23
+ fillColor?: string;
24
+ fillOpacity?: number;
25
+ nodeRadius?: number;
26
+ nodeColor?: string;
27
+ nodeBorderColor?: string;
28
+ nodeBorderWidth?: number;
29
+ fontSize?: number;
30
+ fontColor?: string;
31
+ fontFamily?: string;
32
+ fontWeight?: string;
33
+ labelBackgroundColor?: string;
34
+ labelBorderColor?: string;
35
+ labelBorderWidth?: number;
36
+ labelBorderRadius?: number;
37
+ labelPadding?: string;
38
+ labelOpacity?: number;
39
+ tooltipBackgroundColor?: string;
40
+ tooltipBorderColor?: string;
41
+ tooltipBorderWidth?: number;
42
+ tooltipBorderRadius?: number;
43
+ tooltipPadding?: string;
44
+ tooltipFontSize?: number;
45
+ tooltipFontColor?: string;
46
+ tooltipOpacity?: number;
47
+ helpTooltipBackgroundColor?: string;
48
+ helpTooltipBorderColor?: string;
49
+ helpTooltipBorderWidth?: number;
50
+ helpTooltipBorderRadius?: number;
51
+ helpTooltipPadding?: string;
52
+ helpTooltipFontSize?: number;
53
+ helpTooltipFontColor?: string;
54
+ helpTooltipOpacity?: number;
55
+ helpTooltipShadow?: string;
56
+ zIndex?: number;
57
+ }
58
+ export declare class MeasurementTool {
59
+ private map;
60
+ private source;
61
+ private layer;
62
+ private draw;
63
+ private modify;
64
+ private snap;
65
+ private sketch;
66
+ private measureTooltipElement;
67
+ private measureTooltip;
68
+ private listener;
69
+ private tooltipHelper;
70
+ private coordinateClickListener;
71
+ private modifyListener;
72
+ private options;
73
+ private onResult?;
74
+ private currentMeasurementType;
75
+ private currentUnit;
76
+ private segmentTooltips;
77
+ private areaTooltips;
78
+ private angleTooltips;
79
+ private measurements;
80
+ private storage;
81
+ constructor(map: Map, storage: MapStorage, options?: MeasurementOptions);
82
+ private clearFeatureTooltips;
83
+ private updateFeatureMeasurement;
84
+ private updateLineTooltips;
85
+ private updatePolygonTooltip;
86
+ private updateAngleTooltip;
87
+ private getMaxZIndex;
88
+ private createStyle;
89
+ private calculateAngle;
90
+ private formatDistance;
91
+ private formatArea;
92
+ private formatAngle;
93
+ private createSegmentTooltipOverlay;
94
+ private clearSegmentTooltips;
95
+ private createNodeTooltip;
96
+ private saveMeasurements;
97
+ private addNodeMarkers;
98
+ private nodeMarkers;
99
+ private clearNodeMarkers;
100
+ private initModify;
101
+ private loadMeasurements;
102
+ startDistanceMeasurement(onResult: (result: MeasurementResult) => void, unit?: UnitType): void;
103
+ startAreaMeasurement(onResult: (result: MeasurementResult) => void, unit?: UnitType): void;
104
+ startCoordinateMeasurement(onResult: (result: MeasurementResult) => void): void;
105
+ startAngleMeasurement(onResult: (result: MeasurementResult) => void, unit?: UnitType): void;
106
+ startLengthMeasure(onResult: (result: MeasurementResult) => void): void;
107
+ startAreaMeasure(onResult: (result: MeasurementResult) => void): void;
108
+ stopMeasure(): void;
109
+ stopMeasurement(): void;
110
+ clearMeasurements(): void;
111
+ getFeatureCount(): number;
112
+ getFeatures(): Feature[];
113
+ addMeasurement(measurement: MeasurementResult): void;
114
+ removeMeasurement(id: string): void;
115
+ getMeasurements(): MeasurementResult[];
116
+ static formatMeasurement(value: number, type: string): {
117
+ value: number;
118
+ unit: string;
119
+ formatted: string;
120
+ };
121
+ private addCoordinateClickListener;
122
+ private createCoordinateTooltip;
123
+ private createCoordinatePoint;
124
+ private addInteraction;
125
+ private addAngleInteraction;
126
+ private formatLength;
127
+ private createMeasureTooltip;
128
+ private createSegmentTooltip;
129
+ private updateSegmentLabels;
130
+ private createLineSegmentTooltips;
131
+ private addPointerMoveListener;
132
+ private removePointerMoveListener;
133
+ private removeDrawInteraction;
134
+ destroy(): void;
135
+ }
136
+ //# sourceMappingURL=measurementTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"measurementTool.d.ts","sourceRoot":"","sources":["../../../src/core/measurementTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ import { OverviewMap } from 'ol/control';
2
+ import { Map } from 'ol';
3
+
4
+ /**
5
+ * 概览图配置接口
6
+ */
7
+ export interface OverviewMapConfig {
8
+ enabled?: boolean;
9
+ collapsed?: boolean;
10
+ collapsible?: boolean;
11
+ layers?: any[];
12
+ view?: {
13
+ zoomOffset?: number;
14
+ minZoom?: number;
15
+ maxZoom?: number;
16
+ };
17
+ }
18
+ /**
19
+ * 概览图工具类
20
+ * 封装概览图控件的创建、管理和操作逻辑
21
+ */
22
+ export declare class OverviewMapUtil {
23
+ private control;
24
+ private map;
25
+ /**
26
+ * 初始化概览图控件
27
+ * @param map OpenLayers 地图实例
28
+ * @param config 概览图配置
29
+ * @returns 是否初始化成功
30
+ */
31
+ init(map: Map, config: OverviewMapConfig): boolean;
32
+ /**
33
+ * 切换概览图的显示/隐藏状态
34
+ * @returns 切换后的显示状态(true: 显示, false: 隐藏)
35
+ */
36
+ toggle(): boolean;
37
+ /**
38
+ * 获取概览图控件的当前状态
39
+ * @returns 当前显示状态(true: 显示, false: 隐藏)
40
+ */
41
+ isVisible(): boolean;
42
+ /**
43
+ * 获取概览图控件实例
44
+ * @returns OverviewMap 控件实例
45
+ */
46
+ getControl(): OverviewMap | null;
47
+ /**
48
+ * 销毁概览图控件
49
+ */
50
+ destroy(): void;
51
+ /**
52
+ * 检查控件是否已初始化
53
+ * @returns 是否已初始化
54
+ */
55
+ isInitialized(): boolean;
56
+ }
57
+ /**
58
+ * 创建概览图工具实例
59
+ * @returns OverviewMapUtil 实例
60
+ */
61
+ export declare function createOverviewMapUtil(): OverviewMapUtil;
62
+ //# sourceMappingURL=overviewMapUtil.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overviewMapUtil.d.ts","sourceRoot":"","sources":["../../../src/core/overviewMapUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIzC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC;AAE9B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,IAAI,CAAC,EAAE;QACL,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,GAAG,CAAoB;IAE/B;;;;;OAKG;IACH,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,iBAAiB,GAAG,OAAO;IAwClD;;;OAGG;IACH,MAAM,IAAI,OAAO;IAkBjB;;;OAGG;IACH,SAAS,IAAI,OAAO;IAOpB;;;OAGG;IACH,UAAU,IAAI,WAAW,GAAG,IAAI;IAIhC;;OAEG;IACH,OAAO,IAAI,IAAI;IAaf;;;OAGG;IACH,aAAa,IAAI,OAAO;CAGzB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,eAAe,CAEvD"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * 代理辅助工具
3
+ * 用于解决天地图等服务的CORS跨域问题
4
+ */
5
+ /**
6
+ * 将天地图URL转换为使用代理的URL
7
+ * @param originalUrl 原始天地图URL
8
+ * @returns 转换后的代理URL
9
+ */
10
+ export declare function convertTiandituUrlToProxy(originalUrl: string): string;
11
+ /**
12
+ * 批量转换图层配置中的天地图URL
13
+ * @param layerConfig 图层配置对象
14
+ * @returns 转换后的图层配置
15
+ */
16
+ export declare function convertLayerConfigToProxy(layerConfig: any): any;
17
+ /**
18
+ * 批量转换地图配置中所有图层的天地图URL
19
+ * @param mapConfig 地图配置对象
20
+ * @returns 转换后的地图配置
21
+ */
22
+ export declare function convertMapConfigToProxy(mapConfig: any): any;
23
+ /**
24
+ * 检查URL是否需要代理
25
+ * @param url 要检查的URL
26
+ * @returns 是否需要代理
27
+ */
28
+ export declare function needsProxy(url: string): boolean;
29
+ /**
30
+ * 获取代理配置说明
31
+ * @returns 代理配置说明对象
32
+ */
33
+ export declare function getProxyConfigGuide(): {
34
+ description: string;
35
+ viteConfig: {
36
+ server: {
37
+ proxy: {
38
+ '/api/tianditu': {
39
+ target: string;
40
+ changeOrigin: boolean;
41
+ rewrite: (path: string) => string;
42
+ };
43
+ };
44
+ };
45
+ };
46
+ usage: {
47
+ before: string;
48
+ after: string;
49
+ };
50
+ tips: string[];
51
+ };
52
+ /**
53
+ * 创建代理URL映射表
54
+ * @returns 代理URL映射表
55
+ */
56
+ export declare function createProxyUrlMap(): Record<string, string>;
57
+ declare const _default: {
58
+ convertTiandituUrlToProxy: typeof convertTiandituUrlToProxy;
59
+ convertLayerConfigToProxy: typeof convertLayerConfigToProxy;
60
+ convertMapConfigToProxy: typeof convertMapConfigToProxy;
61
+ needsProxy: typeof needsProxy;
62
+ getProxyConfigGuide: typeof getProxyConfigGuide;
63
+ createProxyUrlMap: typeof createProxyUrlMap;
64
+ };
65
+ export default _default;
66
+ //# sourceMappingURL=proxyHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxyHelper.d.ts","sourceRoot":"","sources":["../../../src/core/proxyHelper.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CA+BrE;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG,CAgB/D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,GAAG,GAAG,GAAG,CA2B3D;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAI/C;AAED;;;GAGG;AACH,wBAAgB,mBAAmB;;;;;;;;oCASP,MAAM;;;;;;;;;;EAiBjC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAY1D;;;;;;;;;AAED,wBAOE"}
@@ -0,0 +1,139 @@
1
+ import { MeasurementResult, LayerConfig } from '../types';
2
+
3
+ /**
4
+ * 本地存储工具类
5
+ * 支持实例隔离,每个地图组件实例可以有独立的存储空间
6
+ */
7
+ export declare class MapStorage {
8
+ private storageKeys;
9
+ private instanceId;
10
+ private isCleaningUp;
11
+ private storageEnabled;
12
+ constructor(instanceId?: string, enableStorage?: boolean);
13
+ /**
14
+ * 检查数据是否过期
15
+ */
16
+ private isDataExpired;
17
+ /**
18
+ * 清理过期数据
19
+ */
20
+ private cleanupExpiredData;
21
+ /**
22
+ * 初始化清理过量数据
23
+ */
24
+ private initCleanup;
25
+ /**
26
+ * 检查localStorage配额使用情况
27
+ */
28
+ private checkStorageQuota;
29
+ /**
30
+ * 自动清理旧数据
31
+ */
32
+ private autoCleanup;
33
+ /**
34
+ * 安全存储数据(带配额检查)
35
+ */
36
+ private safeSetItem;
37
+ /**
38
+ * 安全获取数据(带解压缩)
39
+ */
40
+ private safeGetItem;
41
+ /**
42
+ * 保存测量结果
43
+ */
44
+ saveMeasurements(measurements: MeasurementResult[]): void;
45
+ /**
46
+ * 获取测量结果
47
+ */
48
+ getMeasurements(): MeasurementResult[];
49
+ /**
50
+ * 添加单个测量结果(优化版本 - 避免重复ID)
51
+ */
52
+ addMeasurement(measurement: MeasurementResult): void;
53
+ /**
54
+ * 删除测量结果
55
+ */
56
+ removeMeasurement(id: string): void;
57
+ /**
58
+ * 清空所有测量结果
59
+ */
60
+ clearMeasurements(): void;
61
+ /**
62
+ * 保存图层配置(优化版本 - 避免重复存储相同配置)
63
+ */
64
+ saveLayerConfigs(configs: LayerConfig[]): void;
65
+ /**
66
+ * 获取图层配置
67
+ */
68
+ getLayerConfigs(): Partial<LayerConfig>[];
69
+ /**
70
+ * 保存地图状态
71
+ */
72
+ saveMapState(center: [number, number], zoom: number, rotation?: number): void;
73
+ /**
74
+ * 获取地图状态
75
+ */
76
+ getMapState(): {
77
+ center: [number, number];
78
+ zoom: number;
79
+ rotation: number;
80
+ } | null;
81
+ /**
82
+ * 清空所有缓存
83
+ */
84
+ clearAll(): void;
85
+ /**
86
+ * 获取存储大小(KB)
87
+ */
88
+ getStorageSize(): number;
89
+ /**
90
+ * 获取详细的存储状态信息
91
+ */
92
+ getStorageStatus(): {
93
+ quota: {
94
+ used: number;
95
+ available: number;
96
+ percentage: number;
97
+ };
98
+ instanceSize: number;
99
+ measurementCount: number;
100
+ layerConfigCount: number;
101
+ compressionEnabled: boolean;
102
+ warnings: string[];
103
+ };
104
+ /**
105
+ * 手动清理存储
106
+ */
107
+ manualCleanup(options?: {
108
+ clearMeasurements?: boolean;
109
+ clearLayerConfigs?: boolean;
110
+ clearMapState?: boolean;
111
+ keepRecentCount?: number;
112
+ }): void;
113
+ /**
114
+ * 导出存储数据(用于备份)
115
+ */
116
+ exportData(): {
117
+ measurements: MeasurementResult[];
118
+ layerConfigs: Partial<LayerConfig>[];
119
+ mapState: any;
120
+ exportTime: number;
121
+ };
122
+ /**
123
+ * 导入存储数据(用于恢复)
124
+ */
125
+ importData(data: {
126
+ measurements?: MeasurementResult[];
127
+ layerConfigs?: Partial<LayerConfig>[];
128
+ mapState?: any;
129
+ }): boolean;
130
+ }
131
+ /**
132
+ * 创建MapStorage实例的工厂函数
133
+ */
134
+ export declare function createMapStorage(instanceId?: string, enableStorage?: boolean): MapStorage;
135
+ /**
136
+ * 为了向后兼容,保留全局实例(但建议使用实例化方式)
137
+ */
138
+ export declare const globalMapStorage: MapStorage;
139
+ //# sourceMappingURL=storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/core/storage.ts"],"names":[],"mappings":"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"}