ele-admin-plus 1.1.9-beta.5 → 1.1.9-beta.7
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.
- package/es/ele-app/el.d.ts +3 -0
- package/es/ele-basic-select/index.d.ts +1 -1
- package/es/ele-data-table/index.d.ts +1 -1
- package/es/ele-data-table/props.d.ts +2 -2
- package/es/ele-ellipsis/index.js +2 -23
- package/es/ele-icon-select/index.d.ts +1 -1
- package/es/ele-map-picker/components/map-view.d.ts +47 -24
- package/es/ele-map-picker/components/map-view.js +227 -176
- package/es/ele-map-picker/index.d.ts +38 -16
- package/es/ele-map-picker/index.js +21 -39
- package/es/ele-map-picker/props.d.ts +33 -9
- package/es/ele-map-picker/props.js +20 -6
- package/es/ele-map-picker/style/index.scss +195 -166
- package/es/ele-map-picker/types.d.ts +8 -4
- package/es/ele-menus/index.d.ts +12 -3
- package/es/ele-menus/index.js +57 -5
- package/es/ele-menus/props.d.ts +8 -0
- package/es/ele-menus/props.js +10 -2
- package/es/ele-menus/style/index.scss +1 -1
- package/es/ele-menus/util.d.ts +15 -3
- package/es/ele-menus/util.js +47 -21
- package/es/ele-modal/index.js +1 -1
- package/es/ele-modal/style/index.scss +1 -0
- package/es/ele-popconfirm/index.d.ts +3 -3
- package/es/ele-popover/index.d.ts +3 -3
- package/es/ele-popover/props.d.ts +1 -1
- package/es/ele-pro-layout/components/pro-header.d.ts +9 -0
- package/es/ele-pro-layout/components/pro-header.js +8 -2
- package/es/ele-pro-layout/components/pro-sidebar.d.ts +9 -0
- package/es/ele-pro-layout/components/pro-sidebar.js +8 -2
- package/es/ele-pro-layout/components/pro-sidebox.d.ts +9 -0
- package/es/ele-pro-layout/components/pro-sidebox.js +8 -2
- package/es/ele-pro-layout/index.d.ts +43 -40
- package/es/ele-pro-layout/index.js +9 -3
- package/es/ele-pro-layout/props.d.ts +9 -5
- package/es/ele-pro-layout/props.js +9 -5
- package/es/ele-pro-table/index.d.ts +5 -5
- package/es/ele-table-select/index.d.ts +3 -3
- package/es/ele-tooltip/index.d.ts +1 -1
- package/es/ele-tree-select/index.d.ts +1 -1
- package/es/ele-upload-list/style/index.scss +2 -1
- package/es/ele-virtual-table/index.d.ts +1 -1
- package/es/ele-virtual-table/props.d.ts +2 -2
- package/es/ele-virtual-table/util.js +2 -18
- package/es/lang/en_US.js +2 -1
- package/es/lang/zh_CN.js +2 -1
- package/es/lang/zh_TW.js +2 -1
- package/es/style/themes/default.scss +1 -1
- package/es/style/themes/rounded.scss +1 -1
- package/es/utils/core.d.ts +5 -0
- package/es/utils/core.js +28 -0
- package/lib/ele-app/el.d.ts +3 -0
- package/lib/ele-basic-select/index.d.ts +1 -1
- package/lib/ele-data-table/index.d.ts +1 -1
- package/lib/ele-data-table/props.d.ts +2 -2
- package/lib/ele-ellipsis/index.cjs +1 -22
- package/lib/ele-icon-select/index.d.ts +1 -1
- package/lib/ele-map-picker/components/map-view.cjs +225 -174
- package/lib/ele-map-picker/components/map-view.d.ts +47 -24
- package/lib/ele-map-picker/index.cjs +20 -38
- package/lib/ele-map-picker/index.d.ts +38 -16
- package/lib/ele-map-picker/props.cjs +20 -6
- package/lib/ele-map-picker/props.d.ts +33 -9
- package/lib/ele-map-picker/style/index.scss +195 -166
- package/lib/ele-map-picker/types.d.ts +8 -4
- package/lib/ele-menus/index.cjs +55 -3
- package/lib/ele-menus/index.d.ts +12 -3
- package/lib/ele-menus/props.cjs +10 -2
- package/lib/ele-menus/props.d.ts +8 -0
- package/lib/ele-menus/style/index.scss +1 -1
- package/lib/ele-menus/util.cjs +47 -21
- package/lib/ele-menus/util.d.ts +15 -3
- package/lib/ele-modal/index.cjs +1 -1
- package/lib/ele-modal/style/index.scss +1 -0
- package/lib/ele-popconfirm/index.d.ts +3 -3
- package/lib/ele-popover/index.d.ts +3 -3
- package/lib/ele-popover/props.d.ts +1 -1
- package/lib/ele-pro-layout/components/pro-header.cjs +8 -2
- package/lib/ele-pro-layout/components/pro-header.d.ts +9 -0
- package/lib/ele-pro-layout/components/pro-sidebar.cjs +8 -2
- package/lib/ele-pro-layout/components/pro-sidebar.d.ts +9 -0
- package/lib/ele-pro-layout/components/pro-sidebox.cjs +8 -2
- package/lib/ele-pro-layout/components/pro-sidebox.d.ts +9 -0
- package/lib/ele-pro-layout/index.cjs +9 -3
- package/lib/ele-pro-layout/index.d.ts +43 -40
- package/lib/ele-pro-layout/props.cjs +9 -5
- package/lib/ele-pro-layout/props.d.ts +9 -5
- package/lib/ele-pro-table/index.d.ts +5 -5
- package/lib/ele-table-select/index.d.ts +3 -3
- package/lib/ele-tooltip/index.d.ts +1 -1
- package/lib/ele-tree-select/index.d.ts +1 -1
- package/lib/ele-upload-list/style/index.scss +2 -1
- package/lib/ele-virtual-table/index.d.ts +1 -1
- package/lib/ele-virtual-table/props.d.ts +2 -2
- package/lib/ele-virtual-table/util.cjs +1 -17
- package/lib/lang/en_US.cjs +2 -1
- package/lib/lang/zh_CN.cjs +2 -1
- package/lib/lang/zh_TW.cjs +2 -1
- package/lib/style/themes/default.scss +1 -1
- package/lib/style/themes/rounded.scss +1 -1
- package/lib/utils/core.cjs +28 -0
- package/lib/utils/core.d.ts +5 -0
- package/package.json +2 -2
|
@@ -1,34 +1,33 @@
|
|
|
1
|
-
import { defineComponent, ref, computed, watch, onMounted, onBeforeUnmount, nextTick, resolveComponent, openBlock, createBlock, withCtx, createElementVNode,
|
|
1
|
+
import { defineComponent, ref, computed, watch, onMounted, onBeforeUnmount, nextTick, resolveComponent, openBlock, createBlock, normalizeStyle, withCtx, createElementVNode, createElementBlock, Fragment, createVNode, normalizeClass, createCommentVNode, toDisplayString, createTextVNode, renderList, mergeProps } from "vue";
|
|
2
2
|
import AMapLoader from "@amap/amap-jsapi-loader";
|
|
3
3
|
import { ElAutocomplete, ElInput, ElButton, ElIcon, ElEmpty } from "element-plus";
|
|
4
|
-
import { PlusOutlined, EnvironmentOutlined, CheckCircleOutlined,
|
|
5
|
-
import { useLicense } from "../../ele-config-provider/receiver";
|
|
4
|
+
import { PlusOutlined, EnvironmentOutlined, CheckCircleOutlined, SearchOutlined } from "../../icons";
|
|
6
5
|
import EleLoading from "../../ele-loading/index";
|
|
7
6
|
import { mapProps } from "../props";
|
|
8
|
-
const ICON_CLASS = "ele-map-view-
|
|
7
|
+
const ICON_CLASS = "ele-map-view-body-icon";
|
|
9
8
|
const _sfc_main = defineComponent({
|
|
10
9
|
name: "MapView",
|
|
11
10
|
components: {
|
|
12
|
-
EleLoading,
|
|
13
11
|
ElAutocomplete,
|
|
14
12
|
ElInput,
|
|
15
13
|
ElButton,
|
|
16
14
|
ElIcon,
|
|
17
15
|
ElEmpty,
|
|
16
|
+
EleLoading,
|
|
18
17
|
PlusOutlined,
|
|
19
18
|
EnvironmentOutlined,
|
|
20
19
|
CheckCircleOutlined,
|
|
21
|
-
CheckOutlined,
|
|
22
20
|
SearchOutlined
|
|
23
21
|
},
|
|
24
22
|
props: mapProps,
|
|
25
23
|
emits: {
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
mapDone: (_ins) => true,
|
|
25
|
+
select: (_selected) => true,
|
|
26
|
+
done: (_result) => true
|
|
28
27
|
},
|
|
29
28
|
setup(props, { emit }) {
|
|
30
|
-
const { authenticated } = useLicense();
|
|
31
29
|
const mapRef = ref(null);
|
|
30
|
+
const autocompleteRef = ref(null);
|
|
32
31
|
const loading = ref(true);
|
|
33
32
|
const poiLoading = ref(false);
|
|
34
33
|
const confirmLoading = ref(false);
|
|
@@ -37,7 +36,9 @@ const _sfc_main = defineComponent({
|
|
|
37
36
|
const centerIconClass = ref([ICON_CLASS]);
|
|
38
37
|
const keywords = ref("");
|
|
39
38
|
const selected = ref(null);
|
|
40
|
-
const
|
|
39
|
+
const confirmDisabled = computed(() => props.required && !selected.value);
|
|
40
|
+
const keywordMode = computed(() => "keyword" === props.mode);
|
|
41
|
+
const poiMode = computed(() => "poi" === props.mode);
|
|
41
42
|
const state = {
|
|
42
43
|
/** 上次输入建议关键字 */
|
|
43
44
|
lastSuggestion: "",
|
|
@@ -84,17 +85,32 @@ const _sfc_main = defineComponent({
|
|
|
84
85
|
});
|
|
85
86
|
state.mapIns.on("complete", () => {
|
|
86
87
|
loading.value = false;
|
|
87
|
-
|
|
88
|
-
|
|
88
|
+
if (poiMode.value || keywordMode.value) {
|
|
89
|
+
const { lng, lat } = state.mapIns.getCenter();
|
|
90
|
+
searchPOI(lng, lat);
|
|
91
|
+
}
|
|
89
92
|
});
|
|
90
93
|
state.mapIns.on("moveend", () => {
|
|
91
|
-
if (state.isItemClickMove) {
|
|
94
|
+
if (state.isItemClickMove || !poiMode.value) {
|
|
92
95
|
state.isItemClickMove = false;
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
bounceIcon();
|
|
99
|
+
const { lng, lat } = state.mapIns.getCenter();
|
|
100
|
+
searchPOI(lng, lat);
|
|
101
|
+
});
|
|
102
|
+
state.mapIns.on("click", (e) => {
|
|
103
|
+
if (poiMode.value || keywordMode.value) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
if (e.lnglat == null || typeof e.lnglat !== "object") {
|
|
107
|
+
console.error(e);
|
|
108
|
+
return;
|
|
97
109
|
}
|
|
110
|
+
const { lng, lat } = e.lnglat;
|
|
111
|
+
setSelected({ location: { lng, lat } });
|
|
112
|
+
setMapCenter(lng, lat, props.selectedZoom);
|
|
113
|
+
showCenterMarker(lng, lat);
|
|
98
114
|
});
|
|
99
115
|
state.centerMarker = new AMap.Marker({
|
|
100
116
|
icon: new AMap.Icon({
|
|
@@ -115,19 +131,19 @@ const _sfc_main = defineComponent({
|
|
|
115
131
|
return;
|
|
116
132
|
}
|
|
117
133
|
state.lastSuggestion = value;
|
|
118
|
-
if (
|
|
134
|
+
if (keywordMode.value) {
|
|
119
135
|
poiLoading.value = true;
|
|
120
136
|
}
|
|
121
137
|
searchKeywords(value).then((result) => {
|
|
122
|
-
if (
|
|
138
|
+
if (keywordMode.value) {
|
|
123
139
|
data.value = result;
|
|
124
|
-
selected.value = null;
|
|
125
140
|
poiLoading.value = false;
|
|
141
|
+
setSelected(null);
|
|
126
142
|
removeCenterMarker();
|
|
127
|
-
|
|
128
|
-
suggestionData.value = result;
|
|
129
|
-
callback && callback(suggestionData.value);
|
|
143
|
+
return;
|
|
130
144
|
}
|
|
145
|
+
suggestionData.value = result;
|
|
146
|
+
callback && callback(suggestionData.value);
|
|
131
147
|
}).catch((e) => {
|
|
132
148
|
console.error(e);
|
|
133
149
|
poiLoading.value = false;
|
|
@@ -135,31 +151,41 @@ const _sfc_main = defineComponent({
|
|
|
135
151
|
});
|
|
136
152
|
};
|
|
137
153
|
const onSearchSelect = (item) => {
|
|
154
|
+
autocompleteRef.value && autocompleteRef.value.blur();
|
|
138
155
|
if (!item || !item.location) {
|
|
139
156
|
return;
|
|
140
157
|
}
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
158
|
+
const { lng, lat } = item.location;
|
|
159
|
+
if (poiMode.value) {
|
|
160
|
+
if (!data.value.length || data.value[0].name !== item.name) {
|
|
161
|
+
data.value = [item, ...data.value];
|
|
162
|
+
}
|
|
163
|
+
setSelected(data.value[0]);
|
|
164
|
+
} else {
|
|
165
|
+
setSelected(item);
|
|
166
|
+
showCenterMarker(lng, lat);
|
|
144
167
|
}
|
|
145
|
-
setMapCenter(
|
|
168
|
+
setMapCenter(lng, lat, props.selectedZoom);
|
|
146
169
|
state.selectedSuggestion = item;
|
|
147
170
|
};
|
|
148
171
|
const onItemClick = (item) => {
|
|
149
172
|
state.isItemClickMove = true;
|
|
150
|
-
|
|
173
|
+
setSelected(item);
|
|
151
174
|
const { lng, lat } = item.location;
|
|
152
175
|
setMapCenter(lng, lat, props.selectedZoom);
|
|
153
|
-
if (
|
|
176
|
+
if (poiMode.value) {
|
|
154
177
|
bounceIcon();
|
|
155
|
-
|
|
156
|
-
showCenterMarker(lng, lat);
|
|
178
|
+
return;
|
|
157
179
|
}
|
|
180
|
+
showCenterMarker(lng, lat);
|
|
158
181
|
};
|
|
159
|
-
const
|
|
160
|
-
if (
|
|
161
|
-
|
|
182
|
+
const setSelected = (item) => {
|
|
183
|
+
if (selected.value !== item) {
|
|
184
|
+
selected.value = item;
|
|
185
|
+
emit("select", selected.value);
|
|
162
186
|
}
|
|
187
|
+
};
|
|
188
|
+
const onConfirm = () => {
|
|
163
189
|
if (!selected.value) {
|
|
164
190
|
confirmLoading.value = true;
|
|
165
191
|
getMapCenter(props.returnRegions).then((result2) => {
|
|
@@ -174,7 +200,7 @@ const _sfc_main = defineComponent({
|
|
|
174
200
|
}
|
|
175
201
|
const result = {
|
|
176
202
|
...selected.value.location,
|
|
177
|
-
name: selected.value.name,
|
|
203
|
+
name: selected.value.name || "",
|
|
178
204
|
address: selected.value.address || ""
|
|
179
205
|
};
|
|
180
206
|
if (props.returnRegions) {
|
|
@@ -230,20 +256,20 @@ const _sfc_main = defineComponent({
|
|
|
230
256
|
if (state.selectedSuggestion) {
|
|
231
257
|
if (result.length === 0 || result[0].name !== state.selectedSuggestion.name) {
|
|
232
258
|
data.value = [state.selectedSuggestion, ...result];
|
|
233
|
-
selected.value = state.selectedSuggestion;
|
|
234
259
|
} else {
|
|
235
260
|
data.value = result;
|
|
236
|
-
selected.value = result[0];
|
|
237
261
|
}
|
|
262
|
+
setSelected(data.value[0]);
|
|
238
263
|
} else {
|
|
239
264
|
data.value = result;
|
|
240
|
-
|
|
265
|
+
setSelected(null);
|
|
241
266
|
}
|
|
242
267
|
poiLoading.value = false;
|
|
243
268
|
}).catch((e) => {
|
|
244
269
|
console.error(e);
|
|
245
|
-
|
|
246
|
-
|
|
270
|
+
const selectedSuggestion = state.selectedSuggestion;
|
|
271
|
+
data.value = selectedSuggestion ? [selectedSuggestion] : [];
|
|
272
|
+
setSelected(selectedSuggestion ? selectedSuggestion : null);
|
|
247
273
|
poiLoading.value = false;
|
|
248
274
|
});
|
|
249
275
|
};
|
|
@@ -332,16 +358,16 @@ const _sfc_main = defineComponent({
|
|
|
332
358
|
}
|
|
333
359
|
});
|
|
334
360
|
};
|
|
335
|
-
const changeMapStyle = (
|
|
361
|
+
const changeMapStyle = (style) => {
|
|
336
362
|
if (state.mapIns) {
|
|
337
|
-
if (typeof
|
|
338
|
-
if (
|
|
363
|
+
if (typeof style === "boolean") {
|
|
364
|
+
if (style) {
|
|
339
365
|
state.mapIns.setMapStyle("amap://styles/dark");
|
|
340
366
|
} else {
|
|
341
367
|
state.mapIns.setMapStyle("amap://styles/normal");
|
|
342
368
|
}
|
|
343
|
-
} else if (
|
|
344
|
-
state.mapIns.setMapStyle(
|
|
369
|
+
} else if (style) {
|
|
370
|
+
state.mapIns.setMapStyle(style);
|
|
345
371
|
}
|
|
346
372
|
}
|
|
347
373
|
};
|
|
@@ -354,13 +380,13 @@ const _sfc_main = defineComponent({
|
|
|
354
380
|
};
|
|
355
381
|
const destroyAll = () => {
|
|
356
382
|
destroyMap();
|
|
357
|
-
data.value = [];
|
|
358
|
-
suggestionData.value = [];
|
|
359
|
-
selected.value = null;
|
|
360
|
-
keywords.value = "";
|
|
361
383
|
state.lastSuggestion = "";
|
|
362
384
|
state.selectedSuggestion = null;
|
|
363
385
|
state.isItemClickMove = false;
|
|
386
|
+
data.value = [];
|
|
387
|
+
suggestionData.value = [];
|
|
388
|
+
keywords.value = "";
|
|
389
|
+
setSelected(null);
|
|
364
390
|
};
|
|
365
391
|
const getMapIns = () => {
|
|
366
392
|
return state.mapIns;
|
|
@@ -382,17 +408,26 @@ const _sfc_main = defineComponent({
|
|
|
382
408
|
}
|
|
383
409
|
);
|
|
384
410
|
watch(
|
|
385
|
-
() => props.
|
|
386
|
-
(
|
|
411
|
+
() => props.mode,
|
|
412
|
+
(mode) => {
|
|
387
413
|
keywords.value = "";
|
|
388
414
|
suggestionData.value = [];
|
|
389
415
|
state.selectedSuggestion = null;
|
|
390
416
|
state.lastSuggestion = "";
|
|
391
417
|
removeCenterMarker();
|
|
392
|
-
if (
|
|
418
|
+
if (mode !== "poi" && selected.value) {
|
|
393
419
|
const { lng, lat } = selected.value.location;
|
|
394
420
|
showCenterMarker(lng, lat);
|
|
395
421
|
}
|
|
422
|
+
if (!data.value.length && (mode === "poi" || mode === "keyword")) {
|
|
423
|
+
if (selected.value) {
|
|
424
|
+
const { lng, lat } = selected.value.location;
|
|
425
|
+
searchPOI(lng, lat);
|
|
426
|
+
} else {
|
|
427
|
+
const { lng, lat } = state.mapIns.getCenter();
|
|
428
|
+
searchPOI(lng, lat);
|
|
429
|
+
}
|
|
430
|
+
}
|
|
396
431
|
}
|
|
397
432
|
);
|
|
398
433
|
watch(
|
|
@@ -409,7 +444,9 @@ const _sfc_main = defineComponent({
|
|
|
409
444
|
destroyAll();
|
|
410
445
|
});
|
|
411
446
|
return {
|
|
447
|
+
SearchOutlined,
|
|
412
448
|
mapRef,
|
|
449
|
+
autocompleteRef,
|
|
413
450
|
loading,
|
|
414
451
|
poiLoading,
|
|
415
452
|
confirmLoading,
|
|
@@ -418,7 +455,9 @@ const _sfc_main = defineComponent({
|
|
|
418
455
|
centerIconClass,
|
|
419
456
|
keywords,
|
|
420
457
|
selected,
|
|
421
|
-
|
|
458
|
+
confirmDisabled,
|
|
459
|
+
keywordMode,
|
|
460
|
+
poiMode,
|
|
422
461
|
onSearch,
|
|
423
462
|
onSearchSelect,
|
|
424
463
|
onItemClick,
|
|
@@ -434,73 +473,80 @@ const _export_sfc = (sfc, props) => {
|
|
|
434
473
|
}
|
|
435
474
|
return target;
|
|
436
475
|
};
|
|
437
|
-
const _hoisted_1 = { class: "ele-map-view-
|
|
438
|
-
const _hoisted_2 = {
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
const
|
|
443
|
-
const
|
|
444
|
-
const
|
|
445
|
-
const
|
|
476
|
+
const _hoisted_1 = { class: "ele-map-view-body" };
|
|
477
|
+
const _hoisted_2 = {
|
|
478
|
+
ref: "mapRef",
|
|
479
|
+
style: { "height": "100%" }
|
|
480
|
+
};
|
|
481
|
+
const _hoisted_3 = ["src"];
|
|
482
|
+
const _hoisted_4 = { class: "ele-map-suggest-item" };
|
|
483
|
+
const _hoisted_5 = { class: "ele-map-suggest-title" };
|
|
484
|
+
const _hoisted_6 = { class: "ele-map-suggest-text" };
|
|
485
|
+
const _hoisted_7 = {
|
|
486
|
+
key: 0,
|
|
487
|
+
class: "ele-map-view-message"
|
|
488
|
+
};
|
|
489
|
+
const _hoisted_8 = { class: "ele-map-view-list" };
|
|
490
|
+
const _hoisted_9 = ["onClick"];
|
|
491
|
+
const _hoisted_10 = { class: "ele-map-view-item-body" };
|
|
492
|
+
const _hoisted_11 = { class: "ele-map-view-item-title" };
|
|
493
|
+
const _hoisted_12 = {
|
|
446
494
|
key: 0,
|
|
447
495
|
class: "ele-map-view-item-text"
|
|
448
496
|
};
|
|
449
|
-
const
|
|
497
|
+
const _hoisted_13 = {
|
|
450
498
|
key: 0,
|
|
451
499
|
class: "ele-map-view-empty"
|
|
452
500
|
};
|
|
453
|
-
const
|
|
501
|
+
const _hoisted_14 = { class: "ele-map-view-extra" };
|
|
502
|
+
const _hoisted_15 = {
|
|
454
503
|
key: 0,
|
|
455
|
-
class: "ele-map-view-
|
|
504
|
+
class: "ele-map-view-message"
|
|
456
505
|
};
|
|
457
|
-
const _hoisted_12 = { class: "ele-map-view-message" };
|
|
458
506
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
459
|
-
const
|
|
507
|
+
const _component_PlusOutlined = resolveComponent("PlusOutlined");
|
|
460
508
|
const _component_ElIcon = resolveComponent("ElIcon");
|
|
461
|
-
const
|
|
509
|
+
const _component_SearchOutlined = resolveComponent("SearchOutlined");
|
|
462
510
|
const _component_ElAutocomplete = resolveComponent("ElAutocomplete");
|
|
463
|
-
const _component_CheckOutlined = resolveComponent("CheckOutlined");
|
|
464
511
|
const _component_ElButton = resolveComponent("ElButton");
|
|
465
|
-
const
|
|
512
|
+
const _component_ElInput = resolveComponent("ElInput");
|
|
466
513
|
const _component_EnvironmentOutlined = resolveComponent("EnvironmentOutlined");
|
|
467
514
|
const _component_CheckCircleOutlined = resolveComponent("CheckCircleOutlined");
|
|
468
515
|
const _component_ElEmpty = resolveComponent("ElEmpty");
|
|
469
516
|
const _component_EleLoading = resolveComponent("EleLoading");
|
|
470
517
|
return openBlock(), createBlock(_component_EleLoading, {
|
|
471
518
|
loading: _ctx.loading,
|
|
472
|
-
class: "ele-map-view"
|
|
519
|
+
class: "ele-map-view",
|
|
520
|
+
style: normalizeStyle({ height: _ctx.height })
|
|
473
521
|
}, {
|
|
474
522
|
default: withCtx(() => [
|
|
475
|
-
createElementVNode("div",
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
key: 0,
|
|
482
|
-
clearable: "",
|
|
483
|
-
modelValue: _ctx.keywords,
|
|
484
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.keywords = $event),
|
|
485
|
-
placeholder: _ctx.searchPlaceholder,
|
|
486
|
-
onChange: _ctx.onSearch
|
|
487
|
-
}, {
|
|
488
|
-
prefix: withCtx(() => [
|
|
489
|
-
createVNode(_component_ElIcon, { class: "el-input__icon" }, {
|
|
490
|
-
default: withCtx(() => [
|
|
491
|
-
createVNode(_component_SearchOutlined)
|
|
492
|
-
]),
|
|
493
|
-
_: 1
|
|
494
|
-
})
|
|
523
|
+
createElementVNode("div", _hoisted_1, [
|
|
524
|
+
createElementVNode("div", _hoisted_2, null, 512),
|
|
525
|
+
_ctx.poiMode ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
526
|
+
createVNode(_component_ElIcon, { class: "ele-map-view-icon-plus" }, {
|
|
527
|
+
default: withCtx(() => [
|
|
528
|
+
createVNode(_component_PlusOutlined)
|
|
495
529
|
]),
|
|
496
530
|
_: 1
|
|
497
|
-
}
|
|
498
|
-
|
|
499
|
-
|
|
531
|
+
}),
|
|
532
|
+
createElementVNode("img", {
|
|
533
|
+
src: _ctx.markerSrc,
|
|
534
|
+
class: normalizeClass(_ctx.centerIconClass)
|
|
535
|
+
}, null, 10, _hoisted_3)
|
|
536
|
+
], 64)) : createCommentVNode("", true),
|
|
537
|
+
_ctx.filterable && !_ctx.keywordMode ? (openBlock(), createElementBlock("div", {
|
|
538
|
+
key: 1,
|
|
539
|
+
class: "ele-map-view-search",
|
|
540
|
+
style: normalizeStyle(_ctx.searchStyle)
|
|
541
|
+
}, [
|
|
542
|
+
createVNode(_component_ElAutocomplete, {
|
|
543
|
+
ref: "autocompleteRef",
|
|
544
|
+
clearable: true,
|
|
500
545
|
modelValue: _ctx.keywords,
|
|
501
|
-
"onUpdate:modelValue": _cache[
|
|
502
|
-
fetchSuggestions: _ctx.onSearch,
|
|
546
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.keywords = $event),
|
|
503
547
|
placeholder: _ctx.searchPlaceholder,
|
|
548
|
+
popperClass: "ele-map-suggest-popper",
|
|
549
|
+
fetchSuggestions: _ctx.onSearch,
|
|
504
550
|
onSelect: _ctx.onSearchSelect
|
|
505
551
|
}, {
|
|
506
552
|
prefix: withCtx(() => [
|
|
@@ -512,95 +558,100 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
512
558
|
})
|
|
513
559
|
]),
|
|
514
560
|
default: withCtx(({ item }) => [
|
|
515
|
-
createElementVNode("
|
|
516
|
-
|
|
561
|
+
createElementVNode("div", _hoisted_4, [
|
|
562
|
+
createElementVNode("div", _hoisted_5, toDisplayString(item.label), 1),
|
|
563
|
+
createElementVNode("div", _hoisted_6, toDisplayString(item.district), 1)
|
|
564
|
+
])
|
|
517
565
|
]),
|
|
518
566
|
_: 1
|
|
519
|
-
}, 8, ["modelValue", "
|
|
520
|
-
]),
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
567
|
+
}, 8, ["modelValue", "placeholder", "fetchSuggestions", "onSelect"])
|
|
568
|
+
], 4)) : createCommentVNode("", true),
|
|
569
|
+
!_ctx.poiMode && !_ctx.keywordMode ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [
|
|
570
|
+
_ctx.confirmDisabled && _ctx.clickMessage ? (openBlock(), createElementBlock("div", _hoisted_7, toDisplayString(_ctx.clickMessage), 1)) : (openBlock(), createBlock(_component_ElButton, {
|
|
571
|
+
key: 1,
|
|
572
|
+
type: "primary",
|
|
573
|
+
loading: _ctx.confirmLoading,
|
|
574
|
+
disabled: _ctx.confirmDisabled,
|
|
575
|
+
class: "ele-map-view-btn-ok",
|
|
576
|
+
onClick: _ctx.onConfirm
|
|
577
|
+
}, {
|
|
578
|
+
default: withCtx(() => [
|
|
579
|
+
createTextVNode(toDisplayString(_ctx.okText), 1)
|
|
580
|
+
]),
|
|
581
|
+
_: 1
|
|
582
|
+
}, 8, ["loading", "disabled", "onClick"]))
|
|
583
|
+
], 64)) : createCommentVNode("", true)
|
|
584
|
+
]),
|
|
585
|
+
_ctx.keywordMode || _ctx.poiMode ? (openBlock(), createBlock(_component_EleLoading, {
|
|
586
|
+
key: 0,
|
|
587
|
+
loading: _ctx.poiLoading,
|
|
588
|
+
class: "ele-map-view-side"
|
|
589
|
+
}, {
|
|
590
|
+
default: withCtx(() => [
|
|
591
|
+
_ctx.keywordMode ? (openBlock(), createElementBlock("div", {
|
|
592
|
+
key: 0,
|
|
593
|
+
class: "ele-map-view-search",
|
|
594
|
+
style: normalizeStyle(_ctx.searchStyle)
|
|
595
|
+
}, [
|
|
596
|
+
createVNode(_component_ElInput, {
|
|
597
|
+
clearable: true,
|
|
598
|
+
modelValue: _ctx.keywords,
|
|
599
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.keywords = $event),
|
|
600
|
+
prefixIcon: _ctx.SearchOutlined,
|
|
601
|
+
placeholder: _ctx.searchPlaceholder,
|
|
602
|
+
onChange: _ctx.onSearch
|
|
603
|
+
}, null, 8, ["modelValue", "prefixIcon", "placeholder", "onChange"])
|
|
604
|
+
], 4)) : createCommentVNode("", true),
|
|
605
|
+
createElementVNode("div", _hoisted_8, [
|
|
606
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.data, (item) => {
|
|
607
|
+
return openBlock(), createElementBlock("div", {
|
|
608
|
+
key: item.key,
|
|
609
|
+
class: normalizeClass(["ele-map-view-item", { "is-active": item === _ctx.selected }]),
|
|
610
|
+
onClick: ($event) => _ctx.onItemClick(item)
|
|
611
|
+
}, [
|
|
612
|
+
createVNode(_component_ElIcon, { class: "ele-map-view-item-icon" }, {
|
|
613
|
+
default: withCtx(() => [
|
|
614
|
+
createVNode(_component_EnvironmentOutlined)
|
|
615
|
+
]),
|
|
616
|
+
_: 1
|
|
617
|
+
}),
|
|
618
|
+
createElementVNode("div", _hoisted_10, [
|
|
619
|
+
createElementVNode("div", _hoisted_11, toDisplayString(item.name), 1),
|
|
620
|
+
item.address ? (openBlock(), createElementBlock("div", _hoisted_12, toDisplayString(item.address), 1)) : createCommentVNode("", true)
|
|
621
|
+
]),
|
|
622
|
+
createVNode(_component_ElIcon, { class: "ele-map-view-item-radio" }, {
|
|
623
|
+
default: withCtx(() => [
|
|
624
|
+
createVNode(_component_CheckCircleOutlined)
|
|
625
|
+
]),
|
|
626
|
+
_: 1
|
|
627
|
+
})
|
|
628
|
+
], 10, _hoisted_9);
|
|
629
|
+
}), 128)),
|
|
630
|
+
!_ctx.data || !_ctx.data.length ? (openBlock(), createElementBlock("div", _hoisted_13, [
|
|
631
|
+
createVNode(_component_ElEmpty, mergeProps({ imageSize: 80 }, _ctx.emptyProps), null, 16)
|
|
632
|
+
])) : createCommentVNode("", true)
|
|
536
633
|
]),
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
ref: "mapRef",
|
|
547
|
-
style: normalizeStyle({ height: _ctx.height })
|
|
548
|
-
}, null, 4),
|
|
549
|
-
!_ctx.keywordMode ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
550
|
-
createVNode(_component_ElIcon, { class: "ele-map-view-icon-plus" }, {
|
|
634
|
+
createElementVNode("div", _hoisted_14, [
|
|
635
|
+
_ctx.confirmDisabled && _ctx.message ? (openBlock(), createElementBlock("div", _hoisted_15, toDisplayString(_ctx.message), 1)) : (openBlock(), createBlock(_component_ElButton, {
|
|
636
|
+
key: 1,
|
|
637
|
+
type: "primary",
|
|
638
|
+
loading: _ctx.confirmLoading,
|
|
639
|
+
disabled: _ctx.confirmDisabled,
|
|
640
|
+
class: "ele-map-view-btn-ok",
|
|
641
|
+
onClick: _ctx.onConfirm
|
|
642
|
+
}, {
|
|
551
643
|
default: withCtx(() => [
|
|
552
|
-
|
|
644
|
+
createTextVNode(toDisplayString(_ctx.okText), 1)
|
|
553
645
|
]),
|
|
554
646
|
_: 1
|
|
555
|
-
})
|
|
556
|
-
|
|
557
|
-
src: _ctx.markerSrc,
|
|
558
|
-
class: normalizeClass(_ctx.centerIconClass)
|
|
559
|
-
}, null, 10, _hoisted_5)
|
|
560
|
-
], 64)) : createCommentVNode("", true)
|
|
647
|
+
}, 8, ["loading", "disabled", "onClick"]))
|
|
648
|
+
])
|
|
561
649
|
]),
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
class: "ele-map-view-side"
|
|
565
|
-
}, {
|
|
566
|
-
default: withCtx(() => [
|
|
567
|
-
createElementVNode("div", _hoisted_6, [
|
|
568
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.data, (item) => {
|
|
569
|
-
return openBlock(), createElementBlock("div", {
|
|
570
|
-
key: item.key,
|
|
571
|
-
class: normalizeClass(["ele-map-view-item", { "is-active": item === _ctx.selected }]),
|
|
572
|
-
onClick: ($event) => _ctx.onItemClick(item)
|
|
573
|
-
}, [
|
|
574
|
-
createVNode(_component_ElIcon, { class: "ele-map-view-item-icon" }, {
|
|
575
|
-
default: withCtx(() => [
|
|
576
|
-
createVNode(_component_EnvironmentOutlined)
|
|
577
|
-
]),
|
|
578
|
-
_: 1
|
|
579
|
-
}),
|
|
580
|
-
createElementVNode("div", _hoisted_8, toDisplayString(item.name), 1),
|
|
581
|
-
item.address ? (openBlock(), createElementBlock("div", _hoisted_9, toDisplayString(item.address), 1)) : createCommentVNode("", true),
|
|
582
|
-
createVNode(_component_ElIcon, { class: "ele-map-view-item-radio" }, {
|
|
583
|
-
default: withCtx(() => [
|
|
584
|
-
createVNode(_component_CheckCircleOutlined)
|
|
585
|
-
]),
|
|
586
|
-
_: 1
|
|
587
|
-
})
|
|
588
|
-
], 10, _hoisted_7);
|
|
589
|
-
}), 128)),
|
|
590
|
-
!_ctx.data || !_ctx.data.length ? (openBlock(), createElementBlock("div", _hoisted_10, [
|
|
591
|
-
createVNode(_component_ElEmpty, mergeProps({ imageSize: 80 }, _ctx.emptyProps), null, 16)
|
|
592
|
-
])) : createCommentVNode("", true)
|
|
593
|
-
]),
|
|
594
|
-
_ctx.disabled ? (openBlock(), createElementBlock("div", _hoisted_11, [
|
|
595
|
-
createElementVNode("div", _hoisted_12, toDisplayString(_ctx.message), 1)
|
|
596
|
-
])) : createCommentVNode("", true)
|
|
597
|
-
]),
|
|
598
|
-
_: 1
|
|
599
|
-
}, 8, ["loading"])
|
|
600
|
-
], 4)
|
|
650
|
+
_: 1
|
|
651
|
+
}, 8, ["loading"])) : createCommentVNode("", true)
|
|
601
652
|
]),
|
|
602
653
|
_: 1
|
|
603
|
-
}, 8, ["loading"]);
|
|
654
|
+
}, 8, ["loading", "style"]);
|
|
604
655
|
}
|
|
605
656
|
const mapView = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
|
|
606
657
|
export {
|