poe-svelte-ui-lib 1.28.4 → 1.28.5
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/Map/Map.svelte +13 -8
- package/package.json +1 -1
package/dist/Map/Map.svelte
CHANGED
|
@@ -19,15 +19,18 @@
|
|
|
19
19
|
/* Мастер-цвет (тот же bg-* из optionsStore.COLOR_OPTIONS, что и у остальных примитивов) —
|
|
20
20
|
красить саму карту цветом смысла нет (это базовая карта MapLibre), поэтому проявляется на
|
|
21
21
|
ФОНЕ наших собственных оверлеев поверх неё: панели управления (CustomControl) и карточки
|
|
22
|
-
устройства (Popup) — см. roleBgClass ниже,
|
|
22
|
+
устройства (Popup) — см. roleBgClass/roleBgPaint ниже, применяются прямо в разметке. */
|
|
23
23
|
const roleBgClass = $derived.by(() => {
|
|
24
24
|
const role = wrapperClass.match(/bg-(\w+)/)?.[1]
|
|
25
|
-
/* bg-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
/* bg-{role} лишь задаёт переменную --bg-color (см. app.css); text-(--on-accent) — иначе
|
|
26
|
+
тёмный текст (задуман под белую подложку control'ов MapLibre по умолчанию) нечитаем на
|
|
27
|
+
цветной заливке. Красящая bg-(--bg-color) — НЕ здесь, см. roleBgPaint: если оставить обе
|
|
28
|
+
bg-* утилиты в одной строке, twMerge видит конфликт одной группы и вырезает одну из них
|
|
29
|
+
(та же ловушка, что и в Button.svelte, см. его комментарий про roleBg/roleClass). */
|
|
30
|
+
return role && role !== "max" ? `bg-${role} text-(--on-accent)` : ""
|
|
30
31
|
})
|
|
32
|
+
/* Приклеивается к className СНАРУЖИ twMerge — иначе конфликтует с bg-{role} внутри roleBgClass. */
|
|
33
|
+
const roleBgPaint = $derived(roleBgClass ? "bg-(--bg-color)" : "")
|
|
31
34
|
|
|
32
35
|
/* Акцентное кольцо вокруг самой карты. Намеренно ring, а не border: border меняет content-box
|
|
33
36
|
контейнера MapLibre уже ПОСЛЕ монтажа, а сама MapLibre не переотрисовывает canvas при таком
|
|
@@ -172,7 +175,7 @@
|
|
|
172
175
|
<FullScreenControl />
|
|
173
176
|
|
|
174
177
|
<CustomControl position="top-left">
|
|
175
|
-
<div class={twMerge("flex flex-wrap items-center gap-3 rounded-lg px-2 py-1 text-black", roleBgClass)}>
|
|
178
|
+
<div class={`${twMerge("flex flex-wrap items-center gap-3 rounded-lg px-2 py-1 text-black", roleBgClass)} ${roleBgPaint}`}>
|
|
176
179
|
<label class="flex items-center gap-1.5 text-sm font-medium">
|
|
177
180
|
<input type="checkbox" bind:checked={trackEnabled} />
|
|
178
181
|
{$T("constructor.props.map.track")}
|
|
@@ -255,7 +258,9 @@
|
|
|
255
258
|
<h6 class="text-sm leading-none font-bold">{device.DevName}</h6>
|
|
256
259
|
</div>
|
|
257
260
|
|
|
258
|
-
<div
|
|
261
|
+
<div
|
|
262
|
+
class={`${twMerge("grid grid-cols-2 gap-x-3 gap-y-1 rounded-lg bg-(--container-color) p-2 text-xs", roleBgClass)} ${roleBgPaint}`}
|
|
263
|
+
>
|
|
259
264
|
<div>
|
|
260
265
|
<p class="text-[0.6rem] font-semibold tracking-wide uppercase opacity-60">Lat / Lon</p>
|
|
261
266
|
<p class="font-medium">{device.NavLat.toFixed(5)}, {device.NavLon.toFixed(5)}</p>
|