basemapkit 0.1.4 → 0.3.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/basemapkit.d.ts +38 -0
- package/dist/basemapkit.js +263 -1196
- package/dist/basemapkit.js.map +1 -1
- package/package.json +1 -1
- package/readme.md +83 -4
- package/vite.config-lib.ts +1 -0
package/dist/basemapkit.js
CHANGED
|
@@ -1,1058 +1,63 @@
|
|
|
1
|
-
import { language_script_pairs as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
antiquewhite: [250, 235, 215],
|
|
5
|
-
aqua: [0, 255, 255],
|
|
6
|
-
aquamarine: [127, 255, 212],
|
|
7
|
-
azure: [240, 255, 255],
|
|
8
|
-
beige: [245, 245, 220],
|
|
9
|
-
bisque: [255, 228, 196],
|
|
10
|
-
black: [0, 0, 0],
|
|
11
|
-
blanchedalmond: [255, 235, 205],
|
|
12
|
-
blue: [0, 0, 255],
|
|
13
|
-
blueviolet: [138, 43, 226],
|
|
14
|
-
brown: [165, 42, 42],
|
|
15
|
-
burlywood: [222, 184, 135],
|
|
16
|
-
cadetblue: [95, 158, 160],
|
|
17
|
-
chartreuse: [127, 255, 0],
|
|
18
|
-
chocolate: [210, 105, 30],
|
|
19
|
-
coral: [255, 127, 80],
|
|
20
|
-
cornflowerblue: [100, 149, 237],
|
|
21
|
-
cornsilk: [255, 248, 220],
|
|
22
|
-
crimson: [220, 20, 60],
|
|
23
|
-
cyan: [0, 255, 255],
|
|
24
|
-
darkblue: [0, 0, 139],
|
|
25
|
-
darkcyan: [0, 139, 139],
|
|
26
|
-
darkgoldenrod: [184, 134, 11],
|
|
27
|
-
darkgray: [169, 169, 169],
|
|
28
|
-
darkgreen: [0, 100, 0],
|
|
29
|
-
darkgrey: [169, 169, 169],
|
|
30
|
-
darkkhaki: [189, 183, 107],
|
|
31
|
-
darkmagenta: [139, 0, 139],
|
|
32
|
-
darkolivegreen: [85, 107, 47],
|
|
33
|
-
darkorange: [255, 140, 0],
|
|
34
|
-
darkorchid: [153, 50, 204],
|
|
35
|
-
darkred: [139, 0, 0],
|
|
36
|
-
darksalmon: [233, 150, 122],
|
|
37
|
-
darkseagreen: [143, 188, 143],
|
|
38
|
-
darkslateblue: [72, 61, 139],
|
|
39
|
-
darkslategray: [47, 79, 79],
|
|
40
|
-
darkslategrey: [47, 79, 79],
|
|
41
|
-
darkturquoise: [0, 206, 209],
|
|
42
|
-
darkviolet: [148, 0, 211],
|
|
43
|
-
deeppink: [255, 20, 147],
|
|
44
|
-
deepskyblue: [0, 191, 255],
|
|
45
|
-
dimgray: [105, 105, 105],
|
|
46
|
-
dimgrey: [105, 105, 105],
|
|
47
|
-
dodgerblue: [30, 144, 255],
|
|
48
|
-
firebrick: [178, 34, 34],
|
|
49
|
-
floralwhite: [255, 250, 240],
|
|
50
|
-
forestgreen: [34, 139, 34],
|
|
51
|
-
fuchsia: [255, 0, 255],
|
|
52
|
-
gainsboro: [220, 220, 220],
|
|
53
|
-
ghostwhite: [248, 248, 255],
|
|
54
|
-
gold: [255, 215, 0],
|
|
55
|
-
goldenrod: [218, 165, 32],
|
|
56
|
-
gray: [128, 128, 128],
|
|
57
|
-
green: [0, 128, 0],
|
|
58
|
-
greenyellow: [173, 255, 47],
|
|
59
|
-
grey: [128, 128, 128],
|
|
60
|
-
honeydew: [240, 255, 240],
|
|
61
|
-
hotpink: [255, 105, 180],
|
|
62
|
-
indianred: [205, 92, 92],
|
|
63
|
-
indigo: [75, 0, 130],
|
|
64
|
-
ivory: [255, 255, 240],
|
|
65
|
-
khaki: [240, 230, 140],
|
|
66
|
-
lavender: [230, 230, 250],
|
|
67
|
-
lavenderblush: [255, 240, 245],
|
|
68
|
-
lawngreen: [124, 252, 0],
|
|
69
|
-
lemonchiffon: [255, 250, 205],
|
|
70
|
-
lightblue: [173, 216, 230],
|
|
71
|
-
lightcoral: [240, 128, 128],
|
|
72
|
-
lightcyan: [224, 255, 255],
|
|
73
|
-
lightgoldenrodyellow: [250, 250, 210],
|
|
74
|
-
lightgray: [211, 211, 211],
|
|
75
|
-
lightgreen: [144, 238, 144],
|
|
76
|
-
lightgrey: [211, 211, 211],
|
|
77
|
-
lightpink: [255, 182, 193],
|
|
78
|
-
lightsalmon: [255, 160, 122],
|
|
79
|
-
lightseagreen: [32, 178, 170],
|
|
80
|
-
lightskyblue: [135, 206, 250],
|
|
81
|
-
lightslategray: [119, 136, 153],
|
|
82
|
-
lightslategrey: [119, 136, 153],
|
|
83
|
-
lightsteelblue: [176, 196, 222],
|
|
84
|
-
lightyellow: [255, 255, 224],
|
|
85
|
-
lime: [0, 255, 0],
|
|
86
|
-
limegreen: [50, 205, 50],
|
|
87
|
-
linen: [250, 240, 230],
|
|
88
|
-
magenta: [255, 0, 255],
|
|
89
|
-
maroon: [128, 0, 0],
|
|
90
|
-
mediumaquamarine: [102, 205, 170],
|
|
91
|
-
mediumblue: [0, 0, 205],
|
|
92
|
-
mediumorchid: [186, 85, 211],
|
|
93
|
-
mediumpurple: [147, 112, 219],
|
|
94
|
-
mediumseagreen: [60, 179, 113],
|
|
95
|
-
mediumslateblue: [123, 104, 238],
|
|
96
|
-
mediumspringgreen: [0, 250, 154],
|
|
97
|
-
mediumturquoise: [72, 209, 204],
|
|
98
|
-
mediumvioletred: [199, 21, 133],
|
|
99
|
-
midnightblue: [25, 25, 112],
|
|
100
|
-
mintcream: [245, 255, 250],
|
|
101
|
-
mistyrose: [255, 228, 225],
|
|
102
|
-
moccasin: [255, 228, 181],
|
|
103
|
-
navajowhite: [255, 222, 173],
|
|
104
|
-
navy: [0, 0, 128],
|
|
105
|
-
oldlace: [253, 245, 230],
|
|
106
|
-
olive: [128, 128, 0],
|
|
107
|
-
olivedrab: [107, 142, 35],
|
|
108
|
-
orange: [255, 165, 0],
|
|
109
|
-
orangered: [255, 69, 0],
|
|
110
|
-
orchid: [218, 112, 214],
|
|
111
|
-
palegoldenrod: [238, 232, 170],
|
|
112
|
-
palegreen: [152, 251, 152],
|
|
113
|
-
paleturquoise: [175, 238, 238],
|
|
114
|
-
palevioletred: [219, 112, 147],
|
|
115
|
-
papayawhip: [255, 239, 213],
|
|
116
|
-
peachpuff: [255, 218, 185],
|
|
117
|
-
peru: [205, 133, 63],
|
|
118
|
-
pink: [255, 192, 203],
|
|
119
|
-
plum: [221, 160, 221],
|
|
120
|
-
powderblue: [176, 224, 230],
|
|
121
|
-
purple: [128, 0, 128],
|
|
122
|
-
rebeccapurple: [102, 51, 153],
|
|
123
|
-
red: [255, 0, 0],
|
|
124
|
-
rosybrown: [188, 143, 143],
|
|
125
|
-
royalblue: [65, 105, 225],
|
|
126
|
-
saddlebrown: [139, 69, 19],
|
|
127
|
-
salmon: [250, 128, 114],
|
|
128
|
-
sandybrown: [244, 164, 96],
|
|
129
|
-
seagreen: [46, 139, 87],
|
|
130
|
-
seashell: [255, 245, 238],
|
|
131
|
-
sienna: [160, 82, 45],
|
|
132
|
-
silver: [192, 192, 192],
|
|
133
|
-
skyblue: [135, 206, 235],
|
|
134
|
-
slateblue: [106, 90, 205],
|
|
135
|
-
slategray: [112, 128, 144],
|
|
136
|
-
slategrey: [112, 128, 144],
|
|
137
|
-
snow: [255, 250, 250],
|
|
138
|
-
springgreen: [0, 255, 127],
|
|
139
|
-
steelblue: [70, 130, 180],
|
|
140
|
-
tan: [210, 180, 140],
|
|
141
|
-
teal: [0, 128, 128],
|
|
142
|
-
thistle: [216, 191, 216],
|
|
143
|
-
tomato: [255, 99, 71],
|
|
144
|
-
turquoise: [64, 224, 208],
|
|
145
|
-
violet: [238, 130, 238],
|
|
146
|
-
wheat: [245, 222, 179],
|
|
147
|
-
white: [255, 255, 255],
|
|
148
|
-
whitesmoke: [245, 245, 245],
|
|
149
|
-
yellow: [255, 255, 0],
|
|
150
|
-
yellowgreen: [154, 205, 50]
|
|
151
|
-
}, B = /* @__PURE__ */ Object.create(null);
|
|
152
|
-
for (const n in k)
|
|
153
|
-
Object.hasOwn(k, n) && (B[k[n]] = n);
|
|
154
|
-
const y = {
|
|
155
|
-
to: {},
|
|
156
|
-
get: {}
|
|
157
|
-
};
|
|
158
|
-
y.get = function(n) {
|
|
159
|
-
const e = n.slice(0, 3).toLowerCase();
|
|
160
|
-
let t, o;
|
|
161
|
-
switch (e) {
|
|
162
|
-
case "hsl": {
|
|
163
|
-
t = y.get.hsl(n), o = "hsl";
|
|
164
|
-
break;
|
|
165
|
-
}
|
|
166
|
-
case "hwb": {
|
|
167
|
-
t = y.get.hwb(n), o = "hwb";
|
|
168
|
-
break;
|
|
169
|
-
}
|
|
170
|
-
default: {
|
|
171
|
-
t = y.get.rgb(n), o = "rgb";
|
|
172
|
-
break;
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
return t ? { model: o, value: t } : null;
|
|
176
|
-
};
|
|
177
|
-
y.get.rgb = function(n) {
|
|
178
|
-
if (!n)
|
|
179
|
-
return null;
|
|
180
|
-
const e = /^#([a-f\d]{3,4})$/i, t = /^#([a-f\d]{6})([a-f\d]{2})?$/i, o = /^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/, i = /^rgba?\(\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/, l = /^(\w+)$/;
|
|
181
|
-
let r = [0, 0, 0, 1], a, s, u;
|
|
182
|
-
if (a = n.match(t)) {
|
|
183
|
-
for (u = a[2], a = a[1], s = 0; s < 3; s++) {
|
|
184
|
-
const _ = s * 2;
|
|
185
|
-
r[s] = Number.parseInt(a.slice(_, _ + 2), 16);
|
|
186
|
-
}
|
|
187
|
-
u && (r[3] = Number.parseInt(u, 16) / 255);
|
|
188
|
-
} else if (a = n.match(e)) {
|
|
189
|
-
for (a = a[1], u = a[3], s = 0; s < 3; s++)
|
|
190
|
-
r[s] = Number.parseInt(a[s] + a[s], 16);
|
|
191
|
-
u && (r[3] = Number.parseInt(u + u, 16) / 255);
|
|
192
|
-
} else if (a = n.match(o)) {
|
|
193
|
-
for (s = 0; s < 3; s++)
|
|
194
|
-
r[s] = Number.parseInt(a[s + 1], 10);
|
|
195
|
-
a[4] && (r[3] = a[5] ? Number.parseFloat(a[4]) * 0.01 : Number.parseFloat(a[4]));
|
|
196
|
-
} else if (a = n.match(i)) {
|
|
197
|
-
for (s = 0; s < 3; s++)
|
|
198
|
-
r[s] = Math.round(Number.parseFloat(a[s + 1]) * 2.55);
|
|
199
|
-
a[4] && (r[3] = a[5] ? Number.parseFloat(a[4]) * 0.01 : Number.parseFloat(a[4]));
|
|
200
|
-
} else return (a = n.match(l)) ? a[1] === "transparent" ? [0, 0, 0, 0] : Object.hasOwn(k, a[1]) ? (r = k[a[1]], r[3] = 1, r) : null : null;
|
|
201
|
-
for (s = 0; s < 3; s++)
|
|
202
|
-
r[s] = z(r[s], 0, 255);
|
|
203
|
-
return r[3] = z(r[3], 0, 1), r;
|
|
204
|
-
};
|
|
205
|
-
y.get.hsl = function(n) {
|
|
206
|
-
if (!n)
|
|
207
|
-
return null;
|
|
208
|
-
const e = /^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[,|/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/, t = n.match(e);
|
|
209
|
-
if (t) {
|
|
210
|
-
const o = Number.parseFloat(t[4]), i = (Number.parseFloat(t[1]) % 360 + 360) % 360, l = z(Number.parseFloat(t[2]), 0, 100), r = z(Number.parseFloat(t[3]), 0, 100), a = z(Number.isNaN(o) ? 1 : o, 0, 1);
|
|
211
|
-
return [i, l, r, a];
|
|
212
|
-
}
|
|
213
|
-
return null;
|
|
214
|
-
};
|
|
215
|
-
y.get.hwb = function(n) {
|
|
216
|
-
if (!n)
|
|
217
|
-
return null;
|
|
218
|
-
const e = /^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d.]+)%\s*,\s*([+-]?[\d.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/, t = n.match(e);
|
|
219
|
-
if (t) {
|
|
220
|
-
const o = Number.parseFloat(t[4]), i = (Number.parseFloat(t[1]) % 360 + 360) % 360, l = z(Number.parseFloat(t[2]), 0, 100), r = z(Number.parseFloat(t[3]), 0, 100), a = z(Number.isNaN(o) ? 1 : o, 0, 1);
|
|
221
|
-
return [i, l, r, a];
|
|
222
|
-
}
|
|
223
|
-
return null;
|
|
224
|
-
};
|
|
225
|
-
y.to.hex = function(...n) {
|
|
226
|
-
return "#" + A(n[0]) + A(n[1]) + A(n[2]) + (n[3] < 1 ? A(Math.round(n[3] * 255)) : "");
|
|
227
|
-
};
|
|
228
|
-
y.to.rgb = function(...n) {
|
|
229
|
-
return n.length < 4 || n[3] === 1 ? "rgb(" + Math.round(n[0]) + ", " + Math.round(n[1]) + ", " + Math.round(n[2]) + ")" : "rgba(" + Math.round(n[0]) + ", " + Math.round(n[1]) + ", " + Math.round(n[2]) + ", " + n[3] + ")";
|
|
230
|
-
};
|
|
231
|
-
y.to.rgb.percent = function(...n) {
|
|
232
|
-
const e = Math.round(n[0] / 255 * 100), t = Math.round(n[1] / 255 * 100), o = Math.round(n[2] / 255 * 100);
|
|
233
|
-
return n.length < 4 || n[3] === 1 ? "rgb(" + e + "%, " + t + "%, " + o + "%)" : "rgba(" + e + "%, " + t + "%, " + o + "%, " + n[3] + ")";
|
|
234
|
-
};
|
|
235
|
-
y.to.hsl = function(...n) {
|
|
236
|
-
return n.length < 4 || n[3] === 1 ? "hsl(" + n[0] + ", " + n[1] + "%, " + n[2] + "%)" : "hsla(" + n[0] + ", " + n[1] + "%, " + n[2] + "%, " + n[3] + ")";
|
|
237
|
-
};
|
|
238
|
-
y.to.hwb = function(...n) {
|
|
239
|
-
let e = "";
|
|
240
|
-
return n.length >= 4 && n[3] !== 1 && (e = ", " + n[3]), "hwb(" + n[0] + ", " + n[1] + "%, " + n[2] + "%" + e + ")";
|
|
241
|
-
};
|
|
242
|
-
y.to.keyword = function(...n) {
|
|
243
|
-
return B[n.slice(0, 3)];
|
|
244
|
-
};
|
|
245
|
-
function z(n, e, t) {
|
|
246
|
-
return Math.min(Math.max(e, n), t);
|
|
247
|
-
}
|
|
248
|
-
function A(n) {
|
|
249
|
-
const e = Math.round(n).toString(16).toUpperCase();
|
|
250
|
-
return e.length < 2 ? "0" + e : e;
|
|
251
|
-
}
|
|
252
|
-
const J = {};
|
|
253
|
-
for (const n of Object.keys(k))
|
|
254
|
-
J[k[n]] = n;
|
|
255
|
-
const c = {
|
|
256
|
-
rgb: { channels: 3, labels: "rgb" },
|
|
257
|
-
hsl: { channels: 3, labels: "hsl" },
|
|
258
|
-
hsv: { channels: 3, labels: "hsv" },
|
|
259
|
-
hwb: { channels: 3, labels: "hwb" },
|
|
260
|
-
cmyk: { channels: 4, labels: "cmyk" },
|
|
261
|
-
xyz: { channels: 3, labels: "xyz" },
|
|
262
|
-
lab: { channels: 3, labels: "lab" },
|
|
263
|
-
oklab: { channels: 3, labels: ["okl", "oka", "okb"] },
|
|
264
|
-
lch: { channels: 3, labels: "lch" },
|
|
265
|
-
oklch: { channels: 3, labels: ["okl", "okc", "okh"] },
|
|
266
|
-
hex: { channels: 1, labels: ["hex"] },
|
|
267
|
-
keyword: { channels: 1, labels: ["keyword"] },
|
|
268
|
-
ansi16: { channels: 1, labels: ["ansi16"] },
|
|
269
|
-
ansi256: { channels: 1, labels: ["ansi256"] },
|
|
270
|
-
hcg: { channels: 3, labels: ["h", "c", "g"] },
|
|
271
|
-
apple: { channels: 3, labels: ["r16", "g16", "b16"] },
|
|
272
|
-
gray: { channels: 1, labels: ["gray"] }
|
|
273
|
-
}, v = (6 / 29) ** 3;
|
|
274
|
-
function N(n) {
|
|
275
|
-
const e = n > 31308e-7 ? 1.055 * n ** 0.4166666666666667 - 0.055 : n * 12.92;
|
|
276
|
-
return Math.min(Math.max(0, e), 1);
|
|
277
|
-
}
|
|
278
|
-
function S(n) {
|
|
279
|
-
return n > 0.04045 ? ((n + 0.055) / 1.055) ** 2.4 : n / 12.92;
|
|
280
|
-
}
|
|
281
|
-
for (const n of Object.keys(c)) {
|
|
282
|
-
if (!("channels" in c[n]))
|
|
283
|
-
throw new Error("missing channels property: " + n);
|
|
284
|
-
if (!("labels" in c[n]))
|
|
285
|
-
throw new Error("missing channel labels property: " + n);
|
|
286
|
-
if (c[n].labels.length !== c[n].channels)
|
|
287
|
-
throw new Error("channel and label counts mismatch: " + n);
|
|
288
|
-
const { channels: e, labels: t } = c[n];
|
|
289
|
-
delete c[n].channels, delete c[n].labels, Object.defineProperty(c[n], "channels", { value: e }), Object.defineProperty(c[n], "labels", { value: t });
|
|
290
|
-
}
|
|
291
|
-
c.rgb.hsl = function(n) {
|
|
292
|
-
const e = n[0] / 255, t = n[1] / 255, o = n[2] / 255, i = Math.min(e, t, o), l = Math.max(e, t, o), r = l - i;
|
|
293
|
-
let a, s;
|
|
294
|
-
switch (l) {
|
|
295
|
-
case i: {
|
|
296
|
-
a = 0;
|
|
297
|
-
break;
|
|
298
|
-
}
|
|
299
|
-
case e: {
|
|
300
|
-
a = (t - o) / r;
|
|
301
|
-
break;
|
|
302
|
-
}
|
|
303
|
-
case t: {
|
|
304
|
-
a = 2 + (o - e) / r;
|
|
305
|
-
break;
|
|
306
|
-
}
|
|
307
|
-
case o: {
|
|
308
|
-
a = 4 + (e - t) / r;
|
|
309
|
-
break;
|
|
310
|
-
}
|
|
311
|
-
}
|
|
312
|
-
a = Math.min(a * 60, 360), a < 0 && (a += 360);
|
|
313
|
-
const u = (i + l) / 2;
|
|
314
|
-
return l === i ? s = 0 : u <= 0.5 ? s = r / (l + i) : s = r / (2 - l - i), [a, s * 100, u * 100];
|
|
315
|
-
};
|
|
316
|
-
c.rgb.hsv = function(n) {
|
|
317
|
-
let e, t, o, i, l;
|
|
318
|
-
const r = n[0] / 255, a = n[1] / 255, s = n[2] / 255, u = Math.max(r, a, s), _ = u - Math.min(r, a, s), m = function(F) {
|
|
319
|
-
return (u - F) / 6 / _ + 1 / 2;
|
|
320
|
-
};
|
|
321
|
-
if (_ === 0)
|
|
322
|
-
i = 0, l = 0;
|
|
323
|
-
else {
|
|
324
|
-
switch (l = _ / u, e = m(r), t = m(a), o = m(s), u) {
|
|
325
|
-
case r: {
|
|
326
|
-
i = o - t;
|
|
327
|
-
break;
|
|
328
|
-
}
|
|
329
|
-
case a: {
|
|
330
|
-
i = 1 / 3 + e - o;
|
|
331
|
-
break;
|
|
332
|
-
}
|
|
333
|
-
case s: {
|
|
334
|
-
i = 2 / 3 + t - e;
|
|
335
|
-
break;
|
|
336
|
-
}
|
|
337
|
-
}
|
|
338
|
-
i < 0 ? i += 1 : i > 1 && (i -= 1);
|
|
339
|
-
}
|
|
340
|
-
return [
|
|
341
|
-
i * 360,
|
|
342
|
-
l * 100,
|
|
343
|
-
u * 100
|
|
344
|
-
];
|
|
345
|
-
};
|
|
346
|
-
c.rgb.hwb = function(n) {
|
|
347
|
-
const e = n[0], t = n[1];
|
|
348
|
-
let o = n[2];
|
|
349
|
-
const i = c.rgb.hsl(n)[0], l = 1 / 255 * Math.min(e, Math.min(t, o));
|
|
350
|
-
return o = 1 - 1 / 255 * Math.max(e, Math.max(t, o)), [i, l * 100, o * 100];
|
|
351
|
-
};
|
|
352
|
-
c.rgb.oklab = function(n) {
|
|
353
|
-
const e = S(n[0] / 255), t = S(n[1] / 255), o = S(n[2] / 255), i = Math.cbrt(0.4122214708 * e + 0.5363325363 * t + 0.0514459929 * o), l = Math.cbrt(0.2119034982 * e + 0.6806995451 * t + 0.1073969566 * o), r = Math.cbrt(0.0883024619 * e + 0.2817188376 * t + 0.6299787005 * o), a = 0.2104542553 * i + 0.793617785 * l - 0.0040720468 * r, s = 1.9779984951 * i - 2.428592205 * l + 0.4505937099 * r, u = 0.0259040371 * i + 0.7827717662 * l - 0.808675766 * r;
|
|
354
|
-
return [a * 100, s * 100, u * 100];
|
|
355
|
-
};
|
|
356
|
-
c.rgb.cmyk = function(n) {
|
|
357
|
-
const e = n[0] / 255, t = n[1] / 255, o = n[2] / 255, i = Math.min(1 - e, 1 - t, 1 - o), l = (1 - e - i) / (1 - i) || 0, r = (1 - t - i) / (1 - i) || 0, a = (1 - o - i) / (1 - i) || 0;
|
|
358
|
-
return [l * 100, r * 100, a * 100, i * 100];
|
|
359
|
-
};
|
|
360
|
-
function V(n, e) {
|
|
361
|
-
return (n[0] - e[0]) ** 2 + (n[1] - e[1]) ** 2 + (n[2] - e[2]) ** 2;
|
|
362
|
-
}
|
|
363
|
-
c.rgb.keyword = function(n) {
|
|
364
|
-
const e = J[n];
|
|
365
|
-
if (e)
|
|
366
|
-
return e;
|
|
367
|
-
let t = Number.POSITIVE_INFINITY, o;
|
|
368
|
-
for (const i of Object.keys(k)) {
|
|
369
|
-
const l = k[i], r = V(n, l);
|
|
370
|
-
r < t && (t = r, o = i);
|
|
371
|
-
}
|
|
372
|
-
return o;
|
|
373
|
-
};
|
|
374
|
-
c.keyword.rgb = function(n) {
|
|
375
|
-
return k[n];
|
|
376
|
-
};
|
|
377
|
-
c.rgb.xyz = function(n) {
|
|
378
|
-
const e = S(n[0] / 255), t = S(n[1] / 255), o = S(n[2] / 255), i = e * 0.4124564 + t * 0.3575761 + o * 0.1804375, l = e * 0.2126729 + t * 0.7151522 + o * 0.072175, r = e * 0.0193339 + t * 0.119192 + o * 0.9503041;
|
|
379
|
-
return [i * 100, l * 100, r * 100];
|
|
380
|
-
};
|
|
381
|
-
c.rgb.lab = function(n) {
|
|
382
|
-
const e = c.rgb.xyz(n);
|
|
383
|
-
let t = e[0], o = e[1], i = e[2];
|
|
384
|
-
t /= 95.047, o /= 100, i /= 108.883, t = t > v ? t ** (1 / 3) : 7.787 * t + 16 / 116, o = o > v ? o ** (1 / 3) : 7.787 * o + 16 / 116, i = i > v ? i ** (1 / 3) : 7.787 * i + 16 / 116;
|
|
385
|
-
const l = 116 * o - 16, r = 500 * (t - o), a = 200 * (o - i);
|
|
386
|
-
return [l, r, a];
|
|
387
|
-
};
|
|
388
|
-
c.hsl.rgb = function(n) {
|
|
389
|
-
const e = n[0] / 360, t = n[1] / 100, o = n[2] / 100;
|
|
390
|
-
let i, l;
|
|
391
|
-
if (t === 0)
|
|
392
|
-
return l = o * 255, [l, l, l];
|
|
393
|
-
const r = o < 0.5 ? o * (1 + t) : o + t - o * t, a = 2 * o - r, s = [0, 0, 0];
|
|
394
|
-
for (let u = 0; u < 3; u++)
|
|
395
|
-
i = e + 1 / 3 * -(u - 1), i < 0 && i++, i > 1 && i--, 6 * i < 1 ? l = a + (r - a) * 6 * i : 2 * i < 1 ? l = r : 3 * i < 2 ? l = a + (r - a) * (2 / 3 - i) * 6 : l = a, s[u] = l * 255;
|
|
396
|
-
return s;
|
|
397
|
-
};
|
|
398
|
-
c.hsl.hsv = function(n) {
|
|
399
|
-
const e = n[0];
|
|
400
|
-
let t = n[1] / 100, o = n[2] / 100, i = t;
|
|
401
|
-
const l = Math.max(o, 0.01);
|
|
402
|
-
o *= 2, t *= o <= 1 ? o : 2 - o, i *= l <= 1 ? l : 2 - l;
|
|
403
|
-
const r = (o + t) / 2, a = o === 0 ? 2 * i / (l + i) : 2 * t / (o + t);
|
|
404
|
-
return [e, a * 100, r * 100];
|
|
405
|
-
};
|
|
406
|
-
c.hsv.rgb = function(n) {
|
|
407
|
-
const e = n[0] / 60, t = n[1] / 100;
|
|
408
|
-
let o = n[2] / 100;
|
|
409
|
-
const i = Math.floor(e) % 6, l = e - Math.floor(e), r = 255 * o * (1 - t), a = 255 * o * (1 - t * l), s = 255 * o * (1 - t * (1 - l));
|
|
410
|
-
switch (o *= 255, i) {
|
|
411
|
-
case 0:
|
|
412
|
-
return [o, s, r];
|
|
413
|
-
case 1:
|
|
414
|
-
return [a, o, r];
|
|
415
|
-
case 2:
|
|
416
|
-
return [r, o, s];
|
|
417
|
-
case 3:
|
|
418
|
-
return [r, a, o];
|
|
419
|
-
case 4:
|
|
420
|
-
return [s, r, o];
|
|
421
|
-
case 5:
|
|
422
|
-
return [o, r, a];
|
|
423
|
-
}
|
|
424
|
-
};
|
|
425
|
-
c.hsv.hsl = function(n) {
|
|
426
|
-
const e = n[0], t = n[1] / 100, o = n[2] / 100, i = Math.max(o, 0.01);
|
|
427
|
-
let l, r;
|
|
428
|
-
r = (2 - t) * o;
|
|
429
|
-
const a = (2 - t) * i;
|
|
430
|
-
return l = t * i, l /= a <= 1 ? a : 2 - a, l = l || 0, r /= 2, [e, l * 100, r * 100];
|
|
431
|
-
};
|
|
432
|
-
c.hwb.rgb = function(n) {
|
|
433
|
-
const e = n[0] / 360;
|
|
434
|
-
let t = n[1] / 100, o = n[2] / 100;
|
|
435
|
-
const i = t + o;
|
|
436
|
-
let l;
|
|
437
|
-
i > 1 && (t /= i, o /= i);
|
|
438
|
-
const r = Math.floor(6 * e), a = 1 - o;
|
|
439
|
-
l = 6 * e - r, (r & 1) !== 0 && (l = 1 - l);
|
|
440
|
-
const s = t + l * (a - t);
|
|
441
|
-
let u, _, m;
|
|
442
|
-
switch (r) {
|
|
443
|
-
default:
|
|
444
|
-
case 6:
|
|
445
|
-
case 0: {
|
|
446
|
-
u = a, _ = s, m = t;
|
|
447
|
-
break;
|
|
448
|
-
}
|
|
449
|
-
case 1: {
|
|
450
|
-
u = s, _ = a, m = t;
|
|
451
|
-
break;
|
|
452
|
-
}
|
|
453
|
-
case 2: {
|
|
454
|
-
u = t, _ = a, m = s;
|
|
455
|
-
break;
|
|
456
|
-
}
|
|
457
|
-
case 3: {
|
|
458
|
-
u = t, _ = s, m = a;
|
|
459
|
-
break;
|
|
460
|
-
}
|
|
461
|
-
case 4: {
|
|
462
|
-
u = s, _ = t, m = a;
|
|
463
|
-
break;
|
|
464
|
-
}
|
|
465
|
-
case 5: {
|
|
466
|
-
u = a, _ = t, m = s;
|
|
467
|
-
break;
|
|
468
|
-
}
|
|
469
|
-
}
|
|
470
|
-
return [u * 255, _ * 255, m * 255];
|
|
471
|
-
};
|
|
472
|
-
c.cmyk.rgb = function(n) {
|
|
473
|
-
const e = n[0] / 100, t = n[1] / 100, o = n[2] / 100, i = n[3] / 100, l = 1 - Math.min(1, e * (1 - i) + i), r = 1 - Math.min(1, t * (1 - i) + i), a = 1 - Math.min(1, o * (1 - i) + i);
|
|
474
|
-
return [l * 255, r * 255, a * 255];
|
|
475
|
-
};
|
|
476
|
-
c.xyz.rgb = function(n) {
|
|
477
|
-
const e = n[0] / 100, t = n[1] / 100, o = n[2] / 100;
|
|
478
|
-
let i, l, r;
|
|
479
|
-
return i = e * 3.2404542 + t * -1.5371385 + o * -0.4985314, l = e * -0.969266 + t * 1.8760108 + o * 0.041556, r = e * 0.0556434 + t * -0.2040259 + o * 1.0572252, i = N(i), l = N(l), r = N(r), [i * 255, l * 255, r * 255];
|
|
480
|
-
};
|
|
481
|
-
c.xyz.lab = function(n) {
|
|
482
|
-
let e = n[0], t = n[1], o = n[2];
|
|
483
|
-
e /= 95.047, t /= 100, o /= 108.883, e = e > v ? e ** (1 / 3) : 7.787 * e + 16 / 116, t = t > v ? t ** (1 / 3) : 7.787 * t + 16 / 116, o = o > v ? o ** (1 / 3) : 7.787 * o + 16 / 116;
|
|
484
|
-
const i = 116 * t - 16, l = 500 * (e - t), r = 200 * (t - o);
|
|
485
|
-
return [i, l, r];
|
|
486
|
-
};
|
|
487
|
-
c.xyz.oklab = function(n) {
|
|
488
|
-
const e = n[0] / 100, t = n[1] / 100, o = n[2] / 100, i = Math.cbrt(0.8189330101 * e + 0.3618667424 * t - 0.1288597137 * o), l = Math.cbrt(0.0329845436 * e + 0.9293118715 * t + 0.0361456387 * o), r = Math.cbrt(0.0482003018 * e + 0.2643662691 * t + 0.633851707 * o), a = 0.2104542553 * i + 0.793617785 * l - 0.0040720468 * r, s = 1.9779984951 * i - 2.428592205 * l + 0.4505937099 * r, u = 0.0259040371 * i + 0.7827717662 * l - 0.808675766 * r;
|
|
489
|
-
return [a * 100, s * 100, u * 100];
|
|
490
|
-
};
|
|
491
|
-
c.oklab.oklch = function(n) {
|
|
492
|
-
return c.lab.lch(n);
|
|
493
|
-
};
|
|
494
|
-
c.oklab.xyz = function(n) {
|
|
495
|
-
const e = n[0] / 100, t = n[1] / 100, o = n[2] / 100, i = (0.999999998 * e + 0.396337792 * t + 0.215803758 * o) ** 3, l = (1.000000008 * e - 0.105561342 * t - 0.063854175 * o) ** 3, r = (1.000000055 * e - 0.089484182 * t - 1.291485538 * o) ** 3, a = 1.227013851 * i - 0.55779998 * l + 0.281256149 * r, s = -0.040580178 * i + 1.11225687 * l - 0.071676679 * r, u = -0.076381285 * i - 0.421481978 * l + 1.58616322 * r;
|
|
496
|
-
return [a * 100, s * 100, u * 100];
|
|
497
|
-
};
|
|
498
|
-
c.oklab.rgb = function(n) {
|
|
499
|
-
const e = n[0] / 100, t = n[1] / 100, o = n[2] / 100, i = (e + 0.3963377774 * t + 0.2158037573 * o) ** 3, l = (e - 0.1055613458 * t - 0.0638541728 * o) ** 3, r = (e - 0.0894841775 * t - 1.291485548 * o) ** 3, a = N(4.0767416621 * i - 3.3077115913 * l + 0.2309699292 * r), s = N(-1.2684380046 * i + 2.6097574011 * l - 0.3413193965 * r), u = N(-0.0041960863 * i - 0.7034186147 * l + 1.707614701 * r);
|
|
500
|
-
return [a * 255, s * 255, u * 255];
|
|
501
|
-
};
|
|
502
|
-
c.oklch.oklab = function(n) {
|
|
503
|
-
return c.lch.lab(n);
|
|
504
|
-
};
|
|
505
|
-
c.lab.xyz = function(n) {
|
|
506
|
-
const e = n[0], t = n[1], o = n[2];
|
|
507
|
-
let i, l, r;
|
|
508
|
-
l = (e + 16) / 116, i = t / 500 + l, r = l - o / 200;
|
|
509
|
-
const a = l ** 3, s = i ** 3, u = r ** 3;
|
|
510
|
-
return l = a > v ? a : (l - 16 / 116) / 7.787, i = s > v ? s : (i - 16 / 116) / 7.787, r = u > v ? u : (r - 16 / 116) / 7.787, i *= 95.047, l *= 100, r *= 108.883, [i, l, r];
|
|
511
|
-
};
|
|
512
|
-
c.lab.lch = function(n) {
|
|
513
|
-
const e = n[0], t = n[1], o = n[2];
|
|
514
|
-
let i;
|
|
515
|
-
i = Math.atan2(o, t) * 360 / 2 / Math.PI, i < 0 && (i += 360);
|
|
516
|
-
const r = Math.sqrt(t * t + o * o);
|
|
517
|
-
return [e, r, i];
|
|
518
|
-
};
|
|
519
|
-
c.lch.lab = function(n) {
|
|
520
|
-
const e = n[0], t = n[1], i = n[2] / 360 * 2 * Math.PI, l = t * Math.cos(i), r = t * Math.sin(i);
|
|
521
|
-
return [e, l, r];
|
|
522
|
-
};
|
|
523
|
-
c.rgb.ansi16 = function(n, e = null) {
|
|
524
|
-
const [t, o, i] = n;
|
|
525
|
-
let l = e === null ? c.rgb.hsv(n)[2] : e;
|
|
526
|
-
if (l = Math.round(l / 50), l === 0)
|
|
527
|
-
return 30;
|
|
528
|
-
let r = 30 + (Math.round(i / 255) << 2 | Math.round(o / 255) << 1 | Math.round(t / 255));
|
|
529
|
-
return l === 2 && (r += 60), r;
|
|
530
|
-
};
|
|
531
|
-
c.hsv.ansi16 = function(n) {
|
|
532
|
-
return c.rgb.ansi16(c.hsv.rgb(n), n[2]);
|
|
533
|
-
};
|
|
534
|
-
c.rgb.ansi256 = function(n) {
|
|
535
|
-
const e = n[0], t = n[1], o = n[2];
|
|
536
|
-
return e >> 4 === t >> 4 && t >> 4 === o >> 4 ? e < 8 ? 16 : e > 248 ? 231 : Math.round((e - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(e / 255 * 5) + 6 * Math.round(t / 255 * 5) + Math.round(o / 255 * 5);
|
|
537
|
-
};
|
|
538
|
-
c.ansi16.rgb = function(n) {
|
|
539
|
-
n = n[0];
|
|
540
|
-
let e = n % 10;
|
|
541
|
-
if (e === 0 || e === 7)
|
|
542
|
-
return n > 50 && (e += 3.5), e = e / 10.5 * 255, [e, e, e];
|
|
543
|
-
const t = (Math.trunc(n > 50) + 1) * 0.5, o = (e & 1) * t * 255, i = (e >> 1 & 1) * t * 255, l = (e >> 2 & 1) * t * 255;
|
|
544
|
-
return [o, i, l];
|
|
545
|
-
};
|
|
546
|
-
c.ansi256.rgb = function(n) {
|
|
547
|
-
if (n = n[0], n >= 232) {
|
|
548
|
-
const l = (n - 232) * 10 + 8;
|
|
549
|
-
return [l, l, l];
|
|
550
|
-
}
|
|
551
|
-
n -= 16;
|
|
552
|
-
let e;
|
|
553
|
-
const t = Math.floor(n / 36) / 5 * 255, o = Math.floor((e = n % 36) / 6) / 5 * 255, i = e % 6 / 5 * 255;
|
|
554
|
-
return [t, o, i];
|
|
555
|
-
};
|
|
556
|
-
c.rgb.hex = function(n) {
|
|
557
|
-
const t = (((Math.round(n[0]) & 255) << 16) + ((Math.round(n[1]) & 255) << 8) + (Math.round(n[2]) & 255)).toString(16).toUpperCase();
|
|
558
|
-
return "000000".slice(t.length) + t;
|
|
559
|
-
};
|
|
560
|
-
c.hex.rgb = function(n) {
|
|
561
|
-
const e = n.toString(16).match(/[a-f\d]{6}|[a-f\d]{3}/i);
|
|
562
|
-
if (!e)
|
|
563
|
-
return [0, 0, 0];
|
|
564
|
-
let t = e[0];
|
|
565
|
-
e[0].length === 3 && (t = [...t].map((a) => a + a).join(""));
|
|
566
|
-
const o = Number.parseInt(t, 16), i = o >> 16 & 255, l = o >> 8 & 255, r = o & 255;
|
|
567
|
-
return [i, l, r];
|
|
568
|
-
};
|
|
569
|
-
c.rgb.hcg = function(n) {
|
|
570
|
-
const e = n[0] / 255, t = n[1] / 255, o = n[2] / 255, i = Math.max(Math.max(e, t), o), l = Math.min(Math.min(e, t), o), r = i - l;
|
|
571
|
-
let a;
|
|
572
|
-
const s = r < 1 ? l / (1 - r) : 0;
|
|
573
|
-
return r <= 0 ? a = 0 : i === e ? a = (t - o) / r % 6 : i === t ? a = 2 + (o - e) / r : a = 4 + (e - t) / r, a /= 6, a %= 1, [a * 360, r * 100, s * 100];
|
|
574
|
-
};
|
|
575
|
-
c.hsl.hcg = function(n) {
|
|
576
|
-
const e = n[1] / 100, t = n[2] / 100, o = t < 0.5 ? 2 * e * t : 2 * e * (1 - t);
|
|
577
|
-
let i = 0;
|
|
578
|
-
return o < 1 && (i = (t - 0.5 * o) / (1 - o)), [n[0], o * 100, i * 100];
|
|
579
|
-
};
|
|
580
|
-
c.hsv.hcg = function(n) {
|
|
581
|
-
const e = n[1] / 100, t = n[2] / 100, o = e * t;
|
|
582
|
-
let i = 0;
|
|
583
|
-
return o < 1 && (i = (t - o) / (1 - o)), [n[0], o * 100, i * 100];
|
|
584
|
-
};
|
|
585
|
-
c.hcg.rgb = function(n) {
|
|
586
|
-
const e = n[0] / 360, t = n[1] / 100, o = n[2] / 100;
|
|
587
|
-
if (t === 0)
|
|
588
|
-
return [o * 255, o * 255, o * 255];
|
|
589
|
-
const i = [0, 0, 0], l = e % 1 * 6, r = l % 1, a = 1 - r;
|
|
590
|
-
let s = 0;
|
|
591
|
-
switch (Math.floor(l)) {
|
|
592
|
-
case 0: {
|
|
593
|
-
i[0] = 1, i[1] = r, i[2] = 0;
|
|
594
|
-
break;
|
|
595
|
-
}
|
|
596
|
-
case 1: {
|
|
597
|
-
i[0] = a, i[1] = 1, i[2] = 0;
|
|
598
|
-
break;
|
|
599
|
-
}
|
|
600
|
-
case 2: {
|
|
601
|
-
i[0] = 0, i[1] = 1, i[2] = r;
|
|
602
|
-
break;
|
|
603
|
-
}
|
|
604
|
-
case 3: {
|
|
605
|
-
i[0] = 0, i[1] = a, i[2] = 1;
|
|
606
|
-
break;
|
|
607
|
-
}
|
|
608
|
-
case 4: {
|
|
609
|
-
i[0] = r, i[1] = 0, i[2] = 1;
|
|
610
|
-
break;
|
|
611
|
-
}
|
|
612
|
-
default:
|
|
613
|
-
i[0] = 1, i[1] = 0, i[2] = a;
|
|
614
|
-
}
|
|
615
|
-
return s = (1 - t) * o, [
|
|
616
|
-
(t * i[0] + s) * 255,
|
|
617
|
-
(t * i[1] + s) * 255,
|
|
618
|
-
(t * i[2] + s) * 255
|
|
619
|
-
];
|
|
620
|
-
};
|
|
621
|
-
c.hcg.hsv = function(n) {
|
|
622
|
-
const e = n[1] / 100, t = n[2] / 100, o = e + t * (1 - e);
|
|
623
|
-
let i = 0;
|
|
624
|
-
return o > 0 && (i = e / o), [n[0], i * 100, o * 100];
|
|
625
|
-
};
|
|
626
|
-
c.hcg.hsl = function(n) {
|
|
627
|
-
const e = n[1] / 100, o = n[2] / 100 * (1 - e) + 0.5 * e;
|
|
628
|
-
let i = 0;
|
|
629
|
-
return o > 0 && o < 0.5 ? i = e / (2 * o) : o >= 0.5 && o < 1 && (i = e / (2 * (1 - o))), [n[0], i * 100, o * 100];
|
|
630
|
-
};
|
|
631
|
-
c.hcg.hwb = function(n) {
|
|
632
|
-
const e = n[1] / 100, t = n[2] / 100, o = e + t * (1 - e);
|
|
633
|
-
return [n[0], (o - e) * 100, (1 - o) * 100];
|
|
634
|
-
};
|
|
635
|
-
c.hwb.hcg = function(n) {
|
|
636
|
-
const e = n[1] / 100, o = 1 - n[2] / 100, i = o - e;
|
|
637
|
-
let l = 0;
|
|
638
|
-
return i < 1 && (l = (o - i) / (1 - i)), [n[0], i * 100, l * 100];
|
|
639
|
-
};
|
|
640
|
-
c.apple.rgb = function(n) {
|
|
641
|
-
return [n[0] / 65535 * 255, n[1] / 65535 * 255, n[2] / 65535 * 255];
|
|
642
|
-
};
|
|
643
|
-
c.rgb.apple = function(n) {
|
|
644
|
-
return [n[0] / 255 * 65535, n[1] / 255 * 65535, n[2] / 255 * 65535];
|
|
645
|
-
};
|
|
646
|
-
c.gray.rgb = function(n) {
|
|
647
|
-
return [n[0] / 100 * 255, n[0] / 100 * 255, n[0] / 100 * 255];
|
|
648
|
-
};
|
|
649
|
-
c.gray.hsl = function(n) {
|
|
650
|
-
return [0, 0, n[0]];
|
|
651
|
-
};
|
|
652
|
-
c.gray.hsv = c.gray.hsl;
|
|
653
|
-
c.gray.hwb = function(n) {
|
|
654
|
-
return [0, 100, n[0]];
|
|
655
|
-
};
|
|
656
|
-
c.gray.cmyk = function(n) {
|
|
657
|
-
return [0, 0, 0, n[0]];
|
|
658
|
-
};
|
|
659
|
-
c.gray.lab = function(n) {
|
|
660
|
-
return [n[0], 0, 0];
|
|
661
|
-
};
|
|
662
|
-
c.gray.hex = function(n) {
|
|
663
|
-
const e = Math.round(n[0] / 100 * 255) & 255, o = ((e << 16) + (e << 8) + e).toString(16).toUpperCase();
|
|
664
|
-
return "000000".slice(o.length) + o;
|
|
665
|
-
};
|
|
666
|
-
c.rgb.gray = function(n) {
|
|
667
|
-
return [(n[0] + n[1] + n[2]) / 3 / 255 * 100];
|
|
668
|
-
};
|
|
669
|
-
function Q() {
|
|
670
|
-
const n = {}, e = Object.keys(c);
|
|
671
|
-
for (let { length: t } = e, o = 0; o < t; o++)
|
|
672
|
-
n[e[o]] = {
|
|
673
|
-
// http://jsperf.com/1-vs-infinity
|
|
674
|
-
// micro-opt, but this is simple.
|
|
675
|
-
distance: -1,
|
|
676
|
-
parent: null
|
|
677
|
-
};
|
|
678
|
-
return n;
|
|
679
|
-
}
|
|
680
|
-
function X(n) {
|
|
681
|
-
const e = Q(), t = [n];
|
|
682
|
-
for (e[n].distance = 0; t.length > 0; ) {
|
|
683
|
-
const o = t.pop(), i = Object.keys(c[o]);
|
|
684
|
-
for (let { length: l } = i, r = 0; r < l; r++) {
|
|
685
|
-
const a = i[r], s = e[a];
|
|
686
|
-
s.distance === -1 && (s.distance = e[o].distance + 1, s.parent = o, t.unshift(a));
|
|
687
|
-
}
|
|
688
|
-
}
|
|
689
|
-
return e;
|
|
690
|
-
}
|
|
691
|
-
function Z(n, e) {
|
|
692
|
-
return function(t) {
|
|
693
|
-
return e(n(t));
|
|
694
|
-
};
|
|
695
|
-
}
|
|
696
|
-
function nn(n, e) {
|
|
697
|
-
const t = [e[n].parent, n];
|
|
698
|
-
let o = c[e[n].parent][n], i = e[n].parent;
|
|
699
|
-
for (; e[i].parent; )
|
|
700
|
-
t.unshift(e[i].parent), o = Z(c[e[i].parent][i], o), i = e[i].parent;
|
|
701
|
-
return o.conversion = t, o;
|
|
702
|
-
}
|
|
703
|
-
function en(n) {
|
|
704
|
-
const e = X(n), t = {}, o = Object.keys(e);
|
|
705
|
-
for (let { length: i } = o, l = 0; l < i; l++) {
|
|
706
|
-
const r = o[l];
|
|
707
|
-
e[r].parent !== null && (t[r] = nn(r, e));
|
|
708
|
-
}
|
|
709
|
-
return t;
|
|
710
|
-
}
|
|
711
|
-
const b = {}, tn = Object.keys(c);
|
|
712
|
-
function on(n) {
|
|
713
|
-
const e = function(...t) {
|
|
714
|
-
const o = t[0];
|
|
715
|
-
return o == null ? o : (o.length > 1 && (t = o), n(t));
|
|
716
|
-
};
|
|
717
|
-
return "conversion" in n && (e.conversion = n.conversion), e;
|
|
718
|
-
}
|
|
719
|
-
function rn(n) {
|
|
720
|
-
const e = function(...t) {
|
|
721
|
-
const o = t[0];
|
|
722
|
-
if (o == null)
|
|
723
|
-
return o;
|
|
724
|
-
o.length > 1 && (t = o);
|
|
725
|
-
const i = n(t);
|
|
726
|
-
if (typeof i == "object")
|
|
727
|
-
for (let { length: l } = i, r = 0; r < l; r++)
|
|
728
|
-
i[r] = Math.round(i[r]);
|
|
729
|
-
return i;
|
|
730
|
-
};
|
|
731
|
-
return "conversion" in n && (e.conversion = n.conversion), e;
|
|
732
|
-
}
|
|
733
|
-
for (const n of tn) {
|
|
734
|
-
b[n] = {}, Object.defineProperty(b[n], "channels", { value: c[n].channels }), Object.defineProperty(b[n], "labels", { value: c[n].labels });
|
|
735
|
-
const e = en(n), t = Object.keys(e);
|
|
736
|
-
for (const o of t) {
|
|
737
|
-
const i = e[o];
|
|
738
|
-
b[n][o] = rn(i), b[n][o].raw = on(i);
|
|
739
|
-
}
|
|
740
|
-
}
|
|
741
|
-
const K = [
|
|
742
|
-
// To be honest, I don't really feel like keyword belongs in color convert, but eh.
|
|
743
|
-
"keyword",
|
|
744
|
-
// Gray conflicts with some method names, and has its own method defined.
|
|
745
|
-
"gray",
|
|
746
|
-
// Shouldn't really be in color-convert either...
|
|
747
|
-
"hex"
|
|
748
|
-
], I = {};
|
|
749
|
-
for (const n of Object.keys(b))
|
|
750
|
-
I[[...b[n].labels].sort().join("")] = n;
|
|
751
|
-
const C = {};
|
|
752
|
-
function h(n, e) {
|
|
753
|
-
if (!(this instanceof h))
|
|
754
|
-
return new h(n, e);
|
|
755
|
-
if (e && e in K && (e = null), e && !(e in b))
|
|
756
|
-
throw new Error("Unknown model: " + e);
|
|
757
|
-
let t, o;
|
|
758
|
-
if (n == null)
|
|
759
|
-
this.model = "rgb", this.color = [0, 0, 0], this.valpha = 1;
|
|
760
|
-
else if (n instanceof h)
|
|
761
|
-
this.model = n.model, this.color = [...n.color], this.valpha = n.valpha;
|
|
762
|
-
else if (typeof n == "string") {
|
|
763
|
-
const i = y.get(n);
|
|
764
|
-
if (i === null)
|
|
765
|
-
throw new Error("Unable to parse color from string: " + n);
|
|
766
|
-
this.model = i.model, o = b[this.model].channels, this.color = i.value.slice(0, o), this.valpha = typeof i.value[o] == "number" ? i.value[o] : 1;
|
|
767
|
-
} else if (n.length > 0) {
|
|
768
|
-
this.model = e || "rgb", o = b[this.model].channels;
|
|
769
|
-
const i = Array.prototype.slice.call(n, 0, o);
|
|
770
|
-
this.color = R(i, o), this.valpha = typeof n[o] == "number" ? n[o] : 1;
|
|
771
|
-
} else if (typeof n == "number")
|
|
772
|
-
this.model = "rgb", this.color = [
|
|
773
|
-
n >> 16 & 255,
|
|
774
|
-
n >> 8 & 255,
|
|
775
|
-
n & 255
|
|
776
|
-
], this.valpha = 1;
|
|
777
|
-
else {
|
|
778
|
-
this.valpha = 1;
|
|
779
|
-
const i = Object.keys(n);
|
|
780
|
-
"alpha" in n && (i.splice(i.indexOf("alpha"), 1), this.valpha = typeof n.alpha == "number" ? n.alpha : 0);
|
|
781
|
-
const l = i.sort().join("");
|
|
782
|
-
if (!(l in I))
|
|
783
|
-
throw new Error("Unable to parse color from object: " + JSON.stringify(n));
|
|
784
|
-
this.model = I[l];
|
|
785
|
-
const { labels: r } = b[this.model], a = [];
|
|
786
|
-
for (t = 0; t < r.length; t++)
|
|
787
|
-
a.push(n[r[t]]);
|
|
788
|
-
this.color = R(a);
|
|
789
|
-
}
|
|
790
|
-
if (C[this.model])
|
|
791
|
-
for (o = b[this.model].channels, t = 0; t < o; t++) {
|
|
792
|
-
const i = C[this.model][t];
|
|
793
|
-
i && (this.color[t] = i(this.color[t]));
|
|
794
|
-
}
|
|
795
|
-
this.valpha = Math.max(0, Math.min(1, this.valpha)), Object.freeze && Object.freeze(this);
|
|
796
|
-
}
|
|
797
|
-
h.prototype = {
|
|
798
|
-
toString() {
|
|
799
|
-
return this.string();
|
|
800
|
-
},
|
|
801
|
-
toJSON() {
|
|
802
|
-
return this[this.model]();
|
|
803
|
-
},
|
|
804
|
-
string(n) {
|
|
805
|
-
let e = this.model in y.to ? this : this.rgb();
|
|
806
|
-
e = e.round(typeof n == "number" ? n : 1);
|
|
807
|
-
const t = e.valpha === 1 ? e.color : [...e.color, this.valpha];
|
|
808
|
-
return y.to[e.model](...t);
|
|
809
|
-
},
|
|
810
|
-
percentString(n) {
|
|
811
|
-
const e = this.rgb().round(typeof n == "number" ? n : 1), t = e.valpha === 1 ? e.color : [...e.color, this.valpha];
|
|
812
|
-
return y.to.rgb.percent(...t);
|
|
813
|
-
},
|
|
814
|
-
array() {
|
|
815
|
-
return this.valpha === 1 ? [...this.color] : [...this.color, this.valpha];
|
|
816
|
-
},
|
|
817
|
-
object() {
|
|
818
|
-
const n = {}, { channels: e } = b[this.model], { labels: t } = b[this.model];
|
|
819
|
-
for (let o = 0; o < e; o++)
|
|
820
|
-
n[t[o]] = this.color[o];
|
|
821
|
-
return this.valpha !== 1 && (n.alpha = this.valpha), n;
|
|
822
|
-
},
|
|
823
|
-
unitArray() {
|
|
824
|
-
const n = this.rgb().color;
|
|
825
|
-
return n[0] /= 255, n[1] /= 255, n[2] /= 255, this.valpha !== 1 && n.push(this.valpha), n;
|
|
826
|
-
},
|
|
827
|
-
unitObject() {
|
|
828
|
-
const n = this.rgb().object();
|
|
829
|
-
return n.r /= 255, n.g /= 255, n.b /= 255, this.valpha !== 1 && (n.alpha = this.valpha), n;
|
|
830
|
-
},
|
|
831
|
-
round(n) {
|
|
832
|
-
return n = Math.max(n || 0, 0), new h([...this.color.map(an(n)), this.valpha], this.model);
|
|
833
|
-
},
|
|
834
|
-
alpha(n) {
|
|
835
|
-
return n !== void 0 ? new h([...this.color, Math.max(0, Math.min(1, n))], this.model) : this.valpha;
|
|
836
|
-
},
|
|
837
|
-
// Rgb
|
|
838
|
-
red: d("rgb", 0, f(255)),
|
|
839
|
-
green: d("rgb", 1, f(255)),
|
|
840
|
-
blue: d("rgb", 2, f(255)),
|
|
841
|
-
hue: d(["hsl", "hsv", "hsl", "hwb", "hcg"], 0, (n) => (n % 360 + 360) % 360),
|
|
842
|
-
saturationl: d("hsl", 1, f(100)),
|
|
843
|
-
lightness: d("hsl", 2, f(100)),
|
|
844
|
-
saturationv: d("hsv", 1, f(100)),
|
|
845
|
-
value: d("hsv", 2, f(100)),
|
|
846
|
-
chroma: d("hcg", 1, f(100)),
|
|
847
|
-
gray: d("hcg", 2, f(100)),
|
|
848
|
-
white: d("hwb", 1, f(100)),
|
|
849
|
-
wblack: d("hwb", 2, f(100)),
|
|
850
|
-
cyan: d("cmyk", 0, f(100)),
|
|
851
|
-
magenta: d("cmyk", 1, f(100)),
|
|
852
|
-
yellow: d("cmyk", 2, f(100)),
|
|
853
|
-
black: d("cmyk", 3, f(100)),
|
|
854
|
-
x: d("xyz", 0, f(95.047)),
|
|
855
|
-
y: d("xyz", 1, f(100)),
|
|
856
|
-
z: d("xyz", 2, f(108.833)),
|
|
857
|
-
l: d("lab", 0, f(100)),
|
|
858
|
-
a: d("lab", 1),
|
|
859
|
-
b: d("lab", 2),
|
|
860
|
-
keyword(n) {
|
|
861
|
-
return n !== void 0 ? new h(n) : b[this.model].keyword(this.color);
|
|
862
|
-
},
|
|
863
|
-
hex(n) {
|
|
864
|
-
return n !== void 0 ? new h(n) : y.to.hex(...this.rgb().round().color);
|
|
865
|
-
},
|
|
866
|
-
hexa(n) {
|
|
867
|
-
if (n !== void 0)
|
|
868
|
-
return new h(n);
|
|
869
|
-
const e = this.rgb().round().color;
|
|
870
|
-
let t = Math.round(this.valpha * 255).toString(16).toUpperCase();
|
|
871
|
-
return t.length === 1 && (t = "0" + t), y.to.hex(...e) + t;
|
|
872
|
-
},
|
|
873
|
-
rgbNumber() {
|
|
874
|
-
const n = this.rgb().color;
|
|
875
|
-
return (n[0] & 255) << 16 | (n[1] & 255) << 8 | n[2] & 255;
|
|
876
|
-
},
|
|
877
|
-
luminosity() {
|
|
878
|
-
const n = this.rgb().color, e = [];
|
|
879
|
-
for (const [t, o] of n.entries()) {
|
|
880
|
-
const i = o / 255;
|
|
881
|
-
e[t] = i <= 0.04045 ? i / 12.92 : ((i + 0.055) / 1.055) ** 2.4;
|
|
882
|
-
}
|
|
883
|
-
return 0.2126 * e[0] + 0.7152 * e[1] + 0.0722 * e[2];
|
|
884
|
-
},
|
|
885
|
-
contrast(n) {
|
|
886
|
-
const e = this.luminosity(), t = n.luminosity();
|
|
887
|
-
return e > t ? (e + 0.05) / (t + 0.05) : (t + 0.05) / (e + 0.05);
|
|
888
|
-
},
|
|
889
|
-
level(n) {
|
|
890
|
-
const e = this.contrast(n);
|
|
891
|
-
return e >= 7 ? "AAA" : e >= 4.5 ? "AA" : "";
|
|
892
|
-
},
|
|
893
|
-
isDark() {
|
|
894
|
-
const n = this.rgb().color;
|
|
895
|
-
return (n[0] * 2126 + n[1] * 7152 + n[2] * 722) / 1e4 < 128;
|
|
896
|
-
},
|
|
897
|
-
isLight() {
|
|
898
|
-
return !this.isDark();
|
|
899
|
-
},
|
|
900
|
-
negate() {
|
|
901
|
-
const n = this.rgb();
|
|
902
|
-
for (let e = 0; e < 3; e++)
|
|
903
|
-
n.color[e] = 255 - n.color[e];
|
|
904
|
-
return n;
|
|
905
|
-
},
|
|
906
|
-
lighten(n) {
|
|
907
|
-
const e = this.hsl();
|
|
908
|
-
return e.color[2] += e.color[2] * n, e;
|
|
909
|
-
},
|
|
910
|
-
darken(n) {
|
|
911
|
-
const e = this.hsl();
|
|
912
|
-
return e.color[2] -= e.color[2] * n, e;
|
|
913
|
-
},
|
|
914
|
-
saturate(n) {
|
|
915
|
-
const e = this.hsl();
|
|
916
|
-
return e.color[1] += e.color[1] * n, e;
|
|
917
|
-
},
|
|
918
|
-
desaturate(n) {
|
|
919
|
-
const e = this.hsl();
|
|
920
|
-
return e.color[1] -= e.color[1] * n, e;
|
|
921
|
-
},
|
|
922
|
-
whiten(n) {
|
|
923
|
-
const e = this.hwb();
|
|
924
|
-
return e.color[1] += e.color[1] * n, e;
|
|
925
|
-
},
|
|
926
|
-
blacken(n) {
|
|
927
|
-
const e = this.hwb();
|
|
928
|
-
return e.color[2] += e.color[2] * n, e;
|
|
929
|
-
},
|
|
930
|
-
grayscale() {
|
|
931
|
-
const n = this.rgb().color, e = n[0] * 0.3 + n[1] * 0.59 + n[2] * 0.11;
|
|
932
|
-
return h.rgb(e, e, e);
|
|
933
|
-
},
|
|
934
|
-
fade(n) {
|
|
935
|
-
return this.alpha(this.valpha - this.valpha * n);
|
|
936
|
-
},
|
|
937
|
-
opaquer(n) {
|
|
938
|
-
return this.alpha(this.valpha + this.valpha * n);
|
|
939
|
-
},
|
|
940
|
-
rotate(n) {
|
|
941
|
-
const e = this.hsl();
|
|
942
|
-
let t = e.color[0];
|
|
943
|
-
return t = (t + n) % 360, t = t < 0 ? 360 + t : t, e.color[0] = t, e;
|
|
944
|
-
},
|
|
945
|
-
mix(n, e) {
|
|
946
|
-
if (!n || !n.rgb)
|
|
947
|
-
throw new Error('Argument to "mix" was not a Color instance, but rather an instance of ' + typeof n);
|
|
948
|
-
const t = n.rgb(), o = this.rgb(), i = e === void 0 ? 0.5 : e, l = 2 * i - 1, r = t.alpha() - o.alpha(), a = ((l * r === -1 ? l : (l + r) / (1 + l * r)) + 1) / 2, s = 1 - a;
|
|
949
|
-
return h.rgb(
|
|
950
|
-
a * t.red() + s * o.red(),
|
|
951
|
-
a * t.green() + s * o.green(),
|
|
952
|
-
a * t.blue() + s * o.blue(),
|
|
953
|
-
t.alpha() * i + o.alpha() * (1 - i)
|
|
954
|
-
);
|
|
955
|
-
}
|
|
956
|
-
};
|
|
957
|
-
for (const n of Object.keys(b)) {
|
|
958
|
-
if (K.includes(n))
|
|
959
|
-
continue;
|
|
960
|
-
const { channels: e } = b[n];
|
|
961
|
-
h.prototype[n] = function(...t) {
|
|
962
|
-
return this.model === n ? new h(this) : t.length > 0 ? new h(t, n) : new h([...sn(b[this.model][n].raw(this.color)), this.valpha], n);
|
|
963
|
-
}, h[n] = function(...t) {
|
|
964
|
-
let o = t[0];
|
|
965
|
-
return typeof o == "number" && (o = R(t, e)), new h(o, n);
|
|
966
|
-
};
|
|
967
|
-
}
|
|
968
|
-
function ln(n, e) {
|
|
969
|
-
return Number(n.toFixed(e));
|
|
970
|
-
}
|
|
971
|
-
function an(n) {
|
|
972
|
-
return function(e) {
|
|
973
|
-
return ln(e, n);
|
|
974
|
-
};
|
|
975
|
-
}
|
|
976
|
-
function d(n, e, t) {
|
|
977
|
-
n = Array.isArray(n) ? n : [n];
|
|
978
|
-
for (const o of n)
|
|
979
|
-
(C[o] || (C[o] = []))[e] = t;
|
|
980
|
-
return n = n[0], function(o) {
|
|
981
|
-
let i;
|
|
982
|
-
return o !== void 0 ? (t && (o = t(o)), i = this[n](), i.color[e] = o, i) : (i = this[n]().color[e], t && (i = t(i)), i);
|
|
983
|
-
};
|
|
984
|
-
}
|
|
985
|
-
function f(n) {
|
|
986
|
-
return function(e) {
|
|
987
|
-
return Math.max(0, Math.min(n, e));
|
|
988
|
-
};
|
|
989
|
-
}
|
|
990
|
-
function sn(n) {
|
|
991
|
-
return Array.isArray(n) ? n : [n];
|
|
992
|
-
}
|
|
993
|
-
function R(n, e) {
|
|
994
|
-
for (let t = 0; t < e; t++)
|
|
995
|
-
typeof n[t] != "number" && (n[t] = 0);
|
|
996
|
-
return n;
|
|
997
|
-
}
|
|
998
|
-
function W(n) {
|
|
1
|
+
import { language_script_pairs as E, get_country_name as A, get_multiline_name as N } from "@protomaps/basemaps";
|
|
2
|
+
import f from "color";
|
|
3
|
+
function j(n) {
|
|
999
4
|
return !!(typeof n == "string" && (n.startsWith("#") || n.startsWith("rgb(") || n.startsWith("rgba(") || n.startsWith("hsl(") || n.startsWith("hwb(")));
|
|
1000
5
|
}
|
|
1001
|
-
function
|
|
6
|
+
function S(n, i) {
|
|
1002
7
|
if (!(typeof n == "string" || typeof n == "number" || typeof n == "boolean" || n === null || n === void 0)) {
|
|
1003
8
|
if (Array.isArray(n))
|
|
1004
|
-
for (let
|
|
1005
|
-
const o = n[
|
|
1006
|
-
if (
|
|
1007
|
-
n[
|
|
9
|
+
for (let e = 0; e < n.length; e += 1) {
|
|
10
|
+
const o = n[e];
|
|
11
|
+
if (j(o)) {
|
|
12
|
+
n[e] = i(o);
|
|
1008
13
|
continue;
|
|
1009
14
|
}
|
|
1010
|
-
|
|
15
|
+
S(o, i);
|
|
1011
16
|
}
|
|
1012
17
|
else if (typeof n == "object") {
|
|
1013
|
-
const
|
|
1014
|
-
for (const
|
|
1015
|
-
const
|
|
1016
|
-
if (
|
|
1017
|
-
|
|
18
|
+
const e = n, o = Object.keys(n);
|
|
19
|
+
for (const r of o) {
|
|
20
|
+
const c = e[r];
|
|
21
|
+
if (j(c)) {
|
|
22
|
+
e[r] = i(c);
|
|
1018
23
|
continue;
|
|
1019
24
|
}
|
|
1020
|
-
|
|
25
|
+
S(c, i);
|
|
1021
26
|
}
|
|
1022
27
|
}
|
|
1023
28
|
}
|
|
1024
29
|
}
|
|
1025
|
-
function
|
|
1026
|
-
const
|
|
30
|
+
function I(n, i) {
|
|
31
|
+
const e = n / 255, o = e + (1 - e) * e * i;
|
|
1027
32
|
return Math.max(0, Math.min(255, o * 255));
|
|
1028
33
|
}
|
|
1029
|
-
function
|
|
1030
|
-
return n.map((
|
|
34
|
+
function D(n, i) {
|
|
35
|
+
return n.map((e) => I(e, i));
|
|
1031
36
|
}
|
|
1032
|
-
function
|
|
1033
|
-
const o = Math.max(-0.99, Math.min(0.99,
|
|
1034
|
-
return Math.round(Math.max(0, Math.min(255,
|
|
37
|
+
function W(n, i, e = 127) {
|
|
38
|
+
const o = Math.max(-0.99, Math.min(0.99, i)), r = o < 0 ? o + 1 : 1 / (1 - o), c = e + r * (n - e);
|
|
39
|
+
return Math.round(Math.max(0, Math.min(255, c)));
|
|
1035
40
|
}
|
|
1036
|
-
function
|
|
1037
|
-
return n.map((o) =>
|
|
41
|
+
function $(n, i, e = 127) {
|
|
42
|
+
return n.map((o) => W(o, i, e));
|
|
1038
43
|
}
|
|
1039
|
-
function
|
|
1040
|
-
return 255 * (n / 255) * (
|
|
44
|
+
function F(n, i, e = 1) {
|
|
45
|
+
return 255 * (n / 255) * (i / 255) * e + n / 255 * (1 - e) * 255;
|
|
1041
46
|
}
|
|
1042
|
-
function
|
|
1043
|
-
return n.map((o,
|
|
47
|
+
function P(n, i, e = 1) {
|
|
48
|
+
return n.map((o, r) => F(n[r], i[r], e));
|
|
1044
49
|
}
|
|
1045
|
-
const
|
|
50
|
+
const U = `[
|
|
1046
51
|
{
|
|
1047
52
|
"id": "background",
|
|
1048
53
|
"type": "background",
|
|
1049
54
|
"layout": {"visibility": "visible"},
|
|
1050
|
-
"paint": {"background-color": "
|
|
55
|
+
"paint": {"background-color": "rgb(135, 199, 236)"}
|
|
1051
56
|
},
|
|
1052
57
|
{
|
|
1053
58
|
"id": "earth",
|
|
1054
59
|
"type": "fill",
|
|
1055
|
-
"source": "
|
|
60
|
+
"source": "<BMK_BM_SRC>",
|
|
1056
61
|
"source-layer": "earth",
|
|
1057
62
|
"filter": ["==", "$type", "Polygon"],
|
|
1058
63
|
"layout": {"visibility": "visible"},
|
|
@@ -1061,7 +66,7 @@ const fn = `[
|
|
|
1061
66
|
{
|
|
1062
67
|
"id": "landcover",
|
|
1063
68
|
"type": "fill",
|
|
1064
|
-
"source": "
|
|
69
|
+
"source": "<BMK_BM_SRC>",
|
|
1065
70
|
"source-layer": "landcover",
|
|
1066
71
|
"filter": [
|
|
1067
72
|
"all",
|
|
@@ -1111,7 +116,7 @@ const fn = `[
|
|
|
1111
116
|
{
|
|
1112
117
|
"id": "landuse_residential",
|
|
1113
118
|
"type": "fill",
|
|
1114
|
-
"source": "
|
|
119
|
+
"source": "<BMK_BM_SRC>",
|
|
1115
120
|
"source-layer": "landuse",
|
|
1116
121
|
"filter": ["all", ["==", "kind", "residential"]],
|
|
1117
122
|
"layout": {"visibility": "visible"},
|
|
@@ -1123,7 +128,7 @@ const fn = `[
|
|
|
1123
128
|
{
|
|
1124
129
|
"id": "landuse_urban_green",
|
|
1125
130
|
"type": "fill",
|
|
1126
|
-
"source": "
|
|
131
|
+
"source": "<BMK_BM_SRC>",
|
|
1127
132
|
"source-layer": "landuse",
|
|
1128
133
|
"filter": ["in", "kind", "allotments", "village_green", "playground"],
|
|
1129
134
|
"layout": {"visibility": "visible"},
|
|
@@ -1132,7 +137,7 @@ const fn = `[
|
|
|
1132
137
|
{
|
|
1133
138
|
"id": "landuse-sand",
|
|
1134
139
|
"type": "fill",
|
|
1135
|
-
"source": "
|
|
140
|
+
"source": "<BMK_BM_SRC>",
|
|
1136
141
|
"source-layer": "landuse",
|
|
1137
142
|
"filter": ["all", ["==", "kind", "sand"]],
|
|
1138
143
|
"layout": {"visibility": "visible"},
|
|
@@ -1144,7 +149,7 @@ const fn = `[
|
|
|
1144
149
|
{
|
|
1145
150
|
"id": "landuse_bare_rock",
|
|
1146
151
|
"type": "fill",
|
|
1147
|
-
"source": "
|
|
152
|
+
"source": "<BMK_BM_SRC>",
|
|
1148
153
|
"source-layer": "landuse",
|
|
1149
154
|
"filter": ["all", ["in", "kind", "bare_rock"]],
|
|
1150
155
|
"layout": {"visibility": "visible"},
|
|
@@ -1153,7 +158,7 @@ const fn = `[
|
|
|
1153
158
|
{
|
|
1154
159
|
"id": "landuse_park",
|
|
1155
160
|
"type": "fill",
|
|
1156
|
-
"source": "
|
|
161
|
+
"source": "<BMK_BM_SRC>",
|
|
1157
162
|
"source-layer": "landuse",
|
|
1158
163
|
"filter": [
|
|
1159
164
|
"all",
|
|
@@ -1204,7 +209,7 @@ const fn = `[
|
|
|
1204
209
|
{
|
|
1205
210
|
"id": "landuse_farmland",
|
|
1206
211
|
"type": "fill",
|
|
1207
|
-
"source": "
|
|
212
|
+
"source": "<BMK_BM_SRC>",
|
|
1208
213
|
"source-layer": "landuse",
|
|
1209
214
|
"filter": ["all", ["==", "kind", "farmland"]],
|
|
1210
215
|
"layout": {"visibility": "visible"},
|
|
@@ -1213,7 +218,7 @@ const fn = `[
|
|
|
1213
218
|
{
|
|
1214
219
|
"id": "landuse_pitch",
|
|
1215
220
|
"type": "fill",
|
|
1216
|
-
"source": "
|
|
221
|
+
"source": "<BMK_BM_SRC>",
|
|
1217
222
|
"source-layer": "landuse",
|
|
1218
223
|
"filter": ["all", ["==", "kind", "pitch"]],
|
|
1219
224
|
"layout": {"visibility": "visible"},
|
|
@@ -1222,7 +227,7 @@ const fn = `[
|
|
|
1222
227
|
{
|
|
1223
228
|
"id": "landuse_military",
|
|
1224
229
|
"type": "fill",
|
|
1225
|
-
"source": "
|
|
230
|
+
"source": "<BMK_BM_SRC>",
|
|
1226
231
|
"source-layer": "landuse",
|
|
1227
232
|
"filter": ["all", ["==", "kind", "military"]],
|
|
1228
233
|
"layout": {"visibility": "visible"},
|
|
@@ -1231,7 +236,7 @@ const fn = `[
|
|
|
1231
236
|
{
|
|
1232
237
|
"id": "landuse_wood-forest",
|
|
1233
238
|
"type": "fill",
|
|
1234
|
-
"source": "
|
|
239
|
+
"source": "<BMK_BM_SRC>",
|
|
1235
240
|
"source-layer": "landuse",
|
|
1236
241
|
"filter": ["all", ["in", "kind", "forest", "wood"]],
|
|
1237
242
|
"layout": {"visibility": "visible"},
|
|
@@ -1243,7 +248,7 @@ const fn = `[
|
|
|
1243
248
|
{
|
|
1244
249
|
"id": "landuse_hospital",
|
|
1245
250
|
"type": "fill",
|
|
1246
|
-
"source": "
|
|
251
|
+
"source": "<BMK_BM_SRC>",
|
|
1247
252
|
"source-layer": "landuse",
|
|
1248
253
|
"filter": ["==", "kind", "hospital"],
|
|
1249
254
|
"layout": {"visibility": "visible"},
|
|
@@ -1252,7 +257,7 @@ const fn = `[
|
|
|
1252
257
|
{
|
|
1253
258
|
"id": "landuse_industrial",
|
|
1254
259
|
"type": "fill",
|
|
1255
|
-
"source": "
|
|
260
|
+
"source": "<BMK_BM_SRC>",
|
|
1256
261
|
"source-layer": "landuse",
|
|
1257
262
|
"filter": ["==", "kind", "industrial"],
|
|
1258
263
|
"layout": {"visibility": "visible"},
|
|
@@ -1261,7 +266,7 @@ const fn = `[
|
|
|
1261
266
|
{
|
|
1262
267
|
"id": "landuse_school",
|
|
1263
268
|
"type": "fill",
|
|
1264
|
-
"source": "
|
|
269
|
+
"source": "<BMK_BM_SRC>",
|
|
1265
270
|
"source-layer": "landuse",
|
|
1266
271
|
"filter": ["in", "kind", "school", "university", "college"],
|
|
1267
272
|
"layout": {"visibility": "visible"},
|
|
@@ -1270,7 +275,7 @@ const fn = `[
|
|
|
1270
275
|
{
|
|
1271
276
|
"id": "landuse_zoo",
|
|
1272
277
|
"type": "fill",
|
|
1273
|
-
"source": "
|
|
278
|
+
"source": "<BMK_BM_SRC>",
|
|
1274
279
|
"source-layer": "landuse",
|
|
1275
280
|
"filter": ["in", "kind", "zoo"],
|
|
1276
281
|
"layout": {"visibility": "visible"},
|
|
@@ -1279,7 +284,7 @@ const fn = `[
|
|
|
1279
284
|
{
|
|
1280
285
|
"id": "landuse_aerodrome",
|
|
1281
286
|
"type": "fill",
|
|
1282
|
-
"source": "
|
|
287
|
+
"source": "<BMK_BM_SRC>",
|
|
1283
288
|
"source-layer": "landuse",
|
|
1284
289
|
"filter": ["in", "kind", "aerodrome"],
|
|
1285
290
|
"layout": {"visibility": "visible"},
|
|
@@ -1288,7 +293,7 @@ const fn = `[
|
|
|
1288
293
|
{
|
|
1289
294
|
"id": "roads_runway",
|
|
1290
295
|
"type": "line",
|
|
1291
|
-
"source": "
|
|
296
|
+
"source": "<BMK_BM_SRC>",
|
|
1292
297
|
"source-layer": "roads",
|
|
1293
298
|
"filter": ["==", "kind_detail", "runway"],
|
|
1294
299
|
"layout": {"visibility": "visible"},
|
|
@@ -1310,7 +315,7 @@ const fn = `[
|
|
|
1310
315
|
{
|
|
1311
316
|
"id": "roads_taxiway",
|
|
1312
317
|
"type": "line",
|
|
1313
|
-
"source": "
|
|
318
|
+
"source": "<BMK_BM_SRC>",
|
|
1314
319
|
"source-layer": "roads",
|
|
1315
320
|
"minzoom": 13,
|
|
1316
321
|
"filter": ["==", "kind_detail", "taxiway"],
|
|
@@ -1333,24 +338,61 @@ const fn = `[
|
|
|
1333
338
|
{
|
|
1334
339
|
"id": "landuse_runway",
|
|
1335
340
|
"type": "fill",
|
|
1336
|
-
"source": "
|
|
341
|
+
"source": "<BMK_BM_SRC>",
|
|
1337
342
|
"source-layer": "landuse",
|
|
1338
343
|
"filter": ["any", ["in", "kind", "runway", "taxiway"]],
|
|
1339
344
|
"paint": {"fill-color": "#e9e9ed"}
|
|
1340
345
|
},
|
|
346
|
+
{
|
|
347
|
+
"id": "hillshader",
|
|
348
|
+
"type": "hillshade",
|
|
349
|
+
"source": "<BMK_TR_SRC>",
|
|
350
|
+
"paint": {
|
|
351
|
+
"hillshade-illumination-anchor": "viewport",
|
|
352
|
+
"hillshade-exaggeration": [
|
|
353
|
+
"interpolate",
|
|
354
|
+
["exponential", 1.6],
|
|
355
|
+
["zoom"],
|
|
356
|
+
0, 0.1,
|
|
357
|
+
4, 0.2,
|
|
358
|
+
7, 0.3,
|
|
359
|
+
10, 0.4,
|
|
360
|
+
15, 0.4,
|
|
361
|
+
17, 0.2
|
|
362
|
+
],
|
|
363
|
+
"hillshade-shadow-color": "#123161",
|
|
364
|
+
"hillshade-highlight-color": "#fff0b3",
|
|
365
|
+
"hillshade-accent-color": "rgba(0, 184, 255, 0.65)",
|
|
366
|
+
"hillshade-illumination-direction": [
|
|
367
|
+
"literal",
|
|
368
|
+
310
|
|
369
|
+
]
|
|
370
|
+
},
|
|
371
|
+
"layout": {"visibility": "visible"}
|
|
372
|
+
},
|
|
1341
373
|
{
|
|
1342
374
|
"id": "water",
|
|
1343
375
|
"type": "fill",
|
|
1344
|
-
"source": "
|
|
376
|
+
"source": "<BMK_BM_SRC>",
|
|
1345
377
|
"source-layer": "water",
|
|
1346
378
|
"filter": ["==", "$type", "Polygon"],
|
|
1347
379
|
"layout": {"visibility": "visible"},
|
|
1348
|
-
"paint": {
|
|
380
|
+
"paint": {
|
|
381
|
+
"fill-color": "rgb(135, 199, 236)",
|
|
382
|
+
"fill-opacity": [
|
|
383
|
+
"interpolate",
|
|
384
|
+
["exponential", 1.6],
|
|
385
|
+
["zoom"],
|
|
386
|
+
0, 0.4,
|
|
387
|
+
5, 0.75,
|
|
388
|
+
8, 0.95
|
|
389
|
+
]
|
|
390
|
+
}
|
|
1349
391
|
},
|
|
1350
392
|
{
|
|
1351
393
|
"id": "water_stream",
|
|
1352
394
|
"type": "line",
|
|
1353
|
-
"source": "
|
|
395
|
+
"source": "<BMK_BM_SRC>",
|
|
1354
396
|
"source-layer": "water",
|
|
1355
397
|
"minzoom": 14,
|
|
1356
398
|
"filter": ["in", "kind", "stream"],
|
|
@@ -1360,7 +402,7 @@ const fn = `[
|
|
|
1360
402
|
{
|
|
1361
403
|
"id": "landuse_beach",
|
|
1362
404
|
"type": "fill",
|
|
1363
|
-
"source": "
|
|
405
|
+
"source": "<BMK_BM_SRC>",
|
|
1364
406
|
"source-layer": "landuse",
|
|
1365
407
|
"filter": ["in", "kind", "beach"],
|
|
1366
408
|
"layout": {"visibility": "visible"},
|
|
@@ -1369,7 +411,7 @@ const fn = `[
|
|
|
1369
411
|
{
|
|
1370
412
|
"id": "water_river",
|
|
1371
413
|
"type": "line",
|
|
1372
|
-
"source": "
|
|
414
|
+
"source": "<BMK_BM_SRC>",
|
|
1373
415
|
"source-layer": "water",
|
|
1374
416
|
"minzoom": 9,
|
|
1375
417
|
"filter": ["in", "kind", "river"],
|
|
@@ -1392,7 +434,7 @@ const fn = `[
|
|
|
1392
434
|
{
|
|
1393
435
|
"id": "landuse_wetland",
|
|
1394
436
|
"type": "fill",
|
|
1395
|
-
"source": "
|
|
437
|
+
"source": "<BMK_BM_SRC>",
|
|
1396
438
|
"source-layer": "landuse",
|
|
1397
439
|
"filter": ["all", ["==", "kind", "wetland"]],
|
|
1398
440
|
"layout": {"visibility": "visible"},
|
|
@@ -1401,7 +443,7 @@ const fn = `[
|
|
|
1401
443
|
{
|
|
1402
444
|
"id": "landuse_nature_reserve_bg",
|
|
1403
445
|
"type": "line",
|
|
1404
|
-
"source": "
|
|
446
|
+
"source": "<BMK_BM_SRC>",
|
|
1405
447
|
"source-layer": "landuse",
|
|
1406
448
|
"minzoom": 8,
|
|
1407
449
|
"filter": ["all", ["==", "kind", "nature_reserve"]],
|
|
@@ -1425,7 +467,7 @@ const fn = `[
|
|
|
1425
467
|
{
|
|
1426
468
|
"id": "landuse_nature_reserve",
|
|
1427
469
|
"type": "line",
|
|
1428
|
-
"source": "
|
|
470
|
+
"source": "<BMK_BM_SRC>",
|
|
1429
471
|
"source-layer": "landuse",
|
|
1430
472
|
"minzoom": 8,
|
|
1431
473
|
"filter": ["all", ["==", "kind", "nature_reserve"]],
|
|
@@ -1449,7 +491,7 @@ const fn = `[
|
|
|
1449
491
|
{
|
|
1450
492
|
"id": "ferry",
|
|
1451
493
|
"type": "line",
|
|
1452
|
-
"source": "
|
|
494
|
+
"source": "<BMK_BM_SRC>",
|
|
1453
495
|
"source-layer": "roads",
|
|
1454
496
|
"filter": ["all", ["==", "kind", "ferry"]],
|
|
1455
497
|
"layout": {"visibility": "visible"},
|
|
@@ -1473,7 +515,7 @@ const fn = `[
|
|
|
1473
515
|
{
|
|
1474
516
|
"id": "landuse_pedestrian",
|
|
1475
517
|
"type": "fill",
|
|
1476
|
-
"source": "
|
|
518
|
+
"source": "<BMK_BM_SRC>",
|
|
1477
519
|
"source-layer": "landuse",
|
|
1478
520
|
"filter": ["in", "kind", "pedestrian", "dam"],
|
|
1479
521
|
"layout": {"visibility": "visible"},
|
|
@@ -1482,7 +524,7 @@ const fn = `[
|
|
|
1482
524
|
{
|
|
1483
525
|
"id": "landuse_pier",
|
|
1484
526
|
"type": "fill",
|
|
1485
|
-
"source": "
|
|
527
|
+
"source": "<BMK_BM_SRC>",
|
|
1486
528
|
"source-layer": "landuse",
|
|
1487
529
|
"filter": ["==", "kind", "pier"],
|
|
1488
530
|
"paint": {"fill-color": "#e0e0e0"}
|
|
@@ -1490,7 +532,7 @@ const fn = `[
|
|
|
1490
532
|
{
|
|
1491
533
|
"id": "roads_tunnels_other_casing",
|
|
1492
534
|
"type": "line",
|
|
1493
|
-
"source": "
|
|
535
|
+
"source": "<BMK_BM_SRC>",
|
|
1494
536
|
"source-layer": "roads",
|
|
1495
537
|
"filter": ["all", ["has", "is_tunnel"], ["in", "kind", "other", "path"]],
|
|
1496
538
|
"paint": {
|
|
@@ -1509,7 +551,7 @@ const fn = `[
|
|
|
1509
551
|
{
|
|
1510
552
|
"id": "roads_tunnels_minor_casing",
|
|
1511
553
|
"type": "line",
|
|
1512
|
-
"source": "
|
|
554
|
+
"source": "<BMK_BM_SRC>",
|
|
1513
555
|
"source-layer": "roads",
|
|
1514
556
|
"filter": ["all", ["has", "is_tunnel"], ["==", "kind", "minor_road"]],
|
|
1515
557
|
"paint": {
|
|
@@ -1542,7 +584,7 @@ const fn = `[
|
|
|
1542
584
|
{
|
|
1543
585
|
"id": "roads_tunnels_link_casing",
|
|
1544
586
|
"type": "line",
|
|
1545
|
-
"source": "
|
|
587
|
+
"source": "<BMK_BM_SRC>",
|
|
1546
588
|
"source-layer": "roads",
|
|
1547
589
|
"filter": ["all", ["has", "is_tunnel"], ["has", "is_link"]],
|
|
1548
590
|
"paint": {
|
|
@@ -1573,7 +615,7 @@ const fn = `[
|
|
|
1573
615
|
{
|
|
1574
616
|
"id": "roads_tunnels_major_casing",
|
|
1575
617
|
"type": "line",
|
|
1576
|
-
"source": "
|
|
618
|
+
"source": "<BMK_BM_SRC>",
|
|
1577
619
|
"source-layer": "roads",
|
|
1578
620
|
"filter": [
|
|
1579
621
|
"all",
|
|
@@ -1610,7 +652,7 @@ const fn = `[
|
|
|
1610
652
|
{
|
|
1611
653
|
"id": "roads_tunnels_highway_casing",
|
|
1612
654
|
"type": "line",
|
|
1613
|
-
"source": "
|
|
655
|
+
"source": "<BMK_BM_SRC>",
|
|
1614
656
|
"source-layer": "roads",
|
|
1615
657
|
"filter": [
|
|
1616
658
|
"all",
|
|
@@ -1649,7 +691,7 @@ const fn = `[
|
|
|
1649
691
|
{
|
|
1650
692
|
"id": "roads_tunnels_other",
|
|
1651
693
|
"type": "line",
|
|
1652
|
-
"source": "
|
|
694
|
+
"source": "<BMK_BM_SRC>",
|
|
1653
695
|
"source-layer": "roads",
|
|
1654
696
|
"filter": ["all", ["has", "is_tunnel"], ["in", "kind", "other", "path"]],
|
|
1655
697
|
"paint": {
|
|
@@ -1669,7 +711,7 @@ const fn = `[
|
|
|
1669
711
|
{
|
|
1670
712
|
"id": "roads_tunnels_minor",
|
|
1671
713
|
"type": "line",
|
|
1672
|
-
"source": "
|
|
714
|
+
"source": "<BMK_BM_SRC>",
|
|
1673
715
|
"source-layer": "roads",
|
|
1674
716
|
"filter": ["all", ["has", "is_tunnel"], ["==", "kind", "minor_road"]],
|
|
1675
717
|
"paint": {
|
|
@@ -1692,7 +734,7 @@ const fn = `[
|
|
|
1692
734
|
{
|
|
1693
735
|
"id": "roads_tunnels_link",
|
|
1694
736
|
"type": "line",
|
|
1695
|
-
"source": "
|
|
737
|
+
"source": "<BMK_BM_SRC>",
|
|
1696
738
|
"source-layer": "roads",
|
|
1697
739
|
"filter": ["all", ["has", "is_tunnel"], ["has", "is_link"]],
|
|
1698
740
|
"paint": {
|
|
@@ -1713,7 +755,7 @@ const fn = `[
|
|
|
1713
755
|
{
|
|
1714
756
|
"id": "roads_tunnels_major",
|
|
1715
757
|
"type": "line",
|
|
1716
|
-
"source": "
|
|
758
|
+
"source": "<BMK_BM_SRC>",
|
|
1717
759
|
"source-layer": "roads",
|
|
1718
760
|
"filter": ["all", ["has", "is_tunnel"], ["==", "kind", "major_road"]],
|
|
1719
761
|
"paint": {
|
|
@@ -1736,7 +778,7 @@ const fn = `[
|
|
|
1736
778
|
{
|
|
1737
779
|
"id": "roads_tunnels_highway",
|
|
1738
780
|
"type": "line",
|
|
1739
|
-
"source": "
|
|
781
|
+
"source": "<BMK_BM_SRC>",
|
|
1740
782
|
"source-layer": "roads",
|
|
1741
783
|
"filter": [
|
|
1742
784
|
"all",
|
|
@@ -1766,7 +808,7 @@ const fn = `[
|
|
|
1766
808
|
{
|
|
1767
809
|
"id": "buildings",
|
|
1768
810
|
"type": "fill",
|
|
1769
|
-
"source": "
|
|
811
|
+
"source": "<BMK_BM_SRC>",
|
|
1770
812
|
"source-layer": "buildings",
|
|
1771
813
|
"filter": ["in", "kind", "building", "building_part"],
|
|
1772
814
|
"paint": {"fill-opacity": 0.3, "fill-color": "#c2beba"}
|
|
@@ -1774,7 +816,7 @@ const fn = `[
|
|
|
1774
816
|
{
|
|
1775
817
|
"id": "roads_pier",
|
|
1776
818
|
"type": "line",
|
|
1777
|
-
"source": "
|
|
819
|
+
"source": "<BMK_BM_SRC>",
|
|
1778
820
|
"source-layer": "roads",
|
|
1779
821
|
"filter": ["==", "kind_detail", "pier"],
|
|
1780
822
|
"paint": {
|
|
@@ -1795,7 +837,7 @@ const fn = `[
|
|
|
1795
837
|
{
|
|
1796
838
|
"id": "roads_minor_service_casing",
|
|
1797
839
|
"type": "line",
|
|
1798
|
-
"source": "
|
|
840
|
+
"source": "<BMK_BM_SRC>",
|
|
1799
841
|
"source-layer": "roads",
|
|
1800
842
|
"minzoom": 13,
|
|
1801
843
|
"filter": [
|
|
@@ -1831,7 +873,7 @@ const fn = `[
|
|
|
1831
873
|
{
|
|
1832
874
|
"id": "roads_minor_casing",
|
|
1833
875
|
"type": "line",
|
|
1834
|
-
"source": "
|
|
876
|
+
"source": "<BMK_BM_SRC>",
|
|
1835
877
|
"source-layer": "roads",
|
|
1836
878
|
"filter": [
|
|
1837
879
|
"all",
|
|
@@ -1872,7 +914,7 @@ const fn = `[
|
|
|
1872
914
|
{
|
|
1873
915
|
"id": "roads_link_casing",
|
|
1874
916
|
"type": "line",
|
|
1875
|
-
"source": "
|
|
917
|
+
"source": "<BMK_BM_SRC>",
|
|
1876
918
|
"source-layer": "roads",
|
|
1877
919
|
"minzoom": 13,
|
|
1878
920
|
"filter": ["has", "is_link"],
|
|
@@ -1903,7 +945,7 @@ const fn = `[
|
|
|
1903
945
|
{
|
|
1904
946
|
"id": "roads_major_casing_late",
|
|
1905
947
|
"type": "line",
|
|
1906
|
-
"source": "
|
|
948
|
+
"source": "<BMK_BM_SRC>",
|
|
1907
949
|
"source-layer": "roads",
|
|
1908
950
|
"minzoom": 12,
|
|
1909
951
|
"filter": [
|
|
@@ -1944,7 +986,7 @@ const fn = `[
|
|
|
1944
986
|
{
|
|
1945
987
|
"id": "roads_highway_casing_late",
|
|
1946
988
|
"type": "line",
|
|
1947
|
-
"source": "
|
|
989
|
+
"source": "<BMK_BM_SRC>",
|
|
1948
990
|
"source-layer": "roads",
|
|
1949
991
|
"minzoom": 12,
|
|
1950
992
|
"filter": [
|
|
@@ -1984,7 +1026,7 @@ const fn = `[
|
|
|
1984
1026
|
{
|
|
1985
1027
|
"id": "roads_other-bg",
|
|
1986
1028
|
"type": "line",
|
|
1987
|
-
"source": "
|
|
1029
|
+
"source": "<BMK_BM_SRC>",
|
|
1988
1030
|
"source-layer": "roads",
|
|
1989
1031
|
"minzoom": 13,
|
|
1990
1032
|
"filter": [
|
|
@@ -2011,7 +1053,7 @@ const fn = `[
|
|
|
2011
1053
|
{
|
|
2012
1054
|
"id": "roads_other",
|
|
2013
1055
|
"type": "line",
|
|
2014
|
-
"source": "
|
|
1056
|
+
"source": "<BMK_BM_SRC>",
|
|
2015
1057
|
"source-layer": "roads",
|
|
2016
1058
|
"minzoom": 13,
|
|
2017
1059
|
"filter": [
|
|
@@ -2039,7 +1081,7 @@ const fn = `[
|
|
|
2039
1081
|
{
|
|
2040
1082
|
"id": "roads_link",
|
|
2041
1083
|
"type": "line",
|
|
2042
|
-
"source": "
|
|
1084
|
+
"source": "<BMK_BM_SRC>",
|
|
2043
1085
|
"source-layer": "roads",
|
|
2044
1086
|
"filter": ["has", "is_link"],
|
|
2045
1087
|
"paint": {
|
|
@@ -2060,7 +1102,7 @@ const fn = `[
|
|
|
2060
1102
|
{
|
|
2061
1103
|
"id": "roads_minor_service",
|
|
2062
1104
|
"type": "line",
|
|
2063
|
-
"source": "
|
|
1105
|
+
"source": "<BMK_BM_SRC>",
|
|
2064
1106
|
"source-layer": "roads",
|
|
2065
1107
|
"filter": [
|
|
2066
1108
|
"all",
|
|
@@ -2085,7 +1127,7 @@ const fn = `[
|
|
|
2085
1127
|
{
|
|
2086
1128
|
"id": "roads_minor",
|
|
2087
1129
|
"type": "line",
|
|
2088
|
-
"source": "
|
|
1130
|
+
"source": "<BMK_BM_SRC>",
|
|
2089
1131
|
"source-layer": "roads",
|
|
2090
1132
|
"filter": [
|
|
2091
1133
|
"all",
|
|
@@ -2113,38 +1155,40 @@ const fn = `[
|
|
|
2113
1155
|
}
|
|
2114
1156
|
},
|
|
2115
1157
|
{
|
|
2116
|
-
"id": "
|
|
1158
|
+
"id": "roads_major_casing_early2",
|
|
2117
1159
|
"type": "line",
|
|
2118
|
-
"source": "
|
|
1160
|
+
"source": "<BMK_BM_SRC>",
|
|
2119
1161
|
"source-layer": "roads",
|
|
2120
1162
|
"maxzoom": 12,
|
|
2121
1163
|
"filter": [
|
|
2122
1164
|
"all",
|
|
2123
1165
|
["!has", "is_tunnel"],
|
|
2124
1166
|
["!has", "is_bridge"],
|
|
2125
|
-
["
|
|
1167
|
+
["in", "kind", "major_road"]
|
|
2126
1168
|
],
|
|
2127
1169
|
"layout": {"visibility": "visible"},
|
|
2128
1170
|
"paint": {
|
|
2129
|
-
"line-color": "
|
|
1171
|
+
"line-color": "#D1CFC7",
|
|
2130
1172
|
"line-gap-width": [
|
|
2131
1173
|
"interpolate",
|
|
2132
1174
|
["exponential", 1.6],
|
|
2133
1175
|
["zoom"],
|
|
2134
|
-
|
|
1176
|
+
3,
|
|
2135
1177
|
0,
|
|
2136
|
-
|
|
1178
|
+
3.5,
|
|
2137
1179
|
0.5,
|
|
2138
1180
|
18,
|
|
2139
|
-
|
|
1181
|
+
15
|
|
2140
1182
|
],
|
|
2141
1183
|
"line-width": [
|
|
2142
1184
|
"interpolate",
|
|
2143
1185
|
["exponential", 1.6],
|
|
2144
1186
|
["zoom"],
|
|
2145
|
-
|
|
1187
|
+
3,
|
|
2146
1188
|
0,
|
|
2147
|
-
|
|
1189
|
+
6,
|
|
1190
|
+
1.3,
|
|
1191
|
+
12,
|
|
2148
1192
|
1
|
|
2149
1193
|
]
|
|
2150
1194
|
}
|
|
@@ -2152,13 +1196,13 @@ const fn = `[
|
|
|
2152
1196
|
{
|
|
2153
1197
|
"id": "roads_major",
|
|
2154
1198
|
"type": "line",
|
|
2155
|
-
"source": "
|
|
1199
|
+
"source": "<BMK_BM_SRC>",
|
|
2156
1200
|
"source-layer": "roads",
|
|
2157
1201
|
"filter": [
|
|
2158
1202
|
"all",
|
|
2159
1203
|
["!has", "is_tunnel"],
|
|
2160
1204
|
["!has", "is_bridge"],
|
|
2161
|
-
["
|
|
1205
|
+
["in", "kind", "major_road"]
|
|
2162
1206
|
],
|
|
2163
1207
|
"layout": {"visibility": "visible"},
|
|
2164
1208
|
"paint": {
|
|
@@ -2166,14 +1210,16 @@ const fn = `[
|
|
|
2166
1210
|
"interpolate",
|
|
2167
1211
|
["exponential", 1.6],
|
|
2168
1212
|
["zoom"],
|
|
2169
|
-
|
|
1213
|
+
3,
|
|
2170
1214
|
0,
|
|
1215
|
+
6,
|
|
1216
|
+
1.1,
|
|
2171
1217
|
12,
|
|
2172
1218
|
1.6,
|
|
2173
1219
|
15,
|
|
2174
|
-
|
|
1220
|
+
5,
|
|
2175
1221
|
18,
|
|
2176
|
-
|
|
1222
|
+
15
|
|
2177
1223
|
],
|
|
2178
1224
|
"line-color": "#E7E5DE"
|
|
2179
1225
|
}
|
|
@@ -2181,7 +1227,7 @@ const fn = `[
|
|
|
2181
1227
|
{
|
|
2182
1228
|
"id": "roads_highway_casing_early",
|
|
2183
1229
|
"type": "line",
|
|
2184
|
-
"source": "
|
|
1230
|
+
"source": "<BMK_BM_SRC>",
|
|
2185
1231
|
"source-layer": "roads",
|
|
2186
1232
|
"maxzoom": 12,
|
|
2187
1233
|
"filter": [
|
|
@@ -2225,7 +1271,7 @@ const fn = `[
|
|
|
2225
1271
|
{
|
|
2226
1272
|
"id": "roads_highway",
|
|
2227
1273
|
"type": "line",
|
|
2228
|
-
"source": "
|
|
1274
|
+
"source": "<BMK_BM_SRC>",
|
|
2229
1275
|
"source-layer": "roads",
|
|
2230
1276
|
"filter": [
|
|
2231
1277
|
"all",
|
|
@@ -2257,7 +1303,7 @@ const fn = `[
|
|
|
2257
1303
|
{
|
|
2258
1304
|
"id": "roads_rail",
|
|
2259
1305
|
"type": "line",
|
|
2260
|
-
"source": "
|
|
1306
|
+
"source": "<BMK_BM_SRC>",
|
|
2261
1307
|
"source-layer": "roads",
|
|
2262
1308
|
"filter": ["==", "kind", "rail"],
|
|
2263
1309
|
"layout": {"visibility": "visible"},
|
|
@@ -2281,7 +1327,7 @@ const fn = `[
|
|
|
2281
1327
|
{
|
|
2282
1328
|
"id": "boundaries_country_casing",
|
|
2283
1329
|
"type": "line",
|
|
2284
|
-
"source": "
|
|
1330
|
+
"source": "<BMK_BM_SRC>",
|
|
2285
1331
|
"source-layer": "boundaries",
|
|
2286
1332
|
"minzoom": 3,
|
|
2287
1333
|
"filter": ["<=", "kind_detail", 2],
|
|
@@ -2305,7 +1351,7 @@ const fn = `[
|
|
|
2305
1351
|
{
|
|
2306
1352
|
"id": "boundaries_country",
|
|
2307
1353
|
"type": "line",
|
|
2308
|
-
"source": "
|
|
1354
|
+
"source": "<BMK_BM_SRC>",
|
|
2309
1355
|
"source-layer": "boundaries",
|
|
2310
1356
|
"filter": ["<=", "kind_detail", 2],
|
|
2311
1357
|
"layout": {"visibility": "visible"},
|
|
@@ -2335,7 +1381,7 @@ const fn = `[
|
|
|
2335
1381
|
{
|
|
2336
1382
|
"id": "boundaries",
|
|
2337
1383
|
"type": "line",
|
|
2338
|
-
"source": "
|
|
1384
|
+
"source": "<BMK_BM_SRC>",
|
|
2339
1385
|
"source-layer": "boundaries",
|
|
2340
1386
|
"filter": [">", "kind_detail", 2],
|
|
2341
1387
|
"layout": {"visibility": "visible"},
|
|
@@ -2354,7 +1400,7 @@ const fn = `[
|
|
|
2354
1400
|
{
|
|
2355
1401
|
"id": "roads_bridges_other_casing",
|
|
2356
1402
|
"type": "line",
|
|
2357
|
-
"source": "
|
|
1403
|
+
"source": "<BMK_BM_SRC>",
|
|
2358
1404
|
"source-layer": "roads",
|
|
2359
1405
|
"minzoom": 12,
|
|
2360
1406
|
"filter": ["all", ["has", "is_bridge"], ["in", "kind", "other", "path"]],
|
|
@@ -2374,7 +1420,7 @@ const fn = `[
|
|
|
2374
1420
|
{
|
|
2375
1421
|
"id": "roads_bridges_link_casing",
|
|
2376
1422
|
"type": "line",
|
|
2377
|
-
"source": "
|
|
1423
|
+
"source": "<BMK_BM_SRC>",
|
|
2378
1424
|
"source-layer": "roads",
|
|
2379
1425
|
"minzoom": 12,
|
|
2380
1426
|
"filter": ["all", ["has", "is_bridge"], ["has", "is_link"]],
|
|
@@ -2405,7 +1451,7 @@ const fn = `[
|
|
|
2405
1451
|
{
|
|
2406
1452
|
"id": "roads_bridges_minor_casing",
|
|
2407
1453
|
"type": "line",
|
|
2408
|
-
"source": "
|
|
1454
|
+
"source": "<BMK_BM_SRC>",
|
|
2409
1455
|
"source-layer": "roads",
|
|
2410
1456
|
"minzoom": 12,
|
|
2411
1457
|
"filter": ["all", ["has", "is_bridge"], ["==", "kind", "minor_road"]],
|
|
@@ -2438,7 +1484,7 @@ const fn = `[
|
|
|
2438
1484
|
{
|
|
2439
1485
|
"id": "roads_bridges_major_casing",
|
|
2440
1486
|
"type": "line",
|
|
2441
|
-
"source": "
|
|
1487
|
+
"source": "<BMK_BM_SRC>",
|
|
2442
1488
|
"source-layer": "roads",
|
|
2443
1489
|
"minzoom": 12,
|
|
2444
1490
|
"filter": ["all", ["has", "is_bridge"], ["==", "kind", "major_road"]],
|
|
@@ -2469,7 +1515,7 @@ const fn = `[
|
|
|
2469
1515
|
{
|
|
2470
1516
|
"id": "roads_bridges_other",
|
|
2471
1517
|
"type": "line",
|
|
2472
|
-
"source": "
|
|
1518
|
+
"source": "<BMK_BM_SRC>",
|
|
2473
1519
|
"source-layer": "roads",
|
|
2474
1520
|
"minzoom": 12,
|
|
2475
1521
|
"filter": ["all", ["has", "is_bridge"], ["in", "kind", "other", "path"]],
|
|
@@ -2491,7 +1537,7 @@ const fn = `[
|
|
|
2491
1537
|
{
|
|
2492
1538
|
"id": "roads_bridges_minor",
|
|
2493
1539
|
"type": "line",
|
|
2494
|
-
"source": "
|
|
1540
|
+
"source": "<BMK_BM_SRC>",
|
|
2495
1541
|
"source-layer": "roads",
|
|
2496
1542
|
"minzoom": 12,
|
|
2497
1543
|
"filter": ["all", ["has", "is_bridge"], ["==", "kind", "minor_road"]],
|
|
@@ -2515,7 +1561,7 @@ const fn = `[
|
|
|
2515
1561
|
{
|
|
2516
1562
|
"id": "roads_bridges_link",
|
|
2517
1563
|
"type": "line",
|
|
2518
|
-
"source": "
|
|
1564
|
+
"source": "<BMK_BM_SRC>",
|
|
2519
1565
|
"source-layer": "roads",
|
|
2520
1566
|
"minzoom": 12,
|
|
2521
1567
|
"filter": ["all", ["has", "is_bridge"], ["has", "is_link"]],
|
|
@@ -2537,7 +1583,7 @@ const fn = `[
|
|
|
2537
1583
|
{
|
|
2538
1584
|
"id": "roads_bridges_major",
|
|
2539
1585
|
"type": "line",
|
|
2540
|
-
"source": "
|
|
1586
|
+
"source": "<BMK_BM_SRC>",
|
|
2541
1587
|
"source-layer": "roads",
|
|
2542
1588
|
"minzoom": 12,
|
|
2543
1589
|
"filter": ["all", ["has", "is_bridge"], ["==", "kind", "major_road"]],
|
|
@@ -2561,7 +1607,7 @@ const fn = `[
|
|
|
2561
1607
|
{
|
|
2562
1608
|
"id": "cycleway_bg",
|
|
2563
1609
|
"type": "line",
|
|
2564
|
-
"source": "
|
|
1610
|
+
"source": "<BMK_BM_SRC>",
|
|
2565
1611
|
"source-layer": "roads",
|
|
2566
1612
|
"filter": ["any", ["==", "kind_detail", "cycleway"]],
|
|
2567
1613
|
"layout": {"visibility": "visible"},
|
|
@@ -2584,7 +1630,7 @@ const fn = `[
|
|
|
2584
1630
|
{
|
|
2585
1631
|
"id": "cycleway",
|
|
2586
1632
|
"type": "line",
|
|
2587
|
-
"source": "
|
|
1633
|
+
"source": "<BMK_BM_SRC>",
|
|
2588
1634
|
"source-layer": "roads",
|
|
2589
1635
|
"filter": ["any", ["==", "kind_detail", "cycleway"]],
|
|
2590
1636
|
"layout": {"visibility": "visible"},
|
|
@@ -2607,7 +1653,7 @@ const fn = `[
|
|
|
2607
1653
|
{
|
|
2608
1654
|
"id": "roads_bridges_highway_casing",
|
|
2609
1655
|
"type": "line",
|
|
2610
|
-
"source": "
|
|
1656
|
+
"source": "<BMK_BM_SRC>",
|
|
2611
1657
|
"source-layer": "roads",
|
|
2612
1658
|
"minzoom": 12,
|
|
2613
1659
|
"filter": [
|
|
@@ -2645,7 +1691,7 @@ const fn = `[
|
|
|
2645
1691
|
{
|
|
2646
1692
|
"id": "roads_bridges_highway",
|
|
2647
1693
|
"type": "line",
|
|
2648
|
-
"source": "
|
|
1694
|
+
"source": "<BMK_BM_SRC>",
|
|
2649
1695
|
"source-layer": "roads",
|
|
2650
1696
|
"filter": [
|
|
2651
1697
|
"all",
|
|
@@ -2675,7 +1721,7 @@ const fn = `[
|
|
|
2675
1721
|
{
|
|
2676
1722
|
"id": "address_label",
|
|
2677
1723
|
"type": "symbol",
|
|
2678
|
-
"source": "
|
|
1724
|
+
"source": "<BMK_BM_SRC>",
|
|
2679
1725
|
"source-layer": "buildings",
|
|
2680
1726
|
"minzoom": 18,
|
|
2681
1727
|
"filter": ["==", "kind", "address"],
|
|
@@ -2694,7 +1740,7 @@ const fn = `[
|
|
|
2694
1740
|
{
|
|
2695
1741
|
"id": "water_waterway_label",
|
|
2696
1742
|
"type": "symbol",
|
|
2697
|
-
"source": "
|
|
1743
|
+
"source": "<BMK_BM_SRC>",
|
|
2698
1744
|
"source-layer": "water",
|
|
2699
1745
|
"minzoom": 13,
|
|
2700
1746
|
"filter": ["in", "kind", "river", "stream"],
|
|
@@ -2710,7 +1756,7 @@ const fn = `[
|
|
|
2710
1756
|
{
|
|
2711
1757
|
"id": "roads_labels_minor",
|
|
2712
1758
|
"type": "symbol",
|
|
2713
|
-
"source": "
|
|
1759
|
+
"source": "<BMK_BM_SRC>",
|
|
2714
1760
|
"source-layer": "roads",
|
|
2715
1761
|
"minzoom": 15,
|
|
2716
1762
|
"filter": ["in", "kind", "minor_road", "other", "path"],
|
|
@@ -2731,7 +1777,7 @@ const fn = `[
|
|
|
2731
1777
|
{
|
|
2732
1778
|
"id": "water_label_ocean",
|
|
2733
1779
|
"type": "symbol",
|
|
2734
|
-
"source": "
|
|
1780
|
+
"source": "<BMK_BM_SRC>",
|
|
2735
1781
|
"source-layer": "water",
|
|
2736
1782
|
"filter": ["in", "kind", "sea", "ocean", "bay", "strait", "fjord"],
|
|
2737
1783
|
"layout": {
|
|
@@ -2751,7 +1797,7 @@ const fn = `[
|
|
|
2751
1797
|
{
|
|
2752
1798
|
"id": "earth_label_islands",
|
|
2753
1799
|
"type": "symbol",
|
|
2754
|
-
"source": "
|
|
1800
|
+
"source": "<BMK_BM_SRC>",
|
|
2755
1801
|
"source-layer": "earth",
|
|
2756
1802
|
"filter": ["in", "kind", "island"],
|
|
2757
1803
|
"layout": {
|
|
@@ -2770,7 +1816,7 @@ const fn = `[
|
|
|
2770
1816
|
{
|
|
2771
1817
|
"id": "water_label_lakes",
|
|
2772
1818
|
"type": "symbol",
|
|
2773
|
-
"source": "
|
|
1819
|
+
"source": "<BMK_BM_SRC>",
|
|
2774
1820
|
"source-layer": "water",
|
|
2775
1821
|
"filter": ["in", "kind", "lake", "water"],
|
|
2776
1822
|
"layout": {
|
|
@@ -2795,7 +1841,7 @@ const fn = `[
|
|
|
2795
1841
|
{
|
|
2796
1842
|
"id": "roads_labels_major",
|
|
2797
1843
|
"type": "symbol",
|
|
2798
|
-
"source": "
|
|
1844
|
+
"source": "<BMK_BM_SRC>",
|
|
2799
1845
|
"source-layer": "roads",
|
|
2800
1846
|
"minzoom": 11,
|
|
2801
1847
|
"filter": ["in", "kind", "highway", "major_road"],
|
|
@@ -2816,7 +1862,7 @@ const fn = `[
|
|
|
2816
1862
|
{
|
|
2817
1863
|
"id": "pois",
|
|
2818
1864
|
"type": "symbol",
|
|
2819
|
-
"source": "
|
|
1865
|
+
"source": "<BMK_BM_SRC>",
|
|
2820
1866
|
"source-layer": "pois",
|
|
2821
1867
|
"filter": [
|
|
2822
1868
|
"all",
|
|
@@ -2925,7 +1971,7 @@ const fn = `[
|
|
|
2925
1971
|
{
|
|
2926
1972
|
"id": "places_subplace",
|
|
2927
1973
|
"type": "symbol",
|
|
2928
|
-
"source": "
|
|
1974
|
+
"source": "<BMK_BM_SRC>",
|
|
2929
1975
|
"source-layer": "places",
|
|
2930
1976
|
"filter": ["==", "kind", "neighbourhood"],
|
|
2931
1977
|
"layout": {
|
|
@@ -2974,7 +2020,7 @@ const fn = `[
|
|
|
2974
2020
|
{
|
|
2975
2021
|
"id": "places_region",
|
|
2976
2022
|
"type": "symbol",
|
|
2977
|
-
"source": "
|
|
2023
|
+
"source": "<BMK_BM_SRC>",
|
|
2978
2024
|
"source-layer": "places",
|
|
2979
2025
|
"filter": ["==", "kind", "region"],
|
|
2980
2026
|
"layout": {
|
|
@@ -2995,7 +2041,7 @@ const fn = `[
|
|
|
2995
2041
|
{
|
|
2996
2042
|
"id": "places_locality",
|
|
2997
2043
|
"type": "symbol",
|
|
2998
|
-
"source": "
|
|
2044
|
+
"source": "<BMK_BM_SRC>",
|
|
2999
2045
|
"source-layer": "places",
|
|
3000
2046
|
"filter": ["==", "kind", "locality"],
|
|
3001
2047
|
"layout": {
|
|
@@ -3119,7 +2165,7 @@ const fn = `[
|
|
|
3119
2165
|
{
|
|
3120
2166
|
"id": "places_country",
|
|
3121
2167
|
"type": "symbol",
|
|
3122
|
-
"source": "
|
|
2168
|
+
"source": "<BMK_BM_SRC>",
|
|
3123
2169
|
"source-layer": "places",
|
|
3124
2170
|
"filter": ["==", "kind", "country"],
|
|
3125
2171
|
"layout": {
|
|
@@ -3189,7 +2235,7 @@ const fn = `[
|
|
|
3189
2235
|
{
|
|
3190
2236
|
"id": "building_extrusion",
|
|
3191
2237
|
"type": "fill-extrusion",
|
|
3192
|
-
"source": "
|
|
2238
|
+
"source": "<BMK_BM_SRC>",
|
|
3193
2239
|
"source-layer": "buildings",
|
|
3194
2240
|
"filter": [
|
|
3195
2241
|
"any",
|
|
@@ -3202,29 +2248,30 @@ const fn = `[
|
|
|
3202
2248
|
"fill-extrusion-height": {"type": "identity", "property": "height"}
|
|
3203
2249
|
}
|
|
3204
2250
|
}
|
|
2251
|
+
|
|
3205
2252
|
]`;
|
|
3206
|
-
function
|
|
3207
|
-
const
|
|
3208
|
-
if (
|
|
2253
|
+
function O(n, i) {
|
|
2254
|
+
const e = E.filter((o) => o.lang === n);
|
|
2255
|
+
if (e.length === 0)
|
|
3209
2256
|
throw new Error(
|
|
3210
|
-
`The language "${n}". The languages available are: ${
|
|
2257
|
+
`The language "${n}". The languages available are: ${E.map((o) => o.lang).join(", ")}.`
|
|
3211
2258
|
);
|
|
3212
|
-
if (
|
|
3213
|
-
if (
|
|
2259
|
+
if (i) {
|
|
2260
|
+
if (e.filter((r) => r.script === i).length)
|
|
3214
2261
|
return !0;
|
|
3215
2262
|
throw new Error(
|
|
3216
|
-
`The script "${
|
|
2263
|
+
`The script "${i}" for the language "${n}" is unsupported. Script available for this language: ${e.map((r) => r.script).join(", ")}.`
|
|
3217
2264
|
);
|
|
3218
2265
|
}
|
|
3219
2266
|
return !0;
|
|
3220
2267
|
}
|
|
3221
|
-
function
|
|
2268
|
+
function J() {
|
|
3222
2269
|
const n = Intl.DateTimeFormat().resolvedOptions().locale.split("-")[0];
|
|
3223
|
-
return
|
|
2270
|
+
return O(n, void 0) ? n : "en";
|
|
3224
2271
|
}
|
|
3225
|
-
const
|
|
3226
|
-
avenue:
|
|
3227
|
-
},
|
|
2272
|
+
const b = {
|
|
2273
|
+
avenue: U
|
|
2274
|
+
}, z = {
|
|
3228
2275
|
"avenue-pop": {
|
|
3229
2276
|
baseStyle: "avenue",
|
|
3230
2277
|
colorEdit: {
|
|
@@ -3298,98 +2345,118 @@ const E = {
|
|
|
3298
2345
|
contrast: [0.2, 200]
|
|
3299
2346
|
}
|
|
3300
2347
|
}
|
|
3301
|
-
};
|
|
3302
|
-
function
|
|
3303
|
-
return Object.keys(
|
|
2348
|
+
}, L = "__bmk_bm_src", w = "__bmk_tr_src";
|
|
2349
|
+
function V() {
|
|
2350
|
+
return Object.keys(b).concat(Object.keys(z));
|
|
3304
2351
|
}
|
|
3305
|
-
function
|
|
3306
|
-
if (n in
|
|
3307
|
-
return
|
|
3308
|
-
...
|
|
2352
|
+
function X(n, i) {
|
|
2353
|
+
if (n in b)
|
|
2354
|
+
return T({
|
|
2355
|
+
...i,
|
|
3309
2356
|
baseStyleName: n
|
|
3310
2357
|
});
|
|
3311
|
-
if (n in
|
|
3312
|
-
const
|
|
3313
|
-
return
|
|
3314
|
-
...
|
|
3315
|
-
baseStyleName:
|
|
3316
|
-
colorEdit:
|
|
2358
|
+
if (n in z) {
|
|
2359
|
+
const e = z[n];
|
|
2360
|
+
return T({
|
|
2361
|
+
...i,
|
|
2362
|
+
baseStyleName: e.baseStyle,
|
|
2363
|
+
colorEdit: e.colorEdit
|
|
3317
2364
|
});
|
|
3318
2365
|
}
|
|
3319
2366
|
throw new Error(`The style "${n}" does not exist as a base style, nor as a preset.`);
|
|
3320
2367
|
}
|
|
3321
|
-
function
|
|
3322
|
-
let
|
|
2368
|
+
function T(n) {
|
|
2369
|
+
let i, e;
|
|
3323
2370
|
const o = n.hideLabels ?? !1;
|
|
3324
2371
|
if (o)
|
|
3325
|
-
|
|
3326
|
-
else if (typeof n.lang == "string" &&
|
|
3327
|
-
|
|
2372
|
+
i = '""', e = '""';
|
|
2373
|
+
else if (typeof n.lang == "string" && O(n.lang, n.script))
|
|
2374
|
+
i = JSON.stringify(A(n.lang, n.script)), e = JSON.stringify(N(n.lang, n.script));
|
|
3328
2375
|
else {
|
|
3329
|
-
const
|
|
3330
|
-
|
|
2376
|
+
const a = J();
|
|
2377
|
+
i = JSON.stringify(A(a)), e = JSON.stringify(N(a));
|
|
3331
2378
|
}
|
|
3332
|
-
if (!(n.baseStyleName in
|
|
2379
|
+
if (!(n.baseStyleName in b))
|
|
3333
2380
|
throw new Error(`The base style ${n.baseStyleName} does not exist.`);
|
|
3334
|
-
const
|
|
3335
|
-
let
|
|
2381
|
+
const c = b[n.baseStyleName].replaceAll("<BMK_BM_SRC>", L).replaceAll("<BMK_TR_SRC>", w).replaceAll('"<LANG>"', e).replaceAll('"<LANG_COUNTRY>"', i);
|
|
2382
|
+
let g;
|
|
3336
2383
|
if (typeof n.tilejson == "string")
|
|
3337
|
-
|
|
2384
|
+
g = n.tilejson;
|
|
3338
2385
|
else if (typeof n.pmtiles == "string")
|
|
3339
|
-
|
|
2386
|
+
g = `pmtiles://${n.pmtiles}`;
|
|
3340
2387
|
else
|
|
3341
2388
|
throw new Error('At least one option of "tilejson" or "pmtiles" must be provided as data source.');
|
|
3342
|
-
let
|
|
3343
|
-
|
|
3344
|
-
|
|
3345
|
-
|
|
3346
|
-
|
|
3347
|
-
|
|
3348
|
-
|
|
3349
|
-
|
|
3350
|
-
|
|
2389
|
+
let u = "", m = !1, C = "", h = 0;
|
|
2390
|
+
n.terrain && (typeof n.terrain.tilejson == "string" ? u = n.terrain.tilejson : typeof n.terrain.pmtiles == "string" && (u = `pmtiles://${n.terrain.pmtiles}`), u && (m = n.terrain.hillshading ?? !0, h = n.terrain.exaggeration ?? 0), C = n.terrain.encoding ?? "mapbox");
|
|
2391
|
+
let s = JSON.parse(c);
|
|
2392
|
+
const R = n.hidePOIs ?? !1;
|
|
2393
|
+
if (m || (s = s.filter((a) => a.id !== "hillshader")), R && (s = s.filter((a) => a.id !== "pois")), o) {
|
|
2394
|
+
const a = s.filter((l) => l.id === "pois");
|
|
2395
|
+
if (a.length) {
|
|
2396
|
+
const l = a[0];
|
|
2397
|
+
if (l.layout !== void 0) {
|
|
2398
|
+
const p = l.layout;
|
|
2399
|
+
p["text-field"] !== void 0 && (p["text-field"] = "");
|
|
3351
2400
|
}
|
|
3352
2401
|
}
|
|
3353
|
-
|
|
2402
|
+
s = s.filter((l) => l.id === "pois" || l.type !== "symbol" ? !0 : !(l.layout !== void 0 && l.layout["text-field"] !== void 0));
|
|
3354
2403
|
}
|
|
3355
|
-
const
|
|
3356
|
-
return (_ !== 0 ||
|
|
3357
|
-
|
|
3358
|
-
|
|
3359
|
-
|
|
3360
|
-
|
|
3361
|
-
|
|
3362
|
-
|
|
3363
|
-
|
|
3364
|
-
|
|
3365
|
-
|
|
3366
|
-
|
|
3367
|
-
|
|
3368
|
-
|
|
3369
|
-
|
|
3370
|
-
[
|
|
3371
|
-
u.multiplyColor[1]
|
|
2404
|
+
const t = n.colorEdit ?? {}, _ = t.brightness ?? 0, x = t.hueRotation ?? 0, M = t.saturation ?? 0, K = t.negate ?? !1, B = t.brightnessShift ?? 0, k = t.exposure ?? 0;
|
|
2405
|
+
return (_ !== 0 || x !== 0 || M !== 0 || K === !0 || t.multiplyColor !== void 0 || t.mixColor !== void 0 || B !== 0 || t.contrast !== void 0 || k !== 0) && S(s, (a) => {
|
|
2406
|
+
let l = f(a);
|
|
2407
|
+
if (K && (l = l.negate()), x !== 0 && (l = l.rotate(x)), M !== 0 && (l = l.saturate(M)), _ > 0 ? l = l.lighten(_) : _ < 0 && (l = l.darken(_ * -1)), B !== 0) {
|
|
2408
|
+
const y = l.hsl().array();
|
|
2409
|
+
y[2] += B * 100, l = f.hsl(...y);
|
|
2410
|
+
}
|
|
2411
|
+
Array.isArray(t.mixColor) && typeof t.mixColor[0] == "string" && typeof t.mixColor[1] == "number" && t.mixColor[1] !== 0 && (l = l.mix(f(t.mixColor[0]), t.mixColor[1]));
|
|
2412
|
+
const p = l.rgb(), G = p.alpha();
|
|
2413
|
+
let d = [p.red(), p.green(), p.blue()];
|
|
2414
|
+
if (k !== 0 && (d = D(d, k)), Array.isArray(t.contrast) && typeof t.contrast[0] == "number" && typeof t.contrast[1] == "number" && t.contrast[0] !== 0 && (d = $(d, t.contrast[0], t.contrast[1])), Array.isArray(t.multiplyColor) && typeof t.multiplyColor[0] == "string" && typeof t.multiplyColor[1] == "number" && t.multiplyColor[1] !== 0) {
|
|
2415
|
+
const y = f(t.multiplyColor[0]);
|
|
2416
|
+
d = P(
|
|
2417
|
+
d,
|
|
2418
|
+
[y.red(), y.green(), y.blue()],
|
|
2419
|
+
t.multiplyColor[1]
|
|
3372
2420
|
);
|
|
3373
2421
|
}
|
|
3374
|
-
const
|
|
3375
|
-
return
|
|
2422
|
+
const v = f({ r: d[0], g: d[1], b: d[2], alpha: G });
|
|
2423
|
+
return a.startsWith("rgba(") || a.startsWith("rgb(") ? v.rgb().toString() : a.startsWith("hsl(") || a.startsWith("hsla(") ? v.hsl().toString() : v.hexa();
|
|
3376
2424
|
}), {
|
|
3377
2425
|
version: 8,
|
|
3378
|
-
...n.sprite && !
|
|
2426
|
+
...n.sprite && !R ? { sprite: n.sprite } : {},
|
|
3379
2427
|
glyphs: n.glyphs,
|
|
3380
2428
|
sources: {
|
|
3381
|
-
|
|
2429
|
+
[L]: {
|
|
3382
2430
|
type: "vector",
|
|
3383
|
-
url:
|
|
2431
|
+
url: g,
|
|
3384
2432
|
attribution: "<a href='https://openstreetmap.org/copyright'>© OpenStreetMap Contributors</a>"
|
|
3385
|
-
}
|
|
2433
|
+
},
|
|
2434
|
+
// Add the terrain source if terrain source is provided and the hillshading
|
|
2435
|
+
// or terrain is enabled.
|
|
2436
|
+
...u && (h || m) ? {
|
|
2437
|
+
[w]: {
|
|
2438
|
+
url: u,
|
|
2439
|
+
type: "raster-dem",
|
|
2440
|
+
encoding: C
|
|
2441
|
+
}
|
|
2442
|
+
} : {}
|
|
3386
2443
|
},
|
|
3387
|
-
layers:
|
|
2444
|
+
layers: s,
|
|
2445
|
+
projection: { type: ["interpolate", ["linear"], ["zoom"], 7, "vertical-perspective", 8, "mercator"] },
|
|
2446
|
+
// Add the terrain if the terrain source is provided and the exaggeration is superior to 0
|
|
2447
|
+
...u && h ? {
|
|
2448
|
+
terrain: {
|
|
2449
|
+
source: w,
|
|
2450
|
+
exaggeration: h
|
|
2451
|
+
}
|
|
2452
|
+
} : {}
|
|
3388
2453
|
};
|
|
3389
2454
|
}
|
|
3390
2455
|
export {
|
|
3391
|
-
|
|
3392
|
-
|
|
3393
|
-
|
|
2456
|
+
L as BASEMAPKIT_BASEMAP_SOURCE_ID,
|
|
2457
|
+
w as BASEMAPKIT_TERRAIN_SOURCE_ID,
|
|
2458
|
+
T as buildStyle,
|
|
2459
|
+
X as getStyle,
|
|
2460
|
+
V as getStyleList
|
|
3394
2461
|
};
|
|
3395
2462
|
//# sourceMappingURL=basemapkit.js.map
|