tg-map-vue3 3.0.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 (70) hide show
  1. package/README.md +109 -0
  2. package/dist/src/components/TgMap.vue.d.ts +45 -0
  3. package/dist/src/components/TgMapWidget.vue.d.ts +49 -0
  4. package/dist/src/components/controls/TgCustomControl.vue.d.ts +16 -0
  5. package/dist/src/components/controls/TgMapTypeControl.vue.d.ts +14 -0
  6. package/dist/src/components/controls/TgScaleControl.vue.d.ts +12 -0
  7. package/dist/src/components/controls/TgZoomControl.vue.d.ts +12 -0
  8. package/dist/src/components/extra/TgMarkerClusterer.vue.d.ts +48 -0
  9. package/dist/src/components/index.d.ts +36 -0
  10. package/dist/src/components/layers/TgTrafficLayer.vue.d.ts +15 -0
  11. package/dist/src/components/map-mixin.d.ts +22 -0
  12. package/dist/src/components/overlays/TgCircle.vue.d.ts +21 -0
  13. package/dist/src/components/overlays/TgElementOverlay.vue.d.ts +30 -0
  14. package/dist/src/components/overlays/TgInfoBox.vue.d.ts +29 -0
  15. package/dist/src/components/overlays/TgInfoWindow.vue.d.ts +25 -0
  16. package/dist/src/components/overlays/TgLabel.vue.d.ts +21 -0
  17. package/dist/src/components/overlays/TgMarker.vue.d.ts +60 -0
  18. package/dist/src/components/overlays/TgPolygon.vue.d.ts +20 -0
  19. package/dist/src/components/overlays/TgPolyline.vue.d.ts +18 -0
  20. package/dist/src/map/event-target.d.ts +35 -0
  21. package/dist/src/map/event.d.ts +47 -0
  22. package/dist/src/map/lat-lng.d.ts +89 -0
  23. package/dist/src/map/map/baidu-map.d.ts +66 -0
  24. package/dist/src/map/map/controls/control.d.ts +101 -0
  25. package/dist/src/map/map/controls/map-type.control.d.ts +30 -0
  26. package/dist/src/map/map/controls/scale.control.d.ts +15 -0
  27. package/dist/src/map/map/controls/zoom.control.d.ts +16 -0
  28. package/dist/src/map/map/extra/marker-clusterer.d.ts +69 -0
  29. package/dist/src/map/map/google-map.d.ts +68 -0
  30. package/dist/src/map/map/here-map.d.ts +49 -0
  31. package/dist/src/map/map/map-options.d.ts +46 -0
  32. package/dist/src/map/map/map-type.d.ts +113 -0
  33. package/dist/src/map/map/map.d.ts +129 -0
  34. package/dist/src/map/map/overlay/baidu-info-box.d.ts +81 -0
  35. package/dist/src/map/map/overlay/circle.d.ts +42 -0
  36. package/dist/src/map/map/overlay/element-overlay.d.ts +33 -0
  37. package/dist/src/map/map/overlay/google-label.d.ts +74 -0
  38. package/dist/src/map/map/overlay/icon.d.ts +16 -0
  39. package/dist/src/map/map/overlay/info-box.d.ts +58 -0
  40. package/dist/src/map/map/overlay/info-window.d.ts +112 -0
  41. package/dist/src/map/map/overlay/label.d.ts +89 -0
  42. package/dist/src/map/map/overlay/marker.d.ts +126 -0
  43. package/dist/src/map/map/overlay/overlay.d.ts +38 -0
  44. package/dist/src/map/map/overlay/polygon.d.ts +35 -0
  45. package/dist/src/map/map/overlay/polyline.d.ts +35 -0
  46. package/dist/src/map/map/overlay/shape.d.ts +48 -0
  47. package/dist/src/map/map-config.d.ts +14 -0
  48. package/dist/src/map/map-factory.d.ts +10 -0
  49. package/dist/src/map/map-loader.d.ts +5 -0
  50. package/dist/src/map/types.d.ts +17 -0
  51. package/dist/src/map/unions.d.ts +19 -0
  52. package/dist/src/utils/arrays.d.ts +10 -0
  53. package/dist/src/utils/assert.d.ts +9 -0
  54. package/dist/src/utils/baidu-utils.d.ts +5 -0
  55. package/dist/src/utils/elements.d.ts +4 -0
  56. package/dist/src/utils/formatter.d.ts +1 -0
  57. package/dist/src/utils/here-utils.d.ts +10 -0
  58. package/dist/src/utils/lifecycle-log.d.ts +14 -0
  59. package/dist/src/utils/mapped-types.d.ts +60 -0
  60. package/dist/src/utils/objects.d.ts +13 -0
  61. package/dist/src/utils/strings.d.ts +9 -0
  62. package/dist/src/utils/utils.d.ts +9 -0
  63. package/dist/src/utils/values.d.ts +34 -0
  64. package/dist/src/utils/vue-utils.d.ts +82 -0
  65. package/dist/style.css +1 -0
  66. package/dist/tg-map.js +4871 -0
  67. package/dist/tg-map.js.map +1 -0
  68. package/dist/tg-map.umd.cjs +14 -0
  69. package/dist/tg-map.umd.cjs.map +1 -0
  70. package/package.json +67 -0
