mapshaper 0.7.15 → 0.7.17
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/mapshaper.js +953 -86
- package/package.json +1 -1
- package/www/index.html +8 -32
- package/www/mapshaper-gui.js +2803 -577
- package/www/mapshaper.js +953 -86
- package/www/page.css +406 -18
package/www/page.css
CHANGED
|
@@ -300,13 +300,13 @@ body.map-view {
|
|
|
300
300
|
|
|
301
301
|
.history-menu-dropdown .info-box {
|
|
302
302
|
pointer-events: initial;
|
|
303
|
-
min-width:
|
|
303
|
+
min-width: 185px;
|
|
304
304
|
}
|
|
305
305
|
|
|
306
306
|
.history-menu-item {
|
|
307
307
|
color: var(--normal-text);
|
|
308
308
|
cursor: pointer;
|
|
309
|
-
padding: 2px
|
|
309
|
+
padding-top: 2px;
|
|
310
310
|
white-space: nowrap;
|
|
311
311
|
}
|
|
312
312
|
|
|
@@ -323,12 +323,6 @@ body.map-view {
|
|
|
323
323
|
pointer-events: none;
|
|
324
324
|
}
|
|
325
325
|
|
|
326
|
-
.history-menu-separator {
|
|
327
|
-
height: 1px;
|
|
328
|
-
background-color: #ddd;
|
|
329
|
-
margin: 6px 0 5px 0;
|
|
330
|
-
}
|
|
331
|
-
|
|
332
326
|
.history-menu-note {
|
|
333
327
|
color: #777;
|
|
334
328
|
font-size: 12px;
|
|
@@ -338,6 +332,14 @@ body.map-view {
|
|
|
338
332
|
white-space: normal;
|
|
339
333
|
}
|
|
340
334
|
|
|
335
|
+
|
|
336
|
+
.history-snapshot-list .save-menu-item {
|
|
337
|
+
right: auto;
|
|
338
|
+
text-align: left;
|
|
339
|
+
padding-left: 0;
|
|
340
|
+
padding-right: 0;
|
|
341
|
+
}
|
|
342
|
+
|
|
341
343
|
.header-menu-item.header-menu-sponsor svg {
|
|
342
344
|
width: 12px;
|
|
343
345
|
height: 12px;
|
|
@@ -670,9 +672,7 @@ textarea:focus {
|
|
|
670
672
|
word-wrap: break-word;
|
|
671
673
|
text-align: left;
|
|
672
674
|
margin-top: 12px;
|
|
673
|
-
|
|
674
|
-
/* padding: 12px 16px 12px 18px; */
|
|
675
|
-
padding: 15px 17px 13px 19px;
|
|
675
|
+
padding: 14px 16px 13px 18px;
|
|
676
676
|
vertical-align: top;
|
|
677
677
|
display: inline-block;
|
|
678
678
|
/* border: 1px solid #aaa; */
|
|
@@ -706,11 +706,11 @@ textarea:focus {
|
|
|
706
706
|
}
|
|
707
707
|
|
|
708
708
|
.info-box h3 {
|
|
709
|
-
font-size:
|
|
709
|
+
font-size: 17px;
|
|
710
710
|
line-height: 1.1;
|
|
711
711
|
padding: 0;
|
|
712
712
|
margin: 0 0 0.4em 0;
|
|
713
|
-
font-weight:
|
|
713
|
+
font-weight: 500;
|
|
714
714
|
}
|
|
715
715
|
|
|
716
716
|
.info-box h3.list-header {
|
|
@@ -1011,13 +1011,28 @@ body.console-open .console-tab {
|
|
|
1011
1011
|
.console-info-title {
|
|
1012
1012
|
color: #fff;
|
|
1013
1013
|
border-bottom: 1px solid rgba(255,255,255,0.35);
|
|
1014
|
-
|
|
1014
|
+
line-height: 1.45; /* space between border and text */
|
|
1015
1015
|
}
|
|
1016
1016
|
|
|
1017
1017
|
.console-info-subtitle {
|
|
1018
1018
|
margin-top: 0.65em;
|
|
1019
1019
|
}
|
|
1020
1020
|
|
|
1021
|
+
.layer-info-popup .console-info-title {
|
|
1022
|
+
color: var(--normal-text);
|
|
1023
|
+
border-bottom-color: #ccc;
|
|
1024
|
+
}
|
|
1025
|
+
|
|
1026
|
+
.layer-info-popup .console-attribute-table tr:first-child {
|
|
1027
|
+
border-bottom-color: #ccc;
|
|
1028
|
+
}
|
|
1029
|
+
|
|
1030
|
+
.layer-info-popup .console-info-table td:first-child,
|
|
1031
|
+
.layer-info-popup .console-attribute-table td:first-child,
|
|
1032
|
+
.layer-info-popup .console-attribute-table th:first-child {
|
|
1033
|
+
color: #555;
|
|
1034
|
+
}
|
|
1035
|
+
|
|
1021
1036
|
.input-field {
|
|
1022
1037
|
outline: none;
|
|
1023
1038
|
min-width: 100px;
|
|
@@ -1885,6 +1900,15 @@ body.pan.panning .map-layers:not(.drawing) {
|
|
|
1885
1900
|
stroke-linejoin: round;
|
|
1886
1901
|
}
|
|
1887
1902
|
|
|
1903
|
+
.map-layers > svg text.label-style-selected {
|
|
1904
|
+
stroke: #fce300;
|
|
1905
|
+
stroke-opacity: 0.25;
|
|
1906
|
+
paint-order: stroke fill;
|
|
1907
|
+
stroke-width: 4px;
|
|
1908
|
+
stroke-linecap: round;
|
|
1909
|
+
stroke-linejoin: round;
|
|
1910
|
+
}
|
|
1911
|
+
|
|
1888
1912
|
/* --- MAP BUTTONS --- */
|
|
1889
1913
|
|
|
1890
1914
|
/*.pointer-btn {
|
|
@@ -1981,6 +2005,370 @@ body.pan.panning .map-layers:not(.drawing) {
|
|
|
1981
2005
|
fill: white;
|
|
1982
2006
|
}
|
|
1983
2007
|
|
|
2008
|
+
.label-style-panel {
|
|
2009
|
+
position: absolute;
|
|
2010
|
+
z-index: 21;
|
|
2011
|
+
top: 6px;
|
|
2012
|
+
right: 36px;
|
|
2013
|
+
width: 185px;
|
|
2014
|
+
padding: 8px 12px 12px;
|
|
2015
|
+
text-align: left;
|
|
2016
|
+
background-color: white;
|
|
2017
|
+
border: 1px solid #ddd;
|
|
2018
|
+
border-radius: 6px;
|
|
2019
|
+
box-shadow: 0 1px 7px rgba(0,0,0,0.12);
|
|
2020
|
+
}
|
|
2021
|
+
|
|
2022
|
+
.label-style-panel button,
|
|
2023
|
+
.label-style-panel select,
|
|
2024
|
+
.label-style-panel input {
|
|
2025
|
+
font-size: 12.5px;
|
|
2026
|
+
}
|
|
2027
|
+
|
|
2028
|
+
.label-style-panel select {
|
|
2029
|
+
padding: 1px 0;
|
|
2030
|
+
}
|
|
2031
|
+
|
|
2032
|
+
.label-style-panel-title {
|
|
2033
|
+
position: relative;
|
|
2034
|
+
font-weight: 600;
|
|
2035
|
+
font-size: 16px;
|
|
2036
|
+
}
|
|
2037
|
+
|
|
2038
|
+
.label-style-close {
|
|
2039
|
+
position: absolute;
|
|
2040
|
+
right: -5px;
|
|
2041
|
+
border: 0;
|
|
2042
|
+
background: transparent;
|
|
2043
|
+
cursor: pointer;
|
|
2044
|
+
font-size: 16px;
|
|
2045
|
+
line-height: 1;
|
|
2046
|
+
}
|
|
2047
|
+
|
|
2048
|
+
.label-style-row {
|
|
2049
|
+
display: block;
|
|
2050
|
+
margin-top: 7px;
|
|
2051
|
+
}
|
|
2052
|
+
|
|
2053
|
+
.label-style-row span,
|
|
2054
|
+
.label-style-row-label {
|
|
2055
|
+
display: block;
|
|
2056
|
+
margin-bottom: 3px;
|
|
2057
|
+
color: #555;
|
|
2058
|
+
}
|
|
2059
|
+
|
|
2060
|
+
.label-style-row select {
|
|
2061
|
+
width: 100%;
|
|
2062
|
+
box-sizing: border-box;
|
|
2063
|
+
}
|
|
2064
|
+
|
|
2065
|
+
.label-style-panel select {
|
|
2066
|
+
background-color: white;
|
|
2067
|
+
border: 1px solid #999;
|
|
2068
|
+
box-shadow: none;
|
|
2069
|
+
}
|
|
2070
|
+
|
|
2071
|
+
.label-style-panel select:focus {
|
|
2072
|
+
border-color: #d3aa00;
|
|
2073
|
+
box-shadow: none;
|
|
2074
|
+
outline: none;
|
|
2075
|
+
}
|
|
2076
|
+
|
|
2077
|
+
.label-style-panel input[type="text"] {
|
|
2078
|
+
-webkit-appearance: none;
|
|
2079
|
+
appearance: none;
|
|
2080
|
+
background: white;
|
|
2081
|
+
border: 1px solid #999;
|
|
2082
|
+
border-radius: 0;
|
|
2083
|
+
box-shadow: none;
|
|
2084
|
+
}
|
|
2085
|
+
|
|
2086
|
+
.label-style-panel input[type="text"]:focus {
|
|
2087
|
+
border-color: #d3aa00;
|
|
2088
|
+
box-shadow: none;
|
|
2089
|
+
outline: none;
|
|
2090
|
+
}
|
|
2091
|
+
|
|
2092
|
+
.label-create-expression-row input {
|
|
2093
|
+
width: 100%;
|
|
2094
|
+
box-sizing: border-box;
|
|
2095
|
+
}
|
|
2096
|
+
|
|
2097
|
+
.label-create-copy-row {
|
|
2098
|
+
display: flex;
|
|
2099
|
+
align-items: flex-start;
|
|
2100
|
+
gap: 5px;
|
|
2101
|
+
}
|
|
2102
|
+
|
|
2103
|
+
.label-create-copy-row input {
|
|
2104
|
+
margin-top: 1px;
|
|
2105
|
+
}
|
|
2106
|
+
|
|
2107
|
+
.label-create-copy-row span {
|
|
2108
|
+
display: inline;
|
|
2109
|
+
margin: 0;
|
|
2110
|
+
color: #555;
|
|
2111
|
+
}
|
|
2112
|
+
|
|
2113
|
+
.label-saved-style-row select {
|
|
2114
|
+
width: 100%;
|
|
2115
|
+
margin-bottom: 4px;
|
|
2116
|
+
}
|
|
2117
|
+
|
|
2118
|
+
.label-saved-style-row {
|
|
2119
|
+
margin-top: 10px;
|
|
2120
|
+
padding-top: 8px;
|
|
2121
|
+
border-top: 1px solid #ccc;
|
|
2122
|
+
}
|
|
2123
|
+
|
|
2124
|
+
.label-saved-style-row button {
|
|
2125
|
+
margin-right: 5px;
|
|
2126
|
+
}
|
|
2127
|
+
|
|
2128
|
+
.label-split-row {
|
|
2129
|
+
display: grid;
|
|
2130
|
+
grid-template-columns: 105px 1fr;
|
|
2131
|
+
column-gap: 8px;
|
|
2132
|
+
align-items: start;
|
|
2133
|
+
}
|
|
2134
|
+
|
|
2135
|
+
.label-split-cell > span,
|
|
2136
|
+
.label-split-cell > .label-style-row-label {
|
|
2137
|
+
display: block;
|
|
2138
|
+
margin-bottom: 2px;
|
|
2139
|
+
color: #555;
|
|
2140
|
+
}
|
|
2141
|
+
|
|
2142
|
+
.label-split-row .label-size-row,
|
|
2143
|
+
.label-split-row .label-icon-size-row {
|
|
2144
|
+
justify-self: end;
|
|
2145
|
+
white-space: nowrap;
|
|
2146
|
+
}
|
|
2147
|
+
|
|
2148
|
+
.label-color-row {
|
|
2149
|
+
position: relative;
|
|
2150
|
+
}
|
|
2151
|
+
|
|
2152
|
+
.label-panel-btn {
|
|
2153
|
+
box-sizing: border-box;
|
|
2154
|
+
user-select: none;
|
|
2155
|
+
cursor: pointer;
|
|
2156
|
+
border: 1px solid #999;
|
|
2157
|
+
border-radius: 3px;
|
|
2158
|
+
background: #eee;
|
|
2159
|
+
padding: 0;
|
|
2160
|
+
height: 19px;
|
|
2161
|
+
width: 19px;
|
|
2162
|
+
}
|
|
2163
|
+
|
|
2164
|
+
.label-panel-btn.disabled {
|
|
2165
|
+
color: #999;
|
|
2166
|
+
cursor: default;
|
|
2167
|
+
opacity: 0.45;
|
|
2168
|
+
}
|
|
2169
|
+
|
|
2170
|
+
.label-color-row .label-color-chit {
|
|
2171
|
+
display: inline-block;
|
|
2172
|
+
width: 19px;
|
|
2173
|
+
height: 19px;
|
|
2174
|
+
margin-right: 5px;
|
|
2175
|
+
padding: 0;
|
|
2176
|
+
vertical-align: top;
|
|
2177
|
+
border: 1px solid #888;
|
|
2178
|
+
cursor: pointer;
|
|
2179
|
+
}
|
|
2180
|
+
|
|
2181
|
+
.label-color-row input[type="text"] {
|
|
2182
|
+
width: 79px;
|
|
2183
|
+
height: 19px;
|
|
2184
|
+
padding-top: 0;
|
|
2185
|
+
padding-bottom: 0;
|
|
2186
|
+
box-sizing: border-box;
|
|
2187
|
+
vertical-align: top;
|
|
2188
|
+
}
|
|
2189
|
+
|
|
2190
|
+
.label-color-row .label-color-picker {
|
|
2191
|
+
left: auto;
|
|
2192
|
+
right: 0;
|
|
2193
|
+
}
|
|
2194
|
+
|
|
2195
|
+
.label-color-row .label-color-picker input[type="text"] {
|
|
2196
|
+
width: 45px;
|
|
2197
|
+
}
|
|
2198
|
+
|
|
2199
|
+
.label-css-row input {
|
|
2200
|
+
width: 100%;
|
|
2201
|
+
box-sizing: border-box;
|
|
2202
|
+
}
|
|
2203
|
+
|
|
2204
|
+
.label-color-picker {
|
|
2205
|
+
position: absolute;
|
|
2206
|
+
z-index: 25;
|
|
2207
|
+
top: 48px;
|
|
2208
|
+
right: 0;
|
|
2209
|
+
padding: 8px;
|
|
2210
|
+
background: white;
|
|
2211
|
+
border: 1px solid #ddd;
|
|
2212
|
+
border-radius: 6px;
|
|
2213
|
+
box-shadow: 0 1px 7px rgba(0,0,0,0.18);
|
|
2214
|
+
}
|
|
2215
|
+
|
|
2216
|
+
.label-color-picker canvas {
|
|
2217
|
+
display: block;
|
|
2218
|
+
width: 256px;
|
|
2219
|
+
margin: 0 0 6px 0;
|
|
2220
|
+
cursor: crosshair;
|
|
2221
|
+
}
|
|
2222
|
+
|
|
2223
|
+
.label-color-picker.dragging-color canvas {
|
|
2224
|
+
cursor: none;
|
|
2225
|
+
}
|
|
2226
|
+
|
|
2227
|
+
body.dragging-color-picker,
|
|
2228
|
+
body.dragging-color-picker * {
|
|
2229
|
+
cursor: none !important;
|
|
2230
|
+
}
|
|
2231
|
+
|
|
2232
|
+
.label-color-canvas-wrap {
|
|
2233
|
+
position: relative;
|
|
2234
|
+
width: 256px;
|
|
2235
|
+
overflow: visible;
|
|
2236
|
+
}
|
|
2237
|
+
|
|
2238
|
+
.label-color-marker {
|
|
2239
|
+
position: absolute;
|
|
2240
|
+
pointer-events: none;
|
|
2241
|
+
overflow: visible;
|
|
2242
|
+
}
|
|
2243
|
+
|
|
2244
|
+
.label-color-marker circle {
|
|
2245
|
+
fill: none;
|
|
2246
|
+
stroke-width: 1.5;
|
|
2247
|
+
}
|
|
2248
|
+
|
|
2249
|
+
.label-color-picker-fields {
|
|
2250
|
+
display: flex;
|
|
2251
|
+
align-items: center;
|
|
2252
|
+
gap: 6px;
|
|
2253
|
+
margin-top: 6px;
|
|
2254
|
+
}
|
|
2255
|
+
|
|
2256
|
+
.label-color-picker-fields label {
|
|
2257
|
+
display: inline-flex;
|
|
2258
|
+
align-items: center;
|
|
2259
|
+
gap: 3px;
|
|
2260
|
+
margin: 0;
|
|
2261
|
+
color: #555;
|
|
2262
|
+
}
|
|
2263
|
+
|
|
2264
|
+
.label-color-picker-fields span {
|
|
2265
|
+
display: inline;
|
|
2266
|
+
margin: 0;
|
|
2267
|
+
color: #555;
|
|
2268
|
+
}
|
|
2269
|
+
|
|
2270
|
+
.label-color-picker-fields input {
|
|
2271
|
+
width: 34px;
|
|
2272
|
+
box-sizing: border-box;
|
|
2273
|
+
}
|
|
2274
|
+
|
|
2275
|
+
.label-color-picker-fields button {
|
|
2276
|
+
margin-left: auto;
|
|
2277
|
+
}
|
|
2278
|
+
|
|
2279
|
+
.label-style-selection-row button {
|
|
2280
|
+
margin-right: 5px;
|
|
2281
|
+
}
|
|
2282
|
+
|
|
2283
|
+
.label-position-grid {
|
|
2284
|
+
display: grid;
|
|
2285
|
+
grid-template-columns: repeat(3, 10px);
|
|
2286
|
+
gap: 2px;
|
|
2287
|
+
}
|
|
2288
|
+
|
|
2289
|
+
.label-position-grid .label-panel-btn {
|
|
2290
|
+
width: 9px;
|
|
2291
|
+
height: 9px;
|
|
2292
|
+
cursor: pointer;
|
|
2293
|
+
border-radius: 0;
|
|
2294
|
+
background: white;
|
|
2295
|
+
}
|
|
2296
|
+
|
|
2297
|
+
.label-panel-btn.selected {
|
|
2298
|
+
background-color: black;
|
|
2299
|
+
border-color: black;
|
|
2300
|
+
color: white;
|
|
2301
|
+
}
|
|
2302
|
+
|
|
2303
|
+
.label-icon-buttons {
|
|
2304
|
+
display: flex;
|
|
2305
|
+
gap: 2px;
|
|
2306
|
+
}
|
|
2307
|
+
|
|
2308
|
+
.label-icon-buttons .label-panel-btn {
|
|
2309
|
+
display: flex;
|
|
2310
|
+
align-items: center;
|
|
2311
|
+
justify-content: center;
|
|
2312
|
+
}
|
|
2313
|
+
|
|
2314
|
+
.label-icon-symbol {
|
|
2315
|
+
display: block;
|
|
2316
|
+
width: 13px;
|
|
2317
|
+
height: 13px;
|
|
2318
|
+
fill: currentColor;
|
|
2319
|
+
stroke: none;
|
|
2320
|
+
}
|
|
2321
|
+
|
|
2322
|
+
.label-icon-buttons .label-panel-btn[data-icon="none"] .label-icon-symbol,
|
|
2323
|
+
.label-icon-buttons .label-panel-btn[data-icon="ring"] .label-icon-symbol {
|
|
2324
|
+
fill: none;
|
|
2325
|
+
stroke: currentColor;
|
|
2326
|
+
stroke-width: 1.8;
|
|
2327
|
+
stroke-linecap: round;
|
|
2328
|
+
stroke-linejoin: round;
|
|
2329
|
+
}
|
|
2330
|
+
|
|
2331
|
+
.label-icon-buttons .label-panel-btn[data-icon="star"] .label-icon-symbol {
|
|
2332
|
+
transform: scale(1.4);
|
|
2333
|
+
}
|
|
2334
|
+
|
|
2335
|
+
.label-size-row .label-panel-btn,
|
|
2336
|
+
.label-icon-size-row .label-panel-btn {
|
|
2337
|
+
display: inline-block;
|
|
2338
|
+
text-align: center;
|
|
2339
|
+
line-height: 18px;
|
|
2340
|
+
}
|
|
2341
|
+
|
|
2342
|
+
.label-size-row .label-panel-btn,
|
|
2343
|
+
.label-icon-size-row .label-panel-btn {
|
|
2344
|
+
margin-right: 4px;
|
|
2345
|
+
}
|
|
2346
|
+
|
|
2347
|
+
.label-split-row .label-size-row .label-panel-btn,
|
|
2348
|
+
.label-split-row .label-icon-size-row .label-panel-btn {
|
|
2349
|
+
margin-right: 2px;
|
|
2350
|
+
}
|
|
2351
|
+
|
|
2352
|
+
.label-split-row .label-size-row .label-panel-btn:last-child,
|
|
2353
|
+
.label-split-row .label-icon-size-row .label-panel-btn:last-child {
|
|
2354
|
+
margin-right: 0;
|
|
2355
|
+
}
|
|
2356
|
+
|
|
2357
|
+
.label-size-row .label-size-value,
|
|
2358
|
+
.label-icon-size-row .label-icon-size-value {
|
|
2359
|
+
display: inline-block;
|
|
2360
|
+
width: 28px;
|
|
2361
|
+
margin: 0 3px 0 0;
|
|
2362
|
+
text-align: center;
|
|
2363
|
+
color: black;
|
|
2364
|
+
}
|
|
2365
|
+
|
|
2366
|
+
.label-split-row .label-size-value,
|
|
2367
|
+
.label-split-row .label-icon-size-value {
|
|
2368
|
+
width: 24px;
|
|
2369
|
+
margin-right: 2px;
|
|
2370
|
+
}
|
|
2371
|
+
|
|
1984
2372
|
.nav-menu-item,
|
|
1985
2373
|
.contextmenu-item {
|
|
1986
2374
|
background-color: #fff;
|
|
@@ -2035,9 +2423,9 @@ body.pan.panning .map-layers:not(.drawing) {
|
|
|
2035
2423
|
display: inline-block;
|
|
2036
2424
|
border-radius: 4px;
|
|
2037
2425
|
border: 1px solid #aaa;
|
|
2038
|
-
font-size:
|
|
2039
|
-
margin-left:
|
|
2040
|
-
padding:
|
|
2426
|
+
font-size: 13px;
|
|
2427
|
+
margin-left: 4px;
|
|
2428
|
+
padding: 2px 4px 3px 4px;
|
|
2041
2429
|
}
|
|
2042
2430
|
|
|
2043
2431
|
.add-field-btn,
|
|
@@ -2083,7 +2471,7 @@ body.pan.panning .map-layers:not(.drawing) {
|
|
|
2083
2471
|
text-align: right;
|
|
2084
2472
|
background-color: #fff;
|
|
2085
2473
|
white-space: nowrap;
|
|
2086
|
-
padding:
|
|
2474
|
+
padding: 3px 7px 0px 7px;
|
|
2087
2475
|
line-height: 11px;
|
|
2088
2476
|
cursor: pointer;
|
|
2089
2477
|
}
|