vue-openlayers-plugin 1.1.15 → 1.1.16

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 (35) hide show
  1. package/README.md +0 -209
  2. package/lib/{BasemapPanel-7664fc20.mjs → BasemapPanel-d1332546.mjs} +1 -1
  3. package/lib/{CoordinateLocationDialog-f505c006.mjs → CoordinateLocationDialog-c2d89c1e.mjs} +1 -1
  4. package/lib/{MapPrintDialog-0cf04cae.mjs → FilterPanel-d7cb1c79.mjs} +1 -1
  5. package/lib/{FilterPanel-4cfbbfeb.mjs → LayerPanel-f411a32b.mjs} +1 -1
  6. package/lib/{LayerPanel-354b6ac7.mjs → MapPrintDialog-eea9e39e.mjs} +1 -1
  7. package/lib/{MeasurementDialog-4fd11413.mjs → MeasurementDialog-9914f4e9.mjs} +1 -1
  8. package/lib/{MyMarkersDialog-f413337c.mjs → MyMarkersDialog-ef717e8c.mjs} +1 -1
  9. package/lib/{QuadCompareDialog-176a8178.mjs → QuadCompareDialog-3d6eaf0c.mjs} +1 -1
  10. package/lib/{RegionNavigationDialog-1edd078f.mjs → RegionNavigationDialog-2843eedd.mjs} +1 -1
  11. package/lib/{SplitCompareDialog-3fe419de.mjs → SplitCompareDialog-1e678e69.mjs} +1 -1
  12. package/lib/{SwipeCompareDialog-e2c28122.mjs → SwipeCompareDialog-547de7ee.mjs} +1 -1
  13. package/lib/{ViewBookmarksDialog-9873fb3c.mjs → ViewBookmarksDialog-d3e38c53.mjs} +1 -1
  14. package/lib/{index-923f7253.mjs → index-198a96d2.mjs} +118 -136
  15. package/lib/{index-a30f4100.mjs → index-92020358.mjs} +1 -1
  16. package/lib/{index.es-b7728855.mjs → index.es-dd926512.mjs} +1 -1
  17. package/lib/index.esm.js +1 -1
  18. package/lib/index.umd.js +104 -122
  19. package/package.json +106 -106
  20. package/types/components/OlDialogs/LayerPanel.vue.d.ts +102 -0
  21. package/types/components/OlDialogs/LayerPanel.vue.d.ts.map +1 -1
  22. package/types/components/OlMap.vue.d.ts +204 -0
  23. package/types/components/OlMap.vue.d.ts.map +1 -1
  24. package/types/core/LayerManager.d.ts +5 -5
  25. package/types/core/LayerManager.d.ts.map +1 -1
  26. package/types/core/layers/GeoJSONLayerHandler.d.ts +3 -4
  27. package/types/core/layers/GeoJSONLayerHandler.d.ts.map +1 -1
  28. package/types/core/layers/interfaces.d.ts +1 -1
  29. package/types/core/layers/interfaces.d.ts.map +1 -1
  30. package/types/core/storage.d.ts.map +1 -1
  31. package/types/lowcode-entry.d.ts +204 -0
  32. package/types/lowcode-entry.d.ts.map +1 -1
  33. package/types/tsconfig.tsbuildinfo +1 -1
  34. package/types/types/map.d.ts +5 -1
  35. package/types/types/map.d.ts.map +1 -1
package/README.md CHANGED
@@ -336,209 +336,6 @@ layerManager.addLayer({
336
336
  })