package/README.md ADDED
@@ -0,0 +1,109 @@
1
+ # @tg/map
2
+
3
+ 封装 百度地图, Google地图, Here地图 的Vue2组件库
4
+
5
+ ## 使用
6
+
7
+ 1. 项目根目录的`.npmrc`中添加如下内容, 让`@transcodegroup`下的包都从github中获取:
8
+
9
+ ```config
10
+ @transcodegroup:registry=https://npm.pkg.github.com
11
+ ```
12
+
13
+ 2. 用户文件根目录的`~/.npmrc`中添加如下内容, 其中`TOKEN`在[这里](https://github.com/settings/tokens/new)创建, 记得勾选`package`相关权限:
14
+
15
+ ```config
16
+ //npm.pkg.github.com/:_authToken=TOKEN
17
+ ```
18
+
19
+ 3. 安装/更新
20
+
21
+ ```sh
22
+ npm install @transcodegroup/tg-map
23
+ ```
24
+
25
+ ## 发布
26
+
27
+ 修改[package.json](./package.json)的版本号, 并推送到github, 则会自动发布新版
28
+
29
+ ## 开发
30
+
31
+ ### 初始化仓库
32
+
33
+ ```sh
34
+ # 拉取本仓库
35
+ git clone https://github.com/TranscodeGroup/tg-map.git
36
+ # 进入本地仓库目录
37
+ cd tg-map
38
+ # 安装依赖
39
+ npm install
40
+ # 往npm中注册@@transcodegroup\tg-map
41
+ npm link
42
+ # 进入需要依赖@transcodegroup\tg-map的仓库目录($REPO_MAIN_PATH替换成你自己的路径)
43
+ cd $REPO_MAIN_PATH
44
+ # 链接之前注册的@tg/map到该仓库
45
+ npm link @transcodegroup\tg-map
46
+ ```
47
+
48
+ ### 修改一些第三方库的package.json
49
+
50
+ TypeScript/VSCode默认只会读取package.json中的main字段, 而webpack默认依次读取[brower, module, main],
51
+ 通常main中都是xxx.umd.js, TypeScript/VSCode并不能使用它的JSDoc生成类型信息, 可以手动把package.json中的main改成和module相同的内容, 以获取智能提示.
52
+
53
+ 以下是推荐手动修改的包:
54
+
55
+ 1. [@google/markerclusterer](node_modules/@google/markerclusterer/package.json#L48)
56
+
57
+ ### 修改第三方库的代码
58
+
59
+ 有些不影响功能的小问题, 懒得fork, 直接修改代码来的快点_(:3」∠)_
60
+
61
+ 1. 目前没有要改的代码
62
+
63
+ ### 修改VSCode配置
64
+
65
+ 用户配置:
66
+
67
+ ```jsonc
68
+ {
69
+ // 项目中使用的最新版TS, 需要让Vetur也使用这个版本
70
+ "vetur.useWorkspaceDependencies": true,
71
+ }
72
+ ```
73
+
74
+ ### 构建
75
+
76
+ ```sh
77
+ # 修改代码后要重新构建
78
+ npm run build:lib
79
+ # 或者使用watch模式, 自动重新构建
80
+ npm run build:lib:watch
81
+ ```
82
+
83
+ ## 其他
84
+
85
+ ```sh
86
+ npm install
87
+ ```
88
+
89
+ ### Compile and Hot-Reload for Development
90
+
91
+ ```sh
92
+ npm run dev
93
+ ```
94
+
95
+ ### Type-Check, Compile and Minify for Production
96
+
97
+ ```sh
98
+ npm run build
99
+ ```
100
+
101
+ ### Lint with [ESLint](https://eslint.org/)
102
+
103
+ ```sh
104
+ npm run lint
105
+ ```
106
+
107
+ ### Customize configuration
108
+
109
+ See [Vite Configuration Reference](https://vitejs.dev/config/).
@@ -0,0 +1,45 @@
1
+ /// <reference path="map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type Props } from '../utils/vue-utils';
4
+ import type { AbstractMap } from '../map/map/map';
5
+ import { TgMapType } from '../map/map-factory';
6
+ import { LatLng } from '../map/lat-lng';
7
+ import { MapOptions } from '../map/map/map-options';
8
+ import { MapType } from '../map/map/map-type';
9
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<Omit<MapOptions, "buildInMapTypeId"> & {
10
+ type: TgMapType;
11
+ currentCenter?: LatLng | undefined;
12
+ lastCenter?: LatLng | undefined;
13
+ centerSyncDelay: number;
14
+ mapTypeId?: string | undefined;
15
+ mapType?: MapType | undefined;
16
+ }>, {
17
+ centerSyncTimeoutId: number;
18
+ }, {
19
+ map: AbstractMap | undefined;
20
+ isDestroyed: boolean;
21
+ }, {
22
+ propsJson(): string;
23
+ }, {}, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<Omit<MapOptions, "buildInMapTypeId"> & {
24
+ type: TgMapType;
25
+ currentCenter?: LatLng | undefined;
26
+ lastCenter?: LatLng | undefined;
27
+ centerSyncDelay: number;
28
+ mapTypeId?: string | undefined;
29
+ mapType?: MapType | undefined;
30
+ }>>>, {
31
+ center: any;
32
+ zoom: any;
33
+ infoWindowMode?: any;
34
+ gestureHandling?: any;
35
+ minZoom?: any;
36
+ maxZoom?: any;
37
+ mapStyle?: any;
38
+ type: any;
39
+ currentCenter?: any;
40
+ lastCenter?: any;
41
+ centerSyncDelay: any;
42
+ mapTypeId?: any;
43
+ mapType?: any;
44
+ }>;
45
+ export default _sfc_main;
@@ -0,0 +1,49 @@
1
+ /// <reference path="map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { dimen } from '../utils/formatter';
4
+ /** TgMap上的Widget, 只是对绝对布局进行简单的封装 */
5
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<{
6
+ left: {
7
+ type: (NumberConstructor | StringConstructor)[];
8
+ default: null;
9
+ };
10
+ top: {
11
+ type: (NumberConstructor | StringConstructor)[];
12
+ default: null;
13
+ };
14
+ right: {
15
+ type: (NumberConstructor | StringConstructor)[];
16
+ default: null;
17
+ };
18
+ bottom: {
19
+ type: (NumberConstructor | StringConstructor)[];
20
+ default: null;
21
+ };
22
+ }, unknown, unknown, {
23
+ topValue(): string | number;
24
+ }, {
25
+ dimen: typeof dimen;
26
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{
27
+ left: {
28
+ type: (NumberConstructor | StringConstructor)[];
29
+ default: null;
30
+ };
31
+ top: {
32
+ type: (NumberConstructor | StringConstructor)[];
33
+ default: null;
34
+ };
35
+ right: {
36
+ type: (NumberConstructor | StringConstructor)[];
37
+ default: null;
38
+ };
39
+ bottom: {
40
+ type: (NumberConstructor | StringConstructor)[];
41
+ default: null;
42
+ };
43
+ }>>, {
44
+ left: string | number;
45
+ top: string | number;
46
+ right: string | number;
47
+ bottom: string | number;
48
+ }>;
49
+ export default _sfc_main;
@@ -0,0 +1,16 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type Props } from '../../utils/vue-utils';
4
+ import { ControlPosition, CustomControl } from '../../map/map/controls/control';
5
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<{
6
+ position: ControlPosition;
7
+ }>, {
8
+ control: CustomControl;
9
+ }, unknown, {}, {}, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
10
+ recreate(): void;
11
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<{
12
+ position: ControlPosition;
13
+ }>>>, {
14
+ position: any;
15
+ }>;
16
+ export default _sfc_main;
@@ -0,0 +1,14 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type MapTypeControlOptions, type MapTypeControl } from '../../map/map/controls/map-type.control';
4
+ import { type Props } from '../../utils/vue-utils';
5
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<MapTypeControlOptions>, {
6
+ control: MapTypeControl;
7
+ }, unknown, {}, {}, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
8
+ recreate(): void;
9
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<MapTypeControlOptions>>>, {
10
+ type?: any;
11
+ position?: any;
12
+ mapTypes?: any;
13
+ }>;
14
+ export default _sfc_main;
@@ -0,0 +1,12 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type Props } from '../../utils/vue-utils';
4
+ import type { ScaleControlOptions, ScaleControl } from '../../map/map/controls/scale.control';
5
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<ScaleControlOptions>, {
6
+ control: ScaleControl;
7
+ }, unknown, {}, {}, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
8
+ recreate(): void;
9
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<ScaleControlOptions>>>, {
10
+ position?: any;
11
+ }>;
12
+ export default _sfc_main;
@@ -0,0 +1,12 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import type { ZoomControlOptions, ZoomControl } from '../../map/map/controls/zoom.control';
4
+ import { type Props } from '../../utils/vue-utils';
5
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<ZoomControlOptions>, {
6
+ control: ZoomControl;
7
+ }, unknown, {}, {}, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
8
+ recreate(): void;
9
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<ZoomControlOptions>>>, {
10
+ position?: any;
11
+ }>;
12
+ export default _sfc_main;
@@ -0,0 +1,48 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import type { MarkerClusterer, MarkerClustererOptions } from '../../map/map/extra/marker-clusterer';
4
+ import { type Props } from '../../utils/vue-utils';
5
+ import type { MarkerOverlay } from '../../map/map/overlay/marker';
6
+ declare const TgMarkerClusterer: import('./@vue/compat').DefineComponent<Props<Omit<MarkerClustererOptions, "markers">>, {
7
+ clusterer: MarkerClusterer;
8
+ }, unknown, {}, {
9
+ getOptions(): MarkerClustererOptions;
10
+ /** TgMarker有可能在该组件未初始化之前调用, 需要通过该方法判断 */
11
+ isInitiated(): boolean;
12
+ markers(): MarkerOverlay[];
13
+ onAddMarker(marker: MarkerOverlay): void;
14
+ onRemoveMarker(marker: MarkerOverlay): void;
15
+ }, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
16
+ recreate(): void;
17
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<Omit<MarkerClustererOptions, "markers">>>>, {
18
+ maxZoom?: any;
19
+ zIndex?: any;
20
+ gridSize?: any;
21
+ minClusterSize?: any;
22
+ averageCenter?: any;
23
+ styles?: any;
24
+ stylesIndexCalculator?: any;
25
+ }>;
26
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<Omit<MarkerClustererOptions, "markers">>, {
27
+ clusterer: MarkerClusterer;
28
+ }, unknown, {}, {
29
+ getOptions(): MarkerClustererOptions;
30
+ /** TgMarker有可能在该组件未初始化之前调用, 需要通过该方法判断 */
31
+ isInitiated(): boolean;
32
+ markers(): MarkerOverlay[];
33
+ onAddMarker(marker: MarkerOverlay): void;
34
+ onRemoveMarker(marker: MarkerOverlay): void;
35
+ }, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
36
+ recreate(): void;
37
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<Omit<MarkerClustererOptions, "markers">>>>, {
38
+ maxZoom?: any;
39
+ zIndex?: any;
40
+ gridSize?: any;
41
+ minClusterSize?: any;
42
+ averageCenter?: any;
43
+ styles?: any;
44
+ stylesIndexCalculator?: any;
45
+ }>;
46
+ /** TgMarkerClusterer作为构造器, 创建的Vue实例类型 */
47
+ export type TgMarkerClustererInstanceType = InstanceType<typeof TgMarkerClusterer>;
48
+ export default _sfc_main;
@@ -0,0 +1,36 @@
1
+ /// <reference types="@/map/dts" />
2
+ import type { App } from './@vue/compat';
3
+ import { type PartialTgMapConfig, setTgMapConfig, type TgMapConfig, getTgMapConfig } from '../map/map-config';
4
+ import MapMixin, { MIXIN_HOOK_DESTROY, MIXIN_HOOK_CREATE, MIXIN_MAP_NAME } from './map-mixin';
5
+ import LifecycleLogPlugin, { type LifecycleLogOptions } from '../utils/lifecycle-log';
6
+ import TgMap from './TgMap.vue';
7
+ import TgInfoBox from './overlays/TgInfoBox.vue';
8
+ declare const TgMapPlugin: {
9
+ install(app: App, config?: PartialTgMapConfig): void;
10
+ };
11
+ export default TgMapPlugin;
12
+ export * from '../map/lat-lng';
13
+ export * from '../map/map/map';
14
+ export * from '../map/map-factory';
15
+ export * from '../map/types';
16
+ export * from '../map/map/overlay/icon';
17
+ export * from '../map/map/overlay/marker';
18
+ export * from '../map/map/overlay/circle';
19
+ export * from '../map/map/overlay/polygon';
20
+ export * from '../map/map/overlay/polyline';
21
+ export * from '../map/map/overlay/overlay';
22
+ export * from '../map/map/overlay/info-window';
23
+ export * from '../map/map/overlay/info-box';
24
+ export * from '../map/map/extra/marker-clusterer';
25
+ export * from '../map/map/controls/control';
26
+ export * from '../map/map/controls/map-type.control';
27
+ export * from '../map/map/controls/scale.control';
28
+ export * from '../map/map/controls/zoom.control';
29
+ export * from '../utils/utils';
30
+ export * from '../utils/vue-utils';
31
+ export * from '../utils/mapped-types';
32
+ export { Objects } from '../utils/objects';
33
+ export * from '../utils/arrays';
34
+ export * from '../utils/strings';
35
+ export * from '../utils/values';
36
+ export { TgMap, TgInfoBox, TgMapConfig, PartialTgMapConfig, getTgMapConfig, setTgMapConfig, LifecycleLogPlugin, LifecycleLogOptions, MapMixin, MIXIN_HOOK_CREATE, MIXIN_HOOK_DESTROY, MIXIN_MAP_NAME, };
@@ -0,0 +1,15 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { TrafficLayer } from '../../map/map/map-type';
4
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Readonly<import('./@vue/compat').ComponentPropsOptions<{
5
+ [x: string]: unknown;
6
+ }>>, {
7
+ layer: TrafficLayer;
8
+ }, unknown, {}, {}, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
9
+ recreate(): void;
10
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, readonly string[] | Readonly<import('./@vue/compat').ExtractPropTypes<Readonly<import('./@vue/compat').ComponentObjectPropsOptions<{
11
+ [x: string]: unknown;
12
+ }>>>>, {
13
+ [x: number]: string;
14
+ } | {}>;
15
+ export default _sfc_main;
@@ -0,0 +1,22 @@
1
+ /// <reference path="map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import type { AbstractMap } from '../map/map/map';
4
+ export declare const MIXIN_MAP_NAME = "$map";
5
+ export declare const MIXIN_HOOK_CREATE = "onCreate";
6
+ export declare const MIXIN_HOOK_DESTROY = "onDestroy";
7
+ declare module 'vue' {
8
+ interface ComponentCustomProperties {
9
+ /** 混合了MapMixin的Vue才会有该属性 */
10
+ [MIXIN_MAP_NAME]: AbstractMap;
11
+ /** 混合了MapMixin的Vue才会有该属性, 会依次调用onDestroy + onCreate, 你应该在这两个hook中分别实现 移除 和 创建并添加 覆盖物的逻辑 */
12
+ recreate: () => void;
13
+ }
14
+ interface ComponentCustomOptions {
15
+ [MIXIN_HOOK_CREATE]?(): void;
16
+ [MIXIN_HOOK_DESTROY]?(): void;
17
+ }
18
+ }
19
+ declare const MapMixin: import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
20
+ recreate(): void;
21
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>;
22
+ export default MapMixin;
@@ -0,0 +1,21 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type Props } from '../../utils/vue-utils';
4
+ import type { CircleOptions, CircleOverlay } from '../../map/map/overlay/circle';
5
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<CircleOptions>, {
6
+ overlay: CircleOverlay;
7
+ }, unknown, {}, {}, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
8
+ recreate(): void;
9
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<CircleOptions>>>, {
10
+ center: any;
11
+ clickable?: any;
12
+ visible?: any;
13
+ fillColor?: any;
14
+ fillOpacity?: any;
15
+ editable?: any;
16
+ strokeColor?: any;
17
+ strokeOpacity?: any;
18
+ strokeWeight?: any;
19
+ radius: any;
20
+ }>;
21
+ export default _sfc_main;
@@ -0,0 +1,30 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type Props } from '../../utils/vue-utils';
4
+ import { LatLng } from '../../map/lat-lng';
5
+ import { type ElementOverlayOptions, ElementOverlay, type OverlayProjection } from '../../map/map/overlay/element-overlay';
6
+ import type { AbstractMap } from '../../map/map/map';
7
+ /** ElementOverlay的简单实现 */
8
+ declare class SimpleElementOverlay extends ElementOverlay {
9
+ content: HTMLElement;
10
+ private position;
11
+ constructor(map: AbstractMap, options: ElementOverlayOptions, content: HTMLElement, position: LatLng);
12
+ protected onCreate(): HTMLElement;
13
+ protected onDraw(projection: OverlayProjection): void;
14
+ setPosition(position: LatLng): void;
15
+ }
16
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<ElementOverlayOptions & {
17
+ position: LatLng;
18
+ }>, {
19
+ overlay: SimpleElementOverlay;
20
+ }, unknown, {}, {
21
+ content(): HTMLElement;
22
+ }, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
23
+ recreate(): void;
24
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<ElementOverlayOptions & {
25
+ position: LatLng;
26
+ }>>>, {
27
+ position: any;
28
+ mapPane: any;
29
+ }>;
30
+ export default _sfc_main;
@@ -0,0 +1,29 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type Props } from '../../utils/vue-utils';
4
+ import { type TgMarkerInstanceType } from './TgMarker.vue';
5
+ import type { InfoBoxOverlay, InfoBoxOptions } from '../../map/map/overlay/info-box';
6
+ import type { MarkerOverlay } from '../../map/map/overlay/marker';
7
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<Omit<InfoBoxOptions, "content"> & {
8
+ show: boolean;
9
+ }>, {
10
+ overlay: InfoBoxOverlay;
11
+ }, unknown, {}, {
12
+ getOptions(): InfoBoxOptions;
13
+ content(): HTMLElement;
14
+ $marker(): TgMarkerInstanceType | undefined;
15
+ open(marker?: MarkerOverlay): void;
16
+ close(): void;
17
+ }, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
18
+ recreate(): void;
19
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<Omit<InfoBoxOptions, "content"> & {
20
+ show: boolean;
21
+ }>>>, {
22
+ show: any;
23
+ position?: any;
24
+ offset?: any;
25
+ zIndex?: any;
26
+ maxWidth?: any;
27
+ borderClass?: any;
28
+ }>;
29
+ export default _sfc_main;
@@ -0,0 +1,25 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type Props } from '../../utils/vue-utils';
4
+ import type { InfoWindowOverlay, InfoWindowOptions } from '../../map/map/overlay/info-window';
5
+ import { type TgMarkerInstanceType } from './TgMarker.vue';
6
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<Omit<InfoWindowOptions, "content"> & {
7
+ show: boolean;
8
+ }>, {
9
+ overlay: InfoWindowOverlay;
10
+ }, unknown, {}, {
11
+ content(): HTMLElement;
12
+ $marker(): TgMarkerInstanceType | undefined;
13
+ getOptions(): InfoWindowOptions;
14
+ }, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
15
+ recreate(): void;
16
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<Omit<InfoWindowOptions, "content"> & {
17
+ show: boolean;
18
+ }>>>, {
19
+ show: any;
20
+ position?: any;
21
+ offset?: any;
22
+ maxWidth?: any;
23
+ disableAutoPan?: any;
24
+ }>;
25
+ export default _sfc_main;
@@ -0,0 +1,21 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type Props } from '../../utils/vue-utils';
4
+ import type { LabelOptions, LabelOverlay } from '../../map/map/overlay/label';
5
+ import { type TgMarkerInstanceType } from './TgMarker.vue';
6
+ import type { Marker } from '../../map/map/overlay/marker';
7
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<Omit<LabelOptions, "content">>, {
8
+ overlay: LabelOverlay;
9
+ }, unknown, {}, {
10
+ content(): HTMLElement;
11
+ marker(): Marker | undefined;
12
+ $marker(): TgMarkerInstanceType | undefined;
13
+ getOptions(): LabelOptions;
14
+ }, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
15
+ recreate(): void;
16
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<Omit<LabelOptions, "content">>>>, {
17
+ position?: any;
18
+ offset?: any;
19
+ zIndex?: any;
20
+ }>;
21
+ export default _sfc_main;
@@ -0,0 +1,60 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type MarkerOverlay, type MarkerOptions, type Marker } from '../../map/map/overlay/marker';
4
+ import { type Props } from '../../utils/vue-utils';
5
+ import { type TgMarkerClustererInstanceType } from '../extra/TgMarkerClusterer.vue';
6
+ import type { LabelOverlay } from '../../map/map/overlay/label';
7
+ type Info = {
8
+ open(anchor?: Marker): void;
9
+ close(): void;
10
+ };
11
+ type TgInfo = {
12
+ show?: boolean;
13
+ overlay: Info;
14
+ };
15
+ declare const TgMarker: import('./@vue/compat').DefineComponent<Props<MarkerOptions>, {
16
+ marker: MarkerOverlay;
17
+ }, unknown, {}, {
18
+ $clusterer(): TgMarkerClustererInstanceType | undefined;
19
+ onAddLabel(label: LabelOverlay): void;
20
+ onRemoveLabel(_label: LabelOverlay): void;
21
+ onAddInfo(info: TgInfo): void;
22
+ onRemoveInfo(info: TgInfo): void;
23
+ onInfoShowChanged(info: TgInfo, isShow: boolean): void;
24
+ }, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
25
+ recreate(): void;
26
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<MarkerOptions>>>, {
27
+ position: any;
28
+ zIndex?: any;
29
+ title?: any;
30
+ icon?: any;
31
+ clickable?: any;
32
+ draggable?: any;
33
+ crossOnDrag?: any;
34
+ cursor?: any;
35
+ visible?: any;
36
+ }>;
37
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<MarkerOptions>, {
38
+ marker: MarkerOverlay;
39
+ }, unknown, {}, {
40
+ $clusterer(): TgMarkerClustererInstanceType | undefined;
41
+ onAddLabel(label: LabelOverlay): void;
42
+ onRemoveLabel(_label: LabelOverlay): void;
43
+ onAddInfo(info: TgInfo): void;
44
+ onRemoveInfo(info: TgInfo): void;
45
+ onInfoShowChanged(info: TgInfo, isShow: boolean): void;
46
+ }, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
47
+ recreate(): void;
48
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<MarkerOptions>>>, {
49
+ position: any;
50
+ zIndex?: any;
51
+ title?: any;
52
+ icon?: any;
53
+ clickable?: any;
54
+ draggable?: any;
55
+ crossOnDrag?: any;
56
+ cursor?: any;
57
+ visible?: any;
58
+ }>;
59
+ export type TgMarkerInstanceType = InstanceType<typeof TgMarker>;
60
+ export default _sfc_main;
@@ -0,0 +1,20 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import type { PolygonOptions, PolygonOverlay } from '../../map/map/overlay/polygon';
4
+ import { type Props } from '../../utils/vue-utils';
5
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<PolygonOptions>, {
6
+ polygon: PolygonOverlay;
7
+ }, unknown, {}, {}, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
8
+ recreate(): void;
9
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<PolygonOptions>>>, {
10
+ clickable?: any;
11
+ visible?: any;
12
+ fillColor?: any;
13
+ fillOpacity?: any;
14
+ editable?: any;
15
+ strokeColor?: any;
16
+ strokeOpacity?: any;
17
+ strokeWeight?: any;
18
+ paths: any;
19
+ }>;
20
+ export default _sfc_main;
@@ -0,0 +1,18 @@
1
+ /// <reference path="../map-mixin.d.ts" />
2
+ /// <reference types="@/global" />
3
+ import { type Props } from '../../utils/vue-utils';
4
+ import type { PolylineOptions, PolylineOverlay } from '../../map/map/overlay/polyline';
5
+ declare const _sfc_main: import('./@vue/compat').DefineComponent<Props<PolylineOptions>, {
6
+ polyline: PolylineOverlay;
7
+ }, unknown, {}, {}, import('./@vue/compat').DefineComponent<{}, {}, {}, {}, {
8
+ recreate(): void;
9
+ }, import('./@vue/compat').ComponentOptionsMixin, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<{}>>, {}>, import('./@vue/compat').ComponentOptionsMixin, {}, string, import('./@vue/compat').VNodeProps & import('./@vue/compat').AllowedComponentProps & import('./@vue/compat').ComponentCustomProps, Readonly<import('./@vue/compat').ExtractPropTypes<Props<PolylineOptions>>>, {
10
+ clickable?: any;
11
+ visible?: any;
12
+ editable?: any;
13
+ strokeColor?: any;
14
+ strokeOpacity?: any;
15
+ strokeWeight?: any;
16
+ path: any;
17
+ }>;
18
+ export default _sfc_main;