feat(parcel-sync): sync button on empty Harta tab + intravilan in base sync

Map tab: when UAT has no local data, shows a "Sincronizează terenuri,
clădiri și intravilan" button that triggers background base sync.

Sync background (base mode): now also syncs LIMITE_INTRAV_DYNAMIC layer
(intravilan boundaries) alongside TERENURI_ACTIVE + CLADIRI_ACTIVE.
Non-critical — if intravilan fails, the rest continues.

Also fixed remaining \u2192 unicode escapes in export/layers/epay tabs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
AI Assistant
2026-03-24 18:04:09 +02:00
parent b1fc7c84a7
commit 3da45a4cab
6 changed files with 101 additions and 11 deletions
@@ -60,7 +60,7 @@ type GisUatResult = {
/* ------------------------------------------------------------------ */
function formatDate(iso?: string | null) {
if (!iso) return "\u2014";
if (!iso) return "";
return new Date(iso).toLocaleDateString("ro-RO", {
day: "2-digit",
month: "2-digit",
@@ -71,7 +71,7 @@ function formatDate(iso?: string | null) {
}
function formatShortDate(iso?: string | null) {
if (!iso) return "\u2014";
if (!iso) return "";
return new Date(iso).toLocaleDateString("ro-RO", {
day: "2-digit",
month: "2-digit",
@@ -715,7 +715,7 @@ export function EpayTab() {
{formatShortDate(order.expiresAt)}
</span>
) : (
<span className="text-muted-foreground">{"\u2014"}</span>
<span className="text-muted-foreground">{""}</span>
)}
</td>