337
337
  ```
338
338
 
339
- #### GeoJSON 图层请求配置
340
-
341
- GeoJSON 图层除了支持直接传入 `data` 和 `url`,现在也支持更完整的接口配置,适合通用组件场景下的查询、筛选与动态刷新。
342
-
343
- 最简单的用法仍然保持不变:
344
-
345
- ```typescript
346
- layerManager.addLayer({
347
- id: 'geojson-static',
348
- name: '静态 GeoJSON',
349
- type: 'geojson',
350
- visible: true,
351
- opacity: 1,
352
- zIndex: 10,
353
- data: featureCollection
354
- })
355
- ```
356
-
357
- 如果需要从接口加载数据,推荐使用 `geojsonConfig.request`:
358
-
359
- ```typescript
360
- layerManager.addLayer({
361
- id: 'poi-api',
362
- name: '接口点位',
363
- type: 'geojson',
364
- visible: true,
365
- opacity: 1,
366
- zIndex: 20,
367
- projection: 'EPSG:4326',
368
- geojsonConfig: {
369
- request: {
370
- url: '/api/poi/list',
371
- method: 'GET',
372
- params: {
373
- city: 'hangzhou',
374
- category: 'restaurant'
375
- },
376
- headers: {
377
- Authorization: 'Bearer token'
378
- },
379
- dataPath: 'data.list'
380
- }
381
- }
382
- })
383
- ```
384
-
385
- 也兼容扁平写法,适合快速接入:
386
-
387
- ```typescript
388
- layerManager.addLayer({
389
- id: 'geojson-flat',
390
- name: '快速接入图层',
391
- type: 'geojson',
392
- url: '/api/geojson',
393
- method: 'POST',
394
- params: {
395
- cityCode: '330100'
396
- },
397
- body: {
398
- keyword: '商圈'
399
- },
400
- dataPath: 'result.features',
401
- visible: true,
402
- opacity: 1,
403
- zIndex: 15
404
- })
405
- ```
406
-
407
- #### GeoJSON 配置项说明
408
-
409
- | 字段 | 类型 | 说明 |
410
- |------|------|------|
411
- | data | `object \| string` | 直接传入 GeoJSON 数据,适合本地数据或已拿到结果的场景 |
412
- | url | `string` | GeoJSON 请求地址,保留原有用法 |
413
- | method | `'GET' \| 'POST' \| 'PUT' \| 'PATCH' \| 'DELETE'` | 请求方法 |
414
- | headers | `Record<string, string>` | 请求头 |
415
- | params | `Record<string, any>` | 请求参数,`GET` 时会自动拼接到 URL |
416
- | body | `Record<string, any> \| string` | 请求体,适用于 `POST` 等方法 |
417
- | dataPath | `string` | 响应中 GeoJSON 数据所在路径,例如 `data.list` |
418
- | geojsonConfig.request | `object` | 推荐写法,统一管理请求配置 |
419
- | geojsonConfig.refresh | `object` | 刷新配置,支持定时、移动后、缩放后刷新 |
420
- | geojsonConfig.clearOnError | `boolean` | 请求失败时是否清空当前图层要素 |
421
-
422
- #### 刷新配置示例
423
-
424
- ```typescript
425
- layerManager.addLayer({
426
- id: 'geojson-refresh',
427
- name: '动态刷新图层',
428
- type: 'geojson',
429
- visible: true,
430
- opacity: 1,
431
- zIndex: 30,
432
- projection: 'EPSG:4326',
433
- geojsonConfig: {
434
- request: {
435
- url: '/api/device/query',
436
- method: 'GET',
437
- params: {
438
- status: 'online'
439
- },
440
- dataPath: 'data.features'
441
- },
442
- refresh: {
443
- enabled: true,
444
- interval: 30000,
445
- onMoveEnd: true,
446
- onZoomEnd: false,
447
- debounce: 300,
448
- useExtent: true,
449
- extentParamName: 'bbox',
450
- extentTarget: 'params',
451
- extentProjection: 'EPSG:4326'
452
- }
453
- }
454
- })
455
- ```
456
-
457
- `refresh` 字段说明:
458
-
459
- | 字段 | 类型 | 说明 |
460
- |------|------|------|
461
- | enabled | `boolean` | 是否启用刷新能力,默认开启 |
462
- | interval | `number` | 定时刷新间隔,单位毫秒 |
463
- | onMoveEnd | `boolean` | 地图移动结束后自动刷新 |
464
- | onZoomEnd | `boolean` | 地图缩放结束后自动刷新 |
465
- | debounce | `number` | 地图事件触发后的防抖时间,单位毫秒 |
466
- | useExtent | `boolean` | 是否自动将当前地图范围作为查询参数传给接口 |
467
- | extentParamName | `string` | 视野范围参数名,默认 `bbox` |
468
- | extentTarget | `'params' \| 'body'` | 将范围写入查询参数还是请求体 |
469
- | extentProjection | `string` | 范围参数使用的坐标系,默认跟随图层投影 |
470
-
471
- #### 手动刷新与动态更新参数
472
-
473
- 如果使用的是 `OlMap` / `CustomOpenlayer` 组件实例,也可以直接调用暴露的方法:
474
-
475
- ```vue
476
- <template>
477
- <CustomOpenlayer ref="mapRef" :config="mapConfig" />
478
- </template>
479
-
480
- <script setup lang="ts">
481
- import { ref } from 'vue'
482
- import { CustomOpenlayer } from 'vue-openlayers-plugin'
483
-
484
- const mapRef = ref<InstanceType<typeof CustomOpenlayer> | null>(null)
485
-
486
- const reloadLayer = async () => {
487
- mapRef.value?.updateLayerRequestParams('poi-api', {
488
- city: 'ningbo',
489
- category: 'hotel'
490
- })
491
-
492
- await mapRef.value?.refreshLayer('poi-api')
493
- }
494
- </script>
495
- ```
496
-
497
- 公开方法说明:
498
-
499
- | 方法 | 参数 | 说明 |
500
- |------|------|------|
501
- | refreshLayer | `(layerId, options?)` | 手动刷新指定图层,可临时传入 `params` / `body` |
502
- | updateLayerRequestParams | `(layerId, params)` | 更新图层默认请求参数,并立即重新拉取数据 |
503
-
504
- #### 高级响应处理
505
-
506
- 当接口返回结构不固定时,可以通过拦截器或解析器做统一适配:
507
-
508
- ```typescript
509
- layerManager.addLayer({
510
- id: 'geojson-advanced',
511
- name: '高级响应处理',
512
- type: 'geojson',
513
- visible: true,
514
- opacity: 1,
515
- zIndex: 40,
516
- geojsonConfig: {
517
- request: {
518
- url: '/api/map/search',
519
- method: 'POST',
520
- body: {
521
- keyword: '学校'
522
- },
523
- requestInterceptor: async (request) => {
524
- return {
525
- ...request,
526
- headers: {
527
- ...request.headers,
528
- Authorization: 'Bearer token'
529
- }
530
- }
531
- },
532
- responseInterceptor: async (response) => response.result,
533
- responseParser: async (response) => ({
534
- type: 'FeatureCollection',
535
- features: response.items
536
- })
537
- }
538
- }
539
- })
540
- ```
541
-
542
339
  ### 标绘工具
543
340
 
544
341
  ```typescript
