qy-vue-plugins 1.0.2-beta → 1.0.2

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 (246) hide show
  1. package/dist/apply-element-plus-theme.cjs +1 -0
  2. package/dist/apply-element-plus-theme.mjs +22 -0
  3. package/dist/beijihua-map-icon/hiper-map-icon-1.png +0 -0
  4. package/dist/beijihua-map-icon/hiper-map-icon-10.png +0 -0
  5. package/dist/beijihua-map-icon/hiper-map-icon-11.png +0 -0
  6. package/dist/beijihua-map-icon/hiper-map-icon-12.png +0 -0
  7. package/dist/beijihua-map-icon/hiper-map-icon-13.png +0 -0
  8. package/dist/beijihua-map-icon/hiper-map-icon-14.png +0 -0
  9. package/dist/beijihua-map-icon/hiper-map-icon-15.png +0 -0
  10. package/dist/beijihua-map-icon/hiper-map-icon-16.png +0 -0
  11. package/dist/beijihua-map-icon/hiper-map-icon-17.png +0 -0
  12. package/dist/beijihua-map-icon/hiper-map-icon-18.png +0 -0
  13. package/dist/beijihua-map-icon/hiper-map-icon-19.png +0 -0
  14. package/dist/beijihua-map-icon/hiper-map-icon-2.png +0 -0
  15. package/dist/beijihua-map-icon/hiper-map-icon-20.png +0 -0
  16. package/dist/beijihua-map-icon/hiper-map-icon-21.png +0 -0
  17. package/dist/beijihua-map-icon/hiper-map-icon-22.png +0 -0
  18. package/dist/beijihua-map-icon/hiper-map-icon-23.png +0 -0
  19. package/dist/beijihua-map-icon/hiper-map-icon-24.png +0 -0
  20. package/dist/beijihua-map-icon/hiper-map-icon-25.png +0 -0
  21. package/dist/beijihua-map-icon/hiper-map-icon-26.png +0 -0
  22. package/dist/beijihua-map-icon/hiper-map-icon-27.png +0 -0
  23. package/dist/beijihua-map-icon/hiper-map-icon-28.png +0 -0
  24. package/dist/beijihua-map-icon/hiper-map-icon-29.png +0 -0
  25. package/dist/beijihua-map-icon/hiper-map-icon-3.png +0 -0
  26. package/dist/beijihua-map-icon/hiper-map-icon-30.png +0 -0
  27. package/dist/beijihua-map-icon/hiper-map-icon-31.png +0 -0
  28. package/dist/beijihua-map-icon/hiper-map-icon-32.png +0 -0
  29. package/dist/beijihua-map-icon/hiper-map-icon-33.png +0 -0
  30. package/dist/beijihua-map-icon/hiper-map-icon-34.png +0 -0
  31. package/dist/beijihua-map-icon/hiper-map-icon-35.png +0 -0
  32. package/dist/beijihua-map-icon/hiper-map-icon-36.png +0 -0
  33. package/dist/beijihua-map-icon/hiper-map-icon-37.png +0 -0
  34. package/dist/beijihua-map-icon/hiper-map-icon-38.png +0 -0
  35. package/dist/beijihua-map-icon/hiper-map-icon-39.png +0 -0
  36. package/dist/beijihua-map-icon/hiper-map-icon-4.png +0 -0
  37. package/dist/beijihua-map-icon/hiper-map-icon-40.png +0 -0
  38. package/dist/beijihua-map-icon/hiper-map-icon-41.png +0 -0
  39. package/dist/beijihua-map-icon/hiper-map-icon-42.png +0 -0
  40. package/dist/beijihua-map-icon/hiper-map-icon-43.png +0 -0
  41. package/dist/beijihua-map-icon/hiper-map-icon-44.png +0 -0
  42. package/dist/beijihua-map-icon/hiper-map-icon-45.png +0 -0
  43. package/dist/beijihua-map-icon/hiper-map-icon-46.png +0 -0
  44. package/dist/beijihua-map-icon/hiper-map-icon-47.png +0 -0
  45. package/dist/beijihua-map-icon/hiper-map-icon-48.png +0 -0
  46. package/dist/beijihua-map-icon/hiper-map-icon-49.png +0 -0
  47. package/dist/beijihua-map-icon/hiper-map-icon-5.png +0 -0
  48. package/dist/beijihua-map-icon/hiper-map-icon-50.png +0 -0
  49. package/dist/beijihua-map-icon/hiper-map-icon-51.png +0 -0
  50. package/dist/beijihua-map-icon/hiper-map-icon-52.png +0 -0
  51. package/dist/beijihua-map-icon/hiper-map-icon-53.png +0 -0
  52. package/dist/beijihua-map-icon/hiper-map-icon-54.png +0 -0
  53. package/dist/beijihua-map-icon/hiper-map-icon-55.png +0 -0
  54. package/dist/beijihua-map-icon/hiper-map-icon-56.png +0 -0
  55. package/dist/beijihua-map-icon/hiper-map-icon-57.png +0 -0
  56. package/dist/beijihua-map-icon/hiper-map-icon-58.png +0 -0
  57. package/dist/beijihua-map-icon/hiper-map-icon-59.png +0 -0
  58. package/dist/beijihua-map-icon/hiper-map-icon-6.png +0 -0
  59. package/dist/beijihua-map-icon/hiper-map-icon-60.png +0 -0
  60. package/dist/beijihua-map-icon/hiper-map-icon-61.png +0 -0
  61. package/dist/beijihua-map-icon/hiper-map-icon-62.png +0 -0
  62. package/dist/beijihua-map-icon/hiper-map-icon-63.png +0 -0
  63. package/dist/beijihua-map-icon/hiper-map-icon-64.png +0 -0
  64. package/dist/beijihua-map-icon/hiper-map-icon-65.png +0 -0
  65. package/dist/beijihua-map-icon/hiper-map-icon-7.png +0 -0
  66. package/dist/beijihua-map-icon/hiper-map-icon-8.png +0 -0
  67. package/dist/beijihua-map-icon/hiper-map-icon-9.png +0 -0
  68. package/dist/chunks/{EventKeys-1aL9cgT0.js → EventKeys-DZ_Hahro.js} +4 -4
  69. package/dist/chunks/{MapTools.vue_vue_type_style_index_0_lang-C3__NQXN.js → MapTools.vue_vue_type_style_index_0_lang-C0C9opKY.js} +1 -1
  70. package/dist/chunks/{MapTools.vue_vue_type_style_index_0_lang-BJi8BdV8.js → MapTools.vue_vue_type_style_index_0_lang-CZ_dEmHg.js} +2 -2
  71. package/dist/chunks/{ReplaceSpeciesNameDialog.vue_vue_type_script_setup_true_lang-C8wD6gZS.js → ReplaceSpeciesNameDialog.vue_vue_type_script_setup_true_lang-CjJ3e53H.js} +12 -13
  72. package/dist/chunks/ReplaceSpeciesNameDialog.vue_vue_type_script_setup_true_lang-m9hkScAC.js +1 -0
  73. package/dist/chunks/apply-element-plus-theme-DdN9KOhk.js +1 -0
  74. package/dist/chunks/apply-element-plus-theme-UHVxP4VN.js +22 -0
  75. package/dist/chunks/aria-B5rZ0WFy.js +5 -0
  76. package/dist/chunks/aria-BEkkcjlH.js +115 -0
  77. package/dist/chunks/constant-Bq4ASE9Q.js +1 -0
  78. package/dist/chunks/{constant-BqK1UnfT.js → constant-E83OJqPQ.js} +17 -36
  79. package/dist/chunks/debounce-CHS-N31c.js +1 -0
  80. package/dist/chunks/debounce-DBq5TVsN.js +55 -0
  81. package/dist/chunks/{el-loading-CBXyo6la.js → directive-C-4KkhaM.js} +2 -2
  82. package/dist/chunks/directive-DRO4tFsQ.js +1 -0
  83. package/dist/chunks/index-03UF6hCZ.js +14 -0
  84. package/dist/chunks/index-B6SD5IcP.js +1 -0
  85. package/dist/chunks/{index-DHO_7w-5.js → index-BCQYbM-I.js} +22 -22
  86. package/dist/chunks/{el-input-DCpRXscw.js → index-BdloQTv1.js} +171 -175
  87. package/dist/chunks/{el-overlay-BJQjrf5W.js → index-BeskO4C8.js} +76 -75
  88. package/dist/chunks/index-BoFuR9-k.js +2 -0
  89. package/dist/chunks/index-Bs9zhLlD.js +1 -0
  90. package/dist/chunks/index-C-WIOEu8.js +1 -0
  91. package/dist/chunks/index-CD-vLVPt.js +1 -0
  92. package/dist/chunks/index-CD4bijv7.js +1 -0
  93. package/dist/chunks/index-CHRyd-8X.js +1 -0
  94. package/dist/chunks/{el-button-Dh7ROB0R.js → index-CgKiWbxR.js} +110 -117
  95. package/dist/chunks/{el-popper-zUql4Vp-.js → index-Cv_K9rbv.js} +47 -46
  96. package/dist/chunks/{el-select-Dil0JEvg.js → index-Cyrc4mj-.js} +467 -492
  97. package/dist/chunks/index-DLBjU25P.js +3 -0
  98. package/dist/chunks/index-DgwQEHlD.js +12 -0
  99. package/dist/chunks/index-LWCtnbZP.js +13 -0
  100. package/dist/chunks/index-OtE8c8y9.js +1 -0
  101. package/dist/chunks/index-Qzqd5jTh.js +1 -0
  102. package/dist/chunks/index-VbRYJz2E.js +1 -0
  103. package/dist/chunks/index-YiSmXvH8.js +975 -0
  104. package/dist/chunks/{index-Dq3Y5qiS.js → index-_At9ftZd.js} +35 -35
  105. package/dist/chunks/{index-Cw_w6CLf.js → index-ieQ_IULW.js} +11 -11
  106. package/dist/chunks/{el-form-item-CXLLocXw.js → index-mDs-Bipv.js} +151 -150
  107. package/dist/chunks/mapSetting-B1a88k-v.js +635 -0
  108. package/dist/chunks/mapSetting-Ba76lOJd.js +1 -0
  109. package/dist/chunks/{base-DfCoKyyG.js → style-COMeMpO8.js} +81 -80
  110. package/dist/chunks/{base-DK_JFP90.js → style-DiDWGUIe.js} +1 -1
  111. package/dist/chunks/toNumber-CCcOx5KD.js +1 -0
  112. package/dist/chunks/toNumber-CDwzVyqL.js +30 -0
  113. package/dist/chunks/use-form-common-props-BQtZKazE.js +66 -0
  114. package/dist/chunks/use-form-common-props-SdGVhyVk.js +1 -0
  115. package/dist/chunks/{use-global-config-DXAWJFeA.js → use-global-config-Ba3i7fKX.js} +18 -17
  116. package/dist/chunks/use-global-config-PaSl-b_9.js +1 -0
  117. package/dist/chunks/utils-BJ8Lu8TY.js +516 -0
  118. package/dist/chunks/utils-CrwGKkIz.js +1 -0
  119. package/dist/chunks/vnode-CvqQoLhR.js +1 -0
  120. package/dist/chunks/vnode-DpjFDm4v.js +70 -0
  121. package/dist/element-plus-style.cjs +1 -0
  122. package/dist/element-plus-style.mjs +1 -0
  123. package/dist/index.cjs +1 -1
  124. package/dist/index.mjs +13 -10
  125. package/dist/manageTable/ReplaceSpeciesNameDialog.cjs +1 -1
  126. package/dist/manageTable/ReplaceSpeciesNameDialog.mjs +1 -1
  127. package/dist/manageTable/index.cjs +1 -1
  128. package/dist/manageTable/index.mjs +10 -8
  129. package/dist/manageTable/manageTable.cjs +1 -1
  130. package/dist/manageTable/manageTable.mjs +1 -1
  131. package/dist/mapbox/components/VideoDialog.cjs +1 -1
  132. package/dist/mapbox/components/VideoDialog.mjs +16 -17
  133. package/dist/mapbox/widgets/LayerAttributeDialog.cjs +1 -1
  134. package/dist/mapbox/widgets/LayerAttributeDialog.mjs +30 -31
  135. package/dist/mapbox.cjs +1 -1
  136. package/dist/mapbox.mjs +22 -20
  137. package/dist/mapboxV2/MapView.cjs +1 -1
  138. package/dist/mapboxV2/MapView.mjs +3728 -1256
  139. package/dist/mapboxV2/components/MapLegend.cjs +1 -1
  140. package/dist/mapboxV2/components/MapLegend.mjs +51 -167
  141. package/dist/mapboxV2/components/MapTools.cjs +1 -1
  142. package/dist/mapboxV2/components/MapTools.mjs +1 -1
  143. package/dist/mapboxV2/components/VideoDialog.cjs +1 -1
  144. package/dist/mapboxV2/components/VideoDialog.mjs +12 -13
  145. package/dist/mapboxV2/components/mapSetting.cjs +1 -1
  146. package/dist/mapboxV2/components/mapSetting.mjs +1 -1
  147. package/dist/mapboxV2/components/mapTopic.cjs +1 -1
  148. package/dist/mapboxV2/components/mapTopic.mjs +349 -446
  149. package/dist/mapboxV2/constant.cjs +1 -1
  150. package/dist/mapboxV2/constant.mjs +13 -17
  151. package/dist/mapboxV2/useTif.cjs +1 -1
  152. package/dist/mapboxV2/useTif.mjs +86 -86
  153. package/dist/mapboxV2/utils.cjs +1 -1
  154. package/dist/mapboxV2/utils.mjs +362 -279
  155. package/dist/mapboxV2/widgets/CustomShapeDialog.cjs +1 -1
  156. package/dist/mapboxV2/widgets/CustomShapeDialog.mjs +87 -67
  157. package/dist/mapboxV2/widgets/IconPicker.cjs +1 -1
  158. package/dist/mapboxV2/widgets/IconPicker.mjs +59 -48
  159. package/dist/mapboxV2/widgets/LayerAttributeDialog.cjs +1 -1
  160. package/dist/mapboxV2/widgets/LayerAttributeDialog.mjs +17 -18
  161. package/dist/mapboxV2/widgets/LayerDialog.cjs +1 -1
  162. package/dist/mapboxV2/widgets/LayerDialog.mjs +94 -86
  163. package/dist/mapboxV2/widgets/LegendDialogLine.cjs +1 -1
  164. package/dist/mapboxV2/widgets/LegendDialogLine.mjs +95 -90
  165. package/dist/mapboxV2/widgets/LegendDialogPoint.cjs +1 -1
  166. package/dist/mapboxV2/widgets/LegendDialogPoint.mjs +90 -85
  167. package/dist/mapboxV2/widgets/LegendLine.cjs +1 -1
  168. package/dist/mapboxV2/widgets/LegendLine.mjs +28 -61
  169. package/dist/mapboxV2/widgets/LegendPoint.cjs +1 -1
  170. package/dist/mapboxV2/widgets/LegendPoint.mjs +52 -66
  171. package/dist/mapboxV2/widgets/LegendPopInterestPoint.cjs +1 -1
  172. package/dist/mapboxV2/widgets/LegendPopInterestPoint.mjs +16 -18
  173. package/dist/mapboxV2/widgets/LegendPopLine.cjs +1 -1
  174. package/dist/mapboxV2/widgets/LegendPopLine.mjs +72 -73
  175. package/dist/mapboxV2/widgets/LegendPopPoint.cjs +1 -1
  176. package/dist/mapboxV2/widgets/LegendPopPoint.mjs +113 -112
  177. package/dist/mapboxV2/widgets/LegendShape.cjs +1 -1
  178. package/dist/mapboxV2/widgets/LegendShape.mjs +17 -14
  179. package/dist/mapboxV2/widgets/LegendSymbol.cjs +1 -1
  180. package/dist/mapboxV2/widgets/LegendSymbol.mjs +5 -5
  181. package/dist/mapboxV2/widgets/ShapeDialog.cjs +1 -1
  182. package/dist/mapboxV2/widgets/ShapeDialog.mjs +1663 -1422
  183. package/dist/mapboxV2/widgets/TopicItemPop.cjs +1 -1
  184. package/dist/mapboxV2/widgets/TopicItemPop.mjs +2 -2
  185. package/dist/mapboxV2/widgets/TopicPop.mjs +1 -1
  186. package/dist/mapboxV2.cjs +3 -3
  187. package/dist/mapboxV2.mjs +673 -824
  188. package/dist/qy-vue-plugins.css +1 -1
  189. package/dist/types/apply-element-plus-theme.d.ts +1 -0
  190. package/dist/types/element-plus-style.d.ts +0 -0
  191. package/dist/types/manageTable/manageTable.vue.d.ts +2 -2
  192. package/dist/types/mapboxV2/MapView.vue.d.ts +130 -3
  193. package/dist/types/mapboxV2/components/mapTopic.vue.d.ts +10 -591
  194. package/dist/types/mapboxV2/types/map-layer.d.ts +185 -3
  195. package/dist/types/mapboxV2/useTif.d.ts +2 -2
  196. package/dist/types/mapboxV2/utils/geojsonRenderer.d.ts +123 -0
  197. package/dist/types/mapboxV2/utils.d.ts +5 -0
  198. package/dist/types/mapboxV2/widgets/IconPicker.vue.d.ts +8 -10
  199. package/dist/types/mapboxV2/widgets/index.d.ts +3 -0
  200. package/dist/types/mapboxV2/widgets/track/TrackImageDialog.vue.d.ts +11 -0
  201. package/dist/types/mapboxV2/widgets/track/TrackTextDialog.vue.d.ts +11 -0
  202. package/dist/types/mapboxV2/widgets/track/TrackVoiceDialog.vue.d.ts +11 -0
  203. package/dist/types/mapboxV2/widgets/track/index.d.ts +3 -0
  204. package/dist/types/store/mapStore.d.ts +122 -0
  205. package/dist/types/types/map.d.ts +111 -7
  206. package/package/apply-element-plus-theme.ts +23 -0
  207. package/package/css/common.scss +33 -0
  208. package/package/css/element-plus-theme.scss +30 -0
  209. package/package/css/map.scss +42 -0
  210. package/package/element-plus-style.ts +48 -0
  211. package/package/manageTable/index.ts +5 -0
  212. package/package/mapbox/index.ts +5 -0
  213. package/package/mapboxV2/constant.ts +4 -12
  214. package/package/mapboxV2/index.ts +5 -0
  215. package/package/mapboxV2/useTif.ts +18 -13
  216. package/package/mapboxV2/utils.ts +303 -143
  217. package/package/mapboxV2/widgets/index.ts +5 -0
  218. package/package/types/map.ts +129 -32
  219. package/package.json +27 -3
  220. package/dist/chunks/ReplaceSpeciesNameDialog.vue_vue_type_script_setup_true_lang-DnYed7Kh.js +0 -1
  221. package/dist/chunks/aria-B-Cm8P6h.js +0 -5
  222. package/dist/chunks/aria-GiGFrmP1.js +0 -175
  223. package/dist/chunks/constant-mXEWtcQf.js +0 -1
  224. package/dist/chunks/el-button-w9UOZkmd.js +0 -3
  225. package/dist/chunks/el-color-picker-panel-BWjyXHBz.js +0 -1
  226. package/dist/chunks/el-color-picker-panel-BfOVWDkH.js +0 -1024
  227. package/dist/chunks/el-form-item-ECXS8pAs.js +0 -12
  228. package/dist/chunks/el-input-tAiZBp5N.js +0 -1
  229. package/dist/chunks/el-loading-BDhLUhme.js +0 -1
  230. package/dist/chunks/el-overlay-BEd31jh6.js +0 -1
  231. package/dist/chunks/el-popper-C6hJmTeX.js +0 -1
  232. package/dist/chunks/el-select-BXP0YqqB.js +0 -1
  233. package/dist/chunks/index-BIPr63lF.js +0 -1
  234. package/dist/chunks/index-BIaoqnN4.js +0 -1
  235. package/dist/chunks/index-D9eecDRK.js +0 -2
  236. package/dist/chunks/mapSetting-BRasGCqk.js +0 -597
  237. package/dist/chunks/mapSetting-CfE-5SCc.js +0 -1
  238. package/dist/chunks/use-global-config-y6gk28OO.js +0 -1
  239. package/dist/chunks/utils-CZxmwfl_.js +0 -1
  240. package/dist/chunks/utils-n1i0zWzc.js +0 -454
  241. package/dist/chunks/vnode-CyTnPoXJ.js +0 -47
  242. package/dist/chunks/vnode-eKMqbqaC.js +0 -1
  243. package/dist/chunks//346/255/243/344/270/211/350/247/222/345/275/242-BRUTHTNe.js +0 -12
  244. package/dist/chunks//346/255/243/344/270/211/350/247/222/345/275/242-CksusXxb.js +0 -28
  245. package/dist/chunks//346/255/243/344/270/211/350/247/222/345/275/242-DchJeGnp.js +0 -1
  246. package/dist/chunks//346/255/243/344/270/211/350/247/222/345/275/242-yXKDlNvO.js +0 -17
