Merge upstream/main into pr/mapillary-layer

Upstream took share token '2' for fire perimeters, so Street Level moves to
'3'. mapillary-js joins upstream's optimizeDeps include list instead of
overriding it; catalog and registry tests count the new upstream layers.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
This commit is contained in:
Said TurkseverandClaude Fable 5.1 committed 2026-09-25 17:58:27 +01:00
commit 9ba6f96d87
204 files changed
+24525 -314

No files matched your search

+34 -3
View File
@@ -362,11 +362,20 @@
}
#pp-toggles:not(.collapsed) > .pp-header-row,
#pp-toggles:not(.collapsed) > .pp-toggle-group,
#pp-toggles:not(.collapsed) > #clean-view-toggle {
#pp-toggles:not(.collapsed) > .pp-panel-body > .pp-toggle-group,
#pp-toggles:not(.collapsed) > .pp-panel-body > #clean-view-toggle {
width: 100%;
}
.pp-panel-body,
.cyber-panel-body {
display: contents;
}
.panel-collapsible.collapsed > .global-context-panel-inner > .cyber-panel-body {
display: none;
}
.pp-toggle-btn {
display: flex;
align-items: center;
@@ -683,6 +692,28 @@
min-width: 200px;
}
.cyber-sonar-control {
display: none;
}
:root[data-ui-theme='cyber'] .cyber-sonar-control {
display: flex;
}
.cyber-sonar-toggle-row,
.cyber-sonar-setting {
min-width: 200px;
}
.cyber-sonar-toggle-row .pp-mode-btn {
margin-left: auto;
min-width: 48px;
}
:root[data-cyber-sonar='off'] .cyber-sonar-setting {
display: none;
}
/* Map Source tiles live with Visual Presets in the bottom command tray. */
.map-source-section {
display: grid;
@@ -1055,7 +1086,7 @@ body.ui-clean-view #scene-runtime.active {
/* Display owns the constrained desktop scroll surface. Keeping Parameters as
* a second scroll container traps wheel/touch input at its boundary and lets
* the flex column compress newly added preset rows below the visible panel. */
#pp-toggles:not(.collapsed) > #param-slider-panel.active {
#pp-toggles:not(.collapsed) > .pp-panel-body > #param-slider-panel.active {
flex: 0 0 auto;
max-height: none;
overflow-y: visible;
File diff suppressed because it is too large. Load diff
+129
View File
@@ -899,3 +899,132 @@
padding-top: 3px;
overflow-wrap: anywhere;
}
/* ── Local RTL-SDR card (FM + Local ADS-B receiver) ── */
.sdr-radio-card {
display: grid;
gap: 7px;
margin-top: 3px;
padding: 9px;
border: 1px solid rgba(255, 170, 60, 0.28);
border-radius: 7px;
background: linear-gradient(
180deg,
rgba(31, 18, 4, 0.58),
rgba(4, 20, 24, 0.72)
);
}
.sdr-radio-heading,
.sdr-radio-actions,
.sdr-mode-row,
.sdr-gain-row,
.sdr-frequency-row,
.sdr-seek-row {
display: flex;
align-items: center;
gap: 6px;
}
.sdr-radio-heading {
justify-content: space-between;
}
.sdr-radio-heading strong {
color: #ffd38a;
font: 9px/1 var(--font-mono);
letter-spacing: 0.1em;
}
#sdr-connection-state {
color: #9e865f;
font: 7px/1 var(--font-mono);
letter-spacing: 0.1em;
}
#sdr-connection-state.active {
color: #74f7c4;
}
.sdr-radio-card > p {
margin: 0;
color: rgba(213, 230, 225, 0.58);
font: 7px/1.4 var(--font-mono);
}
.sdr-radio-card button,
.sdr-radio-card select,
.sdr-radio-card input[type='number'] {
min-height: 28px;
border: 1px solid rgba(255, 183, 82, 0.28);
border-radius: 5px;
color: #ffd79a;
background: rgba(38, 25, 8, 0.52);
font: 8px/1 var(--font-mono);
}
.sdr-radio-card button {
padding: 6px 8px;
cursor: pointer;
}
.sdr-radio-card button:hover:not(:disabled),
.sdr-radio-card button:focus-visible:not(:disabled),
.sdr-radio-card button.active {
border-color: #ffd38a;
color: #fff;
outline: none;
background: rgba(130, 83, 18, 0.28);
}
.sdr-radio-card button:disabled,
.sdr-radio-card select:disabled {
opacity: 0.4;
cursor: not-allowed;
}
.sdr-radio-actions > *,
.sdr-mode-row > *,
.sdr-seek-row > * {
flex: 1;
}
.sdr-gain-row label,
.sdr-frequency-row label {
color: #9e865f;
font: 7px/1 var(--font-mono);
letter-spacing: 0.08em;
}
.sdr-gain-row select {
flex: 1;
min-width: 0;
padding: 5px 7px;
}
.sdr-adsb-stats {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 4px 8px;
color: #9e865f;
font: 7px/1.3 var(--font-mono);
letter-spacing: 0.08em;
}
.sdr-adsb-stats[hidden] {
display: none;
}
.sdr-adsb-stats output {
color: #ffd79a;
font: 9px/1 var(--font-mono);
}
.sdr-frequency-row input[type='number'] {
width: 78px;
min-width: 0;
padding: 5px 7px;
}
.sdr-frequency-row button {
margin-left: auto;
}
.sdr-radio-card .radio-volume-row {
color: #9e865f;
}
.sdr-radio-card .radio-playback-state {
color: #ddbe86;
}
.sdr-radio-card .radio-playback-state.error {
color: #ff9d8f;
}
.sdr-feed-status {
color: #9e865f;
font: 8px/1.3 var(--font-mono);
letter-spacing: 0.08em;
overflow-wrap: anywhere;
}
.sdr-feed-status[hidden] {
display: none;
}
+2 -1
View File
@@ -259,8 +259,9 @@
}
@media (max-width: 520px) {
/* 16px keeps the Radio broadcast waves (15px above the logo) on-screen. */
#title-bar {
top: 14px;
top: 16px;
left: 16px;
}