@@ -638,12 +435,6 @@ MIT License
638
435
 
639
436
  ## 更新日志
640
437
 
641
- ### 1.1.14
642
-
643
- - ✨ 新增 GeoJSON 图层接口配置说明,支持 `method`、`headers`、`params`、`body`、`dataPath`
644
- - ✨ 新增 GeoJSON 图层动态刷新说明,支持定时刷新、移动后刷新、缩放后刷新与视野范围参数
645
- - ✨ 新增 `refreshLayer` 与 `updateLayerRequestParams` 用法示例,便于业务侧快速接入
646
-
647
438
  ### 1.2.0
648
439
 
649
440
  - ✨ 新增图标图例功能,支持 PNG、JPG、SVG、GIF、WebP 等图像格式
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, inject, computed, ref, watch, onMounted, onUnmounted, openBlock, createBlock, unref, withCtx, createElementVNode, createElementBlock, Fragment, renderList, normalizeClass, toDisplayString } from "vue";
2
- import { r as resolveBasemapThumbnail, l as layerEventBus, X, b as _export_sfc } from "./index-923f7253.mjs";
2
+ import { r as resolveBasemapThumbnail, l as layerEventBus, X, b as _export_sfc } from "./index-198a96d2.mjs";
3
3
  import "@element-plus/icons-vue";
