my-openlayer 2.4.10 → 2.5.1

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 (119) hide show
  1. package/CHANGELOG.md +167 -265
  2. package/MyOl.d.ts +9 -9
  3. package/MyOl.js +17 -16
  4. package/README.md +217 -156
  5. package/core/line/Line.d.ts +40 -0
  6. package/core/line/Line.js +144 -0
  7. package/core/line/LineFeatureFactory.d.ts +17 -0
  8. package/core/line/LineFeatureFactory.js +75 -0
  9. package/core/line/LineFlowAnimator.d.ts +53 -0
  10. package/core/line/LineFlowAnimator.js +297 -0
  11. package/core/line/LineStyleFactory.d.ts +43 -0
  12. package/core/line/LineStyleFactory.js +135 -0
  13. package/core/{RiverLayerManager.d.ts → line/RiverLayerManager.d.ts} +2 -2
  14. package/core/{RiverLayerManager.js → line/RiverLayerManager.js} +3 -5
  15. package/core/line/index.d.ts +6 -0
  16. package/core/line/index.js +5 -0
  17. package/core/{ConfigManager.d.ts → map/ConfigManager.d.ts} +25 -1
  18. package/core/{ConfigManager.js → map/ConfigManager.js} +22 -1
  19. package/core/{EventManager.d.ts → map/EventManager.d.ts} +1 -1
  20. package/core/{EventManager.js → map/EventManager.js} +2 -2
  21. package/core/{MapBaseLayers.d.ts → map/MapBaseLayers.d.ts} +1 -1
  22. package/core/{MapBaseLayers.js → map/MapBaseLayers.js} +10 -12
  23. package/core/{MapTools.d.ts → map/MapTools.d.ts} +5 -2
  24. package/core/{MapTools.js → map/MapTools.js} +11 -5
  25. package/core/{MeasureHandler.d.ts → map/MeasureHandler.d.ts} +1 -1
  26. package/core/{MeasureHandler.js → map/MeasureHandler.js} +41 -41
  27. package/core/map/index.d.ts +5 -0
  28. package/core/map/index.js +5 -0
  29. package/core/{Point.d.ts → point/Point.d.ts} +13 -4
  30. package/core/{Point.js → point/Point.js} +24 -112
  31. package/core/point/PointClusterLayer.d.ts +10 -0
  32. package/core/point/PointClusterLayer.js +52 -0
  33. package/core/point/PointOverlay.d.ts +13 -0
  34. package/core/point/PointOverlay.js +57 -0
  35. package/core/point/PointPulseLayer.d.ts +13 -0
  36. package/core/point/PointPulseLayer.js +207 -0
  37. package/core/point/index.d.ts +4 -0
  38. package/core/point/index.js +4 -0
  39. package/core/{Polygon.d.ts → polygon/Polygon.d.ts} +4 -50
  40. package/core/polygon/Polygon.js +248 -0
  41. package/core/polygon/PolygonHeatmapLayer.d.ts +11 -0
  42. package/core/polygon/PolygonHeatmapLayer.js +40 -0
  43. package/core/polygon/PolygonImageLayer.d.ts +9 -0
  44. package/core/polygon/PolygonImageLayer.js +61 -0
  45. package/core/polygon/PolygonMaskLayer.d.ts +20 -0
  46. package/core/polygon/PolygonMaskLayer.js +107 -0
  47. package/core/polygon/PolygonStyleFactory.d.ts +12 -0
  48. package/core/polygon/PolygonStyleFactory.js +100 -0
  49. package/core/polygon/index.d.ts +5 -0
  50. package/core/polygon/index.js +5 -0
  51. package/core/{SelectHandler.d.ts → select/SelectHandler.d.ts} +2 -3
  52. package/core/{SelectHandler.js → select/SelectHandler.js} +4 -4
  53. package/core/select/index.d.ts +1 -0
  54. package/core/select/index.js +1 -0
  55. package/core/{VueTemplatePoint.d.ts → vue-template-point/VueTemplatePoint.d.ts} +1 -1
  56. package/core/{VueTemplatePoint.js → vue-template-point/VueTemplatePoint.js} +4 -4
  57. package/core/vue-template-point/index.d.ts +1 -0
  58. package/core/vue-template-point/index.js +1 -0
  59. package/docs/.vitepress/config.mts +57 -57
  60. package/docs/ConfigManager.md +71 -71
  61. package/docs/ErrorHandler.md +106 -106
  62. package/docs/EventManager.md +142 -142
  63. package/docs/Line.md +215 -187
  64. package/docs/MapBaseLayers.md +198 -198
  65. package/docs/MapTools.md +172 -172
  66. package/docs/MeasureHandler.md +87 -87
  67. package/docs/MyOl.md +247 -247
  68. package/docs/Point.md +233 -165
  69. package/docs/Polygon.md +241 -241
  70. package/docs/RiverLayerManager.md +187 -187
  71. package/docs/SelectHandler.md +147 -147
  72. package/docs/ValidationUtils.md +83 -83
  73. package/docs/VueTemplatePoint.md +214 -214
  74. package/docs/index.md +79 -78
  75. package/index.d.ts +11 -16
  76. package/index.js +7 -13
  77. package/package.json +11 -1
  78. package/types/base.d.ts +47 -0
  79. package/types/base.js +1 -0
  80. package/types/common.d.ts +59 -0
  81. package/types/common.js +1 -0
  82. package/types/index.d.ts +9 -0
  83. package/types/index.js +1 -0
  84. package/types/line.d.ts +41 -0
  85. package/types/line.js +1 -0
  86. package/types/map.d.ts +77 -0
  87. package/types/map.js +1 -0
  88. package/types/point.d.ts +54 -0
  89. package/types/point.js +1 -0
  90. package/types/polygon.d.ts +8 -0
  91. package/types/polygon.js +1 -0
  92. package/types/select.d.ts +25 -0
  93. package/types/select.js +1 -0
  94. package/types/vue-template-point.d.ts +54 -0
  95. package/{types.js → types/vue-template-point.js} +0 -3
  96. package/utils/ProjectionUtils.d.ts +28 -0
  97. package/utils/ProjectionUtils.js +34 -0
  98. package/utils/ValidationUtils.d.ts +33 -86
  99. package/utils/ValidationUtils.js +60 -165
  100. package/core/DomPoint.d.ts +0 -21
  101. package/core/DomPoint.js +0 -36
  102. package/core/Line.d.ts +0 -49
  103. package/core/Line.js +0 -114
  104. package/core/Polygon.js +0 -646
  105. package/docs/.vitepress/cache/deps/@theme_index.js +0 -275
  106. package/docs/.vitepress/cache/deps/@theme_index.js.map +0 -7
  107. package/docs/.vitepress/cache/deps/_metadata.json +0 -40
  108. package/docs/.vitepress/cache/deps/chunk-LW4I4DCF.js +0 -12542
  109. package/docs/.vitepress/cache/deps/chunk-LW4I4DCF.js.map +0 -7
  110. package/docs/.vitepress/cache/deps/chunk-Z5QSWKN2.js +0 -9719
  111. package/docs/.vitepress/cache/deps/chunk-Z5QSWKN2.js.map +0 -7
  112. package/docs/.vitepress/cache/deps/package.json +0 -3
  113. package/docs/.vitepress/cache/deps/vitepress___@vue_devtools-api.js +0 -4505
  114. package/docs/.vitepress/cache/deps/vitepress___@vue_devtools-api.js.map +0 -7
  115. package/docs/.vitepress/cache/deps/vitepress___@vueuse_core.js +0 -583
  116. package/docs/.vitepress/cache/deps/vitepress___@vueuse_core.js.map +0 -7
  117. package/docs/.vitepress/cache/deps/vue.js +0 -343
  118. package/docs/.vitepress/cache/deps/vue.js.map +0 -7
  119. package/types.d.ts +0 -372