@@ -59,7 +59,7 @@ export type SpeciesGroupPointConfigEntity = {
59
59
  * - icon: 图标渲染
60
60
  */
61
61
  renderMode: "color" | "icon" | "hatMap";
62
- /** 点位样式 */
62
+ /** 点位样式(资源 id) */
63
63
  pointStyle: string;
64
64
  /** 点位着色颜色 */
65
65
  pointTintColor?: string;
@@ -77,7 +77,189 @@ export type SpeciesGroupPointConfigEntity = {
77
77
  labelColor: string;
78
78
  /** 标签字体 */
79
79
  labelFont: string;
80
- /** 图标名称(图标模式专用) */
81
- iconImageName?: string;
82
80
  };
81
+ /**
82
+ * 圆形/点配置
83
+ */
84
+ export interface CircleConfig {
85
+ /** 类型:自定义或默认 */
86
+ type: "custom" | "default";
87
+ /** 目标字段(用于条件渲染) */
88
+ key?: string;
89
+ /** 字段值 */
90
+ value?: string;
91
+ /** 渲染方式 */
92
+ renderMode?: "color" | "icon";
93
+ /** 点位样式(资源 id) */
94
+ pointStyle?: string;
95
+ /** 点位颜色 */
96
+ pointTintColor?: string;
97
+ /** 点位大小 */
98
+ pointSize?: number;
99
+ /** 描边颜色 */
100
+ pointStrokeColor?: string;
101
+ /** 描边宽度 */
102
+ pointStrokeWidth?: number;
103
+ /** 缩放级别 */
104
+ zoom?: number;
105
+ /** 圆形类型 */
106
+ circleType?: string;
107
+ /** 圆形颜色 */
108
+ circleColor?: string;
109
+ /** 圆形半径 */
110
+ circleRadius?: number;
111
+ /** 圆形描边宽度 */
112
+ circleStrokeWidth?: number;
113
+ /** 圆形描边颜色 */
114
+ circleStrokeColor?: string;
115
+ /** 图标 URL */
116
+ iconImageUrl?: string;
117
+ }
118
+ /**
119
+ * 线配置
120
+ */
121
+ export interface OutlineConfig {
122
+ /** 类型:自定义或默认 */
123
+ type: "custom" | "default";
124
+ /** 目标字段(用于条件渲染) */
125
+ key?: string;
126
+ /** 字段值 */
127
+ value?: string;
128
+ /** 线颜色 */
129
+ outlineColor?: string;
130
+ /** 线宽度 */
131
+ outlineWidth?: number;
132
+ /** 线样式 */
133
+ lineStyle?: "solid" | "dash" | "dot";
134
+ /** 缩放级别 */
135
+ zoom?: number;
136
+ }
137
+ /**
138
+ * 面配置
139
+ */
140
+ export interface FillColor {
141
+ /** 类型:自定义或默认 */
142
+ type: "custom" | "default";
143
+ /** 目标字段(用于条件渲染) */
144
+ key?: string;
145
+ /** 字段值 */
146
+ value?: string;
147
+ /** 填充颜色 */
148
+ color?: string;
149
+ /** 缩放级别 */
150
+ zoom?: number;
151
+ }
152
+ /**
153
+ * 地图样式配置
154
+ */
155
+ export interface MapStyleConfig {
156
+ /** 面填充配置列表 */
157
+ fillColorList: FillColor[];
158
+ /** 线配置列表 */
159
+ outlineConfigList: OutlineConfig[];
160
+ /** 点配置列表(新字段名) */
161
+ symbolConfigList?: CircleConfig[];
162
+ /** 点配置列表(旧字段名,兼容) */
163
+ circleConfigList?: CircleConfig[];
164
+ /** 面标注配置 */
165
+ fillConfig?: {
166
+ displayLabel: string;
167
+ labelSize: number;
168
+ labelColor: string;
169
+ labelFont: string;
170
+ labelField: string;
171
+ };
172
+ /** 线标注配置 */
173
+ outlineConfig?: {
174
+ displayLabel: string;
175
+ labelSize: number;
176
+ labelColor: string;
177
+ labelFont: string;
178
+ labelField: string;
179
+ };
180
+ /** 点标注配置 */
181
+ symbolConfig?: {
182
+ displayLabel: string;
183
+ labelSize: number;
184
+ labelColor: string;
185
+ labelFont: string;
186
+ labelField: string;
187
+ };
188
+ }
189
+ /**
190
+ * 标注配置
191
+ */
192
+ export interface LabelConfig {
193
+ /** 是否显示标注 */
194
+ showLabel: boolean;
195
+ /** 标注字段 */
196
+ labelField: string;
197
+ /** 字体大小 */
198
+ fontSize: number;
199
+ /** 字体颜色 */
200
+ fontColor: string;
201
+ /** 字体 */
202
+ fontFamily: string;
203
+ }
204
+ /**
205
+ * DBF 数据实体
206
+ */
207
+ export interface DbfDataEntity {
208
+ /** 数据 ID */
209
+ id: string;
210
+ /** 数据内容(JSON 字符串) */
211
+ data: string;
212
+ }
213
+ /**
214
+ * 地理图层实体
215
+ */
216
+ export interface GeographicLayerEntity {
217
+ /** 图层 ID */
218
+ id: string;
219
+ /** 图层名称 */
220
+ layerName?: string;
221
+ /** 图层类型 */
222
+ layerType: string;
223
+ /** 图层形状 */
224
+ layerShapes?: string[];
225
+ /** GeoJSON 数据 */
226
+ geoJSON?: string;
227
+ /** 图层 URL */
228
+ url?: string;
229
+ /** 图层样式配置 */
230
+ layerPaintConfig?: string;
231
+ /** 字段集合 */
232
+ columnSet?: string[];
233
+ }
234
+ /**
235
+ * 地理图层表单实体
236
+ */
237
+ export interface GeographicLayerFormEntity {
238
+ /** 图层 ID */
239
+ id: string;
240
+ /** 图层名称 */
241
+ layerName: string;
242
+ /** 图层类型 */
243
+ layerType: string;
244
+ /** 项目 ID */
245
+ projectId: string;
246
+ }
247
+ /**
248
+ * 点位资源选项(用于图标和形状选择器)
249
+ * 通过 iconList API 获取并标准化
250
+ */
251
+ export interface PointAssetOption {
252
+ /** 资源 ID */
253
+ id: string;
254
+ /** 类型:1 为 SVG,2 为 PNG */
255
+ type: 1 | 2;
256
+ /** 资源路径(完整 URL) */
257
+ path: string;
258
+ /** 文件名(不含路径) */
259
+ fileName: string;
260
+ /** 显示名称 */
261
+ name: string;
262
+ /** 完整 URL(与 path 相同) */
263
+ url: string;
264
+ }
83
265
  export {};
@@ -6,7 +6,7 @@ import { Ref } from 'vue';
6
6
  * @returns 返回包含addTifLayer方法的对象
7
7
  */
8
8
  export declare function useTif(map: Ref<mapboxgl.Map | undefined>): {
9
- addTifLayer: (url: string | File, colorRange?: string[]) => Promise<{
9
+ addTifLayer: (url: string | File, colorRange?: string[], autoFit?: boolean) => Promise<{
10
10
  tifId: string;
11
11
  dataRange: {
12
12
  min: number | null;
@@ -16,6 +16,6 @@ export declare function useTif(map: Ref<mapboxgl.Map | undefined>): {
16
16
  bounds: any[];
17
17
  };
18
18
  }>;
19
- processGeoTIFF: (arrayBuffer: ArrayBuffer, colorRange?: string[], tifId?: string) => Promise<void>;
19
+ processGeoTIFF: (arrayBuffer: ArrayBuffer, colorRange?: string[], tifId?: string, autoFit?: boolean) => Promise<void>;
20
20
  removeTifLayer: (tifId: string) => void;
21
21
  };
@@ -0,0 +1,123 @@
1
+ import { Map as MapboxMap } from 'mapbox-gl';
2
+ import { GeographicLayerEntity } from '../../types/map';
3
+ import { PointAssetOption } from '../types/map-layer';
4
+ type MapInstance = MapboxMap;
5
+ interface FillColor {
6
+ key: string;
7
+ type: "default" | "custom";
8
+ color: string;
9
+ value: string;
10
+ fillOpacityConfig?: {
11
+ value: number;
12
+ };
13
+ }
14
+ interface OutlineConfig {
15
+ type: "default" | "custom";
16
+ key?: string;
17
+ value?: string;
18
+ zoom: number;
19
+ lineStyle: string;
20
+ outlineColor: string;
21
+ outlineWidth: number;
22
+ }
23
+ interface SymbolStyleConfig {
24
+ key: string;
25
+ type: "default" | "custom";
26
+ value: string | null;
27
+ renderMode?: "color" | "icon";
28
+ pointStyle?: string;
29
+ pointTintColor?: string;
30
+ pointSize?: number;
31
+ circleColor?: string;
32
+ circleRadius?: number;
33
+ pointStrokeWidth?: number;
34
+ pointStrokeColor?: string;
35
+ circleStrokeWidth?: number;
36
+ circleStrokeColor?: string;
37
+ }
38
+ type CircleConfig = SymbolStyleConfig;
39
+ interface MapStyleConfig {
40
+ fillColorList: FillColor[];
41
+ outlineConfigList: OutlineConfig[];
42
+ fillOpacityConfig?: {
43
+ value: number;
44
+ };
45
+ symbolConfigList?: CircleConfig[];
46
+ circleConfigList?: CircleConfig[];
47
+ fillConfig?: {
48
+ displayLabel: string;
49
+ labelSize: number;
50
+ labelColor: string;
51
+ labelFont: string;
52
+ labelField: string;
53
+ };
54
+ outlineConfig?: {
55
+ displayLabel: string;
56
+ labelSize: number;
57
+ labelColor: string;
58
+ labelFont: string;
59
+ labelField: string;
60
+ };
61
+ symbolConfig?: {
62
+ displayLabel: string;
63
+ labelSize: number;
64
+ labelColor: string;
65
+ labelFont: string;
66
+ labelField: string;
67
+ };
68
+ }
69
+ /**
70
+ * 解析文本字体栈
71
+ */
72
+ export declare const resolveTextFontStack: (labelFont?: string) => string[];
73
+ /**
74
+ * 从 GeoJSON 中检测包含的几何类型
75
+ */
76
+ export declare const detectGeometryTypes: (geojson: any) => Set<string>;
77
+ /**
78
+ * 规范化 GeoJSON 线几何(去除重复坐标)
79
+ */
80
+ export declare const normalizeGeoJsonLines: (geojson: any) => any;
81
+ /**
82
+ * 为 GeoJSON features 添加虚拟 FID 字段
83
+ */
84
+ export declare const withVirtualFid: (geojson: any) => any;
85
+ /**
86
+ * 加载 SVG 图片到 Mapbox(支持颜色替换)
87
+ */
88
+ export declare const loadSvgImage: (map: MapInstance, url: string, imageId: string, color?: string) => Promise<void>;
89
+ /**
90
+ * 加载 PNG 图标到 Mapbox
91
+ */
92
+ export declare const loadPngIcon: (map: MapInstance, url: string, imageId: string) => Promise<void>;
93
+ /**
94
+ * 渲染填充图层(根据配置匹配颜色)
95
+ */
96
+ export declare const renderFillLayer: (map: MapInstance, sourceId: string, topic: GeographicLayerEntity, config: MapStyleConfig, timestamp: number) => void;
97
+ /**
98
+ * 渲染线图层(根据配置匹配颜色)
99
+ */
100
+ export declare const renderLineLayer: (map: MapInstance, sourceId: string, topic: GeographicLayerEntity, config: MapStyleConfig, timestamp: number) => void;
101
+ /**
102
+ * 渲染点图层(根据配置匹配颜色)
103
+ */
104
+ export declare const renderPointLayer: (map: MapInstance, sourceId: string, topic: GeographicLayerEntity, config: MapStyleConfig, timestamp: number, assetOptions?: {
105
+ shapeOptions?: PointAssetOption[];
106
+ iconOptions?: PointAssetOption[];
107
+ }) => Promise<void>;
108
+ /**
109
+ * 加载 GeoJSON 数据
110
+ */
111
+ export declare const loadGeojsonData: (topic: GeographicLayerEntity) => Promise<any>;
112
+ /**
113
+ * 渲染 GeoJSON 图层的主函数
114
+ */
115
+ export declare const renderGeojsonLayer: (map: MapInstance, topic: GeographicLayerEntity, assetOptions?: {
116
+ shapeOptions?: PointAssetOption[];
117
+ iconOptions?: PointAssetOption[];
118
+ }) => Promise<void>;
119
+ /**
120
+ * 移除 GeoJSON 图层
121
+ */
122
+ export declare const removeGeojsonLayer: (map: MapInstance, topic: GeographicLayerEntity) => void;
123
+ export {};
@@ -1,5 +1,6 @@
1
1
  import { GeographicLayerEntity, LabelConfig, LayerType, LineStyle, MapBoxLayerType, MapStyleConfig } from '../types/map';
2
2
  import { GeoTIFFImage } from 'geotiff';
3
+ import { PointAssetOption } from './types/map-layer';
3
4
  /**
4
5
  * 获取图例线条样式
5
6
  * @param lineStyle 线条样式
@@ -119,3 +120,7 @@ export declare function hexToRgb(hex: string): [number, number, number];
119
120
  * @returns 限制在[min, max]范围内的值
120
121
  */
121
122
  export declare function clamp(value: number, min: number, max: number): number;
123
+ /**
124
+ * 通过 id 从资源列表中查找匹配项
125
+ */
126
+ export declare function resolveAssetById(id: string, options: PointAssetOption[]): PointAssetOption | undefined;
@@ -2,6 +2,10 @@ import { PropType } from 'vue';
2
2
  interface IconItem {
3
3
  fileName: string;
4
4
  name: string;
5
+ url?: string;
6
+ id?: string;
7
+ type?: 1 | 2;
8
+ path?: string;
5
9
  }
6
10
  declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
7
11
  modelValue: {
@@ -30,14 +34,11 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
30
34
  };
31
35
  icons: {
32
36
  type: PropType<IconItem[]>;
33
- default: () => {
34
- fileName: string;
35
- name: string;
36
- }[];
37
+ default: undefined;
37
38
  };
38
39
  iconBaseUrl: {
39
40
  type: StringConstructor;
40
- default: string;
41
+ default: undefined;
41
42
  };
42
43
  }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
43
44
  "update:modelValue": (...args: any[]) => void;
@@ -69,14 +70,11 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
69
70
  };
70
71
  icons: {
71
72
  type: PropType<IconItem[]>;
72
- default: () => {
73
- fileName: string;
74
- name: string;
75
- }[];
73
+ default: undefined;
76
74
  };
77
75
  iconBaseUrl: {
78
76
  type: StringConstructor;
79
- default: string;
77
+ default: undefined;
80
78
  };
81
79
  }>> & Readonly<{
82
80
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
@@ -11,3 +11,6 @@ export { default as LegendPopPoint } from './LegendPopPoint.vue';
11
11
  export { default as LegendPopInterestPoint } from './LegendPopInterestPoint.vue';
12
12
  export { default as LegendShape } from './LegendShape.vue';
13
13
  export { default as LegendSymbol } from './LegendSymbol.vue';
14
+ export { default as TrackImageDialog } from './track/TrackImageDialog.vue';
15
+ export { default as TrackTextDialog } from './track/TrackTextDialog.vue';
16
+ export { default as TrackVoiceDialog } from './track/TrackVoiceDialog.vue';
@@ -0,0 +1,11 @@
1
+ import { ImageItem } from '../../../types/map';
2
+ type __VLS_Props = {
3
+ modelValue: boolean;
4
+ imageList: ImageItem[];
5
+ };
6
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
7
+ "update:modelValue": (value: boolean) => any;
8
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
9
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
10
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
11
+ export default _default;
@@ -0,0 +1,11 @@
1
+ import { TrackText } from '../../../types/map';
2
+ type __VLS_Props = {
3
+ modelValue: boolean;
4
+ textItem: TrackText | null;
5
+ };
6
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
7
+ "update:modelValue": (value: boolean) => any;
8
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
9
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
10
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
11
+ export default _default;
@@ -0,0 +1,11 @@
1
+ import { VoiceItem } from '../../../types/map';
2
+ type __VLS_Props = {
3
+ modelValue: boolean;
4
+ voiceList: VoiceItem[];
5
+ };
6
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
7
+ "update:modelValue": (value: boolean) => any;
8
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
9
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
10
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
11
+ export default _default;
@@ -0,0 +1,3 @@
1
+ export { default as TrackImageDialog } from './TrackImageDialog.vue';
2
+ export { default as TrackTextDialog } from './TrackTextDialog.vue';
3
+ export { default as TrackVoiceDialog } from './TrackVoiceDialog.vue';
@@ -50,6 +50,67 @@ export declare const useMapStore: import('pinia').StoreDefinition<"yq-map", MapS
50
50
  children?: any[] | undefined;
51
51
  layerShapes?: string | null | undefined;
52
52
  subCount?: number | null | undefined;
53
+ speciesGroupWhere?: Record<string, any> | undefined;
54
+ dbfUrl?: string | null | undefined;
55
+ media?: {
56
+ images?: {
57
+ text: string;
58
+ id: string;
59
+ altitude: string;
60
+ longitude: string;
61
+ latitude: string;
62
+ imageList: string;
63
+ voiceList: string;
64
+ createDate: number;
65
+ editDate: number;
66
+ trackLineId: string;
67
+ type: "image";
68
+ title: string;
69
+ remark: string;
70
+ accuracy: string;
71
+ speed: string;
72
+ isLocalDelete: number;
73
+ syncDate: number;
74
+ }[] | undefined;
75
+ texts?: {
76
+ text: string;
77
+ id: string;
78
+ altitude: string;
79
+ longitude: string;
80
+ latitude: string;
81
+ imageList: string;
82
+ voiceList: string;
83
+ createDate: number;
84
+ editDate: number;
85
+ trackLineId: string;
86
+ type: "text";
87
+ title: string;
88
+ remark: string;
89
+ accuracy: string;
90
+ speed: string;
91
+ isLocalDelete: number;
92
+ syncDate: number;
93
+ }[] | undefined;
94
+ voices?: {
95
+ text: string;
96
+ id: string;
97
+ altitude: string;
98
+ longitude: string;
99
+ latitude: string;
100
+ imageList: string;
101
+ voiceList: string;
102
+ createDate: number;
103
+ editDate: number;
104
+ trackLineId: string;
105
+ type: "voice";
106
+ title: string;
107
+ remark: string | null;
108
+ accuracy: string | null;
109
+ speed: string | null;
110
+ isLocalDelete: number;
111
+ syncDate: number;
112
+ }[] | undefined;
113
+ } | undefined;
53
114
  }[];
