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
@@ -45,6 +45,104 @@ export interface ResearchCommonEntry {
45
45
  longitudeStart?: string;
46
46
  latitudeStart?: string;
47
47
  }
48
+ /**
49
+ * GeographicLayerEntity 地理专题图层实体
50
+ */
51
+ /**
52
+ * 轨迹图片信息
53
+ */
54
+ export interface TrackImage {
55
+ text: string;
56
+ id: string;
57
+ altitude: string;
58
+ longitude: string;
59
+ latitude: string;
60
+ imageList: string;
61
+ voiceList: string;
62
+ createDate: number;
63
+ editDate: number;
64
+ trackLineId: string;
65
+ type: "image";
66
+ title: string;
67
+ remark: string;
68
+ accuracy: string;
69
+ speed: string;
70
+ isLocalDelete: number;
71
+ syncDate: number;
72
+ }
73
+ /**
74
+ * 轨迹文本信息
75
+ */
76
+ export interface TrackText {
77
+ text: string;
78
+ id: string;
79
+ altitude: string;
80
+ longitude: string;
81
+ latitude: string;
82
+ imageList: string;
83
+ voiceList: string;
84
+ createDate: number;
85
+ editDate: number;
86
+ trackLineId: string;
87
+ type: "text";
88
+ title: string;
89
+ remark: string;
90
+ accuracy: string;
91
+ speed: string;
92
+ isLocalDelete: number;
93
+ syncDate: number;
94
+ }
95
+ /**
96
+ * 轨迹音频信息
97
+ */
98
+ export interface TrackVoice {
99
+ text: string;
100
+ id: string;
101
+ altitude: string;
102
+ longitude: string;
103
+ latitude: string;
104
+ imageList: string;
105
+ voiceList: string;
106
+ createDate: number;
107
+ editDate: number;
108
+ trackLineId: string;
109
+ type: "voice";
110
+ title: string;
111
+ remark: string | null;
112
+ accuracy: string | null;
113
+ speed: string | null;
114
+ isLocalDelete: number;
115
+ syncDate: number;
116
+ }
117
+ /**
118
+ * 图片项
119
+ */
120
+ export interface ImageItem {
121
+ imagePath: string;
122
+ id: string;
123
+ url: string;
124
+ title: string | null;
125
+ remark: string | null;
126
+ size: string | null;
127
+ disabled: string | null;
128
+ }
129
+ /**
130
+ * 音频项
131
+ */
132
+ export interface VoiceItem {
133
+ id: string;
134
+ url: string;
135
+ title?: string;
136
+ duration?: number;
137
+ }
138
+ /**
139
+ * 轨迹媒体信息
140
+ */
141
+ export interface TrackMedia {
142
+ images?: TrackImage[];
143
+ texts?: TrackText[];
144
+ voices?: TrackVoice[];
145
+ }
48
146
  /**
49
147
  * GeographicLayerEntity 地理专题图层实体
50
148
  */
@@ -94,6 +192,12 @@ export interface GeographicLayerEntity {
94
192
  children?: any[];
95
193
  layerShapes?: string | null;
96
194
  subCount?: number | null;
195
+ speciesGroupWhere?: Record<string, any>;
196
+ dbfUrl?: string | null;
197
+ /**
198
+ * 轨迹媒体信息(仅 track 类型使用)
199
+ */
200
+ media?: TrackMedia;
97
201
  }
98
202
  /**
99
203
  * GeographicLayerEntity 地理专题图层实体
@@ -188,14 +292,14 @@ export interface LineSettings {
188
292
  /** 点标签颜色(用于表单显示) */
189
293
  pointLabelColor?: string;
190
294
  }
191
- export type LayerType = "species-group" | "point" | "line" | "symbol" | "shape" | "topic" | "map-layer" | "sample-group" | "track" | "interest-point" | "shp" | "geojson";
295
+ export type LayerType = "species-group" | "point" | "line" | "symbol" | "shape" | "topic" | "map-layer" | "sample-group" | "track" | "interest-point" | "shp" | "geojson" | "tif" | "kml" | "kmz";
192
296
  export interface FillColor {
193
297
  key: string;
194
- rgb: string;
195
298
  type: "default" | "custom";
196
299
  color: string;
197
300
  value: string;
198
- opacity: number;
301
+ rgb?: string;
302
+ opacity?: number;
199
303
  }