4
4
  import "ol";
5
5
  import "proj4";
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, inject, computed, ref, reactive, resolveComponent, openBlock, createBlock, unref, withCtx, createElementVNode, createVNode, createTextVNode } from "vue";
2
2
  import { Aim } from "@element-plus/icons-vue";
3
- import { X, T as TooltipHelper, b as _export_sfc } from "./index-923f7253.mjs";
3
+ import { X, T as TooltipHelper, b as _export_sfc } from "./index-198a96d2.mjs";
4
4
  import "ol";
5
5
  import "proj4";
6
6
  import "@supermapgis/iclient-ol";
@@ -1,4 +1,4 @@
1
- import { d as _sfc_main } from "./index-923f7253.mjs";
1
+ import { j as _sfc_main } from "./index-198a96d2.mjs";
2
2
  import "vue";
3
3
  import "@element-plus/icons-vue";
4
4
  import "ol";
@@ -1,4 +1,4 @@
1
- import { j as _sfc_main } from "./index-923f7253.mjs";
1
+ import { e as _sfc_main } from "./index-198a96d2.mjs";
2
2
  import "vue";
3
3
  import "@element-plus/icons-vue";
4
4
  import "ol";
@@ -1,4 +1,4 @@
1
- import { e as _sfc_main } from "./index-923f7253.mjs";
1
+ import { d as _sfc_main } from "./index-198a96d2.mjs";
2
2
  import "vue";
3
3
  import "@element-plus/icons-vue";
4
4
  import "ol";
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, inject, computed, ref, watch, resolveComponent, openBlock, createBlock, unref, withCtx, createElementVNode, createVNode, createTextVNode, toDisplayString, createElementBlock, Fragment, renderList, normalizeClass } from "vue";
2
- import { X, f as formatMeasurementResult, b as _export_sfc } from "./index-923f7253.mjs";
2
+ import { X, f as formatMeasurementResult, b as _export_sfc } from "./index-198a96d2.mjs";
3
3
  import "@element-plus/icons-vue";
4
4
  import "ol";
5
5
  import "proj4";
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, inject, computed, ref, reactive, onUnmounted, watch, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, unref, withCtx, createElementVNode, normalizeClass, createTextVNode, toDisplayString, renderList, createBlock, withModifiers, mergeProps } from "vue";
2
2
  import { Plus, FolderOpened, Download, Delete, Search, LocationFilled, Edit } from "@element-plus/icons-vue";
3
3
  import { ElMessageBox } from "element-plus";
4
- import { X, M as MarkerDrawingAdapter, h as fromLonLat, t as toLonLat } from "./index-923f7253.mjs";
4
+ import { X, M as MarkerDrawingAdapter, h as fromLonLat, t as toLonLat } from "./index-198a96d2.mjs";
5
5
  import "ol";
6
6
  import "proj4";