@@ -1,343 +0,0 @@
1
- import {
2
- BaseTransition,
3
- BaseTransitionPropsValidators,
4
- Comment,
5
- DeprecationTypes,
6
- EffectScope,
7
- ErrorCodes,
8
- ErrorTypeStrings,
9
- Fragment,
10
- KeepAlive,
11
- ReactiveEffect,
12
- Static,
13
- Suspense,
14
- Teleport,
15
- Text,
16
- TrackOpTypes,
17
- Transition,
18
- TransitionGroup,
19
- TriggerOpTypes,
20
- VueElement,
21
- assertNumber,
22
- callWithAsyncErrorHandling,
23
- callWithErrorHandling,
24
- camelize,
25
- capitalize,
26
- cloneVNode,
27
- compatUtils,
28
- compile,
29
- computed,
30
- createApp,
31
- createBaseVNode,
32
- createBlock,
33
- createCommentVNode,
34
- createElementBlock,
35
- createHydrationRenderer,
36
- createPropsRestProxy,
37
- createRenderer,
38
- createSSRApp,
39
- createSlots,
40
- createStaticVNode,
41
- createTextVNode,
42
- createVNode,
43
- customRef,
44
- defineAsyncComponent,
45
- defineComponent,
46
- defineCustomElement,
47
- defineEmits,
48
- defineExpose,
49
- defineModel,
50
- defineOptions,
51
- defineProps,
52
- defineSSRCustomElement,
53
- defineSlots,
54
- devtools,
55
- effect,
56
- effectScope,
57
- getCurrentInstance,
58
- getCurrentScope,
59
- getCurrentWatcher,
60
- getTransitionRawChildren,
61
- guardReactiveProps,
62
- h,
63
- handleError,
64
- hasInjectionContext,
65
- hydrate,
66
- hydrateOnIdle,
67
- hydrateOnInteraction,
68
- hydrateOnMediaQuery,
69
- hydrateOnVisible,
70
- initCustomFormatter,
71
- initDirectivesForSSR,
72
- inject,
73
- isMemoSame,
74
- isProxy,
75
- isReactive,
76
- isReadonly,
77
- isRef,
78
- isRuntimeOnly,
79
- isShallow,
80
- isVNode,
81
- markRaw,
82
- mergeDefaults,
83
- mergeModels,
84
- mergeProps,
85
- nextTick,
86
- normalizeClass,
87
- normalizeProps,
88
- normalizeStyle,
89
- onActivated,
90
- onBeforeMount,
91
- onBeforeUnmount,
92
- onBeforeUpdate,
93
- onDeactivated,
94
- onErrorCaptured,
95
- onMounted,
96
- onRenderTracked,
97
- onRenderTriggered,
98
- onScopeDispose,
99
- onServerPrefetch,
100
- onUnmounted,
101
- onUpdated,
102
- onWatcherCleanup,
103
- openBlock,
104
- popScopeId,
105
- provide,
106
- proxyRefs,
107
- pushScopeId,
108
- queuePostFlushCb,
109
- reactive,
110
- readonly,
111
- ref,
112
- registerRuntimeCompiler,
113
- render,
114
- renderList,
115
- renderSlot,
116
- resolveComponent,
117
- resolveDirective,
118
- resolveDynamicComponent,
119
- resolveFilter,
120
- resolveTransitionHooks,
121
- setBlockTracking,
122
- setDevtoolsHook,
123
- setTransitionHooks,
124
- shallowReactive,
125
- shallowReadonly,
126
- shallowRef,
127
- ssrContextKey,
128
- ssrUtils,
129
- stop,
130
- toDisplayString,
131
- toHandlerKey,
132
- toHandlers,
133
- toRaw,
134
- toRef,
135
- toRefs,
136
- toValue,
137
- transformVNodeArgs,
138
- triggerRef,
139
- unref,
140
- useAttrs,
141
- useCssModule,
142
- useCssVars,
143
- useHost,
144
- useId,
145
- useModel,
146
- useSSRContext,
147
- useShadowRoot,
148
- useSlots,
149
- useTemplateRef,
150
- useTransitionState,
151
- vModelCheckbox,
152
- vModelDynamic,
153
- vModelRadio,
154
- vModelSelect,
155
- vModelText,
156
- vShow,
157
- version,
158
- warn,
159
- watch,
160
- watchEffect,
161
- watchPostEffect,
162
- watchSyncEffect,
163
- withAsyncContext,
164
- withCtx,
165
- withDefaults,
166
- withDirectives,
167
- withKeys,
168
- withMemo,
169
- withModifiers,
170
- withScopeId
171
- } from "./chunk-LW4I4DCF.js";
172
- export {
173
- BaseTransition,
174
- BaseTransitionPropsValidators,
175
- Comment,
176
- DeprecationTypes,
177
- EffectScope,
178
- ErrorCodes,
179
- ErrorTypeStrings,
180
- Fragment,
181
- KeepAlive,
182
- ReactiveEffect,
183
- Static,
184
- Suspense,
185
- Teleport,
186
- Text,
187
- TrackOpTypes,
188
- Transition,
189
- TransitionGroup,
190
- TriggerOpTypes,
191
- VueElement,
192
- assertNumber,
193
- callWithAsyncErrorHandling,
194
- callWithErrorHandling,
195
- camelize,
196
- capitalize,
197
- cloneVNode,
198
- compatUtils,
199
- compile,
200
- computed,
201
- createApp,
202
- createBlock,
203
- createCommentVNode,
204
- createElementBlock,
205
- createBaseVNode as createElementVNode,
206
- createHydrationRenderer,
207
- createPropsRestProxy,
208
- createRenderer,
209
- createSSRApp,
210
- createSlots,
211
- createStaticVNode,
212
- createTextVNode,
213
- createVNode,
214
- customRef,
215
- defineAsyncComponent,
216
- defineComponent,
217
- defineCustomElement,
218
- defineEmits,
219
- defineExpose,
220
- defineModel,
221
- defineOptions,
222
- defineProps,
223
- defineSSRCustomElement,
224
- defineSlots,
225
- devtools,
226
- effect,
227
- effectScope,
228
- getCurrentInstance,
229
- getCurrentScope,
230
- getCurrentWatcher,
231
- getTransitionRawChildren,
232
- guardReactiveProps,
233
- h,
234
- handleError,
235
- hasInjectionContext,
236
- hydrate,
237
- hydrateOnIdle,
238
- hydrateOnInteraction,
239
- hydrateOnMediaQuery,
240
- hydrateOnVisible,
241
- initCustomFormatter,
242
- initDirectivesForSSR,
243
- inject,
244
- isMemoSame,
245
- isProxy,
246
- isReactive,
247
- isReadonly,
248
- isRef,
249
- isRuntimeOnly,
250
- isShallow,
251
- isVNode,
252
- markRaw,
253
- mergeDefaults,
254
- mergeModels,
255
- mergeProps,
256
- nextTick,
257
- normalizeClass,
258
- normalizeProps,
259
- normalizeStyle,
260
- onActivated,
261
- onBeforeMount,
262
- onBeforeUnmount,
263
- onBeforeUpdate,
264
- onDeactivated,
265
- onErrorCaptured,
266
- onMounted,
267
- onRenderTracked,
268
- onRenderTriggered,
269
- onScopeDispose,
270
- onServerPrefetch,
271
- onUnmounted,
272
- onUpdated,
273
- onWatcherCleanup,
274
- openBlock,
275
- popScopeId,
276
- provide,
277
- proxyRefs,
278
- pushScopeId,
279
- queuePostFlushCb,
280
- reactive,
281
- readonly,
282
- ref,
283
- registerRuntimeCompiler,
284
- render,
285
- renderList,
286
- renderSlot,
287
- resolveComponent,
288
- resolveDirective,
289
- resolveDynamicComponent,
290
- resolveFilter,
291
- resolveTransitionHooks,
292
- setBlockTracking,
293
- setDevtoolsHook,
294
- setTransitionHooks,
295
- shallowReactive,
296
- shallowReadonly,
297
- shallowRef,
298
- ssrContextKey,
299
- ssrUtils,
300
- stop,
301
- toDisplayString,
302
- toHandlerKey,
303
- toHandlers,
304
- toRaw,
305
- toRef,
306
- toRefs,
307
- toValue,
308
- transformVNodeArgs,
309
- triggerRef,
310
- unref,
311
- useAttrs,
312
- useCssModule,
313
- useCssVars,
314
- useHost,
315
- useId,
316
- useModel,
317
- useSSRContext,
318
- useShadowRoot,
319
- useSlots,
320
- useTemplateRef,
321
- useTransitionState,
322
- vModelCheckbox,
323
- vModelDynamic,
324
- vModelRadio,
325
- vModelSelect,
326
- vModelText,
327
- vShow,
328
- version,
329
- warn,
330
- watch,
331
- watchEffect,
332
- watchPostEffect,
333
- watchSyncEffect,
334
- withAsyncContext,
335
- withCtx,
336
- withDefaults,
337
- withDirectives,
338
- withKeys,
339
- withMemo,
340
- withModifiers,
341
- withScopeId
342
- };
343
- //# sourceMappingURL=vue.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
7
- }
package/types.d.ts DELETED
@@ -1,372 +0,0 @@
1
- import BaseLayer from "ol/layer/Base";
2
- import TileLayer from "ol/layer/Tile";
3
- import { WMTS } from "ol/source";
4
- import View from "ol/View";
5
- import Feature, { FeatureLike } from "ol/Feature";
6
- import { Style } from "ol/style";
7
- import MapBrowserEvent from "ol/MapBrowserEvent";
8
- import { Units } from "ol/proj/Units";
9
- export interface FeatureData {
10
- type: string;
11
- properties: any;
12
- geometry: {
13
- type: "Polygon" | "MultiPolygon" | "Point" | "LineString" | "MultiLineString" | "MultiPoint" | "GeometryCollection";
14
- coordinates: any[];
15
- };
16
- }
17
- export interface MapJSONData {
18
- type: string;
19
- name?: string;
20
- features: FeatureData[];
21
- }
22
- type LayerItem = BaseLayer | TileLayer<WMTS>;
23
- export interface MapInitType {
24
- layers?: LayerItem[] | {
25
- [key: string]: LayerItem[];
26
- };
27
- zoom?: number;
28
- center?: number[];
29
- view?: View;
30
- minZoom?: number;
31
- maxZoom?: number;
32
- extent?: number[];
33
- mapClipData?: MapJSONData;
34
- token?: string;
35
- annotation?: boolean;
36
- enableLog?: boolean;
37
- logLevel?: 'debug' | 'info' | 'warn' | 'error';
38
- projection?: {
39
- code: string;
40
- def?: string;
41
- extent?: number[];
42
- worldExtent?: number[];
43
- units?: Units;
44
- };
45
- }
46
- export type AnnotationType = 'cva_c' | 'cia_c' | 'cta_c';
47
- export type TiandituType = 'vec_c' | 'img_c' | 'ter_c';
48
- export interface MapLayers {
49
- vec_c?: BaseLayer[];
50
- img_c?: BaseLayer[];
51
- ter_c?: BaseLayer[];
52
- [key: string]: BaseLayer[] | undefined;
53
- }
54
- export interface MapLayersOptions {
55
- layers?: BaseLayer[] | MapLayers;
56
- zIndex?: number;
57
- mapClip?: boolean;
58
- mapClipData?: MapJSONData;
59
- token?: string;
60
- annotation?: boolean;
61
- }
62
- export interface AnnotationLayerOptions {
63
- type: AnnotationType;
64
- token: string;
65
- zIndex?: number;
66
- visible?: boolean;
67
- }
68
- export interface HeatMapOptions {
69
- layerName?: string;
70
- radius?: number;
71
- blur?: number;
72
- gradient?: string[];
73
- opacity?: number;
74
- visible?: boolean;
75
- zIndex?: number;
76
- valueKey?: string;
77
- }
78
- /**
79
- * 基础选项接口 - 所有图层的公共配置
80
- */
81
- export interface BaseOptions {
82
- /** 图层名称 */
83
- layerName?: string;
84
- /** 图层层级 */
85
- zIndex?: number;
86
- /** 图层可见性 */
87
- visible?: boolean;
88
- /** 图层透明度 */
89
- opacity?: number;
90
- /** 是否适应视图 */
91
- fitView?: boolean;
92
- /** 地图裁剪 */
93
- mapClip?: boolean;
94
- /** 地图裁剪数据 */
95
- mapClipData?: MapJSONData;
96
- /** 投影选项 */
97
- projectionOptOptions?: any;
98
- /** 自定义样式函数 */
99
- style?: Style | Style[] | ((feature: FeatureLike) => Style | Style[]);
100
- }
101
- /**
102
- * 样式选项接口 - 图形样式相关配置
103
- */
104
- export interface StyleOptions {
105
- /** 描边颜色 */
106
- strokeColor?: string | number[];
107
- /** 描边宽度 */
108
- strokeWidth?: number;
109
- /** 线条虚线样式 */
110
- lineDash?: number[];
111
- /** 线条虚线偏移 */
112
- lineDashOffset?: number;
113
- /** 填充颜色 */
114
- fillColor?: string;
115
- /** 填充颜色回调函数 */
116
- fillColorCallBack?: (feature: Feature) => string;
117
- /** 是否使用默认描边 */
118
- withDefaultStroke?: boolean;
119
- /** 是否使用默认填充 */
120
- withDefaultFill?: boolean;
121
- }
122
- /**
123
- * 文本选项接口 - 文本标注相关配置
124
- */
125
- export interface TextOptions {
126
- /** 文本可见性 */
127
- textVisible?: boolean;
128
- /** 文本内容回调函数 */
129
- textCallBack?: (feature: Feature) => string;
130
- /** 文本字体 */
131
- textFont?: string;
132
- /** 文本填充颜色 */
133
- textFillColor?: string;
134
- /** 文本描边颜色 */
135
- textStrokeColor?: string;
136
- /** 文本描边宽度 */
137
- textStrokeWidth?: number;
138
- /** 文本Y轴偏移 */
139
- textOffsetY?: number;
140
- }
141
- /**
142
- * 点位选项接口 - 点位图层专用配置
143
- */
144
- export interface PointOptions extends BaseOptions, StyleOptions, TextOptions {
145
- /** 文本字段键 */
146
- textKey?: string;
147
- /** 图标图片 */
148
- img?: string;
149
- /** 图标缩放比例 */
150
- scale?: number;
151
- /** 图标颜色 */
152
- iconColor?: string;
153
- }
154
- /**
155
- * 线条选项接口 - 线条图层专用配置
156
- */
157
- export interface LineOptions extends BaseOptions, StyleOptions, TextOptions {
158
- /** 线条类型 */
159
- type?: string;
160
- }
161
- /**
162
- * 多边形选项接口 - 多边形图层专用配置
163
- */
164
- export interface PolygonOptions extends BaseOptions, StyleOptions, TextOptions {
165
- /** 文本字段键 */
166
- textKey?: string;
167
- /** 是否为蒙版 */
168
- mask?: boolean;
169
- }
170
- /**
171
- * 兼容性类型别名 - 保持向后兼容
172
- * @deprecated 请使用具体的选项接口:PointOptions, LineOptions, PolygonOptions
173
- */
174
- export type OptionsType = BaseOptions & StyleOptions & TextOptions & {
175
- textKey?: string;
176
- img?: string;
177
- scale?: number;
178
- iconColor?: string;
179
- type?: string;
180
- mask?: boolean;
181
- };
182
- /**
183
- * 图片图层数据接口
184
- */
185
- export interface ImageLayerData {
186
- img?: string;
187
- extent?: number[];
188
- }
189
- /**
190
- * 蒙版图层配置接口
191
- */
192
- export interface MaskLayerOptions {
193
- extent?: any;
194
- fillColor?: string;
195
- strokeWidth?: number;
196
- strokeColor?: string;
197
- zIndex?: number;
198
- opacity?: number;
199
- visible?: boolean;
200
- layerName?: string;
201
- }
202
- /**
203
- * 要素颜色更新选项接口
204
- */
205
- export interface FeatureColorUpdateOptions extends BaseOptions, StyleOptions, TextOptions {
206
- /** 文本字段键 */
207
- textKey?: string;
208
- }
209
- /**
210
- * 点位数据接口
211
- */
212
- export interface PointData {
213
- lgtd: number;
214
- lttd: number;
215
- [key: string]: any;
216
- }
217
- /**
218
- * 线数据接口
219
- */
220
- export interface LineData {
221
- type: string;
222
- coordinates: number[][];
223
- [key: string]: any;
224
- }
225
- /**
226
- * 聚合选项接口
227
- */
228
- export interface ClusterOptions extends PointOptions {
229
- /** 聚合距离 */
230
- distance?: number;
231
- /** 最小聚合距离 */
232
- minDistance?: number;
233
- }
234
- /**
235
- * 闪烁点数据接口
236
- */
237
- export interface TwinkleItem extends PointData {
238
- className?: string;
239
- /** 自定义DOM元素,可以是HTMLElement或者返回HTMLElement的函数 */
240
- element?: HTMLElement | ((item: TwinkleItem) => HTMLElement);
241
- [key: string]: any;
242
- }
243
- /**
244
- * 测量处理器类型
245
- */
246
- export type MeasureHandlerType = 'LineString' | 'Polygon';
247
- /**
248
- * 事件类型
249
- */
250
- export type EventType = 'click' | 'hover' | 'moveend';
251
- /**
252
- * Vue实例接口
253
- */
254
- export interface VueInstance {
255
- mount(element: Element | string): VueInstance;
256
- unmount?(): void;
257
- $destroy?(): void;
258
- [key: string]: any;
259
- }
260
- /**
261
- * Vue应用接口
262
- */
263
- export interface VueApp {
264
- mount(element: Element | string): VueInstance;
265
- unmount(): void;
266
- [key: string]: any;
267
- }
268
- /**
269
- * Vue 2.x 实例接口
270
- */
271
- export interface VueLegacyInstance {
272
- $mount(element?: Element | string): VueLegacyInstance;
273
- $destroy(): void;
274
- [key: string]: any;
275
- }
276
- /**
277
- * DOM点位状态枚举
278
- */
279
- export declare enum VueTemplatePointState {
280
- CREATED = "created",
281
- MOUNTED = "mounted",
282
- VISIBLE = "visible",
283
- HIDDEN = "hidden",
284
- DESTROYED = "destroyed"
285
- }
286
- /**
287
- * Vue模板点位选项接口
288
- */
289
- export interface VueTemplatePointOptions {
290
- Template: any;
291
- lgtd: number;
292
- lttd: number;
293
- props?: any;
294
- styleType?: 'default' | 'custom';
295
- positioning?: 'bottom-left' | 'bottom-center' | 'bottom-right' | 'center-left' | 'center-center' | 'center-right' | 'top-left' | 'top-center' | 'top-right';
296
- stopEvent?: boolean;
297
- visible?: boolean;
298
- className?: string;
299
- zIndex?: number;
300
- }
301
- /**
302
- * Vue模板点位实例接口
303
- */
304
- export interface VueTemplatePointInstance {
305
- id: string;
306
- dom: HTMLElement;
307
- anchor: any;
308
- app: VueApp | VueLegacyInstance | null;
309
- state: VueTemplatePointState;
310
- position: number[];
311
- options: VueTemplatePointOptions;
312
- setVisible(visible: boolean): void;
313
- updatePosition(lgtd: number, lttd: number): void;
314
- updateProps(newProps: Record<string, any>): void;
315
- setStyle(styles: Partial<CSSStyleDeclaration>): void;
316
- addClass(className: string): void;
317
- removeClass(className: string): void;
318
- remove(): void;
319
- getState(): VueTemplatePointState;
320
- getOptions(): Readonly<VueTemplatePointOptions>;
321
- isDestroyed(): boolean;
322
- }
323
- /**
324
- * 选择模式类型
325
- */
326
- export type SelectMode = 'click' | 'hover' | 'ctrl';
327
- /**
328
- * 选择回调事件接口
329
- */
330
- export interface SelectCallbackEvent {
331
- /** 新选中的要素数组 */
332
- selected: FeatureLike[];
333
- /** 取消选中的要素数组 */
334
- deselected: FeatureLike[];
335
- /** 地图浏览器事件 */
336
- mapBrowserEvent: MapBrowserEvent<any>;
337
- }
338
- /**
339
- * 要素选择配置选项
340
- */
341
- export interface SelectOptions {
342
- /** 是否支持多选,默认 false */
343
- multi?: boolean;
344
- /** 图层过滤器,指定可选择的图层名称列表 */
345
- layerFilter?: string[];
346
- /** 要素过滤器函数 */
347
- featureFilter?: (feature: FeatureLike) => boolean;
348
- /** 点击容差(像素),默认为 0 */
349
- hitTolerance?: number;
350
- /** 选中要素的样式 */
351
- selectStyle?: Style | Style[] | ((feature: FeatureLike) => Style | Style[]);
352
- /** 选中要素时的回调函数 */
353
- onSelect?: (event: SelectCallbackEvent) => void;
354
- /** 取消选中要素时的回调函数 */
355
- onDeselect?: (event: SelectCallbackEvent) => void;
356
- }
357
- /**
358
- * 编程式选择选项接口
359
- */
360
- export interface ProgrammaticSelectOptions {
361
- /** 图层名称,指定在哪个图层中选择要素 */
362
- layerName?: string;
363
- /** 自定义选中样式(仅作用于此次选择) */
364
- selectStyle?: Style | Style[] | ((feature: FeatureLike) => Style | Style[]);
365
- /** 是否定位至选中要素,默认 false */
366
- fitView?: boolean;
367
- /** 定位动画持续时间(毫秒),默认 500 */
368
- fitDuration?: number;
369
- /** 定位时的边距(像素),默认 100 */
370
- fitPadding?: number;
371
- }
372
- export {};