200
304
  export interface CircleBaseConfig {
201
305
  circleType: "icon";
@@ -212,9 +316,9 @@ export interface CircleConfig {
212
316
  circleColor: string;
213
317
  circleRadius: number;
214
318
  iconImageUrl?: string;
215
- circleOpacity: number;
216
319
  circleStrokeColor?: string;
217
320
  circleStrokeWidth?: number;
321
+ circleOpacity?: number;
218
322
  circleStrokeOpacity?: number;
219
323
  /**
220
324
  * 渲染方式
@@ -224,7 +328,7 @@ export interface CircleConfig {
224
328
  renderMode?: "color" | "icon";
225
329
  /** 点位样式 */
226
330
  pointStyle?: string;
227
- /** 点位着色颜色 */
331
+ /** 点位着色颜色 - rgba 格式 */
228
332
  pointTintColor?: string;
229
333
  /** 点位尺寸 */
230
334
  pointSize?: number;
@@ -247,7 +351,7 @@ export interface OutlineConfig {
247
351
  lineStyle: LineStyle;
248
352
  outlineColor: string;
249
353
  outlineWidth: number;
250
- outlineOpacity: number;
354
+ outlineOpacity?: number;
251
355
  }
252
356
  export interface AntiAliasingConfig {
253
357
  value: boolean;
@@ -311,7 +415,7 @@ export interface CustomLayerConfig {
311
415
  lineWidth: number;
312
416
  textColor: string;
313
417
  targetScreen: "normal";
314
- defaultChecked: boolean;
418
+ defaultChecked: number | boolean;
315
419
  synchronizeApp: boolean;
316
420
  lineStyle: LineStyle;
317
421
  remark?: string;
@@ -0,0 +1,23 @@
1
+ const elementPlusThemeVars = {
2
+ "--el-color-primary": "#34c28a",
3
+ "--el-color-primary-rgb": "52, 194, 138",
4
+ "--el-color-primary-light-3": "#71d4ad",
5
+ "--el-color-primary-light-5": "#9ae1c5",
6
+ "--el-color-primary-light-7": "#c2eddc",
7
+ "--el-color-primary-light-8": "#d6f3e8",
8
+ "--el-color-primary-light-9": "#ebf9f3",
9
+ "--el-color-primary-dark-2": "#2a9b6e",
10
+ };
11
+
12
+ export function applyElementPlusTheme() {
13
+ if (typeof document === "undefined") {
14
+ return;
15
+ }
16
+
17
+ const rootStyle = document.documentElement.style;
18
+ Object.entries(elementPlusThemeVars).forEach(([name, value]) => {
19
+ rootStyle.setProperty(name, value);
20
+ });
21
+ }
22
+
23
+ applyElementPlusTheme();
@@ -0,0 +1,33 @@
1
+ .qy-flex-col {
2
+ display: flex;
3
+ flex-direction: column;
4
+ }
5
+ .qy-flex-row {
6
+ display: flex;
7
+ flex-direction: row;
8
+ }
9
+ .qy-flex-center {
10
+ display: flex;
11
+ justify-content: center;
12
+ align-items: center;
13
+ }
14
+
15
+ .qy-flex-justify {
16
+ display: flex;
17
+ justify-content: center;
18
+ }
19
+ .qy-flex-align {
20
+ display: flex;
21
+ align-items: center;
22
+ }
23
+
24
+ .qy-flex-between {
25
+ display: flex;
26
+ justify-content: space-between;
27
+ align-items: center;
28
+ }
29
+
30
+ .qy-flex-align-end {
31
+ display: flex;
32
+ justify-content: flex-end;
33
+ }
@@ -0,0 +1,30 @@
1
+ :root {
2
+ --el-color-primary: #34c28a;
3
+ --el-color-primary-rgb: 52, 194, 138;
4
+ --el-color-primary-light-3: #71d4ad;
5
+ --el-color-primary-light-5: #9ae1c5;
6
+ --el-color-primary-light-7: #c2eddc;
7
+ --el-color-primary-light-8: #d6f3e8;
8
+ --el-color-primary-light-9: #ebf9f3;
9
+ --el-color-primary-dark-2: #2a9b6e;
10
+ }
11
+
12
+ .el-button--primary {
13
+ --el-button-bg-color: var(--el-color-primary);
14
+ --el-button-border-color: var(--el-color-primary);
15
+ --el-button-hover-bg-color: var(--el-color-primary-light-3);
16
+ --el-button-hover-border-color: var(--el-color-primary-light-3);
17
+ --el-button-active-bg-color: var(--el-color-primary-dark-2);
18
+ --el-button-active-border-color: var(--el-color-primary-dark-2);
19
+ --el-button-outline-color: var(--el-color-primary-light-5);
20
+ }
21
+
22
+ .el-button--primary.is-plain {
23
+ --el-button-bg-color: var(--el-color-primary-light-9);
24
+ --el-button-border-color: var(--el-color-primary-light-5);
25
+ --el-button-text-color: var(--el-color-primary);
26
+ --el-button-hover-bg-color: var(--el-color-primary);
27
+ --el-button-hover-border-color: var(--el-color-primary);
28
+ --el-button-active-bg-color: var(--el-color-primary-dark-2);
29
+ --el-button-active-border-color: var(--el-color-primary-dark-2);
30
+ }
@@ -0,0 +1,42 @@
1
+ .research-location-icon-el {
2
+ width: 32px;
3
+ height: 32px;
4
+ .research-location-img-el {
5
+ width: 100%;
6
+ height: auto;
7
+ }
8
+ }
9
+
10
+ .research-location-point {
11
+ width: 28px;
12
+ height: 44px;
13
+ display: flex;
14
+ flex-direction: column;
15
+ justify-content: flex-start;
16
+ align-items: center;
17
+
18
+ .research-location-point-content {
19
+ width: 28px;
20
+ height: 28px;
21
+ border-radius: 50%;
22
+ background-color: #fff;
23
+ display: flex;
24
+ justify-content: center;
25
+ align-items: center;
26
+
27
+ .research-location-point-content-inner {
28
+ width: 22px;
29
+ height: 22px;
30
+ background-color: red;
31
+ border-radius: 50%;
32
+ }
33
+ }
34
+
35
+ .research-location-point-line {
36
+ width: 6px;
37
+ height: 16px;
38
+ background-color: #fff;
39
+ border-bottom-left-radius: 3px;
40
+ border-bottom-right-radius: 3px;
41
+ }
42
+ }
@@ -0,0 +1,48 @@
1
+ import "element-plus/es/components/alert/style/css";
2
+ import "element-plus/es/components/autocomplete/style/css";
3
+ import "element-plus/es/components/button/style/css";
4
+ import "element-plus/es/components/carousel/style/css";
5
+ import "element-plus/es/components/carousel-item/style/css";
6
+ import "element-plus/es/components/cascader/style/css";
7
+ import "element-plus/es/components/checkbox/style/css";
8
+ import "element-plus/es/components/checkbox-group/style/css";
9
+ import "element-plus/es/components/col/style/css";
10
+ import "element-plus/es/components/collapse/style/css";
11
+ import "element-plus/es/components/collapse-item/style/css";
12
+ import "element-plus/es/components/color-picker/style/css";
13
+ import "element-plus/es/components/date-picker/style/css";
14
+ import "element-plus/es/components/dialog/style/css";
15
+ import "element-plus/es/components/divider/style/css";
16
+ import "element-plus/es/components/dropdown/style/css";
17
+ import "element-plus/es/components/dropdown-item/style/css";
18
+ import "element-plus/es/components/dropdown-menu/style/css";
19
+ import "element-plus/es/components/empty/style/css";
20
+ import "element-plus/es/components/form/style/css";
21
+ import "element-plus/es/components/form-item/style/css";
22
+ import "element-plus/es/components/icon/style/css";
23
+ import "element-plus/es/components/image/style/css";
24
+ import "element-plus/es/components/input/style/css";
25
+ import "element-plus/es/components/input-number/style/css";
26
+ import "element-plus/es/components/loading/style/css";
27
+ import "element-plus/es/components/message/style/css";
28
+ import "element-plus/es/components/message-box/style/css";
29
+ import "element-plus/es/components/notification/style/css";
30
+ import "element-plus/es/components/option/style/css";
31
+ import "element-plus/es/components/option-group/style/css";
32
+ import "element-plus/es/components/pagination/style/css";
33
+ import "element-plus/es/components/popover/style/css";
34
+ import "element-plus/es/components/radio/style/css";
35
+ import "element-plus/es/components/radio-group/style/css";
36
+ import "element-plus/es/components/scrollbar/style/css";
37
+ import "element-plus/es/components/select/style/css";
38
+ import "element-plus/es/components/slider/style/css";
39
+ import "element-plus/es/components/switch/style/css";
40
+ import "element-plus/es/components/tab-pane/style/css";
41
+ import "element-plus/es/components/table/style/css";
42
+ import "element-plus/es/components/table-column/style/css";
43
+ import "element-plus/es/components/tabs/style/css";
44
+ import "element-plus/es/components/tooltip/style/css";
45
+ import "element-plus/es/components/tree-select/style/css";
46
+ import "element-plus/es/components/upload/style/css";
47
+ import "./css/element-plus-theme.scss";
48
+ import "./apply-element-plus-theme";
@@ -1,7 +1,12 @@
1
+ import "../element-plus-style";
2
+ import { applyElementPlusTheme } from "../apply-element-plus-theme";
3
+
1
4
  import MangerTable from "./manageTable.vue";
2
5
  import imageReview from "./components/imageReview.vue";
3
6
  import { speciesNameQueryKey } from "./ProvideKeys";
4
7
  import { filterEventBus, sortEventBus } from "./EventKeys";
8
+
9
+ applyElementPlusTheme();
5
10
  // 命名导出
6
11
  export { MangerTable, imageReview, speciesNameQueryKey, filterEventBus, sortEventBus };
7
12
 
@@ -1,3 +1,6 @@
1
+ import "../element-plus-style";
2
+ import { applyElementPlusTheme } from "../apply-element-plus-theme";
3
+
1
4
  import MapView from "./MapView.vue";
2
5
  import MapLayer from "./components/mapLayer.vue";
3
6
  import MapTopic from "./components/mapTopic.vue";
@@ -8,6 +11,8 @@ import MapCompass from "./components/mapCompass.vue";
8
11
  import MapTools from "./components/MapTools.vue";
9
12
  import MapLegend from "./components/MapLegend.vue";
10
13
  import { mapStyleChangedBus, locateToLayerCenterKeyBus } from "./EventKeys";
14
+
15
+ applyElementPlusTheme();
11
16
  // Exporting all components and the mapStyleChangedBus for use in other parts of the application
12
17
  // This allows for easy import of all map-related components and functionality
13
18
  // in other modules or components within the application.
@@ -20,8 +20,6 @@ export const fillColorList: FillColor[] = [
20
20
  key: "",
21
21
  value: "",
22
22
  color: DefaultColor,
23
- rgb: "rgba(103, 194, 58)",
24
- opacity: 0.6,
25
23
  },
26
24
  ];
27
25
  export const DefaultLineSettings: LineSettings = {
@@ -34,8 +32,7 @@ export const outlineConfigList: OutlineConfig[] = [
34
32
  {
35
33
  type: "default",
36
34
  outlineColor: "rgba(103, 194, 58, 1)",
37
- outlineOpacity: 1,
38
- outlineWidth: 1,
35
+ outlineWidth: 2, // 改为 2,与 LayerStyleEditDialog 保持一致
39
36
  zoom: 0,
40
37
  lineStyle: "solid", //dash
41
38
  },
@@ -53,8 +50,6 @@ export const circleConfigList: CircleConfig[] = [
53
50
  zoom: 0, //缩放级别
54
51
  circleRadius: 2,
55
52
  circleStrokeWidth: 0,
56
- circleStrokeOpacity: 1,
57
- circleOpacity: 1,
58
53
  },
59
54
  ];
60
55
 
@@ -66,10 +61,8 @@ export const circleBaseConfig: CircleBaseConfig = {
66
61
  };
67
62
 
68
63
  // 点图层默认样式配置
69
- export const defaultPointLayerPaintConfig:
70
- | SpeciesGroupSettings
71
- | PointSettings = {
72
- pointTintColor: "#02d2e0",
64
+ export const defaultPointLayerPaintConfig: SpeciesGroupSettings | PointSettings = {
65
+ pointTintColor: "rgba(103, 194, 58, 0.6)",
73
66
  pointRenderType: "color",
74
67
  };
75
68
 
@@ -88,8 +81,7 @@ export const defaultStyleConfig: MapStyleConfig = {
88
81
  },
89
82
  };
90
83
 
91
- export const mapIconBaseUrl =
92
- "https://shpfile-data-1314977817.cos.ap-guangzhou.myqcloud.com/geojson/beijihua-map-icon/";
84
+ export const mapIconBaseUrl = "https://shpfile-data-1314977817.cos.ap-guangzhou.myqcloud.com/geojson/beijihua-map-icon/";
93
85
 
94
86
  export const mapIconNameList = [
95
87
  {
@@ -1,3 +1,6 @@
1
+ import "../element-plus-style";
2
+ import { applyElementPlusTheme } from "../apply-element-plus-theme";
3
+
1
4
  import MapView from "./MapView.vue";
2
5
  import MapLayer from "./pages/MapLayer.vue";
3
6
  import MapTopic from "./components/mapTopic.vue";
@@ -8,6 +11,8 @@ import MapCompass from "./components/mapCompass.vue";
8
11
  import MapTools from "./components/MapTools.vue";
9
12
  import MapLegend from "./components/MapLegend.vue";
10
13
  import { mapStyleChangedBus, locateToLayerCenterKeyBus } from "./EventKeys";
14
+
15
+ applyElementPlusTheme();
11
16
  // Exporting all components and the mapStyleChangedBus for use in other parts of the application
12
17
  // This allows for easy import of all map-related components and functionality
13
18
  // in other modules or components within the application.
@@ -45,22 +45,23 @@ export function useTif(map: Ref<mapboxgl.Map | undefined>) {
45
45
  *
46
46
  * @param url - TIF数据的URL或File对象
47
47
  * @param colorRange - 可选的颜色范围,默认为黑色到白色的渐变
48
+ * @param autoFit - 是否自动调整地图视图以显示完整图像,默认为false
48
49
  * @returns void
49
50
  */
50
- async function addTifLayer(url: string | File, colorRange: string[] = ["#000000", "#FFFFFF"]) {
51
+ async function addTifLayer(url: string | File, colorRange: string[] = ["#000000", "#FFFFFF"], autoFit: boolean = false) {
51
52
  console.log("Adding TIF layer with URL/File:", url, colorRange);
52
53
  // 生成唯一的图层ID
53
54
  const tifId = `tif-layer-${new Date().getTime()}`;
54
55
  if (url instanceof File) {
55
56
  // 如果是File对象,读取为ArrayBuffer
56
57
  const arrayBuffer = await readFileAsArrayBuffer(url);
57
- await processGeoTIFF(arrayBuffer, colorRange, tifId);
58
+ await processGeoTIFF(arrayBuffer, colorRange, tifId, autoFit);
58
59
  tifIds.value.push(tifId);
59
60
  } else if (typeof url === "string") {
60
61
  // 如果是URL字符串,直接请求数据
61
62
  const response = await fetch(url);
62
63
  const arrayBuffer = await response.arrayBuffer();
63
- await processGeoTIFF(arrayBuffer, colorRange, tifId);
64
+ await processGeoTIFF(arrayBuffer, colorRange, tifId, autoFit);
64
65
  tifIds.value.push(tifId);
65
66
  }
66
67
  return { tifId, dataRange }; // 返回生成的图层ID
@@ -71,9 +72,11 @@ export function useTif(map: Ref<mapboxgl.Map | undefined>) {
71
72
  * 解析GeoTIFF文件,计算边界,读取数据,并创建可视化图层
72
73
  *
73
74
  * @param arrayBuffer - GeoTIFF文件的ArrayBuffer数据
74
- * @param colorRange - 颜色渐变范围,默认从黑色到白色(目前未使用,保留为未来功能扩展)
75
+ * @param colorRange - 颜色渐变范围,默认从黑色到白色
76
+ * @param tifId - 图层ID
77
+ * @param autoFit - 是否自动调整地图视图以显示完整图像,默认为false
75
78
  */
76
- async function processGeoTIFF(arrayBuffer: ArrayBuffer, colorRange: string[] = ["#000000", "#FFFFFF"], tifId = "geotiff-layer") {
79
+ async function processGeoTIFF(arrayBuffer: ArrayBuffer, colorRange: string[] = ["#000000", "#FFFFFF"], tifId = "geotiff-layer", autoFit: boolean = false) {
77
80
  // 解析GeoTIFF
78
81
  const tiff = await fromArrayBuffer(arrayBuffer);
79
82
  const image = await tiff.getImage();
@@ -143,14 +146,16 @@ export function useTif(map: Ref<mapboxgl.Map | undefined>) {
143
146
  // 将图像添加到Mapbox
144
147
  addImageToMap(imageData, width, height, bounds, tifId);
145
148
 
146
- // 调整地图视图以显示完整图像
147
- map.value?.fitBounds(
148
- [
149
- [bounds[0], bounds[1]],
150
- [bounds[2], bounds[3]],
151
- ],
152
- { padding: 50 } // 添加50像素的内边距,确保图像完全可见
153
- );
149
+ // 根据参数决定是否自动调整地图视图
150
+ if (autoFit) {
151
+ map.value?.fitBounds(
152
+ [
153
+ [bounds[0], bounds[1]],
154
+ [bounds[2], bounds[3]],
155
+ ],
156
+ { padding: 50 } // 添加50像素的内边距,确保图像完全可见
157
+ );
158
+ }
154
159
  }
155
160
 
156
161
  /**