7
7
  import "@supermapgis/iclient-ol";
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, inject, computed, shallowRef, reactive, watch, nextTick, onMounted, onUnmounted, resolveComponent, openBlock, createElementBlock, createVNode, unref, withCtx, createElementVNode, Fragment, renderList, createBlock, createCommentVNode } from "vue";
2
- import { k as layerFactory, i as getUid, m as defaults, X, n as TileLayer, I as ImageLayer, V as VectorTileLayer, H as HeatmapLayer, o as VectorLayer, L as LayerGroup, b as _export_sfc } from "./index-923f7253.mjs";
2
+ import { k as layerFactory, i as getUid, m as defaults, X, n as TileLayer, I as ImageLayer, V as VectorTileLayer, H as HeatmapLayer, o as VectorLayer, L as LayerGroup, b as _export_sfc } from "./index-198a96d2.mjs";
3
3
  import { u as useMap } from "./useMap-8e3a2de5.mjs";
4
4
  import { View, Map } from "ol";
5
5
  import "@element-plus/icons-vue";
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, computed, ref, reactive, resolveComponent, openBlock, createBlock, unref, withCtx, createElementVNode, createVNode, createElementBlock, Fragment, renderList, createTextVNode, toDisplayString, normalizeClass } from "vue";
2
- import { X } from "./index-923f7253.mjs";
2
+ import { X } from "./index-198a96d2.mjs";
3
3
  import "@element-plus/icons-vue";
4
4
  import "ol";
5
5
  import "proj4";
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, inject, computed, shallowRef, watch, nextTick, onMounted, onUnmounted, resolveComponent, openBlock, createElementBlock, createVNode, unref, withCtx, createElementVNode, Fragment, renderList, createBlock, createCommentVNode } from "vue";
2
- import { k as layerFactory, i as getUid, m as defaults, X, n as TileLayer, I as ImageLayer, V as VectorTileLayer, H as HeatmapLayer, o as VectorLayer, L as LayerGroup, b as _export_sfc } from "./index-923f7253.mjs";
2
+ import { k as layerFactory, i as getUid, m as defaults, X, n as TileLayer, I as ImageLayer, V as VectorTileLayer, H as HeatmapLayer, o as VectorLayer, L as LayerGroup, b as _export_sfc } from "./index-198a96d2.mjs";
3
3
  import { u as useMap } from "./useMap-8e3a2de5.mjs";
4
4
  import { View, Map } from "ol";
5
5
  import "@element-plus/icons-vue";
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, inject, computed, shallowRef, watch, nextTick, onMounted, onUnmounted, resolveComponent, openBlock, createElementBlock, createVNode, unref, withCtx, createElementVNode, normalizeClass, normalizeStyle, Fragment, renderList, createBlock, createCommentVNode } from "vue";
2
- import { k as layerFactory, i as getUid, m as defaults, X, n as TileLayer, I as ImageLayer, V as VectorTileLayer, H as HeatmapLayer, o as VectorLayer, L as LayerGroup, b as _export_sfc } from "./index-923f7253.mjs";
2
+ import { k as layerFactory, i as getUid, m as defaults, X, n as TileLayer, I as ImageLayer, V as VectorTileLayer, H as HeatmapLayer, o as VectorLayer, L as LayerGroup, b as _export_sfc } from "./index-198a96d2.mjs";
3
3
  import { u as useMap } from "./useMap-8e3a2de5.mjs";
4
4
  import { View, Map } from "ol";
5
5
  import { DCaret } from "@element-plus/icons-vue";
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, inject, computed, ref, watch, reactive, resolveComponent, openBlock, createBlock, unref, withCtx, createElementVNode, createVNode, createTextVNode, createElementBlock, Fragment, renderList, withModifiers, toDisplayString, createCommentVNode } from "vue";
2
2
  import { Plus, Delete, Search, Camera, View, Edit, Location, ZoomIn } from "@element-plus/icons-vue";
3
3
  import { ElMessage, ElMessageBox } from "element-plus";
4
- import { X, t as toLonLat, h as fromLonLat, i as getUid } from "./index-923f7253.mjs";
4
+ import { X, t as toLonLat, h as fromLonLat, i as getUid } from "./index-198a96d2.mjs";
5
5
  import "ol";
6
6
  import "proj4";
7
7
  import "@supermapgis/iclient-ol";