54
115
  dialogConfig: {
55
116
  center: boolean;
@@ -113,6 +174,67 @@ export declare const useMapStore: import('pinia').StoreDefinition<"yq-map", MapS
113
174
  children?: any[] | undefined;
114
175
  layerShapes?: string | null | undefined;
115
176
  subCount?: number | null | undefined;
177
+ speciesGroupWhere?: Record<string, any> | undefined;
178
+ dbfUrl?: string | null | undefined;
179
+ media?: {
180
+ images?: {
181
+ text: string;
182
+ id: string;
183
+ altitude: string;
184
+ longitude: string;
185
+ latitude: string;
186
+ imageList: string;
187
+ voiceList: string;
188
+ createDate: number;
189
+ editDate: number;
190
+ trackLineId: string;
191
+ type: "image";
192
+ title: string;
193
+ remark: string;
194
+ accuracy: string;
195
+ speed: string;
196
+ isLocalDelete: number;
197
+ syncDate: number;
198
+ }[] | undefined;
199
+ texts?: {
200
+ text: string;
201
+ id: string;
202
+ altitude: string;
203
+ longitude: string;
204
+ latitude: string;
205
+ imageList: string;
206
+ voiceList: string;
207
+ createDate: number;
208
+ editDate: number;
209
+ trackLineId: string;
210
+ type: "text";
211
+ title: string;
212
+ remark: string;
213
+ accuracy: string;
214
+ speed: string;
215
+ isLocalDelete: number;
216
+ syncDate: number;
217
+ }[] | undefined;
218
+ voices?: {
219
+ text: string;
220
+ id: string;
221
+ altitude: string;
222
+ longitude: string;
223
+ latitude: string;
224
+ imageList: string;
225
+ voiceList: string;
226
+ createDate: number;
227
+ editDate: number;
228
+ trackLineId: string;
229
+ type: "voice";
230
+ title: string;
231
+ remark: string | null;
232
+ accuracy: string | null;
233
+ speed: string | null;
234
+ isLocalDelete: number;
235
+ syncDate: number;
236
+ }[] | undefined;
237
+ } | undefined;
116
238
  }[];
117
239
  dialogConfig: {
118
240
  center: boolean;