@abi-software/flatmapvuer 0.6.1-vue3.9 → 1.0.0
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/dist/flatmapvuer.js +25221 -23915
- package/dist/flatmapvuer.umd.cjs +121 -121
- package/dist/style.css +1 -1
- package/package.json +4 -4
- package/src/components/AnnotationTool.vue +6 -2
- package/src/components/FlatmapVuer.vue +82 -13
- package/src/components/ProvenancePopup.vue +11 -3
- package/src/components.d.ts +0 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abi-software/flatmapvuer",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist/*",
|
|
@@ -43,16 +43,16 @@
|
|
|
43
43
|
"./src/*": "./src/*"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@abi-software/flatmap-viewer": "
|
|
46
|
+
"@abi-software/flatmap-viewer": "2.6.2",
|
|
47
47
|
"@abi-software/sparc-annotation": "0.2.0",
|
|
48
|
-
"@abi-software/svg-sprite": "
|
|
48
|
+
"@abi-software/svg-sprite": "1.0.0",
|
|
49
49
|
"@element-plus/icons-vue": "^2.3.1",
|
|
50
50
|
"css-element-queries": "^1.2.2",
|
|
51
51
|
"element-plus": "2.5.5",
|
|
52
52
|
"mitt": "^3.0.1",
|
|
53
53
|
"pinia": "^2.1.7",
|
|
54
54
|
"unplugin-vue-components": "^0.26.0",
|
|
55
|
-
"vue": "^3.
|
|
55
|
+
"vue": "^3.4.15"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"@cypress/webpack-dev-server": "^3.6.1",
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<el-main class="main">
|
|
3
3
|
<div class="block">
|
|
4
4
|
<el-row class="info-field">
|
|
5
|
-
<
|
|
5
|
+
<div class="title">Feature Annotations</div>
|
|
6
6
|
</el-row>
|
|
7
7
|
<template v-if="annotationEntry">
|
|
8
8
|
<el-row
|
|
@@ -332,6 +332,10 @@ export default {
|
|
|
332
332
|
|
|
333
333
|
.block {
|
|
334
334
|
margin-bottom: 0.5em;
|
|
335
|
+
|
|
336
|
+
.main > &:first-of-type {
|
|
337
|
+
margin-right: 0.5em;
|
|
338
|
+
}
|
|
335
339
|
}
|
|
336
340
|
|
|
337
341
|
.button {
|
|
@@ -363,7 +367,7 @@ export default {
|
|
|
363
367
|
padding: 1em !important;
|
|
364
368
|
overflow-x: hidden;
|
|
365
369
|
overflow-y: auto;
|
|
366
|
-
min-width:
|
|
370
|
+
min-width: 300px; // .maplibregl-popup max-width
|
|
367
371
|
max-height: 400px;
|
|
368
372
|
scrollbar-width: thin;
|
|
369
373
|
|
|
@@ -377,6 +377,7 @@
|
|
|
377
377
|
<el-select
|
|
378
378
|
:teleported="false"
|
|
379
379
|
v-model="viewingMode"
|
|
380
|
+
@change="changeViewingMode"
|
|
380
381
|
placeholder="Select"
|
|
381
382
|
class="select-box"
|
|
382
383
|
popper-class="flatmap_dropdown"
|
|
@@ -637,7 +638,7 @@ export default {
|
|
|
637
638
|
setFlightPath3D: function (flag) {
|
|
638
639
|
this.flightPath3DRadio = flag
|
|
639
640
|
if (this.mapImp) {
|
|
640
|
-
this.mapImp.
|
|
641
|
+
this.mapImp.enableFlightPaths(flag)
|
|
641
642
|
}
|
|
642
643
|
},
|
|
643
644
|
/**
|
|
@@ -1027,6 +1028,16 @@ export default {
|
|
|
1027
1028
|
}
|
|
1028
1029
|
}
|
|
1029
1030
|
},
|
|
1031
|
+
/**
|
|
1032
|
+
* @vuese
|
|
1033
|
+
* Function triggered by viewing mode change.
|
|
1034
|
+
* (e.g., from 'Exploration' to 'Annotation')
|
|
1035
|
+
* All tooltips and popups currently showing on map will be closed
|
|
1036
|
+
* when this function is triggered.
|
|
1037
|
+
*/
|
|
1038
|
+
changeViewingMode: function () {
|
|
1039
|
+
this.closeTooltip()
|
|
1040
|
+
},
|
|
1030
1041
|
/**
|
|
1031
1042
|
* @vuese
|
|
1032
1043
|
* Function to create/display tooltips from the provided ``data``.
|
|
@@ -1067,13 +1078,13 @@ export default {
|
|
|
1067
1078
|
*/
|
|
1068
1079
|
popUpCssHacks: function () {
|
|
1069
1080
|
// Below is a hack to remove flatmap tooltips while popup is open
|
|
1070
|
-
|
|
1081
|
+
const ftooltip = document.querySelector('.flatmap-tooltip-popup')
|
|
1082
|
+
const popupCloseButton = document.querySelector('.maplibregl-popup-close-button')
|
|
1071
1083
|
if (ftooltip) ftooltip.style.display = 'none'
|
|
1072
|
-
|
|
1073
|
-
'block'
|
|
1084
|
+
popupCloseButton.style.display = 'block'
|
|
1074
1085
|
this.$refs.tooltip.$el.style.display = 'flex'
|
|
1075
|
-
|
|
1076
|
-
|
|
1086
|
+
popupCloseButton.onclick = () => {
|
|
1087
|
+
if (ftooltip) ftooltip.style.display = 'block'
|
|
1077
1088
|
}
|
|
1078
1089
|
},
|
|
1079
1090
|
/**
|
|
@@ -1344,8 +1355,8 @@ export default {
|
|
|
1344
1355
|
if (mapVersion === mapVersionForFlightPath || mapVersion > mapVersionForFlightPath) {
|
|
1345
1356
|
// Show flight path option UI
|
|
1346
1357
|
this.displayFlightPathOption = true
|
|
1347
|
-
// Show
|
|
1348
|
-
this.setFlightPath3D(
|
|
1358
|
+
// Show 2D as default on FC type
|
|
1359
|
+
this.setFlightPath3D(false)
|
|
1349
1360
|
}
|
|
1350
1361
|
},
|
|
1351
1362
|
/**
|
|
@@ -2013,23 +2024,77 @@ export default {
|
|
|
2013
2024
|
}
|
|
2014
2025
|
&.maplibregl-popup-anchor-top {
|
|
2015
2026
|
.maplibregl-popup-content {
|
|
2016
|
-
margin-top:
|
|
2027
|
+
margin-top: 12px;
|
|
2017
2028
|
&::after,
|
|
2018
2029
|
&::before {
|
|
2019
|
-
top:
|
|
2030
|
+
top: auto;
|
|
2031
|
+
bottom: 100%;
|
|
2020
2032
|
border-width: 12px;
|
|
2021
2033
|
}
|
|
2022
2034
|
/* this border color controlls the color of the triangle (what looks like the fill of the triangle) */
|
|
2023
2035
|
&::after {
|
|
2024
|
-
margin-top: 1px;
|
|
2025
2036
|
border-color: transparent transparent rgb(255, 255, 255) transparent;
|
|
2026
2037
|
}
|
|
2027
2038
|
&::before {
|
|
2028
2039
|
margin: 0 auto;
|
|
2040
|
+
margin-bottom: 1px;
|
|
2029
2041
|
border-color: transparent transparent $app-primary-color transparent;
|
|
2030
2042
|
}
|
|
2031
2043
|
}
|
|
2032
2044
|
}
|
|
2045
|
+
&.maplibregl-popup-anchor-left {
|
|
2046
|
+
margin-left: 8px;
|
|
2047
|
+
.maplibregl-popup-content {
|
|
2048
|
+
&::after,
|
|
2049
|
+
&::before {
|
|
2050
|
+
top: 50%;
|
|
2051
|
+
left: 0;
|
|
2052
|
+
border-width: 8px;
|
|
2053
|
+
margin-top: -8px;
|
|
2054
|
+
margin-left: -16px;
|
|
2055
|
+
}
|
|
2056
|
+
/* this border color controlls the color of the triangle (what looks like the fill of the triangle) */
|
|
2057
|
+
&::after {
|
|
2058
|
+
transform: translateX(1px);
|
|
2059
|
+
border-color: transparent rgb(255, 255, 255) transparent transparent;
|
|
2060
|
+
}
|
|
2061
|
+
&::before {
|
|
2062
|
+
border-color: transparent $app-primary-color transparent transparent;
|
|
2063
|
+
}
|
|
2064
|
+
}
|
|
2065
|
+
}
|
|
2066
|
+
&.maplibregl-popup-anchor-right {
|
|
2067
|
+
margin-right: 8px;
|
|
2068
|
+
.maplibregl-popup-content {
|
|
2069
|
+
&::after,
|
|
2070
|
+
&::before {
|
|
2071
|
+
top: 50%;
|
|
2072
|
+
right: 0;
|
|
2073
|
+
border-width: 8px;
|
|
2074
|
+
margin-top: -8px;
|
|
2075
|
+
margin-right: -16px;
|
|
2076
|
+
}
|
|
2077
|
+
/* this border color controlls the color of the triangle (what looks like the fill of the triangle) */
|
|
2078
|
+
&::after {
|
|
2079
|
+
transform: translateX(-1px);
|
|
2080
|
+
border-color: transparent transparent transparent rgb(255, 255, 255);
|
|
2081
|
+
}
|
|
2082
|
+
&::before {
|
|
2083
|
+
border-color: transparent transparent transparent $app-primary-color;
|
|
2084
|
+
}
|
|
2085
|
+
}
|
|
2086
|
+
}
|
|
2087
|
+
&.maplibregl-popup-anchor-top-left,
|
|
2088
|
+
&.maplibregl-popup-anchor-top-right,
|
|
2089
|
+
&.maplibregl-popup-anchor-bottom-left,
|
|
2090
|
+
&.maplibregl-popup-anchor-bottom-right {
|
|
2091
|
+
.maplibregl-popup-content {
|
|
2092
|
+
&::after,
|
|
2093
|
+
&::before {
|
|
2094
|
+
display: none;
|
|
2095
|
+
}
|
|
2096
|
+
}
|
|
2097
|
+
}
|
|
2033
2098
|
.maplibregl-popup-content {
|
|
2034
2099
|
border-radius: 4px;
|
|
2035
2100
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
|
@@ -2089,7 +2154,7 @@ export default {
|
|
|
2089
2154
|
:deep(.flatmapvuer-popover) {
|
|
2090
2155
|
.maplibregl-popup-close-button {
|
|
2091
2156
|
position: absolute;
|
|
2092
|
-
right: 0
|
|
2157
|
+
right: 0;
|
|
2093
2158
|
top: 0;
|
|
2094
2159
|
border: 0;
|
|
2095
2160
|
border-radius: 0 3px 0 0;
|
|
@@ -2097,7 +2162,11 @@ export default {
|
|
|
2097
2162
|
background-color: transparent;
|
|
2098
2163
|
font-size: 2.5em;
|
|
2099
2164
|
color: grey;
|
|
2100
|
-
|
|
2165
|
+
transition: color 0.3s ease;
|
|
2166
|
+
|
|
2167
|
+
&:hover {
|
|
2168
|
+
color: $app-primary-color;
|
|
2169
|
+
}
|
|
2101
2170
|
}
|
|
2102
2171
|
}
|
|
2103
2172
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div v-if="entry" class="main" v-loading="loading">
|
|
3
3
|
<div class="block" v-if="entry.title">
|
|
4
|
-
<
|
|
4
|
+
<div class="title">{{ capitalise(entry.title) }}</div>
|
|
5
5
|
<div
|
|
6
6
|
v-if="
|
|
7
7
|
entry.provenanceTaxonomyLabel &&
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
</div>
|
|
14
14
|
</div>
|
|
15
15
|
<div class="block" v-else>
|
|
16
|
-
<
|
|
16
|
+
<div class="title">{{ entry.featureId }}</div>
|
|
17
17
|
</div>
|
|
18
18
|
<div v-show="showDetails" class="hide" id="hide-path-info" @click="showDetails = false">
|
|
19
19
|
Hide path information
|
|
@@ -284,7 +284,7 @@ export default {
|
|
|
284
284
|
|
|
285
285
|
.title {
|
|
286
286
|
text-align: left;
|
|
287
|
-
width: 16em;
|
|
287
|
+
// width: 16em;
|
|
288
288
|
line-height: 1.5em !important;
|
|
289
289
|
font-size: 1em;
|
|
290
290
|
font-family: Helvetica;
|
|
@@ -295,6 +295,10 @@ export default {
|
|
|
295
295
|
|
|
296
296
|
.block {
|
|
297
297
|
margin-bottom: 0.5em;
|
|
298
|
+
|
|
299
|
+
.main > &:first-of-type {
|
|
300
|
+
margin-right: 0.5em;
|
|
301
|
+
}
|
|
298
302
|
}
|
|
299
303
|
|
|
300
304
|
.pub {
|
|
@@ -468,6 +472,10 @@ export default {
|
|
|
468
472
|
overflow-y: scroll;
|
|
469
473
|
scrollbar-width: thin !important;
|
|
470
474
|
max-height: 240px;
|
|
475
|
+
|
|
476
|
+
.block {
|
|
477
|
+
padding-top: 0.5em;
|
|
478
|
+
}
|
|
471
479
|
}
|
|
472
480
|
|
|
473
481
|
.scrollbar::-webkit-scrollbar-track {
|
package/src/components.d.ts
CHANGED
|
@@ -9,7 +9,6 @@ declare module 'vue' {
|
|
|
9
9
|
export interface GlobalComponents {
|
|
10
10
|
AnnotationTool: typeof import('./components/AnnotationTool.vue')['default']
|
|
11
11
|
DynamicLegends: typeof import('./components/legends/DynamicLegends.vue')['default']
|
|
12
|
-
ElAutocomplete: typeof import('element-plus/es')['ElAutocomplete']
|
|
13
12
|
ElButton: typeof import('element-plus/es')['ElButton']
|
|
14
13
|
ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
|
|
15
14
|
ElCheckboxGroup: typeof import('element-plus/es')['ElCheckboxGroup']
|
|
@@ -30,7 +29,6 @@ declare module 'vue' {
|
|
|
30
29
|
ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
|
|
31
30
|
ElRow: typeof import('element-plus/es')['ElRow']
|
|
32
31
|
ElSelect: typeof import('element-plus/es')['ElSelect']
|
|
33
|
-
ElSwitch: typeof import('element-plus/es')['ElSwitch']
|
|
34
32
|
ElTree: typeof import('element-plus/es')['ElTree']
|
|
35
33
|
ExternalResourceCard: typeof import('./components/ExternalResourceCard.vue')['default']
|
|
36
34
|
FlatmapVuer: typeof import('./components/FlatmapVuer.vue')